/* Revenue Operator brand v4: legacy layer */
@font-face{font-family:"Bricolage Grotesque";src:url(/assets/brand/fonts/BricolageGrotesque-Variable.latin.woff2) format("woff2");font-weight:200 800;font-stretch:75% 100%;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(/assets/brand/fonts/InstrumentSans-Variable.latin.woff2) format("woff2");font-weight:400 700;font-stretch:75% 100%;font-style:normal;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(/assets/brand/fonts/InstrumentSans-Italic-Variable.latin.woff2) format("woff2");font-weight:400 700;font-stretch:75% 100%;font-style:italic;font-display:swap}

/* Brand v4 layer for every page still built by the legacy templates (blog, tools, Etsy pages, legal, access...).
   Loaded last in <head>, after /assets/site.css and the page's own <style>, so these rules win on equal specificity.
   It maps the old slate/orange variables to the brand palette and restyles the shared components. */
:root{
  --wall:#EBE9E1;--card:#FFFFFF;--smoke:#5A5A66;--klein:#E43D12;--klein-deep:#B8300C;--klein-soft:#FFE3DA;
  --berry:#D6536D;--blush:#FFA2B6;--flash:#EFB11D;--ember:#B8300C;--field:#C8370F;--night:#140C09;
  --display:"Bricolage Grotesque","Helvetica Neue",Arial,sans-serif;--sans:"Instrument Sans","Helvetica Neue",Arial,sans-serif;
  --r:28px;--max:1280px;
  --ink:#1A1210;--ink2:#1A1210;--muted:#5A5A66;--line:#DEDED7;--bg:#EBE9E1;--accent:#E43D12;--accent2:#B8300C;
  color-scheme:light}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--sans);background:var(--wall);color:var(--ink);font-variation-settings:"wdth" 84;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--display);font-weight:800;letter-spacing:-.02em;text-wrap:balance}
h1{line-height:1}
h2{line-height:1.05}
a{color:var(--ember)}
:focus-visible{outline:3px solid var(--klein);outline-offset:3px;border-radius:6px}
::selection{background:var(--flash);color:var(--ink)}
input,select,textarea,button{font-family:inherit}
input[type=range]{accent-color:var(--klein)}
.btn{background:var(--ink);color:#fff;border-radius:999px;font-family:var(--sans);font-weight:600;padding:14px 26px;border:0;transition:background .25s,transform .25s cubic-bezier(.2,.8,.2,1)}
.btn:hover{background:var(--klein);color:#fff;transform:translateY(-2px)}
.btn.small{padding:10px 18px}
.btn.ghost{background:var(--card);color:var(--ink);border:1px solid var(--line)}
.btn.ghost:hover{border-color:var(--ink);background:var(--card);color:var(--ink)}

/* floating pill nav (replaces the old sticky bar) */
nav.nav{position:sticky;top:14px;z-index:50;margin-top:14px;background:none;border:0;-webkit-backdrop-filter:none;backdrop-filter:none;height:auto}
.nav .bar{max-width:var(--max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#ffffffd9;backdrop-filter:blur(16px) saturate(1.5);-webkit-backdrop-filter:blur(16px) saturate(1.5);border:1px solid var(--line);border-radius:999px;padding:8px 8px 8px 18px;box-shadow:0 10px 30px -18px #1A121040;width:calc(100% - 2*clamp(16px,3.5vw,36px));min-height:62px}
.nav .logo,.foot .logo{display:flex;align-items:center;gap:10px;text-decoration:none;font:800 19px/1 var(--display);letter-spacing:-.025em;color:var(--ink);white-space:nowrap}
.nav .logo svg{width:30px;height:30px;flex:none}
.nav ul{display:flex;gap:2px;list-style:none;margin:0;padding:0}
.nav ul a{display:block;padding:10px 14px;border-radius:999px;text-decoration:none;font-weight:500;font-size:15px;color:var(--smoke);line-height:1.2}
.nav ul a:hover{color:var(--ink);background:var(--wall)}
.nav ul a[aria-current]{color:var(--ink);background:var(--klein-soft)}
.nav .btn{display:inline-flex;align-items:center;gap:10px;min-height:46px;padding:4px 8px 4px 20px;font-size:15px;line-height:1.2;white-space:nowrap;text-decoration:none}
.btn .ball{width:30px;height:30px;border-radius:50%;background:var(--flash);display:grid;place-items:center;flex:none;transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.btn .ball svg{width:15px;height:15px;color:var(--ink)}
.btn:hover .ball{transform:rotate(-45deg) scale(1.08)}
.nav .btn .nav9-dl{opacity:.8!important}
@media (max-width:900px){.nav ul{display:none}}
@media (max-width:420px){.nav .logo span.lt{display:none}.nav .bar{padding-left:12px}}

/* flame footer */
footer.foot{margin-top:110px;background:var(--field);color:#fff;border-radius:40px 40px 0 0;padding:72px 0 36px;overflow:hidden;position:relative;font-size:15px;line-height:1.6}
.foot .wrap{max-width:var(--max);padding:0 clamp(16px,3.5vw,36px);position:relative}
.foot .say{font:800 clamp(56px,11vw,176px)/.86 var(--display);letter-spacing:-.02em}
.foot .say span{color:var(--flash)}
.foot .cols{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:32px;margin-top:64px}
.foot .cols p{margin:10px 0 0;opacity:.88;max-width:24em}
.foot .logo{color:#fff}
.foot h4{margin:0 0 12px;font:700 13px var(--sans);letter-spacing:0;opacity:.75}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.foot a{color:#fff;text-decoration:none}
.foot a:hover{text-decoration:underline}
.foot .legal{margin-top:48px;padding-top:22px;border-top:1px solid #ffffff33;font-size:13px;line-height:1.6;display:grid;gap:8px;color:#fff}
.foot .legal p{margin:0;color:#fff;opacity:.9}
.foot .legal a{text-decoration:underline}
.foot details{border-top:1px solid #ffffff26;padding:8px 0}
.foot summary{cursor:pointer;font-weight:600}
.foot .listed{background:#fff;color:var(--ink)!important;border-radius:18px;padding:10px 14px;opacity:1!important;margin-top:10px!important}
.foot .listed a{text-decoration:none}
.foot .orb{position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;opacity:.95;background:radial-gradient(circle at 32% 26%,#fff 0 5%,#FFF1C9 14%,#EFB11D 38%,#B9850B 76%,#FFD670 100%);box-shadow:inset -10px -16px 30px #0003}
@media (max-width:820px){.foot .cols{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.foot .cols{grid-template-columns:1fr}}

/* long reading pages: cream ground, white canvas cards, brand type scale */
article h1{font-size:clamp(36px,5.4vw,60px);line-height:.98;letter-spacing:-.025em}
article h2{font-size:clamp(26px,3vw,34px);line-height:1.05}
article h3{font-size:22px}
article p,article li{color:var(--ink)}
article blockquote{border-left:4px solid var(--klein);background:var(--card);border-radius:0 18px 18px 0}
article table{background:var(--card);border-radius:14px}
article th{background:var(--wall)}
article th,article td{border-color:var(--line)}
article pre{background:var(--night);color:#EBE9E1;border-radius:18px}
article code{background:var(--card)}
.crumbs,.meta{color:var(--smoke)}
.crumbs a{color:var(--smoke)}
ul.check li:before{border-color:var(--klein)}
.cta-box{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:28px 30px}
.cta-box h3{font-size:26px;line-height:1.05}
.cta-box.dark{background:var(--field);color:#fff}
.cta-box.dark p,.cta-box.dark .fine{color:#fff;opacity:.92}
.cta-box.dark a:not(.btn){color:#fff}
.cta-box.dark .btn{background:#fff;color:var(--ink)}
.cta-box.dark .btn:hover{background:var(--flash);color:var(--ink)}
.post-card{background:var(--card);border-radius:22px;border-color:var(--line);transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .25s}
.post-card:hover{border-color:var(--ink);transform:translateY(-3px)}
.post-card h2{font-family:var(--display)}
details summary{cursor:pointer}
table{font-variant-numeric:tabular-nums}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Brand v4: the site-wide overlays (checkout-return, before-Stripe sheet, exit guide, share bar, mobile bar) in brand colours and type. */
#ro-cr,#ro-sheet .in,#ro-exit .bx,.ro-share,.mbar{font-family:var(--sans)!important}
#ro-cr{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 60px -24px #1A121066}
#ro-cr b{font-family:var(--display);font-weight:800;letter-spacing:-.02em}
#ro-cr button:not(.x),#ro-exit .go,#ro-sheet .go{background:var(--ink)!important;color:#fff!important;border-radius:999px!important;font-weight:600}
#ro-cr button:not(.x):hover,#ro-exit .go:hover,#ro-sheet .go:hover{background:var(--klein)!important}
#ro-cr input[type=email],#ro-exit input[type=email]{border-radius:999px!important;border:1px solid var(--line)!important;padding-left:16px!important}
#ro-sheet,#ro-exit{background:rgba(20,12,9,.62)!important}
#ro-sheet .in,#ro-exit .bx{border-radius:28px!important;color:var(--ink)!important}
#ro-sheet h2,#ro-exit h2{font-family:var(--display)!important;font-weight:800;letter-spacing:-.02em;color:var(--ink)}
#ro-sheet .note{border-radius:16px}
#ro-sheet .go{display:flex!important;justify-content:center}
.ro-share a,.ro-share button{border-radius:999px}
.mbar{background:rgba(255,255,255,.94)!important;border-top:1px solid var(--line)!important;color:var(--ink)!important;backdrop-filter:blur(12px)}
.mbar .btn{background:var(--ink)!important;color:#fff!important;border-radius:999px!important}

/* ===== Brand v4 page ports (src/brand_v4/ports.py): package layout for every legacy page =====
   Hero: crumbs + pill + big Bricolage H1 (one flame word) + lede, left-aligned on the cream wall.
   Body: one white 28px canvas; boxes become package components (saffron capture, flame field CTA, night offer). */
body.pt{font-size:17px;line-height:1.6}
.pt main.pt-main{max-width:none;margin:0;padding:0}
.pt .pt-wrap{max-width:1000px;margin:0 auto;padding:0 clamp(16px,3.5vw,36px)}
.pt .pt-hero{padding:clamp(40px,7vw,88px) 0 clamp(26px,3.5vw,40px)}
.pt .pt-hero .crumbs{font-size:14px;margin:0 0 18px;color:var(--smoke)}
.pt .pt-hero .crumbs a{color:var(--smoke);text-decoration:none}
.pt .pt-hero .crumbs a:hover{color:var(--ink);text-decoration:underline}
.pt .pill{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:4px 14px;border-radius:999px;background:var(--card);border:1px solid var(--line);font:600 13px/1.3 var(--sans);color:var(--ink);letter-spacing:0;text-transform:none}
.pt .pill .dot{width:8px;height:8px;border-radius:50%;background:var(--klein);flex:none}
.pt .pt-hero h1{margin:18px 0 0;font:800 clamp(40px,6.6vw,84px)/.95 var(--display);font-variation-settings:"wdth" 84;letter-spacing:-.03em;max-width:15ch;color:var(--ink)}
.pt.pt-guide .pt-hero h1,.pt.pt-seo .pt-hero h1,.pt.pt-tool .pt-hero h1{max-width:18ch;font-size:clamp(38px,5.6vw,72px)}
.pt .pt-hero h1 span{color:var(--klein)}
.pt .pt-hero .meta{margin-top:20px;font-size:15px;color:var(--smoke)}
.pt .pt-hero .lede{margin:22px 0 0;font-size:clamp(17px,1.5vw,20px);line-height:1.55;max-width:44em;color:var(--ink)}
.pt .pt-hero p.meta{font-size:clamp(17px,1.5vw,20px);color:var(--ink);max-width:44em}
.pt .pt-art{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:clamp(22px,5vw,60px);max-width:none;margin:0}
.pt .pt-art>:first-child{margin-top:0}
.pt .pt-art h2{font:800 clamp(28px,3.4vw,42px)/1.02 var(--display);letter-spacing:-.025em;margin:56px 0 16px;color:var(--ink)}
.pt .pt-art h3{font:800 clamp(21px,2vw,25px)/1.1 var(--display);letter-spacing:-.015em;margin:32px 0 10px}
.pt .pt-art p,.pt .pt-art li{font-size:17px;line-height:1.65}
.pt .pt-art p{margin:0 0 16px}
.pt .pt-art :is(p,li,td,th,dd,figcaption,blockquote,span,b,strong,em,small)>a:not([class]){color:var(--ember);text-decoration-thickness:1px;text-underline-offset:3px}
.pt .pt-art ul,.pt .pt-art ol{padding-left:22px;margin:0 0 18px}
.pt .pt-art li{margin:6px 0}
.pt .pt-art ul:not([class])>li::marker{color:var(--klein)}
.pt .pt-art ol>li::marker{color:var(--ember);font-weight:700}
.pt .pt-art blockquote{margin:22px 0;padding:18px 22px;background:var(--wall);border-left:4px solid var(--klein);border-radius:0 18px 18px 0}
.pt .pt-art img{border-radius:18px;height:auto}
.pt .pt-art hr{border:0;border-top:1px solid var(--line);margin:36px 0}
.pt .pt-art .fine,.pt .fine{color:var(--smoke);font-size:14px;line-height:1.55}
/* tables */
.pt .pt-art table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card);margin:18px 0 24px;font-size:15px}
.pt .pt-art th{background:var(--wall);font-weight:700;text-align:left}
.pt .pt-art th,.pt .pt-art td{padding:11px 14px;border:0;border-bottom:1px solid var(--line);vertical-align:top}
.pt .pt-art tr:last-child>td,.pt .pt-art tr:last-child>th{border-bottom:0}
.pt .pt-art .fbp-scroll,.pt .pt-art .sp-scroll,.pt .pt-art .tw{overflow-x:auto;-webkit-overflow-scrolling:touch}
/* buttons: package black pill + saffron ball */
.pt .btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 26px;border-radius:999px;border:0;background:var(--ink);color:#fff;font:600 16px/1.2 var(--sans);text-decoration:none;cursor:pointer;box-shadow:none}
.pt a.btn:has(.ball){padding:0 9px 0 24px}
.pt .btn:hover{background:var(--klein);color:#fff;transform:translateY(-2px)}
.pt .btn .ball{width:34px;height:34px}
.pt .btn.small,.pt .btn.sm{min-height:44px;font-size:15px;padding:0 18px}
.pt .btn.ghost{background:var(--card);color:var(--ink);border:1px solid var(--line)}
/* forms */
.pt input[type=email],.pt input[type=text],.pt input[type=number],.pt input[type=url],.pt input[type=date],.pt select,.pt textarea{font:500 16px var(--sans);color:var(--ink);background:var(--card);border:1.5px solid var(--line);border-radius:14px;padding:12px 14px;min-height:48px;width:100%;box-sizing:border-box;box-shadow:none}
.pt input:focus,.pt select:focus,.pt textarea:focus{outline:0;border-color:var(--ink)}
.pt input[type=checkbox],.pt input[type=radio]{accent-color:var(--klein);width:auto;min-height:0}
.pt label{font-weight:600;font-size:15px}
.pt fieldset{border:1px solid var(--line);border-radius:20px;padding:16px 18px 18px;margin:0 0 16px;background:var(--card)}
.pt legend{font:800 18px var(--display);padding:0 6px}
/* tool forms: a cream inset, results: big flame number */
.pt form.calc,.pt .sp-calc,.pt .tool{background:var(--wall);border-radius:24px;padding:clamp(18px,3vw,30px);margin:20px 0;border:0}
.pt form.calc fieldset{background:var(--card)}
.pt .calc-out,.pt .sp-out{border-radius:24px;border:2px solid var(--ink);background:var(--card);padding:clamp(18px,3vw,30px);margin:22px 0}
.pt .ef-big,.pt .sf-big,.pt .sg-big,.pt .sp-tot,.pt .big{font:800 clamp(40px,6vw,64px)/1 var(--display);letter-spacing:-.03em;color:var(--klein)}
/* capture: saffron panel (one per view) */
.pt .capture-end,.pt .capture-top{background:var(--flash);color:var(--ink);border:0;border-radius:var(--r);padding:clamp(22px,4vw,40px);margin:40px 0}
.pt .capture-end .kick,.pt .capture-top .kick{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 13px;border-radius:999px;background:#ffffffb3;font:600 13px var(--sans);color:var(--ink);letter-spacing:0;text-transform:none}
.pt .capture-end h3,.pt .capture-top h3{font:800 clamp(26px,3vw,36px)/1.02 var(--display);letter-spacing:-.025em;margin:14px 0 8px}
.pt .capture-end p,.pt .capture-end .fine,.pt .capture-top .fine{color:var(--ink)}
.pt .capture-end a:not(.btn){color:var(--ink)!important;text-decoration:underline}
.pt .capture-inline{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.pt .capture-inline input{flex:1 1 220px;border-radius:999px;border-color:#1A121033}
.pt .capture-inline .btn{flex:0 0 auto}
.pt .capture-end.capture-mid{background:var(--wall)}
/* CTA boxes */
.pt .cta-box{background:var(--wall);border:0;border-radius:24px;padding:clamp(20px,3.5vw,34px);margin:32px 0}
.pt .cta-box h3{margin-top:0}
.pt .cta-box.dark{background:var(--field);color:#fff}
.pt .cta-box.dark h3,.pt .cta-box.dark p,.pt .cta-box.dark li,.pt .cta-box.dark .fine{color:#fff}
.pt .cta-box.dark a:not(.btn){color:#fff!important}
.pt .cta-box.dark .btn{background:#fff;color:var(--ink)}
.pt .cta-box.dark .btn:hover{background:var(--flash)}
/* paid offers on night */
.pt .bt-box{background:var(--night);color:#fff;border:0;border-radius:var(--r);padding:clamp(22px,4vw,40px);margin:40px 0}
.pt .bt-box h2,.pt .bt-box h3,.pt .bt-box p,.pt .bt-box li{color:#fff}
.pt .bt-box h2{margin-top:10px}
.pt .bt-box .bt-k{display:inline-flex;height:30px;align-items:center;padding:0 13px;border-radius:999px;background:#ffffff1f;border:1px solid #ffffff40;font:600 13px var(--sans);color:#fff;margin:0}
.pt .bt-box .fine{color:#ffffffcc}
.pt .bt-box a:not(.bt-go){color:#fff}
.pt .bt-go,.pt .ef-go{display:inline-flex;align-items:center;gap:10px;min-height:50px;padding:0 24px;border-radius:999px;background:var(--flash)!important;color:var(--ink)!important;font-weight:700;text-decoration:none;border:0!important;margin:6px 8px 6px 0}
.pt .bt-box .bt-go+.bt-go{background:#fff!important}
/* soft boxes */
.pt .pc-box,.pt .ef-soft,.pt .res-cap,.pt .top-cap,.pt .sp-cap,.pt .sp-kit,.pt .sf-soft,.pt .sg-soft,.pt .le-soft,.pt .es-honest,.pt .warn{background:var(--wall);border:0;border-radius:22px;padding:clamp(18px,3vw,28px);margin:24px 0}
.pt .ef9,.pt .ef-soft.ef9{background:var(--klein-soft);border:0}
.pt .ef9-k,.pt .pc-k,.pt .tc-h{font-weight:700}
/* card lists */
.pt .posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:24px 0;max-width:none;padding:0}
.pt .post-card,.pt .td-card{display:block;background:var(--card)!important;border:1px solid var(--line)!important;border-radius:22px;padding:22px 22px 20px;text-decoration:none;color:var(--ink);margin:0;transition:transform .25s cubic-bezier(.2,.8,.2,1),border-color .25s}
.pt .pt-art .post-card{background:var(--wall)!important;border-color:transparent!important}
.pt .post-card:hover,.pt .td-card:hover{border-color:var(--ink)!important;transform:translateY(-3px)}
.pt .post-card h2,.pt .td-card h2{font:800 21px/1.12 var(--display)!important;letter-spacing:-.015em;margin:0 0 8px!important;color:var(--ink)}
.pt .post-card p,.pt .td-card p{font-size:15px!important;line-height:1.5;color:var(--smoke);margin:0 0 6px}
.pt.pt-guides .pt-art,.pt.pt-tools .pt-art{background:none;border:0;padding:0}
.pt.pt-guides .pt-art>.post-card{background:var(--card)!important;border-color:var(--line)!important}
.pt.pt-guides .pt-art{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;align-content:start}
.pt.pt-guides .pt-art>:not(.post-card){grid-column:1/-1}
/* tool cards in the guides grid: canvas cards on cream (standard s.2: long reading pages use cream + canvas cards; #FFE3DA is not a package colour), marked with a flame dot */
.pt.pt-guides .pt-art>.post-card[style*="FFE3DA"]{background:var(--card)!important;border-color:var(--line)!important}
.pt.pt-guides .pt-art>.post-card[style*="FFE3DA"] h2::before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--klein);margin:0 9px 2px 0;vertical-align:middle}
/* /free/ founding note: canvas card + ember dot instead of the old pink tint */
.pt .founding-note{background:var(--card)!important;border:1px solid var(--line)!important;border-radius:18px!important;padding:12px 16px!important}
.pt .founding-note::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--klein-deep);margin:0 8px 2px 0;vertical-align:middle}
.pt.pt-tools .pt-art .posts .post-card{background:var(--card)!important;border-color:var(--line)!important}
.pt.pt-tools .pt-art>p,.pt.pt-tools .pt-art>h2{max-width:none}
.pt .related{margin-top:48px}
.pt .related h2{margin-top:0}
/* FAQ */
.pt .faq details,.pt .pt-art>details{border:1px solid var(--line);border-radius:18px;padding:0 20px;margin:10px 0;background:var(--card)}
.pt .faq summary,.pt .pt-art>details>summary{padding:16px 0;font:800 18px/1.25 var(--display);list-style:none;display:flex;justify-content:space-between;gap:12px}
.pt .faq summary::after,.pt .pt-art>details>summary::after{content:"+";color:var(--klein);font-weight:800}
.pt .faq details[open] summary::after,.pt .pt-art>details[open]>summary::after{content:"\2212"}
.pt .faq summary::-webkit-details-marker{display:none}
/* side widgets the legacy pages append */
.pt .ro-rt,.pt .ro-share{max-width:1000px;margin-left:auto;margin-right:auto}
/* 404 */
.pt .pt-links{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.pt .pt-links a{display:block;background:var(--wall);border-radius:20px;padding:18px;text-decoration:none!important;color:var(--ink)!important}
.pt .pt-links b{display:block;font:800 21px var(--display)}
.pt .pt-links span{font-size:14px;color:var(--smoke)}
.pt .pt-links a:hover{background:var(--klein-soft)}
/* download tiles on access / start pages */
.pt .btn.dl{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:18px 24px;border-radius:24px;min-height:0;max-width:520px;background:var(--klein);color:#fff}
.pt .btn.dl small{font-weight:500;opacity:.9}
.pt .btn.dl:hover{background:var(--ink)}
/* own-hero pages: free guide, Etsy kit, build log, launch, sample */
.pt main.pt-own{max-width:1000px;margin:0 auto;padding:clamp(28px,5vw,64px) clamp(16px,3.5vw,36px) 0}
.pt main.pt-own h1{font:800 clamp(40px,6vw,80px)/.95 var(--display);letter-spacing:-.03em}
.pt main.pt-own .kick,.pt main.pt-own .es-kick{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:4px 14px;border-radius:999px;background:var(--card);border:1px solid var(--line);font:600 13px/1.3 var(--sans);color:var(--ink);letter-spacing:0;text-transform:none}
.pt main.pt-own .kick::before,.pt main.pt-own .es-kick::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--klein)}
.pt main.pt-own .lede,.pt main.pt-own .es-lede{font-size:clamp(17px,1.5vw,20px)}
.pt main.pt-own h2{font:800 clamp(28px,3.4vw,42px)/1.02 var(--display);letter-spacing:-.025em}
@media (max-width:640px){
  .pt .pt-art{border-radius:22px}
  .pt .pt-art table{font-size:14px}
  .pt .pt-art th,.pt .pt-art td{padding:9px 10px}
  .pt .capture-inline .btn{width:100%}
}
/* ===== Etsy fee calculator: package three-beat layout (calculator.html) around the live tool ===== */
.pt-calc .pt-wrap{max-width:1180px}
.pt-calc .pt-hero h1{max-width:16ch}
.pt-calc .cx-ans .ef-ans{margin:0 0 14px;background:var(--card);border:1px solid var(--line);border-left:0;border-radius:22px;padding:18px 22px}
.pt-calc .cx-ans .ef-ans p{margin:0 0 6px;font-size:16px}
.pt-calc .cx-ans .ef-ans-go{margin:0!important}
.pt-calc .cx-ans .ef-ans-go a{color:var(--ember);font-weight:700}
.cx-beat{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:14px;align-items:stretch}
.pt-calc .cx-ask{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:clamp(20px,3vw,32px)}
.pt-calc .cx-lab{font:700 14px var(--sans);color:var(--smoke);margin:0 0 10px}
.pt-calc .cx-ask form.calc{background:none;padding:0;margin:0}
.pt-calc .cx-ask fieldset{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:14px 0 6px;margin:0}
.pt-calc .cx-ask legend{font:800 18px var(--display);padding:0 8px 0 0}
.pt-calc .cx-ask #price{font:800 clamp(44px,5vw,64px)/1 var(--display);letter-spacing:-.02em;height:auto;padding:8px 14px;color:var(--ink)}
.pt-calc .cx-ask .row2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.pt-calc .cx-ask details{border-top:1px solid var(--line);padding:12px 0 0;margin:8px 0 0}
.pt-calc .cx-ask details>summary{cursor:pointer;font:700 14px var(--sans);color:var(--smoke)}
.pt-calc .cx-ask .btn{margin-top:14px}
.cx-bite{background:var(--klein);color:#fff;border-radius:var(--r);padding:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:4px}
.cx-coinwrap{width:min(280px,64%);aspect-ratio:1;margin:4px auto 14px}
.cx-coin{position:relative;width:100%;height:100%;border-radius:50%;background:radial-gradient(circle at 32% 26%,#fff 0 6%,#f4ece6 16%,#cdb9ab 40%,#6d5446 64%,#c4ad9f 80%,#f6efe9 94%);box-shadow:0 40px 60px -30px #000a,inset 0 0 0 10px #ffffff40}
@property --deg{syntax:'<angle>';inherits:true;initial-value:0deg}
.cx-slice{position:absolute;inset:0;border-radius:50%;background:conic-gradient(var(--flash) 0 var(--deg),transparent var(--deg));transition:--deg .6s cubic-bezier(.2,.8,.2,1)}
.cx-coin .c{position:absolute;inset:27%;border-radius:50%;background:var(--ink);display:grid;place-items:center;color:#fff}
.cx-coin .c b{font:800 clamp(30px,3.6vw,46px)/1 var(--display);letter-spacing:-.02em;color:var(--flash)}
.cx-coin .c small{display:block;font:700 12px var(--sans);opacity:.85;margin-top:4px}
.cx-keep{font:700 15px var(--sans)}
.cx-ansv{font:800 clamp(64px,8vw,116px)/.9 var(--display);letter-spacing:-.025em}
.cx-sub{font-size:16px}
.cx-sub b{background:var(--flash);color:var(--ink);padding:0 6px;border-radius:6px}
.cx-bw{text-align:center;padding:36px 0 14px;font:800 clamp(72px,15vw,220px)/.85 var(--display);letter-spacing:-.04em;font-variation-settings:"wdth" 84;color:var(--ink);overflow:hidden}
@property --br{syntax:'<length-percentage>';inherits:false;initial-value:0%}
.cx-bw .bitten{display:inline-block;padding:0 .06em;--br:0%;-webkit-mask:radial-gradient(circle at 99% 4%,transparent var(--br),#000 calc(var(--br) + .5px)),radial-gradient(circle at 93% -6%,transparent var(--br),#000 calc(var(--br) + .5px)),radial-gradient(circle at 103% 22%,transparent var(--br),#000 calc(var(--br) + .5px));-webkit-mask-composite:source-in;mask:radial-gradient(circle at 99% 4%,transparent var(--br),#000 calc(var(--br) + .5px)),radial-gradient(circle at 93% -6%,transparent var(--br),#000 calc(var(--br) + .5px)),radial-gradient(circle at 103% 22%,transparent var(--br),#000 calc(var(--br) + .5px));mask-composite:intersect;transition:--br .35s cubic-bezier(.3,1.6,.5,1)}
.cx-bw .bitten.on{--br:11%}
.cx-leak{background:var(--ink);color:#fff;border-radius:36px;padding:48px clamp(22px,4vw,52px);display:grid;grid-template-columns:1fr 1.2fr;gap:40px;align-items:center;overflow:hidden}
.cx-leak .k{font:700 15px var(--sans);color:#c9bfb9}
.cx-leak h2{font:800 clamp(32px,3.8vw,54px)/1 var(--display);letter-spacing:-.02em;margin:8px 0 22px;color:#fff}
.cx-odo{font:800 clamp(64px,8vw,128px)/1 var(--display);letter-spacing:-.02em;color:var(--flash)}
.cx-yrnote{margin:12px 0 0;color:#d9d0ca;font-size:15px}
.cx-bars{display:grid;grid-template-columns:repeat(12,1fr);gap:8px;align-items:end;height:260px;padding-top:30px;position:relative}
.cx-bars .bar{position:relative;background:#2e2420;border-radius:10px 10px 4px 4px;height:100%;display:flex;align-items:flex-end;overflow:hidden}
.cx-bars .bar i{display:block;width:100%;background:linear-gradient(#FFD670,var(--flash));border-radius:10px 10px 4px 4px;height:0;transition:height .7s cubic-bezier(.2,.8,.2,1)}
.cx-mlab{display:grid;grid-template-columns:repeat(12,1fr);gap:8px;font:700 11.5px var(--sans);color:#a99c95;text-align:center;margin-top:8px}
.cx-bars .tag{position:absolute;right:0;top:0;font:700 13px var(--sans);color:#d9d0ca}
.cx-cap{margin:14px 0}
.pt-calc .cx-cap .top-cap{margin:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:clamp(20px,3vw,30px)}
.pt-calc .tc-form{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}
.pt-calc .tc-form input[type=email]{flex:1 1 240px;border-radius:999px}
.pt-calc #efOut{border:0;background:var(--wall);border-radius:24px}
.pt-calc #efOut h3{margin-top:0}
@media (max-width:980px){.cx-beat,.cx-leak{grid-template-columns:minmax(0,1fr)}.cx-bars{height:190px;gap:4px}.cx-mlab{gap:4px}.cx-leak{padding:34px 22px;border-radius:28px;gap:24px}}
@media (max-width:640px){
  .pt .pt-art{padding:22px 18px}
  .pt form.calc,.pt .sp-calc,.pt .tool{padding:14px;border-radius:20px}
  .pt fieldset{padding:12px 12px 14px}
  .pt-calc .cx-ask .row2{grid-template-columns:1fr}
  .pt-calc .cx-ask{padding:18px}
  .cx-bite{padding:24px 18px}
}
.pt legend{float:left;width:100%;margin:0 0 10px}
.pt legend+*{clear:both}

/* $4 sheet / $9 kit boxes inside the result */
.pt .ef4{border:2px solid var(--ink);border-radius:22px;padding:20px 22px;background:var(--card)}
.pt .ef4 .ef4-k{display:inline-flex;align-items:center;height:28px;padding:0 12px;border-radius:999px;background:var(--flash);color:var(--ink);font:700 12.5px var(--sans);letter-spacing:0;text-transform:none;margin:0 0 10px}
.pt .ef4 a.ef4-btn{display:inline-flex;align-items:center;min-height:48px;padding:0 22px;border-radius:999px;background:var(--ink);color:#fff;font-weight:700}
.pt .ef4 a.ef4-btn:hover{background:var(--klein)}
@media (max-width:640px){.pt-calc #efOut{padding:16px;margin-left:-6px;margin-right:-6px}}
/* ===== Teardowns hub: night case-file page (package teardowns.html) ===== */
body.pt-hub{background:var(--night);color:#fff}
.pt-hub .pt-wrap{max-width:1180px}
.pt-hub .pt-hero .crumbs,.pt-hub .pt-hero .crumbs a{color:#b7aaa3}
.pt-hub .pt-hero h1{color:#fff;max-width:18ch;font-size:clamp(34px,4.4vw,60px);margin-top:26px}
.pt-hub .pt-hero h1 span{color:var(--flash)}
.pt-hub .pt-hero .meta,.pt-hub .pt-hero p.meta{color:#d9d0ca}
.pt-hub .pill{background:#21140F;border-color:#3a2a23;color:#e8dfda}
.hub-slam{font:900 clamp(64px,12vw,180px)/.84 var(--display);letter-spacing:-.025em;text-transform:uppercase;display:grid;color:#fff;margin:6px 0 10px}
.hub-slam .f{color:var(--klein)}
.pt-hub .pt-art{background:none;border:0;padding:0;color:#fff}
.pt-hub .pt-art>p:first-child{font-size:19px;color:#d9d0ca;max-width:46em;margin:0 0 30px}
.pt-hub .files{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pt-hub .td-card.hcase{position:relative;display:flex;flex-direction:column;gap:12px;padding:24px;border-radius:22px;color:#fff;min-height:330px;overflow:hidden;background:linear-gradient(160deg,#2a1912,#191210 70%)!important;border:1px solid #3a2a23!important;isolation:isolate}
.pt-hub .td-card.hcase::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.5;background:repeating-linear-gradient(115deg,transparent 0 22px,#ffffff05 22px 23px),repeating-linear-gradient(25deg,transparent 0 40px,#00000040 40px 41px)}
.pt-hub .td-card.hcase:hover{border-color:var(--klein)!important;transform:translateY(-3px)}
.pt-hub .hcase .top{font:600 13px var(--sans);color:#b7aaa3}
.pt-hub .hcase h2{font:800 26px/.98 var(--display)!important;letter-spacing:-.02em;text-transform:uppercase;color:#fff!important;margin:0!important;overflow-wrap:anywhere}
.pt-hub .hcase .v{margin-top:auto!important;font-size:15px!important;line-height:1.45;color:#ddd3cd!important}
.pt-hub .hcase .v b{color:var(--flash)}
.pt-hub .hcase .inv{font-size:13px;color:#a99c95}
.pt-hub .hcase .go{font-weight:700;font-size:14px;color:#fff}
.pt-hub .hcase:first-child{grid-column:span 2;background:linear-gradient(140deg,#3a1d12,#191210 60%)!important;border-color:#6b2a14!important}
.pt-hub .hcase:first-child h2{font-size:clamp(30px,3.4vw,46px)!important}
.hub-fall{padding-top:100px}
.hub-fall h2{font:900 clamp(40px,6vw,88px)/.88 var(--display)!important;letter-spacing:-.025em;text-transform:uppercase;color:#fff;margin:0 0 24px!important}
.pt-hub ul.fail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;list-style:none;padding:0;margin:0;counter-reset:f}
.pt-hub ul.fail li{counter-increment:f;background:#21140F;border:1px solid #3a2a23;border-radius:22px;padding:22px;margin:0;color:#d9d0ca;font-size:15.5px}
.pt-hub ul.fail li::before{content:"0" counter(f);display:block;font:900 40px/1 var(--display);color:var(--flash);margin-bottom:12px}
.pt-hub ul.fail li b{display:block;color:#fff;font:800 21px/1.05 var(--display);margin-bottom:8px}
.hub-final{margin:100px 0 20px;border-radius:32px;background:var(--klein);color:#fff;padding:clamp(28px,5vw,64px);display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:center}
.hub-final h2{font:900 clamp(40px,5.6vw,88px)/.88 var(--display)!important;letter-spacing:-.025em;text-transform:uppercase;color:#fff;margin:0!important}
.hub-final h2 em{font-style:normal;color:var(--flash)}
.hub-final p{font-size:18px!important;color:#fff;margin-top:18px!important;max-width:30em}
.hub-final .acts{display:grid;gap:12px;justify-items:start}
.hub-final .btn{background:var(--ink)}
.hub-final small{font-size:13px;opacity:.9}
@media (max-width:980px){.pt-hub .files,.pt-hub ul.fail,.hub-final{grid-template-columns:minmax(0,1fr)}.pt-hub .hcase:first-child{grid-column:auto}.pt-hub .td-card.hcase{min-height:0}}
.pt-hub .pt-art h2,.pt-hub .pt-art h3{color:#fff}
.pt-hub .hub-slam+.pill,.pt-hub .crumbs+.hub-slam{margin-top:14px}
.pt main img,.pt main svg,.pt main video,.pt main iframe{max-width:100%}.pt main img{height:auto}

/* Oct 31 design match (calculator.html): region pills, price chips, coin tilt, odometer, sliders, own-checkout block */
.cx-jsonly{display:none}html.cx-js .cx-jsonly{display:block}html.cx-js .cx-km.cx-jsonly{display:grid}
.cx-pick{margin:0 0 12px}.cx-reg{display:inline-flex;background:var(--paper,#f4ece6);border:1px solid var(--line);border-radius:999px;padding:4px;gap:2px}
.cx-reg button,.cx-chips button{font:700 14px var(--sans);border:0;background:none;color:inherit;border-radius:999px;padding:8px 16px;cursor:pointer;min-height:40px}
.cx-reg button[aria-pressed=true]{background:var(--ink);color:#fff}
.cx-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.cx-chips button{border:1px solid var(--line);background:#fff;padding:8px 14px}
.cx-chips button[aria-pressed=true]{background:var(--flash);border-color:var(--flash);color:var(--ink)}
.cx-coinwrap{perspective:700px}.cx-coin{transition:transform .25s ease-out;transform-style:preserve-3d}
.cx-bw{text-transform:uppercase}
.cx-odo{display:flex;align-items:flex-start;height:1em;overflow:hidden;font-variant-numeric:tabular-nums}.cx-odo .col{display:inline-block;height:1em;overflow:hidden}
.cx-odo .col>span{display:block;transition:transform 1.1s cubic-bezier(.2,.8,.2,1)}.cx-odo .col i{display:block;height:1em;font-style:normal}
.cx-qty{margin-top:22px}.cx-qty label,.cx-share label{font:700 15px var(--sans);display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}
.cx-qty b{color:var(--flash)}.cx-qty input,.cx-share input{width:100%;accent-color:var(--flash);height:32px}
.cx-km{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:14px;margin:14px 0}
.cx-kmc{background:var(--card,#fff);border:1px solid var(--line);border-radius:var(--r);padding:clamp(22px,3.4vw,40px)}
.cx-kmc h2{font:800 clamp(30px,3.4vw,48px)/1 var(--display);letter-spacing:-.02em;margin:0 0 12px}.cx-kmc>p{margin:0 0 18px}
.cx-back{font:800 clamp(56px,7vw,100px)/1 var(--display);letter-spacing:-.02em;color:var(--ember);margin:18px 0 10px}
.cx-back small{display:block;font:700 15px var(--sans);color:var(--smoke);letter-spacing:0;margin-top:6px}
.cx-close{background:var(--klein);color:#fff;border-radius:var(--r);padding:clamp(22px,3.4vw,40px);display:flex;flex-direction:column;justify-content:space-between;gap:20px}
.cx-close h3{font:800 clamp(26px,2.8vw,38px)/1.02 var(--display);margin:0 0 10px;color:#fff}.cx-close p{color:#e6e9ff;margin:0}
.cx-close .btn.onblue{background:#fff;color:var(--ink);align-self:flex-start}
@media (max-width:760px){.cx-km{grid-template-columns:minmax(0,1fr)}}
@media (prefers-reduced-motion:reduce){.cx-odo .col>span,.cx-coin{transition:none!important}}

/* Oct 31: original target-price pill (calculator.html .rev) */
.cx-rev{margin-top:14px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center;font-weight:600;font-size:14px;background:#ffffff1f;border-radius:999px;padding:6px 6px 6px 16px;max-width:100%;box-sizing:border-box}
.cx-rev input{width:76px;height:34px;border-radius:999px;border:0;padding:0 10px;font-weight:700;font-size:15px;text-align:center;color:var(--ink);background:#fff}
.cx-rev b{background:#fff;color:var(--ink);border-radius:999px;padding:6px 12px}
