/**
 * Strategic page refinement — institutional editorial density
 * Scoped: body.strategic-page · load after strategic.css
 */

body.strategic-page{
  --sr-line:rgba(17,17,17,0.12);
  --sr-line-strong:rgba(17,17,17,0.2);
  --sr-headline-size:var(--bh-type-h2);
  --sr-body-size:var(--bh-type-prose);
  --sr-body-lede:var(--bh-type-prose-lede);
  --sr-section-y:var(--bh-section-y);
  --sr-section-y-loose:var(--bh-section-y-loose);
  --sr-env-bleed:clamp(28px,5vw,72px);
  --sr-env-photo-w:124%;
  --sr-env-photo-h:118%;
  --sr-env-bleed-r:calc(-1 * clamp(12px,2.4vw,36px));
  --sr-env-focal-r:70% 38%;
  --sr-hero-env-opacity:0.72;
  --sr-hero-env-filter:grayscale(18%) contrast(1.12) saturate(0.82);
  --bh-footer-fade:1400ms;
  --bh-footer-quote-interval:28000ms;
}

/* -------------------------------------------------------------------------
   Typography — cross-page hierarchy
   ------------------------------------------------------------------------- */
body.strategic-page .sr-h2,
body.strategic-page .sr-statement{
  font-size:var(--sr-headline-size);
  letter-spacing:-0.034em;
  line-height:1.06;
  color:var(--bh-ink);
}

body.strategic-page .sr-h2{
  margin-bottom:clamp(var(--bh-space-3),2.4vw,var(--bh-space-4));
}

body.strategic-page .sr-prose,
body.strategic-page .sr-body-text{
  font-size:var(--sr-body-size);
  line-height:1.62;
  color:var(--bh-ink-3);
}

body.strategic-page .sr-prose p{
  margin-top:clamp(var(--bh-space-3),2.2vw,var(--bh-space-4));
}

body.strategic-page .sr-prose__emph{
  font-size:var(--sr-body-lede);
  color:var(--bh-ink);
  margin-top:clamp(var(--bh-space-4),2.8vw,var(--bh-space-5))!important;
}

body.strategic-page .sr-list{
  margin-top:clamp(var(--bh-space-3),2.4vw,var(--bh-space-4));
}

body.strategic-page .sr-list li{
  font-size:var(--sr-body-size);
  line-height:1.62;
  color:var(--bh-ink-2);
  padding:var(--bh-space-2) 0 var(--bh-space-2) var(--bh-space-5);
}

body.strategic-page .sr-rule{
  margin:clamp(var(--bh-space-3),2.2vw,var(--bh-space-4)) 0 clamp(var(--bh-space-4),2.8vw,var(--bh-space-5));
  background:linear-gradient(90deg,var(--bh-accent) 0,var(--bh-accent) 36%,var(--sr-line-strong) 36%,var(--sr-line-strong) 100%);
}

/* -------------------------------------------------------------------------
   Mid-page rhythm — additional ~12% compression
   ------------------------------------------------------------------------- */
body.strategic-page .sr-block{
  padding:var(--sr-section-y) 0;
  border-top-color:var(--sr-line);
}

body.strategic-page .sr-methodology{
  padding:var(--sr-section-y-loose) 0;
  border-top-color:var(--sr-line);
}

body.strategic-page .sr-methodology__head{
  margin-bottom:clamp(var(--bh-space-5),4.5vw,var(--bh-space-6));
}

body.strategic-page .sr-qualify{
  padding:var(--sr-section-y-loose) 0;
}

body.strategic-page .sr-qualify__head{
  margin-bottom:clamp(var(--bh-space-5),4.5vw,var(--bh-space-6));
}

/* -------------------------------------------------------------------------
   Hero — monochrome geometry · right bleed · compressed
   ------------------------------------------------------------------------- */
body.strategic-page .sr-hero__grid{
  gap:clamp(var(--bh-space-5),5vw,var(--bh-space-7));
  padding:var(--bh-hero-y-top) 0 var(--bh-hero-y-bottom);
}

body.strategic-page .sr-hero-kicker{
  margin-bottom:var(--bh-space-4);
  color:rgba(17,17,17,0.52);
}

body.strategic-page .sr-hero-title{
  margin-bottom:clamp(var(--bh-space-4),3.2vw,var(--bh-space-6));
}

body.strategic-page .sr-hero-title__line{
  color:var(--bh-ink);
}

body.strategic-page .sr-hero-sub{
  font-size:var(--sr-body-size);
  line-height:1.62;
  color:var(--bh-ink-3);
}

body.strategic-page .sr-hero-body{
  margin-top:clamp(var(--bh-space-4),3.2vw,var(--bh-space-5));
  font-size:var(--sr-body-lede);
  color:var(--bh-ink-2);
}

body.strategic-page .sr-hero-actions{
  margin-top:clamp(var(--bh-space-4),3.2vw,var(--bh-space-5));
}

body.strategic-page .sr-hero-visual{
  position:relative;
  overflow:visible;
  align-self:stretch;
  width:min(48vw,520px);
  min-height:clamp(128px,17vw,212px);
  margin-right:calc(-1 * clamp(32px,6vw,96px));
  margin-left:auto;
}

body.strategic-page .sr-hero-visual .sr-arch__crop{
  border:var(--bh-hairline) solid rgba(17,17,17,0.1);
  clip-path:polygon(0 8%,100% 0,100% 92%,0 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.65);
  position:absolute;
  top:0;
  right:calc(-1 * (var(--sr-env-bleed) + min(4vw,40px)));
  bottom:0;
  left:auto;
  width:calc(100% + var(--sr-env-bleed) + min(16vw,120px));
  min-height:clamp(128px,17vw,212px);
}

body.strategic-page .sr-hero-visual .sr-arch__crop::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
  background:linear-gradient(
    90deg,
    var(--bh-bg) 0%,
    var(--bh-bg) 26%,
    rgba(255,255,255,0.72) 46%,
    rgba(255,255,255,0.14) 66%,
    transparent 90%
  );
}

body.strategic-page .sr-hero::after{
  top:clamp(32px,8vh,78px);
  height:clamp(84px,14vh,140px);
}

/* -------------------------------------------------------------------------
   What Fragmentation Produces — spacing · alignment
   ------------------------------------------------------------------------- */
body.strategic-page .sr-fragmentation{
  background:var(--bh-bg);
}

body.strategic-page .sr-fragmentation__inner{
  max-width:38rem;
  padding-left:clamp(var(--bh-space-4),3.6vw,var(--bh-space-6));
  border-left:2px solid var(--bh-accent);
}

body.strategic-page .sr-fragmentation__list{
  margin-top:clamp(var(--bh-space-4),2.8vw,var(--bh-space-5));
}

body.strategic-page .sr-fragmentation__list li{
  padding:var(--bh-space-2) 0 var(--bh-space-2) var(--bh-space-4);
  border-top-color:var(--sr-line);
}

/* -------------------------------------------------------------------------
   Directional process architecture — authority · clarity
   ------------------------------------------------------------------------- */
body.strategic-page .sr-flow{
  border-color:rgba(17,17,17,0.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.95);
  padding:clamp(var(--bh-space-4),3.6vw,var(--bh-space-6));
}

body.strategic-page .sr-flow__chrome{
  margin-bottom:var(--bh-space-4);
  padding-bottom:var(--bh-space-3);
  border-bottom-color:rgba(17,17,17,0.16);
}

body.strategic-page .sr-flow__schema-id{
  color:var(--sr-teal);
}

body.strategic-page .sr-flow__chrome-line{
  background:linear-gradient(90deg,rgba(34,162,159,0.55) 0%,rgba(17,17,17,0.18) 38%,rgba(17,17,17,0.18) 100%);
}

body.strategic-page .sr-flow__stage{
  border-color:rgba(17,17,17,0.22);
  padding:clamp(var(--bh-space-4),3.2vw,var(--bh-space-5));
  gap:var(--bh-space-2);
}

body.strategic-page .sr-flow__stage--b{
  border-color:rgba(255,255,255,0.14);
  background:linear-gradient(168deg,#2a2a2a 0%,#1a1a1a 52%,#222 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.08);
}

body.strategic-page .sr-flow__phase{
  font-size:var(--bh-type-schema);
  font-weight:600;
  color:rgba(17,17,17,0.56);
  letter-spacing:var(--bh-letter-kicker);
}

body.strategic-page .sr-flow__stage--b .sr-flow__phase{
  color:rgba(235,235,235,0.64);
}

body.strategic-page .sr-flow__name{
  font-size:var(--sr-body-lede);
  font-weight:500;
  line-height:1.38;
  color:var(--bh-ink);
}

body.strategic-page .sr-flow__stage--b .sr-flow__name{
  color:#fafafa;
}

body.strategic-page .sr-flow__text{
  font-size:var(--sr-body-size);
  line-height:1.58;
  color:var(--bh-ink-3);
}

body.strategic-page .sr-flow__stage--b .sr-flow__text{
  color:rgba(235,235,235,0.84);
  font-size:var(--sr-body-size);
}

body.strategic-page .sr-flow__glyph{
  display:none;
}

body.strategic-page .sr-flow__bridge::before{
  width:2px;
  background:linear-gradient(180deg,transparent,rgba(34,162,159,0.68),transparent);
}

body.strategic-page .sr-flow__bridge-tag{
  color:rgba(17,17,17,0.52);
  font-size:var(--bh-type-schema);
  font-weight:600;
  letter-spacing:var(--bh-letter-kicker);
  text-transform:uppercase;
}

body.strategic-page .sr-flow__foot{
  margin-top:clamp(var(--bh-space-4),3.6vw,var(--bh-space-5));
  padding-top:var(--bh-space-4);
  border-top-color:var(--sr-line);
  font-size:var(--sr-body-size);
  font-style:normal;
  color:var(--bh-ink-2);
}

body.strategic-page .sr-methodology__label{
  color:rgba(17,17,17,0.52);
}

body.strategic-page .sr-methodology__deck{
  font-size:var(--sr-body-size);
  line-height:1.58;
  color:var(--bh-ink-3);
  margin-top:clamp(var(--bh-space-3),2.4vw,var(--bh-space-4));
}

/* -------------------------------------------------------------------------
   Conventional vs Strategic — editorial comparison
   ------------------------------------------------------------------------- */
body.strategic-page .sr-compare__heading{
  max-width:min(100%,48rem);
}

body.strategic-page .sr-compare__vs{
  font-weight:500;
  color:var(--bh-ink-3);
}

body.strategic-page .sr-compare{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:clamp(var(--bh-space-5),4.2vw,var(--bh-space-7));
  align-items:stretch;
  max-width:52rem;
}

body.strategic-page .sr-compare__col{
  display:flex;
  flex-direction:column;
}

body.strategic-page .sr-compare__col-head{
  margin:0 0 var(--bh-space-3);
  padding-bottom:var(--bh-space-2);
  font-size:11px;
  letter-spacing:0.1em;
}

body.strategic-page .sr-compare__col--conventional .sr-compare__col-head{
  color:rgba(17,17,17,0.46);
  border-bottom-color:rgba(17,17,17,0.1);
}

body.strategic-page .sr-compare__col--strategic .sr-compare__col-head{
  color:var(--bh-ink);
  border-bottom-color:rgba(34,162,159,0.4);
}

body.strategic-page .sr-compare__items{
  flex:1;
}

body.strategic-page .sr-compare__items li{
  padding:var(--bh-space-2) 0;
  min-height:2.75rem;
  display:flex;
  align-items:center;
  font-size:var(--sr-body-size);
  line-height:1.52;
  border-bottom-color:rgba(17,17,17,0.08);
}

body.strategic-page .sr-compare__col--conventional .sr-compare__items li{
  color:var(--bh-ink-3);
}

body.strategic-page .sr-compare__col--strategic .sr-compare__items li{
  color:var(--bh-ink);
  font-weight:500;
}

body.strategic-page .sr-compare__col--conventional{
  padding-right:clamp(var(--bh-space-4),3.6vw,var(--bh-space-6));
  border-right:var(--bh-hairline) solid var(--sr-line-strong);
}

body.strategic-page .sr-compare__col--strategic{
  padding-left:clamp(var(--bh-space-3),2.6vw,var(--bh-space-4));
}

/* -------------------------------------------------------------------------
   Selection logic — editorial · de-card
   ------------------------------------------------------------------------- */
body.strategic-page .sr-qualify__label{
  color:rgba(17,17,17,0.52);
}

body.strategic-page .sr-qualify__deck{
  font-size:var(--sr-body-size);
  line-height:1.62;
  color:var(--bh-ink-3);
}

body.strategic-page .sr-qualify__frame{
  gap:clamp(var(--bh-space-4),3.6vw,var(--bh-space-6));
}

body.strategic-page .sr-qualify__rail{
  border-color:var(--sr-line);
  background:transparent;
  padding:var(--bh-space-4) var(--bh-space-2);
}

body.strategic-page .sr-qualify__rail-tag{
  color:rgba(17,17,17,0.48);
}

body.strategic-page .sr-qualify__matrix{
  border:var(--bh-hairline) solid var(--sr-line-strong);
  background:var(--bh-bg);
  box-shadow:none;
}

body.strategic-page .sr-qualify__lane{
  padding:clamp(var(--bh-space-5),4vw,var(--bh-space-6));
}

body.strategic-page .sr-qualify__lane--pass{
  background:var(--bh-bg);
}

body.strategic-page .sr-qualify__lane--exclude{
  background:rgba(247,247,247,0.45);
}

body.strategic-page .sr-qualify__lane-title{
  margin-bottom:var(--bh-space-4);
  font-size:var(--sr-body-size);
  font-weight:500;
}

body.strategic-page .sr-qualify__gate{
  margin-bottom:var(--bh-space-3);
}

body.strategic-page .sr-qualify__list li{
  padding:var(--bh-space-2) 0 var(--bh-space-2) var(--bh-space-5);
  font-size:var(--sr-body-size);
  color:var(--bh-ink-3);
  border-top-color:var(--sr-line);
}

body.strategic-page .sr-qualify__spine{
  background:repeating-linear-gradient(
    180deg,
    transparent,
    transparent 10px,
    rgba(17,17,17,0.05) 10px,
    rgba(17,17,17,0.05) 11px
  );
  border-left-color:var(--sr-line);
  border-right-color:var(--sr-line);
}

/* -------------------------------------------------------------------------
   Dark transition — architectural depth
   ------------------------------------------------------------------------- */
body.strategic-page .sr-anchor-dark{
  padding:clamp(var(--bh-space-7),8.5vw,calc(var(--bh-unit)*28)) 0;
  border-top:var(--bh-hairline) solid rgba(17,17,17,0.16);
  background:
    radial-gradient(88% 75% at 8% 22%,rgba(34,162,159,0.11) 0%,transparent 52%),
    linear-gradient(168deg,#070707 0%,#121212 42%,#050505 100%);
}

body.strategic-page .sr-anchor-dark__texture{
  opacity:0.72;
  background-image:
    repeating-linear-gradient(-10deg,transparent 0,transparent 18px,rgba(255,255,255,0.05) 18px,rgba(255,255,255,0.05) 19px),
    linear-gradient(90deg,rgba(255,255,255,0.055) 1px,transparent 1px);
}

body.strategic-page .sr-anchor-dark__texture::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
}

body.strategic-page .sr-anchor-dark__kicker{
  color:rgba(235,235,235,0.62);
}

body.strategic-page .sr-anchor-dark__headline{
  font-size:var(--sr-headline-size);
  color:#fff;
}

body.strategic-page .sr-anchor-dark__rule{
  background:linear-gradient(90deg,var(--bh-accent) 0%,var(--bh-accent) 42%,rgba(255,255,255,0.22) 42%,rgba(255,255,255,0.22) 100%);
}

body.strategic-page .sr-anchor-dark__body p{
  font-size:var(--sr-body-size);
  line-height:1.62;
  color:rgba(235,235,235,0.84);
}

body.strategic-page .sr-anchor-dark__close{
  color:rgba(248,248,248,0.94)!important;
}

/* -------------------------------------------------------------------------
   Contact CTA — smoother transition from dark band
   ------------------------------------------------------------------------- */
body.strategic-page .sr-intake{
  padding:clamp(var(--bh-space-7),9vw,calc(var(--bh-unit)*30)) 0;
  border-top:none;
  background:
    radial-gradient(90% 65% at 8% 18%,rgba(34,162,159,0.06) 0%,transparent 50%),
    linear-gradient(180deg,#060606 0%,#0e0e0e 28%,#121212 52%,#0a0a0a 100%);
}

body.strategic-page .sr-intake__texture{
  opacity:0.38;
  mask-image:linear-gradient(180deg,black 0%,black 55%,transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,black 0%,black 55%,transparent 100%);
}

body.strategic-page .sr-intake__grid{
  gap:clamp(var(--bh-space-6),6vw,var(--bh-space-8));
}

body.strategic-page .sr-intake__kicker{
  color:rgba(235,235,235,0.58);
}

body.strategic-page .sr-intake__title{
  font-size:var(--sr-headline-size);
  margin-bottom:clamp(var(--bh-space-4),3.2vw,var(--bh-space-5));
}

body.strategic-page .sr-intake__lead{
  font-size:var(--sr-body-size);
  line-height:1.62;
  color:rgba(235,235,235,0.8);
}

body.strategic-page .sr-intake__panel{
  border-color:rgba(255,255,255,0.12);
  background:linear-gradient(165deg,rgba(24,24,24,0.92) 0%,rgba(10,10,10,0.96) 100%);
  padding:clamp(var(--bh-space-5),4vw,var(--bh-space-6));
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.05);
}

body.strategic-page .sr-intake__panel-head{
  margin-bottom:var(--bh-space-5);
  padding-bottom:var(--bh-space-4);
}

body.strategic-page .sr-intake__panel-eyebrow{
  color:rgba(235,235,235,0.56);
}

/* -------------------------------------------------------------------------
   Motion · footer
   ------------------------------------------------------------------------- */
@media (prefers-reduced-motion:no-preference){
  body.strategic-page .sr-reveal{
    opacity:0;
    transform:none;
    transition:opacity 680ms ease;
  }

  body.strategic-page .sr-reveal.is-visible{
    opacity:1;
    transform:none;
  }
}

body.strategic-page .bh-footer .bh-footer__quote{
  transform:none;
  transition:opacity var(--bh-footer-fade) ease;
}

body.strategic-page main{
  padding-bottom:var(--bh-main-pad-bottom);
}

body.strategic-page .bh-footer{
  margin-top:var(--bh-footer-mt);
  padding:clamp(var(--bh-space-4),3vw,var(--bh-space-5)) var(--space-section-x)
    clamp(var(--bh-space-4),2.6vw,var(--bh-space-5));
  border-top-color:rgba(255,255,255,0.16);
}

body.strategic-page .bh-footer__grid{
  gap:clamp(var(--bh-space-3),2.4vw,var(--bh-space-5));
}

body.strategic-page .bh-footer .bh-footer__nav{
  border-left-color:rgba(255,255,255,0.14);
  border-right-color:rgba(255,255,255,0.14);
}

body.strategic-page .bh-footer__intel{
  border-left-color:rgba(34,162,159,0.55);
}

body.strategic-page .bh-footer__tagline,
body.strategic-page .bh-footer__systems{
  color:rgba(255,255,255,0.82);
}

body.strategic-page .bh-footer__links a{
  color:rgba(255,255,255,0.92);
}

body.strategic-page .bh-footer__links a:hover,
body.strategic-page .bh-footer__links a:focus-visible{
  color:#fff;
}

body.strategic-page .bh-footer__quote{
  color:rgba(255,255,255,0.92);
}

body.strategic-page .bh-footer__rule{
  margin-top:clamp(var(--bh-space-3),2.2vw,var(--bh-space-4));
}

body.strategic-page .bh-footer__rule::before{
  background:linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,0.14) 10%,
    rgba(255,255,255,0.26) 50%,
    rgba(255,255,255,0.14) 90%,
    transparent
  );
}

body.strategic-page .bh-footer__base{
  margin-top:var(--bh-space-3);
  padding-top:var(--bh-space-2);
  border-top-color:rgba(255,255,255,0.12);
}

body.strategic-page .bh-footer__copy{
  color:rgba(255,255,255,0.54);
}

/* -------------------------------------------------------------------------
   Responsive
   ------------------------------------------------------------------------- */
@media (max-width:960px){
  body.strategic-page .sr-hero__grid{
    gap:var(--bh-space-6);
    padding-top:var(--bh-hero-y-top);
  }

  body.strategic-page .sr-hero-visual{
    width:100%;
    max-width:420px;
    margin-right:0;
    min-height:clamp(152px,30vw,224px);
  }

  body.strategic-page .sr-hero-visual .sr-arch__crop{
    position:relative;
    right:auto;
    width:100%;
    min-height:clamp(152px,30vw,224px);
  }

  body.strategic-page .sr-flow__bridge::before{
    width:auto;
    height:2px;
    background:linear-gradient(90deg,transparent,rgba(34,162,159,0.58),transparent);
  }
}

@media (max-width:760px){
  body.strategic-page .sr-compare{
    grid-template-columns:1fr;
    gap:var(--bh-space-5);
  }

  body.strategic-page .sr-compare__col--conventional{
    padding-right:0;
    border-right:none;
    padding-bottom:var(--bh-space-4);
    border-bottom:var(--bh-hairline) solid var(--sr-line);
  }

  body.strategic-page .sr-compare__col--strategic{
    padding-left:0;
  }

  body.strategic-page .sr-compare__items li{
    min-height:auto;
  }
}
