*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--picker-height:0px}
body{overflow-x:hidden;-webkit-font-smoothing:antialiased}
.version{display:block}
.version-picker{display:none}
.version-d{--content-max:1240px;--gutter:clamp(18px,4vw,48px)}
.version-d .d-hero,
.version-d .d-trust,
.version-d .d-sh,
.version-d .d-how,
.version-d .d-quality,
.version-d .d-features,
.version-d .d-footer-disc{max-width:var(--content-max);margin-left:auto;margin-right:auto}
.version-d .d-contracts,.version-d .d-cta-band{padding-left:var(--gutter);padding-right:var(--gutter)}
.version-d .d-contracts .d-sh,.version-d .d-contracts-grid,.version-d .d-cta-band>*{max-width:var(--content-max);margin-left:auto;margin-right:auto}

/* SHARED MOCK WIDGETS */
.mock-widget{background:#fff;border-radius:16px;border:1px solid #e8e4dc;box-shadow:0 4px 24px rgba(0,0,0,.06);overflow:hidden}
.mock-topbar{padding:10px 16px;border-bottom:1px solid #eee;display:flex;align-items:center;gap:8px;font-size:12px}
.mock-dots{display:flex;gap:5px}
.mock-dots span{width:9px;height:9px;border-radius:50%}
.mock-topbar-title{font-weight:600;color:#999;margin-left:6px}

/* Contract Builder */
.wcb .mock-body{padding:20px}
.wcb .field-row{display:flex;gap:12px;margin-bottom:12px}
.wcb .field{flex:1;padding:10px 14px;border-radius:10px;border:1.5px solid #eee;font-size:12px;color:#333;background:#faf8f5}
.wcb .field-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#aaa;margin-bottom:6px}
.wcb .clause{background:#f4f9f6;border:1px solid #d4e8de;border-radius:10px;padding:12px 16px;margin-bottom:10px;font-size:12px;line-height:1.6;color:#444;position:relative}
.wcb .clause::before{content:'§';position:absolute;top:10px;right:14px;font-size:16px;color:#c4ddd0;font-weight:700}
.wcb .clause-title{font-weight:700;color:#2D5A3D;margin-bottom:4px;font-size:13px}
.wcb .gen-bar{display:flex;align-items:center;gap:10px;padding:12px 0}
.wcb .gen-progress{flex:1;height:6px;background:#eee;border-radius:3px;overflow:hidden}
.wcb .gen-fill{height:100%;border-radius:3px;animation:genFill 2s ease forwards}
@keyframes genFill{from{width:0}to{width:78%}}
.wcb .gen-label{font-size:11px;color:#999;white-space:nowrap}

/* E-Signature */
.wes .mock-body{padding:20px}
.wes .doc-preview{background:#faf8f5;border:1px solid #eee;border-radius:10px;padding:16px;margin-bottom:16px}
.wes .doc-line{height:8px;background:#e8e4dc;border-radius:4px;margin-bottom:8px}
.wes .doc-line:nth-child(2){width:85%}.wes .doc-line:nth-child(3){width:70%}.wes .doc-line:nth-child(4){width:90%}
.wes .sig-area{border:2px dashed #ccc;border-radius:12px;padding:16px;text-align:center;margin-bottom:12px;background:#fff}
.wes .sig-drawn{font-family:'Instrument Serif',serif;font-size:28px;font-style:italic;color:#1a3c6e;opacity:0;animation:sigAppear .8s 1.5s ease forwards}
@keyframes sigAppear{to{opacity:1}}
.wes .sig-label{font-size:10px;color:#bbb;text-transform:uppercase;letter-spacing:1px}
.wes .sig-status{display:flex;align-items:center;gap:8px;font-size:12px}
.wes .sig-check{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;color:#fff}

/* Dashboard */
.wdash .mock-body{padding:16px}
.wdash .dash-row{display:flex;gap:10px;margin-bottom:10px}
.wdash .dash-stat{flex:1;background:#faf8f5;border-radius:10px;padding:12px;text-align:center}
.wdash .dash-stat .num{font-size:22px;font-weight:800}
.wdash .dash-stat .lbl{font-size:10px;color:#999;margin-top:2px;text-transform:uppercase;letter-spacing:.5px}
.wdash .dash-table{width:100%;font-size:12px;border-collapse:collapse}
.wdash .dash-table th{text-align:left;padding:8px 10px;font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#aaa;border-bottom:1px solid #eee;font-weight:600}
.wdash .dash-table td{padding:10px;border-bottom:1px solid #f5f5f5}
.sp{display:inline-block;padding:3px 10px;border-radius:100px;font-size:10px;font-weight:700}
.sp-s{background:#e6f5ec;color:#1a7a42}.sp-p{background:#fff5e0;color:#b8860b}.sp-d{background:#eee;color:#777}

/* Clickwrap */
.wcw .mock-body{padding:20px}
.wcw .cw-url{background:#f5f3ef;border-radius:8px;padding:8px 14px;font-size:11px;color:#888;margin-bottom:14px;display:flex;align-items:center;gap:6px;font-family:'Space Mono',monospace}
.wcw .cw-url .lock{color:#2D5A3D}
.wcw .cw-page{background:#faf8f5;border-radius:12px;border:1px solid #eee;padding:20px;text-align:center}
.wcw .cw-title{font-weight:700;font-size:14px;margin-bottom:8px}
.wcw .cw-date{font-size:10px;color:#aaa;margin-bottom:14px}
.wcw .cw-terms{text-align:left;font-size:11px;color:#666;line-height:1.6;max-height:50px;overflow:hidden;margin-bottom:14px}
.wcw .cw-chk{display:flex;align-items:center;gap:8px;font-size:12px;justify-content:center}
.wcw .cw-box{width:18px;height:18px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:11px}
.wcw .cw-accept{margin-top:12px;padding:10px 28px;border-radius:8px;border:none;font-size:13px;font-weight:700;color:#fff;cursor:pointer}

/* Approval */
.wappr .mock-body{padding:20px}
.wappr .appr-flow{display:flex;align-items:center;gap:0;margin-bottom:16px;justify-content:center}
.wappr .appr-step{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:68px}
.wappr .appr-circle{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;border:2px solid #ddd;background:#fff}
.wappr .appr-circle.done{border-color:#2D5A3D;background:#e6f5ec}
.wappr .appr-circle.active{border-color:#f0ad4e;background:#fff5e0;animation:pulseStep 1.5s ease infinite}
@keyframes pulseStep{0%,100%{box-shadow:0 0 0 0 rgba(240,173,78,.3)}50%{box-shadow:0 0 0 8px rgba(240,173,78,0)}}
.wappr .appr-circle.pending{border-color:#ddd;background:#f8f8f8;color:#ccc}
.wappr .appr-label{font-size:10px;color:#999;font-weight:600}
.wappr .appr-line{width:26px;height:2px;background:#ddd;margin-bottom:20px}
.wappr .appr-line.done{background:#2D5A3D}
.wappr .appr-detail{background:#faf8f5;border-radius:10px;padding:14px;font-size:12px;color:#666}
.wappr .appr-detail strong{color:#333}

/* ===== VERSION D — GEMINI-INSPIRED ===== */
.version-d{
  --d-obsidian:#0F172A;--d-obsidian-light:#1E293B;--d-obsidian-mid:#334155;
  --d-amber:#F59E0B;--d-amber-glow:rgba(245,158,11,.15);--d-amber-soft:#FDE68A;
  --d-stone:#F8FAFC;--d-stone-dim:#E2E8F0;--d-stone-mid:#94A3B8;
  --d-violet:#8B5CF6;--d-violet-glow:rgba(139,92,246,.12);
  --d-violet-bright:#A78BFA;--d-violet-glow-bright:rgba(167,139,250,.22);
  --d-teal:#0D9488;--d-teal-glow:rgba(13,148,136,.15);
  --d-bdr:rgba(255,255,255,.08);--d-bdr-hover:rgba(255,255,255,.16);
  font-family:'Inter',sans-serif;background:var(--d-obsidian);color:var(--d-stone);padding-top:var(--picker-height);
}

@keyframes d-shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
@keyframes d-pulse-amber{0%,100%{box-shadow:0 0 0 0 var(--d-amber-glow)}50%{box-shadow:0 0 20px 4px var(--d-amber-glow)}}
@keyframes d-glow-border{0%,100%{border-color:rgba(245,158,11,.2)}50%{border-color:rgba(245,158,11,.5)}}
@keyframes d-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes d-thinking{0%{opacity:.4;transform:scale(.96)}50%{opacity:1;transform:scale(1)}100%{opacity:.4;transform:scale(.96)}}
@keyframes d-bounce-cue{0%,100%{transform:translateY(0);opacity:.7}50%{transform:translateY(7px);opacity:1}}
@keyframes d-pulse-cue{0%,100%{box-shadow:0 0 0 0 rgba(245,158,11,.2)}50%{box-shadow:0 0 0 10px rgba(245,158,11,0)}}

.d-ai-shimmer{background:linear-gradient(90deg,transparent 0%,rgba(245,158,11,.08) 25%,rgba(245,158,11,.15) 50%,rgba(245,158,11,.08) 75%,transparent 100%);background-size:200% 100%;animation:d-shimmer 3s ease-in-out infinite}

.d-nav{display:flex;align-items:center;justify-content:center;padding:14px 48px;position:sticky;top:var(--picker-height);z-index:100;background:rgba(15,23,42,.85);backdrop-filter:blur(24px);border-bottom:1px solid var(--d-bdr)}
.d-logo{display:flex;align-items:center;gap:10px}
.d-logo img{height:34px;width:auto;display:block;max-width:320px;object-fit:contain}
.d-nav-links{display:flex;gap:28px;list-style:none;font-size:14px;font-weight:500;color:var(--d-stone-mid)}
.d-nav-links a{text-decoration:none;color:inherit;transition:color .2s}.d-nav-links a:hover{color:var(--d-stone)}
.d-nav-cta{background:var(--d-amber);color:var(--d-obsidian);border:none;padding:10px 24px;border-radius:10px;font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:all .25s}
.d-nav-cta:hover{background:#EAB308;box-shadow:0 0 20px var(--d-amber-glow);transform:translateY(-1px)}

.d-hero{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:80px 48px 60px;align-items:center;min-height:85vh;position:relative}
.d-hero::before{content:'';position:absolute;top:-200px;right:-100px;width:600px;height:600px;background:radial-gradient(circle,var(--d-amber-glow) 0%,transparent 60%);pointer-events:none;opacity:.6}
.d-hero::after{content:'';position:absolute;bottom:-100px;left:-100px;width:400px;height:400px;background:radial-gradient(circle,var(--d-violet-glow) 0%,transparent 60%);pointer-events:none;opacity:.4}
.d-hero-tag{display:inline-flex;align-items:center;gap:8px;background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.2);padding:6px 16px;border-radius:10px;font-size:13px;font-weight:600;color:var(--d-amber);margin-bottom:20px}
.d-hero-copy h1{font-size:58px;font-weight:800;line-height:1.06;letter-spacing:-2.5px;margin-bottom:22px;color:var(--d-stone)}
.d-hero-copy h1 em{font-style:normal;color:var(--d-amber)}
.d-hero-copy p{font-size:17px;line-height:1.7;color:var(--d-stone-mid);max-width:480px;margin-bottom:36px}
.d-hero-btns{display:flex;gap:12px}
.d-btn-primary{background:var(--d-amber);color:var(--d-obsidian);border:none;padding:14px 32px;border-radius:10px;font-family:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:all .25s}
.d-btn-primary:hover{background:#EAB308;transform:translateY(-2px);box-shadow:0 8px 28px var(--d-amber-glow)}
.d-btn-ghost{background:transparent;color:var(--d-stone);border:1.5px solid var(--d-bdr-hover);padding:14px 32px;border-radius:10px;font-family:inherit;font-size:15px;font-weight:600;cursor:pointer;transition:all .25s}
.d-btn-ghost:hover{border-color:var(--d-amber);color:var(--d-amber)}

.d-scroll-cue{display:flex;flex-direction:column;align-items:center;gap:4px;width:max-content;margin:0 auto 28px;text-decoration:none;color:var(--d-stone-mid);font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;transition:color .2s}
.d-scroll-cue:hover{color:var(--d-amber)}
.d-scroll-cue{transition:opacity .3s ease, transform .3s ease, color .2s}
.d-scroll-cue.is-hidden{opacity:0;transform:translateY(-8px);pointer-events:none}
.d-scroll-cue-arrow{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:999px;border:1px solid rgba(245,158,11,.35);background:rgba(245,158,11,.08);color:var(--d-amber);font-size:16px;animation:d-bounce-cue 1.8s ease-in-out infinite, d-pulse-cue 2.2s ease-in-out infinite}

.d-chat-widget{background:linear-gradient(180deg,rgba(15,23,42,.86) 0%,rgba(30,41,59,.70) 100%);backdrop-filter:blur(26px) saturate(1.15);border-radius:12px;border:1px solid rgba(255,255,255,.10);box-shadow:0 22px 90px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.05);max-width:560px;width:100%;margin-left:auto;overflow:hidden;transition:border-color .4s}
.d-chat-widget:hover{border-color:rgba(245,158,11,.25)}
.d-chat-head{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,rgba(2,6,23,.18) 0%,rgba(2,6,23,0) 100%)}
.d-chat-avi{width:40px;height:40px;background:transparent;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(167,139,250,.70);box-shadow:0 0 0 1px rgba(167,139,250,.20),0 0 18px rgba(167,139,250,.24);position:relative}
.d-chat-avi::before{content:'';position:absolute;inset:-22px;border-radius:22px;background:radial-gradient(circle,rgba(167,139,250,.85) 0%,rgba(167,139,250,.40) 36%,rgba(167,139,250,0) 74%);filter:blur(14px);opacity:.95;pointer-events:none;animation:d-violet-aura 2.8s ease-in-out infinite;will-change:transform,opacity;transform:translateZ(0);z-index:0}
.d-chat-avi img{width:28px;height:28px;object-fit:contain;display:block;filter:drop-shadow(0 10px 18px rgba(0,0,0,.35));position:relative;z-index:1}

.d-msg-row{display:flex;align-items:flex-start;gap:10px}
.d-msg-row-bot{justify-content:flex-start}
.d-msg-row-user{justify-content:flex-end}
.d-msg-avi{width:28px;height:28px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex:0 0 auto;overflow:hidden;background:transparent;border:1px solid rgba(167,139,250,.64);box-shadow:0 0 0 1px rgba(167,139,250,.18),0 0 14px rgba(167,139,250,.22);margin-top:2px;position:relative}
.d-msg-avi::before{content:'';position:absolute;inset:-18px;border-radius:16px;background:radial-gradient(circle,rgba(167,139,250,.78) 0%,rgba(167,139,250,.34) 38%,rgba(167,139,250,0) 76%);filter:blur(14px);opacity:.92;pointer-events:none;animation:d-violet-aura 3.2s ease-in-out infinite;will-change:transform,opacity;transform:translateZ(0);z-index:0}
.d-msg-avi img{width:20px;height:20px;object-fit:contain;display:block;filter:drop-shadow(0 8px 14px rgba(0,0,0,.35));position:relative;z-index:1}

@keyframes d-violet-aura{0%,100%{opacity:.70;transform:scale(.96)}50%{opacity:1;transform:scale(1.10)}}
.d-chat-head-text h4{font-size:14px;font-weight:700;color:var(--d-stone)}.d-chat-head-text span{font-size:12px;color:var(--d-stone-mid)}
.d-chat-body{padding:20px 22px;position:relative}
.d-chat-msgs{display:flex;flex-direction:column;gap:12px}
.d-cmsg{padding:12px 16px;border-radius:10px;font-size:13px;line-height:1.6;max-width:100%;animation:msgIn .4s ease both}
.d-msg-row-user .d-cmsg{max-width:85%}
.d-msg-row-bot .d-cmsg{max-width:calc(100% - 48px)}
.d-cmsg-bot{background:rgba(255,255,255,.06);border:1px solid var(--d-bdr);align-self:flex-start;border-bottom-left-radius:3px;color:var(--d-stone-dim)}
.d-cmsg-user{background:var(--d-amber);color:var(--d-obsidian);align-self:flex-end;border-bottom-right-radius:3px;font-weight:500}
.d-cmsg:nth-child(1){animation-delay:.2s}.d-cmsg:nth-child(2){animation-delay:.6s}.d-cmsg:nth-child(3){animation-delay:1s}
.d-cmsg-thinking{display:inline-flex;align-items:center;gap:6px;padding:12px 20px;border-radius:10px;background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.15);align-self:flex-start;border-bottom-left-radius:3px;animation:msgIn .4s 1.4s ease both}
.d-cmsg-thinking span{width:6px;height:6px;border-radius:50%;background:var(--d-amber);animation:d-thinking 1.4s ease infinite}
.d-cmsg-thinking span:nth-child(2){animation-delay:.2s}.d-cmsg-thinking span:nth-child(3){animation-delay:.4s}
.d-chat-input-row{margin-top:16px;display:flex;gap:8px}
.d-chat-input-row input{flex:1;background:rgba(255,255,255,.05);border:1px solid var(--d-bdr);border-radius:10px;padding:10px 16px;font-family:inherit;font-size:13px;outline:none;color:var(--d-stone);transition:border-color .3s}
.d-chat-input-row input:focus{border-color:rgba(245,158,11,.4)}
.d-chat-input-row input::placeholder{color:var(--d-stone-mid)}
.d-chat-input-row button{width:40px;height:40px;border-radius:10px;background:var(--d-amber);border:none;color:var(--d-obsidian);cursor:pointer;font-size:16px;font-weight:700;transition:all .2s}
.d-chat-input-row button:hover{box-shadow:0 0 16px var(--d-amber-glow)}

@keyframes fc-bob{0%,100%{transform:rotate(-2deg) translateX(0)}50%{transform:rotate(-2deg) translateX(-6px)}}
.d-chat-widget-wrap{position:relative}
.d-chat-widget-wrap:has(.fc-expanded){position:static}
.fc-input-cue{position:absolute;left:-24px;bottom:132px;z-index:4;display:inline-flex;align-items:center;padding:7px 20px 7px 10px;border-radius:2px;border:none;background:var(--d-amber,#F59E0B);color:var(--d-obsidian,#0F172A);font-size:10px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;cursor:pointer;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 50%,calc(100% - 14px) 100%,0 100%);filter:drop-shadow(0 2px 6px rgba(0,0,0,.45));animation:fc-bob 2s ease-in-out infinite;white-space:nowrap}
.fc-input-cue:hover{animation-play-state:paused;filter:drop-shadow(0 4px 10px rgba(0,0,0,.6))}
.d-chat-widget-wrap:has(.fc-expanded) .fc-input-cue{opacity:0;pointer-events:none}

.d-trust{padding:40px 48px;display:flex;justify-content:center;gap:48px;font-size:13px;color:var(--d-stone-mid);font-weight:600;letter-spacing:2px;text-transform:uppercase;border-top:1px solid var(--d-bdr);border-bottom:1px solid var(--d-bdr);opacity:.5}

.d-sh{text-align:center;padding:80px 48px 48px}
.d-sh .tag{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:3px;color:var(--d-amber);margin-bottom:12px}
.d-sh h2{font-size:42px;font-weight:800;letter-spacing:-1.5px;color:var(--d-stone)}

.d-how{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:0 48px 80px;align-items:start}
.d-how-steps{display:flex;flex-direction:column;gap:16px}
.d-step{padding:24px 28px;background:rgba(255,255,255,.03);border:1px solid var(--d-bdr);border-radius:12px;transition:all .35s;position:relative;overflow:hidden}
.d-step::before{content:'';position:absolute;top:0;left:0;width:3px;height:100%;background:var(--d-amber);opacity:0;transition:opacity .3s}
.d-step:hover{border-color:rgba(245,158,11,.3);background:rgba(245,158,11,.04);transform:translateY(-2px);box-shadow:0 4px 24px rgba(0,0,0,.2)}
.d-step:hover::before{opacity:1}
.d-step-num{font-size:11px;font-weight:800;color:var(--d-amber);text-transform:uppercase;letter-spacing:2px;margin-bottom:8px}
.d-step h3{font-size:17px;font-weight:700;margin-bottom:6px;color:var(--d-stone)}.d-step p{font-size:14px;color:var(--d-stone-mid);line-height:1.6}

.version-d .mock-widget{background:rgba(30,41,59,.7);backdrop-filter:blur(20px);border-radius:12px;border:1px solid var(--d-bdr);box-shadow:0 4px 32px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.04);color:var(--d-stone);transition:border-color .4s}
.version-d .mock-widget:hover{border-color:rgba(245,158,11,.2)}
.version-d .mock-topbar{border-bottom-color:var(--d-bdr);background:rgba(255,255,255,.02)}
.version-d .mock-topbar-title{color:var(--d-stone-mid)}
.version-d .wcb .field{background:rgba(255,255,255,.04);border-color:var(--d-bdr);color:var(--d-stone-dim)}
.version-d .wcb .field-label{color:var(--d-stone-mid)}
.version-d .wcb .clause{background:rgba(245,158,11,.05);border-color:rgba(245,158,11,.15);color:var(--d-stone-dim)}
.version-d .wcb .clause::before{color:rgba(245,158,11,.3)}
.version-d .wcb .clause-title{color:var(--d-amber)}
.version-d .wcb .gen-label{color:var(--d-stone-mid)}
.version-d .wcb .gen-progress{background:rgba(255,255,255,.06)}
.version-d .wes .doc-preview{background:rgba(255,255,255,.04);border-color:var(--d-bdr)}
.version-d .wes .doc-line{background:rgba(255,255,255,.08)}
.version-d .wes .sig-area{border-color:var(--d-bdr);background:rgba(255,255,255,.03)}
.version-d .wes .sig-drawn{color:var(--d-amber)}
.version-d .wes .sig-label{color:var(--d-stone-mid)}
.version-d .wdash .dash-stat{background:rgba(255,255,255,.04)}
.version-d .wdash .dash-stat .lbl{color:var(--d-stone-mid)}
.version-d .wdash .dash-table th{color:var(--d-stone-mid);border-bottom-color:var(--d-bdr)}
.version-d .wdash .dash-table td{border-bottom-color:rgba(255,255,255,.04);color:var(--d-stone-dim)}
.version-d .sp-s{background:var(--d-teal-glow);color:var(--d-teal)}
.version-d .sp-p{background:var(--d-amber-glow);color:var(--d-amber)}
.version-d .sp-d{background:rgba(255,255,255,.06);color:var(--d-stone-mid)}
.version-d .wcw .cw-url{background:rgba(255,255,255,.04);color:var(--d-stone-mid)}
.version-d .wcw .cw-url .lock{color:var(--d-teal)}
.version-d .wcw .cw-page{background:rgba(255,255,255,.03);border-color:var(--d-bdr)}
.version-d .wcw .cw-title{color:var(--d-stone)}
.version-d .wcw .cw-date{color:var(--d-stone-mid)}
.version-d .wcw .cw-terms{color:var(--d-stone-mid)}
.version-d .wappr .appr-circle{border-color:var(--d-bdr);background:rgba(255,255,255,.04);color:var(--d-stone-mid)}
.version-d .wappr .appr-circle.done{border-color:var(--d-teal);background:var(--d-teal-glow);color:var(--d-teal)}
.version-d .wappr .appr-circle.active{border-color:var(--d-amber);background:var(--d-amber-glow);color:var(--d-amber);animation:d-pulse-amber 2s ease infinite}
.version-d .wappr .appr-circle.pending{border-color:rgba(255,255,255,.06);background:rgba(255,255,255,.02);color:rgba(255,255,255,.2)}
.version-d .wappr .appr-line{background:rgba(255,255,255,.08)}
.version-d .wappr .appr-line.done{background:var(--d-teal)}
.version-d .wappr .appr-label{color:var(--d-stone-mid)}
.version-d .wappr .appr-detail{background:rgba(255,255,255,.04);color:var(--d-stone-mid)}
.version-d .wappr .appr-detail strong{color:var(--d-stone)}
.d-how .mock-widget{position:sticky;top:calc(var(--picker-height) + 72px);font-family:'Inter',sans-serif}

.d-contracts{background:var(--d-obsidian-light);padding:80px 48px}
.d-contracts .d-sh{padding:0 0 48px}.d-contracts .d-sh h2{color:var(--d-stone)}
.d-contracts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.d-contract{background:rgba(255,255,255,.03);border:1px solid var(--d-bdr);border-radius:12px;padding:28px;transition:all .35s;position:relative;overflow:hidden}
.d-contract::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:12px;box-shadow:inset 0 0 0 1px transparent;transition:box-shadow .35s;pointer-events:none}
.d-contract:hover{background:rgba(245,158,11,.04);border-color:rgba(245,158,11,.2);transform:translateY(-2px)}
.d-contract:hover::after{box-shadow:inset 0 0 0 1px rgba(245,158,11,.15)}
.d-contract h4{font-size:16px;font-weight:700;margin-bottom:8px;color:var(--d-stone)}.d-contract p{font-size:13px;color:var(--d-stone-mid);line-height:1.6}

.d-cta-band{padding:56px 48px;text-align:center;position:relative;overflow:hidden}
.d-cta-band::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(245,158,11,.06),rgba(139,92,246,.04));pointer-events:none}
.d-cta-band h2{font-size:34px;font-weight:800;margin-bottom:14px;color:var(--d-stone);letter-spacing:-1px;position:relative}
.d-cta-band p{color:var(--d-stone-mid);margin-bottom:24px;position:relative}

.d-quality{padding:80px 48px;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.d-quality-copy .tag{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:3px;color:var(--d-amber);margin-bottom:12px}
.d-quality-copy h2{font-size:38px;font-weight:800;margin-bottom:16px;letter-spacing:-1px;color:var(--d-stone)}
.d-quality-copy>p{color:var(--d-stone-mid);line-height:1.7;margin-bottom:32px;font-size:16px}
.d-qi{display:flex;gap:16px;margin-bottom:24px}
.d-qi-icon{width:44px;height:44px;background:var(--d-amber-glow);border:1px solid rgba(245,158,11,.2);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:20px;transition:all .3s}
.d-qi:hover .d-qi-icon{box-shadow:0 0 16px var(--d-amber-glow)}
.d-qi h4{font-size:15px;font-weight:700;margin-bottom:4px;color:var(--d-stone)}.d-qi p{font-size:13px;color:var(--d-stone-mid);line-height:1.5}

.d-features{padding:80px 48px}
.d-fg{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.d-fb{display:grid;grid-template-columns:1fr 1fr;background:rgba(255,255,255,.02);border:1px solid var(--d-bdr);border-radius:12px;overflow:hidden;transition:all .35s}
.d-fb:hover{border-color:rgba(245,158,11,.2);box-shadow:0 8px 32px rgba(0,0,0,.2)}
.d-fb-text{padding:28px;display:flex;flex-direction:column;justify-content:center}
.d-fb-text h4{font-size:17px;font-weight:700;margin-bottom:6px;color:var(--d-stone)}.d-fb-text p{font-size:13px;color:var(--d-stone-mid);line-height:1.6}
.d-fb-vis{background:rgba(255,255,255,.02);padding:12px;display:flex;align-items:center;justify-content:center;min-height:200px;border-left:1px solid var(--d-bdr)}
.d-fb-vis .mock-widget{width:100%;font-family:'Inter',sans-serif;box-shadow:none;border-color:var(--d-bdr)}

.d-ai-badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--d-violet);background:var(--d-violet-glow);border:1px solid rgba(139,92,246,.2);padding:4px 10px;border-radius:6px;animation:d-pulse-violet 3s ease infinite}

.d-footer-disc{max-width:480px;font-size:12px;line-height:1.5;color:var(--d-stone-mid);text-align:center;padding:0 48px 16px;margin:0 auto;opacity:.6}
.d-footer{padding:24px 48px;border-top:1px solid var(--d-bdr);display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--d-stone-mid)}
.d-footer-links{display:flex;gap:24px}.d-footer-links a{color:var(--d-stone-mid);text-decoration:none;transition:color .2s}.d-footer-links a:hover{color:var(--d-amber)}
.d-footer-meta{color:var(--d-stone-mid);font-size:12px;opacity:.8;margin-left:auto;padding-left:24px;white-space:nowrap}

.a-nav,.b-nav,.c-nav,.d-nav{justify-content:center}
.nav-inner{width:100%;max-width:var(--content-max);display:flex;align-items:center;justify-content:space-between;gap:16px}

.a-chat-widget,.c-chat-widget{max-width:560px;width:100%;margin-left:auto}
.b-hero .mock-widget{max-width:560px;width:100%;margin-left:auto}

.nav-burger{display:none;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;border:1px solid rgba(0,0,0,.12);background:rgba(255,255,255,.6);backdrop-filter:blur(14px);cursor:pointer;font-size:18px;line-height:1}
.version-d .nav-burger{border-color:var(--d-bdr);background:rgba(255,255,255,.06);color:var(--d-stone)}
.nav-burger:active{transform:translateY(1px)}
.menu-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.35);backdrop-filter:blur(4px);z-index:9998}
.mobile-menu{position:fixed;left:12px;right:12px;top:calc(var(--picker-height) + var(--mobile-nav-height, 64px) + 10px);z-index:9999;border-radius:18px;border:1px solid rgba(255,255,255,.18);box-shadow:0 24px 80px rgba(0,0,0,.25);overflow:hidden}
.mobile-menu .mm-body{padding:16px;display:flex;flex-direction:column;gap:12px}
.mobile-menu .mm-links{display:flex;flex-direction:column;gap:10px;list-style:none}
.mobile-menu .mm-links a{text-decoration:none;color:inherit;font-weight:700}
.mobile-menu .mm-cta{margin-top:4px}
.mobile-menu .mm-close{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.14);font-weight:800}
.mobile-menu .mm-close button{border:none;background:transparent;color:inherit;cursor:pointer;font-size:18px;line-height:1;padding:6px 8px;border-radius:10px}
.mobile-menu .mm-close button:hover{background:rgba(255,255,255,.12)}
body.menu-open{overflow:hidden}

@media (max-width: 980px){
  :root{--picker-height:56px}
  :root{--mobile-nav-height:64px}
  .version-picker{height:var(--picker-height);padding:0 12px;justify-content:flex-start;overflow-x:auto}
  .version-picker .label{display:none}
  .version-picker button{padding:8px 14px;font-size:12px;white-space:nowrap}

  .a-nav,.b-nav,.c-nav,.d-nav{padding-left:var(--gutter);padding-right:var(--gutter);min-height:var(--mobile-nav-height)}
  .a-nav-links,.b-nav-links,.c-nav-links,.d-nav-links{display:none}
  .a-nav-cta,.b-nav-cta,.c-nav-cta,.d-nav-cta{padding:10px 16px}
  .nav-burger{display:inline-flex}

  .a-hero,.b-hero,.c-hero,.d-hero{grid-template-columns:1fr;min-height:auto;gap:28px;padding-left:var(--gutter);padding-right:var(--gutter);padding-top:52px;padding-bottom:44px}
  .a-hero-copy h1{font-size:46px}
  .b-hero-copy h1{font-size:46px}
  .c-hero-copy h1{font-size:48px}
  .d-hero-copy h1{font-size:46px}
  .a-hero-copy p,.b-hero-copy p,.c-hero-copy p,.d-hero-copy p{max-width:52ch}
  .a-hero-actions,.b-hero-btns,.c-hero-actions,.d-hero-btns{flex-wrap:wrap}

  .a-trust,.b-trust,.c-trust,.d-trust{flex-wrap:wrap;justify-content:flex-start;gap:18px;padding-left:var(--gutter);padding-right:var(--gutter)}
  .d-scroll-cue{margin-bottom:20px}
  .fc-input-cue{display:none}
  .a-stitle,.b-sh,.c-sh,.d-sh{padding-left:var(--gutter);padding-right:var(--gutter)}
  .a-how,.b-how,.c-how,.d-how{grid-template-columns:1fr;gap:24px;padding-left:var(--gutter);padding-right:var(--gutter)}
  .a-how .mock-widget,.b-how .mock-widget,.c-how .mock-widget,.d-how .mock-widget{position:relative;top:auto}

  .a-contracts-grid,.b-contracts-grid,.c-contracts-grid,.d-contracts-grid{grid-template-columns:1fr}
  .a-fg,.b-fg,.c-fg,.d-fg{grid-template-columns:1fr}
  .a-fb,.b-fb,.c-fb,.d-fb{grid-template-columns:1fr}

  .a-quality,.b-quality,.c-quality,.d-quality{grid-template-columns:1fr;gap:28px;padding-left:var(--gutter);padding-right:var(--gutter)}
  .a-features,.b-features,.c-features,.d-features{padding-left:var(--gutter);padding-right:var(--gutter)}

  .a-footer,.b-footer,.c-footer,.d-footer{flex-direction:column;align-items:flex-start;gap:12px;padding-left:var(--gutter);padding-right:var(--gutter)}
  .a-footer-links,.b-footer-links,.c-footer-links,.d-footer-links{flex-wrap:wrap;gap:14px}
  .d-footer-meta{margin-left:0;padding-left:0}
}

@media (max-width: 560px){
  .a-hero-copy h1{font-size:40px}
  .b-hero-copy h1{font-size:40px}
  .c-hero-copy h1{font-size:42px}
  .d-hero-copy h1{font-size:38px}
  .a-hero-actions button,.b-hero-btns button,.c-hero-actions button,.d-hero-btns button{width:100%}
  .a-chat-widget,.c-chat-widget,.d-chat-widget,.mock-widget{border-radius:18px}

  .a-chat-input input,.b-chat-input-row input,.c-chat-input-area input,.d-chat-input-row input{min-width:0}
  .a-chat-input button,.b-chat-input-row button,.c-chat-input-area button,.d-chat-input-row button{flex:0 0 auto}

  .wcb .field-row{flex-direction:column}
  .wdash .dash-row{flex-direction:column}
  .wdash .mock-body{overflow-x:auto}
  .wdash .dash-table{min-width:420px}
  .wappr .appr-flow{flex-wrap:wrap;gap:12px}
  .wappr .appr-line{display:none}
}

@media (prefers-reduced-motion: reduce){
  *{animation:none !important;transition:none !important;scroll-behavior:auto !important}
}

/* ===== FRONTEND CHATBOT INTERACTIVE STYLES ===== */

/* ── Expand / Focus mode ─────────────────────────────────── */

/* Widget base transition — only for hover border glow when NOT animating */
.d-chat-widget{transition:border-color .4s, box-shadow .4s}

/* Hero copy fades out when widget is focused */
.d-hero .d-hero-copy{transition:opacity .45s ease, transform .45s ease}
.d-hero.fc-hero-faded .d-hero-copy{opacity:0;pointer-events:none;transform:translateX(-30px) scale(.97)}

/* Placeholder keeps grid from collapsing when widget goes absolute */
.fc-placeholder{visibility:hidden;pointer-events:none}

/* Desktop expanded state: styling only (position managed by JS) */
.d-chat-widget.fc-expanded{border-color:rgba(245,158,11,.2)}
.d-chat-widget.fc-expanded .d-chat-body{max-height:520px}
.d-chat-widget.fc-expanded .d-chat-msgs{max-height:none}

/* Close / minimize button in chat header */
.fc-close-btn{display:none;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;border:1px solid var(--d-bdr);background:rgba(255,255,255,.04);color:var(--d-stone-mid);cursor:pointer;font-size:14px;line-height:1;margin-left:auto;transition:all .2s;flex-shrink:0}
.fc-close-btn:hover{background:rgba(255,255,255,.1);color:var(--d-stone);border-color:var(--d-bdr-hover)}
.fc-expanded .fc-close-btn{display:flex}

/* ── Mobile fullscreen ───────────────────────────────────── */
@media (max-width: 980px){
  body.fc-chat-open{overflow:hidden}

  .d-chat-widget.fc-expanded{position:fixed;inset:0;width:100%;height:100%;max-width:none;border-radius:0;z-index:9999;display:flex;flex-direction:column;border:none;box-shadow:none;left:0;top:0;transform:none;margin:0}
  .d-chat-widget.fc-expanded .d-chat-head{border-radius:0;flex-shrink:0}
  .d-chat-widget.fc-expanded .d-chat-body{flex:1;max-height:none;display:flex;flex-direction:column;overflow:hidden}
  .d-chat-widget.fc-expanded .d-chat-msgs{flex:1;overflow-y:auto;max-height:none}
  .d-chat-widget.fc-expanded #fc-input-row{flex-shrink:0;padding-bottom:env(safe-area-inset-bottom, 18px)}

  /* Hero copy doesn't need to hide on mobile since we go fixed overlay */
  .d-hero.fc-hero-faded .d-hero-copy{opacity:1;pointer-events:auto;transform:none}
}

/* Chat body scrollable area */
.d-chat-body{display:flex;flex-direction:column;max-height:420px}
.d-chat-msgs{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.12) transparent;padding:20px 22px 8px}
.d-chat-msgs::-webkit-scrollbar{width:5px}
.d-chat-msgs::-webkit-scrollbar-track{background:transparent}
.d-chat-msgs::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:3px}

/* Input row adjustments */
#fc-input-row{padding:0 22px 18px}

/* Animated message entrance */
@keyframes msgIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* Button group */
.fc-btn-group{display:flex;flex-wrap:wrap;gap:8px;padding:4px 0 4px 38px}
.fc-btn{background:rgba(245,158,11,.08);border:1px solid rgba(245,158,11,.25);color:var(--d-amber);padding:9px 18px;border-radius:10px;font-family:inherit;font-size:13px;font-weight:600;cursor:pointer;transition:all .25s;white-space:nowrap}
.fc-btn:hover:not(:disabled){background:rgba(245,158,11,.18);border-color:var(--d-amber);transform:translateY(-1px);box-shadow:0 4px 16px rgba(245,158,11,.15)}
.fc-btn:active:not(:disabled){transform:translateY(0)}
.fc-btn:disabled{opacity:.45;cursor:default;pointer-events:none}

/* Subtext / secondary bot text */
.fc-subtext{font-size:13px;line-height:1.6;color:var(--d-stone-mid);padding:4px 16px;animation:msgIn .35s ease both}

/* Question text (bold variant of bot msg) */
.fc-question{font-weight:700;color:var(--d-stone)}

/* Streaming cursor */
.fc-streaming::after{content:'';display:inline-block;width:2px;height:14px;background:var(--d-amber);margin-left:3px;vertical-align:text-bottom;animation:fc-blink 1s step-end infinite}
@keyframes fc-blink{0%,100%{opacity:1}50%{opacity:0}}

/* Input disabled state */
.fc-disabled input,.fc-disabled button{opacity:.45;pointer-events:none}

/* ── Form styles ─────────────────────────────────────────── */
.fc-form{background:rgba(255,255,255,.04);border:1px solid var(--d-bdr);border-radius:10px;padding:16px 18px;display:flex;flex-direction:column;gap:10px;animation:msgIn .4s ease both;max-width:340px;margin-left:38px}
.fc-field{display:flex;flex-direction:column;gap:3px}
.fc-field label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--d-stone-mid)}
.fc-field input,.fc-field textarea{background:rgba(255,255,255,.06);border:1px solid var(--d-bdr);border-radius:8px;padding:8px 12px;font-family:inherit;font-size:13px;color:var(--d-stone);outline:none;transition:border-color .25s;resize:vertical}
.fc-field input:focus,.fc-field textarea:focus{border-color:rgba(245,158,11,.4);box-shadow:0 0 0 2px rgba(245,158,11,.08)}
.fc-field input::placeholder,.fc-field textarea::placeholder{color:var(--d-stone-mid)}
.fc-error{font-size:11px;color:#ef4444;min-height:0;line-height:1.3}
.fc-error:empty{display:none}
.fc-legal{font-size:10px;color:var(--d-stone-mid);line-height:1.4;margin:2px 0 0}
.fc-submit{background:var(--d-amber);color:var(--d-obsidian);border:none;padding:10px 0;border-radius:8px;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:all .25s;width:100%}
.fc-submit:hover:not(:disabled){background:#EAB308;box-shadow:0 4px 16px rgba(245,158,11,.2)}
.fc-submit:disabled{opacity:.55;cursor:default}

/* ── Mobile compact spacing ──────────────────────────────── */
@media (max-width: 560px){
  .fc-btn-group{padding-left:0;gap:6px}
  .fc-btn{padding:7px 14px;font-size:12px}
  .fc-form{margin-left:0;max-width:none;padding:14px 14px;gap:8px}
  .fc-field input,.fc-field textarea{padding:8px 10px;font-size:12px}
  .fc-submit{font-size:12px;padding:9px 0}
  .fc-subtext{padding-left:0}
}
