@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@700;800;900&family=Inter:wght@400;600;700;800;900&display=swap');
:root{--ink:#0b0b0d;--paper:#f4f1e8;--red:#f03337;--yellow:#ffd51f;--white:#fff;--muted:#aaa6a0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.topbar{height:82px;padding:0 clamp(18px,5vw,72px);display:flex;align-items:center;justify-content:space-between;position:fixed;z-index:20;inset:0 0 auto;background:rgba(11,11,13,.9);backdrop-filter:blur(16px);border-bottom:1px solid #ffffff1a}.brand{display:flex;align-items:center;gap:10px;font-weight:900;letter-spacing:.09em}.brand img{width:58px;height:58px;object-fit:contain}.topbar nav{display:flex;align-items:center;gap:28px;font-weight:700;font-size:.9rem}.book-button,.primary-cta{display:inline-flex;align-items:center;gap:8px;background:var(--yellow);color:var(--ink);padding:15px 22px;font-weight:900;clip-path:polygon(7% 0,100% 0,93% 100%,0 100%)}
.hero{min-height:820px;padding:160px clamp(22px,7vw,110px) 95px;display:flex;align-items:flex-end;justify-content:space-between;gap:40px;background:linear-gradient(90deg,#09090bf5 0%,#09090bbd 48%,#09090b24 82%),url('assets/hero.jpg') center/cover}.hero-copy{max-width:780px}.kicker{text-transform:uppercase;letter-spacing:.17em;font-size:.75rem;font-weight:900;color:var(--yellow);display:flex;align-items:center;gap:10px}.kicker:before{content:"";width:34px;height:3px;background:var(--red)}.kicker.dark{color:#574600}.hero h1,.booking-intro h2,.section-copy h2,.menu-section h2,.confirmation h3{font-family:'Barlow Condensed',Impact,sans-serif;font-weight:900;line-height:.88;letter-spacing:.01em;margin:22px 0}.hero h1{font-size:clamp(5.5rem,13vw,10rem)}.hero h1 em{font-style:normal;color:var(--yellow)}.lead{font-size:1.15rem;line-height:1.7;color:#e0ddd5;max-width:580px;margin:0 0 34px}.hero-badge{width:150px;height:150px;flex:none;border:2px solid var(--yellow);border-radius:50%;display:grid;place-content:center;text-align:center;transform:rotate(8deg);background:#0b0b0dcc}.hero-badge strong{font-size:2.2rem;color:var(--yellow)}.hero-badge span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;max-width:95px}.ticker{display:flex;gap:7vw;overflow:hidden;white-space:nowrap;background:var(--yellow);color:var(--ink);padding:18px 4vw;font-weight:900;letter-spacing:.08em}.ticker span:after{content:"◆";color:var(--red);margin-left:7vw}
.booking-section{background:var(--paper);color:var(--ink);padding:110px clamp(20px,7vw,110px);display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(50px,8vw,120px);align-items:start}.booking-intro{position:sticky;top:120px}.booking-intro h2,.section-copy h2,.menu-section h2{font-size:clamp(4rem,7vw,6.6rem)}.booking-intro>p:not(.kicker){font-size:1.05rem;line-height:1.75;color:#5e5a52;max-width:510px}.contact-list{display:grid;gap:14px;margin-top:38px;padding-top:32px;border-top:1px solid #1a1a1a22}.contact-list span{display:flex;gap:12px;align-items:center;font-weight:700}.booking-card{background:white;padding:clamp(24px,4vw,52px);box-shadow:0 22px 70px #18150e18;border-top:8px solid var(--red)}.step{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:26px 0;border-bottom:1px solid #1112}.step>span{font-weight:900;color:var(--red)}.step label{display:flex;align-items:center;gap:9px;font-weight:900;margin-bottom:15px}.step input[type=date]{width:100%;padding:15px;border:1px solid #bbb;background:#fbfaf7}.slots{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.slot{padding:12px 5px;background:#f2f0e9;border:1px solid transparent;font-weight:800}.slot:hover:not(:disabled),.slot.selected{background:var(--ink);color:white;border-color:var(--ink)}.slot:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}.scarcity{color:#a22920;font-size:.8rem;font-weight:700}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-grid input,.field-grid select,.field-grid textarea{min-width:0;width:100%;padding:15px;border:1px solid #cbc7bc;background:#fbfaf7;color:#111}.field-grid textarea{grid-column:1/-1;min-height:92px;resize:vertical}.form-error{background:#fff0ef;border:1px solid #ebaaa6;color:#8b211b;padding:12px 14px;font-weight:700}.confirm-button,.secondary-button{border:0;background:var(--red);color:white;padding:17px 24px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:24px}.confirm-button:disabled{opacity:.45;cursor:not-allowed}.privacy-note,.small{font-size:.77rem;color:#777167;line-height:1.5;text-align:center}.confirmation{text-align:center;padding:22px 0}.check{width:72px;height:72px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;margin:0 auto 24px;font-size:2rem}.confirmation .kicker{justify-content:center}.confirmation h3{font-size:clamp(3rem,6vw,5.5rem)}.confirmation p{line-height:1.7}.confirmation-code{border:1px dashed #999;padding:18px;margin:28px auto;max-width:330px}.confirmation-code span{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.13em}.confirmation-code strong{font-size:1.7rem;letter-spacing:.09em}.secondary-button{background:var(--ink)}
.experience,.menu-section{padding:110px clamp(20px,7vw,110px);display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.experience img,.menu-section img{width:100%;height:590px;object-fit:cover}.section-copy>p:not(.kicker){color:#bbb7af;line-height:1.8;font-size:1.08rem;max-width:540px}.menu-section{background:#171719}.menu-section ul{list-style:none;padding:0;margin:30px 0}.menu-section li{padding:20px 0;border-bottom:1px solid #ffffff22;font-weight:800}.menu-section li span{color:var(--yellow);margin-right:24px}.menu-section .primary-cta{margin-top:15px}footer{padding:55px clamp(20px,7vw,110px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:40px;border-top:1px solid #ffffff1a;color:#aaa6a0;font-size:.82rem}.footer-brand{display:flex;align-items:center;gap:12px;color:white;letter-spacing:.08em}.footer-brand img{width:76px;height:76px;object-fit:contain}footer>div:last-child{display:grid;gap:8px}footer>div:last-child span{color:var(--yellow);font-weight:900;text-transform:uppercase;letter-spacing:.12em}
@media(max-width:900px){.topbar nav>a:not(.book-button){display:none}.hero{min-height:720px}.hero-badge{display:none}.booking-section,.experience,.menu-section{grid-template-columns:1fr}.booking-intro{position:static}.experience img{order:-1}.booking-section{gap:35px}footer{grid-template-columns:1fr}.slots{grid-template-columns:repeat(3,1fr)}}@media(max-width:560px){.topbar{height:70px;padding:0 14px}.brand img{width:46px;height:46px}.brand span{font-size:.84rem}.book-button{padding:12px 15px;font-size:.78rem}.hero{min-height:680px;padding:135px 20px 70px}.hero h1{font-size:5rem}.ticker{font-size:.8rem}.booking-section,.experience,.menu-section{padding:78px 16px}.booking-card{padding:22px 16px}.step{grid-template-columns:30px 1fr}.field-grid{grid-template-columns:1fr}.field-grid textarea{grid-column:auto}.experience img,.menu-section img{height:390px}.slots{grid-template-columns:repeat(3,1fr)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
