/* CloudCaive focused marketing system.
   Page-local layout only: colour, type and motion roles come from theme.css. */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;scroll-padding-top:84px}
body{font-family:var(--font-body);background:var(--cc-canvas);color:var(--cc-ink);line-height:1.65;overflow-x:hidden}
a{color:var(--cc-cyan-600)}
a:hover{color:var(--cc-ink)}
img,svg{max-width:100%}
button,input{font:inherit}
::selection{background:var(--cc-oxblood);color:var(--cc-ivory-100)}
.skip-link{position:fixed;left:16px;top:10px;z-index:300;padding:10px 16px;border-radius:var(--cc-radius-sm);background:var(--cc-amber);color:var(--cc-navy-950);font-weight:700;text-decoration:none;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
:where(a,button):focus-visible{outline:3px solid var(--cc-cyan);outline-offset:3px}
.inner{width:min(1120px,calc(100% - 48px));margin-inline:auto}
.narrow{width:min(790px,100%);margin-inline:auto}
.eyebrow{color:var(--gold-accent);margin-bottom:18px}
.eyebrow::before{background:var(--cc-oxblood)}
.accent-gold-italic{color:var(--gold-accent)}
.lede{color:var(--cc-ink-2)}
.muted{color:var(--cc-muted)}
.compat-anchor{display:block;position:relative;top:-84px;visibility:hidden}

/* Header */
.site-nav{position:fixed;inset:0 0 auto;z-index:100;height:72px;display:flex;align-items:center;padding:0 32px;background:color-mix(in srgb,var(--cc-canvas) 92%,transparent);border-bottom:1px solid var(--cc-line);backdrop-filter:blur(16px)}
.nav-inner{width:min(1200px,100%);margin:auto;display:flex;align-items:center;gap:24px}
.nav-logo{display:flex;align-items:center;gap:11px;flex:none;color:var(--cc-ink);text-decoration:none}
.nav-v2-mark{width:38px;height:38px;display:block;flex:none}
.nav-wordmark{font-family:var(--font-wordmark);font-size:21px;font-weight:var(--weight-brand);letter-spacing:-.45px;line-height:1.05}
.nav-tagline{margin-top:3px;font-family:var(--font-mono);font-size:8px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--cc-cyan-600)}
.nav-links{display:flex;align-items:center;justify-content:center;gap:26px;margin-left:auto}
.nav-links a{font-size:13px;font-weight:600;color:var(--cc-ink-2);text-decoration:none;white-space:nowrap}
.nav-links a[aria-current="page"],.nav-links a:hover{color:var(--cc-ink)}
.nav-actions{display:flex;align-items:center;gap:8px;flex:none}
.nav-label-compact{display:none}
.cc-theme-toggle,.nav-menu-toggle{width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;flex:none;border:1px solid var(--cc-line-strong);border-radius:var(--cc-radius-pill);background:transparent;color:var(--cc-ink-2);cursor:pointer}
.cc-theme-toggle:hover,.nav-menu-toggle:hover{border-color:var(--cc-cyan);color:var(--cc-ink);background:color-mix(in srgb,var(--cc-ink) 5%,transparent)}
.cc-theme-toggle svg,.nav-menu-toggle svg{width:19px;height:19px}
.cc-theme-toggle .ico-sun{display:none}
.cc-theme-toggle[aria-pressed="true"] .ico-moon{display:none}
.cc-theme-toggle[aria-pressed="true"] .ico-sun{display:block}
.nav-menu-toggle{display:none}
.mobile-theme{display:none}

/* Controls */
.btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 21px;border:1px solid transparent;border-radius:var(--cc-radius-pill);font-weight:700;font-size:13px;line-height:1.2;text-decoration:none;white-space:nowrap;cursor:pointer;transition:transform var(--cc-duration-micro) var(--cc-ease-precision),background var(--cc-duration-control) var(--cc-ease-precision),border-color var(--cc-duration-control) var(--cc-ease-precision)}
.btn-primary,.btn-gold,.btn-gold-lg,.btn-tier-primary{background:var(--cc-amber);color:var(--cc-navy-950)}
.btn-primary:hover,.btn-gold:hover,.btn-gold-lg:hover,.btn-tier-primary:hover{background:var(--cc-amber-600);color:var(--cc-navy-950);transform:translateY(-1px)}
.btn-large,.btn-gold-lg{min-height:52px;padding:14px 29px;font-size:15px}
.btn-secondary,.btn-outline-light,.btn-ghost-nav,.btn-tier-outline{border-color:var(--cc-line-strong);background:transparent;color:var(--cc-ink)}
.btn-secondary:hover,.btn-outline-light:hover,.btn-ghost-nav:hover,.btn-tier-outline:hover{border-color:var(--cc-cyan);background:color-mix(in srgb,var(--cc-ink) 5%,transparent);color:var(--cc-ink)}
.text-link{display:inline-flex;align-items:center;gap:7px;font-weight:700;text-decoration-thickness:1px;text-underline-offset:4px}

/* Hero */
.hero{position:relative;padding:154px 0 92px;isolation:isolate;border-bottom:1px solid var(--cc-line);overflow:hidden}
.hero::before{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 78% 35%,color-mix(in srgb,var(--cc-oxblood) 16%,transparent),transparent 27%),radial-gradient(circle at 70% 58%,color-mix(in srgb,var(--cc-cyan) 10%,transparent),transparent 35%)}
.hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(280px,4fr);gap:64px;align-items:center}
.hero-grid>*,.incident-grid>*,.founder-grid>*,.content-grid>*{min-width:0}
.hero-copy{max-width:730px}
.hero h1{margin:0 0 24px;text-wrap:balance}
.hero .lede{max-width:720px}
.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0 22px}
.hero-meta{font-family:var(--font-mono);font-size:11px;line-height:1.8;letter-spacing:.03em;color:var(--cc-muted)}
.hero-bridge{margin-top:12px;font-size:14px;color:var(--cc-ink-2)}
.hero-mark{width:min(320px,75vw);aspect-ratio:1;margin:auto;padding:42px;border:1px solid var(--cc-line);border-radius:var(--cc-radius-xl);background:color-mix(in srgb,var(--cc-surface) 82%,transparent);box-shadow:var(--shadow-lg);display:grid;place-items:center}
.hero-mark svg{width:100%;height:auto;display:block}

/* General sections */
.section{padding:92px 0}
.section-sunken{background:var(--cc-canvas-sunken);border-block:1px solid var(--cc-line)}
.section-head{max-width:760px;margin-bottom:42px}
.section-head.center{text-align:center;margin-inline:auto}
.section-head h2{margin-bottom:18px;text-wrap:balance}
.section-head p{color:var(--cc-ink-2)}
.proof-bar{padding:24px 0;border-bottom:1px solid var(--cc-line);background:var(--cc-surface)}
.proof-inner{display:flex;align-items:center;justify-content:center;gap:16px 30px;flex-wrap:wrap;text-align:center}
.proof-name{font-weight:750;color:var(--cc-ink)}
.proof-item{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--cc-ink-2)}
.proof-item::before{content:"";width:7px;height:7px;background:var(--cc-oxblood);border-radius:2px;flex:none}

/* Incident */
.incident-grid{display:grid;grid-template-columns:minmax(250px,4fr) minmax(0,7fr);gap:52px;align-items:center}
.incident-copy h2{margin-bottom:18px}
.incident-copy p{color:var(--cc-ink-2)}
.terminal{min-width:0;overflow:hidden;border:1px solid var(--cc-line-strong);border-radius:var(--cc-radius-lg);background:var(--cc-navy-950);color:var(--cc-ivory-100);box-shadow:var(--shadow-lg)}
.terminal-bar{display:flex;align-items:center;gap:7px;padding:13px 16px;background:var(--cc-navy-900);border-bottom:1px solid var(--cc-navy-700)}
.terminal-dot{width:8px;height:8px;border-radius:2px;background:var(--cc-oxblood)}
.terminal-dot:nth-child(2){background:var(--cc-cyan)}
.terminal-dot:nth-child(3){background:var(--cc-navy-700)}
.terminal-title{margin-left:6px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--cc-mist-400)}
.terminal-body{padding:25px}
.terminal-scenario{font-family:var(--font-mono);font-size:14px;line-height:1.75;color:var(--cc-ivory-100);overflow-wrap:anywhere}
.terminal-prompt{color:var(--cc-cyan-300);font-weight:700}
.terminal-lead{margin:18px 0;color:var(--cc-mist-200);font-size:13px}
.terminal-choice{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:11px 0;border-top:1px solid var(--cc-navy-700);font-family:var(--font-mono);font-size:12px;line-height:1.6;color:var(--cc-mist-200)}
.terminal-key{color:var(--cc-cyan-300);font-weight:700}
.terminal-cap{margin-top:18px;font-family:var(--font-mono);font-size:10px;line-height:1.7;letter-spacing:.04em;color:var(--cc-mist-400)}

/* Process */
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;counter-reset:steps}
.process-step{position:relative;padding:30px;border:1px solid var(--cc-line);border-radius:var(--cc-radius-lg);background:var(--cc-surface);counter-increment:steps}
.process-step::before{content:"0" counter(steps);display:block;margin-bottom:30px;font-family:var(--font-mono);font-size:12px;font-weight:650;letter-spacing:.12em;color:var(--gold-accent)}
.process-step h3{font-size:20px;line-height:1.3;margin-bottom:12px}
.process-step p{font-size:14px;color:var(--cc-ink-2)}
.evidence-note{margin-top:22px;padding:17px 20px;border-left:4px solid var(--cc-cyan);border-radius:0 var(--cc-radius-sm) var(--cc-radius-sm) 0;background:var(--cc-cyan-100);font-size:14px;color:var(--cc-ink-2)}

/* Offer */
.offer-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(310px,4fr);gap:42px;align-items:start}
.offer-panel{padding:36px;border:1px solid var(--cc-line-strong);border-radius:var(--cc-radius-xl);background:var(--cc-surface)}
.offer-kicker{font-family:var(--font-mono);font-size:11px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-accent)}
.offer-price{margin:10px 0 4px;font-family:var(--font-display);font-size:46px;font-weight:780;letter-spacing:-1.5px;line-height:1.1}
.offer-price span{font-family:var(--font-body);font-size:15px;font-weight:500;letter-spacing:0;color:var(--cc-muted)}
.offer-terms{font-size:13px;color:var(--cc-muted)}
.offer-panel .btn{width:100%;margin-top:26px}
.offer-note{margin-top:14px;font-size:12px;line-height:1.65;color:var(--cc-muted)}
.offer-copy h2{margin-bottom:18px}
.offer-copy>p{color:var(--cc-ink-2)}
.checklist{list-style:none;margin-top:26px;display:grid;gap:15px}
.checklist li{position:relative;padding-left:27px;color:var(--cc-ink-2)}
.checklist li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:10px;border:2px solid var(--cc-cyan);border-radius:2px}
.checklist strong{color:var(--cc-ink)}
.fit-box{margin-top:30px;padding-top:26px;border-top:1px solid var(--cc-line)}
.fit-box h3{font-size:16px;margin-bottom:12px}
.fit-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;padding-left:19px;color:var(--cc-ink-2);font-size:14px}
.boundary{margin-top:26px;padding:18px 20px;border:1px solid color-mix(in srgb,var(--cc-fault) 48%,var(--cc-line));border-radius:var(--cc-radius-md);font-size:13px;color:var(--cc-ink-2)}
.boundary strong{color:var(--cc-ink)}

/* Founder */
.founder-grid{display:grid;grid-template-columns:minmax(260px,4fr) minmax(0,7fr);gap:56px;align-items:center}
.founder-photo{position:relative;padding:13px;border:1px solid var(--cc-line);border-radius:var(--cc-radius-xl);background:var(--cc-surface)}
.founder-photo img{width:100%;aspect-ratio:4/5;display:block;object-fit:cover;object-position:center;border-radius:calc(var(--cc-radius-xl) - 10px)}
.founder-copy h2{margin-bottom:18px}
.founder-copy p{color:var(--cc-ink-2);margin-bottom:16px}

/* Routing, FAQ, CTA */
.route-grid{display:grid;grid-template-columns:3fr 2fr;gap:18px}
.route-card{padding:32px;border:1px solid var(--cc-line);border-radius:var(--cc-radius-lg);background:var(--cc-surface)}
.route-card.primary{border-color:color-mix(in srgb,var(--cc-oxblood) 65%,var(--cc-line))}
.route-card h3{font-size:21px;line-height:1.3;margin:10px 0 12px}
.route-card p{color:var(--cc-ink-2);margin-bottom:22px;font-size:14px}
.route-label{font-family:var(--font-mono);font-size:10px;font-weight:650;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-accent)}
.faq-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.faq-item{padding:27px;border:1px solid var(--cc-line);border-radius:var(--cc-radius-lg);background:var(--cc-surface)}
.faq-item h3{font-size:17px;line-height:1.4;margin-bottom:10px}
.faq-item p{font-size:14px;color:var(--cc-ink-2)}
.closer{text-align:center;padding:108px 0;background:var(--cc-canvas-sunken);border-top:1px solid var(--cc-line)}
.closer h2{margin-bottom:22px}
.closer .lede{max-width:650px;margin-inline:auto}
.closer-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;margin:30px 0 18px}
.closer-meta{font-family:var(--font-mono);font-size:10px;line-height:1.8;color:var(--cc-muted)}

/* Secondary pages */
.page-hero{padding:146px 0 72px;border-bottom:1px solid var(--cc-line);background:radial-gradient(circle at 80% 10%,color-mix(in srgb,var(--cc-oxblood) 13%,transparent),transparent 32%)}
.page-hero .narrow{margin-left:0}
.page-hero h1{margin-bottom:20px;text-wrap:balance}
.page-hero .lede{max-width:780px}
.page-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:26px;font-family:var(--font-mono);font-size:11px;color:var(--cc-muted)}
.content-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(250px,3fr);gap:64px;align-items:start}
.prose{max-width:760px}
.prose h2{margin:54px 0 18px}
.prose h2:first-child{margin-top:0}
.prose h3{margin:28px 0 10px;font-size:19px;line-height:1.35}
.prose p{margin-bottom:18px;color:var(--cc-ink-2)}
.prose ul,.prose ol{margin:0 0 24px 22px;color:var(--cc-ink-2)}
.prose li{margin-bottom:10px;padding-left:4px}
.prose strong{color:var(--cc-ink)}
.prose code{font-family:var(--font-mono);font-size:.92em;color:var(--cc-cyan-600)}
.callout{margin:28px 0;padding:24px;border-left:4px solid var(--cc-cyan);border-radius:0 var(--cc-radius-md) var(--cc-radius-md) 0;background:var(--cc-cyan-100)}
.callout.fault{border-left-color:var(--cc-fault);background:color-mix(in srgb,var(--cc-fault) 10%,var(--cc-surface))}
.callout p:last-child{margin-bottom:0}
.side-nav{position:sticky;top:98px;padding:24px;border:1px solid var(--cc-line);border-radius:var(--cc-radius-lg);background:var(--cc-surface)}
.side-nav h2{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--cc-muted);margin-bottom:14px}
.side-nav a{display:block;padding:8px 0;color:var(--cc-ink-2);font-size:13px;text-decoration:none;border-bottom:1px solid var(--cc-line)}
.side-nav a:last-child{border:0}
.side-nav a:hover{color:var(--cc-ink)}
.schedule{display:grid;gap:14px;margin:25px 0}
.schedule-item{display:grid;grid-template-columns:98px minmax(0,1fr);gap:18px;padding:20px;border:1px solid var(--cc-line);border-radius:var(--cc-radius-md);background:var(--cc-surface)}
.schedule-when{font-family:var(--font-mono);font-size:11px;font-weight:650;color:var(--gold-accent);letter-spacing:.08em;text-transform:uppercase}
.schedule-item h3{margin:0 0 7px;font-size:17px}
.schedule-item p{margin:0;font-size:14px}
.state-table{width:100%;border-collapse:collapse;margin:24px 0;font-size:14px}
.state-table th,.state-table td{text-align:left;vertical-align:top;padding:14px;border-bottom:1px solid var(--cc-line)}
.state-table th{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--cc-muted)}
.state-table td{color:var(--cc-ink-2)}
.story-pullquote{margin:34px 0;padding:28px;border-left:4px solid var(--cc-oxblood);font-family:var(--font-display);font-size:23px;line-height:1.45;color:var(--cc-ink)}

/* Footer */
.site-footer{padding:68px 0 32px;border-top:1px solid var(--cc-line);background:var(--cc-navy-950);color:var(--cc-ivory-100)}
.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:42px;margin-bottom:44px}
.footer-logo{display:flex;align-items:center;gap:11px;margin-bottom:16px;color:var(--cc-ivory-100)}
.footer-logo svg{width:32px;height:32px}
.footer-wordmark{font-family:var(--font-wordmark);font-size:18px;font-weight:var(--weight-brand)}
.footer-description{max-width:360px;color:var(--cc-mist-400);font-size:13px}
.footer-socials{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:19px}
.footer-socials a{color:var(--cc-mist-200);font-size:12px}
.footer-heading{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--cc-mist-400);margin-bottom:15px}
.footer-links{display:grid;gap:9px}
.footer-links a{color:var(--cc-mist-200);font-size:13px;text-decoration:none}
.footer-links a:hover{color:var(--cc-ivory-100)}
.footer-bottom{padding-top:25px;border-top:1px solid var(--cc-navy-700);display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:11px;color:var(--cc-mist-400)}
.site-footer .gw-mark .mk-c{stroke:var(--cc-ivory-100)}

@media(max-width:1040px){
  .nav-links{gap:17px}.nav-links a{font-size:12px}
  .hero-grid{grid-template-columns:minmax(0,3fr) minmax(240px,2fr);gap:38px}
  .offer-grid{grid-template-columns:1fr 340px}
}
@media(max-width:900px){
  .site-nav{padding:0 20px}.nav-inner{gap:12px}.nav-links{display:none;position:absolute;top:72px;left:18px;right:18px;margin:0;padding:14px;border:1px solid var(--cc-line);border-radius:var(--cc-radius-lg);background:var(--cc-surface);box-shadow:var(--shadow-lg)}
  .nav-links[data-open="true"]{display:grid;gap:0}.nav-links a{min-height:44px;display:flex;align-items:center;padding:0 12px;border-bottom:1px solid var(--cc-line);font-size:14px}.nav-links a:last-of-type{border:0}
  .mobile-theme{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 12px;color:var(--cc-ink-2);font-size:13px}.mobile-theme .cc-theme-toggle{width:36px;height:36px}
  .nav-actions>#themeToggle{display:none}.nav-menu-toggle{display:inline-flex}.nav-actions{margin-left:auto}
  .hero{padding:132px 0 74px}.hero-grid,.incident-grid,.founder-grid,.content-grid{grid-template-columns:1fr}.hero-copy{max-width:none}.hero-mark{width:min(270px,70vw)}
  .hero-visual{grid-row:2}.incident-grid{gap:32px}.process-grid{grid-template-columns:1fr}.offer-grid{grid-template-columns:1fr}.offer-panel{grid-row:1}.founder-photo{max-width:430px}.route-grid{grid-template-columns:1fr}.side-nav{display:none}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:620px){
  .inner{width:min(100% - 32px,1120px)}.site-nav{padding:0 10px}.nav-inner{gap:7px}.nav-tagline{display:none}.nav-actions{gap:5px}.nav-actions .btn{font-size:12px;padding:8px 10px}.nav-label-wide{display:none}.nav-label-compact{display:inline}.nav-menu-toggle{width:38px;height:38px}.nav-v2-mark{width:35px;height:35px}.nav-wordmark{font-size:18px}
  .section{padding:70px 0}.hero{padding:118px 0 62px}.hero-grid{gap:38px}.hero-ctas{display:grid}.hero-ctas .btn{width:100%;white-space:normal;text-align:center}.hero-meta{font-size:10px}
  .proof-inner{align-items:flex-start;flex-direction:column;text-align:left}.proof-name{margin-bottom:2px}
  .terminal-body{padding:19px}.terminal-scenario{font-size:12px}.terminal-choice{font-size:11px}
  .offer-panel,.process-step,.route-card,.faq-item{padding:24px}.fit-list{grid-template-columns:1fr}.faq-grid{grid-template-columns:1fr}.closer{padding:82px 0}.closer-actions{display:grid}.closer-actions .btn{white-space:normal}
  .schedule-item{grid-template-columns:1fr;gap:7px}.state-table{display:block;overflow-x:auto}.story-pullquote{font-size:20px}
  .footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{display:grid}.site-footer{padding-top:54px}
}
@media(max-width:420px){.nav-wordmark-wrap{display:none}.site-nav .nav-logo{gap:0}.nav-actions .btn-ghost-nav{padding-inline:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
