/* Hope visual system, inspired by Stuvanti. Inter is served with the application. */
@font-face{font-family:Inter;src:url('assets/InterVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{--hope-navy:#0a1b33;--hope-blue:#1565ff;--hope-blue-dark:#1052d6;--hope-teal:#0f766e;--hope-canvas:#f2f5f9;--hope-line:#dce5f0;--hope-muted:#50627a;--hope-shadow:0 1px 2px #0a1b3304,0 8px 24px -12px #0a1b3314;--sans:Inter,'Segoe UI',Arial,sans-serif;--serif:var(--sans);--blue:var(--hope-blue);--blue-dark:var(--hope-blue-dark);--navy:var(--hope-navy);--navy-deep:#081629;--paper:var(--hope-canvas);--canvas:var(--hope-canvas);--ink:var(--hope-navy);--muted:var(--hope-muted);--line:var(--hope-line);--ice:#eaf1ff;--green:var(--hope-teal);--gold:var(--hope-blue);--shadow:var(--hope-shadow);font-family:var(--sans);font-synthesis:none}
body{font-family:var(--sans);color:var(--hope-navy);font-size:14px;line-height:1.55;text-rendering:optimizeLegibility}
h1,h2,h3,h4{font-family:var(--sans);color:var(--hope-navy)}
h1{font-weight:700;letter-spacing:-.04em}h2,h3{font-weight:650;letter-spacing:-.025em}
button,input,textarea,select{font-family:inherit}button,a,input,textarea,select{scroll-margin-top:88px}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--hope-blue);outline-offset:3px}
::selection{background:#dce9ff;color:var(--hope-navy)}
.button{min-height:40px;padding:10px 16px;font-size:13px;font-weight:600;border-radius:8px;gap:8px;line-height:1.4;transition:background .15s,border-color .15s}
.button.primary{background:var(--hope-blue);border-color:var(--hope-blue);color:#fff;box-shadow:none}.button.primary:hover{background:var(--hope-blue-dark);transform:none}
.button.light,.button:not(.primary):not(.danger){border-color:var(--hope-line);background:#fff;color:#294361;box-shadow:none}
.button.light:hover,.button:not(.primary):not(.danger):hover{background:#f3f7fd;border-color:#b8cbe5}
.button:disabled{cursor:not-allowed;transform:none}.button.small{min-height:34px;font-size:12px}
.brand{font-family:var(--sans);font-weight:750;letter-spacing:-1.1px}.brand-mark,.brand-symbol{font-family:var(--sans);color:var(--hope-blue)}
.eyebrow{color:#536b89;font-size:10px;letter-spacing:.1em;font-weight:650}
.badge{font-size:11px;font-weight:600;border-radius:6px;padding:4px 8px;line-height:1.5}
.badge.active,.badge.verified,.badge.succeeded{background:#e5f8f0;color:#08734a;border-color:#ccebdd}
.badge.pro{background:#eaf1ff;color:#1052d6;border-color:#d7e5ff}.badge.free{background:#f0f4f9;color:#50627a;border-color:#dce5f0}
.badge.failed,.badge.revoked,.badge.expired{background:#fff0f0;color:#ad3434;border-color:#f2d5d5}
.badge.reserved,.badge.uncertain{background:#fff7e5;color:#8b5e0b;border-color:#f1e2b6}
.text-button,.text-link,.quiet-button,.card-link{color:var(--hope-blue-dark)}
input,textarea,select{border-color:#ccd9e8;color:var(--hope-navy);background:#fff;border-radius:8px}
input::placeholder,textarea::placeholder{color:#748399}
.panel,.metric,.dash-card,.plan,.plan-card{border:1px solid var(--hope-line);border-radius:12px;box-shadow:var(--hope-shadow);background:#fff}
.notice,.empty-license{background:#eef4ff;border-color:#d7e5ff;color:#405b7c}
.notice strong{color:#254367}.form-error,.account-error{color:#ad3434}
@media(pointer:coarse){button,.button,nav a{min-height:44px}input:not([type=checkbox]):not([type=radio]):not([type=range]),textarea,select{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Shared visual language across the public site and account portal. */
.site-header{border-color:var(--hope-line);background:#fffffffa}.nav{height:72px}.nav nav,.nav-actions{font-size:13px;gap:25px}.nav a:hover{color:#1565ff}.nav .button.primary:hover{color:white}.wrap{width:min(1180px,calc(100% - 64px))}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:32px 44px;align-items:center;text-align:left;padding:56px 0 0}.hero-copy{min-width:0}.windows-pill{font-size:11px;border-color:#d7e5f5;color:#385476;background:#f5f8fc;padding:7px 12px}.hero h1{font-size:clamp(36px,3.55vw,54px);letter-spacing:-.05em;line-height:1.12;margin:22px 0 18px;max-width:650px;font-weight:730}.hero h1 span{color:#1565ff}.hero-copy>p{font-size:16px;line-height:1.7;color:#50627a;max-width:480px}.hero-actions{justify-content:flex-start;margin:24px 0 0;gap:10px}.hero-visual{min-width:0}.product-stage{min-height:410px;border:1px solid #dce5f0;border-radius:18px;background:linear-gradient(135deg,#edf4ff,#f3fafb);padding:28px}.study-sheet{width:95%;min-height:300px;transform:translate(-8px,-25px);border-color:#d8e3f0;box-shadow:0 8px 24px #0a1b330b}.sheet-bar{padding:12px 16px;background:#f7f9fc}.sheet-content{padding:24px 22px 50px}.sheet-content h3{font-size:20px}.sheet-content p{font-size:14px}.sheet-content .equation{font-size:26px}.answer-window{right:5%;top:155px;width:82%;max-width:420px;border-color:#cfdaea;border-radius:11px;padding:16px 18px;box-shadow:0 14px 32px #0a1b3316}.answer-content{min-height:110px}.answer-content .equation{font-size:28px}.answer-actions .button{min-height:34px;padding:7px 18px;font-size:11px}.transparency .slider-track:before{background:#263546}.answer-window .badge{background:#f1f4f8;color:#42566e}.answer-window .button.primary{background:#263546;border-color:#263546;color:white}.preview-caption{text-align:center;margin-top:9px;font-size:10px;color:#6b7c93}.facts{grid-column:1/-1;width:100%;justify-content:flex-start;gap:36px;padding:20px 0 28px;border-bottom:1px solid #e5ecf5;font-size:12px;color:#50627a}
.section{padding-top:44px;padding-bottom:44px}.section-heading{text-align:left;margin-bottom:24px}.section-heading h2{font-size:30px;line-height:1.2;letter-spacing:-.04em;font-weight:700}.section-heading p{font-size:14px;color:#607089;margin-top:8px}.feature-section{background:#f2f5f9;border-block:1px solid #e5ecf5}.feature-grid{gap:18px}.feature{padding:24px;border:1px solid #dce5f0;border-radius:12px;background:#fff;box-shadow:var(--hope-shadow)}.feature h3{font-size:17px;font-weight:650;min-height:0;margin-bottom:10px}.feature p{font-size:13px;line-height:1.7;color:#50627a}.feature .feature-icon{width:42px;height:42px;background:#eaf1ff;color:#1565ff;border-radius:11px;font-size:22px;margin-bottom:19px}.feature .eyebrow{color:#0f766e}
.pricing-grid{gap:20px}.plan{padding:28px}.plan.featured{border:1px solid #9bbcff;background:#f6f9ff;box-shadow:var(--hope-shadow)}.plan h3{font-size:23px}.plan-description,.plan-cap{color:#50627a;font-size:13px}.plan-credits strong{font-size:42px;font-weight:700;letter-spacing:-.05em}.plan-credits span{color:#607089;font-size:13px}.plan ul{font-size:13px;color:#425975;line-height:1.7}.plan li:before{color:#0f766e}.pricing-note{font-size:12px;color:#607089;line-height:1.7}.public-rates{border-color:#dce5f0;background:#f7f9fc;box-shadow:none;border-radius:12px}.public-rates h3{font-size:22px}.coverage-table th,.coverage-table td{font-size:12px;border-color:#dce5f0}.coverage-table th{background:#eef3fa;color:#425975}.coverage-note{font-size:11px;color:#607089}
.account-banner{background:#edf5ff;border:1px solid #d7e5f5;border-radius:14px;padding:28px 32px;box-shadow:none}.account-banner h2{font-size:27px}.account-banner p{font-size:14px;color:#50627a}.account-banner img{width:175px;height:135px;object-fit:contain}.faq-item{padding:18px 0;border-color:#dce5f0}.faq-item h3{font-size:14px;font-weight:650}.faq-item p{font-size:13px;line-height:1.7;color:#50627a}.footer{background:#0a1b33;color:#aebed4;border-top:0;padding-top:28px;padding-bottom:20px}.footer .brand{color:white}.footer .brand-mark{color:#80acff}.footer nav a{color:#c6d4e6}.footer nav a:hover{color:#fff}.footer .wrap>span{font-size:12px;color:#aebed4}.footer #public-links{color:#aebed4}.footer #public-links a{color:#dce7f7}.footer nav{font-size:12px}
/* Signed-in account shell */
.dashboard-body{background:#f2f5f9}.dash-sidebar{width:235px;background:#0a1b33;border:0;color:#c4d2e5;padding-top:25px}.dash-sidebar>.brand{color:#fff;margin-bottom:30px;font-size:29px}.dash-sidebar .brand-mark{color:#80acff}.dash-nav{font-size:13px;color:#aabbd3;gap:12px;padding:11px 13px;min-height:43px;border-radius:8px}.dash-nav>span{font-size:20px;color:#8fa7c9}.dash-nav:hover{background:#ffffff09;color:#fff}.dash-nav.active{background:#1565ff;color:white}.dash-nav.active>span{color:white}.dash-user{border-color:#ffffff18;color:#fff;padding-top:18px}.dash-avatar{background:#ffffff12;color:#d5e4fc;width:36px;height:36px}.dash-user strong{font-size:12px}.dash-user div>span{font-size:11px;color:#a8bfdc}.dash-sidebar-bottom{padding-top:24px}
.dash-topbar{min-height:68px;padding:15px 28px;border-color:#dce5f0;background:#fff}.dash-topbar>div{font-size:12px;color:#607089}.dash-topbar strong{font-weight:600;color:#294361}.verified{background:#e5f8f0;padding:5px 9px;border-radius:6px;color:#08734a;font-size:11px}.dash-topbar>.nav-account{font-size:12px;color:#50627a}.dash-main{padding:26px 28px;max-width:1440px}.dash-heading{margin-bottom:22px}.dash-heading h1{font-size:28px;font-weight:700;letter-spacing:-.04em}.dash-card{padding:22px;border-radius:12px;box-shadow:var(--hope-shadow)}.summary-grid{gap:16px}.balance-card{border-top:3px solid #1565ff}.balance-value{font-size:38px;font-weight:700;letter-spacing:-.05em;color:#0a1b33}.card-overline{font-size:13px;color:#294361;font-weight:600;margin-bottom:18px}.balance-card .card-overline{font-size:11px;color:#607089;font-weight:600}.card-icon{width:33px;height:33px;display:grid;place-items:center;background:#eaf1ff;border-radius:9px;font-size:21px;color:#1565ff}.plan-title h2{font-size:23px}.plan-breakdown{font-size:12px}.plan-breakdown dd{color:#294361}.updated{color:#667b96!important;font-size:11px!important}.card-link{font-size:12px;border-color:#dce5f0;color:#1052d6}.balance-track i{background:#1565ff}.badge.neutral{background:#f0f4f9;color:#607089}
.billing-section{margin-top:26px}.billing-heading h2{font-size:21px}.billing-note{font-size:13px;color:#607089}.billing-actions h3,.billing-history h3{font-size:14px;font-weight:650}.billing-history th{background:#f5f8fc;color:#526a87;font-size:11px}.billing-history td{font-size:12px}.billing-buttons .button{min-height:38px;font-size:12px}.billing-buttons .button:disabled{color:#718198;background:#f3f6fa;border-color:#dce5f0}.billing-history{gap:24px}.dash-footer{color:#607089;margin-top:22px;font-size:11px}.dash-footer .brand{font-size:22px}.empty-license{background:#eef4ff;border-color:#d7e5ff}.loading-state{background:#fff;border-color:#dce5f0;color:#607089}
.is-signed-out .dash-topbar{border:0;min-height:64px}.is-signed-out .dash-main{max-width:490px;padding:34px 24px}.is-signed-out .auth-card{border-color:#dce5f0;border-radius:14px;padding:32px;box-shadow:0 12px 36px #0a1b3309}.auth-card h2,.is-signed-out .auth-card h2{font-size:27px;font-weight:700;letter-spacing:-.04em}.auth-card .eyebrow{color:#1052d6}.auth-card label{font-size:12px;color:#405672;margin-top:17px}.auth-card input{min-height:44px;font-size:14px;border-color:#ccd9e8}.auth-card .account-muted{font-size:13px;line-height:1.7}.auth-card #auth-submit{margin-top:19px;min-height:44px}.account-links button{font-size:12px;color:#1052d6}.dashboard-body dialog{border-color:#dce5f0;border-radius:12px}.dashboard-body dialog h3{font-size:23px}.account-error{border-color:#f2d5d5;background:#fff3f3;font-size:13px}#account-message{color:#405b7c}#account-message.error{color:#ad3434}
@media(max-width:1100px){.hero{gap:24px}.hero h1{font-size:40px}.product-stage{min-height:390px}.hero-copy>p{font-size:15px}.hero-actions .button{padding:11px 15px}.dash-sidebar{width:210px}.dash-shell{margin-left:210px}.summary-grid{grid-template-columns:1fr 1fr}.balance-card{grid-column:span 2}}
@media(max-width:800px){.hero{grid-template-columns:1fr;gap:26px;padding-top:35px}.hero h1{font-size:46px;max-width:650px}.hero-copy>p{max-width:580px}.hero-visual{max-width:640px;width:100%;margin:auto}.product-stage{min-height:390px}.facts{gap:24px;padding-top:0;font-size:11px}.dash-sidebar{width:190px}.dash-shell{margin-left:190px}.dash-main{padding:22px}.dash-nav{font-size:12px;padding:11px 10px}.dash-topbar{padding-inline:22px}.billing-history,.billing-actions-grid{grid-template-columns:1fr}}
@media(max-width:620px){.wrap{width:calc(100% - 32px)}.nav{height:66px;gap:15px}.nav-actions{gap:12px}.nav nav{top:66px}.hero{padding-top:30px;gap:25px}.hero h1{font-size:38px;letter-spacing:-.045em}.hero-copy>p{font-size:14px}.hero-actions{gap:8px}.hero-actions .button{font-size:12px;padding:11px 13px}.product-stage{min-height:350px;padding:20px}.study-sheet{min-height:265px;transform:translate(-5px,-25px)}.sheet-content{padding:20px}.answer-window{top:135px;right:4%;width:87%;padding:13px 15px}.answer-content{min-height:95px}.facts{gap:12px;font-size:10px;flex-wrap:wrap;justify-content:space-between;padding-bottom:24px}.section{padding-block:32px}.section-heading h2{font-size:26px}.feature{padding:22px}.account-banner{padding:24px}.account-banner h2{font-size:25px}.account-banner img{display:none}.footer .wrap{gap:16px}.dash-sidebar{width:235px}.dash-shell{margin-left:0}.dash-menu{color:#1565ff}.dash-main{padding:22px 16px}.dash-topbar{padding:12px 16px}.summary-grid{grid-template-columns:1fr}.balance-card{grid-column:auto}.dash-card{padding:20px}.dash-heading h1{font-size:25px}.dash-heading .button{min-height:38px}.balance-value{font-size:34px}.is-signed-out .dash-main{padding:25px 16px}.is-signed-out .auth-card{padding:27px 24px}.auth-card input{font-size:16px}.billing-heading{flex-wrap:wrap}.dash-sidebar>.brand{font-size:28px}.dash-sidebar .dash-user strong{max-width:140px}}
