/* Faithful v3 presentation; backend/form/price handlers remain in the page. */
:root,[data-theme="light"] {
  color-scheme:light;
  --bg:#FBFAF8;--bg-2:#fff;--panel:#F4F2EE;--panel-2:#eeecf7;--tint:#F0EEFF;
  --line:rgba(14,14,20,.09);--line-2:rgba(14,14,20,.16);
  --border:var(--line);--border-2:var(--line-2);
  --text:#0E0E14;--text-2:#5A5A66;--text-3:#6E6E7A;
  --accent:#5B47F0;--accent-soft:rgba(91,71,240,.08);--accent-soft-2:rgba(91,71,240,.18);
  --ok:#15803D;--inv:#0E0E14;--inv-text:#FBFAF8;
  --wash-a:rgba(79,195,255,.20);--wash-b:rgba(122,91,255,.16);--wash-c:rgba(228,85,207,.14);
  --ev-brick:#B0472B;--ev-flame:#E08A3C;--ev-gold:#C9A24B;--ev-cream:#F1E4CC;--ev-dark:#1B1410;
  --shadow-lg:0 24px 70px -30px rgba(14,14,20,.28);--shadow-sm:0 2px 12px rgba(14,14,20,.05);
}
[data-theme="dark"] {
  color-scheme:dark;
  --bg:#08080C;--bg-2:#0E0E14;--panel:#14141C;--panel-2:#1d1b2b;--tint:#15132A;
  --line:rgba(255,255,255,.08);--line-2:rgba(255,255,255,.16);
  --text:#F2F2F6;--text-2:#A6A6B2;--text-3:#9696A2;
  --accent:#9585FF;--accent-soft:rgba(122,91,255,.13);--accent-soft-2:rgba(122,91,255,.24);
  --ok:#4ADE80;--inv:#F2F2F6;--inv-text:#08080C;
  --wash-a:rgba(79,195,255,.16);--wash-b:rgba(122,91,255,.18);--wash-c:rgba(228,85,207,.12);
  --shadow-lg:0 24px 70px -30px rgba(0,0,0,.7);
}
html {scroll-behavior:smooth;scroll-padding-top:94px;}
.landing-v3 {font-family:'Golos Text',system-ui,sans-serif;line-height:1.5;}
.landing-v3 *, .landing-v3 *::before,.landing-v3 *::after {box-sizing:border-box;}
.landing-v3 [hidden] {display:none!important;}
.landing-v3 :is(h1,h2,h3):not(#product *) {font-family:'Onest','Golos Text',system-ui,sans-serif!important;}
.landing-v3 :is(a,button,input,textarea,summary):focus-visible {outline:3px solid var(--accent);outline-offset:5px;}
.landing-v3 :is(section,[id]) {scroll-margin-top:94px;}
.landing-v3 img {max-width:100%;}
.fidelity-hero h1 > span {display:block;text-wrap:balance;}
.fidelity-hero h1 > span:last-child {font-size:.78em;margin-top:.14em;}
.v3-shell {width:min(100% - 80px,1240px);margin-inline:auto;}
.v3-topbar {position:sticky;top:0;z-index:70;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);}
.v3-nav-row {display:flex;align-items:center;gap:24px;min-height:72px;}
.v3-brand {display:inline-flex;gap:10px;align-items:center;font:700 23px 'Onest',sans-serif;letter-spacing:-.8px;color:var(--text);white-space:nowrap;}
.v3-brand img {width:auto;height:26px;}
.v3-brand-dot {color:var(--accent);}
.v3-desktop-links {display:flex;align-items:center;gap:22px;margin-inline:auto;white-space:nowrap;}
.v3-desktop-links a,.v3-signin {font-size:13px;color:var(--text-2);transition:color .2s;}
.v3-desktop-links a:hover,.v3-signin:hover {color:var(--accent);}
.v3-header-actions {display:flex;align-items:center;gap:11px;white-space:nowrap;}
.v3-chatgpt-icon {display:block;width:20px;height:20px;flex:none;}
.v3-chatgpt-short {display:none;}
.v3-header-actions .lang-panel {max-height:calc(100dvh - 88px);overflow-y:auto;}
.fidelity-footer .lang-panel {max-height:calc(100dvh - 120px);overflow-y:auto;}
.v3-theme {width:36px;height:36px;border:1px solid var(--line);background:transparent;color:var(--text);cursor:pointer;font-size:23px;border-radius:12px;}
.v3-button {display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 24px;border:1px solid transparent;border-radius:999px;font:500 15px/1.3 'Golos Text',sans-serif;cursor:pointer;text-align:center;transition:transform .3s cubic-bezier(.16,1,.3,1),opacity .25s;}
.v3-button-primary,.v3-button-nav {background:var(--inv);color:var(--inv-text);}
.v3-button-primary:hover,.v3-button-nav:hover {color:var(--inv-text);}
.v3-button-secondary {border-color:var(--line-2);background:var(--bg-2);color:var(--text);}
.v3-button-nav {min-height:42px;padding:10px 17px;font-size:13px;}
.v3-mobile-menu {display:none;}
.v3-anchor {display:block;scroll-margin-top:94px;}
.v3-small {font-size:12px;color:var(--text-3);line-height:1.65;}
.v3-promo {margin:22px auto 0;text-align:center;}
.v3-promo a {display:inline-flex;align-items:center;justify-content:center;gap:10px;max-width:100%;min-height:44px;font:500 14px/1.5 'Golos Text',sans-serif;color:var(--text-2);text-decoration:none;}
.v3-promo svg {flex:none;}.v3-promo-duration {font-size:12px;color:var(--text-3);white-space:nowrap;}
.v3-promo a:hover {color:var(--text);}.v3-promo a:hover>span:first-of-type {text-decoration:underline;text-underline-offset:4px;}
@media(max-width:400px){.v3-promo a{gap:8px;font-size:12px;}.v3-promo-duration{display:none;}}
/* Source sections own their layout. These classes handle ported interaction states. */
.landing-v3 .page {position:relative;}
.landing-v3 .page::before {content:'';position:absolute;inset:0 0 auto;height:1100px;pointer-events:none;background:radial-gradient(900px 520px at 12% -6%,var(--wash-a),transparent 62%),radial-gradient(760px 460px at 78% 2%,var(--wash-c),transparent 60%),radial-gradient(1100px 620px at 50% 14%,var(--wash-b),transparent 68%);}
.landing-v3 main {position:relative;}
.fidelity-hero {isolation:isolate;}
.fidelity-hero .hero-visual {isolation:isolate;}
.fidelity-hero [data-drift] {transform:translate3d(0,var(--drift-y,0px),0) rotate(var(--tilt,0deg))!important;}
.fidelity-hero [data-drift] img {transition:transform .7s cubic-bezier(.16,1,.3,1);}
.fidelity-channel-row {color:var(--text-2);}
.fidelity-channel-row svg {flex:none;}
.v3-lift {transition:transform .4s cubic-bezier(.16,1,.3,1);}
.v3-image-lift img {transition:transform .6s cubic-bezier(.16,1,.3,1);}
.landing-v3 [role="tablist"] {scrollbar-width:thin;scrollbar-color:var(--line-2) transparent;}
[data-product-tab] {min-height:46px;white-space:nowrap;cursor:pointer;border:1px solid transparent!important;transition:background .2s,color .2s,transform .2s;}
[data-product-tab][aria-selected="true"] {background:var(--inv)!important;color:var(--inv-text)!important;}
[data-product-tab][aria-selected="false"] {background:transparent!important;color:var(--text-2)!important;}
[data-product-panel] {min-width:0;}
[data-product-panel].panel-enter {animation:fidelity-panel-in .5s cubic-bezier(.16,1,.3,1) both;}
#product-showcase .fidelity-product-panels {min-height:420px;}
/* The existing walkthrough has its own layout and animation ownership. */
.v3-walkthrough {border:1px solid var(--line-2);border-radius:22px;background:var(--bg-2);overflow:hidden;}
.v3-walkthrough>summary {display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 28px;cursor:pointer;min-height:64px;font:600 17px "Onest",sans-serif;}
.v3-walkthrough>summary>span:last-child {transition:transform .3s;}
.v3-walkthrough[open]>summary>span:last-child {transform:rotate(45deg);}
.v3-walkthrough[open]>summary {border-bottom:1px solid var(--line);}
.landing-v3 .demo-slot {margin-top:0!important;min-height:0!important;}
.landing-v3 #product {padding:24px 0!important;background:transparent;}
.landing-v3 #product>.container {padding-inline:24px;}
.landing-v3 #product .dm-head {display:none;}
.landing-v3 #product .dm-stage {margin-top:0;}
/* Hidden scenes must not make focus scroll the active scene out of its canvas. */
.landing-v3 #product .dm-canvas {overflow:clip;}
.landing-v3 #product .dm-close {font-size:18px;}
#cost table {border-collapse:collapse;width:100%;}
#cost :is(th,td) {vertical-align:top;}
#cost th {text-align:left;}
.fidelity-table-scroll {overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;}
.landing-v3 #faq>.container {padding-block:0!important;}
.landing-v3 #faq h2 {font-size:clamp(32px,5.4vw,72px)!important;line-height:1.04!important;font-weight:700!important;letter-spacing:-.032em!important;}
.landing-v3 #faq h3 {font-family:'Golos Text',sans-serif!important;}
.landing-v3 #faq details {transition:background .25s,border-color .25s;}
.landing-v3 #faq summary {min-height:64px;}
.landing-v3 #start h2 {font-size:clamp(30px,4.6vw,60px)!important;line-height:1.05!important;font-weight:700!important;letter-spacing:-.03em!important;}
.landing-v3 #start :is(input,textarea) {border-radius:14px;}
.v3-community {margin-top:22px;padding-top:18px;border-top:1px solid var(--border);}
.v3-community p {margin:5px 0 0;max-width:42ch;font:400 13px/1.6 'Golos Text',sans-serif;color:var(--text-3);}
.v3-discord {display:inline-flex;align-items:center;gap:9px;max-width:100%;min-height:44px;color:var(--accent);font:600 13.5px/1.5 'Golos Text',sans-serif;text-decoration:none;}
.v3-discord svg {flex:0 0 20px;}
.v3-discord>span {min-width:0;}
.v3-discord-arrow {flex:0 0 auto;}
.v3-discord:hover {text-decoration:underline;text-underline-offset:4px;}
.v3-discord:focus-visible {outline:3px solid var(--accent);outline-offset:4px;border-radius:6px;}
.v3-discord-footer {align-self:flex-start;color:inherit;font-weight:500;}
.v3-community-sr {position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.landing-v3 .footer a {transition:color .2s;}
/* Content stays visible without JS; only offscreen items are progressively armed. */
.landing-v3 .reveal-pending:not(#product *) {opacity:0;transform:translateY(24px);}
.landing-v3 .reveal-visible:not(#product *) {opacity:1;transform:none;transition:opacity .72s cubic-bezier(.16,1,.3,1),transform .72s cubic-bezier(.16,1,.3,1)!important;transition-delay:var(--reveal-delay,0ms)!important;}
@keyframes riseIn {from {opacity:0;transform:translateY(20px);} to {opacity:1;transform:none;}}
@keyframes fadeSlide {from {opacity:0;transform:translateY(14px);} to {opacity:1;transform:none;}}
@keyframes fidelity-panel-in {from {opacity:0;transform:translateY(12px);} to {opacity:1;transform:none;}}
@media (hover:hover) and (pointer:fine) {
  .v3-button:hover,.v3-lift:hover,.landing-v3 .v3-lift.reveal-visible:hover:not(#product *) {transform:translateY(-5px);transition-delay:0ms!important;}
  .v3-image-lift:hover img {transform:scale(1.035);}
  .fidelity-hero [data-drift]:hover img {transform:scale(1.035);}
  [data-product-tab]:hover {transform:translateY(-2px);}
}
@media(max-width:1190px) {
  .v3-nav-row {gap:15px;}
  .v3-desktop-links {gap:15px;}
  .v3-header-actions {gap:8px;}
  .v3-desktop-links a {font-size:12px;}
}
@media(max-width:1050px) {
  .v3-shell {width:calc(100% - 48px);}
  .v3-nav-row {min-height:68px;justify-content:space-between;}
  .v3-desktop-links,.v3-header-actions>.v3-theme,.v3-header-actions>.v3-signin {display:none;}
  .v3-nav-row {gap:12px;}
  .v3-header-actions {margin-left:auto;gap:10px;}
  .v3-header-actions .lang-dd>summary {min-height:44px;padding-inline:10px;}
  .v3-header-actions .lang-panel {left:0;right:auto;}
  .v3-header-actions .lang-panel a {min-height:44px;}
  .v3-mobile-menu {display:block;}
  .v3-mobile-menu>summary {display:flex;align-items:center;justify-content:center;gap:12px;min-width:44px;min-height:44px;cursor:pointer;border:1px solid var(--line-2);border-radius:999px;font-size:13px;padding:10px 15px;}
  .v3-mobile-panel {position:absolute;top:100%;left:0;right:0;background:var(--bg-2);padding:20px 24px;border-bottom:1px solid var(--line-2);max-height:calc(100dvh - 68px);overflow:auto;box-shadow:var(--shadow-lg);}
  .v3-mobile-panel nav {display:flex;flex-direction:column;gap:8px;}
  .v3-mobile-panel nav>a:not(.v3-button) {padding:10px 2px;border-bottom:1px solid var(--line);font-size:16px;}
  .v3-mobile-settings {display:flex;gap:18px;align-items:center;margin-top:18px;}
  .v3-mobile-menu[open] .v3-mobile-panel {animation:fadeSlide .25s ease both;}
}
@media(max-width:720px) {
  .v3-shell {width:calc(100% - 40px);}
  .fidelity-hero h1 {font-size:clamp(38px,9vw,64px)!important;max-width:17ch!important;}
  .fidelity-hero .hero-visual {gap:10px!important;align-items:center!important;}
  .fidelity-hero .hero-visual>figure {min-width:0!important;}
  .fidelity-hero .hero-visual>.hv-side {flex:0 0 23%!important;border-radius:14px!important;}
  .fidelity-hero .hero-visual>figure:not(.hv-side) {flex:0 0 48%!important;border-radius:18px!important;}
  .fidelity-hero [data-drift] {--drift-y:0px!important;}
  .fidelity-hero .hv-side figcaption {left:4px!important;right:4px;bottom:5px!important;padding:5px 3px!important;font-size:10px!important;line-height:1.2;overflow-wrap:anywhere;}
  .fidelity-hero .ways {grid-template-columns:1fr!important;}
  .fidelity-channel-row {gap:14px!important;}
  .landing-v3 [role="tablist"] {display:flex!important;flex-wrap:nowrap!important;max-width:100%;overflow-x:auto;padding:6px!important;}
  [data-product-tab] {flex:0 0 auto;padding:12px 15px!important;font-size:13px!important;}
  .v3-walkthrough>summary {padding:20px;font-size:14px;}
  .landing-v3 #product>.container {padding-inline:8px;}
  #product-showcase .fidelity-week-grid {grid-template-columns:repeat(7,minmax(116px,1fr))!important;}
  .fidelity-week-scroll {overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;}
  #cost table {min-width:650px;}
  .landing-v3 #faq .sec-head {position:static!important;}
}
@media(max-width:600px) {
  .v3-nav-row {gap:8px;}
  .v3-header-actions {gap:8px;}
  .v3-header-actions .v3-button-nav {min-height:44px;padding:10px 12px;gap:7px;}
  .v3-chatgpt-short {display:inline;}
  .v3-chatgpt-arrow {display:none;}
  .v3-mobile-menu>summary {padding:10px;font-size:17px;}
  .v3-chatgpt-full,.v3-mobile-menu>summary>[data-i18n] {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
}
@media(max-width:380px) {
  .v3-brand>span {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
}
@media(max-width:420px) {
  .v3-shell {width:calc(100% - 32px);}
  .v3-brand {font-size:22px;}
  .fidelity-hero .hero-visual>.hv-side {flex-basis:19%!important;}
  .fidelity-hero .hero-visual>figure:not(.hv-side) {flex-basis:55%!important;}
  .fidelity-hero .hero-visual {gap:8px!important;}
  .fidelity-hero form {flex-direction:column;}
  .fidelity-hero form :is(input,button) {width:100%!important;}
  .fidelity-hero form input {flex:0 0 58px!important;height:58px!important;}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto;}
  .landing-v3 *, .landing-v3 *::before,.landing-v3 *::after {animation:none!important;transition:none!important;}
  .landing-v3 .reveal-visible:not(#product *) {transition:none!important;}
  .landing-v3 .v3-lift:hover {transform:none!important;}
  .landing-v3 .reveal-pending {opacity:1;transform:none;}
  .fidelity-hero [data-drift] {--drift-y:0px!important;}
}
@media(prefers-reduced-motion:reduce) {
  /* Keep current walkthrough content visible when entrance animations are disabled. */
  #product .dm-scene.on :is(.b1-row,.b2-dim,.b2-srcrow2,.b5b-slot,.cp2-pillar,.cp2-step),
  #product .dm-scene.on .b5b-cell.done :is(.img,.pdot,.ck) {
    opacity:1!important;
    transform:none!important;
  }
}
