/* ============================================================
   CUSTOMER CIRCLE — v3 "Daylight"
   Derived from CUSTOMER-CIRCLE.md (Identity v4.3).
   Thesis: the bigger the claim, the calmer the delivery.
   Light-first paper canvas · dark appears exactly twice per page
   (one doctrine band + footer) · drafting-table geometry.
   ============================================================ */
:root{
  --orange:#F0601C; --orange2:#E14E0B; --navy:#1E5BB5; --ink:#12182A;
  --paper:#FBF8F3; --paper2:#F5F0E7; --card:#FFFFFF;
  --sky:#E9F0F8; --sky2:#D9E7F5; --sky3:#C7DBEF; --skycard:#F1F6FB; --skyhair:#CFDEEF;
  --hair:#E6DFD2; --mut:#5C6376; --body:#3D4660; --dark:#0D1526;
  --f-h:'Space Grotesk',sans-serif; --f-b:'Manrope',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--f-b);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--f-h);letter-spacing:-.02em}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
.wrap{max-width:1240px;margin:0 auto;padding:0 40px}
.eyebrow{font-family:var(--f-h);font-size:12px;letter-spacing:.22em;font-weight:600;color:var(--orange);text-transform:uppercase}
.btn{display:inline-block;background:var(--orange);color:#fff;font-weight:700;font-size:15px;padding:15px 28px;border-radius:10px;box-shadow:0 8px 24px rgba(212,117,42,.28);transition:transform .2s ease,box-shadow .2s ease;cursor:pointer;border:none;font-family:var(--f-b)}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(212,117,42,.38)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:none;border:1.5px solid var(--hair);font-weight:600}
.btn.ghost:hover{border-color:var(--navy);box-shadow:none}

/* ---------- reveal ---------- */
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}

/* ---------- NAV ---------- */
#nav{position:sticky;top:0;background:rgba(251,248,243,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--hair);z-index:80;transition:box-shadow .25s ease}
#nav.scrolled{box-shadow:0 10px 30px rgba(18,24,42,.07)}
.navrow{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
.brand{display:flex;align-items:center;font-size:22px}
.brand .icon{width:1.72em;height:1.72em;margin-right:.33em;flex:none}
.brand-col{display:flex;flex-direction:column;align-items:flex-start}
.brand-name{font-family:var(--f-h);font-weight:600;font-size:1em;letter-spacing:-.02em;line-height:1;white-space:nowrap}
.brand-name .c1{color:var(--ink)} .brand-name .c2{color:var(--orange)}
.brand-tag{font-family:var(--f-h);font-weight:600;color:var(--ink);margin-top:.11em;line-height:1;white-space:nowrap}
.links{display:flex;gap:32px;align-items:center;font-size:15px;font-weight:600;color:#33405C}
.links a{transition:color .2s} .links a:hover{color:var(--orange)}
.links a.active{color:var(--orange)}
.links .cta{background:var(--orange);color:#fff;padding:11px 20px;border-radius:9px;font-weight:700;box-shadow:0 6px 18px rgba(212,117,42,.25)}
.links .cta:hover{color:#fff}
.menu-btn{display:none;background:none;border:none;cursor:pointer;padding:8px}
.menu-btn span{display:block;width:22px;height:2px;background:var(--ink);margin:5px 0;border-radius:2px}
.mobile-menu{display:none;background:var(--paper);border-bottom:1px solid var(--hair)}
.mobile-menu.open{display:block}
.mobile-menu a{display:block;padding:15px 40px;font-weight:600;border-top:1px solid var(--hair)}
.mobile-menu a.cta{color:var(--orange);font-weight:700}

/* ---------- HERO (index) ---------- */
.hero{position:relative;background:
  radial-gradient(900px 480px at 78% 8%, rgba(30,91,181,.05), transparent 60%),
  linear-gradient(180deg,#FDFBF7 0%,var(--paper) 70%);
  border-bottom:1px solid var(--hair);overflow:hidden}
.grid-bg{position:absolute;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(18,24,42,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(18,24,42,.028) 1px,transparent 1px);
  background-size:44px 44px;-webkit-mask-image:linear-gradient(180deg,transparent,black 18%,black 82%,transparent);mask-image:linear-gradient(180deg,transparent,black 18%,black 82%,transparent)}
.hero .wrap{position:relative;padding-top:84px}
.hero h1{font-size:clamp(40px,4.6vw,64px);line-height:1.04;letter-spacing:-.03em;font-weight:700;max-width:640px;margin-top:16px}
.hero h1 .o{color:var(--orange)}
.lead{font-size:19px;line-height:1.65;color:var(--body);max-width:640px;margin:26px 0 30px;font-weight:500}
.lead b{color:var(--ink)}
.ctarow{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.microtrust{margin-top:16px;font-size:13.5px;color:var(--mut);display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.microtrust i{width:5px;height:5px;border-radius:50%;background:var(--orange);display:inline-block}
.becoming{position:relative;margin-top:26px}
.becoming svg{width:100%;height:auto;display:block}
.cap{font-family:var(--f-h);text-align:center;font-size:14.5px;letter-spacing:.06em;color:#4A5470;padding:6px 0 40px}
.cap b{color:var(--ink)}

/* Becoming animation: strokes draw, then chips arrive, then the arc turns */
.bk-line{stroke-dasharray:130;stroke-dashoffset:130;transition:stroke-dashoffset .8s ease}
.bk-leak{opacity:0;transition:opacity .6s ease}
.bk-lbl{opacity:0;transition:opacity .6s ease}
.bk-sweep{stroke-dasharray:280;stroke-dashoffset:280;transition:stroke-dashoffset 1s ease .1s}
.bk-becomes{opacity:0;transition:opacity .7s ease .5s}
.bk-ring{stroke-dasharray:945;stroke-dashoffset:945;transition:stroke-dashoffset 1.6s ease}
.bk-chip{opacity:0;transform:translateY(8px);transition:opacity .55s ease,transform .55s ease}
.bk-note{opacity:0;transition:opacity .8s ease}
.becoming.s1 .bk-line{stroke-dashoffset:0}
.becoming.s1 .bk-lbl{opacity:1}
.becoming.s2 .bk-leak{opacity:1}
.becoming.s3 .bk-sweep{stroke-dashoffset:0}
.becoming.s3 .bk-becomes{opacity:1}
.becoming.s4 .bk-ring{stroke-dashoffset:0}
.becoming.s5 .bk-chip{opacity:1;transform:none}
.becoming.s5 .bk-note{opacity:1}
.becoming.live .bk-arc{animation:bkspin 22s linear infinite}
@keyframes bkspin{to{transform:rotate(296deg)}}

/* ---------- STAT STRIP ---------- */
.stats{background:linear-gradient(180deg,#E4EDF7,#EDF3FA);border-bottom:1px solid var(--skyhair)}
.stats .wrap{display:flex;padding-top:34px;padding-bottom:34px}
.stat{flex:1;padding:0 34px;border-left:1px solid #C6D8EB}
.stat:first-child{border-left:none;padding-left:0}
.stat b{font-family:var(--f-h);display:block;font-size:34px;font-weight:700;letter-spacing:-.02em}
.stat b em{color:var(--orange);font-style:normal}
.stat span{font-size:13.5px;color:var(--mut);font-weight:600;line-height:1.45;display:block;margin-top:4px}

/* ---------- SECTION SHELLS ---------- */
section{padding:96px 0}
.shead{max-width:720px;margin-bottom:52px}
.shead h2{font-size:clamp(30px,3.2vw,42px);letter-spacing:-.025em;line-height:1.12;font-weight:700;margin:14px 0 16px}
.shead p{font-size:17.5px;line-height:1.65;color:var(--body);font-weight:500}
.sect-white{background:#fff;border-bottom:1px solid var(--hair)}
.sect-paper{background:var(--sky)}
.sect-paper :is(.ecard,.phase,.faq details,.vert,.tcard,.formcard,.ladder,.steps,.stack,.indstrip a,.capcard,.val){border-color:#D8E4F1}

/* ---------- MONEY / LEAK CARDS ---------- */
.mcards{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}
.mcard{background:var(--skycard);border:1px solid #D5E2F0;border-radius:16px;padding:30px 28px}
.mcard .tag{font-family:var(--f-h);font-size:11px;letter-spacing:.16em;color:var(--navy);font-weight:600;text-transform:uppercase}
.mcard h3{font-size:21.5px;letter-spacing:-.015em;margin:10px 0 10px}
.mcard p{font-size:15px;line-height:1.6;color:#4A5470}
.mcard .num{font-family:var(--f-h);font-size:30px;font-weight:700;color:var(--orange);margin-top:18px;letter-spacing:-.02em}
.mcard .num small{font-size:12.5px;color:var(--mut);font-weight:600;display:block;letter-spacing:0;font-family:var(--f-b);margin-top:2px}
.mfoot{margin-top:34px;font-size:15.5px;color:var(--body);font-weight:600}
.mfoot em{font-style:normal;color:var(--ink);border-bottom:2px solid var(--orange)}
.srcnote{margin-top:18px;font-size:12px;color:#8B93A6;font-weight:500}
.srcnote a{border-bottom:1px solid #B9CCE2}

/* ---------- DOCTRINE BAND (the one dark moment) ---------- */
.doctrine{background:
  radial-gradient(800px 420px at 22% 30%, rgba(30,91,181,.22), transparent 60%),
  radial-gradient(700px 400px at 84% 80%, rgba(212,117,42,.12), transparent 55%),
  var(--dark);
  color:#EAF0FA;position:relative;overflow:hidden;padding:110px 0}
.doctrine .ring{position:absolute;border:1px solid rgba(122,162,255,.14);border-radius:50%;pointer-events:none}
.doctrine .r1{width:680px;height:680px;right:-180px;top:-260px}
.doctrine .r2{width:1040px;height:1040px;right:-360px;top:-440px;border-color:rgba(122,162,255,.08)}
.doctrine .r3{width:380px;height:380px;left:-120px;bottom:-180px;border-color:rgba(212,117,42,.16)}
.doctrine .wrap{position:relative}
.dline{font-family:var(--f-h);font-size:15px;letter-spacing:.08em;color:#8FA7CC;font-weight:500;margin-bottom:22px}
.dline b{color:#fff;font-weight:600}
.doctrine h2{font-size:clamp(32px,3.6vw,46px);letter-spacing:-.025em;line-height:1.15;font-weight:700;max-width:820px}
.doctrine h2 .o{color:var(--orange)}
.ddef{margin-top:26px;max-width:760px;font-size:18.5px;line-height:1.7;color:#C9D6EC;font-weight:500}
.ddef b{color:#fff}
.dproof{margin-top:34px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.dproof .seal{width:46px;height:46px}
.dproof span{font-family:var(--f-h);font-size:16px;color:#fff;font-weight:600}
.dproof a{font-size:14px;color:#9FB6DC;font-weight:600;margin-left:2px;border-bottom:1px solid rgba(159,182,220,.4);padding-bottom:2px}

/* ---------- METHOD / STACK ---------- */
.stack{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--hair);border-radius:18px;background:#fff;overflow:hidden}
.layer{padding:34px 30px;border-left:1px solid var(--hair);position:relative}
.layer:first-child{border-left:none}
.layer .no{font-family:var(--f-h);font-size:12px;letter-spacing:.18em;color:var(--orange);font-weight:600}
.layer h3{font-size:19.5px;margin:12px 0 10px;letter-spacing:-.01em}
.layer p{font-size:14.5px;line-height:1.6;color:#4A5470}
.layer .arrow{position:absolute;right:-11px;top:44%;width:22px;height:22px;background:#fff;border:1px solid var(--hair);border-radius:50%;z-index:2;display:flex;align-items:center;justify-content:center;font-size:11px;color:var(--orange);font-weight:700}
.mnote{margin-top:26px;font-size:14.5px;color:var(--mut);font-weight:600;display:flex;gap:10px;align-items:center}
.mnote i{width:26px;height:1.5px;background:var(--orange);display:inline-block;flex:none}

/* ---------- LIVE PROOF ---------- */
.prow{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.prow .shead{margin-bottom:0}
.ptick{display:flex;gap:12px;margin-top:22px;align-items:flex-start}
.ptick .dot{width:22px;height:22px;border-radius:50%;background:rgba(212,117,42,.12);color:var(--orange);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none;margin-top:2px}
.ptick p{font-size:15.5px;line-height:1.6;color:var(--body);font-weight:500}
.ptick b{color:var(--ink)}
.pdemo{position:relative;height:470px}
.chatcard{position:absolute;right:0;top:0;width:360px;background:#fff;border:1px solid var(--hair);border-radius:18px;box-shadow:0 30px 70px rgba(18,24,42,.14);overflow:hidden}
.chead{background:var(--dark);color:#fff;padding:14px 16px;display:flex;gap:10px;align-items:center}
.chead b{font-family:var(--f-h);font-size:15px;display:block}
.chead small{display:block;font-size:11px;color:#9FB6DC;font-weight:600}
.callbar{background:linear-gradient(90deg,var(--orange),var(--orange2));color:#fff;padding:11px 16px;font-size:12.5px;font-weight:700}
.callbar small{display:block;font-weight:600;opacity:.85;font-size:11px}
.cbody{padding:16px;display:flex;flex-direction:column;gap:10px}
.bub{max-width:85%;padding:11px 13px;border-radius:12px;font-size:13px;line-height:1.5}
.bub.a{background:var(--paper2);color:#2C3550;border-top-left-radius:4px}
.bub.u{background:var(--orange);color:#fff;align-self:flex-end;border-top-right-radius:4px}
.chiprow{display:flex;gap:6px;padding:0 16px 16px;flex-wrap:wrap}
.chip{font-size:11.5px;font-weight:700;color:var(--navy);border:1.5px solid rgba(30,91,181,.3);border-radius:999px;padding:6px 11px}
.phonecard{position:absolute;left:0;bottom:8px;width:300px;background:var(--dark);border-radius:16px;color:#fff;padding:22px;box-shadow:0 24px 60px rgba(18,24,42,.28)}
.phonecard .pc1{display:flex;align-items:center;gap:12px}
.phonecard .ic{width:40px;height:40px;border-radius:50%;background:rgba(212,117,42,.18);display:flex;align-items:center;justify-content:center;font-size:17px}
.phonecard b{font-family:var(--f-h);font-size:16px;display:block}
.phonecard small{font-size:12px;color:#9FB6DC;font-weight:600}
.wave{display:flex;gap:3px;align-items:flex-end;height:26px;margin-top:16px}
.wave i{width:4px;border-radius:2px;background:var(--orange);display:block;animation:wv 1.1s ease-in-out infinite}
.wave i:nth-child(2n){animation-delay:.18s}.wave i:nth-child(3n){animation-delay:.34s}.wave i:nth-child(5n){animation-delay:.5s}
@keyframes wv{0%,100%{transform:scaleY(.55)}50%{transform:scaleY(1.15)}}
.indstrip{margin-top:44px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.indstrip a{font-size:13.5px;font-weight:700;color:#33405C;background:#fff;border:1px solid var(--hair);border-radius:999px;padding:9px 18px;transition:border-color .2s,color .2s}
.indstrip a:hover{border-color:var(--orange);color:var(--orange)}
.indstrip b{font-family:var(--f-h);font-size:13px;color:var(--mut);font-weight:600;margin-right:8px;letter-spacing:.04em}

/* ---------- FINAL CTA ---------- */
.final{background:linear-gradient(180deg,#FFFFFF 0%,var(--sky) 100%);border-top:1px solid var(--hair)}
.fcard{background:
  radial-gradient(560px 300px at 85% 20%, rgba(212,117,42,.16), transparent 60%),
  radial-gradient(500px 300px at 10% 90%, rgba(30,91,181,.18), transparent 60%),
  var(--dark);
  border-radius:24px;color:#fff;padding:74px 70px;display:flex;justify-content:space-between;align-items:center;gap:40px;position:relative;overflow:hidden}
.fcard .fring{position:absolute;width:420px;height:420px;border:1px solid rgba(122,162,255,.15);border-radius:50%;right:-100px;top:-160px;pointer-events:none}
.fcard h2{font-size:clamp(30px,3vw,40px);letter-spacing:-.025em;line-height:1.12;max-width:520px}
.fcard h2 .o{color:var(--orange)}
.fcard p{margin-top:14px;font-size:15.5px;color:#C9D6EC;font-weight:500}
.fcard .btn{font-size:16px;padding:18px 34px;flex:none}

/* ---------- FOOTER ---------- */
footer{background:var(--dark);color:#8FA7CC;padding:56px 0 44px;font-size:14px}
footer .frow{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;flex-wrap:wrap}
footer .brand{font-size:19px}
footer .brand-name .c1{color:#fff}
footer .brand-tag{color:#fff}
footer .cols{display:flex;gap:64px;font-weight:600;flex-wrap:wrap}
footer .cols b{display:block;color:#fff;font-family:var(--f-h);font-size:13px;letter-spacing:.1em;margin-bottom:12px}
footer .cols a,footer .cols span{display:block;margin-bottom:9px}
footer .cols a:hover{color:#fff}
footer .legal{border-top:1px solid rgba(143,167,204,.18);margin-top:40px;padding-top:22px;font-size:12.5px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}

/* ---------- INNER PAGE HERO ---------- */
.page-hero{position:relative;background:
  radial-gradient(760px 420px at 82% 0%, rgba(30,91,181,.13), transparent 60%),
  linear-gradient(180deg,#E2ECF7 0%,#EFF4FA 75%);
  border-bottom:1px solid var(--skyhair);overflow:hidden;padding:88px 0 72px}
.page-hero .ph-rings{position:absolute;right:-140px;top:-190px;width:520px;height:520px;border:1.5px solid rgba(30,91,181,.14);border-radius:50%;pointer-events:none}
.page-hero .ph-rings::before{content:'';position:absolute;inset:52px;border:1px dashed rgba(212,117,42,.25);border-radius:50%}
.page-hero .ph-rings::after{content:'';position:absolute;inset:118px;border:1px solid rgba(30,91,181,.1);border-radius:50%}
.page-hero h1{font-size:clamp(36px,4vw,54px);line-height:1.06;font-weight:700;max-width:760px;margin-top:16px;position:relative}
.page-hero h1 .o{color:var(--orange)}
.page-hero .lead{position:relative}

/* ---------- METHOD ROWS (services) ---------- */
.steps{display:flex;flex-direction:column;gap:0;border:1px solid var(--hair);border-radius:18px;background:#fff;overflow:hidden}
.step{display:grid;grid-template-columns:110px 1fr 1.4fr;gap:30px;padding:32px 36px;border-top:1px solid var(--hair);align-items:start}
.step:first-child{border-top:none}
.step .n{font-family:var(--f-h);font-size:30px;font-weight:700;color:var(--orange);letter-spacing:-.02em}
.step .n small{display:block;font-size:11px;letter-spacing:.16em;color:var(--mut);font-weight:600;margin-top:4px;font-family:var(--f-h)}
.step h3{font-size:20px}
.step p{font-size:15px;line-height:1.65;color:#4A5470}

/* ---------- ENGAGEMENT CARDS ---------- */
.egrid{display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:22px;align-items:stretch}
.ecard{background:#fff;border:1px solid var(--hair);border-radius:18px;padding:34px 30px;display:flex;flex-direction:column;position:relative}
.ecard.flag{border:2px solid var(--orange);box-shadow:0 24px 60px rgba(212,117,42,.12)}
.ecard .badge{position:absolute;top:-13px;left:28px;background:var(--orange);color:#fff;font-family:var(--f-h);font-size:11px;letter-spacing:.12em;font-weight:600;padding:5px 12px;border-radius:999px}
.ecard h3{font-size:21px;margin-bottom:6px}
.ecard .esub{font-size:13.5px;color:var(--mut);font-weight:600;margin-bottom:16px}
.ecard ul{list-style:none;margin:0 0 22px}
.ecard li{font-size:14.5px;line-height:1.55;color:#4A5470;padding:7px 0 7px 24px;position:relative}
.ecard li::before{content:'—';position:absolute;left:0;color:var(--orange);font-weight:700}
.ecard .btn{margin-top:auto;text-align:center}

/* ---------- CAPABILITY GRID ---------- */
.capgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}
.capcard{background:var(--skycard);border:1px solid #D8E4F1;border-radius:16px;padding:28px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s}
.capcard:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(18,24,42,.09);border-color:rgba(212,117,42,.4)}
.capcard .ci{width:44px;height:44px;border-radius:12px;background:rgba(30,91,181,.08);display:flex;align-items:center;justify-content:center;margin-bottom:16px;font-size:19px}
.capcard h3{font-size:18.5px;margin-bottom:8px}
.capcard p{font-size:14.5px;line-height:1.6;color:#4A5470}

/* ---------- FAQ ---------- */
.faq{max-width:820px}
.faq details{background:#fff;border:1px solid var(--hair);border-radius:14px;margin-bottom:12px;overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:20px 24px;font-family:var(--f-h);font-weight:600;font-size:16.5px;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';font-size:22px;color:var(--orange);font-weight:500;flex:none;transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 24px 20px;font-size:15px;line-height:1.65;color:#4A5470}

/* ---------- INDUSTRY CARDS ---------- */
.vgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.vert{background:#fff;border:1px solid var(--hair);border-radius:18px;padding:34px 32px}
.vert .vt{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.vert .vi{width:46px;height:46px;border-radius:13px;background:rgba(212,117,42,.09);display:flex;align-items:center;justify-content:center;font-size:20px;flex:none}
.vert h3{font-size:21px}
.vert .pain{font-size:15px;line-height:1.6;color:#4A5470;margin-bottom:16px}
.vert .ba{border-top:1px solid var(--hair);padding-top:16px;display:flex;flex-direction:column;gap:9px}
.vert .ba div{display:flex;gap:10px;font-size:14.5px;line-height:1.5;color:#4A5470;align-items:baseline}
.vert .ba b{font-family:var(--f-h);font-size:11px;letter-spacing:.12em;font-weight:600;flex:none;width:64px}
.vert .ba .was b{color:var(--mut)} .vert .ba .now b{color:var(--orange)}
.vert .ba .now{color:var(--ink);font-weight:600}

/* ---------- VALUES / TEAM (about) ---------- */
.valgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}
.val{background:var(--skycard);border:1px solid #D8E4F1;border-radius:16px;padding:28px}
.val h3{font-size:18px;margin-bottom:8px}
.val h3 span{color:var(--orange);margin-right:8px;font-family:var(--f-h)}
.val p{font-size:14.5px;line-height:1.6;color:#4A5470}
.team{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:860px}
.tcard{background:#fff;border:1px solid var(--hair);border-radius:18px;padding:32px;display:flex;gap:20px;align-items:flex-start}
.tcard .av{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,rgba(30,91,181,.14),rgba(212,117,42,.14));display:flex;align-items:center;justify-content:center;font-family:var(--f-h);font-weight:700;font-size:20px;color:var(--navy);flex:none;overflow:hidden;box-shadow:0 0 0 1px var(--hair),0 6px 18px rgba(18,24,42,.07)}
.tcard .av img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.teamnote{max-width:860px;margin:22px auto 0;font-size:14.5px;line-height:1.65;color:var(--mut);text-align:center}
.tcard h3{font-size:19px}
.tcard .role{font-size:12.5px;letter-spacing:.12em;font-weight:600;color:var(--orange);font-family:var(--f-h);text-transform:uppercase;margin:4px 0 10px}
.tcard p{font-size:14.5px;line-height:1.6;color:#4A5470}
.story p{font-size:16.5px;line-height:1.75;color:var(--body);font-weight:500;max-width:800px;margin-bottom:18px}
.story p b{color:var(--ink)}

/* ---------- CONTACT ---------- */
.cgrid{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:start}
.formcard{background:#fff;border:1px solid var(--hair);border-radius:18px;padding:38px}
.formcard h3{font-size:21px;margin-bottom:20px}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fgrid .full{grid-column:1/-1}
.field label{display:block;font-size:12.5px;font-weight:700;letter-spacing:.06em;color:var(--mut);margin-bottom:7px;font-family:var(--f-h);text-transform:uppercase}
.field input,.field textarea{width:100%;background:#F4F8FC;border:1.5px solid #D8E4F1;border-radius:10px;padding:13px 15px;font-family:var(--f-b);font-size:15px;color:var(--ink);outline:none;transition:border-color .2s}
.field input:focus,.field textarea:focus{border-color:var(--navy)}
.field textarea{min-height:120px;resize:vertical}
.form-note{display:none;margin-top:14px;font-size:13.5px;color:var(--navy);font-weight:600}
.infocard{background:var(--dark);border-radius:18px;color:#EAF0FA;padding:36px;position:relative;overflow:hidden}
.infocard .iring{position:absolute;width:300px;height:300px;border:1px solid rgba(122,162,255,.16);border-radius:50%;right:-90px;top:-110px}
.infocard h3{font-size:20px;margin-bottom:18px;position:relative}
.infocard .row{display:flex;gap:12px;margin-bottom:14px;font-size:14.5px;font-weight:600;color:#C9D6EC;position:relative}
.infocard .row b{color:#fff;font-weight:700}
.tl{margin-top:26px;border-top:1px solid rgba(143,167,204,.2);padding-top:22px;position:relative}
.tl h4{font-family:var(--f-h);font-size:13px;letter-spacing:.14em;color:#8FA7CC;margin-bottom:16px}
.tl .ti{display:flex;gap:14px;margin-bottom:16px}
.tl .ti i{width:26px;height:26px;border-radius:50%;background:rgba(212,117,42,.16);color:var(--orange);font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;flex:none;font-style:normal}
.tl .ti div{font-size:14px;line-height:1.5;color:#C9D6EC;font-weight:500}
.tl .ti b{color:#fff;display:block}

/* ---------- RESPONSIVE ---------- */
@media (max-width:1024px){
  .mcards,.capgrid,.valgrid{grid-template-columns:1fr 1fr}
  .stack{grid-template-columns:1fr 1fr}
  .layer .arrow{display:none}
  .prow{grid-template-columns:1fr;gap:44px}
  .pdemo{height:auto;min-height:470px}
  .egrid{grid-template-columns:1fr;max-width:560px}
  .cgrid{grid-template-columns:1fr}
  .fcard{flex-direction:column;align-items:flex-start;padding:54px 44px}
}
@media (max-width:900px){
  .links{display:none}
  .menu-btn{display:block}
  .stats .wrap{flex-wrap:wrap;gap:24px 0}
  .stat{flex:1 1 50%;border-left:none;padding:0 20px 0 0}
  .step{grid-template-columns:1fr;gap:10px}
  .vgrid,.team{grid-template-columns:1fr}
}
@media (max-width:600px){
  .wrap{padding:0 22px}
  /* Becoming diagram: crop-zoom to the circle so it stays legible on phones */
  .becoming{overflow:hidden}
  .becoming svg{width:230%!important;max-width:none;transform:translateX(-46%)}
  .brand{font-size:18px}
  .brand-tag{display:none}
  .mcards,.capgrid,.valgrid{grid-template-columns:1fr}
  .stack{grid-template-columns:1fr}
  .stat{flex:1 1 100%}
  .fgrid{grid-template-columns:1fr}
  section{padding:72px 0}
  .doctrine{padding:84px 0}
  .chatcard{position:relative;width:100%;max-width:360px;margin:0 auto}
  .phonecard{position:relative;width:100%;max-width:300px;margin:18px auto 0;bottom:auto;left:auto}
  .pdemo{min-height:0}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
  .bk-line,.bk-sweep,.bk-ring{transition:none;stroke-dashoffset:0!important}
  .bk-leak,.bk-lbl,.bk-becomes,.bk-chip,.bk-note{transition:none;opacity:1!important;transform:none!important}
  .becoming .bk-arc{animation:none!important}
  .wave i{animation:none}
}


/* ============ Circle — web concierge + AI voice line ============ */
#cc-concierge{position:fixed;right:26px;bottom:26px;z-index:90;font-family:var(--f-b)}
.ccw-launch{position:relative;display:flex;align-items:center;gap:10px;background:var(--ink);border:1px solid rgba(78,150,214,.35);border-radius:100px;padding:11px 20px 11px 13px;cursor:pointer;box-shadow:0 16px 44px rgba(4,10,26,.55);transition:transform .25s ease,box-shadow .25s ease}
.ccw-launch:hover{transform:translateY(-3px);box-shadow:0 22px 54px rgba(4,10,26,.65)}
.ccw-launch .ccw-hint{font-family:var(--f-d);font-weight:600;font-size:14.5px;color:#fff}
.ccw-launch.open .ccw-hint::after{content:""}
.ccw-pulse{position:absolute;left:8px;top:8px;width:48px;height:48px;border-radius:50%;border:2px solid rgba(212,117,42,.5);opacity:0;pointer-events:none}
.ccw-launch.nudge .ccw-pulse{animation:ccwpulse 2.4s ease-out 3}
@keyframes ccwpulse{0%{transform:scale(.7);opacity:.9}100%{transform:scale(1.5);opacity:0}}
.ccw-panel{position:absolute;right:0;bottom:74px;width:376px;max-height:min(600px,calc(100vh - 120px));display:flex;flex-direction:column;background:var(--bg2);border:1px solid rgba(78,150,214,.25);border-radius:20px;overflow:hidden;box-shadow:0 34px 90px rgba(4,10,26,.7)}
.ccw-head{display:flex;align-items:center;gap:11px;padding:14px 16px;background:var(--ink);border-bottom:1px solid rgba(78,150,214,.2)}
.ccw-face{width:40px;height:40px;border-radius:50%;background:#0B1834;border:1px solid rgba(78,150,214,.35);display:flex;align-items:center;justify-content:center}
.ccw-id{display:flex;flex-direction:column;line-height:1.2}
.ccw-id b{font-family:var(--f-d);font-size:15.5px;color:#fff}
.ccw-id small{font-size:11.5px;color:#8B96AB;display:flex;align-items:center;gap:6px}
.ccw-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);display:inline-block;animation:pulse 2s infinite}
.ccw-x{margin-left:auto;background:none;border:0;color:#8B96AB;font-size:15px;cursor:pointer;padding:6px}
.ccw-x:hover{color:#fff}
.ccw-call{display:flex;align-items:center;gap:11px;background:linear-gradient(90deg,rgba(212,117,42,.16),rgba(212,117,42,.06));border-bottom:1px solid rgba(212,117,42,.25);padding:11px 16px;transition:background .25s}
.ccw-call:hover{background:linear-gradient(90deg,rgba(212,117,42,.26),rgba(212,117,42,.1))}
.ccw-call-ic{width:32px;height:32px;border-radius:10px;background:var(--orange);display:flex;align-items:center;justify-content:center;font-size:14px;flex:none}
.ccw-call b{display:block;font-family:var(--f-d);font-size:13px;color:#fff;line-height:1.25}
.ccw-call small{font-size:11.5px;color:#B7C0CF}
.ccw-msgs{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px;min-height:180px}
.ccw-m{max-width:85%;padding:10px 14px;border-radius:14px;font-size:13.5px;line-height:1.55}
.ccw-m.agent{background:#101E3E;border:1px solid rgba(78,150,214,.2);color:#C9D4E6;border-bottom-left-radius:4px;align-self:flex-start}
.ccw-m.agent a{color:#FF8A50;font-weight:600}
.ccw-m.agent b{color:#fff}
.ccw-m.user{background:var(--orange);color:#fff;border-bottom-right-radius:4px;align-self:flex-end}
.ccw-typing{display:inline-flex;gap:4px;padding:2px 0}
.ccw-typing i{width:6px;height:6px;border-radius:50%;background:#5E7BA8;animation:ccwty 1.2s infinite}
.ccw-typing i:nth-child(2){animation-delay:.15s}
.ccw-typing i:nth-child(3){animation-delay:.3s}
@keyframes ccwty{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}
.ccw-chips{display:flex;flex-wrap:wrap;gap:7px;padding:0 16px 10px}
.ccw-chip{font-family:var(--f-d);font-size:11.5px;font-weight:600;color:#9FB0CC;background:rgba(78,150,214,.1);border:1px solid rgba(78,150,214,.28);border-radius:100px;padding:6px 13px;cursor:pointer;transition:color .2s,border-color .2s,background .2s}
.ccw-chip:hover{color:#fff;border-color:var(--orange);background:rgba(212,117,42,.12)}
.ccw-input{display:flex;gap:8px;padding:10px 12px;border-top:1px solid rgba(78,150,214,.16)}
.ccw-input input{flex:1;background:#0A1428;border:1px solid rgba(78,150,214,.22);border-radius:100px;padding:11px 16px;font-family:var(--f-b);font-size:13.5px;color:#E8EDF5}
.ccw-input input::placeholder{color:#5E6A80}
.ccw-input input:focus{outline:none;border-color:var(--orange)}
.ccw-input button{width:42px;height:42px;border-radius:50%;border:0;background:var(--orange);color:#fff;font-size:17px;cursor:pointer;transition:transform .2s,background .2s}
.ccw-input button:hover{transform:scale(1.07);background:#FF6E2A}
.ccw-foot{text-align:center;font-family:var(--f-d);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#4A5A7E;padding:8px 0 10px}
@media (max-width:600px){
  #cc-concierge{right:14px;bottom:14px}
  .ccw-launch .ccw-hint{display:none}
  .ccw-launch{padding:11px 13px}
  .ccw-panel{position:fixed;left:12px;right:12px;bottom:80px;width:auto}
}
@media (prefers-reduced-motion:reduce){.ccw-pulse,.ccw-dot,.ccw-typing i{animation:none!important}}

/* concierge compatibility shims (widget block shared with v2) */
:root{--bg2:#0D1424;--f-d:'Space Grotesk',sans-serif;--teal:#12B39B}
.ccw-panel[hidden]{display:none!important}

/* ---------- WHAT YOU'RE BUYING: versus ladder + plant/current ---------- */
.ladder{display:flex;flex-direction:column;border:1px solid var(--hair);border-radius:16px;overflow:hidden;background:#fff}
.lrow{display:grid;grid-template-columns:250px 1fr;gap:24px;padding:24px 30px;border-top:1px solid var(--hair);align-items:baseline}
.lrow:first-child{border-top:none}
.lrow .lw{font-family:var(--f-h);font-weight:600;font-size:16px;color:var(--mut)}
.lrow p{font-size:15px;color:#4A5470;line-height:1.6}
.lrow.dim .lw,.lrow.dim p{color:#98A0B2}
.lrow.win{background:linear-gradient(90deg,rgba(212,117,42,.06),transparent 70%);border-left:3px solid var(--orange)}
.lrow.win .lw{color:var(--ink);font-weight:700}
.lrow.win p{color:var(--ink);font-weight:600}
.okicker{margin-top:28px;font-family:var(--f-h);font-size:17px;color:var(--ink);font-weight:600;line-height:1.5}
.okicker s{color:#98A0B2;text-decoration-color:rgba(212,117,42,.55);text-decoration-thickness:2px}
.okicker b{color:var(--orange)}
.plantwrap{margin-top:46px}
.plantwrap svg{width:100%;height:auto;display:block}
@keyframes flow{to{stroke-dashoffset:-26}}
.current{stroke-dasharray:7 6;animation:flow 1.1s linear infinite}

/* ---------- THE OPTIMIZATION LOOP: meshed rings ---------- */
.gears svg{width:100%;height:auto;display:block}
.gspin{animation:gcw 46s linear infinite}
.gspin2{animation:gccw 46s linear infinite}
@keyframes gcw{to{transform:rotate(360deg)}}
@keyframes gccw{to{transform:rotate(-360deg)}}
.loopgrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px;margin-top:42px}
.phase{background:#fff;border:1px solid var(--hair);border-radius:16px;padding:28px}
.phase .pn{font-family:var(--f-h);font-size:12px;letter-spacing:.18em;color:var(--orange);font-weight:600}
.phase h3{font-size:20px;margin:10px 0 8px}
.phase p{font-size:14.5px;line-height:1.62;color:#4A5470}
.phase p b{color:var(--ink)}
.loopnote{margin-top:28px;font-family:var(--f-h);font-size:14.5px;color:var(--mut);display:flex;gap:10px;align-items:center;line-height:1.5}
.loopnote i{width:26px;height:1.5px;background:var(--orange);flex:none}
.loopnote b{color:var(--ink)}
@media (max-width:1024px){.loopgrid{grid-template-columns:1fr}.lrow{grid-template-columns:1fr;gap:6px}}
@media (prefers-reduced-motion:reduce){.current,.gspin,.gspin2{animation:none!important}}

/* ---------- industries: categorized directory ---------- */
.dirgroup{margin-top:30px}
.dirgroup > b{display:block;font-family:var(--f-h);font-size:12px;letter-spacing:.18em;color:var(--navy);font-weight:600;margin-bottom:14px}
.dirgroup .indstrip{margin-top:0}

/* ---------- solutions: hero grid + live moment card ---------- */
.solhero{display:grid;grid-template-columns:1.08fr .92fr;gap:60px;align-items:center;position:relative}
.momentcard{background:var(--dark);border-radius:18px;color:#EAF0FA;padding:26px 26px 22px;box-shadow:0 30px 70px rgba(18,24,42,.22);position:relative;overflow:hidden;max-width:430px;justify-self:end}
.momentcard .mcring{position:absolute;width:260px;height:260px;border:1px solid rgba(122,162,255,.15);border-radius:50%;right:-80px;top:-100px;pointer-events:none}
.mc-head{display:flex;align-items:center;gap:9px;font-family:var(--f-h);font-size:11.5px;letter-spacing:.16em;color:#8FA7CC;font-weight:600;margin-bottom:18px;text-transform:uppercase}
.mc-dot{width:8px;height:8px;border-radius:50%;background:#12B39B;display:inline-block;animation:mcpulse 1.6s ease-in-out infinite}
@keyframes mcpulse{0%,100%{opacity:1}50%{opacity:.35}}
.mc-row{display:flex;gap:12px;margin-bottom:13px;font-size:13.5px;line-height:1.5;align-items:baseline}
.mc-row b{font-family:var(--f-h);font-size:12px;color:#8FA7CC;flex:none;min-width:64px;font-weight:600}
.mc-row span{color:#C9D6EC;font-weight:500}
.mc-row.a span{color:#fff;font-weight:600}
.mc-book{margin-top:16px;background:linear-gradient(90deg,var(--orange),var(--orange2));color:#fff;font-family:var(--f-h);font-weight:600;font-size:13.5px;letter-spacing:.04em;border-radius:10px;padding:12px 16px;box-shadow:0 10px 26px rgba(212,117,42,.35)}
.momentcard .wave{margin-top:16px}
@media (max-width:1024px){.solhero{grid-template-columns:1fr;gap:40px}.momentcard{justify-self:start}}
@media (prefers-reduced-motion:reduce){.mc-dot{animation:none}}

/* ============ HERO 2 — "The Becoming", cinematic edition ============ */
.hero2{position:relative;background:
  radial-gradient(1200px 760px at 76% 28%, rgba(30,91,181,.21), transparent 62%),
  radial-gradient(820px 560px at 8% 88%, rgba(212,117,42,.08), transparent 60%),
  linear-gradient(180deg,var(--sky3) 0%,var(--sky2) 52%,#EBF2F9 100%);
  border-bottom:1px solid rgba(30,91,181,.22);overflow:hidden}
.hero2 .grid-bg{background-image:linear-gradient(rgba(30,91,181,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(30,91,181,.07) 1px,transparent 1px)}
.hero2 .btn.ghost{border-color:rgba(30,91,181,.28);background:rgba(255,255,255,.55)}
.hero2 .microtrust{color:#4A5B76}
.hero2 .cap{color:#3E4E6B}
.hero2 > .wrap{max-width:1460px}
.hero2-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:30px;align-items:center;min-height:min(88vh,840px);padding:40px 0 30px}
.hero2 h1{font-size:clamp(42px,4.1vw,64px);line-height:1.02;letter-spacing:-.032em;font-weight:700}
.hero2 h1 .o{color:var(--orange)}
.hero2 .lead{font-size:clamp(16.5px,1.32vw,19.5px)}

/* the department line that becomes */
.bline{margin-top:34px;max-width:560px}
.bline svg{width:100%;height:auto;display:block}
.bl-seg{stroke-dasharray:130;stroke-dashoffset:130;transition:stroke-dashoffset .7s ease}
.bl-sq,.bl-lbl{opacity:0;transition:opacity .5s ease}
.bl-rib{stroke-dasharray:160;stroke-dashoffset:160;transition:stroke-dashoffset .9s ease}
.bl-bec,.bl-arr{opacity:0;transition:opacity .6s ease .3s}
.hero2.hs2 .bl-seg{stroke-dashoffset:0}
.hero2.hs2 .bl-sq,.hero2.hs2 .bl-lbl{opacity:1}
.hero2.hs3 .bl-rib{stroke-dashoffset:0}
.hero2.hs3 .bl-bec,.hero2.hs3 .bl-arr{opacity:1}
.bl-drip{opacity:0}
.hero2.live .bl-drip{animation:dripfall 2.1s ease-in infinite}
.bl-drip.d2{animation-delay:.7s!important}
.bl-drip.d3{animation-delay:1.4s!important}
@keyframes dripfall{0%{opacity:0;transform:translateY(0)}12%{opacity:.9}70%{opacity:.25}100%{opacity:0;transform:translateY(30px)}}

/* the living circle */
.orbitwrap{position:relative;justify-self:center;width:min(46vw,680px);aspect-ratio:1;transform:scale(.94);opacity:0;transition:transform 1.1s cubic-bezier(.2,.7,.2,1),opacity .9s ease}
.hero2.hs4 .orbitwrap{transform:scale(1);opacity:1}
.orbitwrap .ripple{position:absolute;border:1.4px solid rgba(30,91,181,.20);border-radius:50%;pointer-events:none}
.orbitwrap .rp1{inset:-6%}
.orbitwrap .rp2{inset:-15%;border-color:rgba(30,91,181,.14)}
.orbitwrap .rp3{inset:-26%;border-color:rgba(212,117,42,.12)}
.hero2.live .rp1{animation:breathe 7s ease-in-out infinite}
.hero2.live .rp2{animation:breathe 7s ease-in-out 1.2s infinite}
.hero2.live .rp3{animation:breathe 7s ease-in-out 2.4s infinite}
@keyframes breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
.orbitcore{position:absolute;inset:0}
.orbitcore svg{width:100%;height:100%;display:block}
.oc-comet{transform-origin:50% 50%}
.hero2.live .oc-comet{animation:cometspin 13s linear infinite}
@keyframes cometspin{to{transform:rotate(360deg)}}
.oc-eye{transform-box:fill-box;transform-origin:center}
.hero2.live .oc-eye{animation:ccblink 6.4s ease-in-out infinite}
@keyframes ccblink{0%,90.5%,94%,100%{transform:scaleY(1)}92%,96.5%{transform:scaleY(.07)}}
/* orbiting event chips */
.oc-chip{position:absolute;left:-999px;top:-999px;transform:translate(-50%,-50%);background:#fff;border:1px solid var(--hair);border-radius:12px;padding:9px 14px;font-family:var(--f-b);font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap;box-shadow:0 12px 30px rgba(18,24,42,.14);display:flex;gap:8px;align-items:center;opacity:0;transition:opacity .5s ease,border-color .4s,box-shadow .4s;will-change:left,top}
.oc-chip i{width:7px;height:7px;border-radius:50%;background:var(--navy);flex:none}
.oc-chip.alt i{background:var(--orange)}
.hero2.hs5 .oc-chip{opacity:1}
.oc-chip.hot{border-color:rgba(212,117,42,.65);box-shadow:0 14px 34px rgba(212,117,42,.22);color:#C4551A}
.oc-chip.hot i{background:var(--orange)}
.hero2 .cap{padding:4px 0 34px}
@media (max-width:1024px){
  .hero2-grid{grid-template-columns:1fr;min-height:0;padding-top:56px}
  .orbitwrap{width:min(88vw,540px);margin:26px auto 0}
  .oc-chip{font-size:11.5px;padding:7px 11px}
}
@media (prefers-reduced-motion:reduce){
  .hero2 .oc-comet,.hero2 .ripple,.hero2 .oc-eye,.hero2 .bl-drip{animation:none!important}
  .orbitwrap{transform:none;opacity:1;transition:none}
  .bl-seg,.bl-rib{stroke-dashoffset:0;transition:none}
  .bl-sq,.bl-lbl,.bl-bec,.bl-arr{opacity:1;transition:none}
  .oc-chip{opacity:1}
}

/* ============================================================
   AIasOS — THE CONTROL TOWER (index)
   Light-first by design: every competitor ships a dark dashboard.
   Ours reads in daylight, like the rest of the system.
   ============================================================ */
.aiosgrid{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:start;margin-top:44px}

/* --- app panel --- */
.aiospanel{background:#fff;border:1px solid var(--skyhair);border-radius:18px;overflow:hidden;box-shadow:0 30px 70px rgba(18,24,42,.10)}
.appbar{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--skycard);border-bottom:1px solid var(--skyhair)}
.appbar .dots{display:flex;gap:6px}
.appbar .dots i{width:9px;height:9px;border-radius:50%;background:#CBD8E8}
.appbar .url{font-family:var(--f-h);font-size:12.5px;color:var(--mut);letter-spacing:.01em}
.ph-chip{margin-left:auto;font-family:var(--f-h);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--navy);background:rgba(30,91,181,.09);border:1px dashed rgba(30,91,181,.38);border-radius:20px;padding:4px 10px}
.ph-chip.alt{margin-left:0}
.appbody{padding:22px 24px 24px}
.apphead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--sky)}
.apphead b{font-family:var(--f-h);font-size:16px;display:block}
.apphead small{display:block;font-size:13px;color:var(--mut);margin-top:4px}
.livepill{display:inline-flex;align-items:center;gap:6px;flex:none;font-family:var(--f-h);font-size:11px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#1B7A4B;background:rgba(27,122,75,.09);border-radius:20px;padding:5px 11px}
.livepill i{width:6px;height:6px;border-radius:50%;background:#1B7A4B;animation:aiospulse 2s infinite}
@keyframes aiospulse{0%,100%{opacity:1}50%{opacity:.25}}

.arcs{margin-top:6px}
.arcrow{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--sky)}
.arcrow:last-child{border-bottom:none}
.arcrow .an{font-family:var(--f-h);font-size:11px;font-weight:700;color:var(--navy);background:var(--sky);width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none}
.arcrow > div{flex:1;min-width:0}
.arcrow b{font-family:var(--f-h);font-size:14.5px;display:block}
.arcrow small{display:block;font-size:12.5px;color:var(--mut);margin-top:2px}
.st{flex:none;font-family:var(--f-h);font-size:11px;letter-spacing:.06em;font-weight:700;text-transform:uppercase;border-radius:20px;padding:5px 11px;white-space:nowrap}
.st.ok{color:#1B7A4B;background:rgba(27,122,75,.09)}
.st.warn{color:var(--orange2);background:rgba(212,117,42,.11)}
.apphand{margin-top:16px;background:var(--paper2);border:1px solid var(--hair);border-radius:12px;padding:13px 16px;font-size:13.5px;line-height:1.6;color:var(--body)}
.apphand b{color:var(--ink)}
.apphand .hlink{color:var(--navy);font-weight:700;white-space:nowrap}

/* --- weekly brief --- */
.briefcol{display:flex;flex-direction:column;gap:18px}
.briefcard{background:var(--paper2);border:1px solid var(--hair);border-radius:18px;overflow:hidden}
.bhead{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 20px;background:#fff;border-bottom:1px solid var(--hair)}
.bhead b{font-family:var(--f-h);font-size:15px}
.bbody{padding:20px}
.bp{font-size:14px;line-height:1.7;color:var(--body);margin-bottom:12px}
.bp b{color:var(--ink)}
.bp.bmut{color:var(--mut);font-style:italic;margin-bottom:0}
.blist{list-style:none;margin:0 0 12px}
.blist li{position:relative;padding-left:18px;font-size:13.5px;line-height:1.65;color:var(--body);margin-bottom:9px}
.blist li:before{content:"";position:absolute;left:0;top:8px;width:7px;height:7px;border-radius:50%;border:2px solid var(--orange)}
.brieffoot{border-left:3px solid var(--orange);padding:4px 0 4px 16px}
.brieffoot p{font-size:14px;line-height:1.65;color:var(--body)}
.brieffoot b{color:var(--ink)}

/* --- three ticks --- */
.aiosticks{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px;padding-top:32px;border-top:1px solid var(--hair)}
.atick b{font-family:var(--f-h);font-size:15.5px;display:block;margin-bottom:8px}
.atick p{font-size:14px;line-height:1.65;color:var(--body)}
.atick em{font-style:italic;color:var(--ink)}

@media (max-width:1024px){
  .aiosgrid{grid-template-columns:1fr}
  .aiosticks{grid-template-columns:1fr;gap:24px}
}
@media (max-width:560px){
  .appbody{padding:18px 16px 20px}
  .arcrow{align-items:flex-start}
  .st{align-self:flex-start}
}
.alsocard{background:#fff;border:1px solid var(--skyhair);border-radius:16px;padding:20px 22px}
.alsocard > b{font-family:var(--f-h);font-size:14.5px;display:block;margin-bottom:12px}
.alist{display:flex;flex-direction:column;gap:10px}
.alist span{position:relative;padding-left:24px;font-size:13.5px;line-height:1.55;color:var(--body)}
.alist span:before{content:"";position:absolute;left:0;top:3px;width:14px;height:14px;border-radius:50%;border:2px solid var(--navy);opacity:.45}
.alist span:after{content:"";position:absolute;left:4.5px;top:7.5px;width:5px;height:5px;border-radius:50%;background:var(--orange)}

/* ============================================================
   PREMIUM SKIN — v5.2 (November 4, 2026)
   Eleven grammar · AIasOS-sibling palette · Circle alive
   Appended override layer: later cascade wins.
   ============================================================ */
:root{
  --orange:#D4752A;            /* the ember — action + the current */
  --orange2:#C06522;
  --gold:#C8962E; --gold-soft:#D4A843;
  --navy:#1E5BB5;              /* royal — links/support */
  --ink:#0F2044;               /* deep navy ink */
  --dark:#0A162F;
  --paper:#F6F4EF; --paper2:#EFEAE0; --card:#FFFFFF;
  --sky:#EEF1F7; --sky2:#E2E8F2; --sky3:#D2DCEC; --skycard:#F7F9FC; --skyhair:#DFE6F0;
  --hair:#E3DCCB; --mut:#8A93A5; --body:#4A5468;
  --f-h:'Outfit',sans-serif; --f-b:'Manrope',sans-serif;
}
body{color:var(--body)}
h1,h2,h3,h4{color:var(--ink);letter-spacing:.012em;font-weight:300}
h3,h4{font-weight:400}
b,strong{color:var(--ink)}
.eyebrow{color:var(--gold);font-weight:500;letter-spacing:.32em;font-size:11.5px}
.btn{background:var(--orange);border-radius:3px;box-shadow:none;font-family:var(--f-h);font-weight:500;font-size:12.5px;letter-spacing:.22em;text-transform:uppercase;padding:18px 32px}
.btn:hover{transform:none;box-shadow:none;background:var(--orange2)}
.btn.ghost{border:1px solid var(--ink);color:var(--ink);border-radius:3px}
.btn.ghost:hover{background:var(--ink);color:#fff;border-color:var(--ink)}

/* nav lockup — width-locked descriptor */
#nav{background:rgba(246,244,239,.92)}
.navrow{padding:20px 0}
.brand{font-size:17px}
.brand .icon{width:2em;height:2em;margin-right:.75em}
.brand-name{font-weight:300;letter-spacing:.34em;text-transform:uppercase}
.brand-name .c1,.brand-name .c2{color:var(--ink)}
.brand-tag{font-weight:400;font-size:.5em;letter-spacing:.3865em;text-transform:uppercase;color:var(--gold);margin-top:.34em}
.links{font-family:var(--f-h);font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:400;color:var(--ink);gap:38px}
.links a:hover,.links a.active{color:var(--orange)}
.links .cta{background:transparent;color:var(--ink);border:1px solid var(--ink);border-radius:3px;box-shadow:none;padding:12px 22px;font-weight:500}
.links .cta:hover{background:var(--ink);color:#fff}
@media(max-width:860px){.brand{font-size:14px}.brand-tag{font-size:8px;letter-spacing:.18em}}

/* section + cards */
.cap{color:var(--mut);letter-spacing:.1em;font-family:var(--f-h);text-transform:uppercase;font-size:12.5px}
.shead h2,h2{font-weight:300}
.mcard{background:var(--card);border:1px solid var(--hair);border-radius:4px}
.mcard .tag{color:var(--gold);letter-spacing:.26em;font-weight:500}
.mcard .num{color:var(--orange);font-weight:300;font-size:34px}
.stat b{font-weight:300;font-size:38px}
.stat b em{color:var(--orange)}

/* dark rooms: doctrine + final + footer → deep navy, gold accents */
.doctrine{background:linear-gradient(180deg,#0F2044,#0A162F)}
.doctrine .r1,.doctrine .r2{border-color:rgba(200,150,46,.14)}
.doctrine .r3{border-color:rgba(212,117,42,.2)}
.dline{color:#8FA0C2;letter-spacing:.14em;font-weight:400;text-transform:uppercase;font-size:12.5px}
.doctrine h2{font-weight:250}
.doctrine h2,.doctrine h3{color:#fff}
.doctrine .o,.o{color:var(--gold-soft)}
h1 .o{color:var(--ink);font-weight:400}
.dproof span{font-weight:400;letter-spacing:.04em}
.dproof a{color:var(--gold-soft)}
.final .fcard{background:linear-gradient(180deg,#0F2044,#0A162F);border-radius:6px}
.final h2{color:#fff;font-weight:250}
footer{background:#0A162F;border-top:1px solid rgba(200,150,46,.35)}
footer .brand-name .c1,footer .brand-name .c2{color:#fff}
footer .brand-tag{color:var(--gold-soft)}
footer .cols b{color:var(--gold);letter-spacing:.26em;font-weight:500}
.legal{color:#8FA0C2}

/* interior components */
.capcard,.step,.briefcard,.alsocard,.chatcard,.phonecard,.aiospanel{border-radius:4px;border:1px solid var(--hair);box-shadow:none;background:var(--card)}
.capcard .ci{filter:grayscale(.2)}
.faq details{border-radius:4px;border:1px solid var(--hair)}
input,select,textarea{border-radius:3px}
.okicker{color:var(--ink)}
.okicker b{color:var(--orange)}

/* ---- PREMIUM SKIN · pass 2: specificity + paper everywhere ---- */
:root{--sky:#F6F4EF;--sky2:#F0EBE1;--sky3:#E9E2D2;--skycard:#FFFFFF;--skyhair:#E3DCCB}
.hero h1,.hero2 h1,.page-hero h1{font-family:var(--f-h);font-weight:200;letter-spacing:.012em;line-height:1.1}
.hero h1 .o,.hero2 h1 .o,.page-hero h1 .o{color:var(--ink);font-weight:400}
.shead h2,.doctrine h2,.final h2{font-family:var(--f-h);font-weight:200;letter-spacing:.012em}
.shead h2{font-size:clamp(32px,3.4vw,46px)}
.lead,.shead p,.ddef,.story p,.ptick p{font-weight:400}
.stat b{font-weight:200}
.mcard .num,.step .n{font-weight:300}
.hero,.hero2,.page-hero{background:var(--paper)}
.page-hero{border-bottom:1px solid var(--hair)}
.hero2 .grid-bg{background-image:none}
.stats{background:var(--paper2);border-bottom:1px solid var(--hair)}
.sect-paper{background:var(--paper)}
.sect-paper :is(.ecard,.phase,.faq details,.vert,.tcard,.formcard,.ladder,.steps,.stack,.indstrip a,.capcard,.val){border-color:var(--hair)}
.mcard{background:#fff;border:1px solid var(--hair)}
.capcard,.val,.ecard,.phase,.vert,.tcard,.formcard,.aiospanel{background:#fff;border-color:var(--hair);border-radius:4px;box-shadow:none}
.final{background:var(--paper);border-top:1px solid var(--hair)}
.ecard .badge{background:var(--gold);border-radius:2px}
.hero .eyebrow::after,.hero2 .eyebrow::after,.page-hero .eyebrow::after{content:"";display:block;width:56px;height:1px;background:var(--gold);margin-top:18px}
.eyebrow{font-weight:500;letter-spacing:.34em;color:var(--gold);font-size:11.5px}
.microtrust,.hero2 .microtrust{color:var(--mut)}
.indstrip a{border-radius:3px;font-weight:600}
.chip{border-radius:3px;border-color:var(--hair);color:var(--ink)}
.faq summary{font-weight:500}
.tcard .av{border-radius:4px}

/* ---- premium hero (index) ---- */
.phero{background:var(--paper);border-bottom:1px solid var(--hair)}
.phero .wrap{max-width:1280px}
.phgrid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center;min-height:calc(100vh - 85px);padding:48px 0 70px}
.phero h1{font-family:var(--f-h);font-weight:200;font-size:clamp(44px,4.8vw,72px);line-height:1.1;letter-spacing:.015em;color:var(--ink);margin:34px 0 30px}
.phero h1 b{font-weight:400}
.phero .lead{font-size:17.5px;max-width:480px;color:var(--body);margin:0 0 40px;font-weight:400}
.phero .lead b{color:var(--ink);font-weight:600}
.phero .ctarow{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.quiet{font-family:var(--f-h);font-weight:400;font-size:12.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--gold);padding-bottom:5px}
.phtrust{display:flex;gap:26px;margin-top:54px;font-size:12.5px;color:var(--mut);letter-spacing:.02em;flex-wrap:wrap}
.phtrust i{width:1px;background:var(--hair)}
.cside{display:flex;flex-direction:column;align-items:center;gap:30px}
.stage{position:relative;width:min(420px,38vw);height:min(420px,38vw)}
.stage .ring{position:absolute;inset:0;border:1px solid var(--hair);border-radius:50%}
.stage .ring.r2{inset:9%;border-color:rgba(200,150,46,.35)}
.stage .dot{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--orange);top:50%;left:50%;transform-origin:0 0;box-shadow:0 0 0 5px rgba(212,117,42,.12)}
.stage .mark{position:absolute;inset:0;display:grid;place-items:center}
.stage .mark svg{width:51%;height:51%}
.ccap{text-align:center;max-width:360px}
.ccap .who{font-family:var(--f-h);font-weight:400;font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:10px}
.ccap p{font-size:14.5px;color:var(--body)}
.ccap a{color:var(--ink);font-weight:700;border-bottom:1px solid var(--gold)}
@media(max-width:980px){
  .phgrid{grid-template-columns:1fr;min-height:0;padding:56px 0 56px;gap:48px}
  .stage{width:min(320px,78vw);height:min(320px,78vw)}
  .cside{order:2}
}
@media (prefers-reduced-motion:reduce){.stage .dot{display:none}}
/* launcher on premium */
.ccw-launch{background:var(--dark);border:1px solid rgba(200,150,46,.45);box-shadow:0 10px 30px rgba(4,10,26,.35)}
@media(max-width:600px){.brand-tag{display:block;font-size:7.5px;letter-spacing:.18em}}
/* ---- lockup A3 (Nov 4, approved): nav wordmark alone, the two arcs in type ---- */
.brand-tag{display:none!important}
.brand{font-size:19px}
.brand .icon{width:1.9em;height:1.9em;margin-right:.72em}
.brand-name{font-weight:500}
.brand-name .c1{color:var(--ink)}
.brand-name .c2{color:var(--gold)}
footer .brand-name{font-weight:500}
footer .brand-name .c1{color:#fff}
footer .brand-name .c2{color:var(--gold-soft)}
@media(max-width:860px){.brand{font-size:15.5px}}
/* footer: the belief under the mark */
.fbrand{max-width:360px}
.fbelief{margin-top:20px;font-size:14.5px;line-height:1.75;color:#8FA0C2;font-weight:400}
.fbelief b{color:var(--gold-soft);font-weight:600}
/* initial avatars */
.av-init{display:flex;align-items:center;justify-content:center;background:var(--dark);color:var(--gold-soft);font-family:var(--f-h);font-weight:300;font-size:30px;border-radius:4px}
.tcard .av-init{background:var(--dark);color:var(--gold-soft);font-family:var(--f-h);font-weight:300;font-size:30px;border-radius:4px;box-shadow:none;border:none}
/* anonymous roles */
.roles{display:grid;grid-template-columns:1fr 1fr;gap:22px;max-width:860px;margin:0 auto}
.rolecard{background:#fff;border:1px solid var(--hair);border-radius:4px;padding:28px}
.rolecard .role{font-size:12.5px;letter-spacing:.2em;font-weight:500;color:var(--gold);font-family:var(--f-h);text-transform:uppercase;margin-bottom:12px}
.rolecard p{font-size:15.5px;line-height:1.7;color:var(--body)}
@media(max-width:700px){.roles{grid-template-columns:1fr}}
.dirgroup b{color:var(--gold);letter-spacing:.24em;font-weight:500;font-family:var(--f-h)}
/* ---- hero goes navy: calm assertiveness (Nov 4) ---- */
.phero{background:linear-gradient(180deg,#0A162F 0%,#0F2044 100%);border-bottom:1px solid rgba(200,150,46,.35)}
.phero h1{color:#fff}
.phero h1 b{font-weight:400;color:var(--gold-soft)}
.phero .lead{color:#C2CCE0}
.phero .lead b{color:#fff}
.phero .quiet{color:#fff;border-bottom:1px solid var(--gold)}
.phero .phtrust{color:#8FA0C2}
.phero .phtrust i{background:rgba(227,220,203,.22)}
.phero .stage .ring{border-color:rgba(246,244,239,.14)}
.phero .stage .ring.r2{border-color:rgba(212,168,67,.45)}
.phero .ccap p{color:#C2CCE0}
.phero .ccap a{color:#fff;border-bottom:1px solid var(--gold)}
.phero .eyebrow{color:var(--gold-soft)}
.phero .eyebrow::after{background:var(--gold-soft)}
/* ---- navy hero sweeps the interior pages (approved Nov 4) ---- */
.page-hero{background:linear-gradient(180deg,#0A162F 0%,#0F2044 100%);border-bottom:1px solid rgba(200,150,46,.35)}
.page-hero h1{color:#fff}
.page-hero h1 .o{color:var(--gold-soft);font-weight:400}
.page-hero .lead{color:#C2CCE0}
.page-hero .lead b{color:#fff}
.page-hero p{color:#C2CCE0}
.page-hero .eyebrow{color:var(--gold-soft)}
.page-hero .eyebrow::after{background:var(--gold-soft)}
.page-hero .btn.ghost{border-color:rgba(246,244,239,.55);color:#fff;background:transparent}
.page-hero .btn.ghost:hover{background:#fff;color:var(--ink);border-color:#fff}
.page-hero .microtrust,.page-hero .cap{color:#8FA0C2}
.page-hero .momentcard{border:1px solid rgba(200,150,46,.4)}
.page-hero .kicker,.page-hero .okicker{color:#C2CCE0}
.page-hero .okicker b{color:var(--gold-soft)}

/* ---- Who it's for dropdown (Nov 5) ---- */
.navdrop{position:relative;display:inline-block}
.navdrop>a i{font-style:normal;font-size:9px;margin-left:6px;color:var(--gold)}
.droppanel{position:absolute;top:100%;left:50%;transform:translateX(-50%);padding-top:16px;display:none;z-index:80}
.navdrop:hover .droppanel,.navdrop:focus-within .droppanel{display:block}
.dp{background:#fff;border:1px solid var(--hair);border-radius:4px;min-width:300px;padding:8px 0;box-shadow:0 18px 44px rgba(10,22,47,.14)}
.dp a{display:block;padding:12px 24px;font-size:11.5px;letter-spacing:.18em;color:var(--ink);white-space:nowrap}
.dp a:hover{background:var(--paper);color:var(--orange)}
.dp a.dall{border-top:1px solid var(--hair);color:var(--gold);margin-top:6px}
.mobile-menu a.msub{padding-left:64px;font-size:14px;font-weight:500}
/* ---- Circle widget · premium makeover (Elvy doctrine: looks like the site, not a widget) ---- */
.ccw-panel{background:var(--paper);border:1px solid var(--hair);border-radius:5px;box-shadow:0 30px 80px rgba(10,22,47,.28)}
.ccw-head{background:linear-gradient(180deg,#0A162F,#0F2044);border-bottom:1px solid rgba(200,150,46,.4);padding:15px 16px}
.ccw-face{background:transparent;border:1px solid rgba(200,150,46,.45);border-radius:50%}
.ccw-id b{font-family:var(--f-h);font-weight:400;letter-spacing:.18em;text-transform:uppercase;font-size:14px}
.ccw-id small{color:#8FA0C2;font-family:var(--f-h);letter-spacing:.08em}
.ccw-dot{background:var(--gold-soft)}
.ccw-x{color:#8FA0C2}
.ccw-call{background:#fff;border-bottom:1px solid var(--hair);padding:12px 16px}
.ccw-call:hover{background:var(--paper2)}
.ccw-call-ic{background:transparent;border:1px solid var(--gold);border-radius:3px;font-size:13px}
.ccw-call b{color:var(--ink);font-family:var(--f-h);font-weight:500;letter-spacing:.04em}
.ccw-call small{color:var(--mut)}
.ccw-msgs{background:var(--paper)}
.ccw-m{border-radius:4px;font-size:13.5px}
.ccw-m.agent{background:#fff;border:1px solid var(--hair);color:var(--body);border-bottom-left-radius:0}
.ccw-m.agent b{color:var(--ink)}
.ccw-m.agent a{color:var(--ink);font-weight:600;border-bottom:1px solid var(--gold)}
.ccw-m.user{background:var(--ink);color:#fff;border-bottom-right-radius:0}
.ccw-typing i{background:var(--gold)}
.ccw-chip{font-family:var(--f-h);font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);background:#fff;border:1px solid var(--hair);border-radius:3px;padding:8px 14px}
.ccw-chip:hover{color:var(--orange);border-color:var(--orange);background:#fff}
.ccw-chip.primary{background:var(--orange);border-color:var(--orange);color:#fff}
.ccw-chip.primary:hover{background:var(--orange2);color:#fff}
.ccw-input{border-top:1px solid var(--hair);background:var(--paper)}
.ccw-input input{background:#fff;border:1px solid var(--hair);border-radius:3px;color:var(--ink)}
.ccw-input input::placeholder{color:var(--mut)}
.ccw-input input:focus{border-color:var(--gold)}
.ccw-input button{border-radius:3px;background:var(--orange)}
.ccw-input button:hover{transform:none;background:var(--orange2)}
.ccw-foot{color:var(--mut);letter-spacing:.14em;font-size:9.5px}
/* ---- Circle's card is round — he's a circle. The site stays sharp; his room doesn't. ---- */
.ccw-panel{border-radius:22px}
.ccw-m{border-radius:16px;padding:11px 15px}
.ccw-m.agent{border-bottom-left-radius:5px}
.ccw-m.user{border-bottom-right-radius:5px}
.ccw-chip{border-radius:999px;padding:8px 16px}
.ccw-call-ic{border-radius:50%}
.ccw-input input{border-radius:999px;padding:11px 18px}
.ccw-input button{border-radius:50%}
.ccw-launch{border-radius:999px}
/* ---- Circle's card: the conversation gets the room ---- */
.ccw-panel{width:392px;max-height:min(700px,calc(100vh - 110px))}
.ccw-head{padding:11px 16px}
.ccw-face{width:34px;height:34px}
.ccw-id b{font-size:13px}
.ccw-id small{font-size:10.5px}
.ccw-call{padding:8px 16px;gap:10px}
.ccw-call-ic{width:26px;height:26px;font-size:11px}
.ccw-call b{font-size:12.5px}
.ccw-call small{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:300px}
.ccw-msgs{min-height:300px;padding:14px 16px}
.ccw-m{font-size:13px;line-height:1.5;padding:9px 13px}
.ccw-chips{padding:0 14px 8px;gap:6px}
.ccw-chip{font-size:10px;padding:6px 12px;letter-spacing:.1em}
.ccw-input{padding:8px 10px}
.ccw-input input{padding:9px 15px;font-size:13px}
.ccw-input button{width:36px;height:36px;font-size:15px}
.ccw-foot{font-size:8.5px;padding:5px 0 8px;white-space:nowrap;overflow:hidden}
/* ============================================================
   PREMIUM PASS 3 (Nov 5) — navy nav + individual page heroes
   ============================================================ */
/* nav joins the dark system; the CTA is the only heat */
#nav{background:linear-gradient(180deg,#0A162F,#0F2044);border-bottom:1px solid rgba(200,150,46,.35)}
#nav.scrolled{background:rgba(10,22,47,.96)}
.brand-name .c1{color:#fff}
.brand-name .c2{color:var(--gold-soft)}
.links{color:#C9D4E6}
.links a:hover,.links a.active{color:var(--gold-soft)}
.navdrop>a i{color:var(--gold-soft)}
.links .cta{background:var(--orange);border:none;color:#fff;padding:13px 24px}
.links .cta:hover{background:var(--orange2);color:#fff}
.menu-btn span{background:#fff}
.mobile-menu{background:#0F2044;border-bottom:1px solid rgba(200,150,46,.35)}
.mobile-menu a{color:#C9D4E6;border-top:1px solid rgba(200,150,46,.15)}
.mobile-menu a.cta{color:var(--gold-soft)}
/* nav brand mark: navy arc won't read on navy — flip to paper */
#nav .brand .icon circle[stroke="#0F2044"]{stroke:#F6F4EF}
#nav .brand .icon circle[fill="#0F2044"]{fill:#F6F4EF}
/* heroes meet the nav as one continuous room */
.phero,.page-hero{border-top:none}

/* ---- About: the manifesto ---- */
.hero-about .wrap{max-width:900px;text-align:center}
.hero-about .eyebrow::after{margin:18px auto 0}
.hero-about h1{font-size:clamp(46px,5.4vw,84px);max-width:none}
.hero-about .lead{margin-left:auto;margin-right:auto;max-width:620px}
.hero-about{position:relative;overflow:hidden}
.hero-about::before{content:"";position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);width:min(720px,80vw);height:min(720px,80vw);border:1px solid rgba(200,150,46,.18);border-radius:50%;pointer-events:none}
.hero-about::after{content:"";position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);width:min(560px,62vw);height:min(560px,62vw);border:1px solid rgba(246,244,239,.07);border-radius:50%;pointer-events:none}

/* ---- Services: the loop rail ---- */
.hero-services .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}
.steprail{display:flex;flex-direction:column;position:relative;padding-left:34px}
.steprail::before{content:"";position:absolute;left:11px;top:16px;bottom:16px;width:1px;background:linear-gradient(180deg,rgba(200,150,46,.6),rgba(200,150,46,.15))}
.srow{position:relative;padding:17px 0}
.srow i{position:absolute;left:-34px;top:50%;transform:translateY(-50%);width:23px;height:23px;border-radius:50%;border:1px solid var(--gold-soft);display:flex;align-items:center;justify-content:center;font-style:normal;font-family:var(--f-h);font-size:9.5px;color:var(--gold-soft);background:#0A162F}
.srow b{display:block;font-family:var(--f-h);font-weight:400;font-size:16px;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.srow span{font-size:13px;color:#8FA0C2;line-height:1.5}
.srow.hot b{color:var(--gold-soft)}
@media(max-width:980px){.hero-services .wrap{grid-template-columns:1fr;gap:44px}}

/* ---- Industries: the ticker ---- */
.hero-industries{overflow:hidden}
.indticker{margin-top:54px;display:flex;flex-direction:column;gap:14px;pointer-events:none}
.tickrow{display:flex;gap:44px;white-space:nowrap;width:max-content;animation:tickL 60s linear infinite}
.tickrow.r2{animation:tickR 75s linear infinite}
.tickrow span{font-family:var(--f-h);font-weight:200;font-size:clamp(26px,3vw,40px);letter-spacing:.08em;text-transform:uppercase;color:transparent;-webkit-text-stroke:1px rgba(246,244,239,.22)}
.tickrow span.g{-webkit-text-stroke:1px rgba(212,168,67,.5)}
@keyframes tickL{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes tickR{from{transform:translateX(-50%)}to{transform:translateX(0)}}
@media (prefers-reduced-motion:reduce){.tickrow{animation:none!important}}

/* ---- Contact: the number is the monument ---- */
.hero-contact .wrap{text-align:center;max-width:900px}
.hero-contact .eyebrow::after{margin:18px auto 0}
.hero-contact h1{max-width:none}
.hero-contact .lead{margin:18px auto 0;max-width:640px}
.bigphone{display:block;margin:34px auto 6px;font-family:var(--f-h);font-weight:200;font-size:clamp(44px,6vw,84px);letter-spacing:.06em;color:var(--gold-soft);line-height:1.05}
.bigphone:hover{color:#fff}
.phlive{display:flex;align-items:center;justify-content:center;gap:9px;font-size:13px;color:#8FA0C2;letter-spacing:.06em}
.phlive i{width:8px;height:8px;border-radius:50%;background:var(--gold-soft);animation:pulse 2s infinite}

/* ---- category pages: the ghost word ---- */
.page-hero .ghostword{position:absolute;right:-1%;bottom:-2%;font-family:var(--f-h);font-weight:200;font-size:clamp(100px,16vw,230px);letter-spacing:.06em;text-transform:uppercase;color:transparent;-webkit-text-stroke:1px rgba(246,244,239,.09);pointer-events:none;line-height:1}
.page-hero{position:relative;overflow:hidden}
.infocard h3{color:#fff}
/* ============ PASS 4 — break the skeleton ============ */
/* About + Contact become full-screen rooms */
.hero-about{min-height:calc(100vh - 85px);display:flex;align-items:center;justify-content:center}
.hero-contact{min-height:calc(100vh - 85px);display:flex;align-items:center;justify-content:center}
.hero-about .wrap::after{content:"\2193";display:block;margin:52px auto 0;width:40px;height:40px;line-height:38px;border:1px solid rgba(200,150,46,.5);border-radius:50%;color:var(--gold-soft);font-size:15px}

/* Services: the split building */
.hero-split{display:grid;grid-template-columns:1.08fr .92fr;min-height:calc(100vh - 85px)}
.hero-split .hs-dark{background:linear-gradient(135deg,#0A162F,#0F2044);display:flex;align-items:center;padding:70px 64px 70px max(64px,calc((100vw - 1280px)/2 + 28px))}
.hero-split .hs-dark h1{font-family:var(--f-h);font-weight:200;font-size:clamp(40px,3.8vw,62px);line-height:1.1;color:#fff;letter-spacing:.012em;margin-top:16px}
.hero-split .hs-dark h1 .o{color:var(--gold-soft);font-weight:400}
.hero-split .hs-dark .lead{color:#C2CCE0;max-width:520px}
.hero-split .hs-dark .lead b{color:#fff}
.hero-split .hs-dark .eyebrow{color:var(--gold-soft)}
.hero-split .hs-dark .eyebrow::after{content:"";display:block;width:56px;height:1px;background:var(--gold-soft);margin-top:18px}
.hero-split .hs-light{background:var(--paper);display:flex;align-items:center;padding:70px max(64px,calc((100vw - 1280px)/2 + 28px)) 70px 64px;border-bottom:1px solid var(--hair)}
.hs-light .steprail::before{background:linear-gradient(180deg,var(--gold),rgba(200,150,46,.2))}
.hs-light .srow i{background:var(--paper);border-color:var(--gold);color:var(--gold)}
.hs-light .srow b{color:var(--ink)}
.hs-light .srow span{color:var(--body)}
.hs-light .srow.hot b{color:var(--orange)}
.hs-light .srow{padding:22px 0}
@media(max-width:980px){.hero-split{grid-template-columns:1fr;min-height:0}.hero-split .hs-dark,.hero-split .hs-light{padding:56px 24px}}

/* Industries: the one that opens light */
.hero-industries{background:var(--paper);border-bottom:1px solid var(--hair)}
.hero-industries h1{color:var(--ink)}
.hero-industries h1 .o{color:var(--orange);font-weight:400}
.hero-industries .lead{color:var(--body)}
.hero-industries .lead b{color:var(--ink)}
.hero-industries .eyebrow{color:var(--gold)}
.hero-industries .eyebrow::after{background:var(--gold)}
.hero-industries .tickrow span{-webkit-text-stroke:1px rgba(15,32,68,.22)}
.hero-industries .tickrow span.g{-webkit-text-stroke:1px rgba(200,150,46,.65)}

/* Category pages: text + the proof card, one screen */
.hero-cat .wrap{display:grid;grid-template-columns:1.06fr .94fr;gap:56px;align-items:center}
.hero-cat .ctarow{margin-top:26px}
.hero-cat .hcard{background:#fff;border:1px solid rgba(200,150,46,.45);border-radius:6px;padding:26px 28px;box-shadow:0 30px 70px rgba(4,10,26,.35)}
.hero-cat .hcard .ba{display:flex;flex-direction:column;gap:14px}
@media(max-width:980px){.hero-cat .wrap{grid-template-columns:1fr;gap:40px}}
/* category hero card internals */
.hcard .ba .was,.hcard .ba .now{display:flex;gap:14px;font-size:13.5px;line-height:1.6;color:var(--body)}
.hcard .ba .now{color:var(--ink)}
.hcard .ba b{flex:none;width:60px;font-family:var(--f-h);font-size:10.5px;letter-spacing:.12em;color:var(--mut);font-weight:600;padding-top:3px}
.hcard .ba .now b{color:var(--orange)}
.hero-cat{display:flex;align-items:center;min-height:72vh}
.hero-cat .wrap{width:100%}
/* ============ PASS 5 — motion with meaning ============ */
/* entrance rise: every hero wakes up in sequence */
@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.page-hero .eyebrow,.phero .eyebrow,.hs-dark .eyebrow{animation:rise .7s .05s cubic-bezier(.22,.8,.3,1) both}
.page-hero h1,.phero h1,.hs-dark h1{animation:rise .8s .22s cubic-bezier(.22,.8,.3,1) both}
.page-hero .lead,.phero .lead,.hs-dark .lead{animation:rise .8s .4s cubic-bezier(.22,.8,.3,1) both}
.page-hero .ctarow,.phero .ctarow,.hs-dark .ctarow,.page-hero .hcard,.hero-contact .dialside{animation:rise .9s .55s cubic-bezier(.22,.8,.3,1) both}
.phero .phtrust,.hero-industries .indticker{animation:rise 1s .7s cubic-bezier(.22,.8,.3,1) both}
/* the gold rule draws itself */
@keyframes rule{from{width:0}to{width:56px}}
.page-hero .eyebrow::after,.phero .eyebrow::after,.hs-dark .eyebrow::after{animation:rule .9s .5s cubic-bezier(.22,.8,.3,1) both}

/* About: the halo lives */
@keyframes spinslow{to{transform:translate(-50%,-50%) rotate(360deg)}}
.hero-about::before{border-style:dashed;border-color:rgba(200,150,46,.22);animation:spinslow 160s linear infinite}
.hero-about::after{animation:spinslow 220s linear infinite reverse}
.halo-orbit{position:absolute;left:50%;top:58%;width:min(720px,80vw);height:min(720px,80vw);transform:translate(-50%,-50%);pointer-events:none;animation:spinslow 42s linear infinite}
.halo-orbit i{position:absolute;left:50%;top:-4px;width:9px;height:9px;margin-left:-4px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 6px rgba(212,117,42,.14)}
.hero-about .wrap::after{animation:rise 1s .9s both}

/* Contact: the call comes in */
.hc-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:60px;align-items:center;text-align:left}
.hero-contact{justify-content:stretch}
.hero-contact .wrap{max-width:1280px}
.hero-contact .eyebrow::after{margin:18px 0 0}
.hero-contact .lead{margin:18px 0 0;max-width:560px}
.dialside{display:flex;flex-direction:column;align-items:center;gap:22px}
.dialring{position:relative;width:min(360px,70vw);height:min(360px,70vw);display:grid;place-items:center}
.dialring .dr{position:absolute;inset:0;border:1px solid rgba(200,150,46,.5);border-radius:50%;opacity:0;animation:ringout 3.6s cubic-bezier(.2,.6,.35,1) infinite}
.dialring .dr2{animation-delay:1.2s}
.dialring .dr3{animation-delay:2.4s}
@keyframes ringout{0%{transform:scale(.62);opacity:0}12%{opacity:.75}100%{transform:scale(1.08);opacity:0}}
.dialnum{font-family:var(--f-h);font-weight:200;font-size:clamp(40px,3.6vw,58px);letter-spacing:.06em;color:var(--gold-soft);text-align:center;line-height:1.12;z-index:2}
.dialnum:hover{color:#fff}
.wavebar{display:flex;gap:5px;align-items:flex-end;height:26px}
.wavebar i{width:3.5px;border-radius:2px;background:var(--orange);height:6px;animation:wv 1.5s ease-in-out infinite}
.wavebar i:nth-child(2n){animation-delay:.18s;background:var(--gold-soft)}
.wavebar i:nth-child(3n){animation-delay:.36s}
.wavebar i:nth-child(4n){animation-delay:.52s}
.wavebar i:nth-child(5n){animation-delay:.68s}
@keyframes wv{0%,100%{height:5px}50%{height:24px}}
@media(max-width:980px){.hc-grid{grid-template-columns:1fr;gap:44px;text-align:left}}
@media (prefers-reduced-motion:reduce){
  .page-hero .eyebrow,.page-hero h1,.page-hero .lead,.page-hero .ctarow,.page-hero .hcard,.phero .eyebrow,.phero h1,.phero .lead,.phero .ctarow,.phero .phtrust,.hs-dark .eyebrow,.hs-dark h1,.hs-dark .lead,.hs-dark .ctarow,.hero-contact .dialside,.hero-industries .indticker,.hero-about .wrap::after{animation:none!important}
  .hero-about::before,.hero-about::after,.halo-orbit,.dialring .dr,.wavebar i{animation:none!important}
  .dialring .dr{opacity:.3;transform:scale(.85)}
}
.hero-contact .wrap.hc-grid{text-align:left}
.hero-contact .hc-grid h1,.hero-contact .hc-grid .lead{margin-left:0}
/* contact: Circle invites the conversation */
.dialgo{display:flex;flex-direction:column;align-items:center;gap:20px;z-index:2;text-align:center}
.dialgo svg{width:124px;height:124px;transition:transform .35s ease}
.dialgo:hover svg{transform:scale(1.05)}
.dialgo span{font-family:var(--f-h);font-weight:300;font-size:14.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-soft);line-height:1.7}
.dialgo:hover span{color:#fff}
/* dropdown joins the navy nav */
.droppanel{padding-top:12px}
.dp{background:linear-gradient(180deg,#0F2044,#0A162F);border:1px solid rgba(200,150,46,.4);border-radius:4px;box-shadow:0 26px 60px rgba(4,10,26,.6);padding:10px 0}
.dp a{color:#C9D4E6;font-weight:400;letter-spacing:.2em;padding:13px 26px}
.dp a:hover{background:rgba(200,150,46,.08);color:var(--gold-soft)}
.dp a.dall{border-top:1px solid rgba(200,150,46,.25);color:var(--gold-soft);margin-top:8px}
.dp a.dall:hover{color:#fff}
/* ============ Five worlds: per-category openings ============ */
.cat-open{position:relative;overflow:hidden;padding:84px 0 72px}
.cat-open .kick{font-family:var(--f-h);font-size:11.5px;letter-spacing:.32em;text-transform:uppercase;font-weight:500;animation:rise .7s .05s both}
.cat-open .bigline{font-family:var(--f-h);font-weight:200;font-size:clamp(42px,4.6vw,72px);line-height:1.08;letter-spacing:.012em;margin:26px 0 0;animation:rise .8s .2s both}
.cat-open .bigline em{font-style:normal;font-weight:400}
.cat-open .catlead{font-size:16.5px;line-height:1.7;max-width:620px;margin:24px 0 0;animation:rise .8s .38s both}
.cat-open .ctarow{display:flex;gap:22px;flex-wrap:wrap;margin-top:30px;animation:rise .9s .52s both}
.cat-open .tradecard{margin-top:44px;max-width:760px;border-radius:6px;padding:24px 26px;animation:rise 1s .66s both}
.cat-open .tradecard .ba{display:flex;flex-direction:column;gap:13px}
.cat-open .tradecard .was,.cat-open .tradecard .now{display:flex;gap:14px;font-size:13.5px;line-height:1.6}
.cat-open .tradecard b{flex:none;width:60px;font-family:var(--f-h);font-size:10.5px;letter-spacing:.12em;font-weight:600;padding-top:3px}

/* TRADES — charcoal + ember, the dispatch board */
.ct-trades{background:linear-gradient(180deg,#14181F,#1A1F28);border-bottom:2px solid var(--orange)}
.ct-trades .kick{color:var(--orange)}
.ct-trades .bigline{color:#F2EFE8}
.ct-trades .bigline em{color:var(--orange)}
.ct-trades .catlead{color:#B8BDC9}
.ct-trades .catlead b{color:#fff}
.dispatch{margin-top:36px;max-width:680px;border:1px solid rgba(212,117,42,.35);border-radius:4px;overflow:hidden;animation:rise .9s .45s both}
.drow{display:flex;gap:18px;align-items:center;padding:13px 18px;border-bottom:1px solid rgba(212,117,42,.16);background:rgba(0,0,0,.25)}
.drow:last-child{border-bottom:none}
.drow .t{font-family:var(--f-h);font-size:12px;letter-spacing:.14em;color:var(--orange);flex:none;width:72px}
.drow .e{font-size:13.5px;color:#D9DDE5;flex:1}
.drow .s{font-family:var(--f-h);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#8A93A5}
.drow .s.ok{color:#6FBF8F}
.drow.dim .e,.drow.dim .t{opacity:.45}
.ct-trades .tradecard{background:#fff;border:1px solid rgba(212,117,42,.5)}
.ct-trades .tradecard .was{color:var(--body)}.ct-trades .tradecard .now{color:var(--ink)}
.ct-trades .tradecard .was b{color:var(--mut)}.ct-trades .tradecard .now b{color:var(--orange)}

/* HEALTH — cream calm, breathing ring */
.ct-health{background:linear-gradient(180deg,#FBF8F2,#F4EEE3);text-align:center;border-bottom:1px solid var(--hair);padding:110px 0 90px}
.ct-health .kick{color:var(--gold)}
.ct-health .bigline{color:var(--ink)}
.ct-health .bigline em{color:var(--gold)}
.ct-health .catlead{color:var(--body);margin-left:auto;margin-right:auto}
.ct-health .catlead b{color:var(--ink)}
.breathe{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(640px,80vw);height:min(640px,80vw);border:1px solid rgba(200,150,46,.3);border-radius:50%;animation:breathe2 7s ease-in-out infinite;pointer-events:none}
@keyframes breathe2{0%,100%{transform:translate(-50%,-50%) scale(.96);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.03);opacity:1}}
.ct-health .tradecard{background:#fff;border:1px solid var(--hair);margin-left:auto;margin-right:auto}
.ct-health .tradecard .was{color:var(--body)}.ct-health .tradecard .now{color:var(--ink)}
.ct-health .tradecard .was b{color:var(--mut)}.ct-health .tradecard .now b{color:var(--gold)}

/* PROFESSIONAL — white brief + royal docket */
.ct-pro{background:#fff;border-bottom:1px solid var(--hair)}
.ct-pro .kick{color:var(--navy)}
.ct-pro .bigline{color:var(--ink)}
.ct-pro .bigline em{color:var(--navy)}
.ct-pro .catlead{color:var(--body)}
.ct-pro .catlead b{color:var(--ink)}
.pro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}
.docket{border-left:2px solid var(--navy);display:flex;flex-direction:column;animation:rise .9s .45s both}
.dkt{display:flex;gap:18px;padding:18px 0 18px 24px;border-bottom:1px solid #E7EAF0}
.dkt:last-child{border-bottom:none}
.dkt i{font-style:normal;font-family:var(--f-h);font-size:13px;color:var(--navy);letter-spacing:.1em;padding-top:2px}
.dkt b{display:block;font-family:var(--f-h);font-weight:500;font-size:14.5px;letter-spacing:.06em;color:var(--ink)}
.dkt span{font-size:13px;color:var(--body);line-height:1.5}
.dkt.sign b{color:var(--navy)}
@media(max-width:980px){.pro-grid{grid-template-columns:1fr;gap:44px}}

/* AUTO — graphite + gold gauges */
.ct-auto{background:linear-gradient(180deg,#0E1116,#161B22);border-bottom:2px solid var(--gold)}
.ct-auto .kick{color:var(--gold-soft)}
.ct-auto .bigline{color:#F2EFE8}
.ct-auto .bigline em{color:var(--gold-soft)}
.ct-auto .catlead{color:#B8BDC9}
.ct-auto .catlead b{color:#fff}
.gaugerow{display:flex;gap:0;margin-top:34px;max-width:640px;border:1px solid rgba(200,150,46,.35);border-radius:4px;overflow:hidden;animation:rise .8s .3s both}
.gaugerow .g{flex:1;text-align:center;padding:18px 10px;border-right:1px solid rgba(200,150,46,.2);background:rgba(0,0,0,.3)}
.gaugerow .g:last-child{border-right:none}
.gaugerow .g b{display:block;font-family:var(--f-h);font-weight:200;font-size:34px;color:var(--gold-soft)}
.gaugerow .g span{font-size:11px;letter-spacing:.08em;color:#8A93A5;text-transform:uppercase;font-family:var(--f-h)}
.ct-auto .bigline{margin-top:30px}
.ct-auto .tradecard{background:#fff;border:1px solid rgba(200,150,46,.5)}
.ct-auto .tradecard .was{color:var(--body)}.ct-auto .tradecard .now{color:var(--ink)}
.ct-auto .tradecard .was b{color:var(--mut)}.ct-auto .tradecard .now b{color:var(--gold)}
.ct-trades .btn.ghost,.ct-auto .btn.ghost{border-color:rgba(242,239,232,.5);color:#F2EFE8}
.ct-trades .btn.ghost:hover,.ct-auto .btn.ghost:hover{background:#F2EFE8;color:#14181F;border-color:#F2EFE8}
@media (prefers-reduced-motion:reduce){.retdot{display:none}}
/* the year of turns — cadence, not another circle */
.turnstrip{max-width:980px;margin:14px 0 0}
.ts-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:18px}
.ts-head span{font-family:var(--f-h);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--mut)}
.ts-head b{font-family:var(--f-h);font-weight:400;font-size:15px;letter-spacing:.06em;color:var(--gold)}
.ts-rail{position:relative;display:flex;justify-content:space-between;align-items:flex-end;height:34px;border-bottom:1px solid var(--hair);padding-bottom:0}
.ts-rail i{width:1.5px;height:14px;background:#D8D2C2}
.ts-rail i:nth-child(13n+1){height:22px;background:#C4BDA9}
.ts-now{position:absolute;bottom:0;left:0;width:3px;height:30px;background:var(--orange);border-radius:2px;box-shadow:0 0 12px rgba(212,117,42,.55);animation:tsstep 26s steps(52,end) infinite}
@keyframes tsstep{from{left:0}to{left:100%}}
.ts-foot{display:flex;justify-content:space-between;margin-top:12px;font-size:12px;color:var(--mut)}
.ts-foot span:nth-child(2){font-size:12.5px;letter-spacing:.04em}
@media (prefers-reduced-motion:reduce){.ts-now{animation:none;left:32%}}
.weekloop{width:100%;max-width:980px;display:block}
@media (prefers-reduced-motion:reduce){.weekloop animate,.weekloop animateMotion{display:none}}
/* ============================================================
   MOBILE REVAMP — beta v1.1 (Nov 5)
   A phone gets the story, not the furniture.
   ============================================================ */
@media (max-width:700px){
  /* rhythm: half the air, same music */
  section{padding:52px 0}
  .wrap{padding:0 22px}
  .doctrine{padding:56px 0}
  .cat-open{padding:56px 0 48px}
  .page-hero{padding:64px 0 56px}
  footer{padding-top:48px}

  /* type scale for a hand, not a desk */
  .phero h1{font-size:clamp(34px,9.6vw,42px)}
  .page-hero h1,.hs-dark h1,.cat-open .bigline{font-size:clamp(30px,8.8vw,38px)}
  .shead h2,h2{font-size:clamp(25px,7.4vw,30px)}
  .hero-about h1{font-size:clamp(32px,9vw,40px)}
  .phero .lead,.page-hero .lead,.cat-open .catlead,.lead,.shead p{font-size:15px;line-height:1.65}
  .stat b{font-size:26px}
  .mcard .num{font-size:24px}
  .doctrine h2{font-size:clamp(24px,7vw,30px)}

  /* the furniture that can't earn phone height */
  .plantwrap{display:none}            /* stack-circuit diagram: unreadable at 390px */
  .turnstrip{display:none}            /* week-into-loop: desktop moment */
  .pdemo{display:none}                /* chat/phone mock: the REAL Circle sits in the corner */
  .hero-about::before,.hero-about::after,.halo-orbit{display:none}
  .ph-rings{display:none}

  /* full-screen rooms become right-sized rooms */
  .hero-about,.hero-contact{min-height:0;padding:72px 0 64px}
  .hero-split{min-height:0}
  .hero-split .hs-dark,.hero-split .hs-light{padding:52px 22px}
  .hs-light .srow{padding:14px 0}
  .phgrid{min-height:0;padding:44px 0 48px;gap:36px}
  .stage{width:min(240px,62vw);height:min(240px,62vw)}
  .ccap p{font-size:13px}
  .hero-cat{min-height:0}

  /* stats: 2×2, not a tower */
  .stats .wrap{display:grid;grid-template-columns:1fr 1fr;gap:18px 14px;padding-top:26px;padding-bottom:26px}
  .stat span{font-size:11.5px;line-height:1.4}

  /* cards breathe less */
  .mcard,.capcard,.ecard,.phase,.val,.vert,.formcard{padding:20px 18px}
  .mcards,.capgrid{gap:14px}
  .step{padding:18px 16px}
  .faq summary{padding:15px 16px;font-size:14.5px}

  /* industries: ticker shrinks to a whisper, cards tighten */
  .tickrow span{font-size:19px}
  .indticker{margin-top:30px;gap:8px}
  .dispatch{margin-top:24px}
  .drow{padding:10px 12px;gap:10px}
  .drow .t{width:56px;font-size:10.5px}
  .drow .e{font-size:12px}
  .drow .s{font-size:9px}
  .gaugerow .g b{font-size:24px}
  .docket{margin-top:8px}

  /* contact: the ring fits the hand */
  .dialring{width:min(230px,64vw);height:min(230px,64vw)}
  .dialgo svg{width:84px;height:84px}
  .dialgo span{font-size:12px;letter-spacing:.2em}
  .hc-grid{gap:36px}

  /* footer: calmer stack */
  footer .cols{gap:28px}
  .fbelief{font-size:13px}
  .ghostword{font-size:clamp(70px,24vw,110px);opacity:.7}

  /* buttons full-width where they stack */
  .ctarow .btn{width:100%;text-align:center}
  .ctarow{gap:12px}
  .ctarow .btn.ghost{width:100%}
}
@media (max-width:700px){
  .aiospanel{display:none}            /* control-tower mock: desktop furniture */
  .atick{padding:12px 0}
  .atick p{font-size:13.5px;line-height:1.55}
  .solcard li,.ecard li{font-size:13px}
  .mcard p{font-size:13.5px}
  .srcnote{font-size:10.5px}
  .mfoot{font-size:13.5px}
  #solutions .wrap > div{gap:16px}
}
@media (max-width:700px){
  .aiosgrid{display:none}   /* slide chrome: desktop furniture; the atick story below stays */
}

/* chat panel fixes — header kept visible on short screens; panel fits phone width */
.ccw-panel{max-height:min(700px,calc(100vh - 110px));max-height:min(700px,calc(100dvh - 110px))}
.ccw-head,.ccw-call,.ccw-chips,.ccw-input,.ccw-foot{flex:none}
.ccw-msgs{flex:1 1 300px;min-height:0}
@media (max-width:600px){.ccw-panel{width:auto;max-width:none}}
