@import url('https://fonts.googleapis.com/css2?family=Heebo:wght@400;500;600;700;800&display=swap');
:root{--navy:#102d31;--blue:#01a2b4;--pale:#f3f5f9;--muted:#61748b;--border:#dce8eb;--shadow:0 18px 45px rgba(16,45,49,.1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Heebo,Arial,sans-serif;color:var(--navy);line-height:1.65}a{text-decoration:none;color:inherit}button,input,textarea{font:inherit}.container{width:min(1220px,calc(100% - 38px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:#fffffff5;border-bottom:1px solid var(--border)}.nav-row{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand img{width:155px;display:block}.nav{display:flex;align-items:center;gap:22px;font-weight:700;font-size:14px}.auth-actions{display:inline-flex;gap:9px;align-items:center}.auth-actions[hidden]{display:none}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--blue);color:#fff;border:1px solid var(--blue);border-radius:11px;padding:11px 20px;font-weight:700}.button.outline{background:#fff;color:var(--blue)}.small{padding:8px 14px}.nav-button{border:0;background:none;font-weight:700;color:inherit}.hero{padding:85px 0;background:linear-gradient(135deg,#f3fbfc,#fff 58%,#edf8fa)}.hero-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:45px;align-items:center}.eyebrow{font-size:12px;color:#087f8b;font-weight:800}.hero h1{font-size:clamp(36px,4vw,58px);line-height:1.15;margin:14px 0}.hero h1 span{color:var(--blue)}.hero p{font-size:18px;color:var(--muted)}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:27px}.hero-product{background:#fff;border:1px solid var(--border);border-radius:20px;padding:13px;box-shadow:var(--shadow)}.hero-product img{width:100%;display:block;border-radius:12px}.section{padding:78px 0}.soft{background:var(--pale)}.section-title{text-align:center;max-width:720px;margin:0 auto 40px}.section-title h2{font-size:36px;margin:8px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--border);border-radius:17px;padding:25px;background:#fff}.card p{color:var(--muted)}.contact{background:linear-gradient(130deg,#102d31,#1f3864);color:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.contact-form{background:#fff;color:var(--navy);border-radius:18px;padding:25px;display:grid;gap:7px}.contact-form input,.contact-form textarea,.auth-form input{border:1px solid #cbd9df;border-radius:9px;padding:11px}.footer{background:#102d31;color:#c7d5e4;padding:30px 0}.footer-row{display:flex;justify-content:space-between;gap:20px;align-items:center}.footer-links{display:flex;gap:15px;flex-wrap:wrap}.auth-page,.legal-page,.portal-page{min-height:100vh;background:linear-gradient(135deg,#f4fbfc,#fff)}.auth-header{padding:22px 0}.auth-shell,.legal-shell,.portal-card{width:min(520px,calc(100% - 30px));margin:25px auto 65px;background:#fff;border:1px solid var(--border);border-radius:20px;padding:32px;box-shadow:var(--shadow)}.legal-shell{width:min(900px,calc(100% - 30px))}.portal-card{width:min(1050px,calc(100% - 30px))}.auth-form{display:grid;gap:8px}.oauth-button{width:100%;padding:12px;border:1px solid #cbd9df;border-radius:11px;background:#fff;font-weight:700}.divider{text-align:center;color:#8496a4;margin:18px 0}.auth-message{display:none;padding:10px;border-radius:8px;margin-top:12px}.auth-message.show{display:block}.error{background:#fff0f0;color:#9d2828}.success{background:#edf9f4;color:#167955}.checkbox{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--muted)}.portal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.portal-grid article{border:1px solid var(--border);border-radius:14px;padding:20px}.menu-toggle{display:none}.muted{color:var(--muted)}
@media(max-width:800px){.menu-toggle{display:block;border:0;background:none;font-size:25px}.nav{display:none;position:absolute;top:76px;right:0;left:0;background:#fff;padding:20px;flex-direction:column;align-items:stretch;box-shadow:var(--shadow)}.nav.open{display:flex}.hero-grid,.contact-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.portal-grid{grid-template-columns:1fr}}@media(max-width:550px){.cards{grid-template-columns:1fr}.hero{padding:45px 0}.hero h1{font-size:38px}.footer-row{flex-direction:column;align-items:flex-start}.actions{display:grid}.actions .button{width:100%}}
