/* Bloom blue refresh — professional, fresh, neat */
:root{
  --ink:#11243a;
  --dark:#0c1a2a;
  --panel:#17314d;
  --paper:#f3f6fa;
  --white:#fcfcfe;
  --brass:#7fb2e3;
  --gold-dark:#3c78bd;
  --muted:#c5d5e5;
  --muted-dark:#5f7388;
  --line:rgba(201,218,234,.18);
  --line-light:#d8e2ec;
}
body{background:var(--ink);color:var(--paper)}
::selection{background:#b7d4ee;color:#0f2235}
:focus-visible{outline-color:#8dbde8}
.section-light :focus-visible{outline-color:#3c78bd}
.button-brass{background:#7fb2e3;color:#11253a}
.button-brass:hover{background:#9ac1e8}
.button-outline{border-color:#6f89a4}
.text-link:hover{color:#b7d4ee}
.section-light .text-link:hover,.quiet-button:hover{color:#3c78bd}
.skip-link{background:#f3f6fa;color:#11243a}

/* Header / ticker */
.market-ticker{background:#0c1826;border-bottom:1px solid #22384d;color:#b7cfe1}
.market-ticker:before{background:linear-gradient(90deg,#0c1826,transparent)}
.market-ticker:after{background:linear-gradient(270deg,#0c1826,transparent)}
.market-ticker-label{color:#eef4f8}
.market-ticker b{color:#99c2ea}
.market-ticker i{color:#7eaad2}
.topline{background:#0b1521;color:#d2dfeb}
.topline i{color:#99c2ea}
.site-header{
  background:
    radial-gradient(ellipse at 8% 0,rgba(75,132,192,.26) 0,transparent 43%),
    linear-gradient(105deg,#17304b,#0d1a2b 72%);
  border-bottom-color:#547fa6;
  box-shadow:0 9px 28px rgba(4,9,22,.24);
}
.site-header .brand-emblem{border-color:#b0baee;background:linear-gradient(150deg,#3b6f9f,#173451);box-shadow:inset 0 0 0 5px #14304a,0 4px 18px rgba(0,0,0,.18)}
.site-header .brand-type small{color:#dce8f3}
.site-header .brand-type small:before,.site-header .brand-type small:after{background:#99c2ea}
.site-header .desktop-nav a{border-color:#83aad133;color:#edf5fa;background:#ffffff07;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.site-header .desktop-nav a:hover{color:#fff;background:#285f90;border-color:#81afd8;box-shadow:0 5px 16px rgba(2,6,17,.22),inset 0 1px 0 rgba(255,255,255,.12)}
.site-header .desktop-nav a:focus-visible{background:#285f90;border-color:#d7ebfb;outline:2px solid #f2f8fd}
.site-header .desktop-nav a[aria-current="location"]{color:#163451;background:#e5eff8;border-color:#e5eff8}
.site-header .header-cta{background:#e5eff8;border-color:#e5eff8;color:#15324e}
.site-header .header-cta-arrow{border-color:#7ba7d1}
.site-header .mobile-nav{background:#0f1d2d;border-color:#285170}
.site-header .mobile-nav a{border-color:#285170;color:#f5f8fb}
.site-header .mobile-nav a:hover,.site-header .mobile-nav a[aria-current='location']{background:#1f4a70}
.site-header .mobile-nav a:last-child{background:#e5eff8;color:#153951}
.site-header .mobile-nav a:last-child:before{color:#4e79a1}
.header-progress>span{background:#7fb2e3}
.menu-button{border-color:#7da5c8}

/* Hero / intro */
.hero .eyebrow,.small-star,.brass-text,.hero h1>span{color:#99c2ea}
.hero-description,.hero-note,.hero-bottom,.section-heading h2+p{color:#cad8e4}
.status-dot{background:#99c2ea;box-shadow:0 0 0 4px rgba(151,194,234,.12)}
.hero-bottom{border-top-color:rgba(201,218,234,.18)}
.hero-bottom i{color:#99c2ea}
.intro-strip{background:#1d3c5a;border-block:1px solid rgba(201,218,234,.16)}
.intro-strip .shell>div:first-child strong{color:#99c2ea}
.intro-strip .shell>div:not(:first-child){border-left-color:rgba(201,218,234,.16)}
.intro-strip span{color:#d1deea}

/* Light sections baseline */
.section-light{background:var(--paper);color:var(--ink)}
.section-light .section-heading>.eyebrow{color:#5c7792}
.section-light .section-heading h2+p,.section-light p,.section-light li,.section-light .form-note,.section-light .microcopy,.section-light .input-intro{color:#5a7285}
.eyebrow{letter-spacing:.12em}

/* Key functions */
.key-functions{background:#f3f7fa;color:#18334b}
.key-functions .functions-heading p,.key-functions .functions-note{color:#586f82}
.key-functions .function-card{background:#fff;border-color:#d8e5ef;color:#18334b;box-shadow:0 6px 20px rgba(26,35,66,.05)}
.key-functions .function-card:hover{border-color:#90b8da;box-shadow:0 11px 28px rgba(26,35,66,.08)}
.key-functions .function-icon{background:#eef4f8;color:#4d88be}
.key-functions .function-card p{color:#566f82}
.key-functions .function-link{border-top-color:#dce7ef;color:#2f6899}
.key-functions a:focus-visible{outline-color:#4e84c1}
.key-functions .functions-note a{color:#2f6899;text-decoration-color:#b7cee4}

/* Diagnosis */
.diagnosis-tab{border-color:#d8e2ec;color:#18344c}
.diagnosis-tab>span{color:#5c7792}
.diagnosis-tab[aria-selected=true]{background:#e9f1f7;border-left-color:#3c78bd}
.diagnosis-tab:hover{background:#eef1f9}
.diagnosis-panel{background:#edf3f8}
.panel-top{color:#607991}.panel-symbol{color:#3c78bd}
.diagnosis-panel>p,.check-list li{color:#566f81}
.check-list li:before{color:#3c78bd}

/* Calculator */
.calculator-section{background:#0d1828}
.calculator{border-color:#416888;box-shadow:0 25px 80px rgba(0,0,0,.24)}
.calculator-inputs{background:#f3f6fa}
.calculator-results{background:#1d3956}
.calculator-top .quiet-button,.target-field .range-ends>span:first-child,.comparison strong:last-child,.result-amount,.period-switch button[aria-pressed=true],.result-breakdown strong,.net-result strong{color:#11253a}
.results-heading .eyebrow,.result-label,.result-subtitle,.result-breakdown small,.net-result small{color:#d7e1eb}
.presets button,.compact-number,.number-wrap{border-color:#b5c8d8}
.presets button:hover{border-color:#3c78bd}
.presets button[aria-pressed=true]{background:#173451;color:#f5f8fb;border-color:#173451}
.number-wrap>span,.range-ends,.calc-field small,.microcopy{color:#607586}
.number-wrap input,.compact-number input{color:#18334b}
.rate-field input[type=range]::-webkit-slider-runnable-track{background:#d3dee7}
.rate-field input[type=range]::-webkit-slider-thumb{background:#18354f;border-color:#f3f6fa;box-shadow:0 0 0 1px #18354f}
.target-field input[type=range]::-webkit-slider-thumb{background:#7eafdb;box-shadow:0 0 0 1px #7eafdb}
.rate-field input[type=range]::-moz-range-track{background:#d3dee7}
.rate-field input[type=range]::-moz-range-thumb{background:#18354f;border-color:#f3f6fa}
.target-field input[type=range]::-moz-range-thumb{background:#7eafdb}
.period-switch,.bar-track{background:#102132;border-color:#5d7a96}
.period-switch button{color:#d9e4ec}
.period-switch button[aria-pressed=true]{background:#7fb2e3}
.bar-track>span{background:#95bbda}
.bar-track #target-bar{background:#7fb2e3}
.net-result{background:#2d5c84;border-color:#6c9dc3}
.result-caveat,.method-note{color:#b7cdde}

/* Friction check */
.friction-section{background:#eef4f7;color:#11243a}
.friction-section .section-heading>.eyebrow,.friction-form-head .quiet-button,.friction-field-number{color:#3c78bd}
.friction-section .section-heading h2+p,.friction-progress-label,.friction-detail,.friction-privacy,.friction-method,.friction-status,.friction-source{color:#607486}
.friction-app{border-color:#c6d6e3}
.friction-inputs{background:#fff}
.friction-progress{background:#dbe5ed;accent-color:#3c78bd}.friction-progress::-webkit-progress-bar{background:#dbe5ed}.friction-progress::-webkit-progress-value,.friction-progress::-moz-progress-bar{background:#3c78bd}
.friction-field{border-bottom-color:#dfe8ef}
.friction-choices span{border-color:#c4d6e3;color:#33526c}
.friction-choices input:checked+span{background:#17344e;color:#f5f8fb;border-color:#17344e}
.friction-choices input:focus-visible+span{outline-color:#3c78bd}
.friction-choices label:hover span{border-color:#3c78bd}
.friction-results{background:#1b3854;color:#f5f8fb}
.friction-results>.eyebrow,.friction-output>.eyebrow,.friction-day,.friction-crosslink strong{color:#99c2ea}
.friction-readout{border-bottom-color:#6687a7}
.friction-ring{background:conic-gradient(#99c2ea var(--friction-angle),#53708d 0)}
.friction-ring:before{background:#1b3854}
.friction-ring>div{color:#d0dbe6}.friction-ring strong{color:#99c2ea}
.friction-readout p,.friction-output>p:not(.eyebrow),.friction-plan p,.friction-empty,.friction-empty small{color:#d9e2ea}
.friction-map-row strong{color:#d0dce8}.friction-map-row strong:before{border-color:#9fc0dc}.friction-map-row[data-state='2'] strong{color:#eaf4fb}.friction-map-row[data-state='2'] strong:before{background:#b7d8ef;border-color:#b7d8ef}.friction-map-row[data-state='1'] strong:before{background:#7fb2e3;border-color:#7fb2e3}.friction-map-row[data-state='0'] strong:before{background:#96c2e2;border-color:#96c2e2}
.friction-empty{border-color:#7aa3c4}
.friction-output{border-top-color:#6687a7}
.friction-plan li{border-left-color:#88b0d2}
.friction-plan small,.friction-crosslink span{color:#bfd2e1}
.friction-actions .quiet-button{color:#f5f8fb}
.friction-crosslink{border-color:#6488a9}

/* Other dark sections */
.training-lab{background:#11253a;border-color:#4a6d88}
.training-lab .section-heading>.eyebrow,.lab-index,.lab-panel-meta,.lab-move span,.training-outcomes span:first-child,.lab-foot .text-link{color:#99c2ea}
.lab-shell{background:#1b3954;border-color:#507799}
.lab-intro,.training-outcomes,.lab-tabs{border-color:#507799}
.lab-intro h3,.lab-panel h3,.lab-move strong,.training-outcomes strong{color:#f5f8fb}
.lab-intro p,.lab-panel>p,.lab-foot>span{color:#c7cee7}
.lab-tab{color:#c0d5e2}.lab-tab[aria-selected=true],.lab-tab:hover{color:#f5f8fb}.lab-tab:after{background:#7fb2e3}
.process-section{background:#122739}.process-grid>li{border-color:#59809c}
.quote-section{background:linear-gradient(90deg,rgba(15,19,36,.92),rgba(15,19,36,.62)),url('forest-connections.jpg') center 63%/cover;min-height:520px;display:flex;align-items:center}
.about-section{background:#0e1f30}
.contact-section,footer{background:#0b1521}
.booking-card{background:#173451}
.about-copy p,.contact-copy p,.service-topline,.quote-section p{color:#c6cde7}
.about-recommendations,.linkedin-proof strong,.linkedin-proof span{color:#d9dff8}
.recommendation-card{background:#fff;border-color:#d8e5ef}
.recommendation-card--paul{background:#f6f9fb;border-color:#dde1ee}
.recommendation-topline,.recommendation-card--paul .recommendation-topline,.recommendation-person>div>span,.recommendation-source,.recommendation-note{color:#657091}
.recommendation-summary{color:#586f82}
.recommendation-person{border-color:#dbe0ef}
.recommendation-themes li{background:#edf5fa;color:#334679;border-color:#d4daf1}
.projects-section,.recommendations-section,.faq-section{background:#f3f6fa}
.project-art{border-color:#d0d7e9;filter:saturate(.85)}
.project-info p,.faq-list details p{color:#5a6482}
.faq-list details{border-color:#dae3ea}
.faq-list summary{color:#18344d}

/* Contact/forms */
.direct-contact a{color:#f2f8fd}
.brief-form{background:#f6f9fb;border-color:#dbe5ec;color:#18344d}
.brief-form h3,.brief-form label,.brief-form strong{color:#18324b}
.brief-form label span,.form-note,.form-status,.brief-form small{color:#5d6685}
.brief-form input,.brief-form textarea,.brief-form select{background:#fff;border:1px solid #c7cfe7;color:#18344d}
.brief-form input:focus,.brief-form textarea:focus,.brief-form select:focus{border-color:#7f8bdd;box-shadow:0 0 0 3px rgba(154,163,236,.18);outline:none}
.calculation-attachment{background:#eef4f8;border:1px solid #d5dbf1}
.form-note a,.form-status a,.direct-contact a:hover{color:#4f8ac6}

/* Service cards / icons */
.service-card{background:#fbfbfd}
.service-card--featured{background:#eef4f8}
.service-card:hover{background:#fff}
.service-icon,.service-number,.service-card--featured:after,.service-card--featured .service-card-link{color:#4f8ac6;stroke:#4f8ac6}
.service-card--featured .service-card-link{border-color:#d6ddef}

/* LinkedIn banner + misc */
.linkedin-banner{background:linear-gradient(135deg,#eef4f8,#e5e9fb);border-color:#d0d8f0;color:#172042}
.linkedin-mark,.linkedin-brandmark{background:#4f8ac6;color:#fff}
.linkedin-copy p{color:#56617f}
.portrait-proof{color:#c7cee8}

/* Service map / locations */
.locations-section{background:linear-gradient(180deg,#eef0f8 0%,#f5f8fb 100%);border-block:1px solid #d7dbed;color:#18324b}
.locations-intro .eyebrow{color:#6786a1!important}
.locations-intro h2{color:#1a2242}
.locations-intro>p,.map-detail-copy>p:last-child{color:#5a6585}
.locations-intro>p strong{color:#2d396f}
.service-map-shell{border-color:#d3e0e8;background:#f9faff;box-shadow:0 28px 70px rgba(23,30,59,.1)}
.service-map-card{border-right-color:#d3e0e8;background:#fff}
.service-map-toolbar{border-bottom-color:#dbe5ed;background:rgba(255,255,255,.97)}
.service-map-toolbar>span{color:#687294}
.service-map-toolbar>div{border-color:#cfd5e9;background:#edf5fa}
.map-mode-button{color:#566180}
.map-mode-button:hover{background:#fff;color:#283264}
.map-mode-button.is-active,.map-mode-button[aria-pressed=true]{background:#2c6897;color:#fff;box-shadow:0 5px 16px rgba(17,23,46,.15)}
.service-map-stage{background:radial-gradient(circle at 73% 78%,rgba(147,158,231,.16),transparent 29%),linear-gradient(145deg,#18223f 0%,#10182d 62%,#0b1120 100%)}
.service-map-stage:before{background:linear-gradient(rgba(205,213,248,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(205,213,248,.03) 1px,transparent 1px)}
.service-map-stage:after{box-shadow:inset 0 0 80px rgba(2,7,18,.42)}
.service-map-canvas{border-color:rgba(174,183,235,.22);background:#10172d;box-shadow:0 22px 55px rgba(3,7,18,.35)}
.service-map-canvas:before{background:linear-gradient(90deg,rgba(8,14,28,.18),transparent 22%,transparent 74%,rgba(8,14,28,.08))}
.map-glow--canada{background:radial-gradient(ellipse,rgba(120,132,216,.14),rgba(120,132,216,0) 69%)}
.map-glow--ontario{background:radial-gradient(circle,rgba(181,192,255,.22),rgba(181,192,255,0) 68%)}
.map-status-card{border-color:rgba(185,194,239,.34);background:rgba(10,17,34,.74);color:#f0f3ff}
.map-status-card span{color:#a9b3ef}
.map-status-card small{color:#c0c8ee}
.map-pin>i{border-color:#eff2ff;background:#99a3eb;box-shadow:0 0 0 5px rgba(160,171,240,.16),0 0 0 10px rgba(160,171,240,.06)}
.map-pin>span{border-color:rgba(194,202,240,.34);background:rgba(10,16,34,.95);color:#f7f8fe}
.map-pin>span:after{background:rgba(10,16,34,.95);border-right-color:rgba(194,202,240,.34);border-bottom-color:rgba(194,202,240,.34)}
.map-pin small{color:#acb5ef}
.map-pin:hover>i,.map-pin:focus-visible>i,.map-pin.is-active>i{background:#e7ebff;box-shadow:0 0 0 6px rgba(171,182,247,.2),0 0 0 14px rgba(171,182,247,.08)}
.map-remote-button{border-color:rgba(164,174,230,.34);background:rgba(11,18,35,.76);color:#f1f4ff;opacity:.22}
.map-remote-button span{color:#aeb7f0}.map-remote-button small{color:#c4cbef}
.map-remote-button:hover,.map-remote-button:focus-visible,.map-remote-button.is-active{background:rgba(44,58,103,.94);border-color:rgba(211,218,255,.72)}
.service-map-shell[data-map-mode=local] .map-remote-button{opacity:.14}
.service-map-shell[data-map-mode=virtual] .service-map-canvas>img{filter:saturate(.84) brightness(.95)}
.service-map-legend{border-top-color:#dbe5ed;background:#fff;color:#658198}
.legend-home{background:#5868b8;box-shadow:0 0 0 3px rgba(88,104,184,.12)}
.legend-local{background:#95a4d9}.legend-remote{border-top-color:#95a4d9}
.service-map-detail{background:linear-gradient(180deg,#f6f7fc 0%,#eef4f8 100%);color:#18334c}
.map-detail-copy{border-bottom-color:#dbe5ec;min-height:174px}
.map-detail-kicker{color:#6673a1!important}
.service-map-detail h3{color:#18334c}
.service-map-detail .location-list{gap:10px;grid-template-columns:1fr}
.service-map-detail .location-list>button{padding:15px 38px 15px 15px;border-color:#d8def0;border-radius:10px;background:#fbfdfe;color:#1a2343;box-shadow:0 1px 0 rgba(0,0,0,.02)}
.service-map-detail .location-list>button:after{color:#7280a6}
.service-map-detail .location-list>button:hover{background:#edf0fb;border-color:#ccd4ea}
.service-map-detail .location-list>button.is-active{background:#e3e8fb;border-color:#c3cbea}
.service-map-detail .location-list>button.is-active:after{color:#374883}
.service-map-detail .location-list span{color:#6786a1}
.service-map-detail .location-list small{color:#5d6887}
.service-map-cta{border-color:#2c6897;background:#2c6897;color:#fff!important}
.service-map-cta:hover{background:#26355f;border-color:#26355f;color:#fff!important}

/* Footer / simple pages */
footer a:hover{color:#b7d4ee}
.document-main{color:#f2f8fd}
.document-main p,.document-main li{color:#d0d6ef}
.document-main a{color:#c0c7ff}

/* Asset polish */
.brand img,.brand-emblem img{filter:none}
@media(max-width:700px){
  .locations-section{padding-block:64px}
  .locations-intro h2{font-size:38px}
}
@media(prefers-reduced-motion:reduce){
  .site-header .desktop-nav a,.button,.service-card,.key-functions .function-card,.service-map-cta{transition:none}
  .site-header .desktop-nav a:hover,.button:hover,.service-card:hover,.key-functions .function-card:hover{transform:none}
}


/* Final visual polish pass */
.quote-section{
  position:relative;
  isolation:isolate;
  background:
    linear-gradient(90deg,rgba(16,21,41,.68),rgba(16,21,41,.32)),
    url('forest-connections.jpg') center 56%/cover;
  border-block-color:#4f5b8e;
}
.quote-section:before{
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 78% 44%,rgba(173,184,248,.16),transparent 28%);
  pointer-events:none;
  z-index:0;
}
.quote-section .shell{position:relative;z-index:1;align-items:end}
.quote-section .eyebrow{color:#c0c7ff}
.quote-section blockquote{text-shadow:0 2px 18px rgba(0,0,0,.16);max-width:820px}
.quote-attribution{color:#e7eafe}
.quote-attribution span{color:#c6cdeb}

.project-card{
  border-bottom-color:#cfd6ea;
  transition:transform .2s ease,border-color .2s ease;
}
.project-card:hover{transform:translateY(-2px);border-bottom-color:#9aa6da}
.project-art{
  filter:saturate(.98) contrast(1.02) brightness(1.02);
  box-shadow:0 10px 26px rgba(26,35,66,.06);
}
.project-card:hover .project-art{transform:translateY(-5px) scale(1.01)}

.recommendation-card{
  box-shadow:0 10px 28px rgba(25,34,66,.05);
}
.recommendation-card:hover{
  box-shadow:0 14px 34px rgba(25,34,66,.08);
}

.linkedin-banner{
  box-shadow:0 10px 26px rgba(40,54,101,.08);
}

.brief-form,
.booking-card{
  box-shadow:0 18px 40px rgba(13,18,33,.12);
}

.service-map-shell{box-shadow:0 30px 75px rgba(23,30,59,.12)}
.service-map-detail .location-list>button:hover{transform:translateX(2px);box-shadow:0 8px 18px rgba(44,58,103,.06)}

@media(prefers-reduced-motion:reduce){
  .project-card,.recommendation-card{transition:none}
  .project-card:hover,.project-card:hover .project-art{transform:none}
}

/* Hero practice panel — final indigo alignment */
.portrait-sidecar{
  border-color:rgba(157,168,226,.42)!important;
  background:
    linear-gradient(rgba(165,176,235,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(165,176,235,.055) 1px,transparent 1px),
    #15324e!important;
  background-size:32px 32px!important;
  box-shadow:10px 10px 0 #0b1022!important;
}
.sidecar-mark{
  border-bottom-color:rgba(190,199,239,.18)!important;
}
.sidecar-mark:before{
  color:#8fa0e8!important;
}
.sidecar-mark span{
  color:#d8ddf7!important;
}
.portrait-sidecar li{
  border-bottom-color:rgba(190,199,239,.16)!important;
}
.portrait-sidecar li>span{
  color:#95a4e9!important;
}
.portrait-sidecar strong{
  color:#f5f6fd!important;
}
.portrait-sidecar small{
  color:#bfc7ea!important;
}
.portrait-sidecar>p{
  color:#aeb8ec!important;
}
.hero-founder-portrait{
  border-left-color:rgba(190,199,239,.18)!important;
}
.hero-founder-portrait .portrait-frame{
  border-color:#f1f6fa!important;
  background:#f1f6fa!important;
  box-shadow:8px 8px 0 #3d497b!important;
}
.hero-founder-portrait>strong{
  color:#f7f8fe!important;
}
.hero-founder-portrait>span{
  color:#c9d0ee!important;
}
@media(max-width:700px){
  .hero-founder-portrait .portrait-frame{box-shadow:5px 5px 0 #3d497b!important}
}
@media(max-width:430px){
  .hero-founder-portrait{border-top-color:rgba(190,199,239,.18)!important}
}


/* Contrast audit patch */
.section-light h2,
.section-light h3,
.section-light h4,
.section-light blockquote,
.section-light strong,
.commercial-architecture h2,
.key-functions h2,
.recommendations-section h2,
.projects-section h2,
.faq-section h2,
.locations-section h2,
.service-map-detail h3,
.architecture-copy h2,
.project-info h3,
.faq-list summary,
.recommendation-card blockquote,
.brief-form h3,
.brief-form label,
.brief-form strong{
  color:#18344f;
}

.section-light .eyebrow,
.section-light .service-number,
.section-light .project-info>span,
.section-light .faq-layout>.eyebrow,
.section-light .faq-layout>div>.eyebrow,
.section-light .recommendation-topline,
.section-light .recommendation-person>div>span,
.section-light .recommendation-source,
.section-light .recommendation-note,
.section-light .service-topline,
.section-light .map-detail-kicker,
.section-light .locations-intro .eyebrow,
.section-light .recommendations-intro .eyebrow{
  color:#63819e !important;
}

.section-light p,
.section-light li,
.section-light small,
.section-light .recommendation-summary,
.section-light .project-info p,
.section-light .faq-list details p,
.section-light .functions-heading p,
.section-light .functions-note,
.section-light .map-detail-copy>p:last-child,
.section-light .locations-intro>p,
.section-light .service-map-detail .location-list small,
.section-light .service-map-detail .location-list span,
.section-light .service-card>p,
.section-light .service-card li,
.section-light .service-card summary,
.section-light .service-card details,
.section-light .service-card summary span,
.section-light .service-card ul,
.section-light .architecture-copy p{
  color:#55607f;
}

.services .services-grid{
  border-top-color:#dbe5ed;
  border-left-color:#dbe5ed;
}
.services .service-card{
  background:#fbfdfe;
  border-right-color:#dbe5ed;
  border-bottom-color:#dbe5ed;
  box-shadow:0 4px 14px rgba(26,35,66,.03);
}
.services .service-card:hover{
  background:#ffffff;
  box-shadow:0 14px 32px rgba(26,35,66,.08);
}
.services .service-card--featured{
  background:#eef4f8;
}
.services .service-topline{
  color:#63819e !important;
}
.services .service-number,
.services .service-icon,
.services .service-card--featured:after,
.services .service-card--featured .service-card-link{
  color:#4f8ac6 !important;
  stroke:#4f8ac6 !important;
}
.services .service-card h3,
.services .service-card summary,
.services .service-card summary span{
  color:#18344f !important;
}
.services .service-card>p,
.services .service-card li,
.services .service-card ul,
.services .service-card details,
.services .service-card small{
  color:#55607f !important;
}
.services .service-card li:before{
  color:#4f8ac6 !important;
}
.services .service-card summary{
  border-top-color:#dde3f1;
}
.services .service-card-link{
  border-color:#dbe5ed;
}

.commercial-architecture{
  background:#f1f3fa;
  color:#18334b;
  border-bottom-color:#dae3ea;
}
.architecture-copy>p:not(.eyebrow),
.architecture-node small,
.architecture-model:before{
  color:#5b7285;
}
.architecture-copy .text-link,
.architecture-node span{
  color:#4f8ac6 !important;
}
.architecture-core{
  background:#173b58;
  color:#f5f8fb;
}
.architecture-core span{color:#bfd8e9}
.architecture-node{
  background:#ffffff;
  border-color:#d4dbef;
  box-shadow:6px 6px 0 rgba(26,35,66,.08);
}
.architecture-line{background:#b5bdd7}

.recommendation-card,
.recommendation-card--paul{
  background:#ffffff;
}
.recommendation-person{
  border-color:#dbe1f0;
}
.recommendation-themes p{
  color:#18344f;
}

.project-info h3,
.project-info h3 i,
.conversation-art,
.clinical-art>span:last-child{
  color:#18344f;
}
.conversation-art{background:#e9f1f7}
.conversation-art>i{color:#5c7488}
.clinical-art{
  background:#47789d;
  color:#f4f6fd;
}
.record-art{background:#17334d}
.art-label{color:#d6e5f0}

.faq-list details,
.experience-list>div,
.service-map-legend,
.service-map-card,
.map-detail-copy,
.location-list>div{
  border-color:#dbe5ed;
}

.brief-form input,
.brief-form textarea,
.brief-form select{
  color:#18344f;
}

input::placeholder,
textarea::placeholder{
  color:#8691b7;
  opacity:1;
}


/* Diagnosis hardening pass */
.section-light .text-link,
.section-light .quiet-button{
  color:#2d6c9e;
}
.section-light .text-link{
  border-bottom-color:rgba(49,73,132,.28);
}
.section-light .text-link:hover,
.section-light .quiet-button:hover{
  color:#225b88;
}

.diagnosis{
  background:#eef1f8;
}
.diagnosis-layout{
  gap:clamp(34px,4vw,64px);
}
.diagnosis-options{
  gap:0;
}
.diagnosis-tab{
  color:#18344f;
  border-bottom-color:#d4dcef;
}
.diagnosis-tab:first-child{
  border-top-color:#d4dcef;
}
.diagnosis-tab>span{
  color:#667f96;
}
.diagnosis-tab strong,
.diagnosis-tab i{
  color:#18344f;
}
.diagnosis-tab i{
  opacity:.92;
}
.diagnosis-tab:hover{
  background:#edf5fa;
}
.diagnosis-tab[aria-selected=true]{
  background:#e6f0f7;
  border-left:4px solid #4f8ac6;
  padding-left:18px;
  box-shadow:inset 0 0 0 1px #d7e6f0;
}
.diagnosis-panel{
  background:#f7fafc;
  color:#18344f;
  border:1px solid #dbe6ee;
  box-shadow:0 14px 34px rgba(26,35,66,.06);
}
.panel-top{
  color:#647f97;
}
.panel-symbol,
.check-list li:before{
  color:#4f8ac6;
}
.diagnosis-panel h3{
  color:#18344f;
}
.diagnosis-panel>p{
  color:#556f83;
}
.check-list li{
  color:#566f82;
}
.diagnosis-panel .text-link{
  color:#2d6a9b;
  border-bottom-color:rgba(48,72,135,.34);
}
.diagnosis-panel .text-link:hover{
  color:#245a83;
}
.diagnosis-panel .first-move{
  margin-top:6px;
  padding:20px 22px 18px;
  border-left:3px solid #9bc8e6;
  border-radius:8px;
  background:linear-gradient(135deg,#183d5c 0%,#1d4b6d 100%);
  box-shadow:0 10px 24px rgba(16,24,47,.12);
}
.diagnosis-panel .first-move .eyebrow{
  color:#c7e0f1 !important;
}
.diagnosis-panel .first-move p{
  color:#f4f9fc;
}
.diagnosis-panel .first-move .quiet-button{
  color:#ffffff;
  text-decoration-color:rgba(255,255,255,.5);
}
.diagnosis-panel .first-move .quiet-button:hover{
  color:#cfe5f4;
}

@media(max-width:700px){
  .diagnosis-tab[aria-selected=true]{padding-left:14px}
  .diagnosis-panel .first-move{padding:18px 18px 16px}
}


/* Results clarity patch */
.calculator-results{
  background:linear-gradient(180deg,#1e4667 0%,#183a57 100%);
}
.calculator-results .results-heading .eyebrow,
.calculator-results .result-label,
.calculator-results .result-subtitle,
.calculator-results .result-breakdown small,
.calculator-results .result-caveat,
.calculator-results .net-result small{
  color:#d8e6f0 !important;
}
.calculator-results .result-amount,
.calculator-results .result-breakdown strong,
.calculator-results .net-result strong,
.calculator-results .comparison strong,
.calculator-results .comparison>div,
.calculator-results .net-result,
.calculator-results .result-breakdown>div{
  color:#f6fbfe !important;
}
.calculator-results .comparison strong:last-child,
.calculator-results .result-breakdown strong,
.calculator-results .net-result strong{
  color:#eef7fb !important;
}
.calculator-results .result-amount{
  text-shadow:0 1px 0 rgba(0,0,0,.12);
}
.calculator-results .period-switch{
  background:#10283c;
  border-color:#7399b8;
}
.calculator-results .period-switch button{
  color:#dbe0f5;
}
.calculator-results .period-switch button[aria-pressed=true]{
  background:#a5cbe8;
  color:#122a3e;
}
.calculator-results .bar-track{
  background:#0e2234;
  border:1px solid rgba(140,186,222,.18);
}
.calculator-results .bar-track>span{
  background:#9fc3df;
}
.calculator-results .bar-track #target-bar{
  background:#bfd9ec;
}
.calculator-results .result-breakdown{
  border-top-color:#7399b8;
}
.calculator-results .net-result{
  background:#2d668f;
  border-color:#80afcf;
}
.calculator-results .net-result.is-negative{
  background:#4f3854;
  border-color:#c89abf;
}
.calculator-results .net-result.is-negative strong{
  color:#ffe4f8 !important;
}

.friction-results{
  background:linear-gradient(180deg,#1d4667 0%,#183a57 100%);
}
.friction-results h3,
.friction-readout>div:last-child strong,
.friction-plan h4,
.friction-map-row,
.friction-empty,
.friction-output>p:not(.eyebrow){
  color:#f6fbfe;
}
.friction-results>.eyebrow,
.friction-output>.eyebrow,
.friction-day,
.friction-crosslink strong,
.friction-ring strong{
  color:#b6d5ec;
}
.friction-ring{
  background:conic-gradient(#b6d5ec var(--friction-angle),#5d829e 0);
}
.friction-ring:before{
  background:#183953;
}
.friction-ring>div,
.friction-map-row strong,
.friction-plan small,
.friction-crosslink span{
  color:#d8e6f0;
}
.friction-readout{
  border-bottom-color:#789fbd;
}
.friction-readout p,
.friction-output>p:not(.eyebrow),
.friction-plan p,
.friction-empty small{
  color:#dce9f2;
}
.friction-map-row strong:before{
  border-color:#bdd7e9;
}
.friction-empty{
  background:rgba(255,255,255,.03);
  border-color:#87aecb;
}
.friction-output{
  border-top-color:#789fbd;
}
.friction-plan li{
  border-left-color:#91b8d5;
}
.friction-actions .quiet-button,
.friction-crosslink .text-link{
  color:#f6fbfe;
}
.friction-crosslink{
  border-color:#6f96b4;
}


/* Dark section headline sweep */
.intro-strip{
  color:#f7fbfd;
  background:linear-gradient(180deg,#214b6c 0%,#1c405e 100%);
  border-block-color:rgba(201,218,234,.18);
}
.intro-strip .shell>div{
  color:#f7fbfd;
}
.intro-strip strong{
  color:#f7fbfd;
}
.intro-strip .shell>div:first-child strong{
  color:#b7d6ed;
}
.intro-strip span{
  color:#d5e3ed;
}
.intro-strip .shell>div:not(:first-child){
  border-left-color:rgba(201,218,234,.18);
}

/* Extra safety for dark modules */
.hero-bottom>div,
.training-lab h2,
.training-lab h3,
.training-lab strong,
.quote-section blockquote,
.quote-section .quote-attribution,
.calculator-results h3,
.calculator-results .result-label,
.friction-results h3,
.friction-readout>div:last-child strong,
.friction-plan h4{
  color:#f7fbfd;
}

/* Commercial system redesign */
.commercial-architecture{
  position:relative;
  overflow:hidden;
  padding:clamp(90px,8vw,132px) 0;
  background:
    radial-gradient(circle at 86% 20%,rgba(121,133,218,.12),transparent 28%),
    linear-gradient(180deg,#f5f8fb 0%,#eef1f8 100%);
  color:#18334b;
  border-block:1px solid #d6dced;
}
.commercial-architecture:before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,transparent 0 49.9%,rgba(93,107,170,.045) 50%,transparent 50.1%);
}
.architecture-grid{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr);
  gap:clamp(44px,6vw,92px);
  align-items:start;
}
.architecture-copy{
  position:sticky;
  top:150px;
  padding-top:16px;
}
.architecture-copy .eyebrow{
  color:#4f8ac6 !important;
}
.architecture-copy h2{
  max-width:520px;
  margin:24px 0 26px;
  color:#153951;
  font-size:clamp(46px,5vw,72px);
  line-height:1.01;
  letter-spacing:-.058em;
}
.architecture-copy>p:not(.eyebrow){
  max-width:500px;
  margin-bottom:30px;
  color:#58627f;
  font-size:16px;
  line-height:1.8;
}
.architecture-copy .text-link{
  color:#2d6c9e;
}

.architecture-system{
  position:relative;
  overflow:hidden;
  border:1px solid #c9d1e8;
  background:#ffffff;
  box-shadow:0 30px 72px rgba(27,37,76,.10);
}
.system-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  min-height:54px;
  padding:0 24px;
  border-bottom:1px solid #d7ddec;
  background:#f8f9fd;
  color:#647f97;
  font-size:9px;
  font-weight:800;
  letter-spacing:.15em;
}
.system-toolbar span:last-child{
  color:#86aac5;
}
.system-flow{
  display:grid;
  grid-template-columns:1fr 1fr;
  background:#fff;
}
.system-step{
  position:relative;
  display:grid;
  grid-template-columns:64px minmax(0,1fr) auto;
  gap:18px;
  min-height:230px;
  padding:30px 28px;
  border-bottom:1px solid #dbe5ed;
  background:#fff;
  transition:background .2s ease,transform .2s ease;
}
.system-step:nth-child(odd){border-right:1px solid #dbe5ed}
.system-step:nth-child(3),.system-step:nth-child(4){border-bottom:0}
.system-step:hover{
  z-index:2;
  background:#f3f5fc;
}
.system-step-index{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
.system-step-index span{
  color:#4f8ac6;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
}
.system-step-index i{
  display:block;
  width:34px;
  height:2px;
  background:#76a9d1;
}
.system-step-copy small{
  display:block;
  margin-bottom:11px;
  color:#63819e;
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
}
.system-step-copy h3{
  max-width:280px;
  color:#153951;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(24px,2.1vw,34px);
  font-weight:400;
  line-height:1.08;
  letter-spacing:-.04em;
}
.system-step-copy p{
  max-width:310px;
  margin-top:14px;
  color:#596f82;
  font-size:13px;
  line-height:1.75;
}
.system-step-arrow{
  align-self:start;
  color:#699cc5;
  font-size:26px;
  line-height:1;
}
.system-step--conversation{background:#fafbff}
.system-step--motion{background:#fafbff}
.system-step--proof{background:#fff}

.system-outcome{
  display:grid;
  grid-template-columns:72px minmax(0,1fr);
  gap:22px;
  align-items:center;
  padding:30px 32px;
  border-top:1px solid #6877b4;
  background:
    radial-gradient(circle at 86% 30%,rgba(170,179,244,.18),transparent 24%),
    linear-gradient(135deg,#202b50 0%,#18334b 100%);
  color:#f7fbfd;
}
.system-outcome-mark{
  display:grid;
  width:58px;
  height:58px;
  place-items:center;
  border:1px solid rgba(194,204,255,.44);
  border-radius:50%;
  color:#c3cbff;
  font-size:27px;
}
.system-outcome small{
  display:block;
  margin-bottom:5px;
  color:#aeb8ef;
  font-size:9px;
  font-weight:800;
  letter-spacing:.15em;
}
.system-outcome strong{
  display:block;
  color:#fff;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(27px,2.8vw,42px);
  font-weight:400;
  line-height:1.1;
  letter-spacing:-.04em;
}
.system-outcome p{
  max-width:620px;
  margin-top:8px;
  color:#d2d8f2;
  font-size:12px;
  line-height:1.7;
}

.service-card[id]{scroll-margin-top:145px}
.service-card[id]:target{
  box-shadow:inset 0 0 0 2px #7582d2,0 14px 34px rgba(44,58,103,.10);
}

@media(max-width:1050px){
  .architecture-grid{grid-template-columns:1fr;gap:46px}
  .architecture-copy{position:static;max-width:720px;padding-top:0}
  .architecture-copy h2{max-width:700px}
}
@media(max-width:760px){
  .commercial-architecture{padding-block:72px}
  .system-toolbar{padding-inline:18px}.system-toolbar span:last-child{display:none}
  .system-flow{grid-template-columns:1fr}
  .system-step{grid-template-columns:50px minmax(0,1fr) auto;min-height:0;padding:25px 20px}
  .system-step:nth-child(odd){border-right:0}
  .system-step:nth-child(3){border-bottom:1px solid #dbe5ed}
  .system-step-copy h3{font-size:28px}
  .system-step-copy p{font-size:13px}
  .system-outcome{grid-template-columns:52px minmax(0,1fr);gap:16px;padding:25px 20px}
  .system-outcome-mark{width:48px;height:48px;font-size:23px}
}
@media(max-width:430px){
  .system-step{grid-template-columns:38px minmax(0,1fr);gap:13px;padding:23px 17px}
  .system-step-arrow{display:none}
  .system-step-index i{width:24px}
  .system-outcome{grid-template-columns:1fr}.system-outcome-mark{margin-bottom:2px}
}
@media(prefers-reduced-motion:reduce){
  .system-step{transition:none}
}


/* Process progression redesign */
.process-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 18%,rgba(125,137,222,.14),transparent 28%),
    radial-gradient(circle at 8% 82%,rgba(106,116,196,.08),transparent 34%),
    linear-gradient(180deg,#122b40 0%,#0f2436 100%);
  border-block:1px solid rgba(150,161,218,.18);
}
.process-section:before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);
  background-size:48px 48px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.85),transparent 92%);
}
.process-section .shell{position:relative;z-index:1}
.process-section .section-heading{margin-bottom:54px}
.process-section .section-heading>.eyebrow{color:#8dbce2}
.process-section .section-heading h2{color:#f5f6ff}
.process-section .section-heading h2+p{max-width:700px;color:#cadce8}

.process-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
  counter-reset:process;
  padding-top:34px;
}
.process-grid:before{
  content:'';
  position:absolute;
  z-index:0;
  top:13px;
  left:7%;
  right:7%;
  height:1px;
  background:linear-gradient(90deg,transparent,#7080bd 8%,#8895d2 50%,#7080bd 92%,transparent);
  opacity:.72;
}
.process-grid>li{
  --step-accent:#8dbce2;
  position:relative;
  z-index:1;
  min-height:350px;
  padding:28px 26px 24px;
  display:flex;
  flex-direction:column;
  border:1px solid rgba(139,151,205,.35);
  border-radius:12px;
  background:linear-gradient(180deg,rgba(44,55,91,.88),rgba(29,39,67,.92));
  box-shadow:0 18px 38px rgba(3,8,21,.16),inset 0 1px 0 rgba(255,255,255,.04);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
}
.process-grid>li:nth-child(2){--step-accent:#9bc6e6}
.process-grid>li:nth-child(3){--step-accent:#acd1ea}
.process-grid>li:nth-child(4){--step-accent:#bddbef}
.process-grid>li:hover{
  transform:translateY(-6px);
  border-color:rgba(176,187,240,.68);
  background:linear-gradient(180deg,rgba(51,64,104,.94),rgba(31,42,73,.98));
  box-shadow:0 24px 48px rgba(3,8,21,.24),inset 0 1px 0 rgba(255,255,255,.06);
}
.process-grid>li:before{
  content:'';
  position:absolute;
  top:-27px;
  left:25px;
  width:24px;
  height:24px;
  border-radius:50%;
  border:6px solid #122b40;
  background:var(--step-accent);
  box-shadow:0 0 0 1px rgba(176,187,240,.55),0 0 24px rgba(156,168,239,.22);
}
.process-grid>li:not(:last-child):after{
  content:'→';
  position:absolute;
  z-index:4;
  top:50%;
  right:-16px;
  transform:translateY(-50%);
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border:1px solid rgba(153,165,220,.42);
  border-radius:50%;
  background:#171f36;
  color:#bfc7fb;
  font-size:15px;
  box-shadow:0 5px 14px rgba(0,0,0,.16);
}
.process-grid>li>span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:44px;
  min-height:28px;
  margin:0 0 30px;
  padding:5px 9px;
  border:1px solid rgba(176,187,240,.36);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  color:var(--step-accent);
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
}
.process-grid h3{
  min-height:0;
  margin:0;
  color:#ffffff;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(26px,2.1vw,34px);
  font-weight:400;
  line-height:1.06;
  letter-spacing:-.035em;
}
.process-grid p{
  flex:1;
  margin:20px 0 30px;
  color:#dbe5ed;
  font-size:14px;
  line-height:1.78;
}
.process-grid small{
  position:relative;
  display:block;
  padding:16px 0 0 18px;
  border-top:1px solid rgba(154,165,217,.28);
  color:#b7c0e6;
  font-size:10px;
  font-weight:700;
  line-height:1.6;
  letter-spacing:.03em;
}
.process-grid small:before{
  content:'';
  position:absolute;
  left:0;
  top:21px;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--step-accent);
  box-shadow:0 0 0 4px rgba(156,168,239,.08);
}

@media(max-width:1050px){
  .process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 18px;padding-top:28px}
  .process-grid:before{display:none}
  .process-grid>li{min-height:320px}
  .process-grid>li:before{top:-18px}
  .process-grid>li:not(:last-child):after{display:none}
}
@media(max-width:700px){
  .process-section .section-heading{margin-bottom:40px}
  .process-grid{grid-template-columns:1fr;gap:18px;padding-top:0}
  .process-grid>li{min-height:0;padding:24px 22px 21px}
  .process-grid>li:before{top:26px;left:auto;right:22px;width:17px;height:17px;border-width:4px}
  .process-grid>li>span{margin-bottom:22px}
  .process-grid h3{font-size:29px}
  .process-grid p{margin:17px 0 24px}
}
@media(prefers-reduced-motion:reduce){
  .process-grid>li{transition:none}
  .process-grid>li:hover{transform:none}
}

/* Tree branch connector */
.process-grid{
  padding-top:150px;
  overflow:visible;
}
.process-grid:before{display:none}
.process-branch{
  position:absolute;
  z-index:0;
  top:8px;
  left:0;
  width:100%;
  height:160px;
  overflow:visible;
  pointer-events:none;
}
.process-branch path,
.process-branch ellipse,
.process-branch circle{
  vector-effect:non-scaling-stroke;
}
.process-branch path{
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.process-branch-aura{
  stroke:url(#branchGlow);
  stroke-width:12;
  opacity:.13;
  filter:blur(1px);
}
.process-branch-trunk-base{
  stroke:#51609e;
  stroke-width:5.2;
  opacity:.55;
}
.process-branch-trunk{
  stroke:url(#branchCore);
  stroke-width:3.1;
  filter:drop-shadow(0 0 10px rgba(152,198,233,.15));
}
.process-branch-shoot{
  stroke:#b7d6ed;
  stroke-width:2.4;
}
.process-branch-shoot--one,
.process-branch-shoot--four{
  stroke:#a8b2f5;
}
.process-branch-twig{
  stroke:#8fb4d4;
  stroke-width:1.6;
  opacity:.95;
}
.process-branch-node{
  fill:#d3e5f2;
  stroke:#1a2240;
  stroke-width:8;
  filter:drop-shadow(0 0 8px rgba(187,214,235,.25));
}
.process-branch-leaf{
  fill:#8aaece;
  opacity:.98;
  transform-box:fill-box;
  transform-origin:center;
}
.process-branch-leaf--one{transform:rotate(-24deg)}
.process-branch-leaf--two{transform:rotate(8deg)}
.process-branch-leaf--three{transform:rotate(-16deg)}
.process-grid>li:before,
.process-grid>li:not(:last-child):after{
  display:none;
}
.process-grid>li{
  position:relative;
}
.process-grid>li:after{
  content:'';
  position:absolute;
  top:-16px;
  left:50%;
  width:56px;
  height:2px;
  transform:translateX(-50%);
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(187,214,235,.92),transparent);
  opacity:.9;
}

@media(max-width:1050px){
  .process-grid{padding-top:36px}
  .process-branch{display:none}
  .process-grid>li:after{
    top:0;
    left:28px;
    width:70px;
    transform:none;
  }
}
@media(max-width:700px){
  .process-grid{padding-top:0}
  .process-grid:after{
    content:'';
    position:absolute;
    z-index:0;
    top:14px;
    bottom:14px;
    left:20px;
    width:3px;
    border-radius:999px;
    background:linear-gradient(180deg,rgba(126,171,210,.35),rgba(187,214,235,.72) 48%,rgba(114,160,199,.35));
  }
  .process-grid>li{
    margin-left:22px;
  }
  .process-grid>li:after{
    top:30px;
    left:-22px;
    width:24px;
    height:2px;
    transform:none;
    background:#acd0eb;
    box-shadow:none;
  }
}


/* Process section simplified botanical overhaul */
.process-section{
  background:
    radial-gradient(circle at 18% 0%, rgba(104,157,213,.12), transparent 28%),
    radial-gradient(circle at 82% 0%, rgba(134,150,221,.1), transparent 26%),
    linear-gradient(180deg,#0e2234 0%,#13203a 100%);
  overflow:hidden;
}
.process-section:before{
  content:'';
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 8%, rgba(255,255,255,.04), transparent 24%),
    linear-gradient(90deg, rgba(255,255,255,.02), transparent 24%, transparent 76%, rgba(255,255,255,.02));
  pointer-events:none;
}
.process-section .shell{position:relative;z-index:1}
.process-section .section-heading{margin-bottom:44px}
.process-section .section-heading h2{max-width:820px}
.process-section .section-heading h2+p{max-width:760px}
.process-grid{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  padding-top:172px;
  align-items:stretch;
}
.process-grid:before,
.process-grid:after{display:none!important}
.process-branch{
  position:absolute;
  top:4px;
  left:0;
  width:100%;
  height:164px;
  z-index:0;
  pointer-events:none;
  overflow:visible;
}
.process-branch path,
.process-branch ellipse,
.process-branch circle{vector-effect:non-scaling-stroke}
.process-branch path,
.process-branch ellipse{fill:none;stroke-linecap:round;stroke-linejoin:round}
.process-branch-shadow{stroke:rgba(7,10,19,.38);stroke-width:18}
.process-branch-trunk-base{stroke:url(#branchBark);stroke-width:12.5}
.process-branch-trunk-highlight{stroke:url(#branchHighlight);stroke-width:4.2;opacity:.85}
.process-branch-stem{stroke:#7e6b5b;stroke-width:2.8}
.process-branch-twig{stroke:#8b94b9;stroke-width:1.9;opacity:.88}
.process-branch-cluster ellipse{fill:url(#branchLeaf);stroke:none;opacity:.95}
.process-branch-cluster--one ellipse:first-child,
.process-branch-cluster--two ellipse:first-child,
.process-branch-cluster--three ellipse:first-child{transform-box:fill-box;transform-origin:center;transform:rotate(-22deg)}
.process-branch-cluster--one ellipse:last-child,
.process-branch-cluster--two ellipse:last-child,
.process-branch-cluster--three ellipse:last-child{transform-box:fill-box;transform-origin:center;transform:rotate(16deg)}
.process-branch-node{fill:#e6edf0;stroke:#14324b;stroke-width:6}
.process-grid>li{
  position:relative;
  z-index:1;
  min-height:318px;
  padding:29px 28px 24px;
  border:1px solid rgba(158,171,228,.24);
  border-radius:24px;
  background:linear-gradient(180deg, rgba(34,47,84,.92) 0%, rgba(22,32,58,.96) 100%);
  box-shadow:0 18px 38px rgba(4,8,20,.22), inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(6px);
  transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.process-grid>li:hover{
  transform:translateY(-4px);
  border-color:rgba(190,198,242,.38);
  box-shadow:0 24px 48px rgba(4,8,20,.28), inset 0 1px 0 rgba(255,255,255,.08);
}
.process-grid>li:before,
.process-grid>li:after{display:none!important}
.process-grid>li>span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:42px;
  height:34px;
  margin:0 0 24px;
  padding:0 12px;
  border:1px solid rgba(187,196,242,.24);
  border-radius:999px;
  background:rgba(255,255,255,.03);
  color:#cfd6ff;
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.process-grid h3{
  min-height:0;
  margin:0;
  color:#f7fbfd;
  font-size:clamp(31px,2.35vw,40px);
  line-height:1.05;
  letter-spacing:-.045em;
}
.process-grid p{
  margin:22px 0 28px;
  color:#d2d8f1;
  font-size:15px;
  line-height:1.85;
  flex:1;
}
.process-grid small{
  display:block;
  margin-top:auto;
  padding-top:18px;
  border-top:1px solid rgba(170,200,225,.22);
  color:#aab4dc;
  font-size:12px;
  letter-spacing:0;
  line-height:1.6;
}
.process-grid small:before{
  content:'';
  display:inline-block;
  width:7px;
  height:7px;
  margin-right:10px;
  border-radius:50%;
  background:#8aaece;
  vertical-align:middle;
}
@media(max-width:1050px){
  .process-section .section-heading{margin-bottom:36px}
  .process-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px;
    padding-top:28px;
  }
  .process-branch{display:none}
  .process-grid>li{min-height:292px}
}
@media(max-width:700px){
  .process-grid{grid-template-columns:1fr;gap:16px;padding-top:0}
  .process-grid>li{min-height:0;padding:24px 22px 21px;border-radius:20px}
  .process-grid>li>span{margin-bottom:18px}
  .process-grid h3{font-size:29px}
  .process-grid p{margin:18px 0 22px;font-size:14px}
  .process-grid small{padding-top:14px;font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  .process-grid>li{transition:none}
  .process-grid>li:hover{transform:none}
}



/* Premium hero practice panel + refined branch */
.portrait-sidecar{
  border:1px solid rgba(167,178,233,.26)!important;
  border-radius:26px!important;
  background:
    linear-gradient(rgba(145,184,220,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(145,184,220,.04) 1px,transparent 1px),
    linear-gradient(180deg,rgba(29,39,73,.98) 0%,rgba(20,28,54,.98) 100%)!important;
  background-size:42px 42px,42px 42px,auto!important;
  box-shadow:0 22px 50px rgba(4,8,20,.24), inset 0 1px 0 rgba(255,255,255,.04)!important;
  overflow:hidden;
}
.portrait-sidecar:after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 28%);
  pointer-events:none;
}
.sidecar-mark{
  position:relative;
  padding:0 28px 18px;
  margin:0 -30px 20px;
  border-bottom:1px solid rgba(182,205,226,.14)!important;
}
.sidecar-mark:before{color:#8ab6e3!important}
.sidecar-mark span{color:#f1f7fc!important;letter-spacing:.22em!important;font-size:11px!important}
.portrait-sidecar ol{padding:0 28px 0 30px!important;margin:0 0 18px!important}
.portrait-sidecar li{
  grid-template-columns:30px 1fr!important;
  gap:14px!important;
  padding:18px 0!important;
  border-bottom:1px solid rgba(182,205,226,.14)!important;
}
.portrait-sidecar li>span{
  color:#8ab6e3!important;
  font-size:10px!important;
  letter-spacing:.14em!important;
}
.portrait-sidecar strong{font-size:19px!important;line-height:1.18!important;color:#f7fbfd!important}
.portrait-sidecar small{font-size:11px!important;line-height:1.55!important;color:#d4e1ec!important;margin-top:6px!important}
.hero-founder-portrait{
  position:relative;
  display:grid!important;
  grid-template-columns:195px 1fr;
  column-gap:26px;
  align-items:center;
  margin:12px 30px 0;
  padding:24px 0 0!important;
  border-left:0!important;
  border-top:1px solid rgba(182,205,226,.14)!important;
}
.hero-founder-portrait .portrait-frame{
  width:195px!important;
  height:236px!important;
  border:8px solid #f5f8fb!important;
  background:#f5f8fb!important;
  box-shadow:12px 12px 0 #46739b!important;
}
.hero-founder-portrait>strong{
  margin-top:0!important;
  font-size:24px!important;
  line-height:1.05!important;
  color:#f7fbfd!important;
}
.hero-founder-portrait>span{
  max-width:270px;
  margin-top:10px;
  color:#d5dcf8!important;
  font-size:12px!important;
  line-height:1.65!important;
}
.portrait-sidecar>p{
  padding:18px 30px 0;
  margin-top:20px!important;
  border-top:1px solid rgba(189,198,242,.1);
  color:#aeb8ec!important;
  font-size:10px!important;
  letter-spacing:.18em!important;
}
@media(max-width:960px){
  .hero-founder-portrait{grid-template-columns:162px 1fr;column-gap:22px;margin-inline:24px}
  .hero-founder-portrait .portrait-frame{width:162px!important;height:198px!important;box-shadow:10px 10px 0 #46739b!important}
  .hero-founder-portrait>strong{font-size:21px!important}
  .portrait-sidecar ol{padding-inline:24px!important}
  .sidecar-mark{padding-inline:24px;margin-inline:-24px}
  .portrait-sidecar>p{padding-inline:24px}
}
@media(max-width:700px){
  .portrait-sidecar{border-radius:22px!important}
  .sidecar-mark{padding:0 20px 16px;margin:0 -20px 16px}
  .portrait-sidecar ol{padding:0 20px!important}
  .portrait-sidecar li{grid-template-columns:26px 1fr!important;padding:16px 0!important}
  .portrait-sidecar strong{font-size:17px!important}
  .portrait-sidecar small{font-size:10px!important}
  .hero-founder-portrait{grid-template-columns:138px 1fr;column-gap:18px;margin:10px 20px 0;padding-top:20px!important}
  .hero-founder-portrait .portrait-frame{width:138px!important;height:168px!important;border-width:6px!important;box-shadow:8px 8px 0 #46739b!important}
  .hero-founder-portrait>strong{font-size:20px!important}
  .hero-founder-portrait>span{font-size:11px!important;line-height:1.55!important}
  .portrait-sidecar>p{padding:16px 20px 0;font-size:9px!important}
}
@media(max-width:430px){
  .hero-founder-portrait{grid-template-columns:1fr;row-gap:14px}
  .hero-founder-portrait .portrait-frame{width:146px!important;height:176px!important}
}

.process-section{
  background:
    radial-gradient(circle at 18% 0%, rgba(104,157,213,.10), transparent 28%),
    radial-gradient(circle at 82% 0%, rgba(104,157,213,.08), transparent 24%),
    linear-gradient(180deg,#0f162a 0%,#13203a 100%);
}
.process-section:before{
  background:
    radial-gradient(circle at 50% 10%, rgba(255,255,255,.028), transparent 23%),
    linear-gradient(90deg, rgba(255,255,255,.018), transparent 26%, transparent 74%, rgba(255,255,255,.018));
}
.process-section .section-heading{margin-bottom:46px}
.process-grid{
  gap:24px;
  padding-top:170px;
}
.process-branch{
  top:2px;
  height:162px;
}
.process-branch-shadow{stroke:rgba(5,8,18,.42);stroke-width:16}
.process-branch-trunk-base{stroke:url(#branchBark);stroke-width:11.5}
.process-branch-trunk-highlight{stroke:url(#branchHighlight);stroke-width:3.6;opacity:.8}
.process-branch-stem{stroke:#8d755f;stroke-width:2.6}
.process-branch-leaf-vein{stroke:#7f89b4;stroke-width:1.5;opacity:.7}
.process-branch-leaf{fill:url(#leafFill);stroke:none;opacity:.95}
.process-branch-node{fill:#ebe4d8;stroke:#14324b;stroke-width:5}
.process-grid>li{
  min-height:326px;
  padding:30px 29px 25px;
  border:1px solid rgba(150,191,225,.22);
  border-radius:26px;
  background:linear-gradient(180deg, rgba(38,52,91,.94) 0%, rgba(21,31,57,.98) 100%);
  box-shadow:0 20px 40px rgba(4,8,20,.22), inset 0 1px 0 rgba(255,255,255,.045);
}
.process-grid>li>span{
  min-width:46px;
  height:35px;
  margin-bottom:26px;
  border-color:rgba(182,205,226,.22);
  background:rgba(255,255,255,.035);
  color:#d5dcff;
}
.process-grid h3{font-size:clamp(32px,2.35vw,41px);line-height:1.04}
.process-grid p{margin:22px 0 30px;color:#d6dcf3}
.process-grid small{padding-top:19px;color:#b0badf;border-top-color:rgba(170,200,225,.2)}
.process-grid small:before{background:#96a1dd}
@media(max-width:1050px){
  .process-grid{gap:20px;padding-top:30px}
}
@media(max-width:700px){
  .process-grid{gap:16px;padding-top:0}
  .process-grid>li{padding:24px 22px 22px;border-radius:22px}
  .process-grid h3{font-size:29px}
}


/* Hero practice panel structural repair — single authoritative layout */
.hero-visual{
  max-width:640px!important;
}
.portrait-sidecar{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:24px!important;
}
.sidecar-mark{
  min-height:70px!important;
  margin:0!important;
  padding:0 30px 0 80px!important;
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
}
.sidecar-mark:before{
  left:30px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}
.sidecar-body{
  display:grid!important;
  grid-template-columns:minmax(0,1.18fr) minmax(190px,.82fr)!important;
  gap:0!important;
  align-items:stretch!important;
  padding:0!important;
  min-width:0!important;
}
.sidecar-body>ol{
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:24px 28px 22px 30px!important;
}
.sidecar-body>ol li{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr)!important;
  gap:14px!important;
  padding:21px 0!important;
  min-width:0!important;
}
.sidecar-body>ol li>div{min-width:0!important}
.sidecar-body>ol li strong{
  display:block!important;
  font-size:21px!important;
  line-height:1.18!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.sidecar-body>ol li small{
  display:block!important;
  max-width:220px!important;
  margin-top:7px!important;
  font-size:11px!important;
  line-height:1.55!important;
}
.hero-founder-portrait{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:0!important;
  width:auto!important;
  margin:0!important;
  padding:28px 24px 26px!important;
  border-top:0!important;
  border-left:1px solid rgba(182,205,226,.14)!important;
  text-align:center!important;
  overflow:hidden!important;
}
.hero-founder-portrait .portrait-frame{
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  flex:none!important;
  width:154px!important;
  height:184px!important;
  margin:0 auto!important;
  border:7px solid #f5f8fb!important;
  box-shadow:9px 9px 0 #46739b!important;
}
.hero-founder-portrait .portrait-frame>img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 24%!important;
}
.hero-founder-portrait>strong{
  display:block!important;
  width:100%!important;
  max-width:190px!important;
  margin:22px auto 0!important;
  font-size:21px!important;
  line-height:1.12!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.hero-founder-portrait>span{
  display:block!important;
  width:100%!important;
  max-width:170px!important;
  margin:9px auto 0!important;
  font-size:10.5px!important;
  line-height:1.55!important;
  text-align:center!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
}
.portrait-sidecar>p{
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:18px 30px 19px!important;
  border-top:1px solid rgba(189,198,242,.12)!important;
}

@media(max-width:1100px){
  .hero-visual{max-width:590px!important}
  .sidecar-body{grid-template-columns:minmax(0,1.12fr) minmax(174px,.88fr)!important}
  .sidecar-body>ol{padding-inline:24px!important}
  .hero-founder-portrait{padding-inline:20px!important}
  .hero-founder-portrait .portrait-frame{width:140px!important;height:168px!important}
  .hero-founder-portrait>strong{font-size:19px!important}
}
@media(max-width:900px){
  .hero-visual{max-width:620px!important}
}
@media(max-width:700px){
  .sidecar-mark{min-height:62px!important;padding-left:68px!important;padding-right:20px!important}
  .sidecar-mark:before{left:20px!important}
  .sidecar-body{grid-template-columns:minmax(0,1.08fr) minmax(155px,.92fr)!important}
  .sidecar-body>ol{padding:18px 20px!important}
  .sidecar-body>ol li{grid-template-columns:27px minmax(0,1fr)!important;gap:10px!important;padding:16px 0!important}
  .sidecar-body>ol li strong{font-size:17px!important}
  .sidecar-body>ol li small{font-size:9.5px!important}
  .hero-founder-portrait{padding:22px 16px!important}
  .hero-founder-portrait .portrait-frame{width:122px!important;height:148px!important;border-width:6px!important;box-shadow:7px 7px 0 #46739b!important}
  .hero-founder-portrait>strong{font-size:17px!important;margin-top:17px!important}
  .hero-founder-portrait>span{font-size:9px!important;max-width:145px!important}
  .portrait-sidecar>p{padding:16px 20px 17px!important;font-size:8.5px!important}
}
@media(max-width:480px){
  .sidecar-body{grid-template-columns:1fr!important}
  .sidecar-body>ol{padding:16px 20px 6px!important}
  .hero-founder-portrait{
    border-left:0!important;
    border-top:1px solid rgba(182,205,226,.14)!important;
    padding:22px 20px 24px!important;
  }
  .hero-founder-portrait .portrait-frame{width:136px!important;height:162px!important}
  .hero-founder-portrait>strong{font-size:19px!important}
  .hero-founder-portrait>span{font-size:9.5px!important;max-width:180px!important}
}


/* Bloom in practice v2 */
.practice-panel-v2{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(164,176,230,.24);
  border-radius:30px;
  background:
    radial-gradient(circle at 83% 18%,rgba(137,149,224,.17),transparent 28%),
    linear-gradient(180deg,#1d284b 0%,#151d35 100%);
  box-shadow:0 26px 60px rgba(4,8,20,.26),inset 0 1px 0 rgba(255,255,255,.045);
}
.practice-panel-v2:before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(rgba(174,185,238,.035) 1px,transparent 1px),
    linear-gradient(90deg,rgba(174,185,238,.035) 1px,transparent 1px);
  background-size:46px 46px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 92%);
}
.practice-panel-v2__top{
  position:relative;
  z-index:2;
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:0 30px;
  border-bottom:1px solid rgba(177,187,230,.14);
}
.practice-panel-v2__kicker{
  display:flex;
  align-items:center;
  gap:11px;
  color:#f2f8fd;
  font-size:10px;
  font-weight:800;
  letter-spacing:.2em;
  text-transform:uppercase;
}
.practice-panel-v2__dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#a9b3f4;
  box-shadow:0 0 0 5px rgba(169,179,244,.08);
}
.practice-panel-v2__strap{
  color:#9fa9d3;
  font-size:9px;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.practice-panel-v2__grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(225px,.82fr);
  min-height:420px;
}
.practice-panel-v2__steps{
  display:grid;
  align-content:center;
  padding:22px 30px 26px;
  border-right:1px solid rgba(177,187,230,.14);
}
.practice-step-v2{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) 28px;
  gap:16px;
  align-items:center;
  min-height:108px;
  padding:22px 0;
  border-bottom:1px solid rgba(177,187,230,.14);
}
.practice-step-v2:last-child{border-bottom:0}
.practice-step-v2__number{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border:1px solid rgba(175,185,233,.24);
  border-radius:50%;
  color:#aeb8f7;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  background:rgba(255,255,255,.025);
}
.practice-step-v2 h3{
  margin:0;
  color:#f8f9ff;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(24px,2vw,31px);
  font-weight:400;
  line-height:1.08;
  letter-spacing:-.035em;
}
.practice-step-v2 p{
  margin:7px 0 0;
  color:#c8d0ef;
  font-size:11px;
  line-height:1.6;
}
.practice-step-v2__mark{
  display:grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:50%;
  border:1px solid rgba(175,185,233,.2);
  color:#aeb8f7;
  font-size:13px;
  transition:transform .2s ease,border-color .2s ease,background .2s ease;
}
.practice-step-v2:hover .practice-step-v2__mark{
  transform:translate(2px,-2px);
  border-color:rgba(190,199,243,.42);
  background:rgba(255,255,255,.04);
}
.practice-founder-v2{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:34px 28px 30px;
  text-align:center;
  background:
    linear-gradient(180deg,rgba(54,68,114,.34),rgba(24,34,65,.12)),
    rgba(255,255,255,.015);
}
.practice-founder-v2__watermark{
  position:absolute;
  right:-56px;
  bottom:-58px;
  width:250px;
  height:250px;
  opacity:.035;
  filter:brightness(2.5) saturate(.7);
  pointer-events:none;
}
.practice-founder-v2__photo{
  position:relative;
  z-index:1;
  width:min(190px,78%);
  aspect-ratio:4/5;
  padding:8px;
  background:#f1f6fa;
  box-shadow:14px 14px 0 rgba(73,86,143,.86),0 18px 38px rgba(5,9,23,.28);
}
.practice-founder-v2__photo:before{
  content:'';
  position:absolute;
  inset:-14px 14px 14px -14px;
  border:1px solid rgba(164,176,230,.18);
  pointer-events:none;
}
.practice-founder-v2__photo img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center 24%;
}
.practice-founder-v2__copy{
  position:relative;
  z-index:1;
  margin-top:28px;
}
.practice-founder-v2__copy>span{
  display:block;
  margin-bottom:8px;
  color:#9eabeb;
  font-size:9px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.practice-founder-v2__copy h3{
  margin:0;
  color:#f8f9ff;
  font-family:Georgia,'Times New Roman',serif;
  font-size:27px;
  font-weight:400;
  line-height:1.05;
  letter-spacing:-.035em;
}
.practice-founder-v2__copy p{
  max-width:220px;
  margin:10px auto 0;
  color:#cbd2ed;
  font-size:10.5px;
  line-height:1.65;
}
@media(max-width:1100px){
  .practice-panel-v2__grid{grid-template-columns:minmax(0,1.1fr) minmax(205px,.9fr)}
  .practice-panel-v2__steps{padding-inline:24px}
  .practice-step-v2{grid-template-columns:42px minmax(0,1fr) 26px;gap:13px}
  .practice-founder-v2{padding-inline:22px}
  .practice-founder-v2__photo{width:min(170px,82%)}
}
@media(max-width:760px){
  .practice-panel-v2{border-radius:24px}
  .practice-panel-v2__top{min-height:64px;padding-inline:22px}
  .practice-panel-v2__strap{display:none}
  .practice-panel-v2__grid{grid-template-columns:1fr}
  .practice-panel-v2__steps{padding:14px 22px 10px;border-right:0;border-bottom:1px solid rgba(177,187,230,.14)}
  .practice-step-v2{min-height:92px;padding:18px 0}
  .practice-step-v2 h3{font-size:24px}
  .practice-founder-v2{display:grid;grid-template-columns:132px 1fr;column-gap:24px;align-items:center;text-align:left;padding:26px 22px}
  .practice-founder-v2__photo{width:132px}
  .practice-founder-v2__copy{margin-top:0}
  .practice-founder-v2__copy p{margin-left:0;margin-right:0}
}
@media(max-width:480px){
  .practice-panel-v2__top{padding-inline:18px}
  .practice-panel-v2__steps{padding-inline:18px}
  .practice-step-v2{grid-template-columns:34px minmax(0,1fr);gap:12px}
  .practice-step-v2__number{width:30px;height:30px}
  .practice-step-v2__mark{display:none}
  .practice-step-v2 h3{font-size:21px}
  .practice-step-v2 p{font-size:10px}
  .practice-founder-v2{grid-template-columns:108px 1fr;column-gap:18px;padding:22px 18px}
  .practice-founder-v2__photo{width:108px;padding:6px;box-shadow:9px 9px 0 rgba(73,86,143,.8)}
  .practice-founder-v2__copy h3{font-size:22px}
  .practice-founder-v2__copy>span{font-size:8px;letter-spacing:.1em}
  .practice-founder-v2__copy p{font-size:9.5px}
}
@media(prefers-reduced-motion:reduce){.practice-step-v2__mark{transition:none}}



/* Bloom practice panel final sizing polish */
.practice-panel-v2{
  border-radius:26px;
  border-color:rgba(173,184,236,.28);
  box-shadow:0 24px 56px rgba(3,7,18,.24),inset 0 1px 0 rgba(255,255,255,.055);
}
.practice-panel-v2__top{
  min-height:64px;
  padding:0 26px;
  gap:18px;
}
.practice-panel-v2__kicker{
  gap:10px;
  font-size:9.5px;
  letter-spacing:.19em;
}
.practice-panel-v2__dot{
  width:7px;
  height:7px;
  box-shadow:0 0 0 4px rgba(169,179,244,.075);
}
.practice-panel-v2__strap{
  max-width:210px;
  font-size:8.5px;
  letter-spacing:.095em;
  text-align:right;
  line-height:1.5;
}
.practice-panel-v2__grid{
  grid-template-columns:minmax(0,1.34fr) minmax(188px,.66fr);
  min-height:386px;
}
.practice-panel-v2__steps{
  padding:14px 28px 18px;
}
.practice-step-v2{
  grid-template-columns:42px minmax(0,1fr) 26px;
  gap:14px;
  min-height:104px;
  padding:18px 0;
}
.practice-step-v2__number{
  width:32px;
  height:32px;
  border-color:rgba(180,190,236,.27);
  font-size:8.5px;
  background:rgba(255,255,255,.03);
}
.practice-step-v2 h3{
  font-size:clamp(23px,1.75vw,28px);
  line-height:1.04;
  letter-spacing:-.03em;
}
.practice-step-v2 p{
  margin-top:6px;
  max-width:290px;
  font-size:10.5px;
  line-height:1.55;
}
.practice-step-v2__mark{
  width:26px;
  height:26px;
  font-size:12px;
  opacity:.9;
}
.practice-founder-v2{
  justify-content:center;
  padding:28px 22px 24px;
  background:
    radial-gradient(circle at 50% 18%,rgba(151,165,235,.12),transparent 42%),
    linear-gradient(180deg,rgba(53,68,114,.28),rgba(24,34,65,.10));
}
.practice-founder-v2:before{
  content:'';
  position:absolute;
  top:24px;
  left:50%;
  width:78px;
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg,transparent,rgba(183,193,239,.42),transparent);
}
.practice-founder-v2__watermark{
  right:-44px;
  bottom:-46px;
  width:210px;
  height:210px;
  opacity:.028;
}
.practice-founder-v2__photo{
  width:min(154px,76%);
  padding:7px;
  box-shadow:11px 11px 0 rgba(70,84,140,.78),0 16px 32px rgba(5,9,23,.24);
}
.practice-founder-v2__photo:before{
  inset:-10px 10px 10px -10px;
  border-color:rgba(166,178,231,.16);
}
.practice-founder-v2__copy{
  margin-top:22px;
}
.practice-founder-v2__copy>span{
  margin-bottom:7px;
  font-size:8px;
  letter-spacing:.13em;
}
.practice-founder-v2__copy h3{
  font-size:24px;
  letter-spacing:-.03em;
}
.practice-founder-v2__copy p{
  max-width:190px;
  margin-top:8px;
  font-size:9.5px;
  line-height:1.55;
}
@media(max-width:1180px){
  .practice-panel-v2__grid{grid-template-columns:minmax(0,1.28fr) minmax(178px,.72fr)}
  .practice-panel-v2__steps{padding-inline:24px}
  .practice-step-v2{grid-template-columns:38px minmax(0,1fr) 24px;gap:12px}
  .practice-step-v2__number{width:30px;height:30px}
  .practice-step-v2 h3{font-size:24px}
  .practice-founder-v2{padding-inline:18px}
  .practice-founder-v2__photo{width:min(144px,78%)}
  .practice-founder-v2__copy h3{font-size:22px}
}
@media(max-width:900px){
  .practice-panel-v2__top{padding-inline:22px}
  .practice-panel-v2__strap{display:none}
  .practice-panel-v2__grid{grid-template-columns:1fr}
  .practice-panel-v2__steps{
    padding:10px 22px 8px;
    border-right:0;
    border-bottom:1px solid rgba(177,187,230,.14);
  }
  .practice-step-v2{
    grid-template-columns:38px minmax(0,1fr) 24px;
    min-height:86px;
    padding:15px 0;
  }
  .practice-founder-v2{
    display:grid;
    grid-template-columns:118px minmax(0,1fr);
    column-gap:22px;
    align-items:center;
    justify-items:start;
    text-align:left;
    padding:24px 22px;
  }
  .practice-founder-v2:before{display:none}
  .practice-founder-v2__photo{width:118px}
  .practice-founder-v2__copy{margin-top:0}
  .practice-founder-v2__copy p{margin-left:0;margin-right:0}
}
@media(max-width:520px){
  .practice-panel-v2{border-radius:21px}
  .practice-panel-v2__top{min-height:58px;padding-inline:17px}
  .practice-panel-v2__kicker{font-size:8.8px}
  .practice-panel-v2__steps{padding-inline:17px}
  .practice-step-v2{
    grid-template-columns:31px minmax(0,1fr);
    gap:11px;
    min-height:80px;
    padding:14px 0;
  }
  .practice-step-v2__number{width:27px;height:27px;font-size:8px}
  .practice-step-v2__mark{display:none}
  .practice-step-v2 h3{font-size:20px}
  .practice-step-v2 p{font-size:9.5px}
  .practice-founder-v2{
    grid-template-columns:92px minmax(0,1fr);
    column-gap:17px;
    padding:20px 17px;
  }
  .practice-founder-v2__photo{
    width:92px;
    padding:5px;
    box-shadow:7px 7px 0 rgba(70,84,140,.76),0 12px 24px rgba(5,9,23,.2);
  }
  .practice-founder-v2__copy>span{font-size:7.3px;letter-spacing:.09em}
  .practice-founder-v2__copy h3{font-size:19px}
  .practice-founder-v2__copy p{font-size:8.8px;line-height:1.5}
}


/* Practice panel header final alignment fix */
.practice-panel-v2__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.practice-panel-v2__kicker{
  flex:0 0 auto;
  white-space:nowrap;
}
.practice-panel-v2__strap{
  flex:0 0 auto;
  width:auto;
  max-width:none;
  white-space:nowrap;
  text-align:right;
  line-height:1;
  font-size:8.5px;
  letter-spacing:.09em;
}
@media(max-width:1020px){
  .practice-panel-v2__top{gap:16px}
  .practice-panel-v2__strap{font-size:8px;letter-spacing:.07em}
}
@media(max-width:900px){
  .practice-panel-v2__strap{display:none}
}


/* FINAL BLUE VISIBILITY AUDIT */
/* Dark surfaces: force readable hierarchy */
.hero h1,.hero h2,.hero h3,.hero strong,
.intro-strip h2,.intro-strip h3,.intro-strip strong,
.calculator-results h2,.calculator-results h3,.calculator-results strong,
.friction-results h2,.friction-results h3,.friction-results h4,.friction-results strong,
.training-lab h2,.training-lab h3,.training-lab h4,.training-lab strong,
.process-section h2,.process-section h3,.process-section strong,
.quote-section h2,.quote-section h3,.quote-section blockquote,.quote-section strong,
.about-section h2,.about-section h3,.about-section strong,
.contact-section h2,.contact-section h3,.contact-section strong,
.practice-panel-v2 h2,.practice-panel-v2 h3,.practice-panel-v2 strong,
footer h2,footer h3,footer strong{
  color:#f7fbfd!important;
}
.hero p,.hero small,.hero span,
.intro-strip p,.intro-strip small,.intro-strip span,
.calculator-results p,.calculator-results small,.calculator-results span,
.friction-results p,.friction-results small,.friction-results span,
.training-lab p,.training-lab small,.training-lab span,
.process-section p,.process-section small,
.quote-section p,.quote-section small,.quote-section span,
.about-section p,.about-section small,.about-section span,
.contact-section p,.contact-section small,.contact-section span,
.practice-panel-v2 p,.practice-panel-v2 small,
footer p,footer small,footer span{
  color:#c9d9e6;
}
.hero .eyebrow,.training-lab .eyebrow,.process-section .eyebrow,
.quote-section .eyebrow,.about-section .eyebrow,.contact-section .eyebrow,
.practice-panel-v2__kicker,.practice-panel-v2__strap,
.calculator-results .eyebrow,.friction-results .eyebrow{
  color:#91bfe3!important;
}

/* Calculator/results specifics */
.calculator-results{background:linear-gradient(180deg,#1e4667 0%,#183a57 100%)!important}
.calculator-results .result-amount,
.calculator-results .comparison strong,
.calculator-results .result-breakdown strong,
.calculator-results .net-result strong{
  color:#f7fbfd!important;
}
.calculator-results .comparison>div:not(.bar-track),
.calculator-results .result-subtitle,
.calculator-results .result-caveat,
.calculator-results .result-breakdown small,
.calculator-results .net-result small{
  color:#d3e3ee!important;
}
.calculator-results .period-switch{background:#10283c!important;border-color:#7399b8!important}
.calculator-results .period-switch button{color:#d9e7f0!important}
.calculator-results .period-switch button[aria-pressed=true]{background:#9fc8e6!important;color:#10283c!important}
.calculator-results .bar-track{background:#0e2234!important;border-color:rgba(149,190,221,.22)!important}
.calculator-results .bar-track>span{background:#9fc3df!important}
.calculator-results .bar-track #target-bar{background:#c3dced!important}
.calculator-results .net-result{background:#2d668f!important;border-color:#80afcf!important}

/* Sales-process checker specifics */
.friction-results{background:linear-gradient(180deg,#1d4667 0%,#183a57 100%)!important}
.friction-ring{background:conic-gradient(#acd0e8 var(--friction-angle),#557991 0)!important}
.friction-ring:before{background:#193b58!important}
.friction-ring strong,.friction-day,.friction-crosslink strong{color:#b9d7ea!important}
.friction-readout,.friction-output{border-color:#789fbd!important}
.friction-empty{border-color:#87aecb!important}
.friction-plan li{border-left-color:#91b8d5!important}

/* Light surfaces: readable dark navy and secondary copy */
.section-light h1,.section-light h2,.section-light h3,.section-light h4,
.key-functions h1,.key-functions h2,.key-functions h3,
.diagnosis h1,.diagnosis h2,.diagnosis h3,
.commercial-architecture h1,.commercial-architecture h2,.commercial-architecture h3,
.recommendations-section h1,.recommendations-section h2,.recommendations-section h3,
.projects-section h1,.projects-section h2,.projects-section h3,
.faq-section h1,.faq-section h2,.faq-section h3,
.locations-section h1,.locations-section h2,.locations-section h3,
.brief-form h1,.brief-form h2,.brief-form h3,
.service-card h3,.system-step-copy h3{
  color:#17364f!important;
}
.section-light p,.section-light li,.section-light small,
.key-functions p,.key-functions li,.key-functions small,
.diagnosis p,.diagnosis li,.diagnosis small,
.commercial-architecture p,.commercial-architecture li,.commercial-architecture small,
.recommendations-section p,.recommendations-section li,.recommendations-section small,
.projects-section p,.projects-section li,.projects-section small,
.faq-section p,.faq-section li,.faq-section small,
.locations-section p,.locations-section li,.locations-section small,
.brief-form p,.brief-form small,.service-card p,.service-card li,.service-card small,
.system-step-copy p,.system-step-copy small{
  color:#536d81;
}
.section-light .eyebrow,.key-functions .eyebrow,.diagnosis .eyebrow,
.commercial-architecture .eyebrow,.recommendations-section .eyebrow,
.projects-section .eyebrow,.faq-section .eyebrow,.locations-section .eyebrow{
  color:#4f7899!important;
}
.section-light a,.key-functions a,.diagnosis a,.commercial-architecture a,
.recommendations-section a,.projects-section a,.faq-section a,.locations-section a{
  color:#2f6f9f;
}

/* Controls, inputs and inactive states */
input,textarea,select{color:#17364f}
input::placeholder,textarea::placeholder{color:#73899b!important;opacity:1}
button:disabled,[aria-disabled=true]{opacity:.62}
.diagnosis-tab strong,.diagnosis-tab i,.diagnosis-panel h3{color:#17364f!important}
.diagnosis-tab>span,.panel-top{color:#607e96!important}
.diagnosis-panel>p,.check-list li{color:#536d81!important}
.diagnosis-panel .first-move{background:linear-gradient(135deg,#193f5e 0%,#20577d 100%)!important}
.diagnosis-panel .first-move p{color:#eef7fc!important}
.diagnosis-panel .first-move .eyebrow{color:#b8d8ed!important}

/* System-view module */
.commercial-architecture{background:linear-gradient(180deg,#f6f9fb 0%,#eef4f8 100%)!important}
.architecture-system{border-color:#cddce7!important;box-shadow:0 30px 72px rgba(21,56,83,.10)!important}
.system-toolbar{background:#f7fafc!important;color:#607e96!important;border-color:#d7e4ec!important}
.system-toolbar span:last-child{color:#7694aa!important}
.system-step{border-color:#d9e5ed!important;background:#fff!important}
.system-step:hover{background:#f1f7fb!important}
.system-step-index span{color:#3f7fb5!important}
.system-step-index i{background:#75a9d2!important}
.system-step-arrow{color:#5d94c0!important}

/* Practice panel */
.practice-panel-v2{border-color:rgba(137,180,216,.34)!important;background:linear-gradient(180deg,#183b59 0%,#142f49 100%)!important}
.practice-panel-v2__top{border-bottom-color:rgba(171,204,228,.15)!important}
.practice-panel-v2__steps{border-right-color:rgba(171,204,228,.15)!important}
.practice-step-v2{border-bottom-color:rgba(171,204,228,.13)!important}
.practice-step-v2__number{color:#98c5e6!important;border-color:rgba(158,196,225,.25)!important}
.practice-step-v2 h3{color:#f7fbfd!important}
.practice-step-v2 p{color:#c8dbe8!important}
.practice-founder-v2__copy h3{color:#f7fbfd!important}
.practice-founder-v2__copy p{color:#c6d9e6!important}
.practice-founder-v2__copy>span{color:#90bce0!important}

/* Process / branch cards */
.process-grid>li{background:linear-gradient(180deg,rgba(29,69,101,.96) 0%,rgba(18,45,69,.99) 100%)!important;border-color:rgba(146,188,220,.26)!important}
.process-grid>li>span{color:#b4d7ed!important;border-color:rgba(174,207,231,.25)!important}
.process-grid h3{color:#f7fbfd!important}
.process-grid p{color:#d0e0ea!important}
.process-grid small{color:#adc7d9!important;border-top-color:rgba(169,199,221,.20)!important}
.process-grid small:before{background:#7faed1!important}

/* Map and contact */
.service-map-stage{background:radial-gradient(circle at 73% 78%,rgba(98,157,207,.15),transparent 29%),linear-gradient(145deg,#153d5c 0%,#102c43 62%,#0c2032 100%)!important}
.service-map-detail h3{color:#17364f!important}
.service-map-detail p,.service-map-detail small{color:#536d81!important}
.contact-section .brief-form h3,.contact-section .brief-form label,.contact-section .brief-form strong{color:#17364f!important}
.contact-section .brief-form p,.contact-section .brief-form small{color:#5b7386!important}

/* Link/button contrast */
.button-brass{background:#78afe0!important;color:#10283b!important}
.button-brass:hover{background:#93c0e5!important}
.text-link{border-bottom-color:currentColor}
.dark-button,.header-cta{font-weight:700}



/* Final blue cohesion pass */
/* Keep the palette blue, but separate major surfaces with navy / steel / coastal tones. */
.practice-panel-v2{
  border-color:rgba(132,179,214,.34)!important;
  background:
    radial-gradient(circle at 78% 12%,rgba(111,166,207,.10),transparent 30%),
    linear-gradient(180deg,#173f5e 0%,#122f48 100%)!important;
}
.practice-panel-v2__top{
  background:rgba(8,28,44,.12);
  border-bottom-color:rgba(177,207,228,.16)!important;
}
.practice-panel-v2__steps{
  border-right-color:rgba(177,207,228,.14)!important;
}
.practice-step-v2{border-bottom-color:rgba(177,207,228,.13)!important}
.practice-step-v2__number{
  color:#9bc9e8!important;
  border-color:rgba(156,199,229,.27)!important;
  background:rgba(123,178,218,.045)!important;
}
.practice-step-v2__mark{
  color:#a7d0e9!important;
  border-color:rgba(160,201,230,.24)!important;
}
.practice-founder-v2{
  background:
    radial-gradient(circle at 50% 18%,rgba(126,183,221,.17),transparent 44%),
    linear-gradient(180deg,#19496b 0%,#153a57 100%)!important;
}
.practice-founder-v2:before{
  background:linear-gradient(90deg,transparent,rgba(183,216,237,.42),transparent)!important;
}
.practice-founder-v2__photo{
  background:#edf5fa!important;
  box-shadow:11px 11px 0 #557fa5,0 16px 32px rgba(4,19,31,.24)!important;
}
.practice-founder-v2__photo:before{
  border-color:rgba(142,187,219,.24)!important;
}
.practice-founder-v2__photo:after{
  content:'';
  position:absolute;
  inset:7px;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(70,133,177,.045),rgba(27,83,122,.02));
  mix-blend-mode:soft-light;
}
.practice-founder-v2__photo img{
  filter:saturate(.92) contrast(1.025) brightness(1.015)!important;
}
.practice-founder-v2__copy>span{color:#9bc8e5!important}
.practice-founder-v2__copy p{color:#c9dce8!important}
.practice-founder-v2__watermark{
  opacity:.034!important;
  filter:brightness(2.2) saturate(.25)!important;
}
@media(max-width:520px){
  .practice-founder-v2__photo{
    box-shadow:7px 7px 0 #557fa5,0 12px 24px rgba(4,19,31,.2)!important;
  }
}

/* Map: remove the remaining indigo cast and give the module its own steel-blue identity. */
.locations-section{
  background:linear-gradient(180deg,#eef5f9 0%,#f6f9fb 100%)!important;
  border-block-color:#d5e2eb!important;
}
.service-map-shell{
  border-color:#c9dbe7!important;
  box-shadow:0 30px 72px rgba(27,72,104,.11)!important;
}
.service-map-toolbar{
  background:#f9fbfc!important;
  border-bottom-color:#d5e3ec!important;
}
.service-map-toolbar>div{
  background:#eaf2f7!important;
  border-color:#cbdde8!important;
}
.map-mode-button{color:#506f87!important}
.map-mode-button:hover{color:#214f71!important}
.map-mode-button.is-active,
.map-mode-button[aria-pressed=true]{
  background:#2e6f9d!important;
  color:#fff!important;
  box-shadow:0 5px 16px rgba(24,75,110,.16)!important;
}
.service-map-stage{
  background:
    radial-gradient(circle at 74% 78%,rgba(104,173,216,.17),transparent 31%),
    radial-gradient(circle at 24% 20%,rgba(73,130,171,.10),transparent 30%),
    linear-gradient(145deg,#123f5f 0%,#0f314b 60%,#0a2235 100%)!important;
}
.service-map-stage:before{
  background:
    linear-gradient(rgba(187,215,232,.04) 1px,transparent 1px),
    linear-gradient(90deg,rgba(187,215,232,.035) 1px,transparent 1px)!important;
}
.service-map-canvas{
  background:#0e2d45!important;
  border-color:rgba(151,195,223,.24)!important;
  box-shadow:0 22px 55px rgba(2,19,31,.34)!important;
}
.service-map-canvas:before{
  background:linear-gradient(90deg,rgba(4,28,43,.18),transparent 22%,transparent 74%,rgba(4,28,43,.08))!important;
}
.map-glow--canada{
  background:radial-gradient(ellipse,rgba(84,150,194,.15),rgba(84,150,194,0) 69%)!important;
}
.map-glow--ontario{
  background:radial-gradient(circle,rgba(134,195,229,.22),rgba(134,195,229,0) 68%)!important;
}
.map-status-card{
  border-color:rgba(160,201,225,.34)!important;
  background:rgba(7,34,51,.78)!important;
  color:#f2f8fb!important;
}
.map-status-card span{color:#9ecbe6!important}
.map-status-card small{color:#bfd9e9!important}
.map-pin>i{
  border-color:#f1f7fa!important;
  background:#77b3d8!important;
  box-shadow:0 0 0 5px rgba(119,179,216,.16),0 0 0 10px rgba(119,179,216,.06)!important;
}
.map-pin>span{
  border-color:rgba(169,207,229,.34)!important;
  background:rgba(7,32,49,.95)!important;
  color:#f7fbfd!important;
}
.map-pin>span:after{
  background:rgba(7,32,49,.95)!important;
  border-right-color:rgba(169,207,229,.34)!important;
  border-bottom-color:rgba(169,207,229,.34)!important;
}
.map-pin small{color:#a6cee5!important}
.map-pin:hover>i,.map-pin:focus-visible>i,.map-pin.is-active>i{
  background:#e8f3f8!important;
  box-shadow:0 0 0 6px rgba(137,195,227,.20),0 0 0 14px rgba(137,195,227,.08)!important;
}
.map-remote-button{
  border-color:rgba(155,196,221,.34)!important;
  background:rgba(7,31,47,.78)!important;
  color:#f2f8fb!important;
}
.map-remote-button span{color:#a7cee5!important}
.map-remote-button small{color:#c3dce9!important}
.map-remote-button:hover,.map-remote-button:focus-visible,.map-remote-button.is-active{
  background:rgba(36,91,126,.94)!important;
  border-color:rgba(194,222,239,.72)!important;
}
.service-map-shell[data-map-mode=virtual] .service-map-canvas>img{
  filter:saturate(.92) brightness(.98)!important;
}
.service-map-detail{
  background:linear-gradient(180deg,#f7fafc 0%,#edf4f8 100%)!important;
}
.service-map-detail .location-list>button{
  border-color:#d4e1e9!important;
  background:#fbfdfe!important;
}
.service-map-detail .location-list>button:hover{
  background:#eaf3f8!important;
  border-color:#c5d9e6!important;
}
.service-map-detail .location-list>button.is-active{
  background:#deedf6!important;
  border-color:#bfd6e4!important;
}
.service-map-cta{
  background:#2e6f9d!important;
  border-color:#2e6f9d!important;
}
.service-map-cta:hover{
  background:#245b82!important;
  border-color:#245b82!important;
}

/* Small tonal breaks elsewhere — same palette, less monolithic. */
.intro-strip{background:linear-gradient(90deg,#1b3a54 0%,#204766 100%)!important}
.training-lab{background:#112b40!important}
.calculator-results{background:linear-gradient(180deg,#214e70 0%,#193b58 100%)!important}
.friction-results{background:linear-gradient(180deg,#1e4868 0%,#18374f 100%)!important}
.process-section{
  background:
    radial-gradient(circle at 18% 0%,rgba(100,167,211,.09),transparent 28%),
    radial-gradient(circle at 82% 0%,rgba(81,147,193,.07),transparent 24%),
    linear-gradient(180deg,#0f2335 0%,#123550 100%)!important;
}


/* MIXED-SURFACE VISIBILITY SAFEGUARD
   Explicitly protects light cards nested inside dark sections from global light-text rules. */
.hero .linkedin-banner{
  background:linear-gradient(115deg,#f2f7fb 0%,#e5eff7 58%,#d7e8f3 100%)!important;
  border-color:#c5d9e7!important;
  color:#16364f!important;
  box-shadow:0 10px 26px rgba(22,66,96,.10)!important;
}
.hero .linkedin-banner:hover{
  background:linear-gradient(115deg,#f7fafc 0%,#ebf3f8 58%,#dfedf5 100%)!important;
  border-color:#b8d2e3!important;
}
.hero .linkedin-banner .linkedin-copy,
.hero .linkedin-banner .linkedin-copy span{
  color:#16364f!important;
}
.hero .linkedin-banner .linkedin-copy small{
  color:#315f7d!important;
}
.hero .linkedin-banner .linkedin-copy strong{
  color:#15364f!important;
}
.hero .linkedin-banner .linkedin-copy em{
  color:#4e6d82!important;
}
.hero .linkedin-banner .linkedin-action{
  background:#153a55!important;
  color:#ffffff!important;
}
.hero .linkedin-banner:hover .linkedin-action{
  background:#236f9f!important;
  color:#ffffff!important;
}
.hero .linkedin-banner .linkedin-brandmark,
.hero .linkedin-banner .linkedin-brandmark *{
  color:#ffffff!important;
}

/* Contact form is a light island inside the dark contact section. */
.contact-section .brief-form{
  background:#f7fafc!important;
  border-color:#d2e0ea!important;
  color:#17364f!important;
}
.contact-section .brief-form h1,
.contact-section .brief-form h2,
.contact-section .brief-form h3,
.contact-section .brief-form label,
.contact-section .brief-form strong{
  color:#17364f!important;
}
.contact-section .brief-form p,
.contact-section .brief-form small,
.contact-section .brief-form label span,
.contact-section .brief-form .form-note,
.contact-section .brief-form .form-status{
  color:#597287!important;
}
.contact-section .brief-form a{color:#2e6f9d!important}
.contact-section .brief-form input,
.contact-section .brief-form textarea,
.contact-section .brief-form select{
  background:#ffffff!important;
  color:#17364f!important;
  border-color:#c8d8e4!important;
}
.contact-section .brief-form input::placeholder,
.contact-section .brief-form textarea::placeholder{color:#7d91a1!important}
.contact-section .calculation-attachment{
  background:#edf4f8!important;
  border-color:#d3e2eb!important;
  color:#17364f!important;
}
.contact-section .calculation-attachment strong,
.contact-section .calculation-attachment summary,
.contact-section .calculation-attachment pre{
  color:#17364f!important;
}

/* Calculator inputs: pale panel next to dark results. */
.calculator-inputs,
.calculator-inputs h2,
.calculator-inputs h3,
.calculator-inputs strong,
.calculator-inputs label{
  color:#17364f!important;
}
.calculator-inputs p,
.calculator-inputs small,
.calculator-inputs .microcopy,
.calculator-inputs .range-ends,
.calculator-inputs .input-intro{
  color:#5a7387!important;
}
.calculator-inputs input,
.calculator-inputs select{
  color:#17364f!important;
  background:#ffffff!important;
}

/* Sales-friction input area. */
.friction-inputs,
.friction-inputs h2,
.friction-inputs h3,
.friction-inputs strong,
.friction-inputs label{
  color:#17364f!important;
}
.friction-inputs p,
.friction-inputs small,
.friction-inputs .friction-detail,
.friction-inputs .friction-privacy,
.friction-inputs .friction-status{
  color:#587186!important;
}

/* Light cards throughout the body. */
.service-card,
.function-card,
.recommendation-card,
.system-step,
.service-map-detail,
.diagnosis-panel{
  color:#17364f!important;
}
.service-card h3,.service-card strong,
.function-card h3,.function-card strong,
.recommendation-card h3,.recommendation-card strong,.recommendation-card blockquote,
.system-step h3,.system-step strong,
.service-map-detail h3,.service-map-detail strong,
.diagnosis-panel h3,.diagnosis-panel strong{
  color:#17364f!important;
}
.service-card p,.service-card li,.service-card small,
.function-card p,.function-card li,.function-card small,
.recommendation-card p,.recommendation-card li,.recommendation-card small,
.system-step p,.system-step small,
.service-map-detail p,.service-map-detail small,
.diagnosis-panel p,.diagnosis-panel li,.diagnosis-panel small{
  color:#566f82!important;
}

/* Explicit exceptions for dark callouts nested inside light modules. */
.diagnosis-panel .first-move,
.system-outcome{
  color:#f7fbfd!important;
}
.diagnosis-panel .first-move h3,
.diagnosis-panel .first-move strong,
.system-outcome h3,
.system-outcome strong{
  color:#f7fbfd!important;
}
.diagnosis-panel .first-move p,
.diagnosis-panel .first-move small,
.system-outcome p,
.system-outcome small{
  color:#d5e4ee!important;
}

/* Map light-detail controls. */
.service-map-detail .location-list>button{
  color:#17364f!important;
}
.service-map-detail .location-list>button span,
.service-map-detail .location-list>button small{
  color:#5d778a!important;
}
.service-map-detail .location-list>button strong{
  color:#17364f!important;
}

/* Do not let generic hero/footer span rules weaken button/icon contrast. */
.button-brass span,
.header-cta span,
.linkedin-action,
.service-map-cta span{
  color:inherit!important;
}
