/* ===== THE TOASTED GOAT — Kearney NE. Hand-built from the Claude Design handoff. ===== */
:root{
  --tg-yellow:#F4C430; --tg-green:#4A6B3A; --tg-black:#1A1614;
  --tg-cream:#F2EAD3; --tg-red:#8B2E2A;
  --disp:"Anton",sans-serif; --body:"Inter",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--tg-cream);color:var(--tg-black);font-family:var(--body);line-height:1.5;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3,h4{margin:0}
.display{font-family:var(--disp);text-transform:uppercase;line-height:.9;letter-spacing:-.02em;font-weight:400}
.display em{font-style:normal;color:var(--tg-red)}

/* dot texture */
.dotfield{position:absolute;inset:0;background-image:radial-gradient(rgba(26,22,20,.07) 1.5px,transparent 1.5px);background-size:16px 16px;pointer-events:none;z-index:0}
.dotfield--dk{background-image:radial-gradient(rgba(26,22,20,.05) 1.5px,transparent 1.5px)}
.dotfield--yl{background-image:radial-gradient(rgba(244,196,48,.06) 1.5px,transparent 1.5px)}

/* buttons */
.btn{font-family:var(--disp);letter-spacing:.06em;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 24px;font-size:1.15rem;transition:transform .12s ease}
.btn:hover{transform:translate(-2px,-2px)}
.btn--yellow{background:var(--tg-yellow);color:var(--tg-black);box-shadow:4px 4px 0 var(--tg-red)}
.btn--red{background:var(--tg-red);color:var(--tg-cream);box-shadow:6px 6px 0 var(--tg-black)}
.btn--dark{background:var(--tg-black);color:var(--tg-yellow)}
.btn--ghost-dark{background:transparent;color:var(--tg-black);border:3px solid var(--tg-black)}
.btn--ghost-yellow{background:transparent;color:var(--tg-yellow);border:2px solid var(--tg-yellow)}
.btn--wide{justify-content:space-between;min-width:360px;font-size:1.5rem;padding:20px 30px}
.btn--block{display:flex;width:100%}

/* kicker pill */
.kicker{display:inline-flex;align-items:center;gap:10px;background:var(--tg-black);color:var(--tg-yellow);font-family:var(--disp);font-size:.8rem;letter-spacing:.16em;padding:7px 12px;text-transform:uppercase}
.kicker i{width:8px;height:8px;background:var(--tg-red);border-radius:50%}
.kicker--yellow{background:var(--tg-yellow);color:var(--tg-black)}

/* logo badge (circle crop) */
.badge{width:48px;height:48px;border-radius:50%;background:var(--tg-green);border:2px solid var(--tg-yellow);overflow:hidden;position:relative;flex:none;display:block}
.badge img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}

.brand__name{font-family:var(--disp);color:var(--tg-yellow);font-size:1.35rem;letter-spacing:.02em;line-height:1}
.brand__sub{font-family:var(--body);color:#8a8278;font-size:.62rem;letter-spacing:.28em;margin-top:4px;display:block}

/* poster (matted photo card) */
.poster{margin:0;background:var(--tg-black);padding:12px;box-shadow:12px 12px 0 var(--tg-red)}
.poster img{width:100%;object-fit:cover}
.poster figcaption{display:flex;justify-content:space-between;padding:10px 4px 2px;color:var(--tg-cream);font-family:var(--disp);letter-spacing:.08em;font-size:.8rem}
.poster figcaption .hl{color:var(--tg-yellow)}

/* ===== MARQUEE ===== */
.marquee{background:var(--tg-red);color:var(--tg-cream);border-bottom:2px solid var(--tg-black);overflow:hidden;white-space:nowrap}
.marquee__track{display:inline-flex;gap:28px;padding:8px 0 8px 28px;font-family:var(--disp);letter-spacing:.08em;font-size:.85rem;text-transform:uppercase;animation:marq 32s linear infinite}
.marquee__track .st{opacity:.7}
@keyframes marq{to{transform:translateX(-33.33%)}}

/* ===== NAV ===== */
.nav{position:sticky;top:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 56px;background:var(--tg-black);border-bottom:1px solid #2a2421}
.brand{display:flex;align-items:center;gap:14px;text-decoration:none}
.nav__links{display:flex;gap:32px;align-items:center}
.nav__links a{font-family:var(--disp);font-size:1rem;letter-spacing:.06em;color:var(--tg-cream);text-decoration:none;padding-bottom:2px;border-bottom:2px solid transparent}
.nav__links a.is-active,.nav__links a:hover{color:var(--tg-yellow);border-bottom-color:var(--tg-yellow)}
.nav__right{display:flex;align-items:center;gap:14px}
.nav__phone{font-family:var(--body);font-weight:600;font-size:.78rem;color:var(--tg-cream);text-decoration:none;letter-spacing:.08em;white-space:nowrap}
.nav__right .btn{padding:12px 20px;font-size:1rem}
.nav__mobcta{padding:9px 14px;font-size:.85rem}
.brandbar{display:none}
.nav__mob{display:none;align-items:center;gap:15px}
.nav__moblink{font-family:var(--disp);font-size:.98rem;letter-spacing:.05em;color:var(--tg-cream);text-decoration:none;white-space:nowrap}
.nav__moblink:hover{color:var(--tg-yellow)}

/* ===== HERO ===== */
.hero{position:relative;overflow:hidden;background:var(--tg-yellow);padding:60px 56px 64px;min-height:680px}
.hero__circle{position:absolute;right:-120px;top:80px;width:640px;height:640px;border-radius:50%;background:var(--tg-green);opacity:.92;z-index:0}
.hero__cards{position:absolute;right:0;top:0;bottom:0;width:52%;z-index:2}
.poster--a{position:absolute;right:96px;top:96px;width:400px;transform:rotate(4deg);box-shadow:14px 14px 0 var(--tg-red)}
.poster--a img{height:440px}
.poster--b{position:absolute;right:calc(96px + 250px);top:460px;width:230px;transform:rotate(-8deg);box-shadow:8px 8px 0 var(--tg-black)}
.poster--b img{height:190px}
.hero__inner{position:relative;z-index:3;max-width:640px}
.hero h1{font-size:clamp(4rem,13vw,13.5rem);margin:20px 0 18px;color:var(--tg-black);text-wrap:balance}
.hero__lede{font-size:1.18rem;line-height:1.5;color:var(--tg-black);margin:0 0 32px;max-width:520px}
.hero__cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero__proof{display:flex;align-items:center;gap:10px;margin:26px 0 0;font-size:.82rem}
.stars{color:var(--tg-black);letter-spacing:2px}
.stars .half{opacity:.4}
.hero__proof span:last-child{opacity:.75}
.hero__rail{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px 56px;background:var(--tg-black);color:var(--tg-yellow);font-family:var(--disp);font-size:.82rem;letter-spacing:.22em;text-transform:uppercase;flex-wrap:wrap}
.hero__rail .d{opacity:.4}

/* ===== HOURS ===== */
.hours{position:relative;z-index:1;background:var(--tg-black);color:var(--tg-cream);padding:36px 56px;border-top:3px solid var(--tg-yellow);border-bottom:3px solid var(--tg-yellow);display:grid;grid-template-columns:auto 1fr auto;gap:48px;align-items:center}
.hours__title{font-family:var(--disp);font-size:clamp(2rem,4vw,2.75rem);color:var(--tg-yellow);line-height:.95}
.hours__head p{font-size:.85rem;margin:8px 0 0;max-width:280px;opacity:.85;line-height:1.5}
.hours__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;border-left:1px solid #3a3331;padding-left:36px}
.hours__grid b{font-family:var(--disp);font-size:1rem;color:var(--tg-yellow);letter-spacing:.1em;display:block}
.hours__grid span{font-size:.8rem;opacity:.85;margin-top:2px;display:block}
.hours__find{text-align:right;border-left:1px solid #3a3331;padding-left:36px}
.hours__findlbl{font-family:var(--disp);font-size:1.1rem;color:var(--tg-yellow);letter-spacing:.06em}
.hours__find p{font-size:.85rem;margin:6px 0 0;max-width:220px;margin-left:auto;opacity:.85;line-height:1.5}
.hours__tel{display:inline-block;margin-top:4px;color:var(--tg-yellow);font-weight:700;text-decoration:none;letter-spacing:.02em}
.hours__tel:hover{text-decoration:underline}

/* ===== STORY ===== */
.story{position:relative;background:var(--tg-cream);padding:84px 56px}
.story__grid{position:relative;z-index:1;display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.story h2{font-size:clamp(2.6rem,6vw,5.75rem);margin:16px 0 18px}
.story__copy p{font-size:1.06rem;line-height:1.6;max-width:540px;margin:0}
.story__stats{display:flex;gap:28px;margin-top:32px;flex-wrap:wrap}
.story__stats div{border-left:3px solid var(--tg-green);padding-left:12px}
.story__stats b{font-family:var(--disp);font-size:clamp(1.6rem,3vw,2.5rem);line-height:1;display:block}
.story__stats span{font-size:.68rem;opacity:.65;letter-spacing:.16em;margin-top:4px;display:block}
.poster--story{transform:rotate(2deg);box-shadow:16px 16px 0 var(--tg-green)}
.poster--story img{height:420px}

/* ===== MENU ===== */
.menu{position:relative;background:var(--tg-yellow);padding:96px 56px 110px}
.menu__head{position:relative;z-index:1;margin-bottom:56px}
.menu__headrow{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-top:14px}
.menu h2{font-size:clamp(3rem,8vw,8.25rem);margin:0}
.menu__headrow p{font-size:1rem;line-height:1.55;max-width:360px;margin:0;padding-bottom:12px}
.menu__grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.scard{background:var(--tg-cream);border:2px solid var(--tg-black)}
.scard--black{box-shadow:8px 8px 0 var(--tg-black)}
.scard--green{box-shadow:8px 8px 0 var(--tg-green)}
.scard--red{box-shadow:8px 8px 0 var(--tg-red)}
.scard__img{position:relative;border-bottom:2px solid var(--tg-black)}
.scard__img img{height:260px;width:100%;object-fit:cover}
.scard__tag{position:absolute;top:12px;left:12px;color:var(--tg-cream);font-family:var(--disp);font-size:.75rem;padding:5px 10px;letter-spacing:.12em}
.scard--black .scard__tag{background:var(--tg-black)}
.scard--green .scard__tag{background:var(--tg-green)}
.scard--red .scard__tag{background:var(--tg-red)}
.scard__body{padding:20px 22px 24px}
.scard__meta{display:flex;align-items:center;gap:12px;margin-bottom:6px}
.scard__meta .no{font-family:var(--disp);font-size:1rem;letter-spacing:.08em}
.scard--black .scard__meta .no{color:var(--tg-black)}.scard--green .scard__meta .no{color:var(--tg-green)}.scard--red .scard__meta .no{color:var(--tg-red)}
.scard__meta i{flex:1;border-bottom:1px dashed var(--tg-black);opacity:.4}
.scard__meta .spec{font-size:.66rem;opacity:.65;letter-spacing:.16em}
.scard h3{font-family:var(--disp);font-size:clamp(2rem,3vw,2.75rem);line-height:.9;margin:0 0 6px}
.scard .nick{font-style:italic;font-size:.88rem;font-weight:600;margin:0 0 10px}
.scard--black .nick{color:var(--tg-black)}.scard--green .nick{color:var(--tg-green)}.scard--red .nick{color:var(--tg-red)}
.scard__body p:last-child{font-size:.88rem;line-height:1.55;margin:0}
.menu__foot{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:44px;flex-wrap:wrap}
.menu__foot span{font-size:.82rem;opacity:.7}
.menu__foot a{font-family:var(--disp);font-size:1.4rem;text-decoration:none;border-bottom:3px solid var(--tg-black);letter-spacing:.04em}

/* ===== SHOWS ===== */
.shows{position:relative;overflow:hidden;background:var(--tg-green);color:var(--tg-cream);padding:88px 56px 96px}
.shows__mark{position:absolute;right:-160px;bottom:-120px;width:640px;opacity:.18;pointer-events:none;mix-blend-mode:multiply}
.shows__inner{position:relative;z-index:1}
.shows__title{font-size:clamp(3rem,7vw,6.75rem);color:var(--tg-yellow);margin:14px 0 28px}
.shows__grid{display:grid;grid-template-columns:1.05fr .95fr;gap:28px}
.scard2{padding:32px}
.scard2--dark{background:var(--tg-black);color:var(--tg-cream);border:3px solid var(--tg-yellow);box-shadow:12px 12px 0 var(--tg-yellow)}
.scard2--cream{background:var(--tg-cream);color:var(--tg-black);border:3px solid var(--tg-black);box-shadow:12px 12px 0 var(--tg-red)}
.eyebrow{font-family:var(--disp);font-size:.85rem;letter-spacing:.16em}
.eyebrow--yellow{color:var(--tg-yellow)}.eyebrow--red{color:var(--tg-red)}
.scard2 h3{font-family:var(--disp);line-height:.92;margin:8px 0 14px;text-transform:uppercase;letter-spacing:-.01em}
.scard2--dark h3{font-size:clamp(2.2rem,3.4vw,3.5rem);color:var(--tg-cream)}
.scard2--dark h3 em{font-style:normal;color:var(--tg-yellow)}
.scard2--cream h3{font-size:clamp(2rem,2.6vw,3rem)}
.scard2 p{font-size:1rem;line-height:1.55;opacity:.9;margin:0 0 22px;max-width:460px}
.scard2__note{margin-top:16px;font-size:.72rem;opacity:.6;letter-spacing:.08em}
.minimap{height:140px;background:#e7dfc5;background-image:linear-gradient(90deg,rgba(26,22,20,.08) 1px,transparent 1px),linear-gradient(0deg,rgba(26,22,20,.08) 1px,transparent 1px);background-size:20px 20px;margin-bottom:14px;position:relative;border:2px solid var(--tg-black)}
.minimap__road{position:absolute;background:var(--tg-black);opacity:.4}
.minimap__road--h{left:30%;top:55%;width:60%;height:3px}
.minimap__road--v{left:55%;top:20%;height:70%;width:3px}
.minimap__pin{position:absolute;left:calc(55% - 14px);top:calc(55% - 28px);width:28px;height:28px;background:var(--tg-red);border-radius:50% 50% 50% 0;transform:rotate(-45deg);border:2px solid var(--tg-black)}
.minimap__lbl{position:absolute;right:8px;bottom:6px;font-family:var(--disp);font-size:.68rem;letter-spacing:.12em;background:var(--tg-yellow);padding:2px 6px;border:1px solid var(--tg-black)}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}
.facts div{border-left:3px solid var(--tg-green);padding-left:10px}
.facts b{font-family:var(--disp);font-size:.68rem;opacity:.6;letter-spacing:.16em;display:block}
.facts span{font-size:.85rem;font-weight:600;margin-top:2px;display:block}

/* ===== VISIT ===== */
.visit{background:var(--tg-green);color:var(--tg-cream);padding:88px 56px}
.visit__inner{display:grid;grid-template-columns:.95fr 1.05fr;gap:44px;align-items:center}
.visit h2{font-size:clamp(2.6rem,6vw,5.5rem);color:var(--tg-yellow);margin:16px 0 24px}
.visit h2 em{color:var(--tg-cream)}
.visit .facts{margin-bottom:26px}
.visit .facts div{border-left-color:var(--tg-yellow)}
.visit .facts b{color:var(--tg-cream);opacity:.6}
.visit .facts span{color:var(--tg-cream)}
.visit__map{border:3px solid var(--tg-black);box-shadow:14px 14px 0 var(--tg-black);background:var(--tg-cream);line-height:0;position:relative}
.visit__map::before{content:"LOADING MAP…";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:"Anton",sans-serif;letter-spacing:.08em;font-size:.95rem;color:#b3a37a}
.visit__map iframe{width:100%;height:440px;border:0;display:block;position:relative;z-index:1;filter:grayscale(.15) contrast(1.05)}

/* ===== ORDER ===== */
.order{position:relative;overflow:hidden;background:var(--tg-black);color:var(--tg-cream);padding:96px 56px}
.order__mark{position:absolute;left:-8%;top:-30%;width:560px;opacity:.18;transform:rotate(-10deg);pointer-events:none}
.order__grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.order h2{font-size:clamp(3rem,7vw,6.75rem);color:var(--tg-yellow);margin:14px 0 14px}
.order__copy p{font-size:1.06rem;line-height:1.6;margin:0;max-width:540px;opacity:.85}
.order__btns{display:flex;flex-direction:column;gap:14px}
.order__btns .btn--red{box-shadow:6px 6px 0 var(--tg-yellow)}

/* ===== FOOTER ===== */
.foot{position:relative;overflow:hidden;background:var(--tg-yellow);color:var(--tg-black);padding:70px 56px 30px}
.foot__inner{position:relative;z-index:1}
.foot__cols{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.1fr;gap:40px;padding-bottom:40px;border-bottom:2px solid var(--tg-black)}
.foot__brandtop{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.foot__brand .brand__name{color:var(--tg-black)}
.foot__brand .brand__sub{color:var(--tg-black);opacity:.7}
.foot__brand p{font-size:.88rem;line-height:1.55;margin:0;max-width:320px}
.foot__col h4{font-family:var(--disp);font-size:.88rem;letter-spacing:.18em;margin-bottom:12px;border-bottom:2px solid var(--tg-black);padding-bottom:6px;display:inline-block}
.foot__col p{font-size:.88rem;line-height:1.55;margin:0}
.foot__link{display:inline-block;margin-top:8px;font-family:var(--disp);font-size:.85rem;border-bottom:2px solid var(--tg-black);text-decoration:none;letter-spacing:.04em}
.foot__hours{font-size:.8rem;border-collapse:collapse;line-height:1.7}
.foot__hours td:first-child{padding-right:14px;opacity:.7}
.foot__social{display:flex;gap:10px;margin-top:12px}
.foot__social a{width:38px;height:38px;border:2px solid var(--tg-black);display:grid;place-items:center;font-family:var(--disp);font-size:.75rem;text-decoration:none}
.foot__contact{font-size:.72rem;margin:12px 0 0;opacity:.75}
.sister{margin-top:30px;padding:20px 26px;background:var(--tg-black);color:var(--tg-cream);display:flex;align-items:center;justify-content:space-between;gap:14px;box-shadow:6px 6px 0 var(--tg-red);flex-wrap:wrap}
.sister__l{display:flex;align-items:center;gap:14px}
.sister__mark{width:44px;height:44px;border-radius:50%;background:#E91E63;display:grid;place-items:center;color:#fff;font-family:var(--disp);font-size:1.1rem;border:2px solid var(--tg-cream);flex:none}
.sister__eyebrow{font-family:var(--disp);font-size:.78rem;letter-spacing:.14em;color:var(--tg-yellow)}
.sister__name{font-family:var(--disp);font-size:1.35rem;letter-spacing:.02em;margin-top:2px}
.sister__sub{font-size:.72rem;opacity:.75;margin-top:3px}
.sister__cta{font-family:var(--disp);font-size:.85rem;color:var(--tg-yellow);text-decoration:none;border:2px solid var(--tg-yellow);padding:10px 16px;letter-spacing:.06em;white-space:nowrap}
.foot__legal{margin-top:30px;display:flex;justify-content:space-between;gap:8px;font-size:.68rem;letter-spacing:.08em;opacity:.7;flex-wrap:wrap}
.foot__legal a{color:var(--tg-black);text-decoration:underline;font-weight:700}

/* ===== RESPONSIVE ===== */
@media(max-width:1080px){
  .nav{padding:14px 20px;gap:12px}
  .nav__links,.nav__phone,.nav__right{display:none}
  .nav__mob{display:flex}
  .brand__sub{display:none}
  .hero{padding:44px 28px 60px;min-height:0}
  .hero__circle,.poster--b{display:none}
  .hero__cards{position:static;width:auto;margin-top:32px}
  .poster--a{position:static;transform:rotate(-2deg);width:100%;max-width:460px;box-shadow:10px 10px 0 var(--tg-red)}
  .poster--a img{height:300px}
  .hero__rail{position:static;margin:32px -28px -60px;justify-content:center;gap:14px;font-size:.72rem;letter-spacing:.14em}
  .hours{grid-template-columns:1fr;gap:22px;padding:32px 28px}
  .hours__grid{grid-template-columns:1fr 1fr;border-left:0;padding-left:0}
  .hours__find{display:none}
  .story{padding:56px 28px}
  .story__grid{grid-template-columns:1fr;gap:32px}
  .poster--story{max-width:520px}
  .menu{padding:56px 28px 72px}
  .menu__headrow{display:block}
  .menu__headrow p{margin-top:14px}
  .menu__grid{grid-template-columns:1fr;gap:22px;max-width:520px}
  .menu__foot a{margin-top:12px}
  .shows{padding:56px 28px 64px}
  .shows__grid{grid-template-columns:1fr;gap:18px}
  .visit{padding:56px 28px}
  .visit__inner{grid-template-columns:1fr;gap:28px}
  .visit__map iframe{height:320px}
  .order{padding:56px 28px}
  .order__grid{grid-template-columns:1fr;gap:28px}
  .btn--wide{min-width:0}
  .foot{padding:44px 28px 26px}
  .foot__cols{grid-template-columns:1fr;gap:28px}
  .sister{flex-direction:column;align-items:flex-start}
}
@media(max-width:560px){
  .brand__name{display:none}
  .brandbar{display:block;text-align:center;background:var(--tg-black);color:var(--tg-yellow);font-family:var(--disp);font-size:1.2rem;letter-spacing:.05em;padding:9px 12px;border-bottom:1px solid #2a2421;text-transform:uppercase}
  .nav{padding:12px 16px;gap:10px}
  .nav__mob{gap:13px}
  .nav__moblink{font-size:.92rem}
  .nav__mobcta{padding:8px 12px;font-size:.8rem}
  .marquee__track{font-size:.72rem;gap:18px}
  .hero h1{font-size:clamp(3.4rem,17vw,5.6rem)}
  .hero__cta{flex-direction:column;align-items:stretch}
  .hero__cta .btn{justify-content:center}
  .btn--wide{font-size:1.15rem;padding:16px 20px}
  .facts{grid-template-columns:1fr}
  .foot__legal{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.marquee__track{animation:none}.btn:hover{transform:none}}
