/* Adapted from Cloudly, index-2 and assets/css/main.css (Envato).
   Hero composition, paired actions and section rhythm; provenance in TEMPLATE.md.
   CardinalOS design and implementation © CodLab. */
:root{color-scheme:light dark;--paper:#f7f5f3;--surface:#fff;--ink:#261f22;--muted:#685c61;--line:#d8cfd2;--cardinal:#a51f3c;--red-soft:#edd7dd;--section:#eee9e7;--focus:#8c1631;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;scroll-padding-top:30px}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.6}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p,figure{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}h1,h2{line-height:1.04;letter-spacing:-.055em;font-weight:650}h3{line-height:1.25;letter-spacing:-.025em;font-weight:650}a,button,input{touch-action:manipulation}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}#main:focus{outline:none}.wrap{width:min(1200px,calc(100% - 96px));margin-inline:auto}.narrow{max-width:800px}.skip-link{position:fixed;left:20px;top:-100px;z-index:20;background:var(--ink);color:var(--paper);padding:12px 20px;border-radius:8px}.skip-link:not(:focus){opacity:0;pointer-events:none}.skip-link:focus{top:16px}
.site-header{display:flex;align-items:center;gap:40px;min-height:100px;position:relative;z-index:2}.wordmark{display:flex;align-items:center;gap:9px;font-size:23px;letter-spacing:-.055em;font-weight:700;text-decoration:none;white-space:nowrap}.wordmark img{width:184px;height:auto}.main-nav{display:flex;gap:30px;margin-left:auto;font-size:14px;font-weight:550}.main-nav a{text-decoration:none}.language-nav{display:flex;gap:2px;font-size:12px;font-weight:650;letter-spacing:.05em}.language-nav a{display:grid;place-items:center;min-width:38px;min-height:40px;border-radius:100px;text-decoration:none;color:var(--muted)}.language-nav [aria-current]{background:var(--red-soft);color:var(--cardinal)}
/* Cloudly's centred pp-hero-2 structure, narrowed and recoloured for CardinalOS. */
.pp-hero-2{padding:100px 0 100px;position:relative;isolation:isolate}.pp-hero-2 .pp-hero-content{text-align:center;position:relative}.status{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:40px;padding:7px 15px;font-size:12px;letter-spacing:.035em;color:var(--muted);margin-bottom:30px}.status span{height:6px;width:6px;border-radius:50%;background:var(--cardinal)}.pp-hero-content h1{font-size:clamp(58px,7.7vw,110px);margin-bottom:30px}.pp-hero-content h1 em{font-style:normal;color:var(--cardinal)}.pp-hero-content .hero-description{max-width:640px;margin-inline:auto;color:var(--muted);font-size:19px;line-height:1.65}.pp-hero-button{display:flex;align-items:center;gap:28px;margin-top:34px;justify-content:center}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;background:var(--cardinal);color:#fff;border:1px solid transparent;border-radius:40px;padding:14px 25px;font-size:14px;line-height:1.5;font-weight:650;text-decoration:none;min-height:50px;transition:background .2s,transform .2s}.button:hover{background:#85132d;transform:translateY(-2px)}.text-link{font-size:14px;font-weight:600;line-height:1.5}.hero-note{font-size:12px;color:var(--muted);margin-top:23px}.hero-orbit{position:absolute;left:50%;top:110px;width:min(1100px,92vw);height:540px;border:1px solid var(--line);border-radius:50%;transform:translateX(-50%) rotate(-16deg);z-index:-1;opacity:.35;pointer-events:none}.hero-orbit::after{content:"";position:absolute;inset:22px -34px;border:1px solid var(--line);border-radius:50%}
.desktop-section{padding-bottom:104px}.preview-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:20px}.preview-heading h2{font-size:21px;letter-spacing:-.035em;line-height:1.3;font-weight:550}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:650;color:var(--cardinal);line-height:1.5}.desktop-preview picture{display:block;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--section);box-shadow:0 25px 65px -40px #39142070}.desktop-preview img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}.workspace-preview{margin-top:70px}.desktop-preview figcaption{max-width:650px;font-size:12px;color:var(--muted);line-height:1.6;margin-top:18px}
/* Cloudly section-padding: 120 / 100 / 80, with editorial two-column sections. */
.section-padding{padding:120px 0}.vision-section{background:var(--section)}.section-heading{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:90px;margin-bottom:64px}.section-heading .eyebrow{margin-bottom:22px}h2{font-size:clamp(36px,4.2vw,58px)}.section-intro{font-size:17px;color:var(--muted);max-width:480px}.vision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 90px}.vision-item{position:relative;border-top:1px solid var(--line);padding-top:25px}.item-number{font-size:11px;letter-spacing:.1em;color:var(--cardinal);display:block;margin-bottom:15px}.vision-item h3{font-size:25px;margin-bottom:13px}.vision-item p{max-width:455px;font-size:15px;color:var(--muted);line-height:1.75}.family-section{background:var(--paper)}.app-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}.app-card{min-width:0;background:var(--surface);padding:28px 22px;border-radius:16px;border:1px solid var(--line)}.app-card img{margin-bottom:24px}.app-card h3{font-size:17px;margin-bottom:7px}.app-card p{font-size:13px;color:var(--muted);min-height:42px}.app-state{font-size:10px;letter-spacing:.045em;text-transform:uppercase;display:block;color:var(--muted);margin-top:24px}
.signup-section{background:#58152c;color:#fff;--focus:#ffd7df;--muted:#efcdd6}.signup-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.signup-section .eyebrow{color:#f0b3c3;margin-bottom:24px}.signup-section h2{font-size:clamp(36px,4.2vw,58px)}.signup-intro{max-width:410px;font-size:16px;line-height:1.75;color:var(--muted);margin-top:25px}.signup-form{padding-top:3px}.signup-form>label{font-size:13px;font-weight:600;display:block;margin-bottom:10px}.signup-form input[type=email]{width:100%;min-height:56px;border:1px solid #c7a7b1;background:#fff;color:#291d22;border-radius:8px;padding:13px 16px;font-size:16px}.field-help{font-size:12px;line-height:1.65;color:var(--muted);margin-top:9px}.consent-field{display:flex;align-items:start;gap:12px;margin-top:25px}.consent-field input{width:20px;height:20px;flex:none;margin:2px 0 0;accent-color:#8b1d3b}.consent-field label{font-size:12px;line-height:1.75;cursor:pointer}.privacy-link{display:inline-block;font-size:12px;margin:12px 0 25px 32px}.button-light{width:100%;background:#fff;color:#58152c}.button-light:hover{background:#f6e2e7;color:#58152c}.form-note{font-size:11px;color:var(--muted);margin-top:15px;line-height:1.7}.form-errors,.errorlist{color:#fff1b8;font-size:13px}.errorlist{padding-left:18px;margin:8px 0 15px}.form-errors{margin-bottom:15px}
.site-footer{padding-top:40px;padding-bottom:32px}.footer-top{display:flex;align-items:center;gap:35px;padding-bottom:30px;border-bottom:1px solid var(--line)}.footer-brand{font-size:14px;white-space:nowrap;text-decoration:none}.footer-top>p{font-size:12px;color:var(--muted)}.footer-top nav{display:flex;gap:25px;margin-left:auto;font-size:12px}.trademarks{max-width:850px;font-size:10px;color:var(--muted);line-height:1.7;margin-top:23px}.copyright{font-size:10px;color:var(--muted);margin-top:13px}.legal-page{padding-top:85px;padding-bottom:110px}.legal-page>.eyebrow{margin-bottom:20px}.legal-page h1{font-size:clamp(40px,5vw,66px);overflow-wrap:anywhere;margin-bottom:35px}.legal-intro{font-size:20px;color:var(--muted);margin-bottom:50px}.legal-page section{margin-block:35px}.legal-page h2{font-size:24px;line-height:1.3;letter-spacing:-.025em;margin-bottom:14px}.legal-page section p,.legal-page address{font-size:15px;color:var(--muted);line-height:1.85;font-style:normal;overflow-wrap:anywhere}.legal-page section p+p{margin-top:18px}.legal-page>.text-link{display:inline-block;margin-top:30px}.state-page{padding-top:75px;padding-bottom:110px;min-height:65vh}.state-mark{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--red-soft);color:var(--cardinal);font-size:32px;margin-bottom:30px}.state-page h1{font-size:clamp(38px,5vw,68px);max-width:770px;margin-top:18px;overflow-wrap:anywhere}.state-page>p:not(.eyebrow){font-size:18px;line-height:1.8;max-width:650px;color:var(--muted);margin-top:28px}.state-page form{margin-block:35px}.state-page>.text-link{display:inline-block;margin-top:35px}
@media(prefers-color-scheme:dark){:root{--paper:#191618;--surface:#231f22;--ink:#f8f1f3;--muted:#baadb3;--line:#494047;--cardinal:#f494a8;--red-soft:#492330;--section:#211c1f;--focus:#ffaabe}.button{background:#bc2d4c;color:#fff}.button:hover{background:#a7223e}.signup-section{background:#491426}.button-light{background:#fff;color:#58152c}.button-light:hover{background:#f6e2e7}.hero-orbit{opacity:.35}}
@media(max-width:1199px){.section-padding{padding:100px 0}.pp-hero-2{padding:85px 0 90px}.section-heading{gap:55px}.signup-grid{gap:60px}.app-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.vision-grid{gap:45px 60px}}
@media(max-width:991px){.section-padding{padding:80px 0}.wrap{width:calc(100% - 64px)}.site-header{gap:25px}.main-nav{gap:20px}.section-heading{grid-template-columns:1fr;gap:25px;margin-bottom:45px}.section-intro{max-width:600px}.signup-grid{grid-template-columns:1fr;gap:45px}.signup-form{max-width:600px}.signup-intro{max-width:550px}.footer-top{flex-wrap:wrap;gap:15px 30px}.footer-top nav{margin-left:0}.footer-top>p{flex-basis:60%}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.site-header{min-height:82px;gap:12px}.wordmark{font-size:20px;gap:5px}.wordmark img{width:152px;height:auto}.main-nav{display:none}.language-nav{margin-left:auto;gap:0;font-size:11px}.language-nav a{min-width:34px;min-height:38px}.pp-hero-2{padding:54px 0 65px}.status{font-size:10px;padding:6px 12px;margin-bottom:27px}.pp-hero-content h1{font-size:clamp(43px,11.6vw,68px);line-height:1.06;letter-spacing:-.06em;margin-bottom:25px}.pp-hero-content .hero-description{font-size:16px;line-height:1.7}.pp-hero-button{flex-direction:column;gap:22px;margin-top:28px}.pp-hero-button .button{max-width:100%;font-size:13px}.hero-note{font-size:10px;max-width:260px;margin:23px auto 0}.hero-orbit{top:74px;height:310px;width:60vw}.hero-orbit::after{inset:20px -24px}.desktop-section{padding-bottom:65px}.preview-heading{display:block;margin-bottom:16px}.preview-heading h2{font-size:19px;margin-top:8px}.desktop-preview picture{border-radius:9px}.desktop-preview figcaption{font-size:10px;margin-top:14px}.section-padding{padding:65px 0}.section-heading .eyebrow{margin-bottom:18px}h2{font-size:37px}.section-intro{font-size:15px}.vision-grid{grid-template-columns:1fr;gap:32px}.vision-item{padding-top:20px}.item-number{margin-bottom:10px}.vision-item h3{font-size:23px}.vision-item p{font-size:14px}.app-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.app-card{padding:22px 14px}.app-card img{width:62px;height:62px;margin-bottom:20px}.app-card h3{font-size:15px;letter-spacing:-.035em}.app-card p{font-size:12px;min-height:40px}.app-state{font-size:9px;margin-top:18px}.signup-section h2{font-size:37px}.signup-intro{font-size:15px}.signup-grid{gap:32px}.button{padding:14px 20px}.button-light{font-size:12px;gap:10px}.footer-top{align-items:start;flex-direction:column;gap:16px}.footer-top>p{flex-basis:auto}.footer-top nav a{min-height:30px;display:inline-flex;align-items:center}.trademarks{font-size:10px}.legal-page{padding-top:45px;padding-bottom:65px}.legal-page h1{font-size:40px}.legal-intro{font-size:18px}.legal-page h2{font-size:23px}.legal-page section p,.legal-page address{font-size:14px}.state-page{padding-top:45px;padding-bottom:75px}.state-page h1{font-size:40px}.state-page>p:not(.eyebrow){font-size:16px}}
@media(prefers-reduced-motion:no-preference){.pp-hero-content{animation:arrive .8s ease-out both}@keyframes arrive{from{transform:translateY(10px)}to{transform:translateY(0)}}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
