:root{--background:#eee7da;--foreground:#132032;--card:#faf6ed;--card-foreground:#132032;--popover:#faf6ed;--popover-foreground:#132032;--primary:#a52c24;--primary-foreground:#fff;--secondary:#e5dccb;--secondary-foreground:#132032;--muted:#e5dccb;--muted-foreground:#5d5a52;--accent:#e5dccb;--accent-foreground:#132032;--destructive:#a52c24;--border:#c9c1b2;--input:#c9c1b2;--ring:#a52c24;--radius:0rem}

*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:#132032;background:#eee7da;font-family:"Hiragino Mincho ProN","Yu Mincho",serif}a{color:inherit;text-decoration:none}header{max-width:1240px;margin:auto;min-height:88px;padding:22px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #bcb5a8}.brand{font-size:14px;letter-spacing:.13em}.brand b{font-size:24px;margin-left:12px}.nav-cta{font-size:15px;border-bottom:1px solid;padding:8px 0}.festival-hero{max-width:960px;margin:auto;padding:55px 44px 70px;text-align:center}.hero-heading{position:relative;padding:16px 70px 0}.stamp{position:absolute;left:10px;top:32px;writing-mode:vertical-rl;padding:12px 8px;background:#a52c24;color:#fff;font-size:24px;letter-spacing:.12em;border:3px double #eee7da;outline:2px solid #a52c24;transform:rotate(-5deg)}.vertical-copy{position:absolute;right:0;top:0;writing-mode:vertical-rl;font-size:24px;letter-spacing:.16em}.eyebrow{font-size:14px;letter-spacing:.15em;color:#8f3029}h1{font-size:76px;font-weight:800;line-height:1.3;letter-spacing:.04em;margin:18px 0 12px}h1 span{font-size:1.04em}.hero-subtitle{font-size:20px;letter-spacing:.12em}.grill-art{position:relative;margin:0 auto;max-width:800px}.grill-art>img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.free-badge{position:absolute;right:3%;bottom:7%;width:144px;height:144px;border-radius:50%;background:#142134;color:#fff;display:flex;flex-direction:column;justify-content:center;gap:7px;outline:1px solid #142134;outline-offset:5px;transform:rotate(6deg)}.free-badge span{font-size:13px}.free-badge strong{font-size:27px;font-weight:600}.hero-schedule{display:flex;align-items:center;justify-content:center;gap:30px;text-align:left;border-top:1px solid #bcb5a8;border-bottom:1px solid #bcb5a8;padding:22px 0;margin-top:10px}.hero-schedule p{margin:0}.hero-schedule p>span{display:block;font-size:18px}.hero-schedule strong{font-size:39px;line-height:1.6;white-space:nowrap}.hero-schedule strong small{font-size:16px;border:1px solid;border-radius:50%;padding:4px;margin-left:10px;vertical-align:middle}.hero-schedule>div{display:flex;flex-direction:column;gap:8px}.hero-schedule b{font-size:25px;font-weight:500}.hero-schedule div>span{font-size:14px}.hero-schedule div>small{font-size:13px}.cta{display:flex;justify-content:space-between;align-items:center;background:#a52c24;color:#fff;padding:21px 28px;font-size:20px;letter-spacing:.1em;transition:background .2s;border:none;width:100%;font-family:inherit}.cta:hover{background:#82221c}.hero-cta{max-width:400px;margin:28px auto 0}.section{max-width:800px;margin:auto;padding:80px 44px}.intro-section{text-align:center;border-top:1px solid #bcb5a8}.section-number{display:block;width:36px;height:36px;margin:0 auto 24px;border:1px solid #9c8f7c;text-align:center;line-height:34px;font-size:18px}h2{font-size:38px;line-height:1.7;letter-spacing:.09em;margin:16px 0 24px}p{font-size:17px;line-height:2.1}.distribution{margin:40px auto 0;border:1px solid #9d968a;padding:28px 20px 14px;max-width:540px}.distribution>div{display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap}.distribution strong{color:#a52c24;font-size:28px}.distribution b{font-size:15px;font-weight:400;border-left:1px solid #aaa191;padding-left:18px}.distribution p{font-size:14px}.food-section{background:#142134;color:#f2ecdf;text-align:center}.food-section .eyebrow{color:#d2b58a}.food-section .section{padding-top:65px;padding-bottom:65px}.food-section p{color:#ddd7cb}.details-section{text-align:center}dl{text-align:left;margin:38px 0 0;border-top:1px solid #aaa194}dl>div{display:grid;grid-template-columns:145px 1fr;border-bottom:1px solid #c8beb0;padding:24px 8px;gap:24px}dt{font-size:16px;color:#5d5348}dd{font-size:20px;line-height:1.8;margin:0}dd small{font-size:14px}.contact-section{background:#e3d9c8;text-align:center}.contact-section .section{max-width:670px;padding-top:65px;padding-bottom:65px}.contact-section h2{font-size:30px}.contact-section .cta{max-width:440px;margin:28px auto 0}.contact-note{font-size:14px;color:#665a4c}.contact-pending{opacity:.7;cursor:not-allowed}footer{text-align:center;padding:42px 24px;border-top:1px solid #bcb5a8}footer>b{font-size:24px;letter-spacing:.1em}footer p{font-size:14px;line-height:1.9}footer>span{font-size:12px;color:#625c54}.mobile-cta{display:none}a:focus-visible,button:focus-visible{outline:3px solid #aa6d27;outline-offset:4px}@media(max-width:760px){header{min-height:68px;padding:18px 22px}.brand{font-size:12px}.brand b{font-size:19px;margin-left:6px}.nav-cta{font-size:13px}.festival-hero{padding:32px 24px 44px}.hero-heading{padding:28px 16px 0}.stamp{left:4px;top:0;font-size:16px;padding:9px 5px}.vertical-copy{display:none}.hero-heading .eyebrow{font-size:12px;letter-spacing:.08em;padding-left:25px}h1{font-size:clamp(39px,10vw,68px);margin:20px -10px 16px;white-space:nowrap}.hero-subtitle{font-size:14px;letter-spacing:.05em}.grill-art{margin:6px -12px 22px}.free-badge{width:104px;height:104px;right:0;bottom:0;gap:4px;outline-offset:3px}.free-badge span{font-size:12px}.free-badge strong{font-size:21px}.hero-schedule{flex-direction:column;text-align:center;gap:10px;padding:20px 0}.hero-schedule p>span{font-size:16px}.hero-schedule strong{font-size:37px}.hero-schedule>div{gap:7px}.hero-schedule b{font-size:23px}.hero-schedule div>span{font-size:14px}.hero-cta{margin-top:22px}.cta{font-size:18px;padding:18px 22px}.section{padding:52px 24px}h2{font-size:29px}p{font-size:16px}.distribution{padding:22px 12px 12px}.distribution>div{gap:12px}.distribution>div>span{width:100%;font-size:16px}.distribution strong{font-size:26px}.distribution p{font-size:13px}.food-section .section{padding:52px 24px}dl>div{grid-template-columns:78px 1fr;gap:15px;padding:20px 0}dt{font-size:14px}dd{font-size:17px}dd small{font-size:13px}.contact-section .section{padding:52px 24px}.contact-section h2{font-size:25px}footer{padding-bottom:110px}footer>b{font-size:22px}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;padding:18px 12px calc(18px + env(safe-area-inset-bottom));background:#a52c24;color:white;text-align:center;font-size:18px;border-top:3px solid #eee7da;z-index:10}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Inquiry and social links */
.hero-cta,.contact-section .cta{justify-content:center;gap:12px;text-align:center}
.instagram-fixed{position:fixed;right:22px;bottom:22px;z-index:9;padding:12px 17px;background:#142134;color:#fff;border:1px solid #eee7da;font-family:Arial,sans-serif;font-size:14px;letter-spacing:.04em;box-shadow:0 8px 24px #13203233}
.instagram-section{background:#faf6ed;text-align:center;border-top:1px solid #bcb5a8}.instagram-section .section{max-width:760px;padding-top:65px;padding-bottom:65px}.instagram-embed-wrap{display:flex;justify-content:center;min-height:180px;margin:28px auto 20px}.instagram-embed-wrap .instagram-media{margin:0!important;min-width:280px!important;width:100%!important;max-width:540px!important}.instagram-profile-link{display:inline-block;border-bottom:1px solid;padding:9px 2px;font-family:Arial,sans-serif;font-size:15px;letter-spacing:.04em}
@media(max-width:760px){.instagram-fixed{right:12px;bottom:calc(76px + env(safe-area-inset-bottom));padding:10px 13px;font-size:13px}}
