/* GFA LAW, PLLC site styles. Green and gold brand, dark base with cream sections. */
:root{
 --ink:#0d1a11;--bg:#10210f;--bg2:#152b17;--surface:#1a331c;--surface2:#21402a;
 --line:rgba(212,175,90,.22);--line2:rgba(212,175,90,.45);
 --gold:#C9A54B;--gold2:#E2C67C;--gold3:#F1DFA9;
 --text:#F3EFE3;--muted:#C4BEA8;--dim:#9b9682;
 --cream:#F7F2E5;--cream2:#EFE7D2;--creamtext:#1d2b1e;--creammuted:#4e5a4c;
 --green:#2d5a33;
 --radius:14px;--radius-sm:9px;--maxw:1180px;--read:760px;
 --shadow:0 18px 50px rgba(0,0,0,.35);--shadow-sm:0 6px 20px rgba(0,0,0,.25);
 --serif:'Playfair Display',Georgia,'Times New Roman',serif;
 --sans:Inter,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;
 --hdr:72px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--hdr) + 16px)}
body{margin:0;background:var(--bg);color:var(--text);font:400 17px/1.7 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--gold2);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover{color:var(--gold3)}
:focus-visible{outline:2px solid var(--gold2);outline-offset:3px;border-radius:4px}
h1,h2,h3,h4{font-family:var(--serif);font-weight:700;line-height:1.15;letter-spacing:-.01em;margin:0 0 .5em;color:#fff}
h1{font-size:clamp(34px,5.2vw,60px)}
h2{font-size:clamp(27px,3.4vw,40px)}
h3{font-size:clamp(20px,2.2vw,24px)}
h4{font-size:18px}
p{margin:0 0 1.05em}
ul,ol{margin:0 0 1.2em;padding-left:1.25em}
li{margin:0 0 .5em}
li::marker{color:var(--gold)}
b,strong{color:#fff;font-weight:650}
hr{border:0;border-top:1px solid var(--line);margin:40px 0}
.skip{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--gold);color:#111;padding:10px 16px;border-radius:0 0 8px 0}
.skip:focus{left:0}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}
.read{max-width:var(--read)}
.center{text-align:center}.center .lede,.center p{margin-left:auto;margin-right:auto}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font:700 12.5px/1.3 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 14px}
.eyebrow::before{content:'';width:26px;height:1.5px;background:var(--gold)}
.center .eyebrow::after{content:'';width:26px;height:1.5px;background:var(--gold)}
.lede{font-size:clamp(17.5px,1.6vw,20px);line-height:1.65;color:var(--muted);max-width:720px}
.sm{font-size:14px;color:var(--dim)}
.gold{color:var(--gold2)}

/* header */
.hdr{position:sticky;top:0;z-index:60;height:var(--hdr);background:rgba(13,26,17,.86);backdrop-filter:saturate(1.3) blur(14px);-webkit-backdrop-filter:saturate(1.3) blur(14px);border-bottom:1px solid var(--line);transition:background .2s}
.hdr-in{max-width:1320px;height:100%;margin:0 auto;padding:0 22px;display:flex;align-items:center;gap:18px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#fff;flex:none}
.brand img{width:44px;height:44px}
.brand-t{display:flex;flex-direction:column;line-height:1.05}
.brand-t b{font:700 19px/1 var(--serif);letter-spacing:.02em}
.brand-t span{font:600 10.5px/1.4 var(--sans);letter-spacing:.2em;color:var(--gold);text-transform:uppercase;margin-top:3px}
.nav{margin-left:auto;height:100%}
.nav>ul{display:flex;align-items:center;height:100%;gap:2px;list-style:none;margin:0;padding:0}
.nav li{position:relative;margin:0}
.nav>ul>li{height:100%;display:flex;align-items:center}
.nav a,.nav button{display:flex;align-items:center;gap:6px;color:#E9E4D3;text-decoration:none;font:500 15px/1 var(--sans);padding:10px 12px;border-radius:8px;background:none;border:0;cursor:pointer;white-space:nowrap}
.nav a:hover,.nav button:hover,.nav li.open>button{color:var(--gold2);background:rgba(212,175,90,.08)}
.nav a[aria-current=page]{color:var(--gold2)}
.nav button svg{width:10px;height:10px;transition:transform .2s}
.nav li.open>button svg{transform:rotate(180deg)}
.nav .sub{display:none;position:absolute;left:50%;transform:translateX(-50%);top:calc(100% - 8px);min-width:300px;list-style:none;margin:0;padding:10px;background:#122515;border:1px solid var(--line2);border-radius:var(--radius);box-shadow:var(--shadow)}
.nav .sub a{padding:11px 12px;white-space:normal;line-height:1.3;border-radius:8px;font-size:14.5px}
.nav .sub a small{display:block;color:var(--dim);font-size:12.5px;margin-top:3px;font-weight:400}
.nav .sub a.in{padding-left:28px}
.nav li.open>.sub{display:block}
@media(hover:hover) and (min-width:1201px){.nav>ul>li:hover>.sub{display:block}.nav>ul>li:hover>button svg{transform:rotate(180deg)}}
.hdr-cta{flex:none}
.menu-btn{display:none;margin-left:auto;width:46px;height:46px;border-radius:10px;border:1px solid var(--line2);background:transparent;color:var(--gold2);cursor:pointer;align-items:center;justify-content:center}
.menu-btn span,.menu-btn span::before,.menu-btn span::after{display:block;width:20px;height:2px;background:currentColor;border-radius:2px;position:relative;transition:.2s}
.menu-btn span::before,.menu-btn span::after{content:'';position:absolute;left:0}
.menu-btn span::before{top:-6px}.menu-btn span::after{top:6px}
body.nav-open .menu-btn span{background:transparent}
body.nav-open .menu-btn span::before{top:0;transform:rotate(45deg)}
body.nav-open .menu-btn span::after{top:0;transform:rotate(-45deg)}
@media(max-width:1200px){
 .menu-btn{display:flex}
 .btn.hdr-cta{display:none}
 .nav{display:none;position:fixed;inset:var(--hdr) 0 0 0;height:auto;background:#0d1a11;overflow:auto;padding:12px 18px 120px;margin:0}
 body.nav-open .nav{display:block}
 body.nav-open{overflow:hidden}
 .nav>ul{flex-direction:column;align-items:stretch;height:auto;gap:0}
 .nav>ul>li{height:auto;display:block;border-bottom:1px solid rgba(212,175,90,.14)}
 .nav a,.nav button{font-size:19px;padding:17px 6px;width:100%;justify-content:space-between;border-radius:0;font-family:var(--serif);font-weight:600}
 .nav .sub{position:static;transform:none;box-shadow:none;border:0;background:transparent;padding:0 0 10px 8px;min-width:0}
 .nav .sub a{font:500 16px var(--sans);padding:12px 8px}
 .nav .sub a small{display:none}
 .nav .m-cta{display:block;margin-top:22px;border:0}
}
.nav .m-cta{display:none}
@media(max-width:1200px){.nav .m-cta{display:block}.nav .m-cta a{justify-content:center;font-family:var(--sans)}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font:650 15.5px/1.25 var(--sans);letter-spacing:.01em;text-decoration:none;padding:14px 24px;border-radius:999px;border:1.5px solid var(--gold);background:var(--gold);color:#16180f!important;transition:transform .15s,background .15s,box-shadow .15s;cursor:pointer;text-align:center}
.btn:hover{background:var(--gold2);border-color:var(--gold2);transform:translateY(-1px);box-shadow:0 10px 24px rgba(201,165,75,.25)}
.btn.ghost{background:transparent;color:var(--gold2)!important}
.btn.ghost:hover{background:rgba(212,175,90,.1);box-shadow:none}
.btn.sm{padding:10px 18px;font-size:14px}
.btn svg{width:17px;height:17px;flex:none}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin:26px 0 0}
.center .btns{justify-content:center}

/* sections */
.sec{padding:clamp(56px,8vw,104px) 0;position:relative}
.sec.tight{padding:clamp(40px,5vw,64px) 0}
.sec.alt{background:var(--bg2)}
.sec.cream{background:var(--cream);color:var(--creamtext)}
.sec.cream h1,.sec.cream h2,.sec.cream h3,.sec.cream h4,.sec.cream b,.sec.cream strong{color:#14301b}
.sec.cream .lede,.sec.cream .muted{color:var(--creammuted)}
.sec.cream a{color:#7a5d17}
.sec.cream a:hover{color:#14301b}
.sec.cream li::marker{color:#a8842d}
.sec.cream .eyebrow{color:#7a5d17}
.sec.cream .eyebrow::before,.sec.cream .eyebrow::after{background:#7a5d17}
.sec-head{margin-bottom:clamp(30px,4vw,48px)}
.sec-head.center{max-width:820px;margin-left:auto;margin-right:auto}
.sec-head h2{margin-bottom:.35em}

/* home hero */
.hero{position:relative;overflow:hidden;padding:clamp(56px,8vw,110px) 0 clamp(48px,7vw,90px);background:radial-gradient(900px 500px at 78% 30%,rgba(60,110,60,.38),transparent 70%),radial-gradient(700px 420px at 10% 100%,rgba(201,165,75,.09),transparent 70%),linear-gradient(180deg,#0f2211,#10210f)}
.hero::after{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(212,175,90,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(212,175,90,.05) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse at 70% 40%,#000 20%,transparent 70%);-webkit-mask-image:radial-gradient(ellipse at 70% 40%,#000 20%,transparent 70%);pointer-events:none}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:clamp(30px,5vw,70px);align-items:center}
.hero h1{font-size:clamp(36px,5.4vw,64px);margin-bottom:.32em}
.hero h1 em{font-style:normal;color:var(--gold2)}
.hero .lede{font-size:clamp(17.5px,1.7vw,20.5px)}
.hero-note{font-size:14.5px;color:var(--dim);margin-top:18px}
.seal-wrap{position:relative;justify-self:center;width:min(420px,80vw);aspect-ratio:1}
.seal-wrap::before{content:'';position:absolute;inset:-22%;background:radial-gradient(closest-side,rgba(226,198,124,.18),rgba(226,198,124,.06) 55%,transparent);filter:blur(24px)}
.seal-wrap img{position:relative;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 22px 40px rgba(0,0,0,.55))}
.hero-firm{margin-top:20px;text-align:center}
.hero-firm b{display:block;font:700 22px/1.2 var(--serif);color:#fff}
.hero-firm span{font:600 12px/1.5 var(--sans);letter-spacing:.22em;color:var(--gold);text-transform:uppercase}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-art{order:-1}.seal-wrap{width:min(230px,58vw)}.hero-firm{display:none}.hero{text-align:center}.hero .lede{margin-left:auto;margin-right:auto}.hero .btns{justify-content:center}.hero .eyebrow::after{content:'';width:26px;height:1.5px;background:var(--gold)}}
.cta-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:30px;max-width:620px}
.cta-stack .btn{width:100%}
@media(max-width:900px){.cta-stack{margin-left:auto;margin-right:auto}}
@media(max-width:520px){.cta-stack{grid-template-columns:1fr}}

/* press strip */
.press{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0d1a11;padding:22px 0}
.press-in{display:flex;align-items:center;gap:26px;flex-wrap:wrap;justify-content:center}
.press-label{font:700 12px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.press-names{display:flex;flex-wrap:wrap;gap:8px 28px;justify-content:center;align-items:center}
.press-names span{font:600 17px/1 var(--serif);color:#e7e1cc;opacity:.9;white-space:nowrap}
.press a{font-size:14px;white-space:nowrap}

/* cards and grids */
.grid{display:grid;gap:clamp(16px,2.4vw,28px)}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1000px){.g4{grid-template-columns:repeat(2,minmax(0,1fr))}.g3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.g2,.g3,.g4{grid-template-columns:1fr}}
.card{position:relative;display:flex;flex-direction:column;background:linear-gradient(180deg,var(--surface),#162d19);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(22px,2.4vw,30px);color:var(--text);text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s}
a.card:hover{transform:translateY(-3px);border-color:var(--line2);box-shadow:var(--shadow-sm);color:var(--text)}
.card h3{margin-bottom:.4em}
.card p{color:var(--muted);font-size:15.5px;margin:0}
.card .more{margin-top:auto;padding-top:18px;font:650 14px var(--sans);color:var(--gold2);display:inline-flex;align-items:center;gap:6px}
.card .more::after{content:'\2192';transition:transform .2s}
a.card:hover .more::after{transform:translateX(4px)}
.sec.cream .card{background:#fff;border-color:#e4d9bb;color:var(--creamtext);box-shadow:0 1px 0 rgba(0,0,0,.02)}
.sec.cream .card p{color:var(--creammuted)}
.sec.cream a.card:hover{border-color:#c9a54b;box-shadow:0 14px 34px rgba(60,50,20,.12)}
.sec.cream .card .more{color:#8a6a1c}
.icon-tile{width:64px;height:64px;border-radius:14px;overflow:hidden;margin-bottom:18px;border:1px solid var(--line2);flex:none}
.icon-tile img{width:100%;height:100%;object-fit:cover}
.sec.cream .icon-tile{border-color:#dccb98}

/* steps */
.steps{counter-reset:s;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,28px)}
@media(max-width:860px){.steps{grid-template-columns:1fr}}
.step{position:relative;padding:28px 26px 26px;border-radius:var(--radius);background:rgba(255,255,255,.03);border:1px solid var(--line)}
.step::before{counter-increment:s;content:counter(s);display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:var(--gold);color:#16180f;font:700 18px var(--serif);margin-bottom:16px}
.step h3{font-size:21px}
.step p{color:var(--muted);font-size:15.5px;margin:0}

/* partners */
.partner{display:grid;grid-template-columns:150px minmax(0,1fr);gap:24px;align-items:start}
.partner img{width:150px;height:150px;border-radius:50%;object-fit:cover;border:3px solid var(--gold);box-shadow:var(--shadow-sm)}
.partner .role{font:700 12px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.partner h3{font-size:28px;margin-bottom:6px}
.partner p{color:var(--muted);font-size:15.5px}
@media(max-width:560px){.partner{grid-template-columns:1fr;text-align:center}.partner img{margin:0 auto}}

/* page hero (inner pages) */
.phero{position:relative;padding:clamp(44px,6vw,80px) 0 clamp(36px,5vw,60px);background:radial-gradient(800px 380px at 85% 0%,rgba(60,110,60,.32),transparent 70%),linear-gradient(180deg,#132816,#10210f);border-bottom:1px solid var(--line);overflow:hidden}
.phero.img{background-size:cover;background-position:center}
.phero h1{margin-bottom:.3em}
.phero .lede{margin-bottom:0}
.crumbs{font-size:13.5px;color:var(--dim);margin:0 0 18px;display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0}
.crumbs li{margin:0;display:flex;gap:6px;align-items:center}
.crumbs li+li::before{content:'/';color:var(--line2)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--gold2)}

/* article layout with sidebar */
.layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:clamp(28px,4vw,60px);align-items:start}
@media(max-width:980px){.layout{grid-template-columns:1fr}}
.prose{font-size:17.5px;max-width:var(--read)}
.prose h2{font-size:clamp(25px,2.6vw,32px);margin-top:1.6em}
.prose h2:first-child{margin-top:0}
.prose h3{margin-top:1.4em}
.prose ul li{padding-left:2px}
.prose blockquote{margin:30px 0;padding:24px 28px;border-left:3px solid var(--gold);background:rgba(212,175,90,.06);border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.prose blockquote p{font:500 clamp(19px,2vw,22px)/1.5 var(--serif);color:#fff;margin:0 0 12px}
.prose blockquote cite{font:600 13.5px var(--sans);font-style:normal;letter-spacing:.06em;color:var(--gold)}
.side{position:sticky;top:calc(var(--hdr) + 22px);display:grid;gap:16px}
@media(max-width:980px){.side{position:static}}
.side-card{background:linear-gradient(180deg,#1d3a21,#162d19);border:1px solid var(--line2);border-radius:var(--radius);padding:26px}
.side-card h3{font-size:22px}
.side-card p{color:var(--muted);font-size:15px}
.side-card .btn{width:100%;margin-top:8px}
.side-card ul{list-style:none;padding:0;margin:0}
.side-card li{margin:0;border-top:1px solid var(--line)}
.side-card li a{display:block;padding:11px 0;text-decoration:none;color:#E9E4D3;font-size:15px}
.side-card li a:hover,.side-card li a[aria-current=page]{color:var(--gold2)}
.facts{list-style:none;padding:0;margin:0}
.facts li{display:flex;gap:12px;padding:12px 0;border-top:1px solid var(--line);margin:0;font-size:15px;color:var(--muted)}
.facts li:first-child{border-top:0}
.facts b{min-width:96px;color:var(--gold2);font-weight:600;font-size:13px;letter-spacing:.04em;text-transform:uppercase;padding-top:2px}

/* faq accordion */
.faq{display:grid;gap:12px;max-width:860px}
.faq details{border:1px solid var(--line);border-radius:var(--radius-sm);background:rgba(255,255,255,.025);transition:border-color .2s,background .2s}
.faq details[open]{border-color:var(--line2);background:rgba(212,175,90,.05)}
.faq summary{cursor:pointer;list-style:none;padding:20px 58px 20px 22px;position:relative;font:650 clamp(17px,1.8vw,19px)/1.4 var(--sans);color:#fff}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'';position:absolute;right:22px;top:50%;width:12px;height:12px;margin-top:-8px;border-right:2px solid var(--gold2);border-bottom:2px solid var(--gold2);transform:rotate(45deg);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(-135deg);margin-top:-2px}
.faq .a{padding:0 22px 8px;color:var(--muted)}
.sec.cream .faq details{background:#fff;border-color:#e4d9bb}
.sec.cream .faq details[open]{border-color:#c9a54b;background:#fffdf6}
.sec.cream .faq summary{color:#14301b}
.sec.cream .faq summary::after{border-color:#9a7726}
.sec.cream .faq .a{color:var(--creammuted)}

/* chips and filters */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 26px}
.chip{font:600 14px var(--sans);padding:9px 16px;border-radius:999px;border:1px solid var(--line2);background:transparent;color:var(--muted);cursor:pointer;transition:.15s}
.chip:hover{color:var(--gold2);border-color:var(--gold)}
.chip[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:#16180f}
.search{width:100%;max-width:420px;padding:13px 16px 13px 44px;border-radius:999px;border:1px solid var(--line2);background:rgba(255,255,255,.04) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23C9A54B' stroke-width='2'%3E%3Ccircle cx='8' cy='8' r='6'/%3E%3Cpath d='m13 13 4 4'/%3E%3C/svg%3E") 16px 50% no-repeat;color:var(--text);font:15px var(--sans);margin-bottom:16px}
.search::placeholder{color:var(--dim)}

/* news cards */
.news-card .meta{font:700 12px var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;display:flex;gap:10px;flex-wrap:wrap}
.news-card h3{font-size:21px;line-height:1.3}
.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.tag{font:600 11.5px var(--sans);letter-spacing:.04em;padding:4px 10px;border-radius:999px;background:rgba(212,175,90,.1);color:var(--gold2);border:1px solid var(--line)}
.coverage{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.coverage li{margin:0}
.coverage a{display:grid;grid-template-columns:170px minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 20px;border:1px solid var(--line);border-radius:var(--radius-sm);text-decoration:none;color:var(--text);background:rgba(255,255,255,.02);transition:.15s}
.coverage a:hover{border-color:var(--line2);background:rgba(212,175,90,.05)}
.coverage .o{font:700 12px var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.coverage .o small{display:block;color:var(--dim);letter-spacing:0;text-transform:none;font-weight:500;font-size:12.5px;margin-top:3px}
.coverage .t{font:600 16px/1.4 var(--serif);color:#fff}
.coverage .x{color:var(--gold2);font-size:13px;white-space:nowrap}
@media(max-width:700px){.coverage a{grid-template-columns:1fr;gap:6px}.coverage .x{display:none}}

/* release article */
.release-head .meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:14.5px;color:var(--muted);margin-bottom:18px}
.release-head p.sub{display:block;font:500 clamp(19px,2vw,23px)/1.45 var(--serif);color:#e8e2cf;max-width:860px}
.release-foot{margin-top:40px;padding-top:24px;border-top:1px solid var(--line);font-size:14px;color:var(--dim)}
.share{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.pn{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:40px}
.pn a{padding:18px 20px;border:1px solid var(--line);border-radius:var(--radius-sm);text-decoration:none;color:var(--text)}
.pn a:hover{border-color:var(--line2)}
.pn small{display:block;color:var(--gold);font:700 11.5px var(--sans);letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.pn span{font:600 15.5px/1.35 var(--serif)}
.pn .next{text-align:right;grid-column:2}
@media(max-width:640px){.pn{grid-template-columns:1fr}.pn .next{grid-column:1;text-align:left}}

/* merch */
.merch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}
@media(max-width:520px){.merch-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
.mcard{display:flex;flex-direction:column;background:#fff;border-radius:12px;overflow:hidden;text-decoration:none;color:#1d2b1e;border:1px solid #e4d9bb;transition:transform .2s,box-shadow .2s}
.mcard:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(0,0,0,.28);color:#1d2b1e}
.mcard .im{aspect-ratio:1;background:#f3eee0;overflow:hidden}
.mcard .im img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.mcard:hover .im img{transform:scale(1.04)}
.mcard .bd{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.mcard .tt{font:600 14px/1.35 var(--sans);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.mcard .pr{margin-top:auto;font:700 14px var(--sans);color:#7a5d17}
.mcount{font-size:14px;color:var(--dim);margin:-10px 0 18px}

/* socials */
.social{display:flex;gap:18px;align-items:center}
.social .ic{width:56px;height:56px;border-radius:14px;flex:none;display:flex;align-items:center;justify-content:center;background:rgba(212,175,90,.1);border:1px solid var(--line2);color:var(--gold2)}
.social .ic svg{width:26px;height:26px}
.social h3{font-size:20px;margin:0 0 2px}
.social p{margin:0}
.social .h{color:var(--gold2);font-size:14px}

/* payment card */
.pay{max-width:520px;margin:0 auto;background:var(--cream);color:var(--creamtext);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.pay-h{background:#14301b;color:#fff;padding:22px 26px;border-bottom:3px solid var(--gold)}
.pay-h h2{font-size:24px;margin:0}
.pay-h p{margin:4px 0 0;color:var(--gold2);font:600 12px var(--sans);letter-spacing:.16em;text-transform:uppercase}
.pay-b{padding:24px 26px 26px}
.pay-b .req{background:#fbf3d9;border:1px solid #e7d49a;border-radius:8px;padding:10px 14px;font-size:14px;margin-bottom:16px}
.pay-b label{display:flex;gap:12px;align-items:flex-start;font-size:15px;line-height:1.5;margin-bottom:14px;cursor:pointer}
.pay-b input{width:20px;height:20px;margin-top:2px;accent-color:#2d5a33;flex:none}
.pay-total{display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-top:1px solid #e4d9bb;margin-top:6px;font-weight:700}
.pay-total span:last-child{font:700 24px var(--serif);color:#14301b}
.pay-btn{width:100%;margin-top:8px}
.pay-btn[aria-disabled=true]{background:#cfc8b4;border-color:#cfc8b4;color:#6b6656!important;pointer-events:none;box-shadow:none}
.pay-note{font-size:13px;color:var(--creammuted);margin:14px 0 0;text-align:center}

/* contact */
.cbox{display:flex;gap:16px;align-items:flex-start}
.cbox .ic{width:48px;height:48px;border-radius:12px;flex:none;display:flex;align-items:center;justify-content:center;background:rgba(212,175,90,.1);border:1px solid var(--line2);color:var(--gold2)}
.cbox .ic svg{width:22px;height:22px}
.cbox h3{font-size:18px;font-family:var(--sans);font-weight:700;margin:0 0 4px;color:#fff}
.cbox p{margin:0;color:var(--muted);font-size:15.5px}
.option{border-top:3px solid var(--gold)}
.photo-banner{position:relative;border-radius:var(--radius);overflow:hidden;border:1px solid var(--line2);box-shadow:var(--shadow);container-type:inline-size;display:block}
.photo-banner img{width:100%;aspect-ratio:2752/1536;object-fit:cover}
.ph-cover{position:absolute;left:43.5%;top:43.65%;width:56%;height:7%;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:rgba(30,26,18,.35);border-radius:6px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 4%,#000 96%,transparent 100%)}
.ph-fix{position:absolute;left:43.5%;top:43.65%;width:56%;height:7%;display:flex;align-items:center;justify-content:center;font-family:Cinzel,Georgia,serif;font-weight:600;letter-spacing:.04em;color:#D9B45A;text-shadow:0 1px 2px rgba(0,0,0,.6);font-size:2.55cqw;white-space:nowrap;text-transform:uppercase}

/* scholarship */
.big1791{font:900 clamp(90px,16vw,200px)/.9 var(--serif);color:transparent;-webkit-text-stroke:1.5px var(--gold);letter-spacing:.02em;text-align:center;margin:0 0 10px;opacity:.9}

/* bios */
.bio-hero{display:grid;grid-template-columns:320px minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center}
.bio-hero img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line2);box-shadow:var(--shadow)}
@media(max-width:820px){.bio-hero{grid-template-columns:1fr}.bio-hero img{max-width:300px;margin:0 auto}.bio-hero>div{text-align:center}.bio-hero .btns{justify-content:center}}
.creds{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
@media(max-width:820px){.creds{justify-content:center}}

/* tools / embeds */
iframe.emb{display:block;width:100%;border:0;background:transparent}
iframe.emb.auto{height:500px;overflow:hidden}
.tool-frame{background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(8px,2vw,22px)}
.tool-card .ic{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(212,175,90,.12);border:1px solid var(--line2);color:var(--gold2);margin-bottom:18px}
.tool-card .ic svg{width:24px;height:24px}

/* CTA band */
.band{position:relative;overflow:hidden;background:radial-gradient(700px 300px at 80% 0%,rgba(226,198,124,.18),transparent 70%),linear-gradient(135deg,#1e3d22,#14301b);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)}
.band-in{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center}
.band h2{margin-bottom:.3em}
.band p{color:var(--muted);margin:0}
@media(max-width:860px){.band-in{grid-template-columns:1fr;text-align:center}.band .btns{justify-content:center}}

/* footer */
.ftr{background:#0b160d;border-top:1px solid var(--line);padding:64px 0 28px;font-size:15px;color:var(--muted)}
.ftr-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:34px}
@media(max-width:900px){.ftr-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.ftr-grid{grid-template-columns:1fr}}
.ftr .brand{margin-bottom:16px}
.ftr .fh{font:700 12.5px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:6px 0 14px}
.ftr ul{list-style:none;padding:0;margin:0}
.ftr li{margin:0 0 9px}
.ftr a{color:#E2DCC8;text-decoration:none}
.ftr a:hover{color:var(--gold2);text-decoration:underline}
.ftr .legal{border-top:1px solid var(--line);margin-top:42px;padding-top:24px;font-size:13px;line-height:1.65;color:var(--dim)}
.ftr .legal p{margin:0 0 10px}

/* mobile call bar */
.callbar{display:none}
@media(max-width:700px){
 .callbar{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:8px;position:fixed;left:0;right:0;bottom:0;z-index:55;background:rgba(11,22,13,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line2);padding:9px 10px calc(9px + env(safe-area-inset-bottom))}
 .callbar .btn{padding:12px 6px;font-size:15px;white-space:nowrap}
 .callbar .btn svg{width:17px;height:17px}
 body{padding-bottom:72px}
}

/* reveal on scroll */
.rv{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}
@media print{.hdr,.ftr,.callbar,.side,.btns{display:none!important}body{background:#fff;color:#000}}
.card-img{width:100%;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-sm)}
.side picture,.side .card-img{display:block}
.card.partner{display:grid}
.card.social{flex-direction:row}
.muted{color:var(--muted)}

.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h2.h3{font-size:21px;line-height:1.3}

/* videos */
.vsecs h2{margin:34px 0 18px}.vsecs h2:first-child{margin-top:0}
.vgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px}
.vcard{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.vcard .bd{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.vcard h3{font-size:19px;margin:0}.vcard p{margin:0;color:var(--muted);font-size:15px}.vcard .more{margin-top:auto;padding-top:6px}
.vid{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#000;cursor:pointer;overflow:hidden}
.vid img{width:100%;height:100%;object-fit:cover;opacity:.88;transition:opacity .2s,transform .3s}
.vid:hover img,.vid:focus-visible img{opacity:1;transform:scale(1.03)}
.vid .play{position:absolute;left:50%;top:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border-radius:50%;background:var(--gold);box-shadow:0 8px 24px rgba(0,0,0,.45)}
.vid .play::after{content:'';position:absolute;left:26px;top:20px;border-left:18px solid #16180f;border-top:12px solid transparent;border-bottom:12px solid transparent}
.vid .len{position:absolute;right:8px;bottom:8px;background:rgba(0,0,0,.78);color:#fff;font:600 12px var(--sans);padding:2px 6px;border-radius:4px}
.vid iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.legal a{text-decoration:underline}
/* site search (Pagefind) */
#search{--pagefind-ui-scale:1;--pagefind-ui-primary:#E2C67C;--pagefind-ui-text:#F2EEE2;--pagefind-ui-background:#132613;--pagefind-ui-border:rgba(212,175,90,.35);--pagefind-ui-tag:#1d351c;--pagefind-ui-border-width:1px;--pagefind-ui-border-radius:10px;--pagefind-ui-font:var(--sans)}
#search .pagefind-ui__result-link{color:var(--gold2)}
#search mark{background:rgba(226,198,124,.25);color:inherit}
.hsearch{display:flex;gap:8px;max-width:520px;margin:22px auto 0}
.hsearch input{flex:1;min-width:0;padding:12px 14px;border-radius:10px;border:1px solid rgba(212,175,90,.35);background:#132613;color:#F2EEE2;font:500 16px var(--sans)}

/* reviews */
.rating{font:600 18px var(--sans);color:var(--text,#F2EEE2);margin:10px 0 0}.rating .stars{color:var(--gold);letter-spacing:2px;font-size:20px}
.quotes figure{margin:0;display:flex;flex-direction:column;justify-content:space-between;gap:14px}
.quotes blockquote{margin:0;font:italic 500 20px/1.45 var(--serif)}
.quotes figcaption{font:600 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--gold2)}

/* ---------- fun: holiday ribbon ---------- */
.hol{position:relative;z-index:59;background:var(--ink);border-bottom:1px solid var(--line);font-size:14.5px;line-height:1.45}
.hol::before{content:'';position:absolute;left:0;right:0;top:0;height:4px;background:var(--holbar,linear-gradient(90deg,var(--gold),var(--gold2)))}
.hol-in{max-width:1320px;margin:0 auto;padding:12px 56px 10px 22px;display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px}
.hol b{color:#fff;font-weight:650}
.hol a{font-weight:600}
.hol-x{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:transparent;color:var(--muted);cursor:pointer;font:400 20px/1 var(--sans)}
.hol-x:hover{color:#fff;border-color:var(--line2)}
.hol-ic{width:22px;height:22px;flex:none;color:var(--holc,var(--gold2))}
html[data-hol]{--holc:var(--gold2)}
html[data-hol=july4],html[data-hol=flag],html[data-hol=memorial],html[data-hol=veterans],html[data-hol=presidents],html[data-hol=patriot],html[data-hol=pearl],html[data-hol=labor]{--holbar:repeating-linear-gradient(90deg,#b22234 0 22px,#fff 22px 44px,#3c3b6e 44px 66px);--holc:#e8e3ff}
html[data-hol=texind],html[data-hol=sanjac],html[data-hol=alamo],html[data-hol=comeandtake]{--holbar:linear-gradient(90deg,#002868 0 33%,#fff 33% 66%,#bf0a30 66%);--holc:#fff}
html[data-hol=christmas]{--holbar:repeating-linear-gradient(135deg,#b3202a 0 14px,#fff 14px 28px,#1f6b34 28px 42px);--holc:#ffd3d3}
html[data-hol=newyear]{--holbar:linear-gradient(90deg,#c9a54b,#fff3c4,#c9a54b,#fff3c4,#c9a54b)}
html[data-hol=valentine],html[data-hol=mothers]{--holbar:linear-gradient(90deg,#e0567a,#ffc2d1,#e0567a);--holc:#ffb3c6}
html[data-hol=stpat]{--holbar:linear-gradient(90deg,#169b62,#fff,#ff883e);--holc:#7be3a8}
html[data-hol=easter]{--holbar:linear-gradient(90deg,#f7c6d9,#fff2a8,#c6e8c9,#c9d8ff,#e2c9ff);--holc:#fff2a8}
html[data-hol=juneteenth]{--holbar:linear-gradient(90deg,#bf0a30,#fff,#002868);--holc:#fff}
html[data-hol=halloween]{--holbar:repeating-linear-gradient(135deg,#ff7a00 0 14px,#111 14px 28px);--holc:#ffab4d}
html[data-hol=thanks],html[data-hol=fathers]{--holbar:linear-gradient(90deg,#8c3b12,#d9822b,#e8b04a,#8c3b12);--holc:#f0b35a}
html[data-hol=columbus]{--holbar:repeating-linear-gradient(90deg,#0b3d6e 0 18px,#e8d7a8 18px 36px);--holc:#bcd8f5}
html[data-hol=constitution],html[data-hol=billofrights],html[data-hol=mlk]{--holbar:linear-gradient(90deg,#c9a54b,#f1dfa9,#c9a54b)}
.fx{position:fixed;inset:0;pointer-events:none;z-index:200}
@media print{.hol,.fx,.seal-x,.term,.toast{display:none!important}}

/* ---------- fun: toast ---------- */
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);opacity:0;z-index:300;max-width:min(92vw,520px);background:#0b150d;color:#F3EFE3;border:1px solid rgba(212,175,90,.45);border-radius:14px;padding:14px 18px;box-shadow:var(--shadow);font-size:15px;transition:opacity .25s,transform .25s}
.toast.on{opacity:1;transform:translate(-50%,0)}
.toast a{font-weight:600;color:#E2C67C}.toast b{color:#fff}

/* ---------- fun: 1791 hunt seals ---------- */
.seal-x{display:inline-flex;width:34px;height:34px;padding:0;border:0;background:transparent;cursor:pointer;opacity:.5;transition:opacity .2s,transform .3s;vertical-align:middle}
.seal-x:hover,.seal-x:focus-visible{opacity:1;transform:rotate(-14deg) scale(1.15)}
.seal-x svg{width:100%;height:100%}
.seal-x.got{opacity:.18;cursor:default;transform:none}
.seal-spot{position:absolute;right:14px;bottom:10px;z-index:2}
.seal-row{text-align:right;padding:6px 22px 0;max-width:var(--maxw);margin:0 auto}

/* ---------- fun: 1791 mode ---------- */
html.y1791{--bg:#efe3c4;--bg2:#e7d8b3;--surface:#f5ecd5;--surface2:#ead9b0;--ink:#2a1a0b;--text:#2b1d0e;--muted:#5a4630;--dim:#6e5a40;--gold:#7a4a12;--gold2:#8a5516;--gold3:#5c3507;--line:rgba(90,60,20,.28);--line2:rgba(90,60,20,.5);--serif:'Cinzel',Georgia,serif}
html.y1791 body{background:#efe3c4 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3'/%3E%3CfeColorMatrix values='0 0 0 0 .35 0 0 0 0 .25 0 0 0 0 .1 0 0 0 .07 0'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E");font-family:Georgia,'Times New Roman',serif}
html.y1791 h1,html.y1791 h2,html.y1791 h3,html.y1791 h4,html.y1791 .card h3,html.y1791 b,html.y1791 strong{color:#2a1a0b}
html.y1791 .hdr{background:rgba(239,227,196,.94)}
html.y1791 .hero,html.y1791 .phero,html.y1791 .sec.alt,html.y1791 .card,html.y1791 footer,html.y1791 .ftr{background:transparent!important;color:#2b1d0e}
html.y1791 .card{border-color:rgba(90,60,20,.35)}
html.y1791 .btn{color:#f7efd9!important}
html.y1791 .btn.ghost{color:#7a4a12!important}
html.y1791 img{filter:sepia(.55) contrast(1.05)}
html.y1791 .brand img{filter:sepia(.3)}
html.y1791 .hero h1 em{color:#7a1d12}
html.y1791 .nav a,html.y1791 .nav button{color:#2b1d0e}

/* ---------- fun: terminal ---------- */
.term{position:fixed;inset:auto 0 0 0;height:min(62vh,520px);z-index:250;background:rgba(5,10,6,.97);border-top:2px solid var(--gold);color:#9dfc9f;font:14.5px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:flex;flex-direction:column;box-shadow:0 -20px 60px rgba(0,0,0,.6)}
.term-out{flex:1;overflow:auto;padding:16px 20px 6px;white-space:pre-wrap;word-break:break-word}
.term-out a{color:#f1dfa9}
.term-out .e{color:#ff9d8a}.term-out .g{color:#f1dfa9}.term-out .d{color:#6f9c70}
.term-in{display:flex;gap:8px;align-items:center;padding:8px 20px 14px;border-top:1px solid rgba(157,252,159,.15)}
.term-in label{color:#f1dfa9;white-space:nowrap}
.term-in input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:#9dfc9f;font:inherit;caret-color:#9dfc9f}
.term-x{position:absolute;right:12px;top:8px;background:transparent;border:1px solid rgba(157,252,159,.3);color:#9dfc9f;border-radius:6px;font:inherit;padding:2px 10px;cursor:pointer}

/* ---------- fun: shared widgets ---------- */
.otd{display:flex;gap:16px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:var(--radius-sm);padding:16px 20px;margin:0}
.otd .ic{width:30px;height:30px;color:var(--gold2);flex:none;margin-top:2px}
.otd p{margin:0;color:var(--muted)}
.otd b{color:#fff}
.game{background:linear-gradient(180deg,var(--surface),#162d19);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(22px,3vw,36px)}
.game .q{font:600 clamp(19px,2.2vw,23px)/1.4 var(--serif);color:#fff;margin-bottom:18px}
.opts{display:grid;gap:10px;margin:0 0 18px;padding:0;list-style:none}
.opts li{margin:0}
.opt{width:100%;text-align:left;font:500 16px/1.45 var(--sans);color:var(--text);background:var(--bg2);border:1.5px solid var(--line);border-radius:12px;padding:14px 16px;cursor:pointer;transition:border-color .15s,background .15s}
.opt:hover:not([disabled]){border-color:var(--gold)}
.opt[disabled]{cursor:default}
.opt.ok{border-color:#58b26a;background:rgba(88,178,106,.14)}
.opt.no{border-color:#d0675b;background:rgba(208,103,91,.12)}
.fb{border-radius:12px;padding:14px 16px;background:var(--bg2);border:1px solid var(--line);margin:0 0 16px}
.fb.ok{border-color:rgba(88,178,106,.6)}.fb.no{border-color:rgba(208,103,91,.6)}
.stats{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}
.stat{background:var(--bg2);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:14px;color:var(--muted)}
.stat b{color:#fff}
.meter{height:8px;border-radius:9px;background:var(--bg2);overflow:hidden;margin:0 0 18px}
.meter i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold2));transition:width .4s}

/* ---------- fun: pocket constitution ---------- */
.toc{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 30px}
.toc a{font-size:14px;text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:6px 12px;color:var(--muted)}
.toc a:hover{border-color:var(--gold);color:#fff}
.cblock{border-top:1px solid var(--line);padding:30px 0 10px}
.cblock h2{font-size:clamp(24px,2.8vw,32px);margin-bottom:.2em}
.cblock .topic{color:var(--gold2);font-size:14px;letter-spacing:.08em;text-transform:uppercase;margin:0 0 14px}
.cblock .sx{margin:0 0 1em}
.cblock .sx b{color:var(--gold2);font-weight:600;margin-right:6px}
.cblock .tools{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 0}
.ctext{font-family:Georgia,'Times New Roman',serif;font-size:18px;line-height:1.75}

/* ---------- fun: wallet card ---------- */
.wc-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:start}
.wc-form label{display:block;font-weight:600;font-size:15px;margin:0 0 6px}
.wc-form input[type=text],.wc-form input[type=tel],.wc-form select{width:100%;font:16px var(--sans);padding:12px 14px;border-radius:10px;border:1.5px solid var(--line2);background:var(--bg2);color:var(--text);margin:0 0 16px}
.wc-form .ck{display:flex;gap:10px;align-items:flex-start;font-weight:500;margin:0 0 12px}
.wc-cards{display:grid;gap:18px;justify-items:center}
.wcard{width:337.5px;height:212.5px;border-radius:14px;padding:16px 18px;box-sizing:border-box;font:12px/1.38 var(--sans);position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}
.wcard.f{background:linear-gradient(135deg,#14301b,#0d1a11);color:#f3efe3;border:1px solid #c9a54b}
.wcard.b{background:#f7f2e5;color:#1d2b1e;border:1px solid #c9a54b}
.wcard h4{font:700 15px/1.2 var(--serif);margin:0 0 8px;color:#e2c67c}
.wcard.b h4{color:#14301b}
.wcard ul{margin:0;padding-left:15px}.wcard li{margin:0 0 3px}
.wcard .ft{position:absolute;left:18px;right:18px;bottom:10px;display:flex;justify-content:space-between;align-items:flex-end;font-size:10.5px;color:#c4bea8}
.wcard.b .ft{color:#4e5a4c}
.wcard .ft img{width:30px;height:30px}
@media (max-width:860px){.wc-wrap{grid-template-columns:1fr}}
@media (max-width:380px){.wcard{transform:scale(.88);transform-origin:top center;margin-bottom:-26px}}
@media print{body.printing-card *{visibility:hidden}body.printing-card .wc-cards,body.printing-card .wc-cards *{visibility:visible}body.printing-card .wc-cards{position:absolute;left:0;top:0;display:block}body.printing-card .wcard{width:3.375in;height:2.125in;box-shadow:none;margin:0 0 .25in;-webkit-print-color-adjust:exact;print-color-adjust:exact;border:1px dashed #999}}

/* ---------- fun: certificate ---------- */
.cert{max-width:880px;margin:0 auto;background:#fbf6e8;color:#2b1d0e;border:10px double #8a6a22;padding:clamp(28px,5vw,60px);text-align:center;font-family:Georgia,'Times New Roman',serif;box-shadow:var(--shadow)}
.cert h2{font:600 clamp(26px,4vw,44px)/1.15 'Cinzel',Georgia,serif;color:#2a1a0b;margin:.2em 0}
.cert .nm{font:italic 700 clamp(28px,4.4vw,46px)/1.2 'Playfair Display',Georgia,serif;color:#14301b;border-bottom:1px solid #8a6a22;display:inline-block;padding:0 24px 4px;margin:10px 0 18px}
.cert p{color:#4a3a22}
.cert .sig{display:flex;justify-content:space-between;gap:20px;margin-top:34px;font-size:14px;color:#4a3a22}
.cert img{width:110px;height:110px;margin:0 auto 10px}
.hunt-list{list-style:none;padding:0;display:grid;gap:10px}
.hunt-list li{display:flex;gap:12px;align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 16px;margin:0}
.hunt-list li.got{border-color:rgba(88,178,106,.6)}
.hunt-list .n{font:700 15px var(--serif);color:var(--gold2);min-width:26px}
@media print{body.printing-cert *{visibility:hidden}body.printing-cert .cert,body.printing-cert .cert *{visibility:visible}body.printing-cert .cert{position:absolute;left:0;top:0;width:100%;box-shadow:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}}
.code-box{display:inline-flex;align-items:center;gap:12px;font:700 clamp(24px,4vw,34px)/1 ui-monospace,Menlo,Consolas,monospace;letter-spacing:.12em;color:#fff;background:var(--bg2);border:2px dashed var(--gold);border-radius:14px;padding:16px 22px;margin:8px 0 16px}
.wcard.b b{color:#14301b}.wcard.f b{color:#fff}
.cert b,.cert strong{color:#2a1a0b}

/* radio */
.eps .ep h3{margin:4px 0 12px}.eps audio{width:100%;margin:0 0 10px;display:block}

/* gun bill tracker */
.bfilters{display:flex;flex-wrap:wrap;gap:6px 22px;align-items:flex-start;margin-bottom:8px}
.bfilters .chips{margin:0 0 14px}.bfilters .search{margin:0 0 14px;max-width:360px}
.bcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:22px;align-items:start}
.bcol h2{font-size:24px;margin:0 0 14px;padding-bottom:10px;border-bottom:3px solid var(--gold)}
.bcol-pro h2{border-color:#4f9a5b}.bcol-anti h2{border-color:#b5523f}.bcol-neutral h2{border-color:var(--dim)}.bcol-unsorted h2{border-color:var(--line2)}
.bcount{font:600 15px var(--sans);color:var(--dim)}
.bill{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 16px;margin:0 0 12px}
.bhead{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}
.bnum{font:700 15.5px var(--sans);color:var(--gold2)}.bj{font-size:12px;letter-spacing:.06em;color:var(--dim);margin-right:2px}
.bst{display:inline-block;font:700 11.5px var(--sans);letter-spacing:.04em;text-transform:uppercase;padding:4px 9px;border-radius:999px}
.st-proposed{background:rgba(201,165,75,.18);color:var(--gold3)}.st-passed{background:#2f6b3a;color:#eaf6ea}.st-dead{background:rgba(255,255,255,.08);color:var(--dim)}
.btitle{margin:8px 0 6px;font-size:15px;line-height:1.5;color:var(--text)}
.bmeta{margin:0 0 10px;font-size:13px;color:var(--dim)}
.bact{display:flex;flex-wrap:wrap;gap:8px}.bact .btn{padding:8px 14px;font-size:13.5px}
.bnone{color:var(--dim);font-size:14px}
.blean{display:inline-block;font:700 12px var(--sans);letter-spacing:.05em;text-transform:uppercase;padding:5px 11px;border-radius:999px;margin-right:6px}
.bl-pro{background:#2f6b3a;color:#eaf6ea}.bl-anti{background:#8e3b2c;color:#fbecea}.bl-neutral,.bl-unsorted{background:rgba(255,255,255,.1);color:var(--muted)}
.btbl{width:100%;border-collapse:collapse;margin:0 0 18px;font-size:15px}
.btbl th{text-align:left;color:var(--dim);font-weight:600;padding:9px 14px 9px 0;width:170px;vertical-align:top}
.btbl td{padding:9px 0;color:var(--text)}.btbl tr+tr{border-top:1px solid var(--line)}
@media(max-width:560px){.btbl th{width:110px}}
.billview{background:#525659;border-radius:var(--radius-sm);padding:12px;display:flex;flex-direction:column;align-items:center;gap:12px;min-height:200px}
.billview .bpage{background:#fff;max-width:100%;height:auto;box-shadow:0 4px 18px rgba(0,0,0,.35)}
.billview .bload,.billview p{color:#eee;margin:auto}.billview a{color:#fff}

.nav a.hot,nav a.hot{color:var(--gold2)!important;font-weight:700}
.bcol h3{font-size:22px;margin:0 0 14px;padding-bottom:10px;border-bottom:3px solid var(--gold)}
.bcol-pro h3{border-color:#4f9a5b}.bcol-anti h3{border-color:#b5523f}.bcol-neutral h3{border-color:var(--dim)}.bcol-unsorted h3{border-color:var(--line2)}
.bhero{background:radial-gradient(1200px 400px at 80% 0,rgba(201,165,75,.16),transparent 60%),linear-gradient(180deg,#14301b,var(--bg))}
.bcount-pill{display:inline-block;margin:6px 0 18px;padding:10px 18px;border-radius:999px;border:1px solid var(--line2);background:rgba(201,165,75,.1);color:var(--gold3);font:600 15px var(--sans)}
.bcount-pill b{font-size:20px;color:#fff;margin-right:2px}
.bstats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:720px;margin:0 0 14px}
.bs{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px 12px;text-align:center}
.bs b{display:block;font:700 clamp(26px,4vw,36px)/1 var(--serif);color:#fff}.bs span{display:block;margin-top:6px;font:600 12.5px var(--sans);letter-spacing:.05em;text-transform:uppercase;color:var(--dim)}
.bs-pro b{color:#8fd19b}.bs-anti b{color:#f08f7c}
@media(max-width:560px){.bstats{gap:6px}.bs{padding:10px 4px}.bs b{font-size:24px}.bs span{font-size:10.5px;letter-spacing:.02em}}
.bmore{width:100%}
.btabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 20px}
.btab{position:relative;text-align:left;cursor:pointer;background:var(--surface);border:1.5px solid var(--line);border-radius:var(--radius-sm);padding:12px 14px;color:var(--muted);font:inherit;transition:.15s}
.btab b{display:block;font:700 16px var(--sans);color:var(--text)}.btab small{display:block;font-size:12.5px;color:var(--dim);margin-top:2px}
.btab .bt-n{position:absolute;top:10px;right:12px;font:700 13px var(--sans);color:var(--gold2)}
.btab:hover{border-color:var(--gold)}
.btab.on{border-color:var(--gold);background:linear-gradient(180deg,rgba(201,165,75,.22),rgba(201,165,75,.08))}.btab.on b{color:var(--gold3)}
.btab:first-child b{font-size:17px}
@media(max-width:760px){.btabs{grid-template-columns:repeat(2,1fr)}}
.bgame-sec{background:var(--bg2)}
.bgame .btn.bpro{background:#2f6b3a;border-color:#2f6b3a;color:#fff}.bgame .btn.banti{background:#8e3b2c;border-color:#8e3b2c;color:#fff}
.bgame .btn[disabled]{opacity:.55;cursor:default}
.btl{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px;counter-reset:s}
.btl li{display:flex;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:16px}
.tl-n{flex:0 0 38px;height:38px;border-radius:50%;background:var(--gold);color:#16180f;font:700 17px var(--sans);display:flex;align-items:center;justify-content:center}
.btl h3{font-size:18px;margin:4px 0 6px}.btl p{margin:0;font-size:14.5px;color:var(--muted)}
.lgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px}
.lcard{background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:var(--radius-sm);padding:18px}
.lcard h3{font-size:19px;margin:2px 0 8px}.lcard p{margin:0 0 8px;font-size:14.8px;color:var(--muted)}.lcard .eyebrow{margin:0 0 4px}

.lawpanel{background:var(--surface);border:1px solid var(--line2);border-radius:var(--radius-sm);padding:12px 16px;margin:0 0 22px}
.lawpanel summary{cursor:pointer;font:700 17px var(--sans);color:var(--text)}.lawpanel summary .eyebrow{display:inline;margin-right:8px}
.lawlist{list-style:none;margin:12px 0 6px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,330px),1fr));gap:8px 22px}
.lawlist li{padding:8px 0;border-top:1px solid var(--line)}.lawlist b{color:var(--gold2)}.lawlist span{display:block;font-size:14px;color:var(--muted)}

/* Pocket Constitution: founding-era lettering */
.chead{font-family:'Pinyon Script','Playfair Display',cursive;font-weight:400;font-size:clamp(46px,6.4vw,82px);line-height:1.1;letter-spacing:0}
.cblock h2{font-family:'Pinyon Script','Playfair Display',cursive;font-weight:400;font-size:clamp(34px,4vw,48px);letter-spacing:0}
.ctext{font-family:'IM Fell English',Georgia,'Times New Roman',serif;font-size:19px;line-height:1.75}

.lb{margin-top:22px;border-top:1px solid var(--line);padding-top:18px}.lb h3{font-size:22px;margin:0 0 12px}
.lbg{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:560px){.lbg{grid-template-columns:1fr}}
.lbl{margin:0;padding-left:22px}.lbl li{padding:5px 0;border-bottom:1px solid var(--line);font-size:15px}.lbl li span{overflow-wrap:anywhere}.lbl li b{float:right;color:var(--gold2);margin-left:10px}
.lbf label{display:block;font-weight:600;margin:12px 0 6px}.lbf div{display:flex;gap:8px;flex-wrap:wrap}.lbf input{flex:1;min-width:180px;padding:10px 12px;border-radius:9px;border:1px solid var(--line2);background:rgba(255,255,255,.05);color:var(--text);font:15px var(--sans)}

.hero-art{display:flex;flex-direction:column;align-items:center}
.playcard{display:none}
@media(max-width:900px){
.playcard{display:flex;align-items:center;gap:12px;width:min(360px,100%);margin:14px auto 0;padding:10px 14px 10px 10px;border:1px solid rgba(201,165,75,.45);border-radius:14px;background:linear-gradient(180deg,rgba(27,58,34,.85),rgba(14,29,17,.85));text-decoration:none;text-align:left;box-shadow:0 6px 18px rgba(0,0,0,.25)}
.playcard:active{transform:scale(.99)}
.playcard:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}
.pc-tiles{display:grid;grid-template-columns:repeat(2,20px);gap:3px;flex:none}
.pc-tiles i{display:grid;place-items:center;width:20px;height:20px;border-radius:4px;background:#2b3a2e;color:#b9b39b;font:700 11px/1 Georgia,serif;font-style:normal}
.pc-tiles i.h{background:#5aa66a;color:#0e1d11}.pc-tiles i.n{background:#c9a54b;color:#16180f}
.pc-txt{flex:1;min-width:0}
.pc-txt b{display:block;color:var(--gold2);font-size:15px;line-height:1.25}
.pc-txt small{display:block;color:var(--dim);font-size:12.5px;line-height:1.3}
.pc-go{flex:none;color:var(--gold2);font-weight:700;font-size:18px}
}

/* daily game */
.dg-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px;margin-bottom:10px}
.dg-head .eyebrow{margin:0}
.dg-title{font:400 clamp(46px,9vw,68px)/1.05 'Pinyon Script','Times New Roman',cursive;color:var(--gold2);margin:2px 0 6px}
.dg-week{display:flex;gap:4px;justify-content:center;margin:0;flex-wrap:wrap}
.dg-week span{font-size:11.5px;font-weight:600;letter-spacing:.06em;padding:3px 8px;border-radius:999px;color:var(--dim);border:1px solid var(--line)}
.dg-week span.on{background:var(--gold);color:#16180f;border-color:var(--gold)}
.dg-how{text-align:center;color:var(--dim);font-size:14.5px;max-width:62ch;margin:10px auto 8px}
.dg-bar{display:flex;justify-content:center;margin:0 0 12px}
.dg-ink{display:flex;gap:8px;align-items:center;font-size:13px;font-weight:600;color:var(--dim)}
.dg-pips{display:flex;gap:3px}
.dg-quill{width:21px;height:21px;display:inline-block;transition:opacity .3s,transform .3s}
.dg-quill.spent{opacity:.18;transform:rotate(-30deg)}
.dg-msg{min-height:24px;text-align:center;margin:12px 0;font-weight:600;color:var(--gold2)}
.dg-reveal{text-align:center;background:#f1e6c8;color:#2a1d07;border-radius:14px;padding:18px;margin-top:6px}
.dg-word{font:600 22px Georgia,serif;letter-spacing:.24em;color:#5b3d0b;margin-bottom:6px}
.dg-reveal blockquote{margin:0 0 6px;font:400 18px/1.4 'IM Fell English',Georgia,serif;border:0;padding:0}
.dg-reveal cite{display:block;font-style:normal;font-size:13px;color:#6b5a35}
.shake{animation:dgshake .4s}
@keyframes dgshake{20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}
/* inkwell */
.iw-rows{display:grid;gap:6px;width:min(330px,100%);margin:0 auto}
.iw-row{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.iw-c{aspect-ratio:1;display:grid;place-items:center;border:2px solid rgba(201,165,75,.25);border-radius:6px;font:400 clamp(26px,8vw,34px)/1 'IM Fell English',Georgia,serif;text-transform:uppercase;color:#fff;background:rgba(14,29,17,.4)}
.iw-c.full{border-color:rgba(201,165,75,.7)}
.iw-c.hit{background:#5aa66a;border-color:#5aa66a;color:#0e1d11}.iw-c.near{background:#c9a54b;border-color:#c9a54b;color:#16180f}.iw-c.miss{background:#2b3a2e;border-color:#2b3a2e;color:#9aa49b}
.iw-c.flip{animation:dgflip .45s ease both}
@keyframes dgflip{0%{transform:rotateX(0)}50%{transform:rotateX(90deg)}100%{transform:rotateX(0)}}
.iw-kb{display:grid;gap:6px;max-width:520px;margin:0 auto;user-select:none}
.iw-kr{display:flex;gap:5px;justify-content:center}
.iw-k{flex:1;max-width:44px;height:52px;border:0;border-radius:6px;background:#3a4a3c;color:#fff;font:600 15px var(--sans);text-transform:uppercase;cursor:pointer;padding:0}
.iw-k.wide{max-width:66px;flex:1.5;font-size:12px}
.iw-k.hit{background:#5aa66a;color:#0e1d11}.iw-k.near{background:#c9a54b;color:#16180f}.iw-k.miss{background:#1d2a1f;color:#6e7a6f}
/* who said it */
.ws-qs{display:grid;gap:10px}
.ws-q{position:relative;text-align:left;width:100%;background:rgba(14,29,17,.45);border:1.5px solid rgba(201,165,75,.28);border-radius:12px;padding:14px 16px 12px 42px;color:#fff;cursor:pointer;font:inherit}
.ws-q:hover{border-color:var(--gold)}
.ws-mark{position:absolute;left:13px;top:6px;font:400 42px/1 'IM Fell English',Georgia,serif;color:var(--gold)}
.ws-t{font:400 18px/1.45 'IM Fell English',Georgia,serif;display:block}
.ws-who,.ws-src{display:none}
.ws-who{margin-top:8px;font-weight:600;font-size:13px;color:var(--gold2)}.ws-src{font-size:12.5px;color:var(--dim)}
.ws-q.sel{border-color:var(--gold2);background:rgba(33,69,42,.8)}
.ws-q.done{cursor:default;border-color:#5aa66a;background:rgba(90,166,106,.12)}
.ws-q.done .ws-who,.ws-q.done .ws-src,.ws-q.reveal .ws-who,.ws-q.reveal .ws-src{display:block}
.ws-q.reveal{cursor:default;border-color:#c4553f}
.ws-fs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:14px}
.ws-f{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-radius:12px;border:1.5px solid rgba(201,165,75,.28);background:rgba(14,29,17,.45);color:#fff;cursor:pointer;font:inherit}
.ws-f img{width:62px;height:62px;border-radius:50%;object-fit:cover;border:2.5px solid var(--gold)}
.ws-f b{font-size:13px;line-height:1.2;text-align:center}.ws-f small{font-size:11px;color:var(--dim);text-align:center;line-height:1.25}
.ws-f.sel{border-color:var(--gold2);transform:translateY(-2px)}.ws-f.used{opacity:.35;cursor:default}
@media(max-width:560px){.ws-fs{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-t{font-size:17px}}
/* timeline */
.tl-ends{display:flex;justify-content:space-between;font:600 11px Georgia,serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:4px 2px 8px}
.tl-scroll{overflow-x:auto;overscroll-behavior-x:contain;padding:4px 2px 10px}
.tl-track{position:relative;display:grid;grid-template-columns:repeat(5,148px);gap:12px;width:max-content;padding-top:6px}
@media(min-width:760px){.tl-track{grid-template-columns:repeat(5,minmax(0,1fr));width:auto}}
.tl-rail{position:absolute;left:0;right:0;bottom:30px;height:3px;background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));border-radius:2px}
.tl-slot{position:relative;display:flex;flex-direction:column;padding-bottom:44px}
.tl-slot::after{content:"";position:absolute;left:50%;bottom:24px;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:var(--bg);border:2.5px solid var(--gold);z-index:1}
.tl-slot.okslot::after{background:#5aa66a;border-color:#5aa66a}
.tl-num{position:absolute;left:0;right:0;bottom:0;text-align:center;font-size:11px;font-weight:600;letter-spacing:.12em;color:var(--dim)}
.tl-ev{min-height:150px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;background:rgba(14,29,17,.55);border:1.5px solid rgba(201,165,75,.3);border-radius:12px;padding:12px 10px 10px;cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.tl-ev .tl-t{font:400 16.5px/1.32 'IM Fell English',Georgia,serif;color:#fff}
.tl-d{display:none;font-weight:600;font-size:12.5px;color:var(--gold2);margin-top:4px}
.tl-ev.show .tl-d{display:block}
.tl-ev.ok{cursor:default;border-color:#5aa66a;background:rgba(90,166,106,.14)}.tl-ev.miss{border-color:#c4553f}.tl-ev.over{cursor:default}.tl-ev.lift{opacity:.25}
.tl-ghost{position:fixed;z-index:50;pointer-events:none;transform:rotate(-2deg) scale(1.04);box-shadow:0 18px 40px rgba(0,0,0,.5);border-color:var(--gold2);background:#21452a}
.tl-grip{display:block;text-align:center;color:rgba(201,165,75,.6);font-size:12px;letter-spacing:2px;line-height:1}
.tl-ev.ok .tl-grip,.tl-ev.over .tl-grip{visibility:hidden}
.tl-mv{display:flex;gap:6px}
.tl-mv button{flex:1;height:28px;border-radius:8px;border:1px solid rgba(201,165,75,.4);background:transparent;color:var(--gold2);font:600 14px var(--sans);cursor:pointer}
.tl-mv button:disabled{opacity:.2;cursor:default}
.tl-hint{display:none;text-align:center;font-size:12.5px;color:var(--dim);margin:2px 0 8px}
@media(max-width:759px){.tl-hint{display:block}}
@media(prefers-reduced-motion:reduce){.dg *{animation:none!important;transition:none!important}}
@media(min-width:1201px) and (max-width:1340px){.nav>ul>li>a,.nav>ul>li>button{padding:10px 7px;font-size:14px}.btn.hdr-cta{padding-left:16px;padding-right:16px;font-size:14px}}

/* daily game layout v2: game first, sized to the screen */
.dg-sec{padding-top:clamp(14px,2.5vw,28px)}
.dg-h1{font:600 12px/1 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--gold);text-align:center;margin:0 0 12px}
.game.dg{padding:clamp(14px,2.4vw,26px) clamp(10px,2.4vw,28px)}
.dg-about{max-width:640px;margin:22px auto 0;color:var(--dim)}
.dg-about p{margin:0 0 10px}
.dg-num{margin:0;font-size:11.5px;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--gold)}
.dg-title{font-size:clamp(44px,7vw,60px);margin:0 0 4px}
.dg-week{gap:3px}
.dg-week span{width:24px;height:24px;padding:0;display:grid;place-items:center;font-size:11px;letter-spacing:0}
.dg-how{margin:8px auto 6px;font-size:14.5px}
.dg-rules{background:none;border:0;padding:0;margin-left:4px;color:var(--gold2);font:600 13.5px var(--sans);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.dg-long{max-width:56ch;margin:0 auto 10px;text-align:center;font-size:14px;color:var(--dim);background:rgba(14,29,17,.5);border:1px solid var(--line);border-radius:10px;padding:10px 14px}
.dg-bar{margin:0 0 10px}
.iw-rows{width:min(100%,330px,max(210px,calc((100dvh - 470px)*.83)));gap:5px}
.iw-row{gap:5px}
.iw-c{font-size:clamp(22px,4.5vh,32px)}
.dg-msg{margin:8px 0;min-height:22px}
@media(max-height:820px){.iw-k{height:46px}}
@media(max-width:600px){.iw-kr{gap:4px}.iw-k{font-size:14px}.iw-kb{gap:5px}}
.tl-slot>.tl-ev{flex:1}
/* inkwell: board beside keyboard on wide screens, stacked and screen-fitted on phones */
.iw-wrap{display:flex;flex-direction:column;gap:4px}
@media(min-width:900px){
 .iw-wrap{display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px;align-items:center}
 .iw-left .iw-rows{width:min(330px,max(220px,calc((100dvh - 380px)*.83)))}
 .iw-kb{max-width:440px;width:100%}
}
@media(max-width:899px){
 .dg-h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
 .dg-sec{padding-top:12px}
 .dg-title{font-size:42px}
 .dg-how{font-size:13.5px;margin:6px auto 4px}
 .dg-bar{margin:0 0 8px}
 .iw-left .iw-rows{width:min(100%,330px,max(200px,calc((100dvh - var(--iwx,500px))*.83)))}
 .iw-k{height:clamp(40px,6.2dvh,54px)}
}
@media(max-width:899px){
 body:has(#dg) .callbar{display:none}
 .game.dg{padding-top:8px;padding-bottom:10px}
 .dg-num,.dg-week{display:none}
 .dg-title{font-size:38px;margin:0}
 .dg-how{margin:2px auto 2px}
 .dg-bar{margin:0 0 6px}
 .iw-left .iw-rows{width:min(100%,330px,max(150px,calc((100dvh - 382px)*.83)))}
 .iw-wrap .dg-msg{margin:4px 0;min-height:20px}
}
.dg-h1{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.iw-kb{width:100%}
@media(min-width:900px){.iw-wrap{grid-template-columns:auto minmax(320px,440px);justify-content:center;gap:36px}}
/* who said it on phones: founders stay pinned at the bottom of the screen */
@media(max-width:899px){
 .ws-qs{gap:8px}
 .ws-q{padding:10px 12px 10px 34px}
 .ws-mark{left:10px;top:4px;font-size:34px}
 .ws-t{font-size:16px;line-height:1.4}
 .ws-fs{position:sticky;bottom:0;z-index:5;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:12px -6px 0;padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(23,48,29,.92),#17301d 30%);border-top:1px solid var(--line);border-radius:12px 12px 0 0}
 .ws-f{padding:6px 2px;gap:4px;background:rgba(14,29,17,.6)}
 .ws-f img{width:44px;height:44px;border-width:2px}
 .ws-f b{font-size:11.5px}
 .ws-f small{display:none}
}
@media(max-width:759px){
 .tl-track{grid-template-columns:repeat(5,122px);gap:8px}
 .tl-ev{min-height:128px;padding:10px 8px 8px;gap:8px}
 .tl-ev .tl-t{font-size:14.5px;line-height:1.3}
 .tl-mv button{height:26px;font-size:13px}
 .tl-ends{margin-bottom:4px}
}

.about-portrait{float:right;width:min(220px,38%);margin:4px 0 12px 22px}.about-portrait img{width:100%;height:auto;border-radius:14px}
