/* Velo Républiqué — design system. Palette lifted from the crest: sky, star-yellow, ink, paper. */
@font-face{font-family:"Bebas Neue";src:url(/fonts/bebas-neue-latin-400-normal.woff2) format("woff2");font-display:swap}
@font-face{font-family:"Inter";src:url(/fonts/inter-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-display:swap}
@font-face{font-family:"Fraunces";src:url(/fonts/fraunces-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:"Fraunces";src:url(/fonts/fraunces-latin-wght-italic.woff2) format("woff2");font-weight:100 900;font-style:italic;font-display:swap}
:root{--ink:#0e0e0e;--paper:#faf7f0;--cream:#f1ead9;--sky:#5bb5f2;--sky-d:#2b7bb5;--star:#f6e83b;--navy:#0b3a5c;--mut:#5d5a52;--line:#0e0e0e1f;
--d:"Bebas Neue","Oswald",Impact,sans-serif;--s:"Fraunces",Georgia,serif;--b:"Inter",system-ui,sans-serif;--r:14px;--wrap:1280px;--ease:cubic-bezier(.2,.7,.2,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 17px/1.6 var(--b);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}a{color:inherit}a:hover{color:var(--sky-d)}
h1,h2,h3,h4{margin:0;line-height:1.05;font-weight:400}p{margin:0 0 1em}ul{padding:0}
:focus-visible{outline:3px solid var(--sky-d);outline-offset:3px;border-radius:4px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.hp{position:absolute;left:-9999px;opacity:0}
.skip{position:absolute;left:-999px;top:8px;background:var(--star);color:var(--ink);padding:10px 16px;z-index:200;border-radius:8px;font-weight:700}.skip:focus{left:8px}
.wrap{width:min(var(--wrap),100% - 48px);margin-inline:auto}.narrow{width:min(760px,100% - 48px)}.narrow-lg{width:min(980px,100% - 48px);margin-inline:auto}.center{text-align:center}.right{text-align:right}.muted{color:var(--mut)}.note{font-size:.88rem}
.section{padding:clamp(56px,9vw,120px) 0}.bg-cream{background:var(--cream)}.dark{background:var(--ink);color:var(--paper)}.page-pad{padding:120px 0}
.eyebrow{font:600 .78rem/1 var(--b);letter-spacing:.22em;text-transform:uppercase;color:var(--sky-d);margin:0 0 14px}.eyebrow.on-dark{color:var(--star)}.eyebrow a{text-decoration:none}
.display{font-family:var(--d);font-size:clamp(3rem,8vw,6.5rem);letter-spacing:.06em;text-transform:uppercase;line-height:.95}.display.sm{font-size:clamp(2.2rem,5vw,3.8rem)}
.lede{font:italic 400 clamp(1.15rem,2vw,1.45rem)/1.5 var(--s);color:var(--mut);max-width:44ch}
.more{font-weight:600;text-decoration:none;border-bottom:2px solid var(--star);padding-bottom:2px;white-space:nowrap}.more:hover{border-color:var(--ink);color:inherit}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 .82rem/1 var(--b);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding:17px 26px;border:2px solid var(--ink);border-radius:999px;cursor:pointer;transition:transform .25s var(--ease),background .2s,color .2s,box-shadow .25s;background:transparent;color:var(--ink)}
.btn:hover{transform:translateY(-2px);color:inherit}.btn-ink{background:var(--ink);color:var(--paper)}.btn-ink:hover{background:var(--sky-d);border-color:var(--sky-d);color:#fff;box-shadow:0 10px 24px #2b7bb540}
.btn-star{background:var(--star);border-color:var(--star);color:var(--ink)}.btn-star:hover{background:#fff;border-color:#fff}.btn-ghost{border-color:#fff;color:#fff}.btn-ghost:hover{background:#fff;color:var(--ink)}.btn-ghost-ink{border-color:var(--ink)}.btn-line:hover{background:var(--ink);color:var(--paper)}.btn-lg{padding:20px 38px;font-size:.9rem}.disabled{opacity:.5;pointer-events:none}
.flash{margin:0;padding:14px 24px;text-align:center;font-weight:600;background:var(--star)}.flash.err{background:#ffd9d2}
.tag{display:inline-block;font:700 .65rem/1 var(--b);letter-spacing:.14em;text-transform:uppercase;background:var(--star);color:var(--ink);padding:6px 9px;border-radius:5px}.tag-ink{background:var(--ink);color:var(--paper)}

/* header */
.announce{background:var(--ink);color:var(--paper);text-align:center;font-size:.8rem;letter-spacing:.06em;padding:9px 16px}.announce p{margin:0}
.site-header{position:sticky;top:0;z-index:100;display:flex;align-items:center;gap:32px;padding:10px clamp(16px,3vw,40px);background:#faf7f0ee;backdrop-filter:blur(12px);border-bottom:2px solid var(--ink)}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{height:46px;width:auto}.brand-word{display:flex;flex-direction:column;line-height:.9}.brand-word b{font:400 1.75rem var(--d);letter-spacing:.32em}.brand-word i{font:400 .78rem var(--d);letter-spacing:.44em;font-style:normal;margin-top:3px}
.nav{display:flex;gap:30px;margin-left:auto}.nav a{font:600 .78rem var(--b);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:8px 0;position:relative}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:3px;background:var(--star);transition:right .3s var(--ease)}.nav a:hover::after,.nav a[aria-current]::after{right:0}.nav a:hover{color:var(--ink)}
.head-tools{display:flex;align-items:center;gap:6px}.tool{display:inline-flex;position:relative;padding:8px;text-decoration:none;font:600 .78rem var(--b);letter-spacing:.12em;text-transform:uppercase}.tool svg{width:26px;height:26px}.badge{position:absolute;top:0;right:-2px;background:var(--star);border:2px solid var(--ink);border-radius:99px;font:700 .68rem/1 var(--b);min-width:20px;height:20px;display:grid;place-items:center}
.burger{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer;position:relative}.burger span{position:absolute;left:10px;right:10px;height:3px;background:var(--ink);transition:.3s var(--ease)}.burger span:first-child{top:16px}.burger span:last-child{top:25px}.burger[aria-expanded=true] span:first-child{top:21px;transform:rotate(45deg)}.burger[aria-expanded=true] span:last-child{top:21px;transform:rotate(-45deg)}

/* hero */
.hero{position:relative;min-height:calc(100svh - 120px);min-height:min(900px,calc(100svh - 120px));display:grid;align-items:end;color:#fff;overflow:hidden;background:var(--navy);isolation:isolate}
.hero .slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.04);transition:opacity 1.4s ease,transform 9s ease-out;z-index:-2}.hero .slide.on{opacity:1;transform:scale(1.12)}
.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0000 30%,#000a 100%),linear-gradient(90deg,#0008,#0000 65%)}
.hero-inner{padding:clamp(40px,8vw,110px) 0 clamp(70px,9vw,130px)}.hero-title{font:400 clamp(4.5rem,15.5vw,13.5rem)/.82 var(--d);letter-spacing:.04em;text-transform:uppercase;margin:0 0 .22em;text-shadow:0 4px 40px #0006}.hero-title span{display:block}.hero-title span:nth-child(2){color:var(--star);-webkit-text-stroke:0}
.hero-sub{font:italic 400 clamp(1.1rem,2vw,1.55rem)/1.4 var(--s);max-width:34ch;margin-bottom:1.6em}.hero-cta{display:flex;gap:12px;flex-wrap:wrap}
.hero-dots{position:absolute;right:clamp(16px,3vw,40px);bottom:34px;display:flex;gap:8px}.hero-dots button{width:34px;height:5px;border:0;background:#fff6;cursor:pointer;padding:0;border-radius:3px;transition:.3s}.hero-dots button.on{background:var(--star);width:54px}
.scroll-cue{position:absolute;left:50%;bottom:16px;width:26px;height:42px;border:2px solid #fff;border-radius:14px;transform:translateX(-50%);opacity:.8}.scroll-cue span{position:absolute;left:50%;top:8px;width:4px;height:8px;margin-left:-2px;background:#fff;border-radius:2px;animation:cue 1.8s infinite}@keyframes cue{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(14px)}}
.ticker{background:var(--star);border-block:2px solid var(--ink);overflow:hidden;white-space:nowrap}.ticker-track{display:inline-flex;align-items:center;gap:28px;padding:14px 0;animation:tick 40s linear infinite;font:400 1.7rem var(--d);letter-spacing:.22em;text-transform:uppercase}.ticker svg{width:20px;height:20px;flex:none}@keyframes tick{to{transform:translateX(-33.333%)}}

/* sections */
.sec-head{margin-bottom:clamp(28px,4vw,52px)}.sec-head.row{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap}
.cats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.cat{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:var(--r);border:2px solid var(--ink);display:block;background:var(--cream);text-decoration:none;color:#fff}
.cat img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}.cat:hover img{transform:scale(1.08)}.cat::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 45%,#000b)}
.cat-label{position:absolute;left:20px;right:20px;bottom:18px;z-index:2;display:flex;flex-direction:column}.cat-label b{font:400 2.4rem/1 var(--d);letter-spacing:.1em;text-transform:uppercase}.cat-label small{font-size:.85rem;opacity:.9}
.rail{display:flex;gap:20px;overflow-x:auto;padding:4px max(24px,calc((100% - var(--wrap))/2)) 24px;scroll-snap-type:x mandatory;scrollbar-width:thin}.rail-item{flex:0 0 min(340px,78vw);scroll-snap-align:start}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 20px}
.card{display:block;text-decoration:none}.card-img{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:var(--r);border:2px solid var(--ink);background:var(--cream)}.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.card:hover .card-img img{transform:scale(1.06)}.card-img .tag{position:absolute;top:12px;left:12px}
.card-body{display:flex;justify-content:space-between;gap:12px;padding:14px 4px 0}.card-body h3{font:600 1rem/1.3 var(--b)}.price{font:600 1rem var(--b);margin:0;white-space:nowrap}.card.is-sold img{filter:grayscale(1);opacity:.6}
.films{background:radial-gradient(1200px 500px at 85% -10%,#2b7bb555,transparent),var(--ink)}.films-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:32px}.film-title{font:400 2.2rem var(--d);letter-spacing:.08em;margin:18px 0 6px}.film-desc{color:#ffffffb0;max-width:60ch}.film-list{list-style:none;margin:0;display:grid;gap:18px;align-content:start}.film-list li{display:grid;gap:8px}.film-list span{font-weight:600}
.yt{position:relative;aspect-ratio:16/9;border-radius:var(--r);overflow:hidden;background:#000;border:2px solid #ffffff40}.yt img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),opacity .3s}.yt:hover img{transform:scale(1.05)}.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.play{position:absolute;inset:0;margin:auto;width:84px;height:84px;background:none;border:0;cursor:pointer;transition:transform .3s var(--ease);padding:0}.yt-big .play{width:112px;height:112px}.play:hover{transform:scale(1.1)}.film-list .play{width:56px;height:56px}
.spot{display:grid;grid-template-columns:1.1fr 1fr;min-height:680px;border-block:2px solid var(--ink)}.spot-img{background:var(--sky);overflow:hidden;display:grid;place-items:center}.spot-img img{width:min(100%,760px);aspect-ratio:4/5;object-fit:cover}
.spot-copy{padding:clamp(32px,7vw,110px);display:flex;flex-direction:column;justify-content:center;background:var(--star)}.spot-copy .eyebrow{color:var(--ink)}.spot-copy .lede{color:var(--ink)}.price-big{font:400 3rem var(--d);letter-spacing:.06em;margin:.2em 0 .4em}
.wall{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-flow:dense;gap:12px}.wall-tile{display:block;aspect-ratio:1;overflow:hidden;border-radius:10px;border:2px solid var(--ink);position:relative}.wall-tile.big{grid-column:span 2;grid-row:span 2}.wall-tile img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease),filter .4s}.wall-tile:hover img{transform:scale(1.08)}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.post{display:block;text-decoration:none}.post-img{aspect-ratio:4/3;overflow:hidden;border-radius:var(--r);border:2px solid var(--ink)}.post-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.post:hover .post-img img{transform:scale(1.05)}
.post-body{padding-top:16px}.post time{font:600 .72rem var(--b);letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}.post h3{font:400 2rem/1 var(--d);letter-spacing:.05em;margin:8px 0}.post p{color:var(--mut);margin-bottom:.6em}.post .more{font-size:.9rem}
.about-tease{background:var(--sky);border-block:2px solid var(--ink);padding:clamp(56px,8vw,110px) 0}.at-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(24px,5vw,72px);align-items:center}.scene{border-radius:var(--r);border:2px solid var(--ink);background:#fff;width:100%}.about-tease .lede{color:var(--ink)}.about-tease .eyebrow{color:var(--ink)}
.newsletter{background:var(--ink);color:var(--paper);padding:clamp(44px,6vw,80px) 0}.nl-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.newsletter h2{font:400 clamp(2.4rem,5vw,4rem) var(--d);letter-spacing:.08em;color:var(--star);text-transform:uppercase}.newsletter p{margin:6px 0 0;opacity:.8}
.nl-form{display:flex;gap:10px}.nl-form input{flex:1;min-width:0;padding:17px 22px;border-radius:999px;border:2px solid #fff;background:transparent;color:#fff;font:inherit}.nl-form input::placeholder{color:#fff9}.nl-form .btn-ink{background:var(--star);border-color:var(--star);color:var(--ink)}
.site-footer{background:#050505;color:#ffffffb8;padding:64px 0 28px;font-size:.92rem}.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:32px}.foot-brand img{margin-bottom:14px}.foot-brand p{max-width:32ch}.site-footer h3{font:400 1.2rem var(--d);letter-spacing:.2em;color:var(--star);margin-bottom:14px}.site-footer nav a{display:block;text-decoration:none;padding:4px 0}.site-footer a:hover{color:var(--star)}.foot-base{display:flex;justify-content:space-between;border-top:1px solid #ffffff22;margin-top:40px;padding-top:20px;font-size:.8rem}
.social{display:flex;gap:10px;list-style:none;margin:14px 0 0;padding:0;flex-wrap:wrap}.social a{display:grid;place-items:center;width:44px;height:44px;border:2px solid currentColor;border-radius:50%;transition:.25s var(--ease)}.social svg{width:22px;height:22px}.social a:hover{background:var(--star);color:var(--ink);border-color:var(--star);transform:translateY(-3px)}.social.on-dark a{color:#fff}

/* inner pages */
.page-head{padding:clamp(40px,7vw,96px) 0 28px}.page-head .lede{margin-top:14px}
.shop-bar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center;margin-bottom:28px}.pills{display:flex;gap:8px;flex-wrap:wrap}.pill{padding:10px 18px;border:2px solid var(--ink);border-radius:99px;text-decoration:none;font:600 .78rem var(--b);letter-spacing:.1em;text-transform:uppercase}.pill:hover,.pill.on{background:var(--ink);color:var(--paper)}
.shop-search{display:flex;gap:8px}.shop-search input,.shop-search select,.form input,.form select,.form textarea,.qty{font:inherit;padding:12px 16px;border:2px solid var(--ink);border-radius:10px;background:#fff;width:100%}.shop-search input{width:180px}.shop-search select{width:auto}.qty{width:80px}
.crumbs{padding:22px 0 0;font-size:.85rem;color:var(--mut)}.crumbs a{text-decoration:none}
.pdp{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(24px,5vw,72px);padding-block:24px 40px;align-items:start}.pdp-main{display:block;border:2px solid var(--ink);border-radius:var(--r);overflow:hidden;background:var(--cream);cursor:zoom-in}.pdp-main img{width:100%;aspect-ratio:4/5;object-fit:cover}
.pdp-thumbs{display:flex;gap:10px;margin-top:12px}.pdp-thumbs button{width:78px;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;background:none;opacity:.7}.pdp-thumbs button.on{border-color:var(--ink);opacity:1}.pdp-info{position:sticky;top:110px}
.specs{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin:20px 0;border-top:2px solid var(--ink)}.specs div{padding:12px 0;border-bottom:1px solid var(--line)}.specs dt{font:600 .7rem var(--b);letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}.specs dd{margin:2px 0 0;font-weight:600}
.buy{display:flex;gap:12px;margin:22px 0}.details h2{font:400 1.8rem var(--d);letter-spacing:.1em}
.prose{font-size:1.06rem}.prose h2{font:400 2.2rem var(--d);letter-spacing:.08em;margin:1.6em 0 .4em;text-transform:uppercase}.prose h3{font:400 1.6rem var(--d);letter-spacing:.08em;margin:1.4em 0 .3em}.prose blockquote{font:italic 400 1.7rem/1.35 var(--s);border-left:6px solid var(--star);margin:1.6em 0;padding:4px 0 4px 24px}.prose img{border-radius:var(--r);border:2px solid var(--ink);margin:1.5em 0}.prose ul{padding-left:1.2em}.prose a{text-decoration-color:var(--sky);text-underline-offset:3px;text-decoration-thickness:2px}
.cart{list-style:none;margin:0}.cart li{display:grid;grid-template-columns:96px 1fr auto 90px 32px;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.cart img{border-radius:8px;border:2px solid var(--ink)}.cart-info a{font-weight:600;text-decoration:none}.cart-info small{display:block;color:var(--mut)}.cart-sum{font-weight:700;text-align:right}.x{background:none;border:0;font-size:1.6rem;cursor:pointer}
.totals{max-width:380px;margin:24px 0 0 auto}.totals p{display:flex;justify-content:space-between;margin:0 0 8px}.grand{border-top:2px solid var(--ink);padding-top:10px;font-size:1.25rem;font-weight:700}.cart-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}
.checkout{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:start}.summary{background:var(--cream);border:2px solid var(--ink);border-radius:var(--r);padding:24px;position:sticky;top:110px}.summary ul{list-style:none;margin:0 0 16px}.summary li,.summary p{display:flex;justify-content:space-between;gap:12px;margin:0 0 8px}
.form.stack{display:grid;gap:16px}.form label{display:grid;gap:6px;font-weight:600;font-size:.92rem}.form small{font-weight:400;color:var(--mut)}.two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.auth{max-width:480px;padding-block:56px}
.plain{list-style:none;margin:0}.order-lines li{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line)}
/* about */
.about-hero{background:var(--sky);border-bottom:2px solid var(--ink);padding:clamp(40px,7vw,90px) 0 0;overflow:hidden}.about-hero img{width:min(1544px,100%);margin:40px auto 0;display:block;mix-blend-mode:multiply}
.about-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(32px,6vw,96px);padding-block:clamp(40px,6vw,88px);align-items:start}.about-side{position:sticky;top:110px;background:var(--cream);border:2px solid var(--ink);border-radius:var(--r);padding:28px}.about-side img{border-radius:10px;margin-bottom:20px;border:2px solid var(--ink)}.about-side h3{font:400 1.6rem var(--d);letter-spacing:.14em}.cta-band{background:var(--star);border-block:2px solid var(--ink);text-align:center;padding:clamp(48px,8vw,100px) 0}
/* films & journal & gallery */
.dark-page{background:var(--ink);color:var(--paper)}.dark-page .site-header{background:#0e0e0eee;border-color:#fff3;color:#fff}.dark-page .brand-word,.dark-page .nav a,.dark-page .tool{color:#fff}.dark-page .brand img{filter:none}
.films-hero{padding:clamp(40px,7vw,96px) 0 32px}.film-feature{display:grid;grid-template-columns:1.8fr 1fr;gap:32px;align-items:center;margin-bottom:56px}.film-feature h2{font:400 2.6rem var(--d);letter-spacing:.06em;margin-bottom:12px}.vgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-bottom:96px}.vgrid h3{font:400 1.7rem var(--d);letter-spacing:.06em;margin:14px 0 4px}.vgrid p{color:#ffffffa8}
.art-head{padding-block:clamp(40px,6vw,80px) 28px}.art-cover{margin-bottom:40px}.art-cover img{width:100%;max-height:640px;object-fit:cover;border-radius:var(--r);border:2px solid var(--ink)}.posts-lg{padding-bottom:96px}
.masonry{columns:4 260px;column-gap:14px;padding-bottom:96px}.m-tile{display:block;position:relative;margin-bottom:14px;break-inside:avoid;border-radius:10px;overflow:hidden;border:2px solid var(--ink)}.m-tile img{width:100%;transition:transform .8s var(--ease)}.m-tile:hover img{transform:scale(1.05)}.ig{position:absolute;left:10px;bottom:10px;background:var(--star);font:700 .62rem var(--b);letter-spacing:.14em;text-transform:uppercase;padding:5px 8px;border-radius:4px}
.lb{position:fixed;inset:0;z-index:300;background:#000e;display:none;place-items:center;padding:24px}.lb.open{display:grid}.lb figure{margin:0;max-width:min(1200px,100%);text-align:center;color:#fff}.lb img{max-height:80vh;width:auto;margin:auto;border-radius:8px}.lb figcaption{padding-top:12px}.lb figcaption a{color:var(--star)}.lb button{position:absolute;top:16px;right:20px;background:none;border:0;color:#fff;font-size:2.4rem;cursor:pointer}
/* forum */
.forum-top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;margin-bottom:24px}.cats-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.fcat{display:block;text-decoration:none;border:2px solid var(--ink);border-radius:var(--r);padding:26px;background:#fff;transition:.3s var(--ease)}.fcat:hover{background:var(--star);transform:translateY(-4px);box-shadow:6px 6px 0 var(--ink);color:var(--ink)}.fcat h2{font:400 2rem var(--d);letter-spacing:.08em}.fcat p{margin:6px 0 10px;color:var(--mut)}.fcat:hover p{color:var(--ink)}.fcat small{font-weight:600}
.threads{list-style:none;margin:0;border:2px solid var(--ink);border-radius:var(--r);overflow:hidden;background:#fff}.threads li{display:grid;grid-template-columns:44px 1fr auto;gap:16px;align-items:center;padding:16px 20px;border-bottom:1px solid var(--line)}.threads li:last-child{border:0}.threads li.pinned{background:#f6e83b33}.t-title{font-weight:700;text-decoration:none;font-size:1.05rem}.threads small{display:block;color:var(--mut)}.t-count{font:400 1.5rem var(--d);background:var(--cream);border-radius:99px;min-width:44px;text-align:center;padding:4px 10px}
.av{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--sky);border:2px solid var(--ink);font:400 1.4rem var(--d)}.pager{display:flex;gap:8px;justify-content:center;margin:28px 0}.pager a{min-width:40px;text-align:center;padding:8px;border:2px solid var(--ink);border-radius:8px;text-decoration:none;font-weight:600}.pager a[aria-current]{background:var(--ink);color:#fff}
.thread{padding-bottom:80px}.fpost{display:grid;grid-template-columns:150px 1fr;gap:20px;border:2px solid var(--ink);border-radius:var(--r);background:#fff;margin:16px 0;overflow:hidden}.fpost aside{background:var(--cream);padding:20px;display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;border-right:2px solid var(--ink)}.fpost.staff aside{background:var(--star)}.fpost aside small{color:var(--mut);font-size:.74rem}.fbody{padding:18px 22px 6px}.fbody header{display:flex;justify-content:space-between;color:var(--mut);font-size:.82rem;margin-bottom:10px}.link-btn{background:none;border:0;color:var(--mut);cursor:pointer;text-decoration:underline;font:inherit}.fbody a{color:var(--sky-d)}
.modbar{background:var(--ink);color:#fff;padding:10px 16px;border-radius:10px;margin:12px 0}.modbar button{background:var(--star);border:0;border-radius:6px;padding:6px 12px;font-weight:700;cursor:pointer;margin-left:6px}.reply{margin-top:28px}
/* motion */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.in{opacity:1;transform:none}.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.no-js .reveal{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}.hero .slide.on{transform:none}}
@media (max-width:1000px){.grid{grid-template-columns:repeat(2,1fr)}.cats{grid-template-columns:repeat(2,1fr)}.films-grid,.film-feature,.spot,.at-grid,.about-grid,.pdp,.checkout,.nl-grid{grid-template-columns:1fr}.vgrid,.posts{grid-template-columns:repeat(2,1fr)}.spot-img{min-height:420px}.pdp-info,.about-side,.summary{position:static}.foot-grid{grid-template-columns:1fr 1fr}.wall{grid-template-columns:repeat(3,1fr)}}
@media (max-width:820px){.burger{display:block}.nav{position:fixed;inset:0 0 auto 0;top:var(--hh,100px);flex-direction:column;gap:0;background:var(--paper);border-bottom:2px solid var(--ink);padding:8px 24px 24px;transform:translateY(-120%);transition:transform .4s var(--ease);margin:0;z-index:-1}.nav.open{transform:none}.nav a{font-size:1.1rem;padding:16px 0;border-bottom:1px solid var(--line)}.dark-page .nav{background:var(--ink)}.head-tools{margin-left:auto}.tool.txt{display:none}.brand-word b{font-size:1.4rem}}
@media (max-width:620px){body{font-size:16px}.wrap,.narrow,.narrow-lg{width:calc(100% - 32px)}.grid,.cats,.posts,.vgrid,.cats-list{grid-template-columns:1fr 1fr;gap:12px}.posts,.vgrid,.cats-list{grid-template-columns:1fr}.cart li{grid-template-columns:70px 1fr auto;}.cart li .cart-sum,.cart li .x{grid-column:auto}.fpost{grid-template-columns:1fr}.fpost aside{flex-direction:row;border-right:0;border-bottom:2px solid var(--ink)}.two{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr}.wall{grid-template-columns:repeat(2,1fr)}.hero-dots{display:none}.cat-label b{font-size:1.7rem}.nl-form{flex-direction:column}.specs{grid-template-columns:1fr}}
/* storytelling additions */
.kick-s{font:700 .66rem/1 var(--b);letter-spacing:.2em;text-transform:uppercase;color:var(--sky-d);margin:0 0 6px}
.lead{display:grid;grid-template-columns:1.35fr 1fr;border-bottom:2px solid var(--ink);background:var(--paper)}.lead-img{display:block;overflow:hidden;background:var(--sky);border-right:2px solid var(--ink);min-height:480px}.lead-img img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease)}.lead-img:hover img{transform:scale(1.04)}
.lead-copy{padding:clamp(28px,6vw,96px);display:flex;flex-direction:column;justify-content:center}.lead-copy .display{font-size:clamp(2.6rem,5.5vw,5rem);margin-bottom:.3em}
.cats-5{grid-template-columns:repeat(5,1fr)}.cats-5 .cat-label b{font-size:1.9rem}.cats-5 .cat{aspect-ratio:3/4}
.post-lead{grid-column:span 2}.post-lead .post-img{aspect-ratio:16/9}.post-lead .post h3,.post-lead h3{font-size:3rem}
@media (max-width:1000px){.lead{grid-template-columns:1fr}.lead-img{min-height:340px;border-right:0;border-bottom:2px solid var(--ink)}.cats-5{grid-template-columns:repeat(2,1fr)}.post-lead{grid-column:auto}}
@media (max-width:620px){.cats-5{grid-template-columns:1fr 1fr}}
.gate{background:var(--cream);border:2px dashed var(--ink);border-radius:12px;padding:14px}.gate-q{font:italic 400 1.1rem var(--s);color:var(--ink)}
.auth h1{margin-bottom:22px}

.is-video{position:relative}.is-video video{width:100%;height:100%;object-fit:cover;display:block}.m-tile.is-video video{height:auto}.vplay{position:absolute;inset:0;margin:auto;width:58px;height:58px;border-radius:50%;background:var(--star);border:2px solid var(--ink)}.vplay::after{content:"";position:absolute;left:23px;top:16px;border-left:18px solid var(--ink);border-top:12px solid transparent;border-bottom:12px solid transparent}
.lb video{max-height:80vh;max-width:100%;margin:auto;border-radius:8px;background:#000}.lb [hidden]{display:none}
.ig-band{background:var(--sky);border-block:2px solid var(--ink);padding:44px 0}.ig-band-in{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.ig-band p{margin:.4em 0 0;max-width:46ch}
.ig-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;padding-bottom:96px}.ig-card{margin:0;border:2px solid var(--ink);border-radius:10px;overflow:hidden;background:#fff}.ig-card iframe{width:100%;height:560px;border:0;display:block}.ig-card a{display:block;padding:10px 14px;font-weight:600;border-top:2px solid var(--ink)}

/* Splash quick picks: small images with text below, at the right of the hero */
.hero-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:clamp(24px,4vw,64px);align-items:end}
.hero-inner>*{grid-column:1}.hero-inner>.quick-picks{grid-column:2;grid-row:1/span 5;align-self:end}
.quick-picks{display:grid;grid-template-columns:repeat(2,minmax(0,168px));gap:14px;margin-bottom:6px}
.qp{display:flex;flex-direction:column;gap:6px;color:#fff;text-decoration:none}
.qp-img{display:block;aspect-ratio:4/3;overflow:hidden;border:2px solid #fff;border-radius:10px;background:#0008;box-shadow:0 8px 24px #0005}
.qp-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s var(--ease)}
.qp:hover .qp-img img,.qp:focus-visible .qp-img img{transform:scale(1.08)}.qp:hover .qp-img,.qp:focus-visible .qp-img{border-color:var(--star)}
.qp-verb{font:400 1.05rem/1 var(--d);letter-spacing:.14em;text-transform:uppercase;color:var(--star)}
.qp-text{font:500 .8rem/1.3 var(--b);color:#fffe;text-shadow:0 1px 8px #0008}.qp-text b{display:block;color:#fff;font-weight:700}
.hero-dots{right:auto;left:clamp(16px,3vw,40px)}
@media (max-width:1000px){.hero-inner{display:block}.quick-picks{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:clamp(22px,4vw,34px)}}
@media (max-width:620px){.quick-picks{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-right:-16px;padding:2px 16px 8px 0;-webkit-overflow-scrolling:touch;scrollbar-width:none}.quick-picks::-webkit-scrollbar{display:none}.qp{flex:0 0 138px;scroll-snap-align:start}.hero-dots{display:none}.hero-inner{padding-bottom:64px}}

.hero-inner .hero-title{font-size:clamp(3.6rem,9.2vw,9rem);line-height:.86}
@media (max-width:1000px){.hero-inner .hero-title{font-size:clamp(3.6rem,14vw,8rem)}}
.hero{grid-template-columns:minmax(0,1fr)}.hero-inner,.quick-picks{min-width:0}

/* Email sign-up with a picture */
.nl-grid.has-img{grid-template-columns:minmax(0,300px) minmax(0,1fr) minmax(0,1fr);gap:clamp(20px,3vw,44px)}
.nl-img{margin:0;aspect-ratio:4/3;overflow:hidden;border:2px solid var(--star);border-radius:12px}.nl-img img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:1000px){.nl-grid.has-img{grid-template-columns:1fr}.nl-img{aspect-ratio:16/9;max-width:520px}}
/* Community: every category and thread has a picture */
.fcat{padding:0;overflow:hidden}.fcat .fc-img{display:block;aspect-ratio:16/7;overflow:hidden;border-bottom:2px solid var(--ink)}.fcat .fc-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s var(--ease)}.fcat:hover .fc-img img{transform:scale(1.05)}.fcat .fc-body{padding:20px 24px 22px}
.threads li{grid-template-columns:44px 1fr auto 88px}.threads .t-img{display:block;width:88px;aspect-ratio:4/3;border:2px solid var(--ink);border-radius:8px;overflow:hidden;background:var(--cream)}.threads .t-img img{width:100%;height:100%;object-fit:cover;display:block}
.thread-hero{margin:0 0 20px;border:2px solid var(--ink);border-radius:var(--r);overflow:hidden;background:#fff}.thread-hero img{display:block;width:100%;max-height:520px;object-fit:cover}
.fbody .post-img{display:block;margin:14px 0 4px;max-width:100%}.fbody .post-img img{display:block;max-width:100%;max-height:480px;border:2px solid var(--ink);border-radius:10px}
@media (max-width:620px){.threads li{grid-template-columns:36px 1fr 64px;row-gap:6px}.threads .t-count{display:none}.threads .t-img{width:64px}}
.fcat .fc-body{display:block}.fcat .fc-img{display:block}

/* Direct social links */
.head-social,.nav-social{display:flex;gap:2px;list-style:none;margin:0 6px 0 0;padding:0}.head-social a{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;transition:.25s var(--ease)}.head-social a:hover{background:var(--star)}.head-social svg{width:20px;height:20px}.nav-social{display:none}
.follow-band{background:var(--star);border-block:2px solid var(--ink);padding:clamp(34px,5vw,56px) 0}.follow-in{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.follow-band h2{margin:.1em 0 0;max-width:18ch}
.follow-btns{display:flex;gap:12px;flex-wrap:wrap}.follow-btn{display:inline-flex;align-items:center;gap:10px;background:var(--ink);color:#fff;text-decoration:none;font:600 .82rem/1 var(--b);letter-spacing:.14em;text-transform:uppercase;padding:16px 24px;border-radius:999px;border:2px solid var(--ink);transition:.25s var(--ease)}.follow-btn svg{width:22px;height:22px}.follow-btn:hover{background:#fff;color:var(--ink);transform:translateY(-2px)}
@media (max-width:1100px){.head-social{display:none}}
@media (max-width:820px){.nav-social{display:flex;padding:14px 0 0;gap:8px}.nav-social a{display:grid;place-items:center;width:44px;height:44px;border:2px solid var(--ink);border-radius:50%}.nav-social svg{width:22px;height:22px}}
.follow-band .eyebrow{color:var(--ink)}
