:root{--ink:#101820;--gold:#736635;--gold-bright:#b6933c;--paper:#efe8dc;--muted:#a9afb2;--panel:#141f29;--panel2:#0d151d;--border:rgba(182,147,60,.28);--max:1280px;--read:760px;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Raleway',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:18px;line-height:1.7}a{color:inherit}.site-container{width:min(calc(100% - 48px),var(--max));margin-inline:auto}.narrow{max-width:var(--read)}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:9999;background:var(--paper);color:var(--ink);padding:.75rem 1rem}.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:100;background:rgba(16,24,32,.93);backdrop-filter:blur(16px);border-bottom:1px solid rgba(115,102,53,.28);transition:.25s}.site-header.is-scrolled .header-inner{min-height:68px}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:2rem;transition:.25s}.brand img{display:block;width:260px;max-height:54px;object-fit:contain;object-position:left center}.menu{display:flex;gap:2rem;list-style:none;margin:0;padding:0}.menu a{text-decoration:none;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:600}.menu a:hover,.current-menu-item>a{color:var(--gold-bright)}.menu-toggle{display:none;background:none;border:0;padding:.5rem}.menu-toggle span:not(.screen-reader-text){display:block;width:26px;height:2px;background:var(--paper);margin:5px}
.hero{min-height:calc(100vh - 88px);display:flex;align-items:center;padding:100px 0 120px;background:radial-gradient(circle at 80% 25%,rgba(115,102,53,.15),transparent 34%),linear-gradient(135deg,#0b141c 0%,#101820 62%,#111b24 100%)}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:70px;align-items:center}.eyebrow,.section-no{text-transform:uppercase;letter-spacing:.14em;color:var(--gold-bright);font-size:.78rem;font-weight:700}.hero h1,.page-hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(3.8rem,7vw,6.6rem);line-height:.93;letter-spacing:-.03em;margin:.25em 0}.lead{font-size:1.18rem;color:#c7cbcd;max-width:64ch}.button{display:inline-flex;gap:1.2rem;align-items:center;margin-top:1.3rem;border:1px solid var(--gold-bright);padding:1rem 1.25rem;text-transform:uppercase;letter-spacing:.08em;font-size:.76rem;font-weight:700;text-decoration:none;color:var(--gold-bright);background:transparent;cursor:pointer;transition:.2s}.button:hover,.button:focus-visible{background:var(--gold-bright);color:var(--ink)}
.orbit-visual{position:relative;aspect-ratio:1;max-width:560px;margin-left:auto}.orbit{position:absolute;border:1px solid rgba(182,147,60,.58);border-radius:50%;inset:12%}.orbit-b{inset:22%;transform:rotate(18deg)}.orbit-c{inset:6% 18%;transform:rotate(-22deg)}.orbit-copy{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:var(--gold-bright);text-transform:uppercase;letter-spacing:.06em;line-height:1.25;gap:.65rem}.orbit-copy b{font-weight:400}
.story-section,.content-section{padding:clamp(100px,11vw,160px) 0;border-top:1px solid var(--border)}.story-section.alt,.content-section.alt{background:var(--panel2)}.split-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(50px,8vw,120px);align-items:start}.story-section h2,.content-section h2,.outcome-section h2,.cta-section h2{font-family:var(--serif);font-weight:500;font-size:clamp(2.8rem,5vw,4.6rem);line-height:1.02;letter-spacing:-.02em;margin:0 0 2rem}.prose p{margin:0 0 1.2rem;color:#c4c8ca}.prose strong{color:var(--paper)}.gold-text,.gold-text strong{color:var(--gold-bright)!important}.section-heading{max-width:850px;margin-bottom:65px}.section-heading>p:not(.section-no){color:#b9bec0}.cards-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.responsibility-card,.trigger-grid article{padding:42px;border:1px solid var(--border);background:rgba(255,255,255,.018)}.responsibility-card h3,.trigger-grid h3{font-size:1.3rem;line-height:1.3}.responsibility-card p,.trigger-grid p{color:#aeb4b7;font-size:.95rem}.card-icon{font-size:2.4rem;color:var(--gold-bright)}
.journey{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:20px;position:relative}.journey:before{content:'';position:absolute;top:36px;left:8%;right:8%;height:1px;background:var(--border)}.journey li{position:relative;text-align:center;padding:0 10px}.journey li>span{width:72px;height:72px;border:1px solid var(--gold-bright);border-radius:50%;display:grid;place-items:center;margin:0 auto 24px;background:var(--ink);color:var(--gold-bright);font-weight:700}.journey h3{margin:.4rem 0}.journey p{color:#aeb4b7;font-size:.88rem;line-height:1.55}.center-link{text-align:center;margin-top:46px}.center-link a,.text-link{color:var(--gold-bright);text-decoration:none;font-weight:700}
.outcome-section{position:relative;overflow:hidden;padding:clamp(120px,13vw,190px) 0;background:linear-gradient(180deg,#111c25,#0d151d);border-top:1px solid var(--border)}.outcome-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:90px}.outcome-section em,.statement em{color:var(--gold-bright);font-style:normal}.wave{position:absolute;inset:auto -5% -120px -5%;height:300px;opacity:.18;background:repeating-radial-gradient(ellipse at 20% 100%,transparent 0 18px,var(--gold-bright) 19px 20px,transparent 21px 32px)}.check-list{list-style:none;padding:0;margin:1.5rem 0}.check-list li{position:relative;padding-left:1.8rem;margin:.55rem 0;color:#c4c8ca}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--gold-bright)}.statement{font-family:var(--serif);font-size:clamp(2.4rem,4.5vw,4.1rem);line-height:1.05;color:var(--paper)}
.experience-preview{padding-block:150px}.cta-section{padding:90px 0;background:linear-gradient(90deg,rgba(115,102,53,.28),rgba(16,24,32,.96));border-top:1px solid var(--gold)}.cta-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:50px;align-items:center}.cta-section h2{font-size:clamp(2.4rem,4vw,3.8rem);margin:0}.cta-section p{color:#c4c8ca}.cta-section .button{margin:0;white-space:nowrap}
.page-hero{padding:clamp(120px,14vw,190px) 0;background:radial-gradient(circle at 82% 10%,rgba(115,102,53,.15),transparent 30%),#0d161e;border-bottom:1px solid var(--border)}.content-section h3{margin-top:3rem;font-size:1.5rem}.trigger-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:3rem 0}.pullquote{font-family:var(--serif);font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.2;color:var(--gold-bright);border-left:1px solid var(--gold-bright);padding-left:28px;margin:3rem 0}.journey-stacked{grid-template-columns:repeat(5,1fr)}.entry-content>h2{margin-top:2.3em}.entry-content p,.entry-content li{color:#c4c8ca}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact-form{display:grid;gap:1.3rem}.contact-form label,.contact-form legend{font-size:.82rem;text-transform:uppercase;letter-spacing:.06em;color:#c6c9ca;font-weight:600}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:.5rem;background:#0b141b;border:1px solid rgba(255,255,255,.15);color:var(--paper);font:inherit;padding:1rem}.contact-form input:focus,.contact-form textarea:focus{outline:1px solid var(--gold-bright);border-color:var(--gold-bright)}.contact-form fieldset{border:0;padding:0;margin:0}.contact-form .radio{display:inline-flex;align-items:center;gap:.5rem;margin-right:1.4rem;text-transform:none}.contact-form .radio input{width:auto;margin:0}.trust-note{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border);color:#aeb4b7}.form-message{padding:1rem;margin-bottom:1rem;border:1px solid var(--border)}.form-message.success{color:#dfe7d8}.form-message.error{color:#f2c3b8}
.site-footer{border-top:1px solid var(--border);padding:80px 0 30px;background:#0b1218}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:start}.footer-logo{width:250px}.site-footer p{color:#999fa2}.footer-menu{list-style:none;display:flex;gap:1.4rem;padding:0}.footer-menu a{text-decoration:none;font-size:.85rem}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.08);margin-top:60px;padding-top:24px;color:#7f878b;font-size:.75rem}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}}
@media(max-width:900px){body{font-size:17px}.site-container{width:min(calc(100% - 32px),var(--max))}.brand img{width:210px}.menu-toggle{display:block}.primary-navigation{position:absolute;top:100%;left:0;right:0;background:#0d151d;border-bottom:1px solid var(--border);display:none}.primary-navigation.is-open{display:block}.menu{display:grid;padding:24px 32px;gap:0}.menu a{display:block;padding:14px 0}.hero{min-height:auto}.hero-grid,.split-section,.outcome-grid,.contact-grid,.cta-grid{grid-template-columns:1fr}.orbit-visual{width:min(100%,500px);margin:30px auto 0}.cards-grid,.trigger-grid{grid-template-columns:1fr}.journey,.journey-stacked{grid-template-columns:1fr;gap:0}.journey:before{top:24px;bottom:24px;left:35px;right:auto;width:1px;height:auto}.journey li{text-align:left;padding:0 0 34px 100px;min-height:80px}.journey li>span{position:absolute;left:0;top:0;width:70px;height:70px}.cta-grid{gap:24px}.cta-section .button{justify-self:start}.footer-grid{grid-template-columns:1fr}.footer-menu{flex-wrap:wrap}}
@media(max-width:560px){.header-inner{min-height:74px}.brand img{width:180px}.hero,.page-hero{padding:84px 0 96px}.hero h1,.page-hero h1{font-size:clamp(3.3rem,16vw,4.6rem)}.story-section,.content-section{padding:82px 0}.responsibility-card,.trigger-grid article{padding:28px}.outcome-section{padding:100px 0}.footer-bottom{gap:1rem;flex-direction:column}.footer-menu{display:grid}.lead{font-size:1.05rem}}

/* ===== RC1 refinements — v1.1 ===== */
/* Header / brand */
.header-inner{min-height:94px}
.site-header.is-scrolled .header-inner{min-height:72px}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{width:228px;max-height:58px;object-fit:contain;object-position:left center}
.primary-navigation{margin-left:auto}
.menu{gap:2.15rem}
.menu a{position:relative;padding:.55rem 0}
.menu a:after{content:'';position:absolute;left:0;right:100%;bottom:0;height:1px;background:var(--gold-bright);transition:right .22s ease}
.menu a:hover:after,.current-menu-item>a:after{right:0}

/* Hero: preserve editorial headline, strengthen right-side visual balance */
.hero{min-height:calc(100vh - 94px);padding:clamp(88px,9vw,132px) 0 clamp(96px,10vw,140px)}
.hero-grid{grid-template-columns:1.03fr .97fr;gap:clamp(64px,7vw,110px)}
.hero-copy{max-width:760px}
.hero .button{margin-top:1.8rem}
.orbit-visual{max-width:610px;isolation:isolate}
.orbit-visual:before,.orbit-visual:after{content:'';position:absolute;border-radius:50%;pointer-events:none}
.orbit-visual:before{inset:2%;border:1px dashed rgba(182,147,60,.2);transform:rotate(12deg)}
.orbit-visual:after{inset:16% 4%;border:1px solid rgba(182,147,60,.12);transform:rotate(-16deg)}
.orbit{box-shadow:0 0 0 1px rgba(182,147,60,.025) inset}
.orbit-a:before,.orbit-b:before,.orbit-c:before{content:'';position:absolute;width:9px;height:9px;border-radius:50%;border:1px solid var(--gold-bright);background:var(--ink)}
.orbit-a:before{top:12%;left:11%}.orbit-b:before{right:-5px;top:48%}.orbit-c:before{left:6%;bottom:18%}
.orbit-copy{font-size:1.03rem;z-index:2}

/* Make the five-stage engagement easier to register at a glance */
#engagement .section-heading{margin-bottom:82px}
.journey{gap:28px}
.journey:before{top:43px}
.journey li{padding-inline:16px}
.journey li>span{width:86px;height:86px;margin-bottom:28px;font-size:.82rem}
.journey h3{font-size:1.08rem;margin:.55rem 0 .45rem}
.journey p{font-size:.94rem;line-height:1.62}
.center-link{margin-top:58px}

/* Experience: give the personal section a distinct treatment until portrait photography is available */
.experience-preview{position:relative;padding-block:clamp(130px,13vw,190px);overflow:hidden}
.experience-preview:before{content:'RC';position:absolute;right:6vw;top:50%;transform:translateY(-50%);font-family:var(--serif);font-size:clamp(10rem,24vw,22rem);line-height:.8;color:rgba(182,147,60,.035);pointer-events:none}
.experience-preview .split-section{position:relative;z-index:1}
.experience-preview .eyebrow{margin-bottom:1rem}
.experience-preview .text-link{display:inline-flex;margin-top:1rem;align-items:center;gap:.55rem}

/* Closing CTA should feel like a deliberate final decision point */
.cta-section{padding:clamp(110px,10vw,150px) 0;background:linear-gradient(100deg,rgba(115,102,53,.32),rgba(16,24,32,.97) 55%);border-top:1px solid rgba(182,147,60,.45)}
.cta-grid{grid-template-columns:1fr .9fr auto;gap:clamp(38px,5vw,72px)}
.cta-section .button{padding:1.05rem 1.4rem}

@media(max-width:1100px){
  .menu{gap:1.45rem}
  .menu a{font-size:.72rem}
  .brand img{width:205px}
}
@media(max-width:900px){
  .header-inner{min-height:80px}.site-header.is-scrolled .header-inner{min-height:70px}
  .brand img{width:200px;max-height:50px}
  .hero{min-height:auto;padding:90px 0 108px}
  .orbit-visual{max-width:520px}
  #engagement .section-heading{margin-bottom:56px}
  .journey li>span{width:74px;height:74px}
  .journey:before{top:26px}
  .cta-grid{grid-template-columns:1fr;gap:28px}
}
@media(max-width:560px){
  .brand img{width:175px}
  .hero{padding:78px 0 92px}
  .orbit-copy{font-size:.9rem}
  .experience-preview:before{right:-12vw;font-size:13rem}
  .cta-section{padding:88px 0}
}


/* ===== RC1.2 refinements — v1.2 ===== */
/* Readability: keep the editorial feel while making long-form content easier to scan */
body{font-size:18.5px;line-height:1.72}
.prose p,.entry-content p,.entry-content li,.content-section>div>p{line-height:1.74}
.content-section p,.page-hero p{max-width:72ch}
.content-section h2{max-width:18ch}
.content-section h3{line-height:1.28}

/* Transformation CTO: responsibilities deserve the same visual weight as the homepage */
.responsibilities-deep .section-heading{max-width:900px}
.responsibility-grid-deep{max-width:1120px}
.responsibility-grid-deep .responsibility-card{min-height:245px;padding:48px}
.responsibility-grid-deep .responsibility-card h3{font-size:1.45rem;margin:.9rem 0 1rem}
.responsibility-grid-deep .responsibility-card p{font-size:1rem;line-height:1.68}
.responsibility-grid-deep .card-icon{font-size:2.15rem}

/* How I Work: each leadership idea gets its own editorial moment */
.how-editorial .editorial-block{padding:clamp(54px,6vw,86px) 0;border-top:1px solid rgba(182,147,60,.18)}
.how-editorial .editorial-block:first-child{padding-top:0;border-top:0}
.how-editorial .editorial-block:last-child{padding-bottom:0}
.how-editorial .editorial-block h2{margin-bottom:1.5rem}
.how-editorial .editorial-block p:last-child{margin-bottom:0}
.how-editorial .pullquote{margin-top:2.6rem;margin-bottom:0}

/* Form feedback: clearer, calmer, and visually consistent with the brand */
.form-message{position:relative;padding:1.05rem 1.15rem 1.05rem 1.35rem;margin-bottom:1.35rem;background:rgba(255,255,255,.02);border:1px solid var(--border);font-weight:600}
.form-message:before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold-bright)}
.form-message.success{color:#e3eadf;border-color:rgba(139,168,122,.35);background:rgba(139,168,122,.06)}
.form-message.success:before{background:#8ba87a}
.form-message.error{color:#f0c4ba;border-color:rgba(202,108,87,.38);background:rgba(202,108,87,.06)}
.form-message.error:before{background:#ca6c57}
.contact-form input:invalid:focus,.contact-form textarea:invalid:focus{border-color:#ca6c57;outline-color:#ca6c57}
.contact-form button.button{justify-content:center;min-width:190px}

/* Responsive typography and spacing refinements */
@media(max-width:1100px){
  body{font-size:18px}
  .responsibility-grid-deep .responsibility-card{padding:40px;min-height:225px}
}
@media(max-width:900px){
  body{font-size:17.5px}
  .responsibility-grid-deep{grid-template-columns:1fr}
  .responsibility-grid-deep .responsibility-card{min-height:0}
  .how-editorial .editorial-block{padding:58px 0}
}
@media(max-width:560px){
  body{font-size:17px;line-height:1.68}
  .page-hero h1,.hero h1{line-height:.96}
  .story-section h2,.content-section h2,.outcome-section h2,.cta-section h2{line-height:1.06}
  .responsibility-grid-deep .responsibility-card{padding:30px}
  .responsibility-grid-deep .responsibility-card h3{font-size:1.3rem}
  .how-editorial .editorial-block{padding:48px 0}
  .contact-form input,.contact-form textarea{font-size:16px}
  .form-message{font-size:.95rem}
}

/* ===== RC2 mobile refinements — v1.4 ===== */
/* Purpose-built phone refinements are intentionally isolated below 720px.
   The existing v1.2 tablet/desktop rules remain unchanged above this point. */
@media(max-width:720px){
  /* Treat the hero artwork as a deliberate second beat, not a competing column */
  .hero-grid{display:block}
  .hero-copy{max-width:720px}
  .orbit-visual{
    width:min(100%,440px);
    max-width:440px;
    margin:56px auto 0;
  }

  /* Purpose-built vertical journey for tablet/mobile */
  .journey,.journey-stacked{
    display:block;
    position:relative;
    max-width:680px;
    margin-inline:auto;
  }
  .journey:before{
    content:'';
    position:absolute;
    top:24px;
    bottom:26px;
    left:24px;
    width:1px;
    height:auto;
    right:auto;
    background:var(--border);
  }
  .journey li{
    position:relative;
    text-align:left;
    min-height:0;
    padding:0 0 38px 78px;
  }
  .journey li:last-child{padding-bottom:0}
  .journey li>span{
    position:absolute;
    left:0;
    top:0;
    width:48px;
    height:48px;
    margin:0;
    background:var(--ink);
    font-size:.72rem;
    z-index:1;
  }
  .journey h3{font-size:1.08rem;margin:0 0 .35rem;line-height:1.28}
  .journey p{font-size:.94rem;line-height:1.58;margin:0;max-width:42ch}

  /* CTA strips become clearly sequential on smaller screens */
  .cta-grid{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
  .cta-grid>h2,.cta-grid>p{max-width:680px}
  .cta-section .button{margin-top:4px}
}

@media(max-width:560px){
  /* Comfortable reading size without making the already-long pages feel oversized */
  body{font-size:16.5px;line-height:1.7}
  .prose p,.entry-content p,.entry-content li,.content-section>div>p{line-height:1.72}
  .lead{font-size:1.02rem;line-height:1.65}

  /* Mobile vertical rhythm */
  .hero,.page-hero{padding:72px 0 82px}
  .story-section,.content-section{padding:76px 0}
  .outcome-section{padding:88px 0}
  .experience-preview{padding-block:84px}
  .section-heading{margin-bottom:42px}
  .story-section h2,.content-section h2,.outcome-section h2,.cta-section h2{margin-bottom:1.35rem}

  /* Hero diagram gets its own visual space beneath copy + CTA */
  .orbit-visual{
    width:min(100%,320px);
    max-width:320px;
    margin:48px auto 0;
    aspect-ratio:1/1;
  }
  .orbit-copy{font-size:.82rem;gap:.48rem;line-height:1.22}
  .orbit-a:before,.orbit-b:before,.orbit-c:before{width:7px;height:7px}

  /* Compact but deliberate mobile journey */
  #engagement .section-heading{margin-bottom:42px}
  .journey,.journey-stacked{margin-top:10px}
  .journey:before{left:22px;top:22px;bottom:22px}
  .journey li{padding:0 0 34px 70px}
  .journey li>span{width:44px;height:44px;font-size:.68rem}
  .journey h3{font-size:1rem;margin-bottom:.3rem}
  .journey p{font-size:.9rem;line-height:1.55}
  .center-link{text-align:left;margin-top:36px;padding-left:70px}

  /* Cards and CTA spacing */
  .responsibility-card,.trigger-grid article{padding:26px}
  .cta-section{padding:78px 0}
  .cta-grid{gap:18px}
  .cta-section .button{width:100%;white-space:normal;justify-content:center;text-align:center;line-height:1.35}
}

/* ===== RC2 responsive corrective layer — v1.5 =====
   Protect the approved desktop composition on compact desktop/tablet CSS viewports.
   Phone-specific layouts remain isolated at <=720px. */
@media (min-width:721px) and (max-width:900px){
  /* Keep editorial page composition desktop-like even when browser zoom / OS scaling
     reduces the CSS viewport below 900px. Navigation may still use the compact menu. */
  .hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:clamp(44px,6vw,78px);align-items:center}
  .split-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(42px,6vw,72px);align-items:start}
  .outcome-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(44px,6vw,72px)}
  .contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(42px,6vw,70px)}
  .cta-grid{display:grid;grid-template-columns:1fr .9fr auto;gap:clamp(24px,4vw,44px);align-items:center}

  .cards-grid,.trigger-grid,.responsibility-grid-deep{grid-template-columns:repeat(2,minmax(0,1fr))}
  .responsibility-grid-deep .responsibility-card{min-height:210px}

  /* Restore the approved horizontal five-stage journey above the phone breakpoint. */
  .journey,.journey-stacked{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;max-width:none;margin-inline:0}
  .journey:before{top:38px;left:8%;right:8%;bottom:auto;width:auto;height:1px}
  .journey li{text-align:center;padding:0 8px;min-height:0}
  .journey li>span{position:relative;left:auto;top:auto;width:76px;height:76px;margin:0 auto 24px;font-size:.76rem}
  .journey h3{font-size:1rem;margin:.45rem 0 .4rem}
  .journey p{font-size:.86rem;line-height:1.55;margin:0 auto;max-width:24ch}
  .center-link{text-align:center;margin-top:48px;padding-left:0}

  /* Hero artwork remains a genuine second column at compact desktop widths. */
  .orbit-visual{width:100%;max-width:500px;margin:0 0 0 auto}

  .footer-grid{display:grid;grid-template-columns:1fr auto;gap:48px}
  .footer-menu{display:flex;flex-wrap:wrap}
}

@media (min-width:901px){
  /* Explicit desktop guardrail: phone/tablet structural overrides must never leak here. */
  .hero-grid{display:grid}
  .journey,.journey-stacked{display:grid}
  .cta-grid{display:grid}
}


/* ===== RC2 large-screen composition — v1.6 =====
   Wide desktop correction based on measured 1912px CSS viewport.
   Expands the overall composition without widening readable prose excessively. */
@media (min-width:1200px){
  :root{--max:1440px}

  .hero-grid{
    grid-template-columns:minmax(0,1.12fr) minmax(460px,.88fr);
    gap:clamp(90px,6.5vw,132px);
  }
  .hero-copy{max-width:820px}
  .orbit-visual{max-width:650px}

  .split-section{
    grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);
    gap:clamp(100px,8vw,150px);
  }
  .split-section .prose{max-width:760px}

  .section-heading{max-width:920px}
  .cards-grid{max-width:1220px}
  .journey{max-width:1360px;margin-inline:auto}

  .outcome-grid{
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
    gap:clamp(100px,7vw,140px);
  }
  .outcome-grid .prose{max-width:720px}

  .experience-preview .split-section .prose{max-width:720px}

  .cta-grid{grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr) auto;gap:clamp(48px,5vw,86px)}
}

/* ===== RC2 hero orbit corrective layer — v1.7 =====
   The orbit artwork uses absolutely positioned children, so the desktop grid item
   needs an explicit width. Without it, the item can collapse to zero width while
   the centred copy remains visible. */
.orbit-visual{
  width:min(100%,610px);
  justify-self:end;
}
@media (min-width:1200px){
  .orbit-visual{width:min(100%,650px);max-width:650px}
}
@media (max-width:900px) and (min-width:721px){
  .orbit-visual{width:min(100%,500px);max-width:500px}
}

/* ===== RC3 proposition extensions — v1.8 ===== */
.footer-contact-links{display:flex;gap:1.35rem;flex-wrap:wrap;margin-top:1.2rem}.footer-contact-links a,.text-link{color:var(--gold-bright);text-decoration:none;font-weight:600}.footer-contact-links a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:.25em}
.direct-contact{margin-top:2.6rem;padding-top:2rem;border-top:1px solid var(--border);display:grid;gap:.8rem}.direct-contact .eyebrow{margin:0}.direct-contact-phone{font-family:var(--serif);font-size:clamp(2rem,3vw,2.8rem);line-height:1.1;color:var(--paper);text-decoration:none}.direct-contact-phone:hover{color:var(--gold-bright)}

.experience-proof-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.experience-proof{padding:clamp(34px,4vw,52px);border:1px solid var(--border);background:rgba(255,255,255,.018);min-height:330px}.experience-proof h3{font-family:var(--serif);font-size:clamp(2rem,3vw,2.8rem);font-weight:500;line-height:1.08;margin:.7rem 0 1.3rem}.experience-proof p{color:#b7bdc0}.experience-proof .eyebrow{margin:0}.experience-linkedin{display:inline-flex;margin-top:1.2rem;font-size:1rem}

.journal-hero .lead{max-width:58ch}.journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.journal-card{border:1px solid var(--border);padding:clamp(34px,4vw,50px);background:rgba(255,255,255,.018);min-height:310px;display:flex;flex-direction:column;align-items:flex-start}.journal-card h2{font-family:var(--serif);font-size:clamp(2.1rem,3.4vw,3.3rem);font-weight:500;line-height:1.04;margin:.7rem 0 1rem}.journal-card h2 a{text-decoration:none}.journal-card h2 a:hover{color:var(--gold-bright)}.journal-card>p:not(.journal-meta){color:#b7bdc0}.journal-card .text-link{margin-top:auto;padding-top:1.4rem}.journal-meta,.journal-single-meta{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:#929a9e}.journal-meta span{color:var(--gold-bright);padding:0 .35rem}.journal-pagination{margin-top:56px}.journal-pagination .nav-links{display:flex;gap:12px;align-items:center}.journal-pagination a,.journal-pagination .current{border:1px solid var(--border);padding:.6rem .9rem;text-decoration:none}.journal-pagination .current{color:var(--gold-bright)}.journal-empty{padding-block:30px}

.journal-single-hero{padding:clamp(120px,12vw,180px) 0 90px;background:radial-gradient(circle at 82% 10%,rgba(115,102,53,.13),transparent 32%),#0d161e;border-bottom:1px solid var(--border)}.journal-single-hero h1{font-family:var(--serif);font-size:clamp(3.6rem,7vw,6.2rem);font-weight:500;line-height:.96;letter-spacing:-.03em;margin:.35em 0}.journal-back{display:inline-block;margin-bottom:3rem;color:#aeb4b7;text-decoration:none}.journal-back:hover{color:var(--gold-bright)}.journal-single-meta{display:flex;gap:2rem;margin-top:2rem}.journal-article{padding:clamp(90px,10vw,150px) 0}.journal-reading{max-width:820px}.journal-reading p,.journal-reading li{font-size:1.06rem;color:#c4c8ca;line-height:1.78}.journal-reading h2{font-family:var(--serif);font-size:clamp(2.5rem,4vw,3.8rem);font-weight:500;line-height:1.08;margin:2.2em 0 .7em}.journal-reading h3{font-size:1.45rem;margin-top:2.2em}.journal-reading blockquote{font-family:var(--serif);font-size:clamp(1.9rem,3vw,2.8rem);line-height:1.2;color:var(--gold-bright);border-left:1px solid var(--gold-bright);padding-left:28px;margin:2.6rem 0}.journal-next{border-top:1px solid var(--border);padding:60px 0}.journal-next-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.journal-next a{display:grid;gap:.45rem;padding:28px;border:1px solid var(--border);text-decoration:none}.journal-next a span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-bright)}.journal-next a strong{font-family:var(--serif);font-size:1.55rem;font-weight:500}.journal-next a:hover{background:rgba(255,255,255,.025)}

@media(max-width:900px){.experience-proof-grid,.journal-grid{grid-template-columns:1fr}.experience-proof{min-height:0}.journal-next-grid{grid-template-columns:1fr}.journal-single-meta{flex-direction:column;gap:.45rem}.footer-contact-links{display:grid;gap:.65rem}}
@media(max-width:560px){.experience-proof{padding:28px}.experience-proof h3{font-size:2rem}.direct-contact-phone{font-size:2rem}.journal-card{padding:28px;min-height:0}.journal-single-hero{padding:92px 0 72px}.journal-single-hero h1{font-size:clamp(3rem,14vw,4.2rem)}.journal-reading p,.journal-reading li{font-size:1rem}.journal-next{padding:44px 0}}


/* ===== Desktop grid normalisation — v1.11 =====
   Keep one outer desktop grid across core pages. Readable text remains
   intentionally constrained inside that shared grid. Mobile/tablet unchanged. */
@media (min-width:901px){
  /* "narrow" is now an inner-content concept on standard pages, not a narrower
     outer page container. This removes the left/right jumps between sections. */
  .page-hero .site-container.narrow,
  .content-section .site-container.narrow,
  .outcome-section .site-container.narrow{
    max-width:var(--max);
  }

  /* Keep the actual reading measure controlled while aligning it to the
     common left edge of the site grid. */
  .page-hero .site-container.narrow > .eyebrow,
  .page-hero .site-container.narrow > h1,
  .page-hero .site-container.narrow > .lead,
  .page-hero .site-container.narrow > .button,
  .content-section .site-container.narrow > h2,
  .content-section .site-container.narrow > h3,
  .content-section .site-container.narrow > p,
  .content-section .site-container.narrow > ul,
  .content-section .site-container.narrow > ol,
  .content-section .site-container.narrow > .pullquote,
  .outcome-section .site-container.narrow > .section-no,
  .outcome-section .site-container.narrow > h2,
  .outcome-section .site-container.narrow > p,
  .outcome-section .site-container.narrow > .statement,
  .outcome-section .site-container.narrow > .text-link{
    max-width:var(--read);
  }

  /* Large headings can breathe slightly more without changing the common grid. */
  .page-hero .site-container.narrow > h1{
    max-width:920px;
  }

  /* Components that are intentionally wider use the shared outer grid. */
  .content-section .site-container.narrow > .trigger-grid{
    max-width:1220px;
  }

  /* Journal article pages already use a consistent editorial reading column;
     preserve that approved treatment. */
  .journal-single-hero .site-container.narrow{
    max-width:var(--read);
  }
}

/* ===== Desktop width and overflow correction — v1.12 =====
   Follow-up to v1.11 after visual QA. The shared desktop grid remains, but the
   large-screen 1440px expansion was too wide on editorial pages. Restore the
   approved 1280px shell and harden grid children against intrinsic overflow.
   Journal reading widths and all <=900px layouts remain unchanged. */
@media (min-width:901px){
  /* One bounded desktop shell across the core site. This deliberately overrides
     the v1.6 large-screen expansion of --max to 1440px. */
  :root{--max:1280px}

  /* Grid/flex children must be allowed to shrink inside the shared shell.
     Without min-width:0, long headings/form controls can force a grid wider
     than its container and create the edge-to-edge Contact behaviour. */
  .contact-grid,
  .split-section,
  .cards-grid,
  .trigger-grid,
  .responsibility-grid-deep,
  .experience-proof-grid,
  .cta-grid,
  .journey,
  .journal-grid,
  .journal-next-grid{min-width:0}

  .contact-grid > *,
  .split-section > *,
  .cards-grid > *,
  .trigger-grid > *,
  .responsibility-grid-deep > *,
  .experience-proof-grid > *,
  .cta-grid > *,
  .journey > *,
  .journal-grid > *,
  .journal-next-grid > *{min-width:0}

  /* Use shrink-safe columns for the Contact section specifically. */
  .contact-grid{
    grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);
    gap:clamp(48px,5vw,80px);
  }
  .contact-form,
  .contact-form label,
  .contact-form fieldset,
  .contact-form input,
  .contact-form textarea{min-width:0;max-width:100%}

  /* Wide components may fill the standard shell, never a second wider shell. */
  .cards-grid,
  .content-section .site-container.narrow > .trigger-grid,
  .journey{max-width:100%}

  /* Keep the Journal's deliberately narrower editorial treatment isolated. */
  .journal-single-hero .site-container.narrow{max-width:var(--read)}
  .journal-reading{max-width:820px}
}

/* ===== Balanced editorial shell — v1.13 =====
   Visual QA on v1.12 showed that Transformation CTO, How I Work and Experience
   still alternated between a 1280px component shell and a 760px text measure.
   On desktop this made text-only sections appear pinned to the left even though
   cards/timelines were correctly centred. These three pages now use one centred
   1080px editorial shell throughout. Home, Contact, Journal and <=900px layouts
   are intentionally unchanged. */
@media (min-width:901px){
  .page-layout-balanced .site-container{
    max-width:1080px;
  }

  /* The old v1.11 child-level 760px constraint caused the visible left bias.
     Let copy use the balanced shell while retaining the global 72ch paragraph
     limit and heading line-length rules already defined earlier in the theme. */
  .page-layout-balanced .page-hero .site-container.narrow > .eyebrow,
  .page-layout-balanced .page-hero .site-container.narrow > h1,
  .page-layout-balanced .page-hero .site-container.narrow > .lead,
  .page-layout-balanced .page-hero .site-container.narrow > .button,
  .page-layout-balanced .content-section .site-container.narrow > h2,
  .page-layout-balanced .content-section .site-container.narrow > h3,
  .page-layout-balanced .content-section .site-container.narrow > p,
  .page-layout-balanced .content-section .site-container.narrow > ul,
  .page-layout-balanced .content-section .site-container.narrow > ol,
  .page-layout-balanced .content-section .site-container.narrow > .pullquote,
  .page-layout-balanced .outcome-section .site-container.narrow > .section-no,
  .page-layout-balanced .outcome-section .site-container.narrow > h2,
  .page-layout-balanced .outcome-section .site-container.narrow > p,
  .page-layout-balanced .outcome-section .site-container.narrow > .statement,
  .page-layout-balanced .outcome-section .site-container.narrow > .text-link{
    max-width:100%;
  }

  .page-layout-balanced .page-hero .site-container.narrow > h1{
    max-width:980px;
  }

  .page-layout-balanced .content-section .site-container.narrow > .trigger-grid,
  .page-layout-balanced .cards-grid,
  .page-layout-balanced .experience-proof-grid,
  .page-layout-balanced .journey,
  .page-layout-balanced .split-section,
  .page-layout-balanced .cta-grid{
    max-width:100%;
  }
}


/* ===== Requested desktop width refinements — v1.14 =====
   Visual QA after v1.13. Widen only the sections explicitly identified in QA;
   preserve Home and the already-approved lower Experience sections. */
@media (min-width:901px){
  /* Page heroes: use the standard 1280 shell and allow the headline/lead to
     breathe. This also gives How I Work enough measure to keep “take” on line 1. */
  .page-layout-transformation .page-hero .site-container,
  .page-layout-how-work .page-hero .site-container,
  .page-layout-experience .page-hero .site-container,
  .journal-hero .site-container,
  body.page-template-page-contact .page-hero .site-container,
  body.page-template-page-contact .outcome-section .site-container{
    max-width:1280px;
  }

  .page-layout-transformation .page-hero h1,
  .page-layout-how-work .page-hero h1,
  .page-layout-experience .page-hero h1,
  .journal-hero h1,
  body.page-template-page-contact .page-hero h1{
    max-width:1180px;
  }

  .page-layout-transformation .page-hero .lead,
  .page-layout-how-work .page-hero .lead,
  .page-layout-experience .page-hero .lead,
  .journal-hero .lead,
  body.page-template-page-contact .page-hero .lead{
    max-width:82ch;
  }

  /* Transformation CTO: the responsibility heading + cards should use the
     same visual width as the widened hero, not the 1080 editorial shell. */
  .page-layout-transformation .responsibilities-deep .site-container{
    max-width:1280px;
  }
  .page-layout-transformation .responsibilities-deep .section-heading{
    max-width:1040px;
  }

  /* How I Work: from “Control before transformation theatre.” onward. */
  .page-layout-how-work .how-editorial .site-container{
    max-width:1280px;
  }
  .page-layout-how-work .how-editorial .editorial-block{
    max-width:1080px;
  }

  /* Experience: widen only the Evidence section. The later sections that were
     approved in v1.13 intentionally keep their existing geometry. */
  .page-layout-experience .experience-evidence .site-container{
    max-width:1280px;
  }
  .page-layout-experience .experience-evidence .section-heading{
    max-width:1080px;
  }

  /* Journal archive hero only. Article reading columns remain unchanged. */
  .journal-hero .lead{max-width:82ch;}

  /* Contact: widen hero and the post-form closing statement only; leave the
     form grid itself exactly as approved in v1.13. */
  body.page-template-page-contact .outcome-section .statement{
    max-width:1180px;
  }
}

/* ===== Content measure alignment — v1.15 =====
   QA showed the remaining inconsistency was not the outer shell; it was legacy
   child max-width rules (18ch headings / 72ch paragraphs) inside otherwise
   correctly widened sections. On desktop, the explicitly requested headings
   and their supporting copy now share the same available measure as the
   surrounding section. Cards, form geometry, Home, journal articles and all
   <=900px layouts remain unchanged. */
@media (min-width:901px){
  /* Transformation CTO — hero title and lead use one measure. */
  .page-layout-transformation .page-hero h1,
  .page-layout-transformation .page-hero .lead{
    max-width:100%;
  }

  /* Transformation CTO — responsibility introduction aligns with the cards. */
  .page-layout-transformation .responsibilities-deep .section-heading{
    max-width:100%;
  }
  .page-layout-transformation .responsibilities-deep .section-heading h2,
  .page-layout-transformation .responsibilities-deep .section-heading > p:not(.eyebrow){
    max-width:100%;
  }

  /* How I Work — hero title and lead share the full approved editorial measure. */
  .page-layout-how-work .page-hero h1,
  .page-layout-how-work .page-hero .lead{
    max-width:100%;
  }

  /* How I Work — from Control before transformation theatre onward, remove the
     inherited 18ch/72ch caps so each heading and its copy use the same width. */
  .page-layout-how-work .how-editorial .editorial-block{
    max-width:100%;
  }
  .page-layout-how-work .how-editorial .editorial-block h2,
  .page-layout-how-work .how-editorial .editorial-block p,
  .page-layout-how-work .how-editorial .editorial-block .pullquote{
    max-width:100%;
  }

  /* Experience — widen the hero title and the Evidence introduction only.
     Proof boxes and later sections keep their approved geometry. */
  .page-layout-experience .page-hero h1,
  .page-layout-experience .page-hero .lead{
    max-width:100%;
  }
  .page-layout-experience .experience-evidence .section-heading{
    max-width:100%;
  }
  .page-layout-experience .experience-evidence .section-heading h2,
  .page-layout-experience .experience-evidence .section-heading > p:not(.eyebrow){
    max-width:100%;
  }

  /* Journal archive hero only — do not change single-note reading widths. */
  .journal-hero h1,
  .journal-hero .lead{
    max-width:100%;
  }

  /* Contact hero and the closing section beneath the form. The form grid itself
     stays exactly as approved. */
  body.page-template-page-contact .page-hero h1,
  body.page-template-page-contact .page-hero .lead,
  body.page-template-page-contact .outcome-section h2,
  body.page-template-page-contact .outcome-section p,
  body.page-template-page-contact .outcome-section .statement{
    max-width:100%;
  }
}

/* ===== Final hero heading measure fix — v1.16 =====
   Desktop QA: Transformation CTO and How I Work were otherwise approved, but
   their hero H1s were still inheriting the older v1.13 980px cap because that
   selector was more specific than the later v1.15 override. Match the H1 to
   the full hero copy measure on these two pages only. */
@media (min-width:901px){
  .page-layout-balanced.page-layout-transformation .page-hero .site-container.narrow > h1,
  .page-layout-balanced.page-layout-how-work .page-hero .site-container.narrow > h1{
    max-width:100%;
  }
}

/* ===== Remaining desktop width refinements — v1.17 =====
   QA after v1.16 confirmed Transformation CTO and How I Work are approved.
   This revision touches only Experience, the Journal archive hero, and Contact.
   It raises selector specificity to override older narrow text measures while
   leaving cards, forms, single journal articles, Home, and <=900px layouts intact. */
@media (min-width:901px){
  /* Experience hero: heading and supporting copy share the full approved shell. */
  .page-layout-balanced.page-layout-experience .page-hero .site-container.narrow > h1,
  .page-layout-balanced.page-layout-experience .page-hero .site-container.narrow > .lead{
    max-width:100%;
  }

  /* Experience evidence intro: align heading and copy with the proof-card width. */
  .page-layout-balanced.page-layout-experience .experience-evidence .site-container > .section-heading,
  .page-layout-balanced.page-layout-experience .experience-evidence .site-container > .section-heading > h2,
  .page-layout-balanced.page-layout-experience .experience-evidence .site-container > .section-heading > p:not(.section-no){
    max-width:100%;
  }

  /* Journal listing hero only. Keep individual note/article reading columns unchanged. */
  body.post-type-archive-leadership_note .journal-hero .site-container.narrow,
  body.post-type-archive-leadership_note .journal-hero .site-container.narrow > h1,
  body.post-type-archive-leadership_note .journal-hero .site-container.narrow > .lead{
    max-width:1280px;
  }

  /* Contact hero and closing statement: use the standard desktop shell and remove
     inherited heading/paragraph caps. The contact form grid is intentionally untouched. */
  body.page-template-page-contact .page-hero .site-container.narrow,
  body.page-template-page-contact .page-hero .site-container.narrow > h1,
  body.page-template-page-contact .page-hero .site-container.narrow > .lead,
  body.page-template-page-contact .outcome-section .site-container.narrow,
  body.page-template-page-contact .outcome-section .site-container.narrow > h2,
  body.page-template-page-contact .outcome-section .site-container.narrow > p,
  body.page-template-page-contact .outcome-section .site-container.narrow > .statement{
    max-width:1280px;
  }
}

/* ===== Contact page width correction — v1.18 =====
   Contact-only follow-up after v1.17. Use an explicit template class rather than
   relying on WordPress body-class naming. Widen only the hero heading/supporting
   copy and the closing heading; keep the form grid and all other pages unchanged. */
@media (min-width:901px){
  .page-layout-contact .page-hero .site-container.narrow,
  .page-layout-contact .outcome-section .site-container.narrow{
    max-width:1280px;
  }

  .page-layout-contact .page-hero .site-container.narrow > h1,
  .page-layout-contact .page-hero .site-container.narrow > .lead{
    max-width:100%;
  }

  .page-layout-contact .outcome-section .site-container.narrow > h2{
    max-width:100%;
  }
}


/* ===== Conversion and spam-protection refinements — v1.19 =====
   Adds Cloudflare Turnstile to the Contact form and a restrained contextual
   CTA to individual Leadership Journal notes. Existing approved page widths
   and editorial layouts are intentionally unchanged. */
.turnstile-wrap{min-width:0;max-width:100%;overflow:hidden}
.turnstile-wrap .cf-turnstile{width:100%;max-width:100%}
.journal-cta{padding:clamp(72px,8vw,110px) 0;border-top:1px solid var(--border);background:linear-gradient(100deg,rgba(115,102,53,.12),rgba(13,21,29,.96) 58%)}
.journal-cta-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(42px,7vw,90px);align-items:end}
.journal-cta h2{font-family:var(--serif);font-weight:500;font-size:clamp(2.5rem,4.4vw,4.2rem);line-height:1.04;letter-spacing:-.02em;margin:.25rem 0 0;max-width:17ch}
.journal-cta p:not(.eyebrow){color:#c4c8ca;max-width:52ch;margin:0}
.journal-cta .button{margin-top:1.6rem}
@media(max-width:900px){.journal-cta-grid{grid-template-columns:1fr;gap:28px;align-items:start}.journal-cta h2{max-width:100%}}


/* v1.19.2 — keep contact submission feedback visible after redirect */
#contact-form-status {
    scroll-margin-top: 120px;
}

@media (max-width: 768px) {
    #contact-form-status {
        scroll-margin-top: 96px;
    }
}
