html { scroll-padding-top: 84px; }
body { font-size-adjust: from-font; }
main:focus { outline: none; }
.skip-link { position:fixed; top:8px; left:8px; z-index:1000; background:white; color:black; padding:12px 20px; transform:translateY(-180%); }
.skip-link:focus { transform:none; }
.header { border:0; height:88px; }
.header .nav a { display:inline-flex; min-height:44px; align-items:center; }
.card .kind, .evidence { font-size:13px; }
.hero .card { will-change:transform; }
.hero .card.ghost { will-change:opacity; }
.card.b-dark { left:10%; top:0; transform:none; }
.card.b-ghost { left:10%; top:0; transform:none; }
.card.cross-white { color:black; background:white; border-color:var(--grey-200); }
.card.cross-white .kind,.card.cross-white .price small {color:var(--grey-500);}
.symptoms .left li a { text-decoration:none; }
.symptoms .left li a:focus-visible { outline-offset:5px; }
.proof .row .m { color:#FF6B5E; }
.proof picture {display:block;}
.proof .label {color:var(--grey-400);}
.video video { width:100%; height:auto; aspect-ratio:16/9; background:black; }
.tabs button { min-height:44px; }
.table-wrap {overflow:auto; scrollbar-width:auto;}
.mech svg path {stroke-dashoffset:0;}
dialog#mobile-menu { width:100%; max-width:none; height:100dvh; max-height:none; inset:0; padding:24px; border:0; margin:0; background:white; color:black; }
dialog#mobile-menu::backdrop {background:#0008;}
.menu-top {display:flex; justify-content:space-between; align-items:center; font-weight:600;}
#mobile-menu nav {display:grid;gap:12px; padding-block:32px;}
#mobile-menu nav a {font-family:var(--font-display); font-size:44px; line-height:1.1; text-decoration:none; min-height:48px;}
.menu-bottom {display:grid;gap:12px;font-size:15px;}
body:has(#mobile-menu[open]) {overflow:hidden;}
.elementor {--widgets-spacing:0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}
.elementor-widget-container > :last-child {margin-bottom:0;}
.elementor-element.handoff-header-widget,.elementor-element.handoff-section-widget,.elementor-element.handoff-content-widget,.elementor-element.handoff-footer-widget,.handoff-main {display:contents!important;}
.handoff-header-widget > .elementor-widget-container,.handoff-section-widget > .elementor-widget-container,.handoff-content-widget > .elementor-widget-container,.handoff-footer-widget > .elementor-widget-container,.elementor-shortcode {display:contents;}
.elementor-widget-text-editor {font-family:inherit;color:inherit;}
.elementor p {margin-block:0;}
.elementor a {color:inherit;}
.elementor .btn {color:white;}
.elementor .btn.secondary {color:black;}
.elementor .hero-cta .btn {color:black;}
.elementor .hero-cta .btn.secondary {color:white;}
.elementor .on-black .btn {color:black;}
.elementor .on-black .btn.secondary {color:white;}
.elementor .h2 {font-family:var(--font-display);font-weight:700;}
.elementor .h3 {font-family:var(--font-text);font-weight:600;}
.elementor img {height:auto;}
@supports ((animation-timeline:scroll()) and (animation-range:0% 100%)) {
 @media (min-width:601px) and (prefers-reduced-motion:no-preference) {
  .header {animation:header-compact linear both;animation-timeline:scroll(root block);animation-range:0px 160px;}
 }
}
@keyframes header-compact {to{height:64px;}}
@media(max-width:900px) { .header .name {font-size:18px;} }
@media(max-width:700px) {
 .header {height:64px;}
 .hero .hero-eyebrow,.hero .hero-h1 {color:black;mix-blend-mode:normal;}
 .hero-h1 {font-size:44px;}
 .hero .stage::before {left:0;right:0;}
 .hero .stage {width:100%;}
 .hero .card.b-dark,.hero .card.b-ghost {display:none;}
 .elementor .hero-cta .btn {color:white;}
 .elementor .hero-cta .btn.secondary {color:black;}
 .hero-bottom {padding-inline:0;}
 .card.cross-white.a {bottom:16px;left:50%;}
}
@media(prefers-reduced-motion:reduce) {
 .header {height:64px;animation:none;}
 .hero .card {will-change:auto;}
 .symptoms .left {position:static;height:auto;align-content:start;}
 .symptoms .left li {color:black;}
 .proof {min-height:0;}
}

.dark > .label,.on-black .kv dt {color:var(--grey-400);}

.fixes,.metrics,.works {border:0;gap:1px;background:var(--grey-200);padding:1px;}
.fix,.fix:first-child,.metric,.metric:first-child,.metric:nth-child(n),.work,.work:first-child {border:0;background:var(--white);}
@media(min-width:701px) and (prefers-reduced-motion:no-preference) {
 .hero::before {animation:panel-enter 600ms var(--ease-out) 100ms backwards;}
 .hero-h1,.hero-eyebrow {animation:title-enter 600ms var(--ease-out) 200ms backwards;}
 .header {opacity:1;}
}
@keyframes panel-enter {from {clip-path:inset(0 0 0 100%);}to {clip-path:inset(0);}}
@keyframes title-enter {from {translate:0 24px;opacity:0;}to {translate:0 0;opacity:1;}}

html:has(#mobile-menu[open]) {overflow:hidden;}
#check .ledger-download {margin:24px 0 0;}

.handoff-main {display:block!important;width:100%;max-width:none;padding:0!important;}
.hero .stage .card.b-ghost {top:0;left:10%;transform:none;}
.hero.split-text-ready .hero-h1,.hero.split-text-ready .hero-eyebrow,.hero.split-text-ready .counts,.hero.split-text-ready .scroll-hint {color:var(--black);mix-blend-mode:normal;}
.hero .seam-copy {color:var(--white)!important;mix-blend-mode:normal;pointer-events:none;}
.hero .hero-h1.seam-copy {position:absolute;margin:0;}
.elementor .nav a {color:var(--grey-500);}
.elementor .nav a[aria-current] {color:var(--black);}

/* Review refinements: quieter type, even card spacing, visible product evidence. */
.hero .card .kind {line-height:1.55;}
#h-symptoms {font-weight:500;}
.symptoms .left li {font-size:clamp(1.375rem,1rem + 1vw,1.875rem);line-height:1.15;}
.symptoms .left li a {display:block;min-height:44px;}
@media(min-width:701px) {
 .hero-top {padding-top:56px;}
 .hero > .stage {--hero-card-width:min(320px,calc(50% - 48px));height:416px;margin-block:48px 64px;}
 .hero .stage .card {width:var(--hero-card-width);min-height:192px;align-content:start;}
 .hero .stage .card.b,.hero .stage .card.b-dark,.hero .stage .card.b-ghost {top:0;left:calc(25% - var(--hero-card-width) / 2);transform:none;}
 .hero .stage .card.a,.hero .stage .card.ghost:not(.b-ghost) {top:224px;bottom:auto;transform:none;}
 .hero .stage .card.a {left:calc(75% - var(--hero-card-width) / 2);}
 .hero .stage .card.ghost:not(.b-ghost) {left:calc(25% - var(--hero-card-width) / 2);}
}
@media(max-width:700px) {
 .hero .hero-top {padding-top:48px;}
 .hero .stage {margin-top:24px;margin-bottom:24px;}
 .hero .stage-2 {margin-top:0;margin-bottom:64px;}
}
.price-visual {overflow:hidden;}
.price-sides {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
.price-side {min-width:0;padding:24px 20px;display:grid;gap:16px;background:var(--white);color:var(--black);}
.price-side + .price-side {background:var(--grey-100);border-left:1px solid var(--grey-200);}
.price-side .label {color:var(--grey-500);}
.price-side picture {width:100%;aspect-ratio:1;}
.price-side img {width:100%;height:100%;aspect-ratio:1;object-fit:contain;}
.price-side .product-price {font-family:var(--font-display);font-weight:700;font-size:clamp(2.5rem,2rem + 1vw,3.5rem);line-height:1;}
.price-side .product-price small {display:block;margin-top:8px;font-family:var(--font-text);font-size:.8125rem;font-weight:500;line-height:1.4;color:var(--grey-500);}
.price-side:last-child .product-price {color:var(--red);}
.price-visual > figcaption {padding:16px 20px;display:grid;gap:4px;}
.captured-evidence {min-width:0;}
.captured-evidence summary {min-height:44px;cursor:pointer;font-size:.9375rem;text-decoration:underline;text-underline-offset:4px;}
.captured-evidence[open] summary {margin-bottom:16px;}
@media(max-width:600px) {.price-side {padding:20px 12px;gap:12px;}.price-visual > figcaption {padding:16px;}}

/* An observed product makes the gap between the two systems visible. */
.mech-visual { grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr); gap:24px; }
.mech-visual .col { min-width:0; padding:24px; gap:24px; }
.mech-visual .col > .label { min-height:36px; }
.mech-visual .dark .label { color:var(--grey-400); }
.mech-visual .mech-product { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; align-items:center; }
.mech-visual .mech-product-image { aspect-ratio:1; background:#f2f2ef; }
.mech-visual .mech-product-image img { width:100%; height:100%; object-fit:contain; }
.mech-visual .mech-product-copy { min-width:0; display:grid; gap:8px; }
.mech-visual .mech-product-name { font-size:1.0625rem; font-weight:600; line-height:1.3; }
.mech-visual .mech-product-price { font-family:var(--font-display); font-size:clamp(2rem,1.5rem + 1vw,2.75rem); font-weight:600; line-height:1; font-variant-numeric:tabular-nums; }
.mech-visual .gap { align-content:center; gap:16px; }
.mech-visual .mech-disconnect { width:120px; height:90px; object-fit:contain; }
.mech-visual .gap .label { color:var(--black); max-width:18ch; }
@media (max-width:1100px) and (min-width:835px) {
  .mech-visual { grid-template-columns:minmax(0,1fr) 96px minmax(0,1fr); gap:16px; }
  .mech-visual .col { padding:20px; }
  .mech-visual .mech-product { gap:12px; }
  .mech-visual .mech-disconnect { width:96px; height:72px; }
}
@media (max-width:834px) {
  .mech-visual { grid-template-columns:minmax(0,1fr); gap:16px; }
  .mech-visual .col > .label { min-height:0; }
  .mech-visual .mech-product { grid-template-columns:minmax(0,180px) minmax(0,1fr); }
  .mech-visual .gap { padding-block:8px; gap:8px; }
  .mech-visual .mech-disconnect { width:96px; height:72px; }
  .mech-visual .gap .label { max-width:30ch; }
}
@media (max-width:420px) {
  .mech-visual .col { padding:20px; }
  .mech-visual .mech-product { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:16px; }
}

.mech-visual .mech-product-image picture {display:block;width:100%;height:100%;}

@media(min-width:701px) and (max-height:1000px) {
 .hero-top {padding-top:40px;}
 .hero-h1 {font-size:clamp(2.5rem,1rem + 2.8vw,3.5rem);}
 .hero > .stage {height:364px;margin-block:40px 48px;}
 .hero .stage .card {min-height:170px;padding:14px;gap:6px;}
 .hero .card .kind {font-size:.6875rem;}
 .hero .card .pname {font-size:1rem;}
 .hero .card .price {font-size:2.25rem;}
 .hero .card .price small {font-size:.6875rem;}
 .hero .card .buy {height:36px;font-size:.8125rem;}
 .hero .card.notfound .pname {font-size:1.875rem;}
 .hero .stage .card.a,.hero .stage .card.ghost:not(.b-ghost) {top:194px;}
 .hero-bottom {padding-bottom:32px;}
}
