:root{--ink:#142c35;--accent:#c45d37;--paper:#fffefa;--muted:#52656b;--line:#d8dfdc;--wash:#eef2ee}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 'Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:var(--ink);text-underline-offset:4px}
a:hover{color:var(--accent)}
a:focus-visible{outline:3px solid var(--accent);outline-offset:4px}
p{max-width:780px}
.container{width:min(1240px,calc(100% - 96px));margin:auto}

.site-header{position:sticky;top:0;z-index:30;background:rgba(255,254,250,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.header-inner{min-height:92px;padding:17px 0;display:flex;justify-content:space-between;align-items:center;gap:44px}
.brand{font-size:18px;letter-spacing:.11em;font-weight:850;color:var(--ink);white-space:nowrap;line-height:1.2;max-width:none;text-decoration:none;flex:0 0 auto}
.nav{display:flex;flex-wrap:wrap;gap:2px 18px;align-items:center;justify-content:flex-end}
.nav a{font-size:14px;font-weight:700;letter-spacing:0;border-radius:0;padding:10px 1px;color:var(--ink);border-bottom:2px solid transparent;text-decoration:none;white-space:nowrap}
.nav a:hover{background:transparent;border-bottom-color:var(--accent);color:var(--ink)}
.nav a[aria-current=page]{background:transparent;color:var(--ink);border-bottom-color:var(--accent)}

.contact-topbar{background:#182139;color:#f5f1e9;border-bottom:1px solid #344159}
.contact-topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:.015em}
.contact-topbar-links{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.contact-topbar a{color:#fff;text-decoration:underline;text-underline-offset:3px;font-weight:700;white-space:nowrap}

.hero{height:450px;min-height:450px;padding:42px 0;display:flex;align-items:center;overflow:hidden;position:relative;isolation:isolate;background:var(--wash);border-bottom:1px solid var(--line)}
.hero .hero-copy{width:min(48%,620px);max-width:620px;position:relative;z-index:1}
.hero::before{content:'';position:absolute;inset:0 0 0 52%;z-index:-2;background:url('transformation-horizon.png') 50% 50% / cover no-repeat;filter:saturate(.65)}
.hero::after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,var(--wash) 0%,var(--wash) 43%,rgba(238,242,238,.96) 49%,rgba(238,242,238,.18) 64%,transparent 82%)}
.eyebrow,.tag{color:var(--accent);font-size:11px;letter-spacing:.18em;text-transform:uppercase;font-weight:850}
.hero .eyebrow{margin-bottom:28px}
.hero h1{font-size:clamp(48px,5.4vw,76px);line-height:.98;letter-spacing:-.065em;margin:0 0 29px;font-weight:750;max-width:760px}
.hero .lead{font-size:clamp(18px,1.7vw,23px);line-height:1.4;color:#334e54;max-width:570px;font-weight:400}
.page-index .hero h1{font-size:clamp(42px,4.7vw,66px);max-width:780px;margin-bottom:22px}
.page-index .hero .lead{font-size:clamp(17px,1.45vw,21px);max-width:690px;margin-bottom:14px}
.page-index .hero .eyebrow{margin-bottom:18px}

h2{font-size:clamp(34px,4.1vw,56px);line-height:1.09;letter-spacing:-.045em;font-weight:700;margin:0 0 25px}
h3{font-size:clamp(21px,2vw,26px);letter-spacing:-.025em;line-height:1.2;margin:0 0 15px}
.section{padding:100px 0}
.section.soft,.soft{background:var(--wash)}
.section-block>.container{position:relative}
.section-index{font-size:12px;letter-spacing:.16em;font-weight:800;color:var(--accent);margin-bottom:22px}
.section p{color:#3c535a}
.section .lead{font-size:21px;max-width:920px;line-height:1.5;margin-bottom:36px}
.grid,.goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.card{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;padding:38px 36px;background:transparent;min-height:225px;transition:background .2s}
.card:hover{background:rgba(255,255,255,.55)}
.card p{font-size:16px;color:var(--muted)}
.card a{display:inline-block;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:4px;margin-top:8px;font-size:14px;font-weight:800}
.goal{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;padding:30px;background:transparent}
.goal h3{font-size:23px}
.goal .measure{font-size:.89rem;color:#42566b;margin-top:.8rem}
.btn{display:inline-block;border-radius:0;background:var(--accent);padding:15px 25px;color:#fff;font-size:14px;letter-spacing:.025em;font-weight:700;text-decoration:none}
.btn:hover{background:var(--ink);color:#fff}
.overview-proof{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 0 42px;margin-top:-22px;position:relative;z-index:2}
.overview-proof p{margin:0;font-size:14px;line-height:1.5;color:#42565d;max-width:900px}
.overview-proof .btn{flex:0 0 auto}
.outcome{border-left:3px solid var(--accent);background:var(--wash);padding:30px 35px;border-radius:0;margin:35px 0}
.prose{max-width:920px}
.prose>h2{margin-top:58px}
.prose>h2:first-child{margin-top:0}
.prose ul{padding-left:25px}
.prose li{padding-left:9px;margin:16px 0}

.footer{background:var(--ink);padding:55px 0;color:#fff}
.footer a{color:#e8bdab}
.footer .small{color:#d8e2e2}
.footer-contact{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.footer-role{color:#d4d6df}
.footer-links{display:flex;gap:12px 22px;align-items:center;flex-wrap:wrap;overflow-wrap:anywhere}
.footer-links a{white-space:normal}
.small{font-size:13px}
.mobile-contact-bar{display:none}

@media(max-width:1200px) and (min-width:981px){
  .page-index .hero h1{font-size:clamp(38px,4.1vw,52px);line-height:1.02;margin-bottom:16px}
  .page-index .hero .lead{font-size:18px;line-height:1.35;margin-bottom:10px}
  .page-index .hero .eyebrow{margin-bottom:12px}
}
@media(max-width:1180px){
  .container{width:min(100% - 64px,1240px)}
  .header-inner{flex-direction:column;align-items:flex-start;min-height:0;gap:10px}
  .brand{max-width:none}
  .nav{gap:3px 15px}
}
@media(max-width:980px){
  .hero{height:430px;min-height:430px;padding:40px 0}
  .hero .hero-copy{width:min(100%,700px);max-width:700px}
  .hero h1{font-size:clamp(44px,7vw,62px)}
  .page-index .hero h1{font-size:clamp(40px,6.2vw,56px)}
}
@media(max-width:680px){
  .container{width:calc(100% - 36px)}
  .header-inner{padding:13px 0}
  .brand{font-size:13px}
  .nav{gap:0 12px}
  .nav a{font-size:11px;padding:5px 0}
  .section{padding:65px 0}
  .overview-proof{align-items:flex-start;flex-direction:column;padding-bottom:32px;margin-top:-10px;gap:16px}
  .grid,.goal-grid{grid-template-columns:1fr}
  .card{min-height:0;padding:28px 23px}
  .section .lead{font-size:19px}
  .outcome{padding:24px}
  .prose>h2{margin-top:42px}
  .hero{height:430px;min-height:430px;padding:34px 0}
  .hero h1,.page-index .hero h1{font-size:clamp(38px,11vw,54px)}
  .hero .lead,.page-index .hero .lead{font-size:18px}
}
@media(max-width:650px){
  .contact-topbar-inner{justify-content:center;min-height:36px;padding:5px 0}
  .contact-topbar-label{display:none}
  .contact-topbar-links{justify-content:center;gap:8px 18px}
  .contact-topbar-links a{font-size:11px}
  .mobile-contact-bar{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:1000;background:#182139;padding:8px max(12px,env(safe-area-inset-left)) calc(8px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-right));box-shadow:0 -4px 20px #18213933;gap:8px}
  .mobile-contact-bar a{min-height:44px;display:flex;justify-content:center;align-items:center;border:1px solid #b5becb;border-radius:8px;color:#fff;font-size:14px;font-weight:700;text-decoration:none}
  .mobile-contact-bar a:first-child{background:#f7eee3;color:#182139;border-color:#f7eee3}
  body{padding-bottom:calc(70px + env(safe-area-inset-bottom))}
  .footer-contact{align-items:flex-start;flex-direction:column}
  .footer-links{flex-direction:column;align-items:flex-start;gap:8px}
}
@media(max-width:400px){.hero{height:430px;min-height:430px;padding:30px 0}}
@media(max-width:360px){.contact-topbar-links{gap:3px 12px}.contact-topbar-links a{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card{transition:none}}
@media(max-width:360px){
  .page-index .hero{padding:24px 0}
  .page-index .hero h1{font-size:36px;line-height:1.02;margin-bottom:14px}
  .page-index .hero .lead{font-size:16px;line-height:1.32;margin-bottom:0}
  .page-index .hero .eyebrow{margin-bottom:10px;font-size:10px}
}

/* AUTHORITATIVE HERO PRESENTATION — restored from the last accepted pre-regression implementation (20:55). */
.hero,
.page-index .hero {
  height: 450px;
  min-height: 450px;
  padding: 46px 0;
  display: flex;
  align-items: center;
  overflow: hidden;
  position: relative;
  isolation: isolate;
}
.hero::before,
.page-index .hero::before {
  content: '';
  position: absolute;
  inset: 0 0 0 50%;
  z-index: -2;
  background: url('transformation-horizon.png') 50% 50% / cover no-repeat;
  opacity: 1;
  filter: saturate(.65);
}
.hero::after,
.page-index .hero::after {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, var(--wash) 0%, var(--wash) 39%, rgba(238,242,238,.93) 49%, rgba(238,242,238,.08) 82%, transparent 100%);
}
@media (max-width: 680px) {
  .hero,
  .page-index .hero {
    height: 430px;
    min-height: 430px;
    padding: 34px 0;
  }
  .hero::before,
  .page-index .hero::before {
    inset: 0;
    background-position: 50% 50%;
    opacity: .22;
  }
  .hero::after,
  .page-index .hero::after {
    background: linear-gradient(90deg, rgba(238,242,238,.96), rgba(238,242,238,.83));
  }
  .hero h1,
  .page-index .hero h1 { font-size: clamp(42px, 12vw, 62px); }
  .hero .lead,
  .page-index .hero .lead { font-size: 18px; }
  .page-index .hero-proof { font-size: 13px; }
}
@media (max-width: 400px) {
  .hero,
  .page-index .hero {
    height: 430px;
    min-height: 430px;
    padding: 30px 0;
  }
}
/* Overview copy fit safeguard: text only; does not alter restored hero image geometry. */
@media (max-width: 680px) {
  .page-index .hero h1 { font-size: clamp(36px, 9vw, 48px); line-height: 1.02; margin-bottom: 14px; }
  .page-index .hero .lead { font-size: 16px; line-height: 1.32; margin-bottom: 0; }
  .page-index .hero .eyebrow { margin-bottom: 10px; }
}

/* HERO ROLLBACK 2026-09-24 — exact presentation geometry from the last pre-regression 20:55 implementation. */
.hero,
.page-index .hero {
  height: auto;
  min-height: 550px;
  padding: 105px 0 95px;
  background: var(--wash);
  border-bottom: 1px solid var(--line);
}
.hero::before,
.page-index .hero::before {
  inset: 0 0 0 51%;
  background-position: center;
  background-size: cover;
  opacity: 1;
  filter: saturate(.65);
}
.hero::after,
.page-index .hero::after {
  background: linear-gradient(90deg,var(--wash) 0%,var(--wash) 44%,rgba(238,242,238,.94) 52%,rgba(238,242,238,.14) 79%,rgba(238,242,238,0) 100%);
}
@media (max-width: 1050px) {
  .hero::before,
  .page-index .hero::before { inset: 0 0 0 43%; }
  .hero::after,
  .page-index .hero::after { background: linear-gradient(90deg,var(--wash) 0%,rgba(238,242,238,.97) 43%,rgba(238,242,238,.15) 100%); }
}
@media (max-width: 680px) {
  .hero,
  .page-index .hero { height: auto; min-height: 470px; padding: 65px 0; }
  .hero::before,
  .page-index .hero::before { inset: 0; background-position: center; opacity: .22; }
  .hero::after,
  .page-index .hero::after { background: linear-gradient(90deg,rgba(238,242,238,.96),rgba(238,242,238,.83)); }
}
/* Fixed desktop hero canvas: preserve the pre-regression 550px image crop identically on every page. */
@media (min-width: 681px) {
  .hero,
  .page-index .hero { height: 550px; min-height: 550px; padding: 70px 0; }
  .page-index .hero h1 { font-size: clamp(42px,4.4vw,62px); }
  .page-index .hero .lead { font-size: clamp(17px,1.35vw,20px); }
}

/* DESKTOP COMPACT LAYOUT 2026-09-24 — denser enterprise-consulting presentation; mobile rules unchanged. */
@media (min-width: 681px) {
  .container { width: min(1380px, calc(100% - 72px)); }
  .site-header { position: sticky; top: 0; }
  .header-inner { min-height: 74px; padding: 10px 0; gap: 30px; }
  .brand { font-size: 18px; letter-spacing: .095em; }
  .nav { gap: 0 20px; flex-wrap: nowrap; }
  .nav a { font-size: 13.5px; padding: 8px 0; }

  .hero, .page-index .hero { height: 500px; min-height: 500px; padding: 52px 0; }
  .hero .hero-copy { width: min(47%, 640px); max-width: 640px; }
  .hero .eyebrow { margin-bottom: 16px; }
  .hero h1 { font-size: clamp(44px, 4.55vw, 66px); line-height: 1; margin-bottom: 20px; }
  .hero .lead { font-size: clamp(17px, 1.35vw, 20px); line-height: 1.38; }
  .page-index .hero h1 { font-size: clamp(42px, 4.25vw, 60px); margin-bottom: 18px; }
  .page-index .hero .lead { font-size: clamp(17px, 1.25vw, 19px); line-height: 1.38; }

  .section { padding: 68px 0; }
  .section-index { margin-bottom: 14px; }
  h2 { font-size: clamp(32px, 3.35vw, 48px); margin-bottom: 18px; }
  h3 { font-size: clamp(20px, 1.6vw, 24px); margin-bottom: 10px; }
  .section .lead { font-size: 19px; line-height: 1.45; margin-bottom: 26px; max-width: 980px; }
  .section p { line-height: 1.58; }
  .card { padding: 27px 30px; min-height: 185px; }
  .card p { font-size: 15.5px; line-height: 1.5; }
  .goal { padding: 25px 28px; }
  .outcome { margin: 25px 0; padding: 23px 28px; }
  .overview-proof { padding-bottom: 28px; margin-top: -12px; }
  .prose > h2 { margin-top: 42px; }
  .prose li { margin: 11px 0; }
  .footer { padding: 38px 0; }
}

/* Keep the navigation in one desktop row for normal laptop/desktop widths. */
@media (min-width: 1101px) and (max-width: 1280px) {
  .container { width: min(100% - 48px, 1380px); }
  .header-inner { flex-direction: row; align-items: center; gap: 22px; }
  .nav { gap: 0 13px; }
  .nav a { font-size: 12.5px; }
}
@media (min-width: 1281px) {
  .header-inner { flex-direction: row; align-items: center; }
}

/* OVERVIEW POSITIONING 2026-09-24 — compact desktop decision hierarchy. */
.positioning-principle{display:flex;align-items:baseline;gap:18px;padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid var(--line)}
.positioning-principle strong{font-size:18px;color:var(--ink);white-space:nowrap}
.positioning-principle span{font-size:14px;line-height:1.45;color:var(--muted)}
@media (min-width:681px){
  .question-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .question-grid .card{padding:23px 22px;min-height:220px}
  .question-grid .card h3{font-size:21px}
  .question-grid .card p{font-size:14.5px}
  .overview-proof{align-items:center}
  .overview-proof p{font-size:15px}
}
@media (max-width:900px){.positioning-principle{align-items:flex-start;flex-direction:column;gap:7px}.positioning-principle strong{white-space:normal}}


/* WAYS TO ENGAGE 2026-09-25 */
.engagement-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);margin-top:34px}
.engagement-step{padding:30px 32px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:220px}
.engagement-step h3{margin-top:9px}.engagement-step p{font-size:15.5px;color:var(--muted)}.engagement-note{margin-top:16px}
.engagement-cta{margin-top:34px;padding:28px 30px;background:var(--wash);border-left:3px solid var(--accent);display:flex;justify-content:space-between;align-items:center;gap:28px}
.engagement-cta h3{margin:0 0 8px}.engagement-cta p{margin:0;max-width:780px}.engagement-cta .btn{flex:0 0 auto}
@media(max-width:680px){.engagement-steps{grid-template-columns:1fr}.engagement-step{min-height:0;padding:26px 24px}.engagement-cta{align-items:flex-start;flex-direction:column;padding:25px 24px}}

/* Owner-preview-only release marker. Element is created only for the exact preview token. */
.preview-version{position:fixed;right:8px;bottom:6px;z-index:2147483647;font:10px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:rgba(255,255,255,.62);background:rgba(20,24,28,.58);padding:2px 5px;border-radius:3px;pointer-events:none;user-select:none}



/* OVERVIEW_VALUE_REVIEW_20260928 */
.overview-value{background:#fff}
.overview-value>.container>.eyebrow{margin-bottom:10px}
.overview-value>.container>h2{margin-top:0}
.overview-value-intro{max-width:820px;margin:0 0 28px}
.capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.capability-card{padding:20px 22px;border:1px solid rgba(20,30,40,.13);border-radius:6px;background:#fff}
.capability-card h3{margin:0 0 8px;font-size:clamp(1.05rem,1.25vw,1.2rem);line-height:1.28}
.capability-card p{margin:0}
.capability-card:last-child{grid-column:1/-1}
.overview-experience{max-width:920px;margin-top:48px;padding-top:34px;border-top:1px solid rgba(20,30,40,.14)}
.overview-experience>.eyebrow{margin-bottom:10px}
.overview-experience>h2{margin-top:0;margin-bottom:16px}
.overview-experience>p{max-width:850px}
.overview-experience>p:last-child{margin-bottom:0}
@media(max-width:680px){.capability-grid{grid-template-columns:1fr;gap:12px}.capability-card{padding:17px}.capability-card:last-child{grid-column:auto}.overview-experience{margin-top:34px;padding-top:28px}}

/* Cross-page bridge to Overview engagement options */
.engagement-bridge{margin-top:1.15rem;margin-bottom:1.4rem}.engagement-bridge a{font-weight:650;text-decoration:none}.engagement-bridge a:hover,.engagement-bridge a:focus-visible{text-decoration:underline}

