/* Single-film landing, followed by dark tropical location pages. */
:root{--cream:#f1e8d4;--paper:#11211a;--ink:#f1e8d4;--orange:#d9a05e;--teal:#e1b875;--muted:#d0cabc;background:#0a1712;color:var(--cream)}
body{background:#0a1712;color:var(--cream)}
.home{background:#07110d}
.film-landing{height:100svh;min-height:560px}
.background-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}
.film-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,#071b1680,#17141033 52%,#613f1755),linear-gradient(0deg,#060c0acc,transparent 35%,#0003)}
.film-landing .landing-content{padding:60px 24px;gap:38px}
.landing-badge{width:clamp(240px,28vw,345px);height:auto;filter:drop-shadow(0 10px 35px #0008)}
.landing-location-links{display:flex;gap:18px;justify-content:center}
.landing-link{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:15px 23px;min-width:163px;min-height:50px;font-size:10px;font-weight:400;letter-spacing:1.8px;text-transform:uppercase;color:#f4f2eb;border:1px solid #f4f2eb88;background:#ffffff08;backdrop-filter:blur(5px);transition:background .25s,color .25s}
.landing-link span{font-size:18px;line-height:1;letter-spacing:0}
.landing-link:hover{background:#f4f2eb;color:#151711}
.film-control{position:absolute;right:32px;bottom:28px;display:flex;align-items:center;gap:10px;padding:9px 13px;border:1px solid #d4d7c255;background:#ffffff08;backdrop-filter:blur(5px);color:#deded0;font-size:9px;font-weight:400;letter-spacing:1px;border-radius:0}
.skip{background:#11251b;color:var(--cream)}
.site-header{background:#0a1712ed;backdrop-filter:blur(14px);border-bottom-color:#eedfbe20}
.nav-brand{display:flex;align-items:center;gap:12px}
.nav-brand>img{width:54px;height:54px;object-fit:contain}
.site-header nav [aria-current]{border-color:#d9a05e}
.location-hero{position:relative;background:#101f17;isolation:isolate;overflow:hidden}
.hero-copy{position:relative;z-index:1}
.hero-copy:before{content:'';position:absolute;inset:-120px -60px 0 -130px;background:url('/assets/palm-frond.svg') left top / 600px no-repeat;transform:rotate(90deg);opacity:.11;pointer-events:none;z-index:-1}
.hero-copy:after{content:'';position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 30% 10%,#34503826,transparent 70%)}
h1 em{color:#d9a05e}
.eyebrow{color:#d9a05e}
.intro{color:#ded7c8}
.hero-detail{color:#c8c8b6}
.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#101f1733,transparent 35%),linear-gradient(0deg,#07110d66,transparent 40%);pointer-events:none}
.photo-tag{background:#14291e;color:#eddfc3;border:1px solid #bc94585c;z-index:1}
.orange{background:#d9a05e;color:#171b11}
.dark{background:#d9a05e;color:#171b11}
.text-link{color:#e6d6b5;text-decoration-color:#d9a05e80}
.visit-strip{background:#153224;color:#f1e8d4;border-top:1px solid #c7a76b20;border-bottom:1px solid #c7a76b20}
.visit-strip h2,.visit-strip p{color:#f1e8d4}
.visit-strip .eyebrow{color:#d9a05e}
.gallery-section{position:relative;isolation:isolate;overflow:hidden;background:#0a1712}
.gallery-section:before{content:'';position:absolute;inset:0 0 auto auto;width:650px;height:650px;background:url('/assets/palm-frond.svg') center/contain no-repeat;transform:rotate(175deg);opacity:.12;z-index:-1;pointer-events:none}
.section-heading>p{color:#ded7c8}
.gallery-item button,.gallery-photo{background:#153023}
.gallery-item>div{color:#d4cfbd}
.gallery-item img{border:1px solid #dfc79d19}
.menu-section{background:#14241b;position:relative}
.menu-section>.section-heading .eyebrow:before,.lahabra-menu>.eyebrow:before{content:'✿';color:#dc8c65;font-size:22px;margin-right:12px;vertical-align:middle}
.menu-images img{box-shadow:0 12px 40px #0007;border:1px solid #dbc79935}
.text-menu{border-top-color:#d4bd892b}
.menu-item{border-top-color:#dcc59a26}
.menu-group h3{color:#d9a05e}
.menu-note,.menu-item p,.menu-advisories{color:#d7d0c0}
.menu-advisories{border-top-color:#dcc59a26}
.lahabra-menu{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 100%,#234630,#11251a 65%);border-bottom:1px solid #d9a05e25}
.lahabra-menu:before,.lahabra-menu:after{content:'';position:absolute;width:450px;height:450px;background:url('/assets/palm-frond.svg') center/contain no-repeat;opacity:.22;z-index:-1;pointer-events:none}
.lahabra-menu:before{left:-160px;top:-30px;transform:rotate(90deg)}
.lahabra-menu:after{right:-150px;bottom:-70px;transform:rotate(-90deg)}
.lahabra-menu>p:not(.eyebrow){color:#ded7c8}
.event-section{background:#172d20;border:1px solid #a8864a3d}
.other-location{position:relative;isolation:isolate;overflow:hidden;background:#12271b;color:#f1e8d4;border-top:1px solid #a8864a30}
.other-location:before{content:'';position:absolute;inset:-250px -240px -150px auto;width:700px;background:url('/assets/palm-frond.svg') center/contain no-repeat;opacity:.2;transform:rotate(195deg);z-index:-1;pointer-events:none}
.other-location .eyebrow{color:#d9a05e}
.outline{border-color:#d9a05e80;color:#ead8b2}
.site-footer{background:#06110c;border-top:1px solid #d9a05e20;color:#ded7c8}
.site-footer .wordmark{color:#f1e8d4}
.site-footer .wordmark:before{content:'';display:inline-block;width:40px;height:40px;background:url('/assets/shakas-logo-circle.png') center/contain no-repeat;vertical-align:middle;margin-right:12px}
.video-dialog{background:#0a1712}
.not-found{background:#0a1712}
@media(max-width:900px){.hero-copy:before{opacity:.08}}
@media(max-width:600px){.film-landing{min-height:560px}.film-landing .landing-content{padding:50px 20px;gap:31px}.landing-badge{width:270px}.landing-location-links{gap:12px}.landing-link{min-width:143px;min-height:45px;padding:14px 19px;gap:25px;font-size:9px;letter-spacing:1.3px}.film-control{right:20px;bottom:20px;font-size:8px;padding:8px 10px}.nav-brand{gap:8px}.nav-brand>img{width:41px;height:41px}.nav-brand>div{font-size:20px}.nav-brand>div>span{font-size:6px;letter-spacing:1.6px}.site-header nav{gap:14px}.hero-copy:before{inset:-100px -50px 0 -80px;background-size:450px}.lahabra-menu:before{left:-260px}.lahabra-menu:after{right:-240px}.other-location:before{opacity:.1}.site-footer .wordmark:before{width:35px;height:35px}}
@media(max-width:360px){.landing-link{min-width:130px;padding:13px 16px}.landing-badge{width:245px}.nav-brand>div{font-size:17px}.site-header nav{font-size:10px;gap:12px}}
