/* Wake County Flex: 70s-80s corporate geometry layer (Oct 2026)
   Brand kept: header black, accent cyan #22C7DC, paper #EFF2F6.
   60 paper/white · 30 black/ink · 10 cyan. Cyan is used as a fill (black text on it), never as text on light. */
:root{--cyan:#22C7DC;--cyan-dk:#0B6F7C;--header:#000;--ink:#10141c;--paper:#EFF2F6;--rule:#cfd6e1;--gold:#E9C46A;--navy:#0E2A3B;
--disp:'Archivo','Inter Tight',system-ui,sans-serif;--body:'Inter Tight',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;--head:var(--disp);--font:var(--body);--radius:2px}
body{font-family:var(--body);background:var(--paper);color:var(--ink);font-size:17px;line-height:1.6}
h1,h2,h3,.logo,.page-h1{font-family:var(--disp);font-stretch:118%;letter-spacing:-.01em}
.wrap{width:min(1152px,92vw)}
a{color:#005F9E;text-underline-offset:3px}
:focus-visible{outline:3px solid var(--cyan);outline-offset:2px}
/* top bar + pill */
.topbar{background:#000;padding:8px 0;border-bottom:1px solid #222}
.topbar .wrap{display:flex;justify-content:flex-start}
.ai-pill{display:inline-flex;align-items:center;gap:8px;background:var(--gold);color:var(--navy)!important;text-decoration:none!important;border-radius:999px;padding:4px 14px 4px 6px;font:500 13px/1.25 var(--body);white-space:nowrap;max-width:100%}
.ai-pill:hover{background:#F0D27F}
.ai-pill svg{width:20px;height:20px;flex:none}
.ai-pill strong{font-weight:800}
.ai-pill .sep{opacity:.6;margin:0 2px}
@media(max-width:400px){.ai-pill{font-size:12px}}
/* header with stripe band */
.site-header{background:#000;position:sticky;top:0;z-index:100;box-shadow:none;border:0}
.site-header::after{content:"";display:block;height:8px;background:linear-gradient(var(--cyan) 0 4px,#000 4px 5px,var(--cyan) 5px 6px,#000 6px 7px,var(--cyan) 7px 8px)}
.site-header .brand-row{min-height:64px;align-items:center}
.logo{font-stretch:125%;font-weight:800;text-transform:uppercase;letter-spacing:.03em;font-size:1.15rem;color:#fff!important;display:inline-flex;align-items:center;gap:10px}
.logo::before{content:"";width:26px;height:26px;flex:none;background:var(--cyan);border-radius:0 26px 0 0}
.logo span{color:var(--cyan)}
.site-header nav a{font-family:var(--body);font-weight:600;border-radius:0;border-bottom:3px solid transparent;color:#fff}
.site-header nav a.active,.site-header nav a[aria-current=page]{border-bottom-color:var(--cyan);background:transparent}
.site-header nav a.nav-cta{background:transparent;border:2px solid #fff;color:#fff;border-radius:2px}
.site-header nav a.nav-cta:hover{background:#fff;color:#000}
.nav-toggle{border-radius:2px;border:2px solid #fff;color:#fff}
.site-header.nav-open nav{background:#000;border-radius:0}
/* service bar */
.service-bar{background:#fff;border-bottom:1px solid var(--rule);color:var(--ink)}
.service-bar a{color:#005F9E}
.sb-open{border-radius:0;background:var(--ink);color:#fff}
/* buttons: one cyan primary per view */
.btn{border-radius:2px!important;font-family:var(--disp);font-stretch:108%;font-weight:700;border:2px solid var(--ink);background:transparent;color:var(--ink);box-shadow:none;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.btn:hover{background:var(--ink);color:#fff}
.btn-solid,.btn-cyan{background:var(--ink);border-color:var(--ink);color:#fff}
.btn-solid:hover,.btn-cyan:hover{background:#2a3242;color:#fff}
.btn.btn-primary{background:var(--cyan);border-color:var(--cyan);color:#000;box-shadow:6px 6px 0 #000}
.btn.btn-primary:hover{background:#4FD8E8;color:#000;transform:translate(-1px,-1px);box-shadow:7px 7px 0 #000}
/* compact hero with arcs */
.hero{position:relative;padding:28px 0 24px!important;gap:32px;align-items:center}
.hero::before{content:"";position:absolute;right:-60px;top:-40px;width:220px;height:220px;border:14px solid var(--cyan);border-radius:50%;clip-path:inset(0 50% 50% 0);opacity:.9;pointer-events:none;z-index:0}
.hero>*{position:relative;z-index:1}
.hero h1{font-size:clamp(1.9rem,3.8vw,2.9rem);font-weight:800;line-height:1.05;margin:.4rem 0 .6rem}
.hero h1 em{font-style:normal;background:linear-gradient(transparent 62%,var(--cyan) 62% 92%,transparent 92%)}
.hero .lede{font-size:1.05rem;max-width:36em;margin:0 0 1rem}
.hero .fine{margin-top:.8rem}
.badge{border-radius:0;background:transparent;color:var(--ink);border:0;border-left:6px solid var(--cyan);padding:0 0 0 10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem}
.hero-panel{background:#000;color:#fff;border-radius:0 64px 0 0;border:0;padding:24px;box-shadow:none}
.hero-panel h2{color:#fff;font-size:1rem;text-transform:uppercase;letter-spacing:.06em;border-bottom:4px solid var(--cyan);padding-bottom:8px}
.hero-panel .stat{background:#151a22;border:0;border-left:4px solid var(--cyan);border-radius:0}
.hero-panel .stat strong{color:#fff}.hero-panel .stat span{color:#c9d1dc}
.hero-panel .btn-solid{background:#fff;color:#000;border-color:#fff}
/* section headings: thick rule */
.section{padding:40px 0}
.section h2,.page-h1,.prose h2{position:relative;padding-bottom:12px;margin-bottom:12px}
.section>h2::after,.wrap>h2::after,.page-h1::after,.sec-h::after{content:"";position:absolute;left:0;bottom:0;width:72px;height:6px;background:#000;box-shadow:80px 0 0 var(--cyan)}
.page-h1{font-size:clamp(1.8rem,3.4vw,2.5rem);font-weight:800}
/* cards */
.card,.session-card,.how-item,.callout,.faq details,.past-list li{border-radius:0!important;box-shadow:none!important;border:1px solid var(--rule)}
.card,.session-card{border-top:6px solid #000!important}
.session-card.next{border-top-color:var(--cyan)!important;border-left-width:1px!important}
.session-card.now{border-left-width:1px!important}
.tag{border-radius:0!important}
.tag-live{background:#000!important;color:#fff!important}
.how-item{background:#fff;border-left:6px solid var(--cyan)!important}
.how-item strong{font-family:var(--disp);font-stretch:112%}
.callout{background:#000!important;color:#fff!important;border:0!important;border-radius:0 0 0 80px!important;padding:32px 32px 32px 48px!important;position:relative;overflow:hidden}
.callout strong{color:#fff;font-family:var(--disp);font-stretch:118%;font-size:1.35rem;display:block;margin-bottom:6px}
.callout::after{content:"";position:absolute;right:-50px;bottom:-50px;width:160px;height:160px;border-radius:50%;background:var(--cyan);clip-path:inset(0 50% 50% 0)}
.callout .btn{background:var(--cyan);border-color:var(--cyan);color:#000}
.callout a{color:#9feaf4}
.faq summary{font-family:var(--disp);font-stretch:108%}
/* photos with quarter-circle corner */
.geo-ph{margin:0;overflow:hidden;border-radius:0 0 0 96px;position:relative;background:#000}
.geo-ph img{width:100%;height:100%;object-fit:cover;display:block}
.geo-ph.tr{border-radius:0 96px 0 0}
.how-wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:stretch}
.how-wrap .how-strip{grid-template-columns:1fr 1fr}
.how-wrap .geo-ph{min-height:260px}
.side .geo-ph{height:220px}
/* about profile */
.profile{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:32px;align-items:center;margin:8px 0 24px}
.profile .geo-ph{aspect-ratio:4/3}
.profile .role{display:inline-block;background:#000;color:#fff;font-weight:800;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px}
.profile h2{font-size:1.6rem;margin:.5rem 0}
.stand{background:#fff;border-left:8px solid var(--cyan);padding:20px 24px;font-size:1.1rem;font-weight:600;margin:16px 0}
/* footer */
.site-footer{background:#000;color:#d7dde6;border-top:0}
.site-footer::before{content:"";display:block;height:8px;background:linear-gradient(var(--cyan) 0 4px,#000 4px 5px,var(--cyan) 5px 6px,#000 6px 7px,var(--cyan) 7px 8px)}
.site-footer h3{color:#fff;font-stretch:118%;text-transform:uppercase;font-size:.9rem;letter-spacing:.06em}
.site-footer a{color:#9feaf4}
@media(max-width:860px){.hero{grid-template-columns:1fr!important;padding:20px 0 16px!important}.hero::before{width:140px;height:140px;border-width:10px;right:-40px;top:-30px}.how-wrap,.profile{grid-template-columns:1fr}.how-wrap .geo-ph{min-height:200px;max-height:240px}.section{padding:28px 0}}
@media(max-width:600px){.hero-panel{display:none}.hero h1{font-size:1.85rem}.how-wrap .how-strip{grid-template-columns:1fr}}
.hero h1 em{color:var(--ink)!important;-webkit-text-fill-color:var(--ink)}
.hero-panel .btn,.hero-panel .btn-solid{background:#fff!important;color:#000!important;border-color:#fff!important}
.hero-panel .btn:hover{background:var(--cyan)!important}
.hero{overflow:hidden}.hero::before{top:-110px;right:-110px}
.tag-fee{background:#e3f6f9!important;color:#0B5560!important}
.tag{color:#0B5560}
.logo{white-space:nowrap}
@media(max-width:420px){.logo{font-size:.95rem;letter-spacing:.01em;font-stretch:112%}.logo::before{width:20px;height:20px}}
