/* Brokers landing page */
.bhero{position:relative;min-height:100svh;display:grid;align-items:center;overflow:hidden;padding:120px 0 60px;background:radial-gradient(900px 600px at 80% 30%,rgba(139,92,246,.16),transparent 60%),var(--ink)}
.bhero canvas{position:absolute;inset:0;width:100%;height:100%}
.bhero-inner{position:relative;z-index:3;display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(30px,5vw,80px);align-items:center}
.bhero h1{font-size:clamp(40px,5.2vw,78px);line-height:1;margin:16px 0 22px}
.bhero h1 .w{display:inline-block;overflow:hidden;vertical-align:top}
.bhero h1 .w span{display:inline-block;transform:translateY(110%)}
.bhero h1 em{font-style:normal;color:var(--acc)}
.bhero .lead{font-size:clamp(16px,1.25vw,19px);color:var(--ice);opacity:.9;max-width:52ch;margin-bottom:26px}
.bhero-stats{display:flex;gap:34px;margin-top:34px;flex-wrap:wrap}
.bhero-stats b{display:block;font-family:var(--display);font-size:28px;letter-spacing:var(--dtrack);color:var(--paper)}
.bhero-stats span{font-size:13px;color:var(--mute)}
.bhero-art{position:relative;aspect-ratio:16/12;perspective:1400px}
.bhero-art .shot.desk{inset:0 14% 12% 0}
.bhero-art .shot.phone{width:30%}
.bhero-art .stamp{position:absolute;left:0;bottom:-4px;color:var(--acc)}
@media (max-width:900px){.bhero-inner{grid-template-columns:1fr}.bhero{padding-top:100px}.bhero-art{max-width:520px}}

.why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.why-grid article{background:#fff;border:1px solid var(--line-dark);border-radius:var(--r);padding:clamp(22px,3vw,36px)}
.why-grid h3{font-size:clamp(20px,1.8vw,26px);margin:10px 0 10px;letter-spacing:-.02em}
.why-grid p{color:var(--mute-dark);font-size:15px}
@media (max-width:800px){.why-grid{grid-template-columns:1fr}}

.timeline{position:relative;padding-left:48px;display:grid;gap:34px;max-width:820px}
.tl-line{position:absolute;left:14px;top:0;width:4px;height:100%;color:var(--acc)}
.tl-item{position:relative}
.tl-item::before{content:"";position:absolute;left:-40px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--acc);box-shadow:0 0 0 6px rgba(139,92,246,.18)}
.tl-item h3{font-size:clamp(20px,2vw,28px);margin:6px 0 8px}
.tl-item p{color:var(--ice);opacity:.85;max-width:60ch}

.comp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.comp{background:#fff;border:1px solid var(--line-dark);border-radius:18px;padding:22px}
.comp h3{font-size:18px;margin-bottom:8px;letter-spacing:-.02em}
.comp p{font-size:14px;color:var(--mute-dark)}
.comp-note{margin-top:24px;color:var(--mute-dark);font-size:14px;max-width:80ch}
@media (max-width:1000px){.comp-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.comp-grid{grid-template-columns:1fr}}

.proof-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,60px);align-items:start}
.proof-shots{position:relative;aspect-ratio:16/13;perspective:1400px;position:sticky;top:110px}
.proof-shots .shot.desk{inset:0 14% 12% 0}
.proof-shots .shot.phone{width:30%}
.proof-list{display:grid;gap:18px}
.pf{border-top:1px solid var(--line);padding-top:16px}
.pf b{font-family:var(--display);font-size:20px;letter-spacing:-.02em;display:block;margin-bottom:6px}
.pf p{color:var(--ice);opacity:.85;font-size:15px}
@media (max-width:900px){.proof-grid{grid-template-columns:1fr}.proof-shots{position:relative;top:0;max-width:520px}}

.check-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(24px,4vw,60px);align-items:start}
.check-list{list-style:none;counter-reset:q;display:grid;gap:10px}
.check-list li{counter-increment:q;background:#fff;border:1px solid var(--line-dark);border-radius:14px;transition:border-color .3s,background .3s}
.check-list li.on{border-color:var(--acc);background:#faf7ff}
.check-list label{display:grid;grid-template-columns:28px 22px 1fr;gap:12px;align-items:center;padding:14px 16px;cursor:pointer;font-size:15px}
.check-list label::before{content:counter(q,decimal-leading-zero);font-family:var(--mono);font-size:11px;color:var(--mute-dark)}
.check-list input{width:20px;height:20px;accent-color:var(--acc)}
.check-result{position:sticky;top:110px;background:var(--ink);color:var(--paper);--mute-dark:var(--mute);border-radius:var(--r);padding:28px;display:grid;gap:12px;justify-items:start}
.check-result b{font-family:var(--display);font-size:72px;letter-spacing:var(--dtrack);line-height:1;color:var(--acc)}
.check-result b small{font-size:24px;color:var(--mute)}
.check-result p{color:var(--ice);font-size:15px}
.check-result .btn-ink{background:var(--acc);color:#fff}
@media (max-width:900px){.check-grid{grid-template-columns:1fr}.check-result{position:relative;top:0}}

.bt{grid-template-columns:repeat(3,1fr)}
.bt .tier{grid-template-columns:1fr}
@media (max-width:1000px){.bt{grid-template-columns:1fr}}

.faq-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(24px,4vw,60px);align-items:start}
.faq-list details{border-top:1px solid var(--line-dark);padding:16px 0}
.faq-list summary{cursor:pointer;font-family:var(--display);font-size:19px;letter-spacing:-.02em;list-style:none;display:flex;justify-content:space-between;gap:20px}
.faq-list summary::after{content:"+";color:var(--acc);font-size:24px;line-height:1}
.faq-list details[open] summary::after{content:"–"}
.faq-list p{margin-top:10px;color:var(--mute-dark);font-size:15px;max-width:62ch}
@media (max-width:900px){.faq-grid{grid-template-columns:1fr}}

.bridge-inner{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center}
.bridge h2{font-size:clamp(30px,4vw,56px);margin:10px 0 12px}
.bridge p{color:var(--mute-dark);max-width:50ch}
@media (max-width:800px){.bridge-inner{grid-template-columns:1fr}}
