*{box-sizing:border-box}
html{scroll-behavior:smooth;overflow-x:hidden}
body{margin:0;width:100%;max-width:100%;overflow-x:hidden;background:#06090c;color:#fff;font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
main,header,nav,section,footer{width:100%;max-width:100%;min-width:0}

/* Header */
.sitebar{height:84px;display:flex;align-items:center;gap:22px;padding:0 28px;background:#04090d;position:sticky;top:0;z-index:80;border-bottom:1px solid rgba(255,255,255,.08);overflow:hidden}
.brand-image{display:flex;align-items:center;flex:0 1 auto;min-width:0}
.brand-image img{width:235px;height:auto;max-width:100%}
.desktop-nav{display:flex;align-items:center;gap:20px;min-width:0}
.desktop-nav a{font-size:13px;font-weight:800;padding:31px 0 27px;white-space:nowrap;border-bottom:3px solid transparent}
.desktop-nav a:hover,.desktop-nav a.active{color:#1fc4ff;border-bottom-color:#1fc4ff}
.header-right{margin-left:auto;display:flex;align-items:center;gap:16px;min-width:0}
.header-links{display:flex;align-items:center;gap:14px;min-width:0;white-space:nowrap}
.header-links a{font-size:11px;font-weight:700;color:#edf1f4}
.header-links a:hover{color:#1fc4ff}
.header-book{flex:0 0 auto;background:#f2c62a;color:#061018;font-size:13px;font-weight:900;padding:14px 20px;border-radius:12px;white-space:nowrap}
.menu-button{display:none;background:none;border:0;padding:8px;cursor:pointer}
.menu-button span{display:block;width:30px;height:2px;background:#fff;margin:6px 0}
.mobile-nav{display:none}

/* Hero */
.hero-image{position:relative;width:100%;max-width:100vw;overflow:hidden;background:#03070a}
.hero-image>img{width:100%;height:auto;max-width:100%;object-fit:contain}
.hero-hotspots{position:absolute;inset:0;z-index:4;pointer-events:none}
.hero-hit{position:absolute;display:block;border-radius:12px;pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent}
.hero-hit:focus-visible{outline:3px solid #ffd33d;outline-offset:2px}
.hit-view-menu{left:5.29%;top:81.77%;width:12.80%;height:12.29%}
.hit-book-main{left:18.55%;top:81.77%;width:15.10%;height:12.29%}

/* Scrolling strip */
.marquee{width:100%;max-width:100vw;overflow:hidden;background:#04090d;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.marquee-track{display:flex;width:max-content;animation:marquee 28s linear infinite;will-change:transform}
.marquee-group{display:flex;align-items:center;gap:18px;padding:14px 18px;white-space:nowrap}
.marquee-group span{font-size:13px;font-weight:900;letter-spacing:.20em}
.marquee-group i{font-style:normal;color:#10c4ff;font-size:15px}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Favorites */
.favorites{position:relative;overflow:hidden;background:linear-gradient(180deg,#fbfaf7,#f1f8fb);color:#0b1116;padding:44px 4vw 40px}
.section-head{text-align:center;max-width:900px;margin:0 auto 26px}
.eyebrow{letter-spacing:.32em;font-size:12px;font-weight:900;margin:0 0 12px}
.eyebrow.ink{color:#161b20}.eyebrow.cyan{color:#16c5ff}
.section-head h2,.chef-copy h2,.car-copy h2{font-family:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;letter-spacing:.012em}
.section-head h2{font-size:50px;line-height:.95;margin:5px 0 10px}
.section-head h2 em{font-style:normal;color:#10bdf8}
.section-head p{margin:0;color:#43494e;line-height:1.5}
.food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1220px;margin:0 auto}
.food-card{min-width:0;height:265px;border-radius:20px;position:relative;overflow:hidden;background:#111;border:1px solid rgba(0,0,0,.13);box-shadow:0 14px 34px rgba(0,0,0,.18)}
.food-card img{width:100%;height:100%;object-fit:cover;filter:saturate(.96) contrast(1.04)}
.food-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.04) 30%,rgba(0,0,0,.9))}
.food-card div{position:absolute;z-index:2;left:22px;right:18px;bottom:18px;color:#fff}
.food-card h3{font-family:Impact,Arial Narrow,sans-serif;font-style:italic;font-size:31px;margin:0 0 4px}
.food-card p{margin:0;color:#1cc8ff;font-size:11px;letter-spacing:.07em;font-weight:900}

/* Chef */
.chef-band{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.15fr) minmax(0,1.15fr);background:#070b0f;min-height:410px;overflow:hidden;border-top:1px solid #181f25}
.chef-image{position:relative;overflow:hidden;background:#05090c;min-width:0}
.chef-image img{width:100%;height:100%;object-fit:cover;object-position:center 18%;filter:saturate(.92) contrast(1.05)}
.chef-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,7,11,.22),transparent 58%,rgba(2,7,11,.3)),linear-gradient(180deg,transparent 55%,rgba(2,7,11,.25))}
.chef-copy,.hk-card{min-width:0;padding:40px 34px}
.chef-copy{background:radial-gradient(circle at 0 50%,rgba(0,146,255,.23),transparent 54%)}
.chef-copy h2{font-size:47px;line-height:.9;margin:8px 0 16px}
.chef-copy h2 em{font-style:normal;color:#12bfff}
.chef-copy p,.hk-card p{color:#e7eaed;line-height:1.5;font-size:14px}
.script-line{font-family:'Brush Script MT',cursive!important;color:#ff306e!important;font-size:28px!important;transform:rotate(-2deg);margin-top:22px!important}
.hk-card{position:relative;overflow:hidden;border-left:1px solid #3b4248}
.hk-photo{position:absolute;inset:0;background:url('assets/hero-real.jpg') center 34%/cover no-repeat;filter:grayscale(1) contrast(1.05) brightness(.7)}
.hk-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#080c10 5%,rgba(8,12,16,.92) 56%,rgba(8,12,16,.42))}
.hk-content{position:relative;z-index:1;max-width:370px}
.hk-mark{font-family:Georgia,serif!important;font-size:68px!important;line-height:.7!important;margin:0!important;color:#fff!important}
.hk-card h3{font-family:Georgia,serif;font-size:26px;font-weight:400}
.hk-card strong{display:inline-block;background:#e31836;padding:10px 16px;margin-top:8px;transform:rotate(-3deg);font-style:italic;font-size:18px}

/* Car */
.car-section{position:relative;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.48fr);min-height:390px;background:linear-gradient(180deg,#eefaff,#fff);color:#071018;padding:38px 4vw;overflow:hidden}
.car-copy{position:relative;z-index:2;align-self:center;min-width:0}
.car-copy h2{font-size:47px;line-height:.9;margin:8px 0 17px}
.car-copy p{line-height:1.52;max-width:500px}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border-radius:9px;font-weight:900;font-size:13px}
.btn.blue{background:#1dbbf5;color:#061018}
.car-image{min-width:0;position:relative;z-index:1;display:flex;align-items:center;justify-content:center;padding-left:18px}
.car-image img{width:100%;max-height:330px;object-fit:cover;object-position:center;border-radius:20px;box-shadow:0 16px 38px rgba(0,0,0,.23);filter:saturate(.98) contrast(1.03)}
.car-note{position:absolute;left:4.5vw;bottom:16px;font-family:'Brush Script MT',cursive;color:#f0b600;font-size:22px;transform:rotate(-4deg)}
.car-note b{color:#0aaee9}

/* CTA */
.cta-band{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(0,.9fr);align-items:center;background:#070b0f;border-top:1px solid #26323b;padding:24px 4vw;overflow:hidden}
.cta-band article{min-width:0;display:flex;gap:14px;padding:8px 18px;border-right:1px solid #3e4750}
.cta-band article span{font-size:31px}
.cta-band h3{font-size:14px;margin:0 0 5px}
.cta-band p{font-size:11px;line-height:1.35;color:#c9ced2;margin:0}
.cta-band a:not(.big-vibes):hover{color:#20c7ff}
.big-vibes{background:#10bdf8;color:#051017;padding:17px 18px;font-family:Impact,Arial Narrow,sans-serif;font-size:28px;line-height:.9;transform:rotate(-2deg);text-align:center;margin-left:20px}

/* Footer */
footer{min-height:104px;display:flex;align-items:center;gap:28px;padding:20px 4vw;background:#05080a;border-top:1px solid #1f2a31;overflow:hidden}
.footer-brand{flex:0 1 auto;min-width:0}
.footer-brand img{width:240px;height:auto;max-width:100%}
.tagline{font-family:'Brush Script MT',cursive;font-size:28px;font-style:italic;margin:auto}
.footer-contact{min-width:0;display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.footer-contact a{font-size:12px;color:#d7dde1;overflow-wrap:anywhere}
.footer-contact a:hover{color:#20c7ff}
.folio{font-size:12px;color:#b8bec2;display:flex;flex-direction:column;gap:4px;line-height:1.2;text-decoration:none;white-space:nowrap}.folio span{color:#aeb6bc}.folio b{color:#ffd028;font-size:13px}.folio:hover b{color:#20c7ff}

/* Compact / mobile */
@media(max-width:1060px){
  .desktop-nav,.header-right{display:none}
  .menu-button{display:block;margin-left:auto}
  .sitebar{height:82px;padding:0 16px}
  .brand-image img{width:min(220px,66vw)}
  .mobile-nav{position:fixed;z-index:79;top:82px;left:0;right:0;width:100%;max-width:100vw;background:#090e12;padding:14px 20px;flex-direction:column;overflow:hidden}
  .mobile-nav.open{display:flex}
  .mobile-nav a{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08);overflow-wrap:anywhere}
}

@media(max-width:900px){
  .food-grid{grid-template-columns:1fr}
  .food-card{height:235px}
  .chef-band{grid-template-columns:1fr}
  .chef-image{height:390px}
  .chef-copy,.hk-card{padding:30px 20px}
  .hk-card{border-left:0;border-top:1px solid #343d45;min-height:385px}
  .car-section{grid-template-columns:1fr;padding:32px 17px}
  .car-image{margin-top:24px;padding-left:0}
  .car-note{display:none}
  .cta-band{grid-template-columns:1fr;padding:15px}
  .cta-band article{border-right:0;border-bottom:1px solid #2c343b;padding:16px 6px}
  .big-vibes{margin:18px 0 6px}
  footer{flex-direction:column;align-items:flex-start;gap:14px}
  .tagline{margin:0}
}

@media(max-width:620px){
  .sitebar{height:76px;padding:0 14px}
  .brand-image img{width:min(195px,68vw)}
  .mobile-nav{top:76px}
  .hero-image>img{width:100%;height:auto}
  .hit-view-menu{left:5.15%;top:81.5%;width:13.1%;height:12.7%}
  .hit-book-main{left:18.45%;top:81.5%;width:15.5%;height:12.7%}
  .marquee-group{gap:14px;padding:12px 16px}
  .marquee-group span{font-size:10px;letter-spacing:.14em}
  .favorites{padding:34px 13px}
  .section-head{width:100%;max-width:100%}
  .section-head h2{font-size:clamp(34px,10vw,39px);overflow-wrap:anywhere}
  .section-head p{font-size:16px;line-height:1.5}
  .chef-image{height:360px}
  .chef-copy h2,.car-copy h2{font-size:40px}
  footer{padding:24px 18px}
  .footer-brand img{width:min(190px,70vw)}
  .footer-contact{gap:8px;flex-direction:column;align-items:flex-start}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none}}


/* V14 responsive desktop header refinement */
.sitebar{overflow:visible}
.brand-image{flex:0 0 auto}
.desktop-nav{flex:0 1 auto}
.header-right{flex:0 1 auto;min-width:0}
.header-links{overflow:visible}

/* Full desktop: keep everything visible without clipping */
@media(min-width:1700px){
  .sitebar{padding:0 34px;gap:24px}
  .brand-image img{width:220px}
  .desktop-nav{gap:22px}
  .desktop-nav a{font-size:13px}
  .header-right{gap:14px}
  .header-links{gap:12px}
  .header-links a{font-size:11px}
  .header-book{padding:14px 18px}
}

/* Large laptop / standard desktop: simplify contact first, keep navigation */
@media(min-width:1450px) and (max-width:1699px){
  .sitebar{padding:0 24px;gap:18px}
  .brand-image img{width:205px}
  .desktop-nav{gap:17px}
  .desktop-nav a{font-size:12px}
  .header-links a{font-size:10px}
  .header-links a:nth-child(2){display:none}
  .header-book{padding:13px 17px;font-size:12px}
}

/* Medium desktop: preserve the actual menu; move contact details out of the way */
@media(min-width:1181px) and (max-width:1449px){
  .sitebar{padding:0 20px;gap:16px}
  .brand-image img{width:190px}
  .desktop-nav{gap:15px}
  .desktop-nav a{font-size:11px}
  .header-links{display:none}
  .header-right{margin-left:auto}
  .header-book{padding:12px 16px;font-size:11px}
}

/* Compact desktop/tablet landscape: menu still stays visible */
@media(min-width:1061px) and (max-width:1180px){
  .sitebar{padding:0 16px;gap:14px}
  .brand-image img{width:175px}
  .desktop-nav{display:flex !important;gap:12px}
  .desktop-nav a{font-size:10px;padding:31px 0 27px}
  .header-right{display:none !important}
  .menu-button{display:none !important}
}

/* Collapse to the proven mobile hamburger only when space actually requires it */
@media(max-width:1060px){
  .desktop-nav,.header-right{display:none !important}
  .menu-button{display:block !important;margin-left:auto}
  .sitebar{height:82px;padding:0 16px}
  .brand-image img{width:min(220px,66vw)}
  .mobile-nav{position:fixed;z-index:79;top:82px;left:0;right:0;width:100%;max-width:100vw;background:#090e12;padding:14px 20px;flex-direction:column;overflow:hidden}
  .mobile-nav.open{display:flex}
  .mobile-nav a{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.08);overflow-wrap:anywhere}
}

/* V17 desktop car section visibility fix */
@media (min-width:901px){
  .car-section{
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    align-items:center;
    min-height:unset;
    padding:52px 4vw 64px;
    overflow:visible;
  }
  .car-copy{
    align-self:center;
    padding-right:22px;
  }
  .car-copy p{
    max-width:560px;
  }
  .car-copy .btn.blue{
    margin-top:10px;
    position:relative;
    z-index:4;
  }
  .car-image{
    align-self:center;
  }
  .car-note{
    position:static;
    grid-column:1;
    margin:20px 0 0;
    transform:rotate(-3deg);
    align-self:start;
    z-index:3;
  }
}
