/* ctrl-fwd D2 system: one stylesheet for every D2 page (24 Oct 2026). Built from r3-base + r3-d + r3-d2. Lines and hovers use ink #000 (brand guide) instead of #000. */
/* Round 3 base: shared structure. Variants override in r3-a/b/c/d.css */
*{box-sizing:border-box;margin:0;padding:0}
:root{--ink:#000;--paper:#fff;--signal:#01F203;--text-green:#007A08;--g1:#595959;--g2:#D9D9D9;--g3:#F2F2F2;--font:'Schibsted Grotesk',Helvetica,Arial,sans-serif;--mono:'JetBrains Mono',ui-monospace,monospace;--pad:40px;--line:1px solid var(--ink)}
html{-webkit-text-size-adjust:100%}
body{font-family:var(--font);background:var(--paper);color:var(--ink);font-size:17px;line-height:1.5}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
.lab-bar{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:10px 20px;background:#000;color:#ddd;font:11px/1.4 var(--mono)}
.lab-bar a{text-decoration:none}.lab-bar nav{display:flex;gap:6px}.lab-bar nav a{padding:3px 9px;border:1px solid #555}.lab-bar nav a:hover{background:var(--signal);color:#000}
.hdr{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;padding:28px var(--pad) 20px;border-bottom:var(--line)}
.brandblk{grid-column:1/4}.brandblk img{width:170px}.brandblk p{font:11px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.05em;margin-top:10px}
.meta{grid-column:4/8;font:11px/1.6 var(--mono)}.meta time{font-weight:700}
.nav{grid-column:8/13;display:flex;justify-content:flex-end;gap:24px;font:12px/1.4 var(--mono)}
.nav a{text-underline-offset:6px}.nav a:hover{text-decoration-thickness:3px;text-decoration-color:var(--signal)}
.idx{font:11px/1.4 var(--mono);letter-spacing:.04em}
.k{display:inline-block;border:.06em solid currentColor;padding:0 .12em;line-height:1;margin:0 .04em;vertical-align:baseline}
.k.z{background:var(--signal);color:#000;border-color:var(--signal)}
.spec{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}
.spec div{padding:10px 14px;border-right:var(--line)}.spec div:last-child{border-right:0}
.spec dt{font:10px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.06em;opacity:.65}
.spec dd{font:12px/1.5 var(--mono);font-weight:700}
.sec{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));border-bottom:var(--line)}
.lbl{grid-column:1/4;padding:28px var(--pad);border-right:var(--line);font:11px/1.6 var(--mono);text-transform:uppercase;letter-spacing:.05em}
.lbl .idx{display:block;font-size:40px;font-family:var(--font);font-weight:700;letter-spacing:-.04em;margin-bottom:8px}
.lbl .cnt{opacity:.6;margin-top:6px}
.body{grid-column:4/13;padding:28px var(--pad) 48px}
.body h2{font-size:clamp(34px,4.4vw,64px);line-height:.95;letter-spacing:-.045em;font-weight:700;margin-bottom:28px}
.ledger{list-style:none;border-top:var(--line)}
.ledger li{display:grid;grid-template-columns:56px 1.3fr 1fr 1.2fr;gap:24px;align-items:baseline;padding:18px 12px;border-bottom:var(--line);transition:none}
.ledger h3{font-size:22px;line-height:1.15;letter-spacing:-.025em;font-weight:400}.ledger h3 b{font-weight:700}
.ledger h4{font-size:15px;font-weight:700}.ledger p{font-size:15px;line-height:1.45}
.ledger li:hover{background:var(--ink);color:var(--paper)}
.lede{font-size:19px;line-height:1.5;max-width:560px}
.mfbn{font-size:clamp(44px,7vw,110px)!important}
.mfbn span{display:block}
.how .lede{margin-bottom:28px}
.steps{width:100%;border-collapse:collapse;font-size:15px}
.steps th,.steps td{text-align:left;padding:14px 12px;border-bottom:var(--line);vertical-align:top}
.steps thead th{font:10px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.06em;border-top:var(--line);border-bottom:var(--line)}
.steps tbody th{font-size:22px;letter-spacing:-.025em}
.steps tbody tr:hover{background:var(--ink);color:var(--paper)}
.objects{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:var(--line);border-left:var(--line)}
.objects li{padding:18px;border-right:var(--line);border-bottom:var(--line);min-height:190px;display:flex;flex-direction:column;gap:8px}
.objects h3{font-size:26px;line-height:1.05;letter-spacing:-.03em}
.objects .status{margin-top:auto;font:11px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.05em;align-self:flex-start;padding:3px 7px;border:var(--line)}
.objects li:hover{background:var(--ink);color:var(--paper)}.objects li:hover .status{border-color:var(--paper)}
.ask{margin-top:24px;font-size:17px}.ask a{font:12px/1.4 var(--mono);margin-left:8px;color:var(--text-green)}
.btn{display:inline-flex;align-items:center;gap:28px;min-height:56px;padding:0 22px;background:var(--signal);color:#000;border:2px solid #000;font:700 13px/1 var(--mono);text-decoration:none;transition:none}
.btn:hover{background:#000;color:var(--signal)}
.contact .body h2{font-size:clamp(40px,6vw,96px)}.contact .lede{margin-bottom:24px}
.ftr{display:flex;flex-wrap:wrap;gap:8px 28px;padding:18px var(--pad);font:11px/1.5 var(--mono)}
:focus-visible{outline:3px solid var(--text-green);outline-offset:3px}
@media(max-width:900px){:root{--pad:20px}.hdr{grid-template-columns:1fr;row-gap:12px}.brandblk,.meta,.nav{grid-column:1}.nav{justify-content:flex-start;flex-wrap:wrap;gap:16px}
.sec{grid-template-columns:1fr}.lbl{grid-column:1;border-right:0;border-bottom:var(--line);padding:16px var(--pad);display:flex;gap:16px;align-items:baseline}.lbl .idx{font-size:24px;margin:0}.body{grid-column:1}
.spec{grid-template-columns:repeat(2,minmax(0,1fr))}.spec div{border-bottom:var(--line)}
.ledger li{grid-template-columns:40px 1fr;gap:6px 12px}.ledger h4,.ledger p{grid-column:2}
.objects{grid-template-columns:1fr}.steps thead{display:none}.steps td:nth-child(5){display:none}}
/* D / Archive: warm paper, catalogue object, product shot on flat ground */
.v-d{--paper:#F4F4F0;--line:1px solid #000;background:#F4F4F0}
.v-d .hero{padding:28px var(--pad) 0;border-bottom:var(--line)}
.v-d .cat{display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:start;padding-bottom:20px;border-bottom:var(--line)}
.v-d .objno{font:11px/1.2 var(--mono);text-transform:uppercase;letter-spacing:.06em}.v-d .objno b{display:block;font:700 72px/0.9 var(--font);letter-spacing:-.05em;color:#000}
.v-d .cattl{font:700 30px/1.05 var(--font);letter-spacing:-.03em;text-transform:uppercase}.v-d .cattl small{display:block;font:11px/1.5 var(--mono);letter-spacing:.06em;margin-top:6px}
.v-d .tag{border:var(--line)}.v-d .tag div{padding:3px 12px;border-bottom:var(--line);font:700 11px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.1em}.v-d .tag div:last-child{border-bottom:0}
.v-d h1{font-size:clamp(46px,6.4vw,110px);line-height:.92;letter-spacing:-.05em;font-weight:700;text-transform:uppercase;margin:28px 0}
.v-d .hero-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));border-top:var(--line);margin:0 calc(-1*var(--pad))}
.v-d .product{grid-column:1/8;background:#E7E6E0;border-right:var(--line);display:flex;align-items:center;justify-content:center;padding:32px}
.v-d .product img{mix-blend-mode:multiply;max-height:420px}
.v-d .prod-copy{grid-column:8/13;padding:28px var(--pad);display:grid;gap:24px;align-content:start}
.v-d .prod-copy .spec{grid-template-columns:1fr 1fr;border-top:var(--line);border-left:var(--line)}
.v-d .prod-copy .spec div{border-right:var(--line);border-bottom:var(--line)}.v-d .prod-copy .spec div:last-child{border-right:var(--line)}
.v-d .objects .idx{font-size:13px;font-weight:700}
.v-d .ledger li:hover,.v-d .steps tbody tr:hover,.v-d .objects li:hover{background:#000;color:#F4F4F0}
@media(max-width:900px){.v-d .cat{grid-template-columns:1fr 1fr}.v-d .tag{display:none}.v-d .hero-grid{grid-template-columns:1fr}.v-d .product,.v-d .prod-copy{grid-column:1;border-right:0}}
/* D2 / Archive with borrowed parts (24 Oct): A spec strip, A figure caption, B green field, A crosshairs */
.v-d2{--paper:#F4F4F0;--line:1px solid #000;background:#F4F4F0}
.v-d2>.spec{border-bottom:var(--line);margin:0}
.v-d2 .product{flex-direction:column;align-items:stretch;padding:0}
.v-d2 .product img{align-self:center;margin:32px;max-height:400px}
.v-d2 .product figcaption{display:grid;grid-template-columns:auto 1fr 1fr;border-top:var(--line);background:#F4F4F0;font:10px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.05em}
.v-d2 .product figcaption span{padding:9px 14px;border-right:var(--line)}.v-d2 .product figcaption span:last-child{border-right:0}
.v-d2 .prod-copy{align-content:center}
.v-d2 .how{background:var(--signal)}
.v-d2 .how .lbl{border-color:#000}
.v-d2 .how .mfbn{font-size:clamp(56px,9vw,170px)!important;line-height:.86!important;letter-spacing:-.06em}
.v-d2 .how .steps tbody tr:hover{background:#000;color:var(--signal)}
.v-d2 .sec{position:relative}
.v-d2 .sec::before{content:"+";position:absolute;left:25%;top:-9px;transform:translateX(-50%);font:16px/1 var(--mono);background:#F4F4F0;padding:0 2px;z-index:1}
.v-d2 .how::before{background:var(--signal)}
.v-d2 .ledger li:hover,.v-d2 .objects li:hover{background:#000;color:#F4F4F0}
@media(max-width:900px){.v-d2 .sec::before{display:none}.v-d2 .product figcaption{grid-template-columns:1fr}.v-d2 .product figcaption span{border-right:0;border-bottom:var(--line)}}
/* D2 clean-up (24 Oct): four-cell spec strip, catalogue number only, Lab line */
.v-d2>.spec{grid-template-columns:1fr 2.2fr 1.2fr 1fr}
.v-d2 .cat{grid-template-columns:1fr;border-bottom:0;padding-bottom:0}
.v-d2 .lab-lede{margin:-12px 0 24px}
@media(max-width:900px){.v-d2>.spec{grid-template-columns:1fr 1fr}}
/* D2 (24 Oct): needs line, buying moments strip */
.v-d2 .needs{display:grid;grid-template-columns:200px 1fr;gap:24px;margin-top:24px;padding-top:16px;border-top:1px solid #000;font-size:16px;max-width:900px}
.v-d2 .moments{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:baseline;margin-top:28px}
.v-d2 .moments ul{list-style:none;display:flex;flex-wrap:wrap;border-left:1px solid #000}
.v-d2 .moments li{padding:6px 16px;border:1px solid #000;border-left:0;font:12px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.04em}
.v-d2 .steps td:last-child{font-weight:700}
@media(max-width:900px){.v-d2 .needs,.v-d2 .moments{grid-template-columns:1fr;gap:10px}.v-d2 .steps td:nth-child(5){display:table-cell}.v-d2 .steps td:nth-child(4){display:none}}
/* D2 (24 Oct, later): question ledger with numbers, about card, two-column steps */
.v-d2 .ledger-head{display:grid;grid-template-columns:56px 1.4fr 1.2fr 1fr;gap:24px;padding:0 12px 8px;font:10px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.06em}
.v-d2 .q-ledger li{grid-template-columns:56px 1.4fr 1.2fr 1fr;align-items:start}
.v-d2 .q-ledger h3{font-size:24px;font-weight:700;line-height:1.12}
.v-d2 .stat b{display:block;font:700 44px/1 var(--font);letter-spacing:-.04em}
.v-d2 .stat span{display:block;font-size:14px;line-height:1.4;margin-top:6px}
.v-d2 .stat cite{display:block;font:normal 10px/1.4 var(--mono);text-transform:uppercase;letter-spacing:.05em;margin-top:8px;opacity:.7}
.v-d2 .srcnote{font:11px/1.5 var(--mono);margin-top:12px;opacity:.75}
.v-d2 .about .lede{font-size:22px;line-height:1.45;max-width:820px}
.v-d2 .about .more{display:inline-block;margin-top:20px;font:12px/1.4 var(--mono);color:var(--text-green);text-underline-offset:5px}
.v-d2 .otag{display:inline-block;margin-left:8px;padding:2px 6px;border:1px solid #000;font:700 10px/1.3 var(--mono);text-transform:uppercase;letter-spacing:.05em;vertical-align:middle}
.v-d2 .steps tbody tr:hover .otag{border-color:var(--signal)}
.v-d2 .steps td:last-child{font-weight:700}
@media(max-width:900px){.v-d2 .ledger-head{display:none}.v-d2 .q-ledger li{grid-template-columns:40px 1fr}.v-d2 .q-ledger .stat,.v-d2 .q-ledger p{grid-column:2}.v-d2 .steps td:nth-child(4){display:table-cell}}

/* r3 d2: mobile overflow fix (24 Oct) */
@media (max-width:760px){
  .v-d2 .sec.how{grid-template-columns:minmax(0,1fr)}
  .v-d2 .sec.how > *{min-width:0}
  .v-d2 .mfbn{font-size:clamp(34px,11vw,56px);overflow-wrap:break-word}
  .v-d2 .steps{width:100%;table-layout:fixed}
  .v-d2 .steps td,.v-d2 .steps th{overflow-wrap:break-word}
}
@media (max-width:760px){
  .v-d2 .steps{table-layout:auto}
  .v-d2 .steps thead{display:none}
  .v-d2 .steps tr{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 12px;padding:18px 0}
  .v-d2 .steps td{display:block;padding:0;border:0}
  .v-d2 .steps td:first-child{grid-row:1 / span 3}
  .v-d2 .steps td:nth-child(n+2){grid-column:2}
}

/* ===== r3 d2: type scale (24 Oct). Seven steps; hero always largest. =====
   label 12 mono | meta 13 mono | body 17 | lede 20 | title 24 |
   section clamp(36-64) | field clamp(44-96) | hero clamp(48-120) */
.v-d2{--t-label:12px;--t-meta:13px;--t-body:17px;--t-lede:20px;--t-title:24px;
  --t-sec:clamp(36px,4.4vw,64px);--t-field:clamp(44px,6vw,96px);--t-hero:clamp(48px,7vw,120px);--t-num:clamp(32px,3.4vw,52px)}

/* labels: 12px mono floor */
.v-d2 .lab-bar,.v-d2 .brandblk p,.v-d2 .meta,.v-d2 .nav,.v-d2 .idx,.v-d2 .spec dt,.v-d2 .spec dd,
.v-d2 .lbl,.v-d2 .steps thead th,.v-d2 .objects .status,.v-d2 .ask a,.v-d2 .objno,.v-d2 .cattl small,
.v-d2 .tag div,.v-d2 .product figcaption,.v-d2 .moments li,.v-d2 .ledger-head,.v-d2 .about .more,.v-d2 .otag{font-size:var(--t-label)}
.v-d2 .otag{padding:3px 7px}
/* meta: sources, figure note, footer at 13px */
.v-d2 cite,.v-d2 .srcnote,.v-d2 .ftr{font-size:var(--t-meta)}
.v-d2 cite{line-height:1.45}

/* body: one size */
.v-d2 .ledger p,.v-d2 .steps,.v-d2 .stat span,.v-d2 .needs,.v-d2 .ask,.v-d2 .objects p{font-size:var(--t-body);line-height:1.5}
/* lede: one size */
.v-d2 .lede,.v-d2 .about .lede{font-size:var(--t-lede);line-height:1.45}
/* titles: one size */
.v-d2 .q-ledger h3,.v-d2 .steps tbody th,.v-d2 .objects h3,.v-d2 .ledger h3{font-size:var(--t-title);line-height:1.12}
/* section headings, contact included */
.v-d2 .body h2,.v-d2 .contact .body h2{font-size:var(--t-sec)}
/* numbers sit below section headings */
.v-d2 .stat b{font-size:var(--t-num)}
.v-d2 .objno b{font-size:clamp(40px,5vw,72px)}
/* the green field: second only to the hero */
.v-d2 .how .mfbn,.v-d2 .mfbn{font-size:var(--t-field)!important;line-height:.9!important}
/* hero: always the largest */
.v-d2 h1{font-size:var(--t-hero)}
@media (max-width:760px){
  .v-d2 .how .mfbn,.v-d2 .mfbn{font-size:var(--t-field)!important}
}

.v-d2 .stat cite{font-size:var(--t-meta)!important;letter-spacing:.03em}

/* fix: section numbers are not labels; restore 40px desktop, 24px small screens */
.v-d2 .lbl .idx{font-size:40px}
@media(max-width:900px){.v-d2 .lbl .idx{font-size:24px}}
.v-d2 h1,.v-d2 .body h2,.v-d2 h3{text-wrap:balance}

/* header without the middle column; location and time live in the spec strip (24 Oct) */
.v-d2 .hdr .nav{grid-column:5/13}
.v-d2>.spec{grid-template-columns:1fr 1.6fr 1fr 1fr}
@media(max-width:900px){.v-d2 .hdr .nav{grid-column:1}.v-d2>.spec{grid-template-columns:1fr 1fr}}

/* ===== D2 shared chrome (24 Oct): brand link, Menu button, slim spec strip ===== */
.v-d2 .brandblk{display:block;text-decoration:none}
.v-d2 .menu{display:none;font:var(--t-label)/1 var(--mono);text-transform:uppercase;letter-spacing:.05em;background:none;border:var(--line);padding:10px 14px;color:inherit;cursor:pointer}
.v-d2 .nav a[aria-current="page"]{text-decoration-thickness:3px;text-decoration-color:var(--signal)}
.v-d2>.spec.slim dt{display:inline;margin-right:8px}.v-d2>.spec.slim dd{display:inline}
.v-d2>.spec.slim div{padding:8px var(--pad)}
@media(max-width:900px){
  .v-d2 .hdr{grid-template-columns:1fr auto;align-items:center;padding-bottom:16px}
  .v-d2 .hdr .brandblk{grid-column:1;grid-row:1}
  .v-d2 .menu{display:inline-flex;grid-column:2;grid-row:1}
  .v-d2 .hdr .nav{grid-column:1/-1;display:none;flex-direction:column;gap:0;border-top:var(--line);margin:8px calc(-1*var(--pad)) -16px}
  .v-d2 .hdr .nav.is-open{display:flex}
  .v-d2 .hdr .nav a{padding:14px var(--pad);border-bottom:var(--line);text-decoration:none;font-size:14px}
  .v-d2 .hdr .nav a:last-child{border-bottom:0}
  .v-d2>.spec.slim div{padding:8px var(--pad)}
}

/* ===== D2 inner pages: product hero, forms, cells, report, FAQ, green field ===== */
.v-d2 .objects a{text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:8px;height:100%}
.v-d2 .objects li:has(a){padding:0}.v-d2 .objects li a{padding:18px}
.v-d2 .objects .go{font:var(--t-label)/1.4 var(--mono);color:var(--text-green)}
.v-d2 .objects li:hover .go{color:var(--signal)}
.v-d2 .phero{padding:28px var(--pad) 48px;border-bottom:var(--line);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:24px}
.v-d2 .phero .objno,.v-d2 .phero h1{grid-column:1/-1}
.v-d2 .phero h1{font-size:clamp(40px,5.4vw,80px);margin:24px 0 28px;max-width:16ch}
.v-d2 .phero .pmain{grid-column:1/8}
.v-d2 .phero .pspec{grid-column:9/13;align-self:start;border:var(--line);display:block}
.v-d2 .pspec div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:10px 14px;border-bottom:var(--line)}
.v-d2 .pspec div:last-child{border-bottom:0}
.v-d2 .pspec dt{font:var(--t-label)/1.5 var(--mono);text-transform:uppercase;letter-spacing:.05em;opacity:.65}
.v-d2 .pspec dd{font:700 var(--t-label)/1.5 var(--mono)}
.v-d2 .kick{font:var(--t-label)/1.4 var(--mono);text-transform:uppercase;letter-spacing:.05em;margin-bottom:16px;display:flex;align-items:center;gap:10px}
.v-d2 .kick i{width:10px;height:10px;background:var(--signal);border:1px solid #000;display:inline-block}
.v-d2 .url{margin-top:28px;max-width:640px}
.v-d2 .url label,.v-d2 .flabel{display:block;font:var(--t-label)/1.4 var(--mono);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.v-d2 .urlrow{display:flex;border:2px solid #000;background:#fff}
.v-d2 .urlrow input{flex:1;min-width:0;border:0;background:#fff;padding:0 16px;font:var(--t-body)/1 var(--mono);height:56px;color:#000}
.v-d2 .urlrow .btn{border:0;border-left:2px solid #000;cursor:pointer}
.v-d2 input[aria-invalid="true"]{outline:2px solid #C62828;outline-offset:-2px}
.v-d2 .fine{font:var(--t-meta)/1.5 var(--mono);margin-top:10px}
.v-d2 .formnote{font-size:15px;line-height:1.5;margin-top:12px;padding:10px 12px;border:var(--line);background:#fff;max-width:640px}
.v-d2 .cells{list-style:none;display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));border-top:var(--line);border-left:var(--line)}
.v-d2 .cells li{padding:18px;border-right:var(--line);border-bottom:var(--line);display:flex;flex-direction:column;gap:10px}
.v-d2 .cells h3{font-size:var(--t-title);line-height:1.12;letter-spacing:-.025em}
.v-d2 .cells p{font-size:var(--t-body);line-height:1.5}
.v-d2 .cells .otag{margin-left:0;align-self:flex-start}
.v-d2 .cells li:hover{background:#000;color:var(--paper)}.v-d2 .cells li:hover .otag{border-color:var(--paper)}
.v-d2 .split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:40px;align-items:start}
.v-d2 .report{border:2px solid #000;background:#fff}
.v-d2 .report .stamp{display:flex;justify-content:space-between;padding:8px 14px;background:var(--signal);border-bottom:2px solid #000;font:700 var(--t-label)/1.4 var(--mono);text-transform:uppercase;letter-spacing:.05em}
.v-d2 .report .ans{padding:18px 14px;border-bottom:var(--line)}
.v-d2 .report .rq{font-size:var(--t-body);font-weight:700;margin:6px 0 10px}
.v-d2 .report .word{display:block;font:700 var(--t-num)/1 var(--font);letter-spacing:-.04em}
.v-d2 .report .n{display:block;font:var(--t-meta)/1.5 var(--mono);margin-top:8px}
.v-d2 .report .bars{padding:14px;border-bottom:var(--line);display:grid;gap:8px}
.v-d2 .bar{display:grid;grid-template-columns:72px 1fr 32px;gap:10px;align-items:center;font:var(--t-label)/1 var(--mono)}
.v-d2 .bar i{display:block;height:14px;background:#D9D9D9}
.v-d2 .bar.you i{background:var(--signal);outline:1px solid #000}
.v-d2 .bar b{text-align:right}
.v-d2 .report .wrong{display:flex;justify-content:space-between;gap:16px;padding:12px 14px;border-bottom:var(--line);font-size:15px}
.v-d2 .report .wrong span{font:var(--t-label)/1.4 var(--mono);white-space:nowrap;color:#B45309}
.v-d2 .report .score{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;padding:14px}
.v-d2 .report .score b{font:700 var(--t-num)/1 var(--font);letter-spacing:-.04em}
.v-d2 .report .score span{font:var(--t-meta)/1.4 var(--mono)}
.v-d2 .ticks{list-style:none;border-top:var(--line);margin-top:20px}
.v-d2 .ticks li{padding:10px 0 10px 28px;border-bottom:var(--line);position:relative}
.v-d2 .ticks li::before{content:"+";position:absolute;left:4px;font:700 var(--t-body)/1.5 var(--mono)}
.v-d2 .pull{font:700 var(--t-title)/1.2 var(--font);letter-spacing:-.025em}
.v-d2 .src{font:var(--t-meta)/1.5 var(--mono);margin-top:14px;opacity:.75}
.v-d2 .faq{border-top:var(--line);max-width:900px}
.v-d2 .faq details{border-bottom:var(--line)}
.v-d2 .faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;padding:16px 12px;font:700 var(--t-body)/1.4 var(--font)}
.v-d2 .faq summary::-webkit-details-marker{display:none}
.v-d2 .faq summary::after{content:"+";font:700 var(--t-body)/1.4 var(--mono)}
.v-d2 .faq details[open] summary::after{content:"\2212"}
.v-d2 .faq summary:hover{background:#000;color:var(--paper)}
.v-d2 .faq details p{padding:0 12px 16px;max-width:720px}
.v-d2 .faq a{color:var(--text-green)}
.v-d2 .field{background:var(--signal)}
.v-d2 .field::before{background:var(--signal)}
.v-d2 .field .urlrow{background:#fff}
.v-d2 .field .btn{background:#000;color:var(--signal)}.v-d2 .field .btn:hover{background:#fff;color:#000}
.v-d2 .field .lede{margin-bottom:8px}
/* framer form */
.v-d2 .fields{border-top:var(--line);max-width:760px}
.v-d2 .ffield{padding:18px 0;border-bottom:var(--line)}
.v-d2 .ffield label{display:flex;justify-content:space-between;gap:16px;font-weight:700;font-size:var(--t-body)}
.v-d2 .ffield label span{font:var(--t-label)/1.6 var(--mono);text-transform:uppercase;letter-spacing:.05em;font-weight:400;opacity:.7}
.v-d2 .ffield p{font-size:15px;line-height:1.45;margin-top:4px;color:#595959}
.v-d2 .ffield textarea,.v-d2 .ffield input,.v-d2 .brief textarea{display:block;width:100%;margin-top:10px;border:var(--line);background:#fff;padding:12px;font:var(--t-body)/1.5 var(--font);color:#000;border-radius:0}
.v-d2 .fields .btn{margin-top:24px;cursor:pointer}
.v-d2 .note{font:var(--t-meta)/1.5 var(--mono);margin-top:16px;max-width:640px}
.v-d2 .brief textarea{font:var(--t-meta)/1.6 var(--mono);min-height:420px}
.v-d2 .brief-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px;align-items:center}
.v-d2 .brief-actions button,.v-d2 .brief-actions a{font:var(--t-label)/1 var(--mono);text-transform:uppercase;letter-spacing:.05em;padding:12px 14px;border:var(--line);background:none;color:inherit;cursor:pointer;text-decoration:none}
.v-d2 .brief-actions button:hover,.v-d2 .brief-actions a:hover{background:#000;color:var(--paper)}
.v-d2 [role=status]:empty{display:none}
/* foundations */
.v-d2 .sw{height:96px;border-bottom:var(--line);margin:-18px -18px 6px}
.v-d2 .cells code,.v-d2 .scale code{font:var(--t-label)/1.4 var(--mono)}
.v-d2 .flag{font:var(--t-label)/1.4 var(--mono);color:#B45309;text-transform:uppercase;letter-spacing:.04em}
.v-d2 .scale{width:100%;border-collapse:collapse}
.v-d2 .scale th,.v-d2 .scale td{text-align:left;padding:12px;border-bottom:var(--line);vertical-align:baseline}
.v-d2 .scale thead th{font:var(--t-label)/1.4 var(--mono);text-transform:uppercase;letter-spacing:.06em;border-top:var(--line)}
.v-d2 .scale td:first-child{white-space:nowrap}
.v-d2 .figs{display:grid;grid-template-columns:1fr 1fr;border-top:var(--line);border-left:var(--line)}
.v-d2 .figs figure{border-right:var(--line);border-bottom:var(--line);display:flex;flex-direction:column}
.v-d2 .figs img{mix-blend-mode:multiply;max-height:320px;margin:24px auto;object-fit:contain}
.v-d2 .figs figcaption{border-top:var(--line);padding:10px 14px;font:var(--t-label)/1.5 var(--mono)}
.v-d2 .prose p+p{margin-top:12px}.v-d2 .prose{max-width:760px}
@media(max-width:900px){
  .v-d2 .phero .pmain,.v-d2 .phero .pspec{grid-column:1/-1}
  .v-d2 .phero .pspec{margin-top:32px}
  .v-d2 .cells{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v-d2 .split,.v-d2 .figs{grid-template-columns:1fr}
}
@media(max-width:560px){
  .v-d2 .cells{grid-template-columns:1fr}
  .v-d2 .urlrow{flex-direction:column}.v-d2 .urlrow .btn{border-left:0;border-top:2px solid #000;justify-content:space-between}
  .v-d2 .scale thead{display:none}.v-d2 .scale tr{display:grid;grid-template-columns:1fr;padding:10px 0;border-bottom:var(--line)}.v-d2 .scale td{border:0;padding:2px 0}
}
.v-d2 .steps.plain td:last-child{font-weight:400}
.v-d2 .scale td:last-child{white-space:nowrap}
.v-d2 .lab-bar{flex-wrap:wrap;row-gap:8px}.v-d2 .lab-bar nav{flex-wrap:wrap}
@media(max-width:900px){.v-d2>.spec.slim dt,.v-d2>.spec.slim dd{display:block}.v-d2>.spec.slim dt{margin:0}}
@media(max-width:560px){.v-d2 .urlrow input{flex:none;height:56px}}
.v-d2 .stat cite a{color:inherit;text-underline-offset:3px}.v-d2 .ledger li:hover cite a{color:inherit}
.v-d2 .spec dd a,.v-d2 .ftr a{color:inherit;text-underline-offset:3px}.v-d2 .ftr a:hover,.v-d2 .spec dd a:hover{text-decoration-color:var(--signal);text-decoration-thickness:3px}
/* privacy table (25 Oct) */
.v-d2 .ptable tbody th{font-size:var(--t-body);letter-spacing:0;width:16%}
.v-d2 .ptable td,.v-d2 .ptable th{font-size:15px;line-height:1.45}
.v-d2 .ptable thead th{font-size:var(--t-label)}
.v-d2 .ptable td:last-child{font-weight:400}
.v-d2 .prose a,.v-d2 .src a,.v-d2 .pspec a{color:var(--text-green)}
@media(max-width:900px){
  .v-d2 .ptable thead{display:none}
  .v-d2 .ptable tr{display:block;padding:14px 0;border-bottom:var(--line)}
  .v-d2 .ptable th,.v-d2 .ptable td{display:block;border:0;padding:4px 0;width:auto}
  .v-d2 .ptable tbody th{font-size:var(--t-title);font-weight:700;padding-bottom:8px}
  .v-d2 .ptable td::before{display:block;font:var(--t-label)/1.6 var(--mono);text-transform:uppercase;letter-spacing:.05em;opacity:.65}
  .v-d2 .ptable td:nth-child(2)::before{content:"What we collect"}
  .v-d2 .ptable td:nth-child(3)::before{content:"Why"}
  .v-d2 .ptable td:nth-child(4)::before{content:"Lawful basis"}
  .v-d2 .ptable td:nth-child(5)::before{content:"How long"}
}
@media(max-width:900px){.v-d2 .steps.ptable tr{display:block}.v-d2 .steps.ptable th,.v-d2 .steps.ptable td{grid-column:auto;grid-row:auto;width:auto}}
