/* Burgers Ink — site styles */
:root{
  --ink:#0a0908;
  --black:#14110f;
  --char:#1d1916;
  --char-2:#2a2520;
  --paper:#f4ede0;
  --paper-2:#e8ddc7;
  --paper-dim:#cdc3ad;
  --gold:#c8a24a;
  --gold-2:#e3b85a;
  --rust:#a8341a;
  --line:rgba(244,237,224,.14);
  --line-strong:rgba(244,237,224,.32);
  --grit: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.55'/></svg>");
  --easeout: cubic-bezier(.16,.84,.3,1);
}

*{box-sizing:border-box}
html,body{margin:0;background:var(--ink);color:var(--paper);font-family:"Manrope",ui-sans-serif,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{overflow-x:hidden}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}

.display{font-family:"Anton",sans-serif;font-weight:400;letter-spacing:-.005em;line-height:.92;text-transform:uppercase}
.serif{font-family:"Instrument Serif",serif;font-style:italic;font-weight:400;letter-spacing:-.01em}
.mono{font-family:"JetBrains Mono",ui-monospace,monospace;font-weight:500}
.eyebrow{font-family:"JetBrains Mono",ui-monospace,monospace;font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--paper-dim)}

/* Film grain overlay */
.grain{pointer-events:none;position:fixed;inset:0;background-image:var(--grit);background-size:160px;opacity:.07;mix-blend-mode:overlay;z-index:90;animation:grainShift 1.2s steps(4) infinite}
@keyframes grainShift{0%{transform:translate(0,0)}25%{transform:translate(-6%,4%)}50%{transform:translate(3%,-3%)}75%{transform:translate(-2%,6%)}100%{transform:translate(0,0)}}

/* Vignette */
.vignette{pointer-events:none;position:fixed;inset:0;background:radial-gradient(120% 80% at 50% 50%,transparent 50%,rgba(0,0,0,.55) 100%);z-index:80}

/* ------- NAV ------- */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;transition:background .4s,backdrop-filter .4s,border-color .4s;border-bottom:1px solid transparent}
.nav.scrolled{background:rgba(10,9,8,.72);backdrop-filter:blur(14px) saturate(140%);border-bottom-color:var(--line)}
.nav-logo{display:flex;align-items:center;width:180px;min-width:180px}
.nav-logo img{width:100%;height:auto;display:block}
@keyframes spin{to{transform:rotate(360deg)}}
.nav-links{display:flex;gap:28px}
.nav-link{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-dim);position:relative;font-weight:500}
.nav-link:hover{color:var(--paper)}
.nav-link::after{content:"";position:absolute;left:0;right:100%;bottom:-4px;height:1px;background:var(--gold);transition:right .3s var(--easeout)}
.nav-link:hover::after{right:0}
.nav-cta{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;background:var(--gold);color:var(--ink);border-radius:999px;font-weight:700;font-size:12px;letter-spacing:.12em;text-transform:uppercase;transition:transform .25s var(--easeout),background .25s}
.nav-cta:hover{background:var(--gold-2);transform:translateY(-1px)}
.nav-cta svg{width:14px;height:14px}

@media (max-width:780px){
  .nav{padding:14px 18px}
  .nav-logo{width:148px;min-width:148px}
  .nav-links{display:none}
  .hero-h,.section-head h2,.press-h,.footer-big{line-height:1.02}
}

/* ------- HERO ------- */
.hero{position:relative;min-height:100vh;padding:140px 28px 100px;display:flex;flex-direction:column;justify-content:center;gap:40px;overflow:hidden;background:radial-gradient(140% 60% at 50% 80%, rgba(168,52,26,.35), transparent 60%), linear-gradient(180deg,#0a0908 0%, #14110f 60%, #0a0908 100%)}
.hero-bg{position:absolute;inset:0;background-image:radial-gradient(2px 2px at 20% 30%,rgba(200,162,74,.4),transparent),radial-gradient(1px 1px at 80% 60%,rgba(200,162,74,.5),transparent),radial-gradient(1.5px 1.5px at 50% 80%,rgba(244,237,224,.3),transparent);opacity:.6}
.hero-meta{position:absolute;top:100px;left:28px;right:28px;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--paper-dim)}
.hero-meta .dot{display:inline-block;width:6px;height:6px;background:var(--rust);border-radius:50%;margin-right:8px;vertical-align:middle;box-shadow:0 0 0 4px rgba(168,52,26,.2);animation:pulse 2s infinite}
@keyframes pulse{50%{box-shadow:0 0 0 8px rgba(168,52,26,0)}}

.hero-inner{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:40px;max-width:1480px;margin:0 auto;width:100%}
.hero-side{display:flex;flex-direction:column;gap:14px}
.hero-side.right{align-items:flex-end;text-align:right}
.hero-side p{font-size:13px;line-height:1.55;color:var(--paper-dim);max-width:300px;margin:0}

.hero-image-wrap{position:relative;width:min(38vw,480px);aspect-ratio:1;flex-shrink:0}
.hero-image{width:92%;height:92%;margin:4%;border-radius:50%;overflow:hidden;position:relative;background:#0b0a09;box-shadow:0 50px 100px rgba(0,0,0,.6),inset 0 0 0 1px rgba(244,237,224,.08)}
.hero-image img{width:100%;height:100%;object-fit:contain;object-position:center;animation:slowzoom 18s ease-in-out infinite alternate}
@keyframes slowzoom{from{transform:scale(1.1) rotate(0deg)}to{transform:scale(1.5) rotate(1deg)}}
.hero-ring{position:absolute;inset:-30px;border-radius:50%;border:1px solid var(--line-strong);animation:spin 60s linear infinite}
.hero-ring::before{content:attr(data-text);position:absolute;inset:0}
.hero-ring-text{position:absolute;inset:-30px;animation:spin 30s linear infinite}
.hero-ring-text svg{width:100%;height:100%;overflow:visible}
.hero-ring-text text{fill:var(--gold);font-family:"JetBrains Mono";font-size:9px;letter-spacing:.4em;text-transform:uppercase}

.hero-headline{position:relative;z-index:3;margin:0 auto;max-width:1480px;padding:0;width:100%;text-align:center}
.hero-h{font-size:clamp(56px,9.5vw,150px);color:var(--paper);position:relative;display:block;line-height:.98;margin:0}
.hero-h .ln{display:block;white-space:nowrap}
.hero-h .word{display:inline-block;position:relative;vertical-align:baseline}
.hero-h .word.ink{color:var(--gold)}
.hero-h .word .strike{position:absolute;left:-2%;right:-2%;top:48%;height:6px;background:var(--rust);transform:scaleX(0);transform-origin:left;animation:strike 1s var(--easeout) 1.4s forwards}
@keyframes strike{to{transform:scaleX(1)}}
.hero-tagline{display:flex;align-items:center;justify-content:center;gap:14px;color:var(--paper-dim);font-size:13px;line-height:1.5;letter-spacing:.2em;text-transform:uppercase;margin-top:32px;min-height:24px}
.hero-tagline .rule{height:1px;width:60px;background:var(--line-strong);flex-shrink:0}

.scroll-cue{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--paper-dim);font-size:10px;letter-spacing:.3em;text-transform:uppercase;z-index:3;pointer-events:auto;opacity:.6}
.scroll-cue:hover{opacity:1}
.scroll-cue .line{width:1px;height:28px;background:linear-gradient(var(--gold),transparent);animation:dropline 2s ease-in-out infinite}
.scroll-cue .line{width:1px;height:36px;background:linear-gradient(var(--gold),transparent);animation:dropline 2s ease-in-out infinite}
@keyframes dropline{50%{transform:translateY(8px);opacity:.4}}

@media (max-width:900px){
  .hero{padding:88px 18px 30px}
  .hero-inner{grid-template-columns:1fr;gap:24px}
  .hero-side{order:2}
  .hero-side.right{order:3;text-align:left;align-items:flex-start}
  .hero-image-wrap{order:1;width:80vw;margin:0 auto}
  .hero-meta{position:static;margin-bottom:20px}
}

/* ------- MARQUEE ------- */
.marquee{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--ink);padding:22px 0;position:relative}
.marquee-track{display:flex;gap:48px;white-space:nowrap;animation:marquee 38s linear infinite;will-change:transform}
.marquee-track.reverse{animation-direction:reverse;animation-duration:48s}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-item{font-family:"Anton";font-size:clamp(48px,7vw,96px);text-transform:uppercase;letter-spacing:-.01em;color:transparent;-webkit-text-stroke:1px var(--paper-dim);display:inline-flex;align-items:center;gap:48px}
.marquee-item .filled{color:var(--paper);-webkit-text-stroke:0}
.marquee-item .gold{color:var(--gold);-webkit-text-stroke:0}
.marquee-item .star{color:var(--rust);font-family:"Anton";display:inline-block}
@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ------- SIGNATURE ------- */
.section{padding:120px 28px;position:relative;max-width:1480px;margin:0 auto}
.section-head{display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:24px;margin-bottom:48px}
.section-head .num{font-family:"Anton";font-size:120px;color:transparent;-webkit-text-stroke:1px var(--paper-dim);line-height:.7}
.section-head h2{font-family:"Anton";font-size:clamp(56px,8vw,120px);line-height:.96;margin:0;text-transform:uppercase;letter-spacing:-.01em}
.section-head h2 em{font-family:"Instrument Serif";font-style:italic;color:var(--gold);font-weight:400;text-transform:none;letter-spacing:-.02em}
.section-head .meta{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--paper-dim);text-align:right;max-width:200px;line-height:1.6}

.sig-row{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.sig-card{position:relative;border:1px solid var(--line);background:var(--char);overflow:hidden;cursor:pointer;transition:border-color .4s}
.sig-card:hover{border-color:var(--gold)}
.sig-img{aspect-ratio:16/11;overflow:hidden;background:#000;position:relative}
.sig-img img{width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 1.2s var(--easeout),filter .6s;filter:saturate(.9) contrast(1.05)}
.sig-card:hover .sig-img img{transform:scale(1.03);filter:saturate(1.1) contrast(1.1)}
.sig-num{position:absolute;top:14px;left:14px;font-family:"JetBrains Mono";font-size:11px;color:var(--paper);letter-spacing:.1em;background:rgba(10,9,8,.6);backdrop-filter:blur(6px);padding:4px 8px;border-radius:4px}
.sig-tag{position:absolute;top:14px;right:14px;font-family:"JetBrains Mono";font-size:10px;color:var(--ink);background:var(--gold);padding:4px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.1em}
.sig-body{padding:20px}
.sig-name{font-family:"Anton";font-size:32px;line-height:.9;text-transform:uppercase;letter-spacing:-.005em;margin:0 0 8px}
.sig-desc{font-size:12.5px;line-height:1.5;color:var(--paper-dim);margin:0 0 14px;text-wrap:pretty}
.sig-foot{display:flex;justify-content:space-between;align-items:baseline;padding-top:14px;border-top:1px solid var(--line)}
.sig-price{font-family:"JetBrains Mono";font-size:16px;font-weight:500;color:var(--gold)}
.sig-order{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-dim);transition:color .25s}
.sig-card:hover .sig-order{color:var(--gold)}

@media (max-width:1100px){.sig-row{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.sig-row{grid-template-columns:1fr}.section-head{grid-template-columns:1fr;gap:14px}.section-head .meta{text-align:left}.section{padding:80px 18px}}

/* ------- MENU SECTION ------- */
.menu-wrap{background:var(--black);position:relative;padding:0 0 40px}
.menu-tabs{position:sticky;top:0;background:rgba(10,9,8,.85);backdrop-filter:blur(14px);border-top:1px solid var(--line);border-bottom:1px solid var(--line);z-index:20;display:flex;gap:0;overflow-x:auto;scrollbar-width:none}
.menu-tabs::-webkit-scrollbar{display:none}
.menu-tab{padding:18px 22px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-dim);font-weight:600;position:relative;flex-shrink:0;display:inline-flex;align-items:center;gap:10px;transition:color .25s}
.menu-tab .glyph{font-family:"JetBrains Mono";font-size:10px;color:var(--gold);opacity:.6}
.menu-tab:hover{color:var(--paper)}
.menu-tab.active{color:var(--paper)}
.menu-tab.active::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--gold)}
.menu-count{padding:14px 28px;color:var(--paper-dim);font-family:"JetBrains Mono";font-size:11px;letter-spacing:.16em;text-transform:uppercase;text-align:right;border-bottom:1px solid var(--line)}

.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.menu-cell{background:var(--ink);padding:32px;display:flex;gap:24px;align-items:flex-start;transition:background .3s,transform .4s var(--easeout);position:relative;overflow:hidden}
.menu-cell:hover{background:var(--char)}
.menu-cell .thumb{width:120px;height:120px;flex-shrink:0;background:#000;overflow:hidden;border-radius:4px;position:relative}
.menu-cell .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--easeout)}
.menu-cell:hover .thumb img{transform:scale(1.08)}
.menu-cell .info{flex:1;min-width:0}
.menu-cell .row{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:6px}
.menu-cell h3{font-family:"Anton";font-size:24px;line-height:.95;margin:0;text-transform:uppercase;letter-spacing:-.005em;flex:1}
.menu-cell .price{font-family:"JetBrains Mono";font-size:14px;color:var(--gold);white-space:nowrap}
.menu-cell .desc{font-size:12.5px;line-height:1.5;color:var(--paper-dim);margin:0 0 10px;text-wrap:pretty}
.menu-cell .badges{display:flex;gap:6px;flex-wrap:wrap}
.menu-badge{font-family:"JetBrains Mono";font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;padding:3px 8px;border:1px solid var(--line-strong);border-radius:999px;color:var(--paper-dim)}
.menu-badge.hot{border-color:var(--rust);color:var(--rust)}
.menu-badge.signature{border-color:var(--gold);color:var(--gold)}
.menu-promo{min-height:184px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(10,9,8,.95) 0%,rgba(10,9,8,.78) 32%,rgba(10,9,8,.18) 68%),url("uploads/fries-promo-background.png") center right/cover no-repeat;border:1px solid rgba(200,162,74,.34)}
.menu-promo::before{content:"";position:absolute;inset:18px;border:1px solid rgba(244,237,224,.1);pointer-events:none}
.menu-promo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.04),transparent 38%,rgba(0,0,0,.2));pointer-events:none}
.menu-promo .promo-copy{position:relative;z-index:2}
.menu-promo .promo-kicker{font-family:"JetBrains Mono";font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.menu-promo h3{font-size:44px;color:var(--paper)}
.menu-promo p{max-width:360px;margin:10px 0 0;color:var(--paper-dim);font-size:13px;line-height:1.5}

@media (max-width:1100px){
  .menu-grid{grid-template-columns:repeat(2,1fr)}
  .menu-promo{grid-column:span 1 !important}
}
@media (max-width:560px){
  .menu-grid{grid-template-columns:1fr}
  .menu-promo{grid-column:span 1 !important;background-position:center right}
  .menu-cell{padding:20px;gap:14px}
  .menu-cell .thumb{width:80px;height:80px}
  .menu-cell h3{font-size:20px}
  .menu-promo h3{font-size:34px}
}

/* ------- AWARDS / PRESS strip ------- */
.press-strip{background:var(--paper);color:var(--ink);padding:80px 28px;position:relative;overflow:hidden}
.press-eyebrow{font-family:"JetBrains Mono";font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);opacity:.55;margin-bottom:24px}
.press-h{font-family:"Anton";font-size:clamp(56px,8vw,120px);line-height:.98;text-transform:uppercase;letter-spacing:-.01em;color:var(--ink);max-width:1480px;margin:0 auto 48px}
.press-h em{font-family:"Instrument Serif";font-style:italic;text-transform:none;color:var(--rust);font-weight:400}
.press-grid{max-width:1480px;margin:0 auto;display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid rgba(20,17,15,.18)}
.press-cell{padding:36px 0;border-bottom:1px solid rgba(20,17,15,.18);padding-right:32px}
.press-cell + .press-cell{padding-left:32px;border-left:1px solid rgba(20,17,15,.18);padding-right:0}
.press-cell:nth-child(odd):not(:first-child){padding-left:0;border-left:0;padding-right:32px}
.press-cell:nth-child(even){padding-left:32px;border-left:1px solid rgba(20,17,15,.18)}
.press-cell .src{font-family:"JetBrains Mono";font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--rust);margin-bottom:10px}
.press-cell .src a{color:inherit;border-bottom:1px solid rgba(168,52,26,.35)}
.press-cell .quote{font-family:"Instrument Serif";font-style:italic;font-size:clamp(20px,2.2vw,28px);line-height:1.25;color:var(--ink);margin:0;letter-spacing:-.01em}
.press-cell .quote::before{content:"“";color:var(--rust);margin-right:4px}
.press-cell .quote::after{content:"”";color:var(--rust);margin-left:2px}

.awards-rail{max-width:1480px;margin:48px auto 0;display:grid;grid-template-columns:repeat(4,1fr);gap:32px 24px}
.award{border-top:1px solid rgba(20,17,15,.28);padding-top:14px}
.award .yr{font-family:"Anton";font-size:36px;line-height:1;color:var(--rust);margin-bottom:6px}
.award .t{font-family:"Anton";font-size:16px;line-height:1.05;text-transform:uppercase;letter-spacing:-.005em}
.award .s{font-size:11px;color:rgba(20,17,15,.6);margin-top:6px;line-height:1.4}

@media (max-width:780px){
  .press-grid{grid-template-columns:1fr}
  .press-cell,.press-cell+.press-cell,.press-cell:nth-child(odd):not(:first-child),.press-cell:nth-child(even){padding:24px 0;border-left:0}
  .awards-rail{grid-template-columns:repeat(2,1fr)}
}

/* ------- GALLERY (IG-style tagged) ------- */
.gallery-section{padding:120px 0;max-width:none;margin:0;overflow:hidden}
.gallery-section .section-head{max-width:1480px;margin-left:auto;margin-right:auto;padding:0 28px}
.gallery-carousel{overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--ink)}
.gallery-track{display:flex;gap:16px;width:max-content;padding:24px 28px;animation:galleryScroll 64s linear infinite;will-change:transform}
.gallery-carousel:hover .gallery-track{animation-play-state:paused}
.gallery-cell{width:340px;height:500px;flex:0 0 auto;background:#fff;border:1px solid var(--line);overflow:hidden;position:relative}
.gallery-cell::before{content:"Loading Instagram post";position:absolute;inset:0;display:grid;place-items:center;color:var(--paper-dim);font-family:"JetBrains Mono";font-size:10px;letter-spacing:.18em;text-transform:uppercase;background:linear-gradient(135deg,var(--char),#050505)}
.gallery-cell .instagram-media{position:relative !important;z-index:1 !important;min-width:0 !important;width:100% !important;max-width:100% !important;margin:0 !important}
.gallery-cell iframe{position:relative;z-index:1;max-height:500px !important}
@keyframes galleryScroll{from{transform:translateX(0)}to{transform:translateX(calc(-100% + 100vw))}}
@media (max-width:780px){.gallery-section .section-head{padding:0 18px}.gallery-cell{width:300px;height:470px}.gallery-track{padding:20px 18px;animation-duration:54s}.gallery-cell iframe{max-height:470px !important}}

/* ------- LOCATIONS ------- */
.loc-wrap{background:var(--black);padding:120px 28px;border-top:1px solid var(--line)}
.loc-inner{max-width:1480px;margin:0 auto}
.loc-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;margin-top:48px}
.loc-map{position:relative;aspect-ratio:1.1/1;background:var(--ink);border:1px solid var(--line);overflow:hidden}
.loc-map svg{position:absolute;inset:0;width:100%;height:100%}
.loc-map .island{fill:#203247;stroke:rgba(244,237,224,.26);stroke-width:.34;vector-effect:non-scaling-stroke}
.map-routes path{fill:none;stroke:rgba(200,162,74,.2);stroke-width:.28;stroke-dasharray:1.2 1.2;vector-effect:non-scaling-stroke}
.map-labels text{fill:rgba(244,237,224,.42);font-family:"JetBrains Mono";font-size:2.2px;letter-spacing:.12em;text-transform:uppercase}
.compass{fill:none;stroke:rgba(200,162,74,.55);stroke-width:.25}
.compass text,.map-caption{fill:rgba(244,237,224,.4);font-family:"JetBrains Mono";font-size:2.2px;letter-spacing:.15em}
.loc-pin{position:absolute;width:14px;height:14px;transform:translate(-50%,-50%);cursor:pointer}
.loc-pin .dot{position:absolute;inset:0;background:var(--gold);border-radius:50%;box-shadow:0 0 0 0 var(--gold);transition:transform .25s}
.loc-pin:hover .dot,.loc-pin.active .dot{transform:scale(1.4);box-shadow:0 0 0 10px rgba(200,162,74,.18)}
.loc-pin .ping{position:absolute;inset:0;border-radius:50%;border:1px solid var(--gold);opacity:.6;animation:ping 2.4s ease-out infinite}
@keyframes ping{0%{transform:scale(1);opacity:.6}100%{transform:scale(3);opacity:0}}
.loc-pin .lbl{position:absolute;left:18px;top:-6px;white-space:nowrap;font-family:"JetBrains Mono";font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--paper);background:rgba(10,9,8,.85);padding:4px 8px;border-radius:4px;border:1px solid var(--line);opacity:0;transition:opacity .25s}
.loc-pin:hover .lbl,.loc-pin.active .lbl{opacity:1}

.loc-list{display:flex;flex-direction:column;gap:0}
.loc-search{display:flex;align-items:center;gap:12px;padding:0 0 18px;border-bottom:1px solid var(--line)}
.loc-search input{flex:1;background:transparent;border:0;outline:0;color:var(--paper);font:inherit;font-size:14px;padding:8px 0;font-family:"Manrope"}
.loc-search input::placeholder{color:var(--paper-dim)}
.loc-search .glyph{color:var(--paper-dim);font-family:"JetBrains Mono";font-size:11px;letter-spacing:.15em}
.loc-row{display:grid;grid-template-columns:auto 1fr auto;gap:18px;padding:20px 0;border-bottom:1px solid var(--line);align-items:center;cursor:pointer;transition:padding .3s var(--easeout)}
.loc-row:hover{padding-left:8px;padding-right:8px}
.loc-row .ix{font-family:"JetBrains Mono";font-size:11px;color:var(--paper-dim);letter-spacing:.1em}
.loc-row .nm{font-family:"Anton";font-size:28px;line-height:.95;text-transform:uppercase;letter-spacing:-.005em}
.loc-row .nm .region{display:block;font-family:"JetBrains Mono";font-size:10px;color:var(--paper-dim);letter-spacing:.16em;margin-top:6px;font-weight:400}
.loc-row .ctas{display:flex;gap:8px}
.loc-cta{padding:8px 14px;border-radius:999px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-strong);transition:all .25s var(--easeout);font-family:"Manrope"}
.loc-cta.wolt{background:#009DE0;color:#fff;border-color:#009DE0}
.loc-cta.bolt{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.loc-cta:hover{transform:translateY(-2px)}
.loc-cta .swatch{display:inline-block;width:8px;height:8px;border-radius:50%}

.loc-detail{padding:18px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:14px;color:var(--paper-dim);font-size:12px;line-height:1.5;animation:fadein .3s var(--easeout)}
.loc-detail .lbl{font-family:"JetBrains Mono";font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:4px;display:block}
@keyframes fadein{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

@media (max-width:900px){
  .loc-grid{grid-template-columns:1fr;gap:32px}
  .loc-row{grid-template-columns:auto 1fr;gap:12px}
  .loc-row .ctas{grid-column:1/-1}
  .loc-row .nm{font-size:22px}
}

/* ------- FOOTER ------- */
.footer{background:var(--ink);padding:80px 28px 40px;border-top:1px solid var(--line);position:relative;overflow:hidden}
.footer-big{font-family:"Anton";font-size:clamp(100px,18vw,280px);line-height:.88;letter-spacing:-.02em;text-transform:uppercase;text-align:center;background:linear-gradient(180deg,var(--paper) 30%,transparent 100%);-webkit-background-clip:text;background-clip:text;color:transparent;margin:0 auto 60px;max-width:1480px;position:relative;-webkit-text-stroke:0}
.footer-big em{font-family:"Instrument Serif";font-style:italic;letter-spacing:-.01em;background:linear-gradient(180deg,var(--gold) 30%,transparent 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.footer-grid{max-width:1480px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-top:48px;border-top:1px solid var(--line)}
.footer-col h4{font-family:"JetBrains Mono";font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 14px;font-weight:500}
.footer-col p,.footer-col a{font-size:13px;line-height:1.7;color:var(--paper-dim);display:block}
.footer-col a:hover{color:var(--paper)}
.footer-bottom{max-width:1480px;margin:60px auto 0;display:flex;justify-content:space-between;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--paper-dim);padding-top:24px;border-top:1px solid var(--line)}
@media (max-width:780px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.footer-bottom{flex-direction:column;gap:14px}}

/* ------- CONSENT ------- */
.consent-banner{position:fixed;left:20px;right:20px;bottom:20px;z-index:2147483645;display:flex;align-items:center;justify-content:space-between;gap:18px;max-width:980px;margin:0 auto;padding:16px 18px;background:rgba(10,9,8,.94);border:1px solid rgba(200,162,74,.42);box-shadow:0 22px 70px rgba(0,0,0,.5);color:var(--paper);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.consent-copy{display:flex;flex-direction:column;gap:5px;max-width:660px}
.consent-copy strong{font-family:"JetBrains Mono";font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.consent-copy span{font-size:13px;line-height:1.55;color:var(--paper-dim)}
.consent-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.consent-btn{border:1px solid var(--gold);background:var(--gold);color:var(--ink);border-radius:999px;padding:10px 14px;font-family:"Manrope";font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.consent-btn.ghost{background:transparent;color:var(--paper);border-color:var(--line-strong)}
.consent-btn:hover{transform:translateY(-1px)}
@media (max-width:720px){.consent-banner{left:12px;right:12px;bottom:12px;align-items:stretch;flex-direction:column;padding:14px}.consent-actions{display:grid;grid-template-columns:1fr 1fr}.consent-btn{padding:10px 8px}}

/* Reveal animation */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .9s var(--easeout),transform .9s var(--easeout)}
.reveal.in{opacity:1;transform:none}

/* Reduce motion */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}
