/* Pismovod: a quiet, light editorial surface. System fonts, local assets only. */
:root { color-scheme:light; --bg:#fbfbfa; --bg-tint:#f1f3f6; --panel:#fff; --ink:#20252d; --muted:#636a75; --line:#e3e6eb; --accent:#235cd6; --accent-2:#356ee4; --accent-ink:#fff; --accent-soft:#edf3ff; --good:#247552; --good-soft:#edf7f2; --bad:#b13e3e; --bad-soft:#fff0ef; --dark:#20252d; --dark-ink:#f6f7f9; --dark-muted:#bcc2cd; --radius:20px; --shadow:0 12px 45px #20252d08; }
body { font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif; -webkit-font-smoothing:antialiased; }
.top { background:#fbfbfaf5; backdrop-filter:blur(18px); border-bottom:1px solid var(--line); }
.top__row { min-height:84px; }
.brand { font-size:22px; font-weight:650; letter-spacing:-.7px; gap:11px; color:var(--ink); }
.brand__mark { width:36px; height:36px; flex-shrink:0; }
.btn { border-radius:99px; font-weight:550; min-height:46px; transition:background .18s,transform .18s; box-shadow:none; }
.btn:hover { transform:translateY(-1px); }
.btn--primary { background:var(--accent); color:white; border-color:var(--accent); box-shadow:none; }
.btn--primary:hover { background:#174dbd; }
.btn--ghost { background:transparent; border-color:var(--line); }
.btn--small { padding:10px 20px; font-size:14px; }
.btn--big { min-height:54px; padding:15px 28px; font-size:16px; }
a:focus-visible,button:focus-visible,summary:focus-visible { outline:3px solid #235cd6; outline-offset:5px; }
.form { padding:32px; border:1px solid var(--line); gap:18px; box-shadow:none; }
.form input,.form select { min-height:48px; background:#fafbfc; border-radius:10px; }
.form textarea { background:#fafbfc; }
.auth { padding:88px 0 112px; }
.auth__grid { gap:80px; max-width:1030px; margin:auto; }
.auth__aside h1 { font-size:clamp(36px,4vw,54px); line-height:1.08; letter-spacing:-1.9px; }
.auth__aside p { line-height:1.7; }
.auth__aside .ticks { margin-top:28px; display:grid; gap:14px; font-size:15px; }
.auth .eyebrow { color:var(--accent); font-size:12px; letter-spacing:1.4px; }
.form--flat { border:0; padding:0; }
.cabinet { gap:24px; }
.status-badge--waitlist { color:#235cd6; background:#edf3ff; }
.callout { border-left:0; padding:20px 24px; border-radius:14px; }
.waitlist-next { padding:30px; background:#edf3ff; border-radius:20px; }
.waitlist-next h2 { font-size:24px; margin-bottom:14px; }
.waitlist-next p { line-height:1.7; color:var(--muted); }
.home .wrap { width:100%; max-width:1160px; padding-inline:32px; }
.home .top__row { max-width:1280px; }
.home-nav { display:flex; gap:30px; font-size:14px; color:var(--muted); margin-left:auto; margin-right:36px; }
.home-nav a { text-decoration:none; }
.home-nav a:hover { color:var(--ink); }
.home .top__actions { gap:12px; }
.home .login-link { text-decoration:none; font-size:14px; color:var(--ink); padding:12px; }
.home-hero { text-align:center; padding:94px 0 0; }
.launch-tag { display:inline-flex; align-items:center; gap:9px; padding:8px 13px; border:1px solid #e1e6ef; border-radius:99px; font-size:12px; font-weight:550; color:#536071; background:#f5f7fa; }
.launch-tag i { width:6px; height:6px; border-radius:50%; background:#4879d9; }
.home-hero h1 { font-size:clamp(48px,6.1vw,84px); line-height:1.04; font-weight:600; letter-spacing:-4.2px; margin:29px 0 25px; }
.home-hero h1 span { color:#8a909a; }
.home-lead { max-width:620px; margin:0 auto; color:var(--muted); font-size:19px; line-height:1.6; }
.home-actions { display:flex; justify-content:center; align-items:center; gap:24px; margin-top:32px; }
.home-more { color:var(--accent); font-size:15px; text-decoration:none; padding:14px 0; }
.home-more span { margin-left:6px; }
.launch-caption { color:#68717e; font-size:12px; margin-top:17px; }
.product-stage { margin:65px auto 0; padding:38px 58px 0; background:#eff1f5; border:1px solid #e6e9ee; border-radius:28px 28px 0 0; max-width:1060px; text-align:left; overflow:hidden; }
.product-window { background:#fff; border:1px solid #e0e4eb; border-radius:15px 15px 0 0; box-shadow:0 16px 45px #22314b0c; }
.product-toolbar { height:45px; border-bottom:1px solid #edf0f3; display:flex; align-items:center; padding:0 20px; gap:6px; }
.product-toolbar i { display:block; width:7px; height:7px; border-radius:50%; background:#dbe0e6; }
.product-toolbar span { margin:auto; color:#667282; font-size:11px; transform:translateX(-15px); }
.product-content { display:grid; grid-template-columns:1fr 1.1fr; min-height:315px; }
.product-inbox { background:#fafbfc; border-right:1px solid #edf0f3; padding:28px; }
.product-label { font-size:10px; font-weight:600; letter-spacing:1.1px; color:#667282; text-transform:uppercase; }
.inbox-line { display:flex; gap:12px; margin-top:24px; align-items:flex-start; }
.sender-icon { background:#e8edf5; color:#5a687c; border-radius:10px; width:34px; height:34px; display:grid; place-items:center; font-size:12px; font-weight:600; flex-shrink:0; }
.inbox-line strong { display:block; font-size:13px; font-weight:600; }
.inbox-line p { font-size:12px; color:#66717f; line-height:1.6; margin:6px 0 12px; }
.file-tag { display:inline-flex; align-items:center; gap:6px; border:1px solid #e4e8ef; padding:5px 8px; background:white; border-radius:5px; color:#6a7587; font-size:10px; }
.file-tag b { color:#a35543; font-weight:600; font-size:8px; }
.inbox-line--muted { opacity:1; border-top:1px solid #e5e9ee; padding-top:18px; }
.product-route { padding:28px 32px; }
.route-title { display:flex; justify-content:space-between; align-items:center; gap:8px; }
.route-state { color:#2c7354; background:#edf7f1; border-radius:99px; font-size:9px; padding:4px 7px; }
.product-document-title { font-size:22px; font-weight:550; letter-spacing:-.5px; margin:24px 0 14px; }
.route-meta { display:flex; gap:20px; color:#667282; font-size:10px; padding-bottom:18px; border-bottom:1px solid #edf0f3; }
.route-recipients { margin-top:18px; display:grid; gap:10px; }
.route-recipient { display:flex; align-items:center; gap:9px; font-size:12px; color:#536173; }
.route-recipient i { font-style:normal; width:26px; height:26px; border-radius:50%; display:grid; place-items:center; background:#eef3ff; color:#4267a0; font-size:9px; }
.route-recipient span:last-child { margin-left:auto; color:#4e775e; font-size:10px; }
.product-footnote { padding:14px 0; margin:0; font-size:10px; color:#626d7e; text-align:center; }
.quiet-line { display:flex; gap:50px; justify-content:center; flex-wrap:wrap; padding:30px 0; color:#66717e; font-size:12px; border-bottom:1px solid var(--line); }
.quiet-line span::before { content:'✓'; margin-right:9px; color:#78918a; }
.home-section { padding:112px 0; }
.section-eyebrow { font-size:12px; letter-spacing:1.2px; text-transform:uppercase; color:#5e7190; font-weight:550; margin:0 0 20px; }
.home h2 { font-size:clamp(34px,4vw,52px); font-weight:550; letter-spacing:-2px; line-height:1.12; margin:0 0 22px; }
.section-description { max-width:580px; color:var(--muted); font-size:18px; line-height:1.65; }
.benefits { display:grid; grid-template-columns:repeat(3,1fr); gap:52px; margin-top:58px; }
.benefit { border-top:1px solid var(--line); padding-top:28px; }
.benefit-num { font-size:12px; color:#637083; }
.benefit h3 { font-size:22px; letter-spacing:-.5px; font-weight:550; line-height:1.3; margin:24px 0 13px; }
.benefit p { font-size:15px; line-height:1.75; color:var(--muted); margin:0; }
.control-section { background:#f0f2f5; }
.control-grid { display:grid; grid-template-columns:1.05fr 1fr; gap:95px; align-items:center; }
.control-text p { font-size:17px; line-height:1.75; color:var(--muted); }
.control-note { font-size:12px!important; margin-top:28px; }
.route-sheet { background:white; border:1px solid #e1e5eb; padding:35px; border-radius:20px; }
.route-sheet-heading { display:flex; gap:10px; align-items:center; font-size:12px; color:#63738b; margin-bottom:30px; }
.route-sheet-heading img { width:24px; height:24px; }
.rule-row { display:flex; align-items:center; justify-content:space-between; border-top:1px solid #edf0f3; padding:21px 0; gap:16px; font-size:13px; }
.rule-row strong { font-weight:500; }
.rule-row span { color:#5c6f90; }
.rule-row:last-child { padding-bottom:0; }
.how-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:50px; margin-top:55px; counter-reset:step; }
.how-step { counter-increment:step; }
.how-step::before { content:'0' counter(step); display:block; color:#64748b; font-size:13px; margin-bottom:28px; }
.how-step h3 { font-size:21px; letter-spacing:-.4px; font-weight:550; margin:0 0 15px; }
.how-step p { font-size:15px; color:var(--muted); line-height:1.7; margin:0; }
.faq-section { border-top:1px solid var(--line); }
.faq-grid { display:grid; grid-template-columns:1fr 1.2fr; gap:90px; }
.home details { border:0; border-bottom:1px solid var(--line); border-radius:0; padding:22px 0; background:transparent; margin:0; }
.home details:first-child { padding-top:0; }
.home summary { font-size:17px; font-weight:500; list-style:none; display:flex; gap:25px; justify-content:space-between; cursor:pointer; line-height:1.5; }
.home summary::after { content:'+'; font-size:23px; color:#7b8798; font-weight:300; }
.home details[open] summary::after { content:'−'; }
.home details p { color:var(--muted); font-size:15px; line-height:1.75; margin:16px 20px 0 0; }
.signup-section { text-align:center; padding:94px 0 102px; background:#edf2fa; }
.signup-section h2 { font-size:clamp(38px,5vw,64px); }
.signup-section p { color:var(--muted); font-size:17px; line-height:1.7; margin:0 auto 30px; max-width:570px; }
.signup-section small { display:block; color:#5d6d82; font-size:12px; margin-top:18px; }
.home .foot { background:var(--bg); padding:35px 0; }
.home .foot__row { align-items:flex-start; }
.footer-note { font-size:11px; color:#657180; margin:10px 0 0; }
.home .foot__links { font-size:12px; gap:24px; padding-top:12px; }
@media(min-width:1100px) { .home .wrap { width:100%; } }
@media(max-width:850px) {
 .home-nav { display:none; } .home .wrap { padding-inline:24px; }
 .top__row { min-height:74px; } .home-hero { padding-top:70px; }
 .home-hero h1 { letter-spacing:-2.5px; } .product-stage { padding:24px 24px 0; margin-top:48px; }
 .product-inbox { padding:22px; } .product-route { padding:22px; }
 .benefits,.how-steps { gap:28px; } .control-grid,.faq-grid { gap:40px; }
 .home-section { padding:80px 0; } .route-sheet { padding:25px; }
}
@media(max-width:600px) {
 .home .wrap { padding-inline:22px; } .home .brand { font-size:19px; gap:9px; }
 .home .brand__mark { width:30px; height:30px; } .home .top__row { gap:8px; min-height:72px; }
 .home .top__actions { margin-left:auto; gap:0; } .home .top .btn { display:none; }
 .home .login-link { font-size:13px; padding:12px 2px 12px 12px; }
 .home-hero { padding-top:58px; } .launch-tag { font-size:10px; padding:7px 10px; }
 .home-hero h1 { font-size:44px; letter-spacing:-2.2px; margin:26px 0 23px; }
 .home-lead { font-size:16px; line-height:1.7; max-width:330px; }
 .home-actions { flex-direction:column; gap:5px; margin-top:28px; }
 .home-actions .btn { width:100%; max-width:305px; }
 .launch-caption { font-size:11px; max-width:270px; margin:9px auto 0; line-height:1.7; }
 .product-stage { margin:36px -8px 0; padding:14px 12px 0; border-radius:18px 18px 0 0; }
 .product-content { grid-template-columns:1fr; } .product-toolbar { height:34px; padding-inline:14px; }
 .product-inbox { border-right:0; border-bottom:1px solid #edf0f3; padding:22px; }
 .inbox-line { margin-top:16px; } .inbox-line--muted { display:none; }
 .product-route { padding:22px; } .product-document-title { margin-top:18px; font-size:20px; }
 .product-label { font-size:9px; } .product-footnote { font-size:9px; padding:11px 0; }
 .quiet-line { gap:13px 22px; font-size:10px; padding:23px 0; }
 .quiet-line span::before { margin-right:5px; }
 .home-section { padding:64px 0; } .home h2 { font-size:36px; letter-spacing:-1.4px; }
 .section-description { font-size:16px; } .section-eyebrow { font-size:10px; margin-bottom:17px; }
 .benefits,.how-steps,.control-grid,.faq-grid { grid-template-columns:1fr; gap:30px; }
 .benefits { margin-top:36px; } .benefit { padding-top:20px; }
 .benefit h3 { margin-top:15px; font-size:21px; } .benefit p { font-size:14px; }
 .control-grid { gap:35px; } .control-text p { font-size:16px; } .control-note { margin-top:20px; }
 .route-sheet { padding:24px; } .rule-row { font-size:12px; }
 .how-steps { margin-top:36px; gap:32px; } .how-step::before { margin-bottom:15px; }
 .how-step h3 { margin-bottom:10px; } .how-step p { font-size:14px; }
 .home summary { font-size:16px; } .home details p { font-size:14px; }
 .signup-section { padding:64px 0 70px; } .signup-section h2 { font-size:40px; }
 .signup-section p { font-size:15px; } .signup-section .btn { width:100%; }
 .home .foot__row { flex-direction:column; gap:20px; } .home .foot__links { padding-top:0; gap:18px; }
 .auth { padding:50px 0 70px; } .auth__grid { gap:35px; }
 .auth__aside h1 { font-size:40px; } .form { padding:24px; } .form--flat { padding:0; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; animation:none!important; } }
