/* T-PAC store styles. Brand tokens live in theme.css only. */
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:var(--body);background:var(--paper);color:var(--ink);line-height:1.55;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}
a{color:inherit;}
button,input,select,textarea{font-family:inherit;font-size:16px;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 16px;}

/* ---------- header ---------- */
.topbar{background:var(--ink);color:#fff;font-size:.78rem;text-align:center;padding:7px 12px;letter-spacing:.06em;}
.topbar strong{color:var(--accent);}
header.site{position:sticky;top:0;z-index:50;background:var(--paper);border-bottom:1px solid var(--line);}
.hrow{display:flex;align-items:center;gap:14px;padding:12px 16px;max-width:var(--maxw);margin:0 auto;}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.logo img{height:44px;width:auto;}
.logo .word{font-family:var(--display);font-size:1.15rem;letter-spacing:.04em;color:var(--ink);}
.logo .word em{font-style:normal;color:var(--accent);}
@media(max-width:430px){.logo .word{display:none;}} /* the logo carries the name on small screens */
.hspace{flex:1;}
.hicon{position:relative;background:none;border:none;cursor:pointer;font-size:1.25rem;padding:8px;min-width:44px;min-height:44px;text-decoration:none;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;}
.hicon .badge{position:absolute;top:2px;right:2px;background:var(--accent);color:var(--accent-ink);font-size:.62rem;font-weight:700;border-radius:100px;min-width:17px;height:17px;display:flex;align-items:center;justify-content:center;padding:0 4px;}
nav.sports{border-top:1px solid var(--line);overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
nav.sports::-webkit-scrollbar{display:none;}
nav.sports .in{max-width:var(--maxw);margin:0 auto;padding:0 10px;display:flex;}
nav.sports a{display:inline-block;padding:11px 13px;font-weight:600;font-size:.86rem;letter-spacing:.05em;text-transform:uppercase;text-decoration:none;color:var(--ink);border-bottom:3px solid transparent;}
nav.sports a.active{border-bottom-color:var(--accent);color:var(--accent);}
nav.sports a.util{color:var(--muted);font-weight:500;}
nav.sports a:focus-visible,.hicon:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;}

/* ---------- hero + bands ---------- */
.hero{position:relative;background:var(--ink);color:#fff;overflow:hidden;}
.hero .in{max-width:var(--maxw);margin:0 auto;padding:64px 16px 84px;position:relative;z-index:2;}
.hero .slash{position:absolute;inset:0;z-index:1;background:linear-gradient(115deg,transparent 55%,var(--accent) 55.2%,var(--accent) 62%,transparent 62.2%),linear-gradient(115deg,transparent 66%,rgba(255,255,255,.12) 66.2%,rgba(255,255,255,.12) 69%,transparent 69.2%);}
h1.display{font-family:var(--display);font-size:clamp(2.3rem,8vw,4.2rem);line-height:1.02;letter-spacing:.01em;text-transform:uppercase;}
h1.display em{font-style:normal;color:var(--accent);}
.hero p.sub{max-width:480px;margin:16px 0 26px;color:rgba(255,255,255,.82);font-size:1.05rem;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:50px;padding:13px 26px;border:none;border-radius:var(--radius);font-family:var(--display);font-size:1rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;text-decoration:none;background:var(--accent);color:var(--accent-ink);transition:transform .1s;}
.btn:hover{transform:translateY(-2px);}
.btn:focus-visible{outline:3px solid var(--ink);outline-offset:2px;}
.btn.ghost{background:transparent;color:#fff;border:2px solid #fff;}
.btn.dark{background:var(--ink);color:#fff;}
.btn.onlight{border-color:var(--ink);color:var(--ink);}
.btn:disabled{opacity:.5;cursor:default;}
.btnrow{display:flex;gap:12px;flex-wrap:wrap;}

section.band{padding:44px 0;}
section.band.gray{background:var(--panel);}
section.band.dark{background:var(--ink);color:#fff;}
h2.bandtitle{font-family:var(--display);font-size:clamp(1.4rem,4.5vw,2rem);text-transform:uppercase;letter-spacing:.02em;margin-bottom:18px;}
h2.bandtitle em{font-style:normal;color:var(--accent);}
.bandhead{display:flex;align-items:baseline;gap:14px;margin-bottom:18px;}
.bandhead a.more{margin-left:auto;font-size:.85rem;font-weight:600;color:var(--muted);text-decoration:none;}
.bandhead a.more:hover{color:var(--accent);}

/* ---------- sport cards ---------- */
.sportgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;}
a.sportcard{position:relative;display:block;background:var(--ink);color:#fff;border-radius:var(--radius);padding:22px 14px 16px;text-decoration:none;overflow:hidden;min-height:110px;}
a.sportcard .bg{position:absolute;right:-12px;bottom:-22px;font-family:var(--display);font-size:4.6rem;color:rgba(255,255,255,.07);text-transform:uppercase;pointer-events:none;line-height:1;}
a.sportcard .nm{font-family:var(--display);font-size:1.15rem;text-transform:uppercase;letter-spacing:.03em;position:relative;}
a.sportcard .st{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-weight:700;position:relative;}
a.sportcard.live{background:var(--accent);}
a.sportcard.live .st{color:#fff;}
a.sportcard.live .bg{color:rgba(0,0,0,.12);}
a.sportcard:hover{transform:translateY(-2px);transition:transform .12s;}
/* COMING SOON badges: tile pill (top right) + tiny nav tag. Driven by
   each sport's comingSoon flag in js/store.js; flipping the flag to
   false removes both. */
.sportcard .soonbadge{position:absolute;top:10px;right:10px;z-index:1;font-family:var(--display);font-size:.58rem;letter-spacing:.1em;background:var(--accent);color:#fff;border-radius:100px;padding:3px 10px;}
a.sportcard.live .soonbadge{display:none;}
.sports .navsoon{display:inline-block;font-family:var(--display);font-size:.52rem;letter-spacing:.08em;background:var(--accent);color:#fff;border-radius:100px;padding:1px 7px;vertical-align:2px;margin-left:2px;}

/* ---------- product grid ---------- */
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
@media(min-width:700px){.grid{grid-template-columns:repeat(4,1fr);}}
a.pcard{display:block;text-decoration:none;color:var(--ink);}
.pcard .imgbox{position:relative;background:var(--panel);border-radius:var(--radius);overflow:hidden;aspect-ratio:6/7;}
.pcard .imgbox img{width:100%;height:100%;object-fit:cover;}
/* wide composites (dress front/back/shorts): the card shows the FULL
   image. Every dress image is normalized to the same 1600x904 canvas
   with garments at full height, so the box takes that exact shape and
   all dress cards render the artwork at one uniform, large scale. */
.pcard .imgbox.wide{background:#fff;border:1px solid var(--line);aspect-ratio:1600/904;}
.pcard .imgbox.wide img{object-fit:contain;}
.pcard .cs{position:absolute;top:10px;left:10px;background:var(--ink);color:#fff;font-size:.62rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:4px 9px;border-radius:100px;}
.pcard .tt{font-weight:600;font-size:.92rem;margin:9px 0 2px;line-height:1.3;}
.pcard .pr{font-family:var(--display);font-size:1rem;color:var(--ink);}
.pcard .ct{font-size:.74rem;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;}

/* ---------- SHOP THE DESIGNS tiles (home, under the hero) ---------- */
.tilegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;}
@media(min-width:640px){.tilegrid{grid-template-columns:repeat(3,1fr);}}
@media(min-width:1000px){.tilegrid{grid-template-columns:repeat(6,1fr);gap:16px;}}
a.dtile{display:block;text-decoration:none;color:var(--ink);transition:transform .15s ease, box-shadow .15s ease;border-radius:var(--radius);}
a.dtile .im{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;aspect-ratio:1/1;}
a.dtile .im img{width:100%;height:100%;object-fit:contain;padding:8%;box-sizing:border-box;}
a.dtile .lbl{font-weight:700;font-size:.9rem;text-align:center;margin-top:9px;letter-spacing:.02em;}
a.dtile:hover{transform:translateY(-3px);box-shadow:0 10px 22px rgba(11,31,77,.12);}
a.dtile:focus-visible{outline:2px solid var(--accent);outline-offset:2px;}

/* ---------- chips / filters ---------- */
.chips{display:flex;gap:8px;overflow-x:auto;padding:4px 0 12px;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
.chips::-webkit-scrollbar{display:none;}
.chip{flex:0 0 auto;border:1.5px solid var(--line);background:var(--paper);border-radius:100px;padding:9px 16px;font-size:.82rem;font-weight:600;cursor:pointer;text-decoration:none;color:var(--ink);min-height:40px;display:inline-flex;align-items:center;}
.chip.sel{background:var(--ink);color:#fff;border-color:var(--ink);}
.chip:focus-visible{outline:2px solid var(--accent);}

/* ---------- product page ---------- */
.pd{display:grid;gap:22px;padding:22px 0 90px;}
@media(min-width:840px){.pd{grid-template-columns:1.1fr 1fr;padding-top:34px;}}
/* The full product image always fits inside the frame, centered on
   white, nothing cropped: wide front+back design images (vests,
   dresses) and square catalog photos both show completely. */
.gallery .main{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;aspect-ratio:6/7;}
.gallery .main img{width:100%;height:100%;object-fit:contain;}
/* wide composites (dresses): let the frame take the image's own shape
   so front/back/shorts render LARGE edge to edge, and zoom on click */
.gallery .main.wide{aspect-ratio:auto;}
.gallery .main.wide img{height:auto;cursor:zoom-in;}
.lightbox{position:fixed;inset:0;z-index:90;background:rgba(10,10,10,.88);overflow:auto;cursor:zoom-out;display:flex;}
.lightbox img{margin:auto;max-width:none;width:min(1600px,160vw);display:block;padding:20px;box-sizing:border-box;}
.thumbs{display:flex;gap:8px;margin-top:8px;overflow-x:auto;}
.thumbs button{flex:0 0 64px;height:72px;border:2px solid var(--line);border-radius:8px;overflow:hidden;background:var(--panel);cursor:pointer;padding:0;}
.thumbs button.sel{border-color:var(--accent);}
.thumbs img{width:100%;height:100%;object-fit:cover;}
h1.ptitle{font-family:var(--display);font-size:clamp(1.5rem,5vw,2.1rem);text-transform:uppercase;line-height:1.1;}
.pprice{font-family:var(--display);font-size:1.5rem;margin:8px 0 4px;}
label.f{display:block;font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:14px 2px 6px;}
select.f,input.f,textarea.f{width:100%;border:1.5px solid var(--line);border-radius:var(--radius);padding:12px 13px;background:var(--paper);color:var(--ink);min-height:48px;}
select.f:focus,input.f:focus,textarea.f:focus{outline:2px solid var(--accent);border-color:var(--accent);}
.persrow{display:grid;grid-template-columns:1.2fr .6fr 1.2fr;gap:8px;}
.qtyrow{display:flex;align-items:center;gap:10px;margin-top:14px;}
.qtyrow button{width:46px;height:46px;border:1.5px solid var(--line);background:var(--paper);border-radius:var(--radius);font-size:1.2rem;cursor:pointer;}
.qtyrow span{font-family:var(--display);font-size:1.15rem;min-width:34px;text-align:center;}
.desc{margin-top:22px;color:#333;font-size:.95rem;}
.desc p{margin-bottom:10px;}
.sizelink{font-size:.83rem;color:var(--muted);text-decoration:underline;}
.stickyatc{position:fixed;left:0;right:0;bottom:0;z-index:45;background:var(--paper);border-top:1px solid var(--line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));display:flex;gap:10px;align-items:center;}
.stickyatc .pr{font-family:var(--display);font-size:1.2rem;}
.stickyatc .btn{flex:1;}
@media(min-width:840px){.stickyatc{position:static;padding:16px 0 0;border:none;}}

/* ---------- cart / forms / tables ---------- */
.cartline{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);}
.cartline .im{flex:0 0 76px;height:88px;background:var(--panel);border-radius:8px;overflow:hidden;}
.cartline .im img{width:100%;height:100%;object-fit:cover;}
.cartline .info{flex:1;font-size:.9rem;}
.cartline .rm{background:none;border:none;color:var(--muted);text-decoration:underline;cursor:pointer;font-size:.78rem;padding:6px 0;}
.note{font-size:.8rem;color:var(--muted);}
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:18px 16px;margin-bottom:14px;}
.err{background:#FDECEA;border:1px solid #E2483D;color:#B3261E;border-radius:var(--radius);padding:11px 13px;font-size:.86rem;margin-top:12px;display:none;}
.okmsg{background:#EAF7EE;border:1px solid #2E9E5B;color:#19603A;border-radius:var(--radius);padding:11px 13px;font-size:.86rem;margin-top:12px;display:none;}
table.data{width:100%;border-collapse:collapse;font-size:.86rem;}
table.data th{font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);text-align:left;}
table.data td,table.data th{padding:8px 8px;border-bottom:1px solid var(--line);vertical-align:top;}

/* ---------- coming soon ---------- */
.soonhero{background:var(--panel);border-radius:var(--radius);padding:34px 20px;position:relative;overflow:hidden;margin-bottom:22px;}
.soonhero .big{font-family:var(--display);font-size:clamp(2.6rem,13vw,6rem);text-transform:uppercase;line-height:.95;color:transparent;-webkit-text-stroke:2px var(--ink);}
.soonhero .tagline{margin-top:8px;font-weight:600;}
.soonform{display:flex;gap:8px;margin-top:14px;max-width:440px;}
.soonform input{flex:1;}

/* ---------- footer ---------- */
footer.site{background:var(--ink);color:#fff;margin-top:56px;padding:40px 0 30px;}
footer.site .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:22px;max-width:var(--maxw);margin:0 auto;padding:0 16px;}
footer.site h4{font-family:var(--display);font-size:.9rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;color:var(--accent);}
footer.site a{display:block;color:rgba(255,255,255,.75);text-decoration:none;font-size:.86rem;padding:4px 0;}
footer.site a:hover{color:#fff;}
footer.site .fine{max-width:var(--maxw);margin:26px auto 0;padding:16px 16px 0;border-top:1px solid rgba(255,255,255,.14);font-size:.75rem;color:rgba(255,255,255,.5);}
.social{display:flex;gap:12px;margin-top:6px;}
.social a{font-size:1.1rem;padding:6px;}

/* ---------- Marcus, the design assistant ---------- */
.marcusband{display:flex;gap:20px;align-items:center;flex-wrap:wrap;background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px;}
.marcusband .pic{flex:0 0 96px;width:96px;height:96px;border-radius:50%;overflow:hidden;background:var(--ink);}
.marcusband .pic img{width:100%;height:100%;object-fit:cover;}
.marcusband .who{flex:1;min-width:230px;}
.marcusband .who strong{font-family:var(--display);font-size:1.15rem;letter-spacing:.03em;text-transform:uppercase;display:block;margin-bottom:4px;}
.marcusband p{font-size:.92rem;margin:0 0 12px;}

/* ---------- StrikeMaster feature block (bowling page) ---------- */
.smband{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:var(--ink);color:#fff;border-radius:var(--radius);padding:18px 20px;margin:4px 0 20px;}
.smband .smlogo{flex:0 0 86px;width:86px;height:86px;object-fit:cover;border-radius:14px;}
.smband .smtext{flex:1;min-width:220px;}
.smband h2{font-family:var(--display);font-size:1.25rem;letter-spacing:.03em;text-transform:uppercase;margin:0 0 6px;color:#fff;}
.smband p{font-size:.9rem;margin:0;color:rgba(255,255,255,.85);}
.smband .smcoach{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#F2B8BC;margin:0 0 6px;}
.smband .btn{flex:0 0 auto;}
@media(max-width:560px){.smband .btn{flex:1 1 100%;text-align:center;}}

/* ---------- Marcus band (sits DIRECTLY under the StrikeMaster
   band on sport pages: StrikeMaster first, then Marcus) ---------- */
.mcband{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:var(--ink);color:#fff;border-radius:var(--radius);padding:18px 20px;margin:-8px 0 20px;}
.mcband .mcpic{flex:0 0 86px;width:86px;height:86px;border-radius:50%;overflow:hidden;background:#fff;}
.mcband .mcpic img{width:100%;height:100%;object-fit:cover;}
.mcband .mctext{flex:1;min-width:220px;}
.mcband h2{font-family:var(--display);font-size:1.25rem;letter-spacing:.03em;text-transform:uppercase;margin:0 0 6px;color:#fff;}
.mcband .mcrole{font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#F2B8BC;margin:0 0 6px;}
.mcband p{font-size:.9rem;margin:0;color:rgba(255,255,255,.85);}
.mcband .btn{flex:0 0 auto;}
@media(max-width:560px){.mcband .btn{flex:1 1 100%;text-align:center;}}

/* ---------- homepage duo: StrikeMaster + Marcus side by side
   (StrikeMaster first in the DOM; stacks in that order on mobile) */
.duoband{display:grid;gap:16px;grid-template-columns:1fr;}
@media(min-width:880px){.duoband{grid-template-columns:1fr 1fr;align-items:stretch;}}
.duoband .duocard{border-radius:var(--radius);padding:26px 24px;display:flex;flex-direction:column;align-items:flex-start;gap:10px;}
.duoband .duocard h2{font-family:var(--display);font-size:1.4rem;letter-spacing:.03em;text-transform:uppercase;margin:0;color:#fff;}
.duoband .duocard p{margin:0;color:rgba(255,255,255,.88);font-size:.95rem;}
.duoband .smside{background:var(--accent);color:#fff;}
.duoband .mcside{background:var(--ink);color:#fff;}
.duoband .mcside .mcpic{width:84px;height:84px;border-radius:50%;overflow:hidden;background:#fff;flex:0 0 84px;}
.duoband .mcside .mcpic img{width:100%;height:100%;object-fit:cover;}
.duoband .duocard .btn{margin-top:auto;}

.studio{display:grid;grid-template-columns:1fr;gap:18px;margin-bottom:60px;}
@media(min-width:900px){.studio{grid-template-columns:minmax(320px,440px) 1fr;align-items:start;}}
.chatpanel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;height:70vh;min-height:420px;}
.chatpanel .head{display:flex;gap:10px;align-items:center;padding:12px 14px;border-bottom:1px solid var(--line);}
.chatpanel .head .pic{width:42px;height:42px;border-radius:50%;overflow:hidden;background:var(--ink);flex:0 0 42px;}
.chatpanel .head .pic img{width:100%;height:100%;object-fit:cover;}
.chatpanel .head strong{font-family:var(--display);letter-spacing:.04em;}
.chatpanel .head .sub{font-size:.72rem;color:var(--muted);}
.voicetgl{margin-left:auto;background:none;border:1px solid var(--line);border-radius:20px;padding:6px 12px;font-size:.76rem;cursor:pointer;color:var(--muted);}
.voicetgl.on{background:var(--ink);color:#fff;border-color:var(--ink);}
.chatlog{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px;}
.msg{max-width:88%;padding:10px 13px;border-radius:14px;font-size:.92rem;line-height:1.45;white-space:pre-wrap;}
.msg.marcus{background:var(--panel);border:1px solid var(--line);border-bottom-left-radius:4px;align-self:flex-start;}
.msg.client{background:var(--ink);color:#fff;border-bottom-right-radius:4px;align-self:flex-end;}
.msg.sys{background:none;color:var(--muted);font-size:.78rem;align-self:center;text-align:center;padding:2px;}
.msg img.upl{max-width:160px;border-radius:8px;display:block;margin-top:6px;}
.chatbar{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line);align-items:flex-end;}
.chatbar textarea{flex:1;resize:none;border:1px solid var(--line);border-radius:10px;padding:10px 12px;font:inherit;font-size:.92rem;max-height:110px;}
.chatbar .send{background:var(--accent);color:#fff;border:none;border-radius:10px;padding:10px 16px;font-weight:700;cursor:pointer;}
.chatbar .icnbtn{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:10px 12px;cursor:pointer;font-size:1rem;}
.chatbar .icnbtn.listening{background:var(--accent);color:#fff;border-color:var(--accent);animation:pulse 1.2s infinite;}
@keyframes pulse{50%{opacity:.6;}}
.livetranscript{font-size:.78rem;color:var(--muted);padding:0 14px 8px;font-style:italic;}

.mockpanel{min-height:420px;}
.mockpanel .ph{background:var(--panel);border:2px dashed var(--line);border-radius:var(--radius);padding:60px 20px;text-align:center;color:var(--muted);font-size:.9rem;}
.optgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;}
.optcard{border:2px solid var(--line);border-radius:var(--radius);overflow:hidden;cursor:pointer;background:var(--paper);position:relative;}
.optcard.sel{border-color:var(--accent);}
.optcard.sel::after{content:"Selected";position:absolute;top:8px;right:8px;background:var(--accent);color:#fff;font-size:.68rem;font-weight:700;padding:3px 8px;border-radius:10px;}
.optcard img{width:100%;aspect-ratio:1;object-fit:cover;display:block;}
.optcard .gen{aspect-ratio:1;display:flex;align-items:center;justify-content:center;color:var(--muted);font-size:.8rem;background:var(--panel);animation:pulse 1.4s infinite;}
.verstrip{display:flex;gap:8px;overflow-x:auto;padding:10px 0;}
.verstrip img{width:64px;height:64px;object-fit:cover;border-radius:8px;border:2px solid var(--line);cursor:pointer;flex:0 0 64px;}
.verstrip img.sel{border-color:var(--accent);}
.approvebox{margin-top:14px;}
.designcode{font-family:var(--display);letter-spacing:.06em;background:var(--ink);color:#fff;display:inline-block;padding:4px 12px;border-radius:8px;}

.gallerygrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;}
.gcard{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper);cursor:pointer;}
.gcard img{width:100%;aspect-ratio:1;object-fit:cover;display:block;background:var(--panel);}
.gcard .meta{padding:9px 10px;font-size:.78rem;}
.gcard .meta .cd{font-weight:700;}
.gcard .meta .st{color:var(--muted);text-transform:capitalize;}

h1.page{font-family:var(--display);font-size:clamp(1.6rem,5vw,2.3rem);text-transform:uppercase;margin:26px 0 16px;}
.center{text-align:center;}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important;}}
