/* DashDocX public site */
body.site{background:#fff}
.sh{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:20px max(24px,calc((100% - 1180px)/2))}
.sh a.b{display:flex;align-items:center;gap:10px;text-decoration:none}
.sh nav{display:flex;align-items:center;gap:8px}
.sh nav a.l{color:rgba(255,255,255,.8);font-weight:600;font-size:14.5px;padding:9px 14px;text-decoration:none}
.sh nav a.l:hover{color:#fff}
.hero{position:relative;background:radial-gradient(1100px 520px at 78% 12%,rgba(31,182,232,.28),transparent 60%),radial-gradient(900px 500px at 8% 90%,rgba(79,70,229,.45),transparent 60%),var(--ink);color:#fff;padding:132px max(24px,calc((100% - 1180px)/2)) 0;overflow:hidden}
.hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(#000,transparent 85%);-webkit-mask-image:linear-gradient(#000,transparent 85%)}
.hero>*{position:relative}
.hero h1{font-size:clamp(34px,5.2vw,64px);max-width:15em;letter-spacing:-.03em}
.hero p.lead{font-size:clamp(16px,1.5vw,19px);color:rgba(255,255,255,.78);max-width:36em;margin-top:20px}
.hero .cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.picker{display:flex;gap:6px;flex-wrap:wrap;margin:46px 0 16px}
.picker button{display:flex;align-items:center;gap:8px;border:0;cursor:pointer;font:600 14px var(--font);padding:10px 16px;border-radius:999px;background:rgba(255,255,255,.08);color:rgba(255,255,255,.82);transition:background .15s}
.picker button i{width:10px;height:10px;border-radius:3px}
.picker button:hover{background:rgba(255,255,255,.16)}
.picker button[aria-selected=true]{background:#fff;color:var(--ink)}
.stage{position:relative;border-radius:18px 18px 0 0;background:#fff;box-shadow:0 -10px 80px rgba(31,182,232,.25),0 0 0 1px rgba(255,255,255,.18);overflow:hidden;aspect-ratio:16/9;max-width:1100px;margin:0 auto}
.stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s}
.stage img.on{opacity:1}
.sec{padding:84px max(24px,calc((100% - 1180px)/2))}
.sec h2{font-size:clamp(26px,3.2vw,40px);letter-spacing:-.02em;max-width:18em}
.sec .sub{color:var(--muted);font-size:17px;max-width:38em;margin-top:14px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;counter-reset:s}
.step{border-top:3px solid var(--indigo);padding-top:18px}
.step:nth-child(2){border-color:var(--cyan)}.step:nth-child(3){border-color:var(--amber)}
.step h3{font-size:19px;margin-bottom:8px}.step p{color:var(--muted)}
.band{background:var(--bg)}
.feats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}
.feat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}
.feat .ic{color:var(--indigo);margin-bottom:12px}.feat h3{font-size:16.5px;margin-bottom:6px}.feat p{color:var(--muted);font-size:14.5px}
.types{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin-top:40px}
.tcard{border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#fff}
.tcard div.s{aspect-ratio:16/9;background:center/cover}
.tcard .t{padding:14px 18px 18px}.tcard h3{font-size:16px;display:flex;gap:9px;align-items:center}.tcard h3 i{width:11px;height:11px;border-radius:3px}
.tcard p{color:var(--muted);font-size:14px;margin-top:4px}
.cta-band{background:var(--ink);color:#fff;text-align:center}
.cta-band h2{margin:0 auto}.cta-band .cta{display:flex;gap:12px;justify-content:center;margin-top:28px;flex-wrap:wrap}
.sf{background:#0A1429;color:rgba(255,255,255,.7);padding:34px max(24px,calc((100% - 1180px)/2));display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px}
.sf a{color:rgba(255,255,255,.85)}
.faq{max-width:760px;margin-top:30px}.faq details{border-bottom:1px solid var(--line);padding:16px 0}.faq summary{font-weight:600;cursor:pointer;font-size:16.5px}.faq p{color:var(--muted);margin-top:10px}
@media(max-width:860px){.steps,.feats{grid-template-columns:1fr}.sec{padding:56px 20px}.hero{padding:110px 20px 0}.sh{padding:16px 20px}.sh nav a.l{display:none}}

/* ---- phone: the public site as an app ---- */
@media(max-width:860px){
  .sh{position:absolute;padding:calc(14px + env(safe-area-inset-top)) 18px 14px}
  .hero{padding:96px 18px 0}.hero h1{font-size:34px}.hero .cta .btn{flex:1;justify-content:center}
  .picker{flex-wrap:nowrap;overflow-x:auto;margin:30px -18px 14px;padding:0 18px;scrollbar-width:none}.picker::-webkit-scrollbar{display:none}.picker button{flex:none}
  .stage{border-radius:14px 14px 0 0}
  .sec{padding:44px 18px}
  .types{grid-template-columns:1fr}
  .tcard,.feat{border-radius:18px}
  .sf{padding:28px 18px;flex-direction:column}
}

.tgrp{display:flex;align-items:center;gap:10px;margin:26px 0 12px;font:600 18px var(--display,inherit);text-align:left}.tgrp span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--gc) 16%,#fff);color:var(--gc)}.tgrp small{font:400 13px var(--font,inherit);color:var(--muted,#667);margin-left:6px}
