/* Exumbra site. Palette and type from Exumbra_Brand_Notes.md. */
/* Self-hosted fonts (SIL Open Font License, see fonts/OFL.txt) */
@font-face{font-family:"Montserrat";font-style:normal;font-weight:700 800;font-display:swap;src:url("fonts/montserrat-latin.woff2") format("woff2")}
@font-face{font-family:"Inter";font-style:normal;font-weight:400 600;font-display:swap;src:url("fonts/inter-latin.woff2") format("woff2")}

:root{
  --blue:#075190; --navy:#0A2E4F; --steel:#3F78B0; --ink:#1F2A36; --slate:#5B6775;
  --rule:#C5D3E3; --sky:#E3ECF6; --mist:#F3F6FA; --white:#fff;
  --on-dark:#E8EEF5; --on-dark-2:#B9C8D9; --line-dark:rgba(255,255,255,.14);
  --display:"Montserrat", "Arial Black", Arial, "Helvetica Neue", sans-serif;
  --body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Calibri, Arial, sans-serif;
  --wrap:1240px; --gutter:clamp(20px,4vw,48px);
  --r:14px; --ease:cubic-bezier(.2,.7,.2,1);
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--body);color:var(--ink);background:var(--white);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue)}
h1,h2,h3{font-family:var(--display);margin:0;color:var(--navy);letter-spacing:-.02em;line-height:1.05}
p{margin:0 0 1em}
ul,ol{margin:0;padding:0;list-style:none}
:focus-visible{outline:3px solid var(--steel);outline-offset:3px;border-radius:4px}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-60px;background:var(--navy);color:#fff;padding:10px 14px;border-radius:8px;z-index:100;text-decoration:none}
.skip:focus{top:12px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--gutter)}

/* Type helpers */
.eyebrow{font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin-bottom:18px}
.eyebrow-light{color:#8FB8E2}
.h2{font-size:clamp(34px,4.6vw,60px);font-weight:800;text-wrap:balance}
.lead{font-size:clamp(18px,1.6vw,21px);line-height:1.55;color:var(--ink)}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.01em;background:var(--blue);color:#fff;text-decoration:none;padding:16px 26px;border-radius:999px;transition:background .2s,transform .2s var(--ease)}
.btn:hover{background:var(--navy);transform:translateY(-1px)}
.btn-small{padding:10px 18px;font-size:14px}
.btn-light{background:#fff;color:var(--navy)}
.btn-light:hover{background:var(--sky)}
.link-arrow{font-family:var(--display);font-weight:700;font-size:15px;color:var(--navy);text-decoration:none;border-bottom:2px solid var(--rule);padding-bottom:3px;transition:border-color .2s}
.link-arrow::after{content:" \2192"}
.link-arrow:hover{border-color:var(--blue)}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.9);backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid transparent;transition:border-color .2s}
.site-header.scrolled{border-bottom-color:var(--rule)}
.header-inner{display:flex;align-items:center;justify-content:space-between;height:84px}
.brand img{width:92px;height:auto}
.nav ul{display:flex;align-items:center;gap:30px}
.nav a:not(.btn){font-weight:500;font-size:15px;color:var(--ink);text-decoration:none}
.nav a:not(.btn):hover{color:var(--blue)}
.nav-toggle{display:none;background:none;border:0;padding:10px;cursor:pointer}
.bars,.bars::before,.bars::after{display:block;width:22px;height:2px;background:var(--navy);position:relative;transition:transform .2s}
.bars::before,.bars::after{content:"";position:absolute;left:0}
.bars::before{top:-7px}.bars::after{top:7px}
.nav-toggle[aria-expanded="true"] .bars{background:transparent}
.nav-toggle[aria-expanded="true"] .bars::before{transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .bars::after{transform:translateY(-7px) rotate(-45deg)}

/* Hero */
.hero{position:relative;overflow:hidden;padding:clamp(72px,11vw,150px) 0 clamp(72px,9vw,120px)}
.hero-grid{position:relative;z-index:1}
.hero-title{font-size:clamp(46px,7.4vw,108px);font-weight:800;line-height:.98;letter-spacing:-.035em;max-width:11ch;margin-bottom:34px}
.rotator{display:inline-block;color:var(--blue);position:relative}
.rotator-word{display:inline-block;transition:transform .5s var(--ease),opacity .5s var(--ease)}
.rotator-word.out{transform:translateY(-40%);opacity:0}
.rotator-word.pre{transform:translateY(40%);opacity:0;transition:none}
.hero-sub{font-size:clamp(18px,1.6vw,21px);max-width:40ch;color:var(--slate);margin-bottom:38px}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:28px}

/* Proof strip */
.proof{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--mist)}
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.stat{padding:38px 28px 34px;border-left:1px solid var(--rule)}
.stat:first-child{border-left:0;padding-left:0}
.stat-num{font-family:var(--display);font-weight:800;font-size:clamp(36px,3.6vw,52px);color:var(--blue);line-height:1;margin-bottom:12px;letter-spacing:-.02em}
.stat-label{font-size:14.5px;color:var(--slate);margin:0;max-width:26ch}
.placeholder .stat-num,.placeholder .stat-label{font-style:normal}
.placeholder .stat-label{color:#4a5563}

/* Sections */
.section{padding:clamp(80px,10vw,140px) 0}
.two-col{display:grid;grid-template-columns:5fr 7fr;gap:clamp(32px,6vw,96px);align-items:start}
.section-head{max-width:760px;margin-bottom:56px}
.pain-list{margin-top:28px;border-top:1px solid var(--rule)}
.pain-list li{padding:18px 0 18px 36px;border-bottom:1px solid var(--rule);position:relative}
.pain-list li::before{content:"";position:absolute;left:4px;top:28px;width:14px;height:2px;background:var(--blue)}

.path{margin-top:clamp(64px,8vw,110px)}
.problem{padding-bottom:clamp(64px,7vw,100px)}
.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--navy)}
.path-step{padding:32px 32px 8px 0;border-right:1px solid var(--rule)}
.path-step+.path-step{padding-left:32px}
.path-step:last-child{border-right:0}
.step-num{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.14em;color:var(--steel)}
.path-step h3{font-size:clamp(28px,2.6vw,38px);font-weight:800;margin:14px 0 6px}
.step-when{font-weight:600;font-size:14px;color:var(--blue);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}
.path-step p:last-child{color:var(--slate)}

/* Ways in cards */
.ways{background:var(--mist);border-top:1px solid var(--rule)}
.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}
.svc-card{background:#fff;border:1px solid var(--rule);border-radius:var(--r);padding:30px 28px 28px;display:flex;flex-direction:column;transition:transform .25s var(--ease),box-shadow .25s,border-color .25s}
.svc-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px -24px rgba(10,46,79,.35);border-color:var(--steel)}
.svc-index{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.14em;color:var(--steel);margin-bottom:26px}
.svc-card h3{font-size:24px;font-weight:800;margin-bottom:12px}
.svc-promise{color:var(--ink);margin-bottom:18px}
.svc-points{border-top:1px solid var(--rule);margin-bottom:24px;flex:1}
.svc-points li{font-size:15px;color:var(--slate);padding:9px 0;border-bottom:1px solid var(--mist)}
.svc-card .link-arrow{align-self:flex-start}

/* Agents */
.agents{background:var(--navy);color:var(--on-dark);position:relative;overflow:hidden}
.agents .h2{color:#fff}
.agents .lead{color:var(--on-dark)}
.agents-head{margin-bottom:56px}
.tier-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0 0;padding-top:22px;border-top:1px solid var(--line-dark)}
.tier-legend dt{font-family:var(--display);font-weight:700;font-size:14px;color:#fff;margin-bottom:4px}
.tier-legend dd{margin:0;font-size:14px;line-height:1.5;color:var(--on-dark-2)}
.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:32px}
.chip{font:600 14px/1 var(--body);color:var(--on-dark);background:transparent;border:1px solid rgba(255,255,255,.28);padding:11px 16px;border-radius:999px;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.chip:hover{border-color:#fff}
.chip[aria-pressed="true"]{background:#fff;color:var(--navy);border-color:#fff}
.chip .count{opacity:.6;margin-left:6px;font-weight:500}
.chip[aria-pressed="true"] .count{opacity:1;color:#45607A}
.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:18px}
.agent-card{position:relative;text-align:left;font:inherit;color:inherit;text-decoration:none;background:rgba(255,255,255,.035);border:1px solid var(--line-dark);border-radius:var(--r);padding:26px 24px 22px;cursor:pointer;display:flex;flex-direction:column;min-height:250px;transition:background .25s,border-color .25s,transform .25s var(--ease)}
.agent-card:hover{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.35);transform:translateY(-3px)}
.agent-card.is-hiding{display:none}
.agent-cat{font-size:11.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#8FB8E2;margin-bottom:16px}
.agent-card .agent-name{color:#fff;font-size:21px;font-weight:700;letter-spacing:-.01em;margin-bottom:10px;line-height:1.2}
.agent-outcome{color:var(--on-dark-2);font-size:15.5px;line-height:1.5;flex:1;margin-bottom:18px}
.agent-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line-dark);padding-top:14px;font-size:13px;color:var(--on-dark-2)}
.agent-more{font-weight:600;color:#fff}
.agent-more::after{content:" \2192"}
.badge{display:inline-block;flex:none;font:600 11.5px/1 var(--body);letter-spacing:.06em;text-transform:uppercase;padding:6px 9px;border-radius:999px;white-space:nowrap}
.agent-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}
.agent-top .agent-cat{margin:3px 0 0}
.badge-available{background:#DCEBFA;color:var(--navy)}
.badge-pilot{background:transparent;color:#DCEBFA;border:1px solid #8FB8E2}
.badge-coming-soon{background:transparent;color:var(--on-dark-2);border:1px dashed rgba(255,255,255,.4)}
.file-note{margin-top:24px;font-size:13.5px;color:var(--on-dark-2)}
.empty{color:var(--on-dark-2)}

/* Drawer */
.drawer{padding:0;border:0;margin:0 0 0 auto;height:100%;max-height:100%;width:min(520px,100%);max-width:100%;background:#fff;color:var(--ink);box-shadow:-30px 0 60px -30px rgba(0,0,0,.4)}
.drawer::backdrop{background:rgba(10,46,79,.55);backdrop-filter:blur(2px)}
.drawer[open]{animation:slidein .35s var(--ease)}
@keyframes slidein{from{transform:translateX(40px);opacity:0}to{transform:none;opacity:1}}
.drawer-inner{padding:56px 44px 44px;position:relative;min-height:100%}
.drawer-close{position:absolute;top:18px;right:18px;width:44px;height:44px;border-radius:50%;border:1px solid var(--rule);background:#fff;font-size:26px;line-height:1;color:var(--navy);cursor:pointer}
.drawer-close:hover{background:var(--mist)}
.drawer .agent-cat{color:var(--blue)}
.drawer h2{font-size:34px;font-weight:800;margin-bottom:14px}
.drawer .d-outcome{font-size:19px;color:var(--navy);font-weight:500;line-height:1.45}
.drawer .d-desc{color:var(--ink)}
.d-badge{position:static;margin-bottom:18px}
.drawer .badge-available{background:var(--sky);color:var(--navy)}
.drawer .badge-pilot{color:var(--blue);border-color:var(--steel)}
.drawer .badge-coming-soon{color:var(--slate);border-color:var(--slate)}
.d-h{font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate);margin:28px 0 10px}
.d-tags{display:flex;flex-wrap:wrap;gap:8px}
.d-tags li{background:var(--mist);border:1px solid var(--rule);border-radius:999px;padding:6px 12px;font-size:14px}
.d-facts{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--rule);margin-top:28px}
.d-facts div{padding:16px 0;border-bottom:1px solid var(--rule)}
.d-facts dt{font-size:12.5px;color:var(--slate);text-transform:uppercase;letter-spacing:.1em;font-weight:600}
.d-facts dd{margin:4px 0 0;font-weight:600;color:var(--navy)}
.d-tierdef{font-size:14px;color:var(--slate);margin-top:14px}
.drawer .btn{margin-top:30px}

/* How */
.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;counter-reset:how}
.how-num{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--blue);color:#fff;font-family:var(--display);font-weight:800;font-size:22px;margin-bottom:24px}
.how-grid h3{font-size:24px;font-weight:800;margin-bottom:10px}
.how-grid p{color:var(--slate)}

/* About */
.about{border-top:1px solid var(--rule)}
.about-grid{display:grid;grid-template-columns:4fr 7fr;gap:clamp(32px,6vw,96px);align-items:start}
.portrait{margin:0}
.portrait-ph{aspect-ratio:4/5;border-radius:var(--r);background:linear-gradient(160deg,var(--sky),var(--mist));border:1px dashed var(--steel);display:grid;place-items:center;text-align:center;padding:24px;color:var(--slate);font-size:15px}
.role{font-weight:600;color:var(--blue);margin:12px 0 26px}
.bio p{font-size:17.5px}
.check{display:inline-block;font-size:12.5px;font-weight:600;color:#7a4b00;background:#FFF4D6;border:1px solid #F0D27A;border-radius:6px;padding:1px 7px;line-height:1.5;vertical-align:1px}
.client-quote{margin:22px 0 0;padding:14px 18px;border-left:3px solid var(--blue)}
.client-quote blockquote{margin:0}
.client-quote p{margin:0;font-size:17px;line-height:1.5;color:var(--ink)}
.client-quote-by{margin-top:8px;font-size:14px;font-weight:600;color:var(--slate)}
.placeholder-line{margin-top:22px;padding:14px 18px;border:1px dashed var(--steel);border-radius:10px;color:var(--slate);font-size:15px}

/* CTA */
.cta{position:relative;overflow:hidden;background:var(--blue);color:#fff;padding:clamp(90px,11vw,150px) 0;text-align:center}
.cta-orb{position:absolute;width:900px;aspect-ratio:1;border-radius:50%;border:1px solid rgba(255,255,255,.18);left:50%;top:50%;transform:translate(-50%,-50%)}
.cta-orb::after{content:"";position:absolute;inset:14%;border-radius:50%;border:1px solid rgba(255,255,255,.12)}
.cta-inner{position:relative}
.cta-title{color:#fff;font-size:clamp(38px,5.6vw,76px);font-weight:800;margin-bottom:22px}
.cta-sub{font-size:clamp(18px,1.6vw,21px);max-width:44ch;margin:0 auto 36px;color:#E3ECF6}
.cta-mail{margin-top:22px;color:#E3ECF6;font-size:15px}
.cta-mail a{color:#fff}

/* Footer */
.site-footer{background:var(--navy);color:var(--on-dark-2);padding:64px 0 48px;font-size:14.5px}
.footer-grid{display:grid;grid-template-columns:2.2fr 2.6fr 2.4fr 1.6fr 3fr;gap:36px}
.site-footer img{width:84px}
.site-footer a{color:#fff;text-decoration:none}
.site-footer a:hover{text-decoration:underline}
.footer-h{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#fff;margin-bottom:14px}
.footer-col p{margin-bottom:8px}
.footer-small p{font-size:13.5px;line-height:1.55}
.noscript{padding:20px;text-align:center}

/* Reveal on scroll (only when JS runs) */
.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js .reveal{opacity:1;transform:none;transition:none}
  .rotator-word,.svc-card,.agent-card,.btn{transition:none}
  .drawer[open]{animation:none}
}

/* Responsive */
@media (max-width:1024px){
  .proof-grid{grid-template-columns:repeat(2,1fr)}
  .stat:nth-child(3){border-left:0;padding-left:0}
  .stat:nth-child(n+3){border-top:1px solid var(--rule)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .sub-grid{grid-template-columns:1fr}
  .cta-box{position:static}
}
@media (max-width:860px){
  .nav-toggle{display:block}
  .nav ul{position:absolute;left:0;right:0;top:84px;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--rule);padding:8px var(--gutter) 20px;display:none}
  .nav ul.open{display:flex}
  .nav li a:not(.btn){display:block;padding:14px 0;border-bottom:1px solid var(--mist)}
  .nav li .btn{margin-top:14px;justify-content:center}
  .two-col,.about-grid{grid-template-columns:1fr}
  .path-grid,.how-grid{grid-template-columns:1fr}
  .path-step,.path-step+.path-step{padding:28px 0;border-right:0;border-bottom:1px solid var(--rule)}
  .tier-legend{grid-template-columns:1fr}
  .portrait{max-width:320px}
}
@media (max-width:560px){
  body{font-size:16px}
  .proof-grid{grid-template-columns:1fr}
  .stat,.stat:nth-child(3){border-left:0;padding:26px 0}
  .stat+.stat{border-top:1px solid var(--rule)}
  .footer-grid{grid-template-columns:1fr}
  .drawer-inner{padding:60px 24px 32px}
  .d-facts{grid-template-columns:1fr}
  .eyebrow{font-size:11.5px;letter-spacing:.12em}
  .brand img{width:76px}
  .header-inner{height:72px}
  .nav ul{top:72px}
  .agent-card{min-height:0}
  .agent-outcome{margin-bottom:14px}
}

/* ---------- Added for SEO/AEO build ---------- */
.svc-card h3 a{color:inherit;text-decoration:none}
.svc-card h3 a:hover{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.hero-entity{font-weight:600;color:var(--navy);font-size:clamp(17px,1.4vw,19px);max-width:44ch;margin-bottom:10px}
.section-head .lead{margin-top:20px;color:var(--slate)}
.path-intro{font-size:19px;color:var(--ink);margin:-6px 0 22px}
.d-actions{display:flex;flex-wrap:wrap;align-items:center;gap:22px;margin-top:30px}
.d-actions .btn{margin-top:0}

/* FAQ */
.faq{border-top:1px solid var(--rule)}
.faq-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:64px}
.faq-item{border-top:1px solid var(--rule);padding:28px 0 12px}
.faq-item h3{font-size:21px;font-weight:700;line-height:1.25;margin-bottom:12px;letter-spacing:-.01em}
.faq-answer{color:var(--ink)}
.faq-detail{color:var(--slate);font-size:15.5px}

/* About on home */
.bio-lead{font-size:18px}
.bio-facts{margin:18px 0 26px;border-top:1px solid var(--rule)}
.bio-facts li{padding:12px 0;border-bottom:1px solid var(--rule);font-size:16.5px}

/* CTA extras */
.limited-note{display:block;width:fit-content;max-width:100%;margin:26px auto 0;padding:10px 18px;border:1px solid rgba(255,255,255,.35);border-radius:999px;font-size:15px;color:#fff}
.cta-updated .updated{color:#C9D9EA;margin:18px 0 0;font-size:13.5px}

/* Footer extras */
.footer-tagline{margin-top:16px;color:#fff;font-family:var(--display);font-weight:700;font-size:14px;line-height:1.4;max-width:18ch}
.site-footer address{font-style:normal}
.site-footer ul li{margin-bottom:8px}

/* Subpages */
.sub{padding-top:40px;padding-bottom:clamp(64px,8vw,110px)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:var(--slate)}
.crumbs li+li::before{content:"/";margin-right:6px;color:var(--rule)}
.crumbs a{color:var(--slate)}
.sub-hero{padding:clamp(36px,5vw,64px) 0 clamp(28px,4vw,48px);border-bottom:1px solid var(--rule);margin-bottom:clamp(32px,4vw,56px);max-width:900px}
.sub-hero h1{font-size:clamp(38px,5.4vw,68px);font-weight:800;margin-bottom:24px;text-wrap:balance}
.answer-first{font-size:clamp(18px,1.6vw,21px);line-height:1.55;color:var(--navy);border-left:4px solid var(--blue);padding-left:18px;margin-bottom:18px}
.sub-hero .lead{color:var(--slate)}
.updated{font-size:13.5px;color:var(--slate);margin:14px 0 0}
.sub-grid{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:clamp(32px,5vw,72px);align-items:start}
.sub-section{margin-bottom:40px}
.sub-section h2{font-size:clamp(24px,2.4vw,30px);font-weight:800;margin-bottom:14px}
.sub-section p{max-width:68ch}
.check-list li{position:relative;padding:10px 0 10px 30px;border-bottom:1px solid var(--mist)}
.check-list li::before{content:"";position:absolute;left:2px;top:19px;width:14px;height:8px;border-left:2px solid var(--blue);border-bottom:2px solid var(--blue);transform:rotate(-45deg)}
.link-list{border-top:1px solid var(--rule)}
.link-list li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:24px;padding:16px 0;border-bottom:1px solid var(--rule)}
.link-list a{font-family:var(--display);font-weight:700;color:var(--navy);text-decoration:none}
.link-list a:hover{color:var(--blue);text-decoration:underline}
.link-list span{color:var(--slate);font-size:15.5px}
.link-list.muted li{grid-template-columns:1fr}
.link-list.muted span{font-family:var(--display);font-weight:700;color:var(--navy);font-size:16px}
.related{margin-top:24px}
.cta-box{position:sticky;top:110px;background:var(--sky);border-radius:var(--r);padding:30px 28px}
.cta-box h2{font-size:22px;font-weight:800;margin-bottom:10px}
.cta-box p{color:var(--ink);font-size:15.5px}
.cta-box .btn{margin-top:6px}
.post .cta-box{position:static;margin-top:48px;max-width:720px}
.prose{max-width:720px}
.prose h2{font-size:28px;font-weight:800;margin:40px 0 12px}
.prose ul,.prose ol{padding-left:22px;margin-bottom:18px}
.prose ul{list-style:disc}.prose ol{list-style:decimal}
.prose li{margin-bottom:6px}
.byline{color:var(--slate);font-size:15px}
.draft-banner,.outline-flag{background:#FFF4D6;border:1px solid #F0D27A;color:#5c3a00;border-radius:10px;padding:12px 16px;font-size:14.5px;margin-top:20px}
.sub .d-tags{display:flex;flex-wrap:wrap;gap:8px}
.sub .d-tags li{background:var(--mist);border:1px solid var(--rule);border-radius:999px;padding:6px 12px;font-size:14px}
.sub .d-facts{max-width:620px;grid-template-columns:repeat(3,1fr)}
@media (max-width:560px){.sub .d-facts{grid-template-columns:1fr 1fr}}
.sub-about{margin-top:8px}
.sub-about .portrait{position:sticky;top:110px}
@media (max-width:860px){
  .faq-grid{grid-template-columns:1fr}
  .link-list li{grid-template-columns:1fr;gap:4px}
  .sub-about .portrait{position:static}
  .sub-grid{grid-template-columns:1fr}
  .cta-box{position:static}
}
address{font-style:normal}

/* ---------- Photography (all optional; driven by data/site.json and data/services.json) ---------- */
picture{display:block}
picture img{display:block;width:100%;height:100%;object-fit:cover}

/* Full-bleed photo bands */
.band-media{position:absolute;inset:0;z-index:0;overflow:hidden}
.band-media::after{content:"";position:absolute;inset:0}
.band-media picture{position:absolute;inset:0;width:100%;height:100%}
.photo-band,.agents,.cta,.faq{position:relative;isolation:isolate}
.photo-band > .wrap,.agents > .wrap,.cta > .wrap,.faq > .wrap{position:relative;z-index:1}

/* Proof strip on a navy-overlaid photo */
.photo-band{background:var(--navy);border:0}
.photo-band .band-media::after{background:linear-gradient(90deg,rgba(10,46,79,.80) 0%,rgba(10,46,79,.72) 55%,rgba(10,46,79,.70) 100%)}
.photo-band .stat{border-left-color:rgba(255,255,255,.18);padding-top:56px;padding-bottom:52px}
.photo-band .stat-num{color:#fff}
.photo-band .stat-label,.photo-band .placeholder .stat-label{color:#F0F5FA}
@media (max-width:1024px){.photo-band .stat:nth-child(n+3){border-top-color:rgba(255,255,255,.18)}}
@media (max-width:560px){.photo-band .stat+.stat{border-top-color:rgba(255,255,255,.18)}}

/* Agentic section: photo behind the header only, fading into navy */
.agents .agents-media{bottom:auto;height:min(760px,100%);
  -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 45%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,#000 45%,transparent 100%)}
.agents .agents-media::after{background:linear-gradient(180deg,rgba(10,46,79,.84) 0%,rgba(10,46,79,.9) 60%,var(--navy) 100%)}
.eyebrow-light{color:#A9C9EC}

/* Final CTA on a brand-blue-overlaid photo */
.cta .band-media::after{background:rgba(7,81,144,.88)}
.cta-orb{z-index:1}
.cta-updated .updated{color:#E3ECF6}

/* Service cards: small rounded photo on top */
.svc-photo{margin:-8px -6px 22px;border-radius:10px;overflow:hidden;aspect-ratio:16/10;background:var(--sky)}
.svc-card.has-photo{padding-top:22px}
.svc-card.has-photo .svc-index{margin-bottom:14px}
.svc-photo img{transition:transform .6s var(--ease)}
.svc-card:hover .svc-photo img{transform:scale(1.03)}

/* Service page header photo */
.sub-hero.has-photo{max-width:none;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(32px,5vw,72px);align-items:center}
.sub-photo{border-radius:16px;overflow:hidden;aspect-ratio:4/3;background:var(--sky)}

@media (max-width:860px){
  .sub-hero.has-photo{grid-template-columns:1fr}
  .sub-photo{max-width:560px}
}
@media (prefers-reduced-motion:reduce){.svc-photo img{transition:none}.svc-card:hover .svc-photo img{transform:none}}

/* ---------- Full-bleed home hero (BetterUp-style): photo + navy wash, header floats on top ---------- */
.site-header .brand-light{display:none}
.hero-full{--hdr:84px;position:relative;isolation:isolate;overflow:hidden;background:var(--navy);color:#fff;
  margin-top:calc(var(--hdr) * -1);min-height:100vh;min-height:100svh;display:flex;align-items:center;
  padding:calc(var(--hdr) + clamp(40px,6vh,72px)) 0 clamp(64px,10vh,112px)}
.hero-media{position:absolute;inset:0;z-index:-1}
.hero-media picture{position:absolute;inset:0;width:100%;height:100%}
/* The wash: navy, darkest behind the headline on the left, lighter over the subject on the right,
   a dark band behind the header and a fade at the bottom into the navy proof strip. */
.hero-media::after{content:"";position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(10,46,79,.55) 0%,rgba(10,46,79,0) 22%,rgba(10,46,79,0) 62%,rgba(10,46,79,.75) 90%,var(--navy) 100%),
    linear-gradient(90deg,rgba(10,46,79,.90) 0%,rgba(10,46,79,.86) 38%,rgba(10,46,79,.62) 64%,rgba(10,46,79,.50) 100%)}
.hero-full .hero-grid{width:100%;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(32px,4vw,64px);align-items:end}
.hero-full .eyebrow{color:#A9C9EC}
.hero-full .hero-title{color:#fff;margin-bottom:28px;text-shadow:0 2px 24px rgba(5,22,40,.35)}
.hero-full .rotator{color:#9FC6EE}
.hero-full .hero-entity{color:#fff;max-width:46ch;margin-bottom:0}
.hero-full .hero-side{border-left:1px solid rgba(255,255,255,.32);padding:6px 0 6px clamp(24px,2.6vw,40px)}
.hero-full .hero-sub{color:var(--on-dark);max-width:36ch;margin-bottom:30px;font-size:clamp(17px,1.35vw,19px)}
.hero-full .hero-cta{gap:24px}
.hero-full .link-arrow{color:#fff;border-bottom-color:rgba(255,255,255,.45)}
.hero-full .link-arrow:hover{border-color:#fff}
.hero-full .btn:hover{background:#fff;color:var(--navy)}
.hero-full :focus-visible{outline-color:#fff}
.hero-full + .photo-band{margin-top:-1px}

/* Transparent header while it sits over the hero (JS only, so no-JS visitors keep the solid header) */
.js .site-header.over-hero{transition:background-color .25s,border-color .25s,backdrop-filter .25s}
.js .site-header.over-hero:not(.scrolled):not(.menu-open){background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:rgba(255,255,255,.16)}
.js .site-header.over-hero:not(.scrolled):not(.menu-open) .brand-dark{display:none}
.js .site-header.over-hero:not(.scrolled):not(.menu-open) .brand-light{display:block}
.js .site-header.over-hero:not(.scrolled):not(.menu-open) .bars,
.js .site-header.over-hero:not(.scrolled):not(.menu-open) .bars::before,
.js .site-header.over-hero:not(.scrolled):not(.menu-open) .bars::after{background:#fff}
@media (min-width:861px){
  .js .site-header.over-hero:not(.scrolled) .nav a:not(.btn){color:#fff}
  .js .site-header.over-hero:not(.scrolled) .nav a:not(.btn):hover{color:#C9DDF2}
  .js .site-header.over-hero:not(.scrolled) .nav .btn{background:transparent;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.85)}
  .js .site-header.over-hero:not(.scrolled) .nav .btn:hover{background:#fff;color:var(--navy)}
  .js .site-header.over-hero:not(.scrolled) :focus-visible{outline-color:#fff}
}

@media (max-width:860px){
  .hero-full{align-items:flex-end}
  .hero-full .hero-grid{grid-template-columns:1fr;gap:26px}
  .hero-full .hero-side{border-left:0;border-top:1px solid rgba(255,255,255,.28);padding:26px 0 0}
  /* Phones: the photo fills the top of the screen (subject's face above the headline) and fades into navy */
  .hero-media{bottom:auto;height:66%}
  .hero-media::after{background:
    linear-gradient(180deg,rgba(10,46,79,.50) 0%,rgba(10,46,79,.12) 16%,rgba(10,46,79,.30) 26%,rgba(10,46,79,.70) 38%,rgba(10,46,79,.82) 62%,rgba(10,46,79,.94) 84%,var(--navy) 100%)}
}
@media (max-width:560px){
  .hero-full{--hdr:72px;padding-bottom:48px}
  .hero-full .hero-title{margin-bottom:22px}
  .hero-full .hero-entity{font-size:16.5px}
  .hero-full .hero-sub{font-size:16.5px;margin-bottom:26px}
}

/* ---------- Photo strip below the problem statement (BetterUp-style scroll motion) ----------
   Static by default: a row of portrait photos you can swipe sideways. When JS runs and the visitor
   has not asked for reduced motion, app.js adds .is-live: tiles drift in from staggered heights and
   fade up as the strip scrolls into view, and the row slides left as you scroll (scroll-linked only, no timer).
   It loops: app.js appends a hidden duplicate set, so photos leaving on the left keep arriving from the right.
   The stagger uses classes (st0 to st3) set by build.py, so the duplicates line up exactly with the originals. */
.photo-strip{--tile:clamp(150px,17vw,260px);--gap:clamp(18px,2.6vw,44px);
  margin:clamp(48px,6vw,88px) 0 clamp(56px,7vw,104px);
  --pad:var(--gutter); /* starts at the page edge margin; the row then slides fully off to the left */
  padding-left:var(--pad);scroll-padding-left:var(--pad);
  overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none}
.photo-strip::-webkit-scrollbar{display:none}
.strip-track{display:flex;align-items:flex-start;gap:var(--gap);width:max-content;padding:0 var(--gutter) 64px 0}
.strip-tile{flex:0 0 var(--tile);scroll-snap-align:start}



.strip-tile figure{margin:0}
.strip-img{position:relative;aspect-ratio:3/4;border-radius:10px;overflow:hidden;background:var(--sky)}
.strip-img img{filter:saturate(.82) contrast(1.03)}
/* the same navy tint as the hero wash, so photos from different shoots read as one set */
.strip-img::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(180deg,rgba(10,46,79,.06) 0%,rgba(10,46,79,.10) 55%,rgba(10,46,79,.38) 100%)}
.strip-tile figcaption{font-family:var(--display);font-weight:700;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--slate);margin-top:14px}
.photo-strip.is-live{overflow:hidden;scroll-snap-type:none}
.photo-strip.is-live .strip-track,.photo-strip.is-live .strip-tile{will-change:transform}
@media (max-width:560px){
  .photo-strip{--tile:44vw;--gap:14px}
  
  
  
  .strip-tile figcaption{font-size:11px;letter-spacing:.1em}
}

/* ---------- Ways in: illustrated engagement view (BetterUp-style photo + floating product panels) ----------
   Photo with a navy wash, a frosted band across the middle, and HTML cards (data/platform.json) floating over it.
   The cards are real text, so search engines read them. Motion (app.js) is a slow parallax on the photo and a
   one-time staggered fade-up of the cards; both are skipped for reduced motion. */
.platform-visual{position:relative;isolation:isolate;overflow:hidden;margin:0 0 clamp(36px,4vw,56px);border-radius:18px;
  background:var(--navy);padding:clamp(64px,7vw,96px) 0 clamp(72px,8vw,104px)}
.pv-media{position:absolute;inset:0;z-index:-1;overflow:hidden}
.pv-media picture{position:absolute;left:0;right:0;top:-12%;height:124%}
.pv-media::after{content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(10,46,79,.55) 0%,rgba(10,46,79,.35) 45%,rgba(10,46,79,.70) 100%)}
.pv-band{position:relative;min-height:400px;display:flex;align-items:center;justify-content:center;padding:44px 24px;
  border-top:1px solid rgba(255,255,255,.28);border-bottom:1px solid rgba(255,255,255,.28);
  background:rgba(255,255,255,.04);backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2)}
.pv-caption{position:absolute;left:clamp(20px,3vw,32px);bottom:clamp(18px,2.4vw,28px);margin:0;font-size:12.5px;color:#DCE6F1}

.ui-card{background:#fff;color:var(--ink);border-radius:12px;padding:16px 18px 14px;width:252px;
  box-shadow:0 24px 48px -20px rgba(3,18,33,.55),0 2px 6px rgba(3,18,33,.18);font-size:13.5px;line-height:1.4}
.ui-card.slot-main{width:min(380px,100%);padding:22px 24px 18px;font-size:14.5px}
.ui-card:not(.slot-main){position:absolute;z-index:2}
.slot-top-left{left:5%;top:-34px}
.slot-top-right{right:5%;top:30px}
.slot-bottom-left{left:9%;bottom:-40px}
.slot-bottom-right{right:8%;bottom:-26px}
.ui-kicker{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 6px;font-family:var(--display);
  font-weight:700;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--slate)}
.ui-tag{flex:none;font-family:var(--body);font-weight:600;font-size:11px;letter-spacing:.02em;text-transform:none;
  color:var(--blue);background:var(--sky);border-radius:999px;padding:2px 9px}
.ui-title{font-family:var(--display);font-weight:800;font-size:16px;color:var(--navy);letter-spacing:-.01em;margin:0 0 10px}
.slot-main .ui-title{font-size:21px;margin-bottom:12px}
.ui-rows li{display:flex;align-items:center;gap:9px;padding:6px 0;border-top:1px solid var(--mist)}
.ui-rows li:first-child{border-top:0}
.ui-label{flex:1 1 auto}
.ui-val{flex:none;color:var(--slate);font-size:.92em}
.ui-dot{flex:none;width:10px;height:10px;border-radius:50%;background:var(--rule)}
.st-done .ui-dot{background:var(--blue);box-shadow:inset 0 0 0 2px #fff,0 0 0 1.5px var(--blue)}
.st-active .ui-dot{background:#2E9BD6;box-shadow:0 0 0 4px rgba(46,155,214,.18)}
.st-next .ui-dot{background:#fff;box-shadow:inset 0 0 0 1.5px var(--slate)}
.st-review .ui-dot{background:#D98A1C;box-shadow:0 0 0 4px rgba(217,138,28,.16)}
.ui-bar-row .ui-label{flex:0 0 74px}
.ui-bar{flex:1 1 auto;height:8px;border-radius:99px;background:var(--mist);position:relative;overflow:hidden}
.ui-bar::after{content:"";position:absolute;inset:0 auto 0 0;border-radius:99px;background:linear-gradient(90deg,var(--blue),var(--steel))}
.ui-bar-1::after{width:22%}.ui-bar-2::after{width:40%}.ui-bar-3::after{width:58%}.ui-bar-4::after{width:78%}.ui-bar-5::after{width:96%}
.ui-note{margin:10px 0 0;padding-top:10px;border-top:1px solid var(--rule);font-size:12.5px;color:var(--slate)}

/* Service cards: a small example status chip floating on each photo */
.svc-media{position:relative;margin:-8px -6px 22px}
.svc-media .svc-photo{margin:0}
.ui-chip{position:absolute;left:10px;bottom:10px;margin:0;display:inline-flex;align-items:center;gap:7px;max-width:calc(100% - 20px);
  background:rgba(255,255,255,.95);color:var(--ink);border-radius:999px;padding:5px 11px 5px 9px;font-size:12px;line-height:1.3;
  box-shadow:0 8px 20px -10px rgba(3,18,33,.5)}
.ui-chip .ui-dot{width:8px;height:8px;background:#2E9BD6;box-shadow:0 0 0 3px rgba(46,155,214,.18)}
.chip-label{font-weight:700;color:var(--navy)}

/* One-time entrance (JS adds .ui-pre only when motion is allowed) */
.ui-pre{opacity:0;transform:translateY(20px)}
.ui-pre{transition:opacity 2.4s var(--ease),transform 2.4s var(--ease)}
.ui-pre.ui-in{opacity:1;transform:none;transition:opacity 3.2s var(--ease),transform 3.2s var(--ease)}

@media (max-width:1024px){
  .slot-top-left{left:3%}.slot-top-right{right:3%}.slot-bottom-left{left:4%}.slot-bottom-right{right:3%}
  .ui-card:not(.slot-main){width:224px}
}
@media (max-width:860px){
  .platform-visual{padding:28px 0 56px}
  .pv-band{min-height:0;flex-direction:column;align-items:stretch;gap:14px;padding:22px 16px}
  .ui-card:not(.slot-main){position:relative;left:auto;right:auto;top:auto;bottom:auto;width:84%}
  .ui-card.slot-main{width:100%}
  .slot-top-right,.slot-bottom-right{align-self:flex-end}
  .slot-bottom-left,.slot-bottom-right{display:none}
  .pv-caption{left:16px;bottom:18px}
}
@media (prefers-reduced-motion:reduce){.ui-pre{opacity:1;transform:none}}

/* Founder photo: About page band and homepage portrait (data/site.json "person" > "photo") */
.portrait-photo{display:block}
.portrait-photo img{display:block;width:100%;height:auto;border-radius:var(--r);background:var(--sky)}
.founder-band{position:relative;margin:clamp(28px,4vw,48px) 0 clamp(40px,5vw,64px);border-radius:18px;overflow:hidden;background:#D3E6F3;aspect-ratio:2/1}
.founder-band.no-photo{aspect-ratio:auto;display:grid;grid-template-columns:4fr 7fr;gap:clamp(32px,6vw,96px);background:none}
.founder-band.no-photo .fb-text{position:static;transform:none;width:auto}
.fb-photo,.fb-photo img{display:block;width:100%;height:100%}
.fb-photo img{object-fit:cover}
.founder-band:not(.no-photo)::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,0) 46%,rgba(255,255,255,.5) 64%,rgba(255,255,255,.66));pointer-events:none}
.fb-text{position:absolute;z-index:1;top:50%;right:clamp(24px,4.5vw,64px);width:39%;transform:translateY(-50%)}
.fb-text .eyebrow{margin-bottom:12px}
.fb-text h2{font-size:clamp(30px,3.6vw,50px)}
.fb-text .role{margin:12px 0 18px}
.fb-bio{margin:0;font-size:clamp(16px,1.4vw,19.5px);line-height:1.55;color:var(--ink)}
.about-cols{display:grid;grid-template-columns:1fr 1fr;gap:0 clamp(32px,5vw,72px);align-items:start}
@media (max-width:1024px){
  .fb-text{width:43%;right:24px}
  .fb-text h2{font-size:30px}
  .fb-text .role{margin:8px 0 12px}
  .fb-bio{font-size:15.5px}
}
@media (max-width:860px){
  .founder-band{aspect-ratio:auto;display:grid;grid-template-columns:112px 1fr;gap:0 18px;align-items:center;padding:18px;background:var(--mist);border:1px solid var(--rule);border-radius:var(--r)}
  .founder-band:not(.no-photo)::after{display:none}
  .fb-photo{grid-column:1;grid-row:1/4;width:112px;height:112px;border-radius:12px;overflow:hidden;align-self:start}
  .fb-text{display:contents}
  .fb-text>*{grid-column:2}
  .fb-text .eyebrow{margin:0 0 4px}
  .fb-text h2{font-size:26px}
  .fb-text .role{margin:6px 0 0;font-size:15px}
  .fb-text .fb-bio{grid-column:1/-1;margin-top:16px;font-size:16.5px}
  .about-cols{grid-template-columns:1fr}
  .portrait-photo{max-width:280px}
}

/* ---------- v4 (October 19, 2026): header motto, full-width agent menu, dark FAQ, centered footer motto ---------- */
/* Header: the motto beside the logo (two lines, small). White over the transparent hero header, navy on the solid one. */
.header-tagline{margin:0 auto 0 18px;padding-left:18px;border-left:1px solid var(--rule);font-family:var(--display);font-weight:700;
  font-size:12.5px;line-height:1.3;letter-spacing:.01em;color:var(--navy);white-space:nowrap}
.js .site-header.over-hero:not(.scrolled):not(.menu-open) .header-tagline{color:#fff;border-left-color:rgba(255,255,255,.4)}
@media (max-width:1060px) and (min-width:861px){ .header-tagline{font-size:11.5px;margin-left:12px;padding-left:12px} .nav ul{gap:22px} }
@media (max-width:860px){ .header-tagline{font-size:11px;margin-left:12px;padding-left:12px} }
@media (max-width:339px){ .header-tagline{display:none} }

/* Footer: the motto centered under the logo, same two lines */
.footer-brand{display:flex;flex-direction:column;align-items:center;width:max-content;max-width:100%;text-align:center}
.footer-brand .footer-tagline{max-width:none;margin-top:14px}

/* Agent menu: full width, one group of cards per tier */
.agents-head{margin-bottom:40px}
.agent-tiers{display:grid;gap:44px}
.tier-group{border-top:1px solid var(--line-dark);padding-top:22px}
.tier-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 22px;margin-bottom:20px}
.tier-name{font-size:24px;font-weight:800;color:#fff;letter-spacing:-.01em}
.tier-count{font-family:var(--body);font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#A9C9EC;margin-left:10px}
.tier-def{margin:0;color:var(--on-dark-2);font-size:15.5px}
.tier-group.is-empty{display:none}
.agent-tiers .agent-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.agent-tiers .agent-grid.tier-many{grid-template-columns:repeat(5,minmax(0,1fr))}
.agent-tiers .agent-grid.tier-1 .agent-card{grid-column:span 2}
.agent-tiers .agent-card{min-height:230px;padding:22px 20px 18px}
.agent-tiers .agent-card .agent-name{font-size:19px}
.agent-tiers .agent-outcome{font-size:15px}
.agent-tiers .agent-cat{margin-bottom:12px}
.agent-tiers .agent-top{gap:10px}
.agent-tiers .agent-top .agent-cat{min-width:0}
.agent-tiers .agent-top .badge{flex-shrink:0;white-space:nowrap}
.agent-tiers .tier-many .badge{font-size:10px;padding-left:7px;padding-right:7px}
.agent-tiers .tier-many .agent-card{padding-left:17px;padding-right:17px}
.agent-tiers .tier-many .agent-cat{font-size:10.5px;letter-spacing:.05em}
@media (max-width:1180px){ .agent-tiers .agent-grid.tier-many{grid-template-columns:repeat(3,minmax(0,1fr))} .agent-tiers .agent-grid{grid-template-columns:repeat(3,minmax(0,1fr))} }
@media (max-width:860px){ .agent-tiers .agent-grid,.agent-tiers .agent-grid.tier-many{grid-template-columns:repeat(2,minmax(0,1fr))} .agent-tiers .agent-grid.tier-1 .agent-card{grid-column:auto} }
@media (max-width:560px){ .agent-tiers .agent-grid,.agent-tiers .agent-grid.tier-many{grid-template-columns:1fr} .agent-tiers{gap:32px} .tier-name{font-size:21px} }

/* FAQ: deep navy over a night photo of office windows, light text */
.faq{background:#08243F;color:var(--on-dark);border-top:0}
.faq .band-media::after{background:linear-gradient(90deg,rgba(8,36,63,.94) 0%,rgba(8,36,63,.86) 50%,rgba(8,36,63,.74) 100%),linear-gradient(180deg,rgba(8,36,63,0) 60%,rgba(8,36,63,.9) 100%)}
.faq .band-photo img{filter:saturate(.6)}
.faq .eyebrow{color:#A9C9EC}
.faq .h2{color:#fff}
.faq .section-head .lead{color:var(--on-dark-2)}
.faq-item{border-top-color:rgba(255,255,255,.16)}
.faq .faq-item h3{color:#fff}
.faq .faq-answer{color:var(--on-dark)}
.faq .faq-detail{color:var(--on-dark-2)}
.faq a{color:#9FC6EE}
.faq :focus-visible{outline-color:#fff}

/* Photo focal points, written by build.py from the "position" values in data/*.json */
/* BUILD:focal */
.fp-40-45{object-position:40% 45%}
.fp-50-30{object-position:50% 30%}
.fp-50-35{object-position:50% 35%}
.fp-50-40{object-position:50% 40%}
.fp-50-45{object-position:50% 45%}
.fp-50-55{object-position:50% 55%}
.fp-55-40{object-position:55% 40%}
.fp-6-6{object-position:6% 6%}
.fp-70-35{object-position:70% 35%}
.fp-70-50{object-position:70% 50%}
/* /BUILD:focal */

/* Whole Ways In card clicks through to its page; the CTA link stays clickable on top */
.svc-card{position:relative;cursor:pointer}
.svc-card h3 a::after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit}
.svc-card .link-arrow{position:relative;z-index:2}
.svc-card:focus-within{border-color:var(--steel)}
/* Five Ways In cards: three on the first row, two wider on the second */
@media (min-width:1024px){#services-grid{grid-template-columns:repeat(6,1fr)}#services-grid>.svc-card{grid-column:span 2}}
