/* BRAND TOKENS — sampled from the STICC logo */
:root{
--navy:#0E3D78; /* Primary — Royal Navy Blue */
--navy-deep:#0A2E5C; /* darker navy for depth */
--navy-900:#08243F; /* deepest — hero/footer base */
--violet:#54489C; /* Secondary — Violet / Indigo (accent) */
--violet-bright:#6E5FBE; /* lifted violet for hovers */
--periwinkle:#849CC0; /* Tint */
--lilac:#A89CCC; /* Tint */
--mist:#EFE7D7; /* warm sand tint */ /* light section background */
--paper:#FBF6EC; /* warm white — light surfaces */
--page:#F3ECDE; /* warm white — page background */
--line:#E7DDCB; /* warm neutral border */
--line-dark:#20406A;
--ink:#16202B;
--ink-soft:#42566B;
--white:#FEFCF7; /* warm white — cards & on-dark text */
--maxw:1160px;
--display:'Space Grotesk',system-ui,sans-serif;
--body:'Inter',system-ui,sans-serif;
--shadow:0 20px 55px -26px rgba(10,46,92,.5);
--radius:6px;
}

/* BASE */
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
body{
margin:0;font-family:var(--body);color:var(--ink);background:var(--page);
line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none;}
svg{display:block;}
h1,h2,h3,h4{font-family:var(--display);line-height:1.12;margin:0;font-weight:700;letter-spacing:-.02em;}
p{margin:0;}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 26px;}

.eyebrow{
font-family:var(--body);font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
color:var(--violet);display:inline-flex;align-items:center;gap:10px;
}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--violet);display:inline-block;}
.eyebrow.on-dark{color:var(--lilac);}
.eyebrow.on-dark::before{background:var(--lilac);}

/* BUTTONS */
.btn{
display:inline-flex;align-items:center;gap:9px;font-family:var(--body);font-weight:600;font-size:15px;
padding:14px 26px;border-radius:3px;cursor:pointer;border:1.5px solid transparent;
transition:transform .15s ease,background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.btn:focus-visible{outline:3px solid var(--violet);outline-offset:3px;}
.btn-primary{background:var(--violet);color:var(--white);}
.btn-primary:hover{background:var(--violet-bright);transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(84,72,156,.7);}
.btn-solid{background:var(--navy);color:var(--white);}
.btn-solid:hover{background:var(--navy-deep);transform:translateY(-2px);}
.btn-ghost{background:transparent;color:var(--white);border-color:rgba(255,255,255,.4);}
.btn-ghost:hover{border-color:var(--lilac);color:var(--lilac);}
.btn-outline{background:transparent;color:var(--navy);border-color:var(--line);}
.btn-outline:hover{border-color:var(--violet);color:var(--violet);}
.btn .arr{transition:transform .2s ease;}
.btn:hover .arr{transform:translateX(4px);}

/* HEADER / STICKY NAV */
header.site{
position:sticky;top:0;z-index:60;background:rgba(8,36,63,.94);
-webkit-backdrop-filter:saturate(140%) blur(8px);backdrop-filter:saturate(140%) blur(8px);
border-bottom:1px solid var(--line-dark);
}
.nav{display:flex;align-items:center;justify-content:space-between;height:80px;}
.brand{display:flex;align-items:center;gap:12px;cursor:pointer;}
.brand .mark{width:32px;height:36px;flex:none;}
.brand .name{display:flex;flex-direction:column;line-height:1;}
.brand .name b{color:var(--white);font-family:var(--display);font-size:15.5px;font-weight:700;letter-spacing:.03em;}
.brand .name span{color:var(--periwinkle);font-size:9.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin-top:5px;}
nav.links{display:flex;align-items:center;gap:2px;}
nav.links a{
color:#C3D2E4;font-size:14px;font-weight:500;padding:8px 11px;border-radius:3px;
position:relative;transition:color .18s ease,background .18s ease;
}
nav.links a:hover{color:var(--white);background:rgba(255,255,255,.06);}
nav.links a.active{color:var(--white);}
nav.links a.active::after{
content:"";position:absolute;left:11px;right:11px;bottom:2px;height:2px;background:var(--lilac);border-radius:2px;
}
.nav-cta{display:flex;align-items:center;gap:14px;}
.nav-cta .btn{padding:10px 18px;font-size:14px;}
.hamburger{display:none;background:none;border:0;cursor:pointer;padding:8px;}
.hamburger span{display:block;width:24px;height:2px;background:var(--white);margin:5px 0;transition:.25s;border-radius:2px;}

/* PAGE (SPA) — only .active is shown */
.page{display:none;animation:fade .45s ease both;}
.page.active{display:block;}
@keyframes fade{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
@media (prefers-reduced-motion:reduce){.page{animation:none;}}

section.band{padding:88px 0;}
.sec-head{max-width:660px;margin-bottom:50px;}
.sec-head h2{font-size:clamp(27px,3.6vw,40px);color:var(--navy);margin-top:16px;}
.sec-head p{color:var(--ink-soft);font-size:17px;margin-top:15px;}

/* HERO (the ONLY photo on the site) */
.hero{position:relative;color:var(--white);overflow:hidden;background:var(--navy-900);}
.hero .bg{
position:absolute;inset:0;
background:
linear-gradient(115deg, rgba(8,36,63,.95) 0%, rgba(14,61,120,.86) 46%, rgba(84,72,156,.72) 100%),
url('/img/banner-home.jpg') center/cover no-repeat;
}
.hero .rings{position:absolute;right:-200px;top:50%;transform:translateY(-50%);width:820px;height:820px;opacity:.55;pointer-events:none;}
.hero .inner{position:relative;padding:112px 0 96px;max-width:720px;}
.hero h1{font-size:clamp(34px,5.4vw,60px);color:var(--white);margin:22px 0 0;letter-spacing:-.03em;}
.hero h1 .accent{color:var(--lilac);}
.hero .lede{font-size:clamp(16px,2vw,19px);color:#CBD8E7;margin-top:22px;max-width:590px;}
.hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px;}

.trust{position:relative;background:var(--navy-900);border-top:1px solid var(--line-dark);}
.trust .wrap{display:flex;align-items:center;gap:12px 28px;flex-wrap:wrap;padding:20px 26px;}
.trust .label{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--periwinkle);font-weight:700;}
.trust .chips{display:flex;flex-wrap:wrap;gap:9px 20px;}
.trust .chips span{font-size:13.5px;color:#AFC2D6;font-weight:500;}

/* FEATURE ROW (home) */
.features{background:var(--paper);}
.feat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.feat{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:30px 26px;transition:transform .2s ease,box-shadow .2s ease;}
.feat:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.feat .emoji{font-size:26px;line-height:1;}
.feat h3{font-size:18px;color:var(--navy);margin:14px 0 8px;}
.feat p{font-size:15px;color:var(--ink-soft);}

/* SERVICES GRID */
.svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;}
.card{
background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:30px 28px;
position:relative;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.card::before{content:"";position:absolute;left:0;top:156px;bottom:30px;width:3px;background:var(--violet);transform:scaleY(0);transform-origin:top;transition:transform .25s ease;}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#C6D3E4;}
.card:hover::before{transform:scaleY(1);}
.card .ico-wrap{display:flex;align-items:center;gap:14px;margin-bottom:14px;}
.card .ico{width:26px;height:26px;color:var(--violet);flex:none;}
.card h3{font-size:19px;color:var(--navy);}
.card p{color:var(--ink-soft);font-size:15px;}

/* ABOUT */
.about-lead{background:linear-gradient(115deg,rgba(8,36,63,.93),rgba(14,61,120,.8) 55%,rgba(84,72,156,.68)),url('/img/banner-about.jpg') center/cover no-repeat;background-color:var(--navy-900);color:var(--white);position:relative;overflow:hidden;}
.about-lead .rings{position:absolute;left:-160px;bottom:-200px;width:560px;height:560px;opacity:.4;pointer-events:none;}
.about-lead .inner{position:relative;max-width:760px;padding:78px 0;}
.about-lead h2{color:var(--white);font-size:clamp(26px,3.6vw,40px);margin-top:16px;}
.about-lead p{color:#CBD8E7;font-size:17px;margin-top:18px;}

.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;}
.about-grid h3{font-size:22px;color:var(--navy);margin-bottom:10px;}
.about-grid p{color:var(--ink-soft);font-size:16px;}
.pillars{list-style:none;padding:0;margin:16px 0 0;}
.pillars li{padding:12px 0 12px 30px;position:relative;border-top:1px solid var(--line);font-size:15.5px;color:var(--ink);}
.pillars li:first-child{border-top:0;}
.pillars li::before{content:"";position:absolute;left:0;top:17px;width:12px;height:12px;background:var(--violet);clip-path:polygon(50% 0,100% 38%,82% 100%,18% 100%,0 38%);}

.founder{background:var(--mist);}
.founder-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:center;}
.founder-card{background:var(--navy);color:var(--white);border-radius:8px;padding:38px 32px;position:relative;overflow:hidden;}
.founder-card .rings-sm{position:absolute;right:-90px;bottom:-90px;width:280px;height:280px;opacity:.5;}
.founder-card .who{font-family:var(--display);font-size:22px;font-weight:700;position:relative;}
.founder-card .role{color:var(--lilac);font-size:13.5px;font-weight:600;margin-top:6px;position:relative;letter-spacing:.02em;}
.founder-card .meta{margin-top:20px;font-size:13px;color:#B7C7DA;line-height:1.9;position:relative;}
.certs h3{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--violet);margin-bottom:14px;}
.certs ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:9px 18px;}
.certs li{font-size:14px;color:var(--ink);font-weight:500;padding-left:22px;position:relative;}
.certs li::before{content:"";position:absolute;left:0;top:7px;width:10px;height:10px;background:var(--periwinkle);border-radius:2px;}

/* CONTACT */
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:start;}
.contact-actions{display:flex;flex-direction:column;gap:16px;margin-top:26px;}
.contact-actions .btn{justify-content:center;font-size:16px;padding:17px 24px;}
.info-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:30px 28px;}
.info-row{display:flex;gap:14px;padding:16px 0;border-top:1px solid var(--line);}
.info-row:first-child{border-top:0;padding-top:0;}
.info-row .ic{width:22px;height:22px;color:var(--violet);flex:none;margin-top:2px;}
.info-row b{display:block;font-family:var(--display);color:var(--navy);font-size:15px;}
.info-row span,.info-row a{font-size:14.5px;color:var(--ink-soft);}
.info-row a:hover{color:var(--violet);}

/* CTA BAND (shared) */
.cta-band{background:linear-gradient(120deg,var(--navy-900),var(--navy) 60%,var(--violet));color:var(--white);text-align:center;position:relative;overflow:hidden;}
.cta-band .rings{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:720px;height:720px;opacity:.3;pointer-events:none;}
.cta-band h2{position:relative;font-size:clamp(26px,4vw,42px);max-width:720px;margin:0 auto;color:var(--white);}
.cta-band p{position:relative;color:#CBD8E7;font-size:17px;margin:18px auto 0;max-width:540px;}
.cta-band .row{position:relative;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:32px;}

/* FOOTER (always visible) */
footer.site{background:#061626;color:#8CA3BA;padding:52px 0 28px;}
.foot-top{display:flex;justify-content:space-between;gap:32px;flex-wrap:wrap;border-bottom:1px solid var(--line-dark);padding-bottom:30px;}
.foot-brand{max-width:340px;}
.foot-brand .fname{color:var(--white);font-family:var(--display);font-weight:700;letter-spacing:.03em;font-size:15px;}
.foot-brand p{font-size:13.5px;margin-top:11px;line-height:1.7;}
.foot-cols{display:flex;gap:56px;flex-wrap:wrap;}
.foot-cols h4{color:#C3D2E4;font-size:12px;letter-spacing:.13em;text-transform:uppercase;margin:0 0 13px;font-family:var(--body);font-weight:700;}
.foot-cols a,.foot-cols span{display:block;font-size:14px;margin-bottom:9px;color:#8CA3BA;cursor:pointer;}
.foot-cols a:hover{color:var(--lilac);}
.foot-bottom{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:22px;font-size:12.5px;color:#5F7690;}

/* RESPONSIVE */
@media (max-width:940px){
.feat-grid{grid-template-columns:1fr;}
.svc-grid{grid-template-columns:1fr;}
.about-grid{grid-template-columns:1fr;gap:32px;}
.founder-grid{grid-template-columns:1fr;gap:32px;}
.contact-grid{grid-template-columns:1fr;gap:32px;}
}
@media (max-width:1130px){
nav.links{
position:absolute;top:80px;left:0;right:0;background:var(--navy-900);
flex-direction:column;align-items:stretch;gap:0;padding:8px 0;display:none;
border-bottom:1px solid var(--line-dark);
}
nav.links.open{display:flex;}
nav.links a{padding:14px 26px;border-radius:0;}
nav.links a.active::after{left:26px;right:auto;width:22px;}
.nav-cta .btn{display:none;}
.hamburger{display:block;}
section.band{padding:60px 0;}
.hero .inner{padding:78px 0 62px;}
.certs ul{grid-template-columns:1fr;}
}

/* Embedded brand logo — served as a file in the rebuilt site */
.st-logo{background-image:url('/img/sticc-logo.jpg');background-size:contain;background-position:left center;background-repeat:no-repeat;display:block;}
.brand .logo-chip{display:inline-flex;align-items:center;background:#FFFFFF;border-radius:8px;padding:7px 13px;box-shadow:0 3px 12px -5px rgba(0,0,0,.5);transition:transform .18s ease;}
.brand:hover .logo-chip{transform:translateY(-1px);}
.st-logo--nav{height:48px;width:122px;}
.foot-logo{display:inline-flex;background:#FFFFFF;border-radius:6px;padding:8px 14px;margin-bottom:15px;box-shadow:0 3px 12px -6px rgba(0,0,0,.6);}
.st-logo--foot{height:33px;width:84px;}
@media (max-width:760px){.st-logo--nav{height:40px;width:101px;}.brand .logo-chip{padding:7px 12px;}}

/* Page-top image banners (About uses .about-lead; Services/Contact use .page-banner) */
.page-banner{position:relative;overflow:hidden;color:var(--white);background-color:var(--navy-900);background-size:cover;background-position:center;background-repeat:no-repeat;}
.page-banner .inner{position:relative;max-width:720px;padding:86px 0 74px;}
.page-banner h2{color:var(--white);font-size:clamp(28px,4vw,44px);margin-top:16px;}
.page-banner p{color:#DCE6F0;font-size:17px;margin-top:16px;max-width:600px;}
/* Service card image strips */
.svc-media{height:134px;margin:-30px -28px 22px;background-size:cover;background-position:center;background-repeat:no-repeat;background-color:var(--navy);position:relative;}
.svc-media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,61,120,.12),rgba(14,61,120,.5));}

@media (max-width:760px){.page-banner .inner{padding:58px 0 50px;}.svc-media{height:118px;}}

/* FAQ accordion (native <details>) */
.faq-list{max-width:820px;margin:0 auto;}
.faq-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);margin-bottom:14px;overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease;}
.faq-item[open]{box-shadow:var(--shadow);border-color:#C6D3E4;}
.faq-item summary{list-style:none;cursor:pointer;padding:22px 26px;display:flex;justify-content:space-between;align-items:center;gap:18px;font-family:var(--display);font-weight:600;font-size:17px;color:var(--navy);}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary:hover{color:var(--violet);}
.faq-item summary:focus-visible{outline:3px solid var(--violet);outline-offset:-3px;border-radius:var(--radius);}
.faq-item .q-ico{flex:none;width:22px;height:22px;color:var(--violet);transition:transform .25s ease;}
.faq-item[open] .q-ico{transform:rotate(45deg);}
.faq-item .a{padding:0 26px 24px;color:var(--ink-soft);font-size:15.5px;line-height:1.75;}
@media (prefers-reduced-motion:reduce){.faq-item .q-ico{transition:none;}}
@media (max-width:760px){.faq-item summary{font-size:16px;padding:18px 20px;}.faq-item .a{padding:0 20px 20px;}}

/* Contact form */
.form-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:30px 28px;}
.form-card h3{font-size:20px;color:var(--navy);}
.form-card > p{color:var(--ink-soft);margin:8px 0 20px;font-size:15px;}
.field{margin-bottom:16px;}
.field label{display:block;font-size:13px;font-weight:600;color:var(--navy);margin-bottom:6px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.field input,.field select,.field textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:4px;font-family:var(--body);font-size:15px;color:var(--ink);background:#fff;transition:border-color .18s ease,box-shadow .18s ease;}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--violet);box-shadow:0 0 0 3px rgba(84,72,156,.12);}
.field textarea{min-height:130px;resize:vertical;}
.form-status{margin-top:14px;font-size:14px;line-height:1.6;}
.form-status.sending{color:var(--ink-soft);}
.form-status.ok{color:#1E7A46;font-weight:600;}
.form-status.err{color:#B23A3A;font-weight:600;}
@media (max-width:760px){.form-row{grid-template-columns:1fr;}}

/* Language toggle */
.lang-btn{display:inline-flex;align-items:center;gap:7px;background:transparent;border:1.5px solid rgba(255,255,255,.35);
color:#C3D2E4;font-family:var(--body);font-weight:600;font-size:13px;letter-spacing:.03em;
padding:8px 12px;border-radius:3px;cursor:pointer;transition:border-color .18s ease,color .18s ease;}
.lang-btn:hover{border-color:var(--lilac);color:var(--lilac);}
.lang-btn:focus-visible{outline:3px solid var(--violet);outline-offset:2px;}
.lang-btn svg{width:15px;height:15px;}
@media (max-width:760px){.lang-btn{margin-right:6px;}}

/* Blog */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.post{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease;}
.post:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.post .pmedia{height:140px;background-size:cover;background-position:center;background-color:var(--navy);position:relative;}
.post .pmedia::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,61,120,.1),rgba(14,61,120,.48));}
.post .pbody{padding:22px 24px 24px;flex:1;display:flex;flex-direction:column;}
.post .cat{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--violet);font-weight:700;}
.post h3{font-size:17px;color:var(--navy);margin:9px 0 8px;line-height:1.25;}
.post p{font-size:14px;color:var(--ink-soft);flex:1;}
.post .more{margin-top:16px;font-size:13.5px;font-weight:600;color:var(--violet);}
/* Reviews */
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.review{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;display:flex;flex-direction:column;}
.review .stars{color:#D9A43C;font-size:15px;letter-spacing:3px;margin-bottom:12px;}
.review .quote{font-size:15px;color:var(--ink);font-style:italic;line-height:1.7;flex:1;}
.review .who{display:flex;align-items:center;gap:12px;margin-top:18px;}
.review .avatar{width:40px;height:40px;border-radius:50%;background:var(--mist);display:flex;align-items:center;justify-content:center;flex:none;color:var(--violet);}
.review .avatar svg{width:20px;height:20px;}
.review .who b{color:var(--navy);font-family:var(--display);font-size:14.5px;display:block;}
.review .who span{color:var(--ink-soft);font-size:12.5px;}
/* Footer socials */
.foot-social-label{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:#C3D2E4;margin:16px 0 8px;font-weight:700;}
.socials{display:flex;gap:10px;}
.socials a{width:34px;height:34px;border:1px solid var(--line-dark);border-radius:5px;display:flex;align-items:center;justify-content:center;color:#8CA3BA;transition:color .18s ease,border-color .18s ease,background .18s ease;}
.socials a:hover{color:#fff;border-color:var(--violet);background:var(--violet);}
.socials svg{width:17px;height:17px;}
@media (max-width:940px){.blog-grid{grid-template-columns:1fr;}.review-grid{grid-template-columns:1fr;}}
#scorecard{
--paper:#FBF6EC;
--paper-2:#F3ECDE;
--paper-3:#E7DDCB;
--ink:#0E3D78;
--ink-60:rgba(22,32,43,.66);
--ink-38:rgba(22,32,43,.45);
--rule:#E7DDCB;
--brass:#54489C;
--rust:#B23A3A;
--moss:#1E7A46;
--steel:#3E6FA0;

--disp:'Space Grotesk',system-ui,sans-serif;
--body:'Inter',system-ui,sans-serif;
--mono:ui-monospace,Menlo,Consolas,monospace;
}
#scorecard *{box-sizing:border-box}
#scorecard{
margin:0;
background:var(--paper);
color:var(--ink);
font-family:var(--body);
font-size:16px;
line-height:1.55;
}
#scorecard .wrap{max-width:860px;margin:0 auto;padding:0 22px 80px}
#scorecard .masthead{border-bottom:2px solid var(--ink);padding:26px 0 14px;margin-bottom:34px}
#scorecard .eyebrow{
font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;
text-transform:uppercase;color:var(--ink-60);margin:0 0 14px;
}
#scorecard h1{
font-family:var(--disp);font-weight:700;font-size:clamp(38px,7.4vw,68px);
line-height:.94;letter-spacing:-.015em;text-transform:uppercase;margin:0 0 12px;
}
#scorecard h1 .thin{font-weight:400;color:var(--ink-60)}
#scorecard .standfirst{max-width:56ch;font-size:17px;color:var(--ink-60);margin:0 0 20px}
#scorecard .metastrip{
display:flex;flex-wrap:wrap;gap:0;border-top:1px solid var(--rule);
font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;
}
#scorecard .metastrip div{padding:9px 18px 9px 0;margin-right:18px;border-right:1px solid var(--rule);color:var(--ink-60)}
#scorecard .metastrip div:last-child{border-right:0;margin-right:0}
#scorecard .metastrip b{color:var(--ink);font-weight:600}
#scorecard .panel{background:var(--paper-2);border:1px solid var(--rule);padding:26px}
#scorecard h2{font-family:var(--disp);font-weight:600;text-transform:uppercase;letter-spacing:.02em;
font-size:26px;line-height:1.06;margin:0 0 14px}
#scorecard h3{font-family:var(--disp);font-weight:600;text-transform:uppercase;letter-spacing:.05em;
font-size:15px;margin:0 0 10px;color:var(--ink-60)}
#scorecard p{margin:0 0 14px}
#scorecard .hidden{display:none !important}
#scorecard button{font-family:inherit;font-size:inherit;cursor:pointer}
#scorecard :focus-visible{outline:2px solid var(--brass);outline-offset:3px}
#scorecard .btn{
display:inline-block;background:var(--ink);color:var(--paper);border:1px solid var(--ink);
font-family:var(--disp);font-weight:600;text-transform:uppercase;letter-spacing:.09em;
font-size:16px;padding:13px 30px;transition:background .16s,color .16s;
}
#scorecard .btn:hover{background:var(--brass);border-color:var(--brass);color:var(--ink)}
#scorecard .btn-ghost{
background:transparent;color:var(--ink-60);border:1px solid var(--rule);
font-family:var(--disp);font-weight:500;text-transform:uppercase;letter-spacing:.09em;
font-size:15px;padding:12px 22px;transition:color .16s,border-color .16s;
}
#scorecard .btn-ghost:hover{color:var(--ink);border-color:var(--ink)}
#scorecard .btn:disabled{opacity:.34;cursor:not-allowed}
#scorecard .btn:disabled:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
#scorecard .domain-index{list-style:none;padding:0;margin:0 0 26px;border-top:1px solid var(--rule)}
#scorecard .domain-index li{
display:flex;align-items:baseline;gap:14px;
padding:11px 0;border-bottom:1px solid var(--rule);
}
#scorecard .code{
font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.1em;
color:var(--brass);min-width:44px;
}
#scorecard .domain-index .nm{font-family:var(--disp);font-size:19px;font-weight:500;text-transform:uppercase;letter-spacing:.02em}
#scorecard .domain-index .ct{margin-left:auto;font-family:var(--mono);font-size:11px;color:var(--ink-38)}
#scorecard .fineprint{font-size:13.5px;color:var(--ink-38);margin-top:16px}
#scorecard .progress-rail{display:flex;gap:3px;margin-bottom:22px}
#scorecard .tick{height:5px;flex:1;background:var(--paper-3)}
#scorecard .tick.done{background:var(--ink)}
#scorecard .tick.now{background:var(--brass)}
#scorecard .qhead{display:flex;align-items:center;gap:12px;margin-bottom:18px}
#scorecard .chip{
font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.12em;
text-transform:uppercase;border:1px solid var(--brass);color:var(--brass);padding:4px 9px;
}
#scorecard .counter{font-family:var(--mono);font-size:11px;color:var(--ink-38);margin-left:auto;letter-spacing:.08em}
#scorecard .qtext{font-family:var(--disp);font-weight:600;font-size:clamp(24px,4.2vw,34px);
line-height:1.1;letter-spacing:-.005em;margin:0 0 24px}
#scorecard .opts{display:flex;flex-direction:column;gap:9px;margin-bottom:26px}
#scorecard .opt{
display:flex;align-items:flex-start;gap:14px;width:100%;text-align:left;
background:var(--paper-2);border:1px solid var(--rule);padding:15px 17px;
transition:border-color .14s,background .14s;
}
#scorecard .opt:hover{border-color:var(--ink);background:var(--paper-3)}
#scorecard .opt.sel{border-color:var(--brass);border-width:2px;padding:14px 16px;background:var(--paper-3)}
#scorecard .opt .mk{
font-family:var(--mono);font-size:11px;font-weight:600;color:var(--ink-38);
padding-top:3px;min-width:16px;
}
#scorecard .opt.sel .mk{color:var(--brass)}
#scorecard .opt .lb{font-size:16px;line-height:1.45}
#scorecard .navrow{display:flex;gap:12px;align-items:center}
#scorecard .gauge{margin:0 0 30px}
#scorecard .gauge-scale{position:relative;height:52px;margin-bottom:6px}
#scorecard .bands{display:flex;height:22px;position:absolute;bottom:0;left:0;right:0}
#scorecard .band{flex:1;border-right:1px solid var(--paper)}
#scorecard .band:last-child{border-right:0}
#scorecard .b1{background:#CDB5B0}
#scorecard .b2{background:#D5C29A}
#scorecard .b3{background:#CFC98F}
#scorecard .b4{background:#A9BE93}
#scorecard .b5{background:#7BA487}
#scorecard .needle{
position:absolute;bottom:0;width:2px;height:38px;background:var(--ink);
transform:translateX(-1px);transition:left 1.1s cubic-bezier(.22,1,.36,1);
}
#scorecard .needle::before{
content:"";position:absolute;top:-1px;left:-6px;
border-left:7px solid transparent;border-right:7px solid transparent;
border-top:9px solid var(--ink);
}
#scorecard .needle-val{
position:absolute;top:-30px;left:50%;transform:translateX(-50%);
font-family:var(--mono);font-size:12px;font-weight:600;white-space:nowrap;
}
#scorecard .band-labels{display:flex;font-family:var(--mono);font-size:9.5px;letter-spacing:.07em;
text-transform:uppercase;color:var(--ink-38)}
#scorecard .band-labels span{flex:1;padding-top:6px}
#scorecard .verdict{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap;
border-bottom:2px solid var(--ink);padding-bottom:18px;margin-bottom:26px}
#scorecard .bignum{font-family:var(--disp);font-weight:700;font-size:88px;line-height:.8;letter-spacing:-.03em}
#scorecard .bignum small{font-size:26px;color:var(--ink-38);font-weight:500}
#scorecard .verdict-txt .lvl{font-family:var(--disp);font-weight:600;font-size:30px;text-transform:uppercase;
line-height:1;letter-spacing:.01em;margin-bottom:5px}
#scorecard .verdict-txt .sub{font-size:15px;color:var(--ink-60);max-width:44ch}
#scorecard .dbar{border-bottom:1px solid var(--rule);padding:13px 0}
#scorecard .dbar-top{display:flex;align-items:baseline;gap:12px;margin-bottom:7px}
#scorecard .dbar-top .nm{font-family:var(--disp);font-size:18px;font-weight:500;text-transform:uppercase;letter-spacing:.02em}
#scorecard .dbar-top .sc{margin-left:auto;font-family:var(--mono);font-size:12px;font-weight:600}
#scorecard .track{height:9px;background:var(--paper-3);position:relative}
#scorecard .fill{height:100%;transition:width .9s cubic-bezier(.22,1,.36,1)}
#scorecard .f-low{background:var(--rust)}
#scorecard .f-mid{background:var(--brass)}
#scorecard .f-high{background:var(--moss)}
#scorecard .gap{border-left:3px solid var(--rust);padding:2px 0 2px 16px;margin-bottom:20px}
#scorecard .gap .gnm{font-family:var(--disp);font-size:20px;font-weight:600;text-transform:uppercase;
letter-spacing:.02em;margin-bottom:5px}
#scorecard .gap .gwhy{font-size:15px;color:var(--ink-60);margin-bottom:9px}
#scorecard .gap .gdo{font-size:15px}
#scorecard .gap .gdo b{font-family:var(--mono);font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;
color:var(--brass);display:block;margin-bottom:3px;font-weight:600}
#scorecard .capture{background:var(--ink);color:var(--paper);padding:30px;margin-top:34px}
#scorecard .capture h2{color:var(--paper)}
#scorecard .capture p{color:rgba(255,255,255,.72);max-width:52ch}
#scorecard .fields{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
#scorecard .capture input{
flex:1 1 210px;background:transparent;border:1px solid rgba(255,255,255,.32);
color:var(--paper);font-family:var(--body);font-size:15px;padding:13px 14px;
}
#scorecard .capture input::placeholder{color:rgba(255,255,255,.45)}
#scorecard .capture input:focus{border-color:var(--brass);outline:none}
#scorecard .capture .btn{background:var(--brass);border-color:var(--brass);color:var(--ink)}
#scorecard .capture .btn:hover{background:var(--paper);border-color:var(--paper)}
#scorecard .note{font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:rgba(255,255,255,.5);margin-top:14px}
#scorecard .sitefoot{margin-top:46px;padding-top:16px;border-top:1px solid var(--rule);
font-family:var(--mono);font-size:11px;letter-spacing:.05em;color:var(--ink-38);
display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}
@media (max-width:560px){#scorecard .bignum{font-size:66px}
#scorecard .metastrip div{border-right:0;margin-right:0;padding-right:0;width:100%}
#scorecard .band-labels span{font-size:8px}}
@media (prefers-reduced-motion:reduce){#scorecard *{transition:none !important}}
@media print{#scorecard .capture, #scorecard .navrow, #scorecard .sitefoot{display:none}
#scorecard{background:#fff}}

/* ---- scorecard: container + brand overrides ---- */
#scorecard{background:var(--page);padding:34px 0 0;}
#scorecard .wrap{max-width:880px;margin:0 auto;padding:0 26px 70px;}
#scorecard .btn{background:#54489C;border-color:#54489C;color:#fff;border-radius:3px;}
#scorecard .btn:hover{background:#6E5FBE;border-color:#6E5FBE;color:#fff;}
#scorecard .btn:disabled:hover{background:#54489C;border-color:#54489C;color:#fff;}
#scorecard .capture{background:#08243F;border-radius:6px;}
#scorecard .capture .btn{background:#54489C;border-color:#54489C;color:#fff;}
#scorecard .capture .btn:hover{background:#6E5FBE;border-color:#6E5FBE;}
#scorecard .capture input{border-radius:3px;}
#scorecard .panel,#scorecard .opt{border-radius:4px;}
#scorecard h1{font-weight:700;}
#scorecard .sitefoot{margin-top:40px;}
/* back bar */
.sc-backbar{max-width:880px;margin:0 auto;padding:0 26px 14px;}
.sc-backbar a{font-size:14px;font-weight:600;color:var(--violet);}
.sc-backbar a:hover{color:var(--navy);}
/* promo block on the AI Governance page */
.sc-promo{display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap;
background:var(--white);border:1px solid var(--line);border-left:4px solid var(--violet);
border-radius:var(--radius);padding:26px 28px;}
.sc-promo h3{font-size:20px;color:var(--navy);margin:10px 0 8px;}
.sc-promo p{color:var(--ink-soft);font-size:15px;max-width:62ch;}
.sc-promo .btn{flex:none;}


.page{display:block;animation:none;}
main{display:block;}
.brand{text-decoration:none;}
.brand img.st-logo{background:none;object-fit:contain;}
.st-logo{background-image:none;}
img.st-logo--nav{height:48px;width:122px;display:block;}
img.st-logo--foot{height:33px;width:84px;display:block;}
.page-banner h1,.about-lead h1{color:var(--white);font-size:clamp(28px,4vw,44px);margin-top:16px;line-height:1.12;}
.about-lead h1{font-size:clamp(26px,3.6vw,40px);}
.hero .hero-cta,.page-banner .hero-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px;}
h2.h3{font-size:22px;color:var(--navy);margin-bottom:10px;}
.certs h2.h3{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--violet);margin-bottom:14px;}
.form-card h2.h3{font-size:20px;color:var(--navy);}
.card h2{font-size:19px;color:var(--navy);}
a.card{display:block;color:inherit;}
a.card:focus-visible{outline:3px solid var(--violet);outline-offset:3px;}
.card::before{top:156px;}
.svc-grid a.card .svc-media{margin:-30px -28px 22px;}

/* service detail pages */
.svc-detail{display:grid;grid-template-columns:1.4fr .8fr;gap:48px;align-items:start;}
.side-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:26px 26px;position:sticky;top:100px;}
.side-card h3{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--violet);margin-bottom:10px;}
.side-card p{font-size:15px;color:var(--ink);}
ul.refs{list-style:none;padding:0;margin:0;}
ul.refs li{font-size:14px;color:var(--ink-soft);padding:7px 0 7px 18px;position:relative;border-top:1px solid var(--line);line-height:1.5;word-break:break-word;}
ul.refs li:first-child{border-top:0;}
ul.refs li::before{content:"";position:absolute;left:0;top:14px;width:8px;height:8px;background:var(--periwinkle);border-radius:2px;}
.feat .step{width:34px;height:34px;border-radius:50%;background:var(--violet);color:#fff;font-family:var(--display);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:15px;}
.feat h3{margin-top:14px;}

/* long-form prose */
.prose{max-width:72ch;}
.prose h2{font-size:clamp(22px,2.6vw,28px);color:var(--navy);margin:34px 0 12px;line-height:1.2;}
.prose h3{font-size:18px;color:var(--navy);margin:28px 0 10px;}
.prose p{color:var(--ink);font-size:16.5px;line-height:1.75;margin:0 0 16px;}
.prose .lede-p{font-size:19px;color:var(--ink-soft);line-height:1.65;}
.prose ul,.prose ol{margin:0 0 18px;padding-left:22px;}
.prose li{margin:0 0 8px;font-size:16px;line-height:1.7;color:var(--ink);}
.prose ul.pillars{padding-left:0;margin-top:14px;}
.prose ul.pillars li{padding-left:30px;font-size:15.5px;}
.prose strong{color:var(--navy);}
.prose a{color:var(--violet);font-weight:600;}
.prose a:hover{color:var(--navy);}
.prose h3 + ul.refs{margin-top:6px;}
.prose ul.refs li{font-size:13.5px;}

/* articles */
.article-head{background:var(--paper);border-bottom:1px solid var(--line);padding:44px 0 34px;}
.article-head h1{font-size:clamp(28px,4.2vw,44px);color:var(--navy);margin:14px 0 18px;max-width:22ch;line-height:1.12;}
.crumbs{font-size:13px;color:var(--ink-soft);margin-bottom:18px;}
.crumbs a{color:var(--violet);}
.byline{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:14px;color:var(--ink-soft);}
.byline a{color:var(--navy);font-weight:600;}
.byline .dot{color:var(--periwinkle);}
.byline-logo{height:14px;width:auto;display:none;}
.article-hero{height:clamp(180px,32vw,380px);background-size:cover;background-position:center;position:relative;}
.article-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,61,120,.35),rgba(14,61,120,.15));}
.article-body{margin:44px auto 70px;}
.article-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;background:var(--white);border:1px solid var(--line);border-left:4px solid var(--violet);border-radius:var(--radius);padding:24px 26px;margin:40px 0 28px;}
.article-cta h3{margin:8px 0 0;font-size:19px;}
.author-box{display:flex;gap:18px;align-items:flex-start;background:var(--mist);border-radius:var(--radius);padding:22px 24px;font-size:14.5px;color:var(--ink-soft);line-height:1.65;}
.author-box b{color:var(--navy);}
.author-avatar{flex:none;width:52px;height:52px;border-radius:50%;background:var(--navy);color:#fff;font-family:var(--display);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:17px;}
.post .pmedia{display:block;}
.post h3 a{color:inherit;}
.post h3 a:hover{color:var(--violet);}
.post .pmeta{font-size:12.5px;color:var(--ink-soft);margin-top:10px;}
.post .more{display:inline-block;}

@media (max-width:940px){
.svc-detail{grid-template-columns:1fr;gap:28px;}
.side-card{position:static;}
}
