/* Flowers Slaughterhouse. Carved-wood and brass identity from the supplied badges.
   Mobile first: base styles are for ~375px; wider layouts are added with min-width queries. */
@font-face{font-family:"Fraunces";src:url(/a/fonts/fraunces-700.c38570d224.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(/a/fonts/fraunces-600-italic.23712db611.woff2) format("woff2");font-weight:600;font-style:italic;font-display:swap}
@font-face{font-family:"Barlow";src:url(/a/fonts/barlow-400.b0a8ad37ac.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow";src:url(/a/fonts/barlow-600.4b52ddd483.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url(/a/fonts/barlow-condensed-600.215a93c696.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url(/a/fonts/barlow-condensed-700.3787a5a419.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}

:root{
  --espresso:#140d09; --walnut:#22140c; --wood:#3b2414; --copper:#b5601f;
  --brass:#b8924a; --brass-lt:#dcc08a; --copper-l:#c87530; --copper-d:#7e3c10; --rim:#5a4020;
  --cream:#f2e6cf; --paper:#f6edda; --ink:#1d130d; --muted:#55402e; --line:#d9c8a6; --line-d:#3f2a1c;
  --link:#8a3b12; --ok:#2f6b3a;
  --display:"Fraunces",Georgia,"Times New Roman",serif;
  --cond:"Barlow Condensed","Arial Narrow",Arial,sans-serif;
  --body:"Barlow",system-ui,-apple-system,"Segoe UI",sans-serif;
  --gutter:max(16px,env(safe-area-inset-left,0px));
  --gutter-r:max(16px,env(safe-area-inset-right,0px));
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;touch-action:manipulation}
a,button{-webkit-tap-highlight-color:rgba(201,162,74,.3)}
body{margin:0;background:var(--espresso);color:var(--ink);font:400 17px/1.6 var(--body)}
img{max-width:100%;height:auto;display:block}
a{color:var(--link)}
a:focus-visible,button:focus-visible{outline:3px solid var(--brass);outline-offset:2px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--brass);color:var(--espresso);padding:10px 14px;z-index:99}
.skip:focus{left:8px;top:8px}

h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1.12;margin:0;text-wrap:balance}
h1{font-size:clamp(1.7rem,6.8vw,3.1rem)}
h2{font-size:clamp(1.55rem,5.4vw,2.2rem)}
h3{font-size:1.2rem}
p{margin:0 0 14px;text-wrap:pretty}
.eyebrow{font:700 .95rem/1 var(--cond);letter-spacing:.16em;text-transform:uppercase;color:var(--copper);margin:0 0 10px}
.dark .eyebrow,.wood .eyebrow{color:var(--brass-lt)}
.lede{font-size:1.15rem}
.small{font-size:.9rem;color:var(--muted)}
.dark .small,.wood .small{color:#d2c2a2}

/* bands */
.band{padding-block:38px;padding-left:var(--gutter);padding-right:var(--gutter-r)}
.band>.in{max-width:1080px;margin:0 auto}
.band.dark{background:radial-gradient(110% 80% at 50% 0%,#3c2514 0%,#2a190d 55%,#21140a 100%);color:var(--cream)}
.band.wood{background:linear-gradient(180deg,#2a190e 0%,#1f120a 100%);color:var(--cream);box-shadow:inset 0 1px 0 rgba(184,146,74,.22)}
.band.cream{background:linear-gradient(rgba(250,243,228,.40),rgba(250,243,228,.40)),url(/a/img/paper-tile.ae3cc5d598.webp);background-size:auto,800px;color:var(--ink)}
.band.cream.kraft{background:linear-gradient(rgba(236,214,170,.10),rgba(228,200,150,.10)),url(/a/img/paper-tile.ae3cc5d598.webp);background-size:auto,800px;box-shadow:inset 0 1px 0 rgba(255,255,255,.45)}
.cream .eyebrow,.kraft .eyebrow{color:#4b2007}
.cream .small,.cream p.small,.kraft .small,.kraft p.small{color:#4a3827}
.cream a:not(.btn):not(.more),.kraft a:not(.btn):not(.more){color:#4b2007}
.band.tight{padding-block:28px}
.dark a,.wood a{color:var(--brass-lt)}
.dark a.btn,.wood a.btn{color:#fff3df}
.dark a.btn.ghost,.wood a.btn.ghost{color:var(--brass-lt)}
.cream a.btn.ghost{color:#3a2412}

/* mockup flag */
.mock{position:relative;background:#0f0804;color:var(--brass-lt);border-bottom:1px solid var(--rim);font:600 .78rem/1.3 var(--cond);letter-spacing:.14em;text-transform:uppercase;text-align:center;padding:5px var(--gutter)}

/* header */
.top{background:linear-gradient(180deg,#1b100a 0%,#120a05 100%);color:var(--cream);border-bottom:1px solid #6b5026;box-shadow:0 8px 18px rgba(0,0,0,.45);position:relative;z-index:5;padding-left:var(--gutter);padding-right:var(--gutter-r)}
.top .in{max-width:1080px;margin:0 auto}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:10px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--cream);min-width:0}
.brand img{width:56px;height:56px;flex:none}
.brand[aria-current="page"] img{filter:drop-shadow(0 0 7px rgba(227,199,127,.9))}
.wm{font:700 1.2rem/1 var(--cond);letter-spacing:.12em;text-transform:uppercase}
.wm small .loc{display:block;margin-top:3px}
.wm small .dot{display:none}
.wm small{display:block;font:600 .8rem/1.1 var(--cond);letter-spacing:.2em;color:var(--brass-lt);margin-top:4px}
.callbtn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:48px;min-height:48px;font:700 1.12rem/1 var(--cond);letter-spacing:.06em;color:#fff3df;background:linear-gradient(180deg,#aa581c 0%,#8b4515 55%,#6e340d 100%);border:1px solid #4d2208;padding:10px 12px;border-radius:5px;text-decoration:none;white-space:nowrap;text-shadow:0 1px 0 rgba(0,0,0,.5);box-shadow:inset 0 1px 0 rgba(255,222,170,.5),inset 0 -2px 0 rgba(0,0,0,.25),0 2px 0 #34170a;flex:none}
.callbtn .num{display:none}
.callbtn .lead{display:none}
.callbtn .ico{flex:none}
.wm{min-width:0}
.brand{min-width:0;flex:1 1 auto}
.badges{padding:6px 0 8px}
.badges ul{list-style:none;margin:0;padding:0;display:flex;justify-content:space-between;gap:4px}
.badges li{flex:1 1 0;min-width:0;max-width:96px}
.badges a{display:block;text-align:center;text-decoration:none;opacity:.88;transition:opacity .15s,transform .15s}
.badges a:hover{opacity:1;transform:translateY(-2px)}
.badges img{width:100%;height:auto;aspect-ratio:1}
.badges a[aria-current="page"]{opacity:1}
.badges a[aria-current="page"] img{filter:drop-shadow(0 0 7px rgba(227,199,127,.9))}
.lbl{display:block;margin-top:3px;font:600 .8rem/1 var(--cond);letter-spacing:.08em;text-transform:uppercase;color:var(--cream)}
.badges a[aria-current="page"] .lbl{color:var(--brass-lt)}
.sec{display:flex;justify-content:space-between;gap:4px;padding:2px 0 10px;font:600 .8rem/1.15 var(--cond);letter-spacing:.08em;text-transform:uppercase;text-align:center;white-space:nowrap}
.sec .s{display:contents}
.sec a{flex:1 1 auto;padding-left:4px;padding-right:4px}
.sec a{display:flex;align-items:center;justify-content:center;min-height:44px;color:var(--cream);text-decoration:none;padding:4px 2px;border-bottom:2px solid transparent}
.sec a:hover,.sec a[aria-current="page"]{border-bottom-color:var(--brass);color:var(--brass-lt)}

/* hero */
.hero{padding-top:14px;padding-bottom:30px}
.hero .sign{aspect-ratio:1430/735;object-fit:cover;border-radius:6px;box-shadow:0 14px 40px rgba(0,0,0,.5);margin:0 auto 20px;width:100%;max-width:1080px}
.hero h1{max-width:20ch}
.hero .sub{font-size:1.1rem;max-width:46ch;margin-top:20px;color:#e6d8bd}
.hours-line{margin-top:12px;font:600 1.05rem/1.5 var(--cond);letter-spacing:.08em;text-transform:uppercase;color:var(--brass-lt)}
.hours-line span{display:block}
.btns{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.btns .btn{width:100%}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;text-align:center;font:700 1.05rem/1.1 var(--cond);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;padding:12px 22px;border-radius:5px;color:#fff3df;border:1px solid #4d2208;background:linear-gradient(180deg,#aa581c 0%,#8b4515 55%,#6e340d 100%);text-shadow:0 1px 0 rgba(0,0,0,.5);box-shadow:inset 0 1px 0 rgba(255,222,170,.55),inset 0 -2px 0 rgba(0,0,0,.28),0 2px 0 #34170a,0 10px 18px rgba(0,0,0,.35);transition:transform .08s,box-shadow .08s,filter .15s}
.btn:hover{filter:brightness(1.07)}
button.btn{cursor:pointer}
.btn:active{transform:translateY(2px);box-shadow:inset 0 2px 7px rgba(0,0,0,.5),0 0 0 #34170a,0 3px 8px rgba(0,0,0,.3)}
.btn.ghost{color:var(--brass-lt);background:linear-gradient(180deg,rgba(255,255,255,.07) 0%,rgba(255,255,255,.01) 100%);border:1px solid #8a6a34;text-shadow:none;box-shadow:inset 0 1px 0 rgba(255,235,190,.25),0 2px 0 #0d0704,0 8px 14px rgba(0,0,0,.3)}
.btn.ghost:hover{background:rgba(184,146,74,.16);filter:none}
.cream .btn.ghost{color:#3a2412;background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.1));border-color:#8a6a34;box-shadow:inset 0 1px 0 #fff,0 2px 0 #cdb98f,0 8px 14px rgba(70,40,15,.12)}

/* trust strip */
.trust{display:grid;gap:0;border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d);margin-top:0}
.trust div{padding:16px 0;border-bottom:1px solid var(--line-d);font:600 1.05rem/1.35 var(--cond);letter-spacing:.1em;text-transform:uppercase;color:var(--cream)}
.trust div:last-child{border-bottom:0}
.trust b{display:block;font:700 1.6rem/1.1 var(--display);letter-spacing:0;text-transform:none;color:var(--brass-lt)}

/* cards */
.grid{display:grid;gap:12px;margin-top:20px}
.card{background:linear-gradient(180deg,#fffcf4,#fbf3e2);border:1px solid #d6c39d;border-radius:5px;padding:16px;box-shadow:inset 0 1px 0 #fff,0 1px 0 #fff,0 8px 18px rgba(70,40,15,.1)}
.card h3{margin-bottom:6px;font-size:1.15rem}
.card p{margin:0;color:#3d2c1f;font-size:.97rem;line-height:1.5}
.card .more{display:inline-flex;align-items:center;min-height:44px;margin-top:2px;padding:0;font:700 .95rem/1 var(--cond);letter-spacing:.12em;text-transform:uppercase}
.wood .card,.dark .card{background:linear-gradient(180deg,#2f1d11,#24150b);border-color:var(--rim);color:var(--cream);box-shadow:inset 0 1px 0 rgba(255,225,170,.12),0 8px 18px rgba(0,0,0,.35)}
.wood .card p,.dark .card p{color:#d9c8a8}

/* animal picker */
.animals{display:flex;flex-wrap:wrap;justify-content:center;gap:22px 12px;margin-top:26px;list-style:none;padding:0}
.animals li{width:calc(33.333% - 8px)}
.animals span{display:none}
.animals a{display:block;text-align:center;text-decoration:none;color:var(--ink)}
.animals img{width:100%;max-width:210px;margin:0 auto;transition:transform .18s}
.animals a:hover img{transform:translateY(-4px) scale(1.02)}
.animals span{margin-top:8px;font:600 .95rem/1.3 var(--cond);letter-spacing:.08em;text-transform:uppercase;color:#2e1a0c}

/* steps */
.steps{counter-reset:s;list-style:none;margin:24px 0 0;padding:0;display:grid;gap:0;border-top:1px solid var(--line)}
.steps li{counter-increment:s;padding:14px 0 14px 52px;border-bottom:1px solid var(--line);position:relative}
.steps li::before{content:counter(s);position:absolute;left:0;top:13px;width:38px;height:38px;border-radius:50%;background:var(--espresso);color:var(--brass-lt);font:700 1.25rem/38px var(--cond);text-align:center}
.steps b{display:block;font:700 1.2rem/1.25 var(--display);margin-bottom:2px}

/* tables */
.tw{overflow-x:auto;margin:18px 0;border:1px solid var(--rim);border-radius:5px;background:rgba(0,0,0,.18)}
.cream .tw{border-color:var(--line)}
table{border-collapse:collapse;width:100%}
th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--line-d);vertical-align:top}
.cream th,.cream td{border-bottom-color:var(--line)}
th{font:700 .9rem/1.2 var(--cond);letter-spacing:.14em;text-transform:uppercase;color:var(--brass-lt);background:rgba(201,162,74,.08)}
.cream th{color:var(--muted);background:#efe3c8}
tr:last-child td{border-bottom:0}
td.t{font-variant-numeric:tabular-nums;white-space:nowrap}

/* quotes */
.quotes{display:grid;gap:16px;margin-top:24px}
blockquote{margin:0;padding:20px;background:linear-gradient(180deg,#2f1d11,#24150b);border:1px solid var(--rim);border-left:3px solid var(--brass);border-radius:4px;box-shadow:inset 0 1px 0 rgba(255,225,170,.1),0 8px 18px rgba(0,0,0,.3)}
blockquote p{font:600 1.15rem/1.5 var(--display);font-style:italic;margin:0 0 10px;color:var(--cream)}
blockquote cite{font:600 .9rem/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-lt);font-style:normal}

/* callouts + chips */
.callout{border:1px solid var(--rim);border-left:4px solid var(--copper);background:rgba(184,146,74,.08);padding:16px 18px;border-radius:4px;margin:22px 0}
.cream .callout{background:rgba(181,96,31,.07);border-color:#cdb98f;border-left-color:var(--copper)}
.callout b{display:block;font:700 1rem/1.2 var(--cond);letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
.tbd{display:inline-block;font:700 .78rem/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;background:rgba(255,255,255,.5);color:#4b2007;border:1px dashed #b5601f;padding:3px 7px;border-radius:3px;vertical-align:middle}
.dark .tbd,.wood .tbd{color:#e6b983;background:rgba(181,96,31,.2);border-color:#c87530}

/* two-col + media */
.split{display:grid;gap:26px;align-items:center}
.split>*,.grid>*,.row>*,.quotes>*,.poster>*{min-width:0}
.split img{border-radius:6px;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.split img.badge-hero{width:132px;margin:0 auto;box-shadow:none;border-radius:0;order:-1}
.deco{display:none}
ul.plain{list-style:none;padding:0;margin:14px 0}
ul.plain li{padding:9px 0 9px 26px;position:relative;border-bottom:1px solid var(--line)}
.dark ul.plain li,.wood ul.plain li{border-bottom-color:var(--line-d)}
ul.plain li::before{content:"";position:absolute;left:2px;top:17px;width:9px;height:9px;background:var(--copper);transform:rotate(45deg)}

/* forms (mockup, not wired) */
form{display:grid;gap:14px;margin-top:20px}
label{font:700 .9rem/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;display:block;margin-bottom:6px}
input,select,textarea{width:100%;min-height:48px;font:400 16px/1.4 var(--body);color:var(--ink);background:#fffaf0;border:1px solid #bda985;border-radius:3px;padding:12px}
textarea{min-height:110px}
.row{display:grid;gap:14px}

/* gift shop */
.lineup{position:relative;margin:22px 0 0;border-radius:6px;overflow:hidden;border:1px solid var(--rim);box-shadow:0 14px 34px rgba(0,0,0,.5);background:#1a1109}
.lineup img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.lineup figcaption{padding:10px 14px;font-size:.9rem;color:#cdb998;background:#120b07;border-top:1px solid var(--rim)}
.soon-tag{position:absolute;top:10px;left:10px;z-index:2;font:700 .78rem/1 var(--cond);letter-spacing:.14em;text-transform:uppercase;color:#fff3df;background:linear-gradient(180deg,#aa581c 0%,#8b4515 55%,#6e340d 100%);border:1px solid #4d2208;padding:6px 9px;border-radius:3px;text-shadow:0 1px 0 rgba(0,0,0,.5);box-shadow:inset 0 1px 0 rgba(255,222,170,.5),0 2px 0 #34170a,0 6px 12px rgba(0,0,0,.35)}
.soon-tag.big{font-size:1rem;padding:9px 13px;top:14px;left:14px}
.gift-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:20px}
.gift-card{min-width:0}
.gift-img{position:relative;border-radius:6px;overflow:hidden;aspect-ratio:1;background:#e4dfd6;border:1px solid #d6c39d;box-shadow:0 8px 18px rgba(70,40,15,.14)}
.gift-img img{display:block;width:100%;height:100%;object-fit:cover}
.gift-card h3{margin:12px 0 4px;font-size:1.1rem}
.gift-card p{margin:0;font-size:.95rem;line-height:1.45;color:#3d2c1f}
@media (min-width:900px){.gift-grid{grid-template-columns:repeat(4,1fr);gap:20px}.soon-tag{font-size:.82rem}}

/* map */
.mapframe{border-radius:6px;overflow:hidden;border:1px solid var(--rim);box-shadow:0 10px 26px rgba(0,0,0,.45);background:#1a1109}
.mapframe iframe{display:block;width:100%;height:300px;border:0}
@media (min-width:900px){.mapframe iframe{height:360px}}

/* library */
.poster{display:grid;gap:14px}
.poster img{border-radius:3px;border:1px solid var(--line-d);width:100%}
.poster h3{font-size:1.15rem}
.poster .meta{font-size:.85rem;color:#b9a58a}

/* library */
.lib-grid{display:grid;gap:22px;margin-top:24px}
.lib-card{display:grid;gap:16px;background:linear-gradient(180deg,#2f1d11,#24150b);border:1px solid var(--rim);border-radius:6px;padding:16px;box-shadow:inset 0 1px 0 rgba(255,225,170,.12),0 8px 18px rgba(0,0,0,.35)}
.lib-card .thumb{display:block;border-radius:4px;overflow:hidden;border:1px solid var(--rim);background:#111}
.lib-card .thumb img{width:100%;height:auto}
.lib-card{color:var(--cream)}
.lib-card .eyebrow{color:var(--brass)}
.lib-card .small{color:#b9a58a}
.lib-card a:not(.btn){color:var(--brass-lt)}
.lib-card h3{margin:2px 0 8px}
.lib-card p{margin:0 0 10px}
@media (min-width:640px){.lib-card{grid-template-columns:220px 1fr;align-items:start}}
@media (min-width:900px){.lib-card{grid-template-columns:260px 1fr}}

/* footer */
.foot{background:#1d120b;color:#cdb998;padding:36px var(--gutter-r) calc(92px + env(safe-area-inset-bottom,0px)) var(--gutter);border-top:1px solid #8a6a34;box-shadow:inset 0 3px 0 #1c110a;font-size:.95rem;line-height:1.5}
.foot .in{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:26px 20px}
.foot p{margin:0 0 8px}
.foot h4,.foot .fh{margin:0 0 10px;font:700 .95rem/1 var(--cond);letter-spacing:.16em;text-transform:uppercase;color:var(--brass-lt)}
.foot a{color:var(--cream)}
.foot ul{list-style:none;margin:0;padding:0}
.foot li a,.foot p a{display:flex;align-items:center;min-height:44px}
.f-brand{grid-column:1 / -1;display:flex;align-items:center;gap:14px;padding-bottom:22px;border-bottom:1px solid #3a2616}
.f-brand img{width:64px;height:64px;flex:none}
.f-name{display:block;font:700 1.2rem/1.1 var(--display);color:var(--cream)}
.f-tag{display:block;margin-top:4px;font:600 .82rem/1.3 var(--cond);letter-spacing:.14em;text-transform:uppercase;color:var(--brass-lt)}
.f-hours table{border-collapse:collapse;width:100%;min-width:0}
.f-hours td{padding:2px 0;border:0;vertical-align:top}
.f-hours td:last-child{text-align:right;white-space:nowrap;color:var(--cream);padding-left:10px}
.f-legal{grid-column:1 / -1;margin:6px 0 0;padding-top:20px;border-top:1px solid #3a2616;font-size:.88rem;color:#bcab8d}
.act{position:fixed;left:0;right:0;bottom:0;z-index:50;display:grid;grid-template-columns:repeat(4,1fr);background:linear-gradient(180deg,#24150b,#120b07);border-top:1px solid #8a6a34;box-shadow:0 -8px 20px rgba(0,0,0,.5);padding-bottom:env(safe-area-inset-bottom,0px)}
.act a{display:block;text-align:center;padding:14px 4px;font:700 1rem/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;color:var(--cream);text-decoration:none;border-right:1px solid var(--line-d)}
.act a:last-child{border-right:0;color:#fff3df;background:linear-gradient(180deg,#aa581c 0%,#8b4515 55%,#6e340d 100%);text-shadow:0 1px 0 rgba(0,0,0,.5);box-shadow:inset 0 1px 0 rgba(255,222,170,.5)}

@media (max-width:399px){
  .wm small{letter-spacing:.14em}
}
@media (min-width:400px){
  .callbtn .num{display:inline}
}
@media (min-width:900px){
  .wm small .loc{display:inline;margin-top:0}
  .wm small .dot{display:inline}
}
@media (min-width:640px){
  .callbtn .lead{display:inline}
  .lbl{display:none}
  .sec{font-size:.9rem}
  .grid.c2{grid-template-columns:repeat(2,1fr)}
  .row.c2{grid-template-columns:1fr 1fr}
  .trust{grid-template-columns:repeat(3,1fr)}
  .trust div{border-bottom:0;border-right:1px solid var(--line-d);padding:20px 22px}
  .trust div:last-child{border-right:0}
  .animals{gap:22px 18px}
  .animals li{width:calc(20% - 15px)}
  .animals span{display:block}
  .btns{flex-direction:row;flex-wrap:wrap}
  .btns .btn{width:auto}
  .quotes{grid-template-columns:repeat(3,1fr)}
  
}
@media (min-width:900px){
  body{font-size:18px}
  .act{display:none}
  .band{padding-block:72px}
  .grid.c3{grid-template-columns:repeat(3,1fr)}
  .sec{display:flex;justify-content:center;gap:52px;font-size:.95rem;letter-spacing:.12em}
  .sec a{flex:0 0 auto;min-width:0;padding:4px 6px}
  .hero .in{display:grid;grid-template-columns:1.35fr 1fr;grid-template-areas:"sign copy" "under copy";column-gap:52px;row-gap:22px;align-items:start}
  .hero .sign{grid-area:sign;margin:0;max-width:none}
  .hero .copy{grid-area:copy;align-self:center}
  .hero .under{grid-area:under}
  .hero .under .sub{margin-top:0}
  .hero .under .hours-line{display:flex;flex-wrap:wrap;gap:4px 28px;margin-top:10px}
  .hero h1{max-width:none;font-size:clamp(2rem,3.3vw,2.7rem)}
  .split{grid-template-columns:1.1fr .9fr;gap:48px}
  .split img.badge-hero{width:min(240px,60%);order:0}
  .deco{display:block}
  .split.rev{grid-template-columns:.9fr 1.1fr}
  .split.rev>:first-child{order:2}
  .foot{padding-bottom:40px}
  .foot .in{grid-template-columns:1.5fr 1fr 1fr .8fr .9fr;gap:30px 40px}
  .f-brand{grid-column:1;flex-direction:column;align-items:flex-start;border-bottom:0;padding-bottom:0}
  .f-legal{grid-column:1 / -1}
  .foot li a,.foot p a{min-height:36px}
  .poster{grid-template-columns:200px 1fr;align-items:start}
  .hero{padding-top:34px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

/* home hero: misty farm photo with a warm overlay so the cream text stays readable. Portrait art on phones, wide art from 700px up. */
.band.dark.hero{background-color:#21140a;
  background-image:linear-gradient(180deg,rgba(30,18,9,.06) 0%,rgba(30,18,9,.18) 45%,rgba(30,18,9,.70) 100%),url(/a/img/hero-bg-m-941.817228319d.webp);
  background-size:cover;background-position:center bottom;background-repeat:no-repeat}
@media (min-width:700px){.band.dark.hero{background-image:linear-gradient(180deg,rgba(30,18,9,.04) 0%,rgba(30,18,9,.12) 50%,rgba(30,18,9,.84) 100%),linear-gradient(90deg,rgba(30,18,9,.10) 0%,rgba(30,18,9,.50) 100%),url(/a/img/hero-bg-1200.57f21e694a.webp);background-position:center bottom}}
@media (min-width:1300px){.band.dark.hero{background-image:linear-gradient(180deg,rgba(30,18,9,.04) 0%,rgba(30,18,9,.12) 50%,rgba(30,18,9,.84) 100%),linear-gradient(90deg,rgba(30,18,9,.10) 0%,rgba(30,18,9,.50) 100%),url(/a/img/hero-bg-2000.a6786c8b73.webp)}}
.hero h1,.hero .sub,.hero .hours-line,.hero .eyebrow{text-shadow:0 1px 3px rgba(0,0,0,.55),0 2px 18px rgba(0,0,0,.65)}
.band.dark.hero .eyebrow{color:#f3e2b8}

/* ---------- audit fixes ---------- */
.card .more{color:#5a2406}
.lib-card p.small,.lib-card .meta{color:#d2c2a2}
.lib-card a.btn.ghost{color:var(--brass-lt);background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.01));border-color:#8a6a34;box-shadow:inset 0 1px 0 rgba(255,235,190,.25),0 2px 0 #0d0704,0 8px 14px rgba(0,0,0,.3)}
.eyebrow::before{content:"";display:inline-block;width:6px;height:6px;margin-right:9px;background:currentColor;transform:rotate(45deg);vertical-align:2px}
@media (max-width:899px){main p a:not(.btn):not(.more),.steps a{display:inline-block;padding:11px 0}}

/* hero text sits on a soft scrim so the photo can stay bright elsewhere */
.band.dark.hero{overflow:hidden}
.hero .copy,.hero .under{position:relative;isolation:isolate}
.hero .copy::before,.hero .under::before{content:"";position:absolute;inset:-26px -34px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,rgba(22,12,5,.74) 0%,rgba(22,12,5,.60) 55%,rgba(22,12,5,0) 82%)}

/* hours: big, right under the hero */
.hoursband{padding-block:26px 24px}
.hrs{display:grid;gap:0;margin-top:4px;border-top:1px solid rgba(201,166,95,.28)}
.hr{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:2px 12px;padding:14px 0;border-bottom:1px solid rgba(201,166,95,.28)}
.hr .d{font:700 1.05rem/1.2 var(--cond);letter-spacing:.14em;text-transform:uppercase;color:#eadfc6}
.hr .t{font:700 1.65rem/1.1 var(--display);color:var(--brass-lt)}
.hr .n{flex-basis:100%;text-align:right;font:600 1rem/1.3 var(--cond);letter-spacing:.08em;color:#dccfb0}
.hrs-note{margin:14px 0 0;font-size:1rem;color:#dccfb0}
@media (min-width:900px){
  .hrs{grid-template-columns:repeat(3,1fr);border-bottom:1px solid rgba(201,166,95,.28)}
  .hr{display:block;padding:18px 28px;border-bottom:0;border-left:1px solid rgba(201,166,95,.28)}
  .hr:first-child{border-left:0;padding-left:0}
  .hr .t{display:block;margin-top:8px;font-size:2.1rem}
  .hr .n{text-align:left;margin-top:6px}
}

/* ratings strip above the map */
.revband{padding-block:22px}
.rev{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 14px;text-align:center}
.stars{display:inline-flex;gap:3px}
.stars svg{width:25px;height:25px;fill:var(--brass-lt);filter:drop-shadow(0 1px 1px rgba(0,0,0,.5))}
.rev .score{font:700 2rem/1 var(--display);color:var(--cream)}
.rev .m{font:600 1.02rem/1.3 var(--cond);letter-spacing:.1em;text-transform:uppercase;color:#e6d9bd}
.rev .sep{display:none;width:1px;height:24px;background:rgba(201,166,95,.45)}
@media (min-width:700px){.rev .sep{display:block}}

/* map band hours */
.hrs-table{border-collapse:collapse;width:auto;min-width:0;margin:12px 0 6px}
.hrs-table td{padding:5px 22px 5px 0;border:0;font-size:1.1rem;color:var(--ink)}
.hrs-table td:last-child{padding-right:0;font:700 1.25rem/1.2 var(--cond);letter-spacing:.06em}
.deer-line{margin:6px 0 0}

/* ---------- brass pinstripes between sections ---------- */
.band{position:relative;--pin:#8d6a2e;--pin2:rgba(141,106,46,.62)}
.band.dark,.foot{--pin:#c9a65f;--pin2:rgba(201,166,95,.55)}
.foot{position:relative;border-top:0}
.band+.band::before,.foot::before{content:"";position:absolute;left:0;right:0;top:0;height:5px;pointer-events:none;
  background:linear-gradient(90deg,transparent 0,var(--pin) 14%,var(--pin) 86%,transparent 100%) 0 0/100% 1px no-repeat,
             linear-gradient(90deg,transparent 0,var(--pin2) 22%,var(--pin2) 78%,transparent 100%) 0 4px/100% 1px no-repeat}
.band+.band::after,.foot::after{content:"";position:absolute;top:0;left:50%;width:7px;height:7px;margin:-1px 0 0 -3.5px;transform:rotate(45deg);background:var(--pin);pointer-events:none}

/* ---------- coin shadows ---------- */
.animals img{filter:drop-shadow(0 2px 2px rgba(40,20,5,.45)) drop-shadow(0 11px 13px rgba(40,20,5,.40));transition:transform .18s,filter .18s}
.animals a:hover img{filter:drop-shadow(0 3px 3px rgba(40,20,5,.5)) drop-shadow(0 16px 18px rgba(40,20,5,.42))}
.badges img,.brand img,.f-brand img{filter:drop-shadow(0 3px 4px rgba(0,0,0,.7))}
.badges a[aria-current="page"] img,.brand[aria-current="page"] img{filter:drop-shadow(0 0 7px rgba(227,199,127,.9)) drop-shadow(0 3px 4px rgba(0,0,0,.7))}
.split img.badge-hero{filter:drop-shadow(0 10px 16px rgba(0,0,0,.55))}
.cs-card img{filter:drop-shadow(0 3px 3px rgba(40,20,5,.40)) drop-shadow(0 9px 10px rgba(40,20,5,.28))}

.f-loc{display:block;margin-top:3px}

/* library documents + disclaimer */
.doclist{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:12px}
.doc{display:grid;gap:12px;background:linear-gradient(180deg,#fffcf4,#fbf3e2);border:1px solid #d6c39d;border-radius:5px;padding:16px;box-shadow:inset 0 1px 0 #fff,0 8px 18px rgba(70,40,15,.10)}
.doc h3{margin:0 0 4px;font-size:1.15rem}
.doc p{margin:0 0 6px;color:#3d2c1f;font-size:.97rem;line-height:1.5}
.doc .btn{width:100%}
@media (min-width:700px){.doc{grid-template-columns:1fr auto;align-items:center;gap:20px}.doc .btn{width:auto;min-width:190px}}
.disc{max-width:760px}
.disc p{font-size:1rem;line-height:1.6;margin:0 0 12px}
.f-disc{grid-column:1 / -1;margin:0}
.f-disc a{display:inline-flex;align-items:center;min-height:44px;color:var(--brass-lt)}

.mapband .deer-line a:not(.btn):not(.more){display:flex;align-items:center;min-height:44px;padding:0}

/* guide cards with a first-page thumbnail */
.doc.has-thumb{grid-template-columns:92px 1fr;align-items:start;gap:14px}
.doc.has-thumb .btn{grid-column:1 / -1}
.dthumb{display:block;border:1px solid #cdb98f;border-radius:2px;background:#fff;box-shadow:0 1px 0 #fff inset,0 6px 12px rgba(60,35,12,.28);overflow:hidden;align-self:start}
.dthumb img{display:block;width:100%;height:auto}
@media (min-width:700px){.doc.has-thumb{grid-template-columns:116px 1fr auto;align-items:center;gap:22px}.doc.has-thumb .btn{grid-column:auto}}

/* ---- Meat Blog: headline ticker (every page) and article cards (home, hubs, species pages, blog) ---- */
.ticker{display:flex;align-items:stretch;background:#1a0f08;border-bottom:1px solid #4a3418;color:var(--cream);font:600 .86rem/1 var(--cond);letter-spacing:.1em;text-transform:uppercase;min-height:36px;overflow:hidden;position:relative;z-index:6}
.ticker .tk-label{flex:none;display:flex;align-items:center;padding:0 14px 0 var(--gutter);background:linear-gradient(180deg,#aa581c 0%,#8b4515 55%,#6e340d 100%);color:#fff3df;text-decoration:none;font-weight:700;letter-spacing:.14em;white-space:nowrap;box-shadow:6px 0 10px rgba(0,0,0,.4);position:relative;z-index:2}
.ticker .tk-label::after{content:"";position:absolute;right:-7px;top:0;bottom:0;width:14px;background:inherit;transform:skewX(-14deg);z-index:-1}
.ticker .tk-view{flex:1 1 auto;min-width:0;overflow:hidden;display:flex;align-items:center;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 18px),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 18px,#000 calc(100% - 18px),transparent 100%)}
.ticker .tk-track{display:flex;width:max-content;animation:tk-roll var(--tk-dur,60s) linear infinite;will-change:transform}
.ticker .tk-set{display:flex;flex:none;list-style:none;margin:0;padding:0}
.ticker li{flex:none;display:flex;align-items:center}
.ticker li a{display:flex;align-items:center;gap:9px;min-height:36px;padding:0 22px;color:#eadfc6;text-decoration:none;white-space:nowrap;position:relative}
.ticker li a::after{content:"";position:absolute;right:-2px;top:50%;width:5px;height:5px;margin-top:-3px;background:var(--brass);transform:rotate(45deg)}
.ticker li a b{color:var(--brass-lt);font-weight:700;letter-spacing:.14em}
.ticker li a:hover{color:#fff}
.ticker li a:hover,.ticker li a:focus-visible{text-decoration:underline;text-underline-offset:4px}
.ticker .tk-pause{flex:none;width:44px;border:0;border-left:1px solid #3a2814;background:#150b06;color:var(--brass-lt);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}
.ticker .tk-pause svg{fill:currentColor}
.ticker .tk-pause[aria-pressed="true"] svg rect:nth-child(2){display:none}
.ticker .tk-pause[aria-pressed="true"] svg rect:first-child{x:8;width:8;rx:0}
.ticker .tk-pause:focus-visible{outline:3px solid var(--brass);outline-offset:-3px}
.ticker:hover .tk-track,.ticker:focus-within .tk-track,.ticker.paused .tk-track{animation-play-state:paused}
@keyframes tk-roll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){
  .ticker .tk-track{animation:none}
  .ticker .tk-view{overflow-x:auto;-webkit-mask-image:none;mask-image:none;scrollbar-width:none}
  .ticker .tk-set[aria-hidden="true"],.ticker .tk-pause{display:none}
}
@media print{.ticker{display:none}}

.pgrid{display:grid;gap:14px;margin-top:20px;grid-template-columns:1fr}
@media (min-width:640px){.pgrid{grid-template-columns:repeat(2,1fr);gap:18px}}
@media (min-width:980px){.pgrid{grid-template-columns:repeat(3,1fr)}.pgrid.big{grid-template-columns:repeat(4,1fr)}}
.pcard{display:flex;flex-direction:column;background:linear-gradient(180deg,#fffcf4,#fbf3e2);border:1px solid #d6c39d;border-radius:6px;overflow:hidden;text-decoration:none;box-shadow:inset 0 1px 0 #fff,0 8px 18px rgba(70,40,15,.12);transition:transform .15s ease,box-shadow .15s ease;min-width:0}
.pcard[hidden]{display:none}
.pcard:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 #fff,0 12px 24px rgba(70,40,15,.2)}
.pcard:focus-visible{outline:3px solid var(--copper);outline-offset:2px}
.pcard .pc-img{display:block;position:relative;background:#1d130d;aspect-ratio:16/9}
.pcard .ribbon{position:absolute;left:10px;top:10px;z-index:1;padding:5px 10px;border-radius:999px;background:linear-gradient(180deg,#aa581c 0%,#8b4515 55%,#6e340d 100%);color:#fff3df;font:700 .78rem/1 var(--cond);letter-spacing:.14em;text-transform:uppercase;font-style:normal;box-shadow:0 2px 6px rgba(0,0,0,.45)}
.pcard .pc-img img{width:100%;height:100%;object-fit:cover}
.pcard .pc-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;flex:1}
.pcard .pc-cat{font:700 .82rem/1 var(--cond);letter-spacing:.16em;text-transform:uppercase;color:#7a3708}
.pcard .pc-t{font:700 1.14rem/1.22 var(--display);color:#24130a;text-wrap:balance}
.pcard .pc-d{font-size:.95rem;line-height:1.45;color:#3d2c1f;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pcard .pc-m{margin-top:auto;padding-top:4px;font:600 .82rem/1.3 var(--cond);letter-spacing:.1em;text-transform:uppercase;color:#5a4634}
.pcard.big .pc-d{display:none}
.pcard.bodyhit .pc-m::after{content:" \00B7  found in the article text"}
@media (prefers-reduced-motion:reduce){.pcard{transition:none}.pcard:hover{transform:none}}

.foot .f-blog{grid-column:1/-1;border-top:1px solid var(--line-d);padding-top:16px}
.foot .f-blog h4 a,.foot .f-blog .fh a{color:var(--brass-lt);text-decoration:none}
.foot .f-blog ul{display:flex;flex-wrap:wrap;gap:0 22px}
.foot .f-blog li a{min-height:40px}

.foot .f-usda{grid-column:1/-1;display:flex;align-items:center;gap:14px;text-decoration:none;color:var(--cream);padding:12px 0;min-height:72px;border-top:1px solid var(--line-d)}
.foot .f-usda img{flex:none;width:72px;height:72px}
.foot .f-usda span{display:flex;flex-direction:column;gap:2px;font-size:.95rem;line-height:1.35}
.foot .f-usda b{font:700 1.05rem/1.2 var(--cond);letter-spacing:.12em;text-transform:uppercase;color:var(--brass-lt)}
.foot .f-usda em{font-style:normal;text-decoration:underline;text-underline-offset:3px;color:var(--brass-lt)}
.foot .f-usda:hover em{color:#fff}

/* =====================================================================================================
   BRIGHT REDESIGN (2026-11-07). Brock's mockups: light header on the farm panorama, ivory butcher paper,
   forest-green accents, localized scrims instead of dark overlays. Dark is kept only for the deer-season
   feature (forest green), the footer and the quick-action bar. Phone, tablet and desktop each get their own crop.
   ===================================================================================================== */
:root{--ivory:#f3ebdd;--parch:#e3d2b8;--oak:#c69c6d;--forest:#46533a;--forest-d:#2c3624;--green:#3d4e12;--green-ln:#4f7a1f;--ink:#26150b;--walnut-2:#382a21}
body{background:#efe4cd}

/* paper */
.band.cream{background:linear-gradient(rgba(255,251,242,.20),rgba(255,251,242,.20)),url(/a/img/paper-ivory-tile.732e3c450a.webp);background-size:auto,1000px}
.band.cream.kraft{background:linear-gradient(rgba(222,192,140,.20),rgba(222,192,140,.20)),url(/a/img/paper-ivory-tile.732e3c450a.webp);background-size:auto,1000px;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.cream .eyebrow,.kraft .eyebrow,.eyebrow{color:var(--green)}
.dark .eyebrow{color:var(--brass-lt)}

/* mockup strip + ticker */
.mock{background:#e8d9b6;color:#5a3a1a;border-bottom:1px solid #cdb98f}
.ticker{background:linear-gradient(180deg,#f8eed6,#eddfbf);border-bottom:1px solid #c7b184;color:#3a2412;min-height:38px}
.ticker .tk-label{background:linear-gradient(180deg,#7c3317 0%,#5e2410 100%);color:#fff3df}
.ticker li a{color:#3a2412}
.ticker li a b{color:#6a2c10}
.ticker li a::after{background:#8a6a34}
.ticker li a:hover{color:#000}
.ticker .tk-pause{background:#4a2412;border-left:1px solid #2a140a;color:#e9cf93}

/* header: light, on the farm panorama (phone crop, then full width) */
.top{background:#cfe0ea url(/a/img/hdr-m-900.e8b1104601.webp) right center/cover no-repeat;color:var(--ink);border-bottom:1px solid #b79a5c;box-shadow:0 8px 18px rgba(60,35,12,.20);isolation:isolate;overflow-x:clip}
@media (min-width:700px){.top{background-image:url(/a/img/hdr-1300.3b5891ef95.webp);background-position:center 62%}}
@media (min-width:1300px){.top{background-image:url(/a/img/hdr-2172.cc36996a3d.webp)}}
.brand{color:var(--ink);position:relative}
.brand::before{content:"";position:absolute;z-index:-1;inset:-10px -26px -10px -16px;pointer-events:none;background:radial-gradient(ellipse at 42% 50%,rgba(255,250,238,.80) 0%,rgba(255,250,238,.55) 55%,rgba(255,250,238,0) 78%)}
.brand{gap:10px}
.callbtn{flex:none}
.brand img{width:60px;height:60px}
.wm{font:700 clamp(1.5rem,6.8vw,2.3rem)/.96 var(--display);letter-spacing:.005em;text-transform:uppercase;color:#2a1409}
.wm small{display:block;margin-top:3px;font:700 clamp(.84rem,3.7vw,1.3rem)/1 var(--display);letter-spacing:.005em;color:#2a1409}
.wm small .loc{display:flex;align-items:center;gap:8px;margin-top:5px;font:600 .78rem/1 var(--cond);letter-spacing:.28em;color:#3a2412}
.wm small .loc::before,.wm small .loc::after{content:"";flex:1 1 8px;height:1px;background:#3a2412;opacity:.75}
.wm small .dot{display:none}
@media (min-width:900px){.brand img{width:84px;height:84px}.wm small .loc{display:flex;margin-top:7px}}
.badges img,.brand img{filter:drop-shadow(0 3px 3px rgba(55,28,6,.45))}
.badges a[aria-current="page"] img,.brand[aria-current="page"] img{filter:drop-shadow(0 0 8px rgba(255,236,170,.95)) drop-shadow(0 3px 3px rgba(55,28,6,.45))}
.badges a{opacity:1}
.lbl,.lbl{display:block;margin-top:2px;font:700 1rem/1 var(--cond);letter-spacing:.09em;text-transform:uppercase;color:#2a1409;text-shadow:0 1px 0 rgba(255,250,236,.75)}
.badges a[aria-current="page"] .lbl{color:var(--green)}
@media (min-width:640px){.lbl{display:block}}
@media (min-width:900px){.badges ul{justify-content:center;gap:34px}.badges li{flex:0 1 104px;max-width:104px}}
.sec{position:relative;color:#2a1409;font-size:.9rem;gap:2px}
.sec::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:linear-gradient(180deg,rgba(251,245,230,.95),rgba(241,230,205,.97));border-top:1px solid rgba(138,106,52,.5)}
.sec a{position:relative;color:#2a1409;font-weight:700;border-bottom-width:3px}
.sec a+a::before{content:"";position:absolute;left:-2px;top:30%;height:40%;width:1px;background:rgba(60,36,18,.45)}
.sec a:hover,.sec a[aria-current="page"]{color:var(--green);border-bottom-color:var(--green-ln)}
@media (min-width:640px){.sec{font-size:.98rem}}

/* home hero: bright photo, a soft light scrim only behind the words */
.band.cream.hero{background:#cfdde6 url(/a/img/bhero-m-941.adfee3943f.webp) center bottom/cover no-repeat;color:var(--ink)}
@media (min-width:700px){.band.cream.hero{background-image:url(/a/img/bhero-w-1200.81cf918101.webp)}}
@media (min-width:1300px){.band.cream.hero{background-image:url(/a/img/bhero-w-1774.91de02847e.webp)}}
.band.cream.hero .eyebrow{color:var(--green)}
.hero h1,.hero .sub,.hero .hours-line,.hero .eyebrow{text-shadow:0 1px 0 rgba(255,250,236,.65)}
.hero .sub{color:#2f1c0f}
.hero .hours-line{color:#5a2406}
.hero .copy::before,.hero .under::before{background:radial-gradient(ellipse at center,rgba(255,249,234,.86) 0%,rgba(255,249,234,.70) 58%,rgba(255,249,234,0) 84%)}
.hero .btn.ghost{color:#3a2412;background:linear-gradient(180deg,rgba(255,255,255,.78),rgba(255,248,232,.55));border-color:#8a6a34;box-shadow:inset 0 1px 0 #fff,0 2px 0 #cdb98f,0 8px 14px rgba(70,40,15,.14)}
.hero .sign{box-shadow:0 16px 38px rgba(50,25,5,.45)}

/* ratings and hours strips: now paper, with ink text */
.rev .score{color:var(--ink)}
.rev .m{color:#4a3827}
.stars svg{fill:#b07a1c;filter:drop-shadow(0 1px 0 rgba(255,255,255,.6))}
.rev .sep{background:rgba(120,86,40,.5)}
.hrs,.hr{border-color:rgba(120,86,40,.35)}
.hr .d{color:#3a2412}
.hr .t{color:#5a2406}
.hr .n,.hrs-note{color:#4a3827}
.trust,.trust div{border-color:var(--line);color:var(--ink)}
.trust b{color:#5a2406}

/* the deer-season feature: forest green for contrast */
.band.dark.forest{background:radial-gradient(110% 90% at 50% 0%,#566746 0%,#3d4a32 55%,#2c3624 100%);color:#f3ecdb}
.band.dark.forest .eyebrow{color:#e8d49c}
.band.dark.forest .tw{border-color:#6c7c58;background:rgba(0,0,0,.14)}
.band.dark.forest td{border-bottom-color:#5b6b49}
.band.dark.forest th{background:rgba(232,212,156,.10);color:#e8d49c}
.band.dark.forest .callout{background:rgba(0,0,0,.14);border-color:#6c7c58;border-left-color:#d9a35a}

/* cards and quotes: light, with soft local shadows */
blockquote{background:linear-gradient(180deg,#fffcf4,#fbf3e2);border:1px solid #d6c39d;border-left:3px solid var(--brass);box-shadow:inset 0 1px 0 #fff,0 8px 18px rgba(70,40,15,.12)}
blockquote::before{content:"\201C";display:block;font:700 3rem/.6 var(--display);color:var(--brass);margin-bottom:8px}
blockquote p{color:#2a1a0f}
blockquote cite{color:#7a3708}
.lib-card{background:linear-gradient(180deg,#fffcf4,#fbf3e2);border-color:#d6c39d;color:var(--ink);box-shadow:inset 0 1px 0 #fff,0 8px 18px rgba(70,40,15,.12)}
.lib-card .thumb{border-color:#d6c39d;background:#fff}
.lib-card .eyebrow{color:var(--green)}
.lib-card .small,.lib-card p.small,.lib-card .meta{color:#4a3827}
.lib-card a:not(.btn){color:#5a2406}
.lib-card a.btn.ghost{color:#3a2412;background:linear-gradient(180deg,rgba(255,255,255,.7),rgba(255,248,232,.4));border-color:#8a6a34;box-shadow:inset 0 1px 0 #fff,0 2px 0 #cdb98f,0 8px 14px rgba(70,40,15,.12)}
.poster img{border-color:var(--line)}
.poster .meta{color:#6a5640}

/* quick-action bar: dark wood, green Book */
.act{background:linear-gradient(180deg,#4d2f1a,#2a170b);border-top:2px solid #b88a42}
.act a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 4px 9px;font-size:1.05rem;border-right-color:rgba(255,255,255,.12)}
.act a svg{width:22px;height:22px;flex:none}
.act a:last-child{background:linear-gradient(180deg,#659232 0%,#44741f 55%,#2f5214 100%);box-shadow:inset 0 1px 0 rgba(235,255,200,.5)}

/* library intro: field-and-fence strip melts into the paper */
.band.fieldstrip{padding-bottom:clamp(150px,40vw,250px)}
.band.fieldstrip>.in{position:relative;z-index:1}
.band.fieldstrip::after{content:"";position:absolute;left:0;right:0;bottom:0;height:clamp(140px,38vw,250px);pointer-events:none;background:url(/a/img/field-900.5ebf71e4ab.webp) center 78%/cover no-repeat;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 42%);mask-image:linear-gradient(180deg,transparent 0,#000 42%)}
@media (min-width:900px){.band.fieldstrip::after{background-image:url(/a/img/field-1672.d3e4ce81ae.webp);background-position:center 70%}}

/* round 2 */
.ml-hint{color:#5a4634}
.brand{gap:8px}
.callbtn{font-size:1rem;padding-left:12px;padding-right:12px}
.wm small{font-size:clamp(.82rem,3.45vw,1.3rem)}
.brand img{width:56px;height:56px}
@media (min-width:900px){.brand{gap:14px}.callbtn{font-size:1.12rem}.brand img{width:84px;height:84px}}

/* round 3: meatlib.css loads after this file, so its classes need a heavier selector */
main .ml-hint{color:#5a4634}
main .ml-entry{background:linear-gradient(180deg,#fffcf4,#f8edd6);color:var(--ink);box-shadow:inset 0 1px 0 #fff,0 3px 0 #c9a65f,0 12px 22px rgba(70,40,15,.22)}
main .ml-entry b{color:#3a1d0a}
main .ml-entry span{color:#3d2c1f}
main .ml-entry:hover{filter:none;box-shadow:inset 0 1px 0 #fff,0 3px 0 #c9a65f,0 16px 28px rgba(70,40,15,.3)}
main .ml-entry:active{box-shadow:inset 0 2px 7px rgba(70,40,15,.3),0 1px 0 #c9a65f,0 5px 10px rgba(70,40,15,.2)}
main .ml-entry:focus-visible{outline-color:var(--green-ln)}

/* round 5: desktop legibility on the photos */
@media (min-width:700px){.lbl{display:inline-block;padding:3px 9px 2px;border-radius:9px;background:rgba(255,249,234,.84);text-shadow:none}}
@media (min-width:900px){
  .hero .copy::before,.hero .under::before{inset:-20px -28px;border-radius:14px;background:rgba(255,249,234,.86);box-shadow:0 10px 30px rgba(50,25,5,.22),inset 0 0 0 1px rgba(184,146,74,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
}

/* round 6 */
.cream .tw{background:rgba(255,251,240,.72);border-color:var(--line)}

/* round 7: hero photo. Nothing may sit on the barn, and the foot of the picture (meadow + fence) is never cropped.
   PHONE: the portrait art is laid down at full width, anchored to the bottom, with its top melting into the sky colour.
   Sign + headline sit up in the sky, the barn gets its own clear stretch, and the buttons rest on the meadow below it. */
@media (max-width:699px){
  .band.cream.hero{background:linear-gradient(180deg,#b9d2e5 0%,#d9e6ee 55%,#e8e8d8 100%);overflow:hidden;padding-bottom:26px}
  .band.cream.hero::before{content:"";position:absolute;left:0;right:0;bottom:0;aspect-ratio:941/1672;pointer-events:none;
    background:url(/a/img/bhero-m-941.adfee3943f.webp) center bottom/100% 100% no-repeat;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 24%);mask-image:linear-gradient(180deg,transparent 0,#000 24%)}
  .hero .in{position:relative;z-index:1;display:flex;flex-direction:column}
  .hero .copy{display:contents}
  .hero .copy::before{display:none}
  .hero .sign{order:0}
  .hero .eyebrow{order:1}
  .hero h1{order:2}
  .hero .btns{order:3;margin-top:max(36px,calc(101vw - 206px))}
  .hero .under{order:4}
  .hero .under::before{inset:-12px -16px;background:radial-gradient(ellipse at center,rgba(255,249,234,.80) 0%,rgba(255,249,234,.62) 60%,rgba(255,249,234,0) 88%)}
}
/* TABLET + DESKTOP: wide art anchored bottom-right so the barn stays on the right, clear of every word. Sign and copy share the left column. */
@media (min-width:700px){
  .band.cream.hero{background-position:right bottom;background-size:cover}
  .hero .in{display:grid;grid-template-columns:minmax(0,min(600px,56%)) 1fr;grid-template-areas:"sign ." "copy ." "under .";column-gap:40px;row-gap:22px;align-items:start}
  .hero .sign{grid-area:sign;margin:0;max-width:none;width:100%}
  .hero .copy{grid-area:copy;align-self:start}
  .hero .under{grid-area:under}
  .hero h1{max-width:none;font-size:clamp(1.8rem,3.2vw,2.6rem)}
  .hero .copy::before,.hero .under::before{inset:-20px -28px;border-radius:14px;background:rgba(255,249,234,.86);box-shadow:0 10px 30px rgba(50,25,5,.22),inset 0 0 0 1px rgba(184,146,74,.55);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
  .hero{padding-bottom:44px}
}

/* round 8: narrow phones (320-399px). Labels, section links and the action bar must fit on one line. */
@media (max-width:399px){
  .lbl{font-size:.84rem;letter-spacing:.03em;padding:0}
  .badges ul{gap:2px}
  .sec{font-size:.8rem;gap:0}
  .sec a{padding-left:3px;padding-right:3px}
  .act a{font-size:.95rem;letter-spacing:.05em}
  .mock{font-size:.7rem;letter-spacing:.08em}
}
@media (max-width:359px){
  .lbl{font-size:.74rem;letter-spacing:.01em}
  .sec{font-size:.7rem}
  .sec a{padding-left:2px;padding-right:2px}
  .act a{font-size:.82rem;letter-spacing:.02em}
  .wm{font-size:1.4rem}
  .wm small{font-size:.8rem}
  .brand img{width:50px;height:50px}
}
@media (max-width:699px){
  .hero h1,.hero .eyebrow{text-shadow:0 0 14px rgba(255,249,234,.95),0 0 5px rgba(255,249,234,.85),0 1px 0 rgba(255,250,236,.8)}
}

/* round 9 (Brock): coin names sit on a parchment strip (contrast, no bunching); narrow-phone hero uses the portrait art edge to edge at its own proportions */
.badges{position:relative}
.badges::before{content:"";position:absolute;z-index:-1;left:50%;width:100vw;transform:translateX(-50%);bottom:0;height:32px;background:linear-gradient(180deg,rgba(250,243,228,0) 0,rgba(250,243,228,.96) 24%)}
.lbl,.lbl{background:none;padding:0;border-radius:0;text-shadow:none;color:#2a1409}
.badges a[aria-current="page"] .lbl{color:var(--green)}
@media (max-width:399px){.badges ul{gap:4px}.lbl{font-size:.8rem;letter-spacing:.02em}}
@media (max-width:359px){.badges ul{gap:3px}.lbl{font-size:.72rem;letter-spacing:0}}
@media (max-width:699px){
  .band.cream.hero{background:#cfdde6 url(/a/img/bhero-m-941.adfee3943f.webp) 72% bottom/cover no-repeat;overflow:visible;padding-bottom:64px}
  .band.cream.hero::before{display:none}
  .hero .in{min-height:calc(204vw - 78px)}
  .hero .sign{width:80%;margin:0 auto 14px}
  .hero h1{font-size:clamp(1.45rem,6.4vw,2.2rem)}
  .hero .btns{margin-top:auto;padding:12px;border-radius:12px;background:rgba(255,249,234,.62);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);box-shadow:0 8px 22px rgba(50,25,5,.22),inset 0 0 0 1px rgba(184,146,74,.5)}
  .hero .under{margin-top:10px}
}

/* round 10 (Brock): in the narrow-phone header the barn sits ABOVE the coin row (between the call button and the coins), not behind them.
   The panorama crop is scaled to max(232px, 55vw) tall and pushed up so the barn's base lands at ~80px, just above the coin tops. */
@media (max-width:699px){
  .top{background-size:auto max(232px,55.2vw);background-position:right calc(80px - .62*max(232px,55.2vw))}
}

/* round 10b: the barn needs its own band between the call button and the coin row. Coins drop 28px; the barn's base lands at ~110px. */
@media (max-width:699px){
  .top{background-size:auto max(250px,60vw);background-position:right calc(110px - .62*max(250px,60vw))}
  .badges{padding-top:34px}
}

/* round 10c: tablets (700-899px) get the same barn-above-the-coins header */
@media (min-width:700px) and (max-width:899px){
  .top{background-size:auto max(320px,40vw);background-position:right calc(130px - .62*max(320px,40vw))}
  .badges{padding-top:44px}
}

/* round 11 (Brock): the sign is full width on phones; on desktop the sign and the copy card sit side by side instead of stacking.
   The sub line now lives inside the copy card (no separate .under box). */
@media (max-width:699px){
  .hero .in{min-height:calc(224vw - 78px)}
  .hero .sign{width:auto;max-width:none;margin:0 calc(-1*var(--gutter-r)) 14px calc(-1*var(--gutter));border-radius:0;box-shadow:0 10px 26px rgba(50,25,5,.40)}
  .hero h1{font-size:clamp(1.4rem,6.2vw,2.2rem)}
  .hero .sub{order:4;margin-top:10px;padding:10px 12px;border-radius:10px;background:rgba(255,249,234,.74);text-shadow:none;color:#2f1c0f}
}
@media (min-width:700px) and (max-width:1099px){
  .hero .in{grid-template-areas:"sign ." "copy ."}
}
@media (min-width:1100px){
  .hero{min-height:clamp(860px,64vw,960px)}
  .hero .in{max-width:1180px;grid-template-columns:minmax(0,44%) minmax(0,1fr);grid-template-areas:"sign copy";column-gap:36px;align-items:start}
  .hero .sign{width:100%}
  .hero .copy{position:relative;isolation:isolate;padding:24px 28px;align-self:start}
  .hero .copy::before{inset:0}
  .hero h1{font-size:clamp(1.5rem,2.3vw,2.5rem)}
  .hero .sub{margin-top:14px;max-width:none}
}

/* round 12 (Brock: "why would you leave all of this space?"): compact hero. No dead meadow below the buttons / card; buttons ride right under the barn.
   PHONE: image is 70px taller than the hero (the bottom of the meadow is cropped) so the barn sits just below the headline;
   hero height tracks the width (about 1.84 x width + 46px) so the barn base is always ~50px above the buttons.
   DESKTOP: image is max(820px, 57vw) tall, pinned top-right; hero is only as tall as the barn's base + 34px. */
@media (max-width:699px){
  .band.cream.hero{background-size:auto calc(100% + 70px);background-position:85% top;padding-bottom:24px}
  .hero .in{min-height:calc(184.2vw + 8px)}
}
@media (min-width:1100px){
  .hero{--hs:max(820px,57vw);min-height:calc(var(--hs)*.72 + 34px);padding-bottom:30px}
  .band.cream.hero{background-size:auto var(--hs);background-position:right top}
  .hero .copy{padding:20px 26px}
  .hero h1{font-size:clamp(1.5rem,2.1vw,2.2rem)}
  .hero .sub{margin-top:10px}
}

/* frozen cuts page: photo grids */
.fgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}
.fgrid.three{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:0}
.fc{margin:0;min-width:0}
.fc img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:8px;border:1px solid #d6c39d;box-shadow:0 8px 18px rgba(70,40,15,.16);background:#e9dcc0}
.fc-img{display:block;border-radius:8px}
.fc-img:focus-visible{outline:3px solid var(--green-ln);outline-offset:3px}
.fc figcaption{margin-top:8px;font:700 .92rem/1.25 var(--cond);letter-spacing:.07em;text-transform:uppercase;color:#3a2412}
.fgrid.three .fc figcaption{display:none}
@media (min-width:700px){.fgrid{grid-template-columns:repeat(3,1fr);gap:16px}}
@media (min-width:1000px){.fgrid{grid-template-columns:repeat(4,1fr)}}

.fgrid.four{grid-template-columns:repeat(2,1fr)}
@media (min-width:900px){.fgrid.four{grid-template-columns:repeat(4,1fr)}}
.fgrid.four .fc img{aspect-ratio:4/5}
.fgrid.signs .fc img{aspect-ratio:4/3;object-fit:contain;background:#f3ebdd}

/* frozen cuts top: one strong photo of the case; on phones it is a banner the words card overlaps, on wider screens the card sits on the photo */
.band.cream.frozenhero{background:url(/a/img/frozen-hero-m.6734617a73.webp) center top/100% auto no-repeat,linear-gradient(rgba(255,251,242,.20),rgba(255,251,242,.20)),url(/a/img/paper-ivory-tile.732e3c450a.webp);background-size:100% auto,auto,1000px;padding-top:calc(55.5vw - 40px)!important;padding-bottom:34px}
.fz-card{max-width:640px;padding:24px 22px;border-radius:14px;background:rgba(250,243,228,.95);box-shadow:0 12px 30px rgba(40,20,5,.30),inset 0 0 0 1px rgba(184,146,74,.55)}
@media (min-width:700px){.band.cream.frozenhero{background:url(/a/img/frozen-hero.5227a1d703.webp) center/cover no-repeat;padding-top:60px!important;padding-bottom:60px}.fz-card{padding:30px 34px;background:rgba(250,243,228,.93);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}}

/* commercial business inquiry form */
.inq-checks{border:0;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.inq-checks legend{font:700 .9rem/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;padding:0}
.inq-checks label{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin:0;padding:8px 14px;border:1px solid #bda985;border-radius:999px;background:#fffaf0;font:600 .95rem/1 var(--body);letter-spacing:0;text-transform:none;cursor:pointer}
.inq-checks input{width:20px;min-height:20px;height:20px;margin:0;accent-color:#4a7a1f}
.inq-checks label:has(input:checked){background:#e9f0d8;border-color:#4a7a1f}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.inq-status{margin:10px 0 0;font-weight:600;min-height:1.4em}
.inq-status.err{color:#8a1f10}
form[hidden],#inq-thanks[hidden]{display:none}

@media (max-width:699px){#inq-form .btn{width:100%}}

.linkgrid{display:grid;grid-template-columns:1fr;gap:0 24px;max-width:760px}
@media (min-width:700px){.linkgrid{grid-template-columns:1fr 1fr}}

/* Legal pages, footer credit, and the optional email/text consent boxes */
.legal{max-width:780px}
.legal h2{margin:30px 0 8px;font-size:1.4rem;line-height:1.2}
.legal p,.legal li{margin:0 0 12px;line-height:1.6}
.legal ul{margin:0 0 12px;padding-left:1.3em}
.legal .upd{margin:6px 0 0;font-size:.95rem;color:#6a5a45}
.legal a{color:#7c3317;text-underline-offset:3px}
.foot .f-disc{display:flex;flex-wrap:wrap;gap:0 22px}
.foot .f-credit{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:10px;margin:2px 0 0;padding-top:14px;border-top:1px solid var(--line-d);font:600 .82rem/1 var(--cond);letter-spacing:.14em;text-transform:uppercase;color:#bcab8d}
.foot .f-credit a{display:inline-flex;align-items:center;min-height:44px;padding:0 6px}
.foot .f-credit img{display:block;width:32px;height:32px}
.inq-consent{border:0;margin:6px 0 0;padding:0}
.inq-consent legend{font:700 .9rem/1 var(--cond);letter-spacing:.12em;text-transform:uppercase;margin-bottom:10px;padding:0}
.inq-consent label.cons{display:flex;align-items:flex-start;gap:12px;margin:0 0 10px;padding:12px 14px;border:1px solid #bda985;border-radius:8px;background:#fffaf0;font:400 .95rem/1.45 var(--body);letter-spacing:0;text-transform:none;cursor:pointer}
.inq-consent label.cons input{flex:none;width:22px;height:22px;min-height:22px;margin:2px 0 0;accent-color:#4a7a1f}
.inq-consent label.cons:has(input:checked){background:#e9f0d8;border-color:#4a7a1f}
.inq-consent .small a{color:#7c3317}
.inq-consent .small{margin:4px 0 0;line-height:1.5;font-size:.9rem}
