:root{--cream:#fff8ec;--ink:#24140e;--orange:#f36b21;--amber:#ff9f1c;--wine:#6d1d11;--moss:#3d4b2e;--paper:#fffdf8;--line:rgba(53,25,10,.14)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 32px));margin:auto}.grain{position:fixed;inset:0;pointer-events:none;opacity:.06;z-index:100;background-image:radial-gradient(circle at 20% 20%,#000 0 1px,transparent 1px),radial-gradient(circle at 80% 70%,#000 0 1px,transparent 1px);background-size:17px 17px,23px 23px;mix-blend-mode:multiply}.topbar{position:sticky;top:0;z-index:50;background:rgba(255,248,236,.86);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.nav{height:74px;display:flex;align-items:center;justify-content:space-between;gap:20px}.nav-logo img{width:220px;height:auto}.nav-links{display:flex;align-items:center;gap:24px;font-weight:800;font-size:14px}.nav-cta{padding:12px 18px;background:var(--ink);color:#fff;border-radius:999px}.hero{position:relative;padding:56px 0 26px;isolation:isolate;overflow:hidden}.hero:before{content:"";position:absolute;inset:-10% -5% 20%;background:radial-gradient(circle at 80% 10%,rgba(255,159,28,.22),transparent 30%),radial-gradient(circle at 15% 45%,rgba(243,107,33,.16),transparent 24%);z-index:-2}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:52px}.kicker{display:inline-flex;gap:10px;align-items:center;font-size:12px;letter-spacing:.18em;font-weight:900;color:var(--wine);text-transform:uppercase}.kicker:before{content:"";width:42px;height:2px;background:var(--orange)}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(54px,7.5vw,108px);line-height:.87;letter-spacing:-.055em;margin:20px 0 24px}.hero-copy p{font-size:19px;line-height:1.65;max-width:650px;color:#5b4035}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:999px;font-weight:900;border:1px solid var(--ink);transition:.2s}.btn.primary{background:var(--orange);border-color:var(--orange);color:white;box-shadow:0 10px 30px rgba(243,107,33,.25)}.btn:hover{transform:translateY(-2px)}.hero-art{position:relative;min-height:620px}.poster-card{position:absolute;right:5%;top:0;width:min(420px,74%);border-radius:34px;overflow:hidden;box-shadow:0 32px 80px rgba(78,34,11,.26);transform:rotate(3deg);border:8px solid #fff}.poster-card img{width:100%;height:auto}.schedule-peek{position:absolute;left:0;bottom:18px;width:47%;border:6px solid #fff;border-radius:28px;overflow:hidden;box-shadow:0 24px 55px rgba(42,20,10,.25);transform:rotate(-5deg)}.schedule-peek img{aspect-ratio:4/5;object-fit:cover}.badge{position:absolute;right:0;bottom:58px;background:var(--ink);color:#fff;border-radius:22px;padding:16px 20px;font-weight:900;transform:rotate(-4deg);box-shadow:0 16px 35px rgba(0,0,0,.2)}.leaf{position:absolute;width:18px;height:28px;background:linear-gradient(135deg,var(--orange),var(--amber));border-radius:100% 0 100% 0;opacity:.78;animation:fall 8s linear infinite}.leaf:nth-child(1){left:6%;top:-10%;animation-delay:-2s}.leaf:nth-child(2){left:32%;top:-8%;animation-delay:-5s;transform:scale(.7)}.leaf:nth-child(3){left:72%;top:-12%;animation-delay:-1s;transform:scale(1.2)}.leaf:nth-child(4){left:88%;top:-9%;animation-delay:-6s}@keyframes fall{to{transform:translate(70px,900px) rotate(540deg)}}.info-strip{background:var(--ink);color:white;margin-top:8px}.info-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr)}.info-item{padding:26px;border-right:1px solid rgba(255,255,255,.14)}.info-item:last-child{border-right:none}.info-label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#ffbd78;font-weight:900}.info-value{margin-top:8px;font-weight:800;font-size:18px;line-height:1.35}.section{padding:92px 0}.section.alt{background:#fffdf8}.eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--orange);font-weight:900}.section h2{font-family:Georgia,serif;font-size:clamp(40px,5vw,70px);line-height:1;margin:10px 0 22px}.lead{font-size:18px;line-height:1.7;color:#66493d;max-width:760px}.schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:38px}.schedule-card{padding:32px;border-radius:28px;border:1px solid var(--line);background:linear-gradient(180deg,#fff,#fff9ef);box-shadow:0 18px 50px rgba(72,34,10,.08)}.schedule-card strong{display:block;font-size:24px;margin-bottom:9px}.schedule-card p{margin:0;color:#6d5147;line-height:1.6}.price-card{background:var(--orange);color:white;border:none}.price-card p{color:#fff1df}.gallery{display:grid;grid-template-columns:1.15fr .85fr;gap:24px;margin-top:36px}.gallery figure{margin:0;border-radius:30px;overflow:hidden;position:relative;background:#111;box-shadow:0 20px 60px rgba(65,27,7,.14)}.gallery img{width:100%;height:100%;object-fit:cover}.gallery .tall{min-height:680px}.gallery .side{display:grid;gap:24px}.gallery .side figure{min-height:328px}.gallery figcaption{position:absolute;left:18px;bottom:18px;background:rgba(20,10,5,.78);color:white;padding:10px 14px;border-radius:999px;font-size:12px;font-weight:800;backdrop-filter:blur(8px)}.notice{margin-top:40px;border-left:5px solid var(--orange);padding:18px 22px;background:#fff4e3;border-radius:0 18px 18px 0;color:#5f3f31;line-height:1.6}.footer{background:#170d09;color:#fff;padding:44px 0}.footer-grid{display:flex;justify-content:space-between;gap:28px;align-items:center}.footer img{width:220px}.footer p{max-width:620px;color:#d6c0b6;line-height:1.5;font-size:13px}.back{display:inline-flex;border:1px solid rgba(255,255,255,.28);padding:10px 14px;border-radius:999px;font-weight:800;font-size:13px}
@media(max-width:900px){.nav-links a:not(.nav-cta){display:none}.hero{padding-top:34px}.hero-grid{grid-template-columns:1fr}.hero-art{min-height:540px}.poster-card{right:0;width:72%}.schedule-peek{width:48%}.info-strip .wrap{grid-template-columns:1fr}.info-item{border-right:none;border-bottom:1px solid rgba(255,255,255,.14)}.schedule-grid,.gallery{grid-template-columns:1fr}.gallery .tall{min-height:0}.gallery .tall img{aspect-ratio:2/3}.gallery .side{grid-template-columns:1fr 1fr}.footer-grid{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.wrap{width:min(100% - 22px,1180px)}.nav{height:64px}.nav-logo img{width:170px}h1{font-size:54px}.hero-copy p{font-size:16px}.hero-art{min-height:450px}.poster-card{width:78%;border-width:5px;border-radius:24px}.schedule-peek{width:50%;border-width:4px;border-radius:20px}.badge{font-size:12px;padding:12px 14px}.section{padding:64px 0}.schedule-grid{grid-template-columns:1fr}.gallery .side{grid-template-columns:1fr}.gallery .side figure{min-height:auto}.gallery .side img{aspect-ratio:4/5}.footer{padding-bottom:34px}}
