/* Cosmic architecture pages: /ai, /jarvis, /free (Corey's cosmic revamp kit, 2026-09-27).
   Shared by the three routes only; every rule is scoped under body.cz so nothing leaks into the
   shared header/footer shell. Full-bleed scenes: poster <img> first, silent Higgsfield video on
   top once it is near the viewport (js/cosmic.js). Copy always sits on the dark left field. */

body.cz{
  --cz-bg:#0b0613;--cz-bg2:#120a1f;--cz-ink:#f6f1ff;--cz-mut:#cfc4e6;--cz-dim:#a99bc6;
  --cz-p:#8b5cf6;--cz-p2:#c4a5ff;--cz-p3:#6d28d9;--cz-line:rgba(196,170,255,.18);--cz-glass:rgba(24,14,42,.62);
  --cz-warm:#f5a524;
  background:var(--cz-bg);color:var(--cz-ink);margin:0;
  font-family:'Lato',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:17px;line-height:1.65;
  -webkit-font-smoothing:antialiased;overflow-x:hidden}
body.cz main{display:block}
body.cz :where(h1,h2,h3,h4){font-family:'Oswald',sans-serif;font-weight:600;line-height:1.08;letter-spacing:.005em;margin:0;color:var(--cz-ink)}
body.cz :where(p){margin:0}
body.cz a{color:inherit}
.cz-pop{color:var(--cz-p2)}
.cz-warm{color:#ffc46b}
.cz-wrap{max-width:1200px;margin:0 auto;padding:0 clamp(18px,4vw,40px)}
.cz-skip{position:absolute;left:-9999px}
.cz-skip:focus{left:16px;top:16px;z-index:200;background:#fff;color:#1b0b2d;padding:10px 14px;border-radius:10px}

/* ---------- buttons ---------- */
.cz-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border-radius:999px;
  font-family:'Oswald',sans-serif;font-weight:600;font-size:1.02rem;letter-spacing:.02em;text-decoration:none;cursor:pointer;
  color:#fff;background:linear-gradient(135deg,#8b3dff 0%,#6d28d9 55%,#5b21b6 100%);border:1px solid rgba(233,213,255,.35);
  box-shadow:0 10px 30px rgba(109,40,217,.45),inset 0 1px 0 rgba(255,255,255,.25);
  transition:transform .18s ease,box-shadow .18s ease}
.cz-btn:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(139,61,255,.55),inset 0 1px 0 rgba(255,255,255,.3)}
.cz-btn--ghost{background:rgba(20,10,36,.55);box-shadow:none;border:1px solid rgba(196,170,255,.55);color:#f3ecff;backdrop-filter:blur(6px)}
.cz-btn--ghost:hover{border-color:#e9d5ff;box-shadow:0 8px 24px rgba(139,61,255,.3)}
.cz-btn:focus-visible,.cz-link:focus-visible,body.cz summary:focus-visible,.cz-shot button:focus-visible{outline:2px solid #e9d5ff;outline-offset:3px}
.cz-link{color:var(--cz-p2);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.cz-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:30px}
.cz-note{margin-top:16px;color:var(--cz-dim);font-size:.93rem}

/* ---------- full-bleed scene ---------- */
.cz-scene{position:relative;isolation:isolate;min-height:min(94vh,960px);display:flex;align-items:center;overflow:hidden;background:var(--cz-bg)}
.cz-scene--hero{min-height:100vh;min-height:100svh;padding-top:96px}
.cz-media{position:absolute;inset:0;z-index:-2}
.cz-media img,.cz-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,60% 50%)}
.cz-media video{opacity:0;transition:opacity .9s ease}
.cz-media video.is-on{opacity:1}
/* dark reading field on the left, soft hand-off into the next chapter */
.cz-scene::before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:
    linear-gradient(90deg,rgba(9,5,17,.96) 0%,rgba(9,5,17,.88) 26%,rgba(9,5,17,.55) 44%,rgba(9,5,17,0) 62%),
    linear-gradient(180deg,rgba(11,6,19,.85) 0%,rgba(11,6,19,0) 18%,rgba(11,6,19,0) 72%,var(--cz-bg) 100%)}
/* a thin violet horizon hands each scene to the next chapter */
.cz-scene::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;z-index:0;pointer-events:none;
  background:linear-gradient(90deg,transparent 0,rgba(196,165,255,.0) 8%,rgba(196,165,255,.55) 42%,rgba(245,165,36,.35) 58%,transparent 92%)}
.cz-scene>.cz-wrap{width:100%}
.cz-copy{position:relative;max-width:min(560px,44vw);padding:72px 0}
.cz-scene--hero .cz-copy{max-width:min(600px,44vw)}
.cz-copy h1{font-size:clamp(44px,6.2vw,82px);font-weight:700;line-height:1.02}
.cz-copy h2{font-size:clamp(34px,4.4vw,58px)}
.cz-lede{margin-top:26px;font-size:clamp(17px,1.35vw,20px);color:var(--cz-mut);max-width:520px}
.cz-copy .cz-lede strong{color:#fff}
.cz-facts{display:flex;flex-wrap:wrap;gap:8px 22px;margin:26px 0 0;padding:0;list-style:none;color:var(--cz-mut);font-size:.95rem}
.cz-facts li{display:flex;align-items:center;gap:9px}
.cz-facts li::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--cz-p2);box-shadow:0 0 10px rgba(196,165,255,.8)}

/* ---------- editorial chapters between scenes ---------- */
.cz-chapter{position:relative;padding:clamp(80px,10vw,140px) 0;background:
  radial-gradient(900px 420px at 85% 0%,rgba(109,40,217,.16),transparent 70%),
  radial-gradient(700px 380px at 0% 100%,rgba(76,29,149,.14),transparent 70%),var(--cz-bg)}
.cz-chapter--deep{background:linear-gradient(180deg,var(--cz-bg) 0%,var(--cz-bg2) 50%,var(--cz-bg) 100%)}
.cz-head{max-width:780px}
.cz-head h2{font-size:clamp(34px,4.4vw,58px)}
.cz-head p{margin-top:20px;font-size:clamp(17px,1.3vw,19px);color:var(--cz-mut)}
.cz-head--center{margin:0 auto;text-align:center}
.cz-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(36px,6vw,90px);align-items:start}

/* numbered horizontal rows (not cards) */
.cz-rows{margin:48px 0 0;padding:0;list-style:none;border-top:1px solid var(--cz-line)}
.cz-rows>li{display:grid;grid-template-columns:90px minmax(0,1fr) minmax(0,1.4fr);gap:24px;padding:28px 0;border-bottom:1px solid var(--cz-line);align-items:baseline}
.cz-rows .n{font-family:'Oswald',sans-serif;font-size:40px;font-weight:500;color:transparent;-webkit-text-stroke:1px rgba(196,165,255,.7)}
.cz-rows h3{font-size:clamp(22px,2vw,28px)}
.cz-rows p{color:var(--cz-mut)}
.cz-rows ul{margin:10px 0 0;padding-left:18px;color:var(--cz-mut)}
.cz-rows ul li{margin:4px 0}

/* ordered working sequence / process */
.cz-seq{counter-reset:s;margin:48px 0 0;padding:0;list-style:none;display:grid;gap:0;position:relative}
.cz-seq::before{content:"";position:absolute;left:23px;top:10px;bottom:10px;width:1px;background:linear-gradient(var(--cz-p2),rgba(196,165,255,.05))}
.cz-seq>li{position:relative;padding:0 0 34px 72px}
.cz-seq>li::before{counter-increment:s;content:counter(s,decimal-leading-zero);position:absolute;left:0;top:-2px;width:47px;height:47px;border-radius:50%;
  display:grid;place-items:center;font-family:'Oswald',sans-serif;font-size:15px;color:#fff;
  background:radial-gradient(circle at 35% 30%,#b57bff,#6d28d9 60%,#3b1370);box-shadow:0 0 0 5px var(--cz-bg),0 0 18px rgba(139,61,255,.55)}
.cz-seq h3{font-size:clamp(21px,1.8vw,26px)}
.cz-seq .tag{display:inline-block;margin-left:10px;font-family:'Lato',sans-serif;font-size:.8rem;font-weight:700;letter-spacing:.02em;color:#ffcf85;vertical-align:middle}
.cz-seq p{margin-top:8px;color:var(--cz-mut)}
.cz-seq code,.cz-rows code,.cz-table code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.88em;background:rgba(139,92,246,.16);border:1px solid rgba(196,165,255,.22);border-radius:6px;padding:1px 6px;color:#efe6ff}

/* glass panel used sparingly (price, booking) */
.cz-glass{position:relative;border-radius:26px;padding:clamp(26px,3.4vw,44px);
  background:linear-gradient(160deg,rgba(40,22,70,.72),rgba(16,9,30,.82));
  border:1px solid rgba(196,170,255,.26);box-shadow:0 30px 80px rgba(5,2,12,.6),inset 0 1px 0 rgba(255,255,255,.08);backdrop-filter:blur(14px)}
.cz-price{display:flex;align-items:baseline;gap:10px;margin:8px 0 6px}
.cz-price b{font-family:'Oswald',sans-serif;font-size:clamp(64px,8vw,104px);font-weight:600;line-height:1;color:#fff}
.cz-price span{color:var(--cz-mut);font-size:1.1rem}
.cz-checks{margin:22px 0 0;padding:0;list-style:none;display:grid;gap:12px}
.cz-checks li{position:relative;padding-left:32px;color:var(--cz-mut)}
.cz-checks li strong{color:#fff}
.cz-checks li::before{content:"";position:absolute;left:0;top:5px;width:18px;height:18px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#c4a5ff,#6d28d9);box-shadow:0 0 10px rgba(139,61,255,.6)}
.cz-checks li::after{content:"";position:absolute;left:6px;top:9px;width:6px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(40deg)}

/* stat strip */
.cz-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:44px;border-top:1px solid var(--cz-line);border-bottom:1px solid var(--cz-line)}
.cz-stats>div{padding:26px 22px;border-left:1px solid var(--cz-line)}
.cz-stats>div:first-child{border-left:0}
.cz-stats b{display:block;font-family:'Oswald',sans-serif;font-size:clamp(28px,3vw,40px);font-weight:600;color:#fff}
.cz-stats span{color:var(--cz-mut);font-size:.95rem}

/* tables */
.cz-tablewrap{margin-top:28px;overflow-x:auto;border-radius:18px;border:1px solid var(--cz-line);background:rgba(18,10,32,.6)}
.cz-table{width:100%;border-collapse:collapse;min-width:560px;font-size:.96rem}
.cz-table th,.cz-table td{text-align:left;padding:14px 18px;border-bottom:1px solid rgba(196,170,255,.12);vertical-align:top}
.cz-table th{font-family:'Oswald',sans-serif;font-weight:500;font-size:.95rem;letter-spacing:.03em;color:var(--cz-p2);background:rgba(109,40,217,.12)}
.cz-table td{color:var(--cz-mut)}
.cz-table td:first-child{color:#fff;font-weight:700}
.cz-table tr:last-child td{border-bottom:0}
.cz-table tr.is-us td{background:rgba(139,92,246,.14);color:#fff}
.cz-subtotal{display:flex;justify-content:space-between;gap:16px;align-items:baseline;margin-top:18px;padding:16px 20px;border-radius:14px;background:rgba(139,92,246,.14);border:1px solid rgba(196,165,255,.3)}
.cz-subtotal b{font-family:'Oswald',sans-serif;font-size:1.5rem}
body.cz details.cz-more{margin-top:30px;border:1px solid var(--cz-line);border-radius:18px;background:rgba(18,10,32,.55)}
body.cz details.cz-more>summary{cursor:pointer;list-style:none;padding:20px 24px;font-family:'Oswald',sans-serif;font-size:1.2rem;display:flex;justify-content:space-between;align-items:center}
body.cz details.cz-more>summary::-webkit-details-marker{display:none}
body.cz details.cz-more>summary::after{content:"+";font-size:1.6rem;color:var(--cz-p2);transition:transform .25s}
body.cz details.cz-more[open]>summary::after{transform:rotate(45deg)}
.cz-more-in{padding:0 24px 26px}
.cz-more-in h3{font-size:1.2rem;margin-top:26px}
.cz-more-in>p{color:var(--cz-mut);margin-top:10px}

/* ---------- product screenshots (never AI-altered) ---------- */
.cz-demo-label{display:inline-flex;align-items:center;gap:10px;margin-top:22px;padding:9px 16px;border-radius:999px;font-size:.9rem;
  color:#ffe2b0;background:rgba(245,165,36,.1);border:1px solid rgba(245,165,36,.35)}
.cz-demo-label::before{content:"";width:8px;height:8px;border-radius:50%;background:#f5a524;box-shadow:0 0 10px #f5a524}
.cz-shot{margin:0;position:relative}
.cz-shot .frame{position:relative;display:block;width:100%;padding:0;border:0;cursor:zoom-in;border-radius:18px;overflow:hidden;background:#0d0719;
  box-shadow:0 0 0 1px rgba(196,170,255,.28),0 30px 70px rgba(4,2,10,.7),0 0 60px rgba(109,40,217,.18)}
.cz-shot .frame img{display:block;width:100%;height:auto}
.cz-shot--tall .frame{aspect-ratio:16/11}
.cz-shot--tall .frame img{height:100%;object-fit:cover;object-position:top center}
.cz-shot--tall .frame::after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(transparent,rgba(13,7,25,.92))}
.cz-shot .zoom{position:absolute;right:14px;bottom:14px;z-index:2;padding:7px 13px;border-radius:999px;font-size:.82rem;font-weight:700;color:#fff;
  background:rgba(20,10,36,.82);border:1px solid rgba(196,170,255,.4)}
.cz-shot figcaption{margin-top:16px;color:var(--cz-mut);font-size:.98rem}
.cz-shot figcaption b{display:block;font-family:'Oswald',sans-serif;font-weight:500;font-size:1.3rem;color:#fff;margin-bottom:4px}
.cz-shot--hero .frame{border-radius:22px}
.cz-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(22px,3vw,38px);margin-top:44px}
.cz-pairs{display:grid;gap:clamp(70px,8vw,110px);margin-top:20px}
.cz-pairhead{max-width:760px}
.cz-pairhead h3{font-size:clamp(26px,2.6vw,36px)}
.cz-pairhead p{margin-top:12px;color:var(--cz-mut)}
.cz-lightbox{border:0;padding:0;background:transparent;max-width:min(96vw,1700px);max-height:94vh;overflow:auto}
.cz-lightbox::backdrop{background:rgba(6,3,12,.9);backdrop-filter:blur(4px)}
.cz-lightbox img{display:block;max-width:100%;height:auto;border-radius:12px}
.cz-lightbox button{position:sticky;top:10px;float:right;margin:10px;z-index:2;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid rgba(196,170,255,.5);background:#1b0e30;color:#fff;font-weight:700;cursor:pointer}

/* ---------- founder ---------- */
.cz-founder{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(30px,5vw,70px);align-items:center}
.cz-founder figure{margin:0;border-radius:24px;overflow:hidden;box-shadow:0 0 0 1px rgba(196,170,255,.25),0 30px 70px rgba(4,2,10,.6)}
.cz-founder img{display:block;width:100%;height:auto}
.cz-founder p{margin-top:16px;color:var(--cz-mut)}

/* ---------- booking ---------- */
.cz-book{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,5vw,64px);align-items:start}
.cz-cal{border-radius:22px;overflow:hidden;background:#fff;min-height:640px;box-shadow:0 0 0 1px rgba(196,170,255,.3),0 30px 70px rgba(4,2,10,.6)}
.cz-cal iframe{display:block;width:100%;min-height:640px;border:0}

/* ---------- FAQ ---------- */
.cz-faq{margin-top:40px;border-top:1px solid var(--cz-line)}
body.cz .cz-faq details{border-bottom:1px solid var(--cz-line)}
body.cz .cz-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 4px;
  font-family:'Oswald',sans-serif;font-weight:500;font-size:clamp(18px,1.6vw,22px);color:#fff}
body.cz .cz-faq summary::-webkit-details-marker{display:none}
body.cz .cz-faq summary::after{content:"+";flex:none;font-size:1.6rem;line-height:1;color:var(--cz-p2);transition:transform .25s}
body.cz .cz-faq details[open] summary::after{transform:rotate(45deg)}
.cz-faq .a{padding:0 4px 24px;color:var(--cz-mut);max-width:880px}
.cz-faq .a p+p{margin-top:12px}
.cz-faq .a strong{color:#fff}

/* ---------- reveal ---------- */
.cz-js [data-cz-reveal]{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)}
.cz-js [data-cz-reveal].is-in{opacity:1;transform:none}

/* ---------- phones and tablets: the picture sits above the copy, framed on its subject ---------- */
@media (max-width:860px){
  body.cz{font-size:16px}
  .cz-scene,.cz-scene--hero{display:block;min-height:0;padding-top:0}
  .cz-media{position:relative;inset:auto;height:clamp(300px,64vw,520px)}
  .cz-scene--hero .cz-media{height:clamp(420px,112vw,640px)}
  .cz-media img,.cz-media video{object-position:var(--pos-m,var(--pos,70% 50%))}
  .cz-scene::before{background:
    linear-gradient(180deg,rgba(11,6,19,.75) 0%,rgba(11,6,19,0) 22%,rgba(11,6,19,0) 64%,var(--cz-bg) 100%)}
  .cz-scene--hero::before{background:linear-gradient(180deg,rgba(11,6,19,.8) 0%,rgba(11,6,19,0) 30%,rgba(11,6,19,0) 70%,var(--cz-bg) 100%)}
  .cz-copy,.cz-scene--hero .cz-copy{max-width:none;padding:8px 0 64px;margin-top:-28px}
  .cz-rows>li{grid-template-columns:56px minmax(0,1fr);gap:8px 16px}
  .cz-rows>li>:nth-child(3){grid-column:2}
  .cz-rows .n{font-size:30px}
  .cz-split,.cz-founder,.cz-book,.cz-pair{grid-template-columns:minmax(0,1fr)}
  .cz-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cz-stats>div:nth-child(3){border-left:0}
  .cz-stats>div:nth-child(n+3){border-top:1px solid var(--cz-line)}
  .cz-actions .cz-btn{flex:1 1 220px}
}
@media (prefers-reduced-motion:reduce){
  .cz-js [data-cz-reveal]{opacity:1;transform:none;transition:none}
  .cz-btn{transition:none}
}
