
    :root {
      --ink:#080809; --paper:#f7f7f3; --soft:#e7f3e6; --mint:#dff4df;
      --peach:#ffd8c8; --line:rgba(8,8,9,.16); --white:#fff;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.65 "DM Sans",sans-serif}
    a{color:inherit}
    .wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}
    header{position:absolute;z-index:5;inset:0 0 auto;color:var(--white)}
    nav{height:92px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.2)}
    .brand{font:600 1rem/1.15 Manrope,sans-serif;text-decoration:none;letter-spacing:-.02em}
    .brand span{display:block;color:#cfd2cc;font-size:.73rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;margin-top:5px}
    .navlinks{display:flex;gap:30px;align-items:center}
    .navlinks a{text-decoration:none;font-size:.9rem;color:#e6e6e4}
    .navlinks .contact{color:var(--ink);background:var(--peach);padding:10px 17px;border-radius:999px;font-weight:600}
    .hero{position:relative;overflow:hidden;min-height:720px;background:var(--ink);color:var(--white);display:flex;align-items:center;padding:150px 0 90px}
    .hero:before{content:"";position:absolute;width:610px;height:610px;border:2px solid rgba(223,244,223,.72);border-radius:50%;right:-110px;top:95px;box-shadow:0 0 80px rgba(223,244,223,.09)}
    .hero:after{content:"";position:absolute;width:130px;height:130px;border:18px solid var(--peach);border-radius:50%;right:100px;top:90px;opacity:.95}
    .signal{position:absolute;right:410px;top:210px;display:flex;gap:8px}
    .signal i{width:64px;height:12px;border-top:2px solid rgba(255,255,255,.65);border-radius:50%;transform:rotate(4deg)}
    .hero-copy{position:relative;z-index:2;max-width:790px}
    .eyebrow{display:flex;align-items:center;gap:12px;font:600 .78rem/1 Manrope,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#b9c7b8}
    .eyebrow:before{content:"";width:28px;height:2px;background:var(--peach)}
    h1,h2,h3{font-family:Manrope,sans-serif;letter-spacing:-.045em;margin:0}
    h1{font-size:clamp(3rem,7vw,6.5rem);line-height:.98;font-weight:500;margin:30px 0 34px;max-width:900px}
    .hero p{font-size:clamp(1.08rem,2vw,1.35rem);max-width:650px;color:#c9cbc7;margin:0 0 36px}
    .actions{display:flex;gap:14px;flex-wrap:wrap}
    .button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;text-decoration:none;font-weight:600;border:1px solid rgba(255,255,255,.35)}
    .button.primary{background:var(--mint);color:var(--ink);border-color:var(--mint)}
    .hero-note{position:absolute;right:70px;bottom:42px;z-index:2;font:.74rem Manrope,sans-serif;color:#aeb3ad;letter-spacing:.12em;text-transform:uppercase}
    section{padding:110px 0}
    .intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:start}
    .section-label{font:600 .78rem Manrope,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#5b675a}
    h2{font-size:clamp(2.2rem,4vw,4rem);line-height:1.07;font-weight:500}
    .intro p{font-size:1.25rem;line-height:1.62;margin:28px 0 0;color:#343633}
    .services{background:var(--white);border-block:1px solid var(--line)}
    .section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:60px}
    .section-head p{max-width:460px;margin:0;color:#555955}
    .grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
    .card{position:relative;padding:38px 38px 42px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:275px}
    .num{font:500 .75rem Manrope,sans-serif;color:#6d746c;letter-spacing:.14em}
    h3{font-size:1.65rem;font-weight:600;margin:44px 0 16px}
    .card p{margin:0;color:#575b57;max-width:470px}
    .card:after{content:"";position:absolute;width:38px;height:38px;border-radius:50%;right:28px;top:28px;border:8px solid var(--soft)}
    .thinking{background:var(--ink);color:var(--white)}
    .thinking .section-label{color:#a8baa7}
    .thinking-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
    .thinking h2{margin-top:18px}
    .thinking p{color:#bfc3bd;font-size:1.1rem}
    .deliverables{margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.2)}
    .deliverables li{display:flex;gap:22px;align-items:flex-start;padding:21px 0;border-bottom:1px solid rgba(255,255,255,.2);font-size:1.06rem}
    .deliverables span{color:var(--peach);font:500 .75rem Manrope,sans-serif;padding-top:5px}
    .about{background:var(--soft);border-bottom:1px solid var(--line)}
    .about-layout{display:grid;grid-template-columns:minmax(300px,.82fr) 1.18fr;gap:90px;align-items:center}
    .portrait-wrap{position:relative;padding:0 34px 34px 0}
    .portrait-wrap:after{content:"";position:absolute;z-index:0;inset:34px 0 0 34px;border:1px solid rgba(8,8,9,.28);border-radius:24px}
    .portrait{position:relative;z-index:1;display:block;width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:24px;filter:saturate(.82) contrast(1.02)}
    .about-copy h2{margin:18px 0 26px}
    .about-copy p{margin:0 0 18px;color:#404540;font-size:1.06rem}
    .credentials{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}
    .credentials span{padding:9px 13px;border:1px solid rgba(8,8,9,.18);border-radius:999px;font:600 .76rem Manrope,sans-serif;letter-spacing:.02em}
    .engage{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
    .engage-copy p{font-size:1.12rem;color:#515551;max-width:600px}
    .engagements{display:grid;gap:14px}
    .engagement{background:var(--white);padding:24px 26px;border:1px solid var(--line);border-radius:16px}
    .engagement strong{display:block;font:600 1.05rem Manrope,sans-serif;margin-bottom:6px}
    .engagement p{margin:0;color:#5a5d59;font-size:.95rem}
    .contact-section{padding:0 0 60px}
    .contact-panel{position:relative;overflow:hidden;background:var(--mint);padding:75px;border-radius:28px;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:70px;align-items:start}
    .contact-panel:after{content:"";position:absolute;width:250px;height:250px;border:1px solid rgba(8,8,9,.25);border-radius:50%;right:-75px;top:-100px}
    .contact-panel h2{max-width:690px}
    .contact-panel p{margin:16px 0 0;color:#495048}
    .contact-form{position:relative;z-index:1;display:grid;gap:16px}
    .field{display:grid;gap:7px}
    .field label{font:600 .78rem Manrope,sans-serif;letter-spacing:.04em}
    .field input,.field textarea,.field select{width:100%;border:1px solid rgba(8,8,9,.28);border-radius:10px;background:rgba(255,255,255,.72);color:var(--ink);font:400 1rem/1.45 "DM Sans",sans-serif;padding:13px 14px;outline:none}
    .field textarea{min-height:135px;resize:vertical}
    .field input:focus,.field textarea:focus,.field select:focus{border-color:var(--ink);box-shadow:0 0 0 3px rgba(8,8,9,.1)}
    .contact-form .button{background:var(--ink);color:var(--white);border-color:var(--ink);cursor:pointer;width:max-content}
    .form-note{font-size:.82rem!important;margin:0!important;color:#5a6159!important}
    footer{padding:30px 0 42px}
    .footer-row{display:flex;justify-content:space-between;gap:30px;color:#666b65;font-size:.86rem}
    @media (max-width:800px){
      .wrap{width:min(100% - 28px,1180px)} nav{height:76px}.navlinks a:not(.contact){display:none}
      .hero{min-height:680px;padding-top:125px}.hero:before{width:430px;height:430px;right:-240px;top:170px}.hero:after{width:70px;height:70px;border-width:11px;right:24px;top:130px}.signal,.hero-note{display:none}
      section{padding:76px 0}.intro,.thinking-layout,.about-layout,.engage{grid-template-columns:1fr;gap:38px}.grid{grid-template-columns:1fr}.section-head{display:block}.section-head p{margin-top:20px}.portrait-wrap{max-width:520px}
      .card{padding:30px;min-height:240px}.contact-panel{padding:44px 28px;grid-template-columns:1fr;gap:34px}.footer-row{display:block}.footer-row div+div{margin-top:8px}
    }
    @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
  
.page-hero{min-height:650px}.page-hero h1{font-size:clamp(3rem,6.5vw,5.8rem);max-width:850px}.page-hero .hero-copy{max-width:1180px}.page-hero p{max-width:650px}.text-link{display:inline-block;margin-top:24px;font-weight:600;text-underline-offset:6px}.sector-list{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.sector-list span{border:1px solid var(--line);padding:10px 18px;border-radius:100px}.recruit-banner{background:var(--soft)}.steps{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.steps li{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:32px 0;border-bottom:1px solid var(--line)}.steps h3{margin:0 0 12px}.steps p{margin:0;max-width:750px;color:#515551}.step-number{font:500 2rem Manrope,sans-serif;color:#5b675a}.page-nav a[aria-current]{color:var(--mint);text-decoration:underline;text-underline-offset:6px}.footer-row a{margin-left:20px}@media(max-width:800px){nav{height:auto;min-height:96px;gap:16px;flex-wrap:wrap;padding:16px 0}.navlinks{gap:16px;flex-wrap:wrap}.navlinks a:not(.contact){display:inline-block;font-size:.8rem}.page-hero{padding-top:180px;min-height:720px}.steps li{grid-template-columns:40px 1fr}.footer-row a{margin:0 20px 0 0}}
.cohort{background:var(--peach)}.cohort-panel{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px;align-items:start}.cohort h2{margin-top:16px}.cohort-copy p{font-size:1.12rem;margin:0 0 18px}.cohort-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.cohort-meta span{padding:9px 13px;border:1px solid rgba(8,8,9,.2);border-radius:999px;font:600 .78rem Manrope,sans-serif}.faq{background:var(--white)}.faq-list{margin-top:54px;border-top:1px solid var(--line)}.faq-item{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;padding:28px 0;border-bottom:1px solid var(--line)}.faq-item h3{font-size:1.15rem;margin:0;letter-spacing:-.02em}.faq-item p{margin:0;color:#515551}.privacy-note{font-size:.8rem!important;color:#5a6159!important;margin:0!important}.contact-options{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.contact-options .button{background:var(--ink);color:var(--white);border-color:var(--ink)}

/* Mobile header stays in normal flow, so wrapped links cannot cover the hero. */
@media (max-width:1000px){
 header{position:relative;inset:auto;background:var(--ink)}
 nav{height:auto;min-height:0;display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:22px 0}
 .brand{max-width:100%}
 .navlinks{width:100%;display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center}
 .navlinks a:not(.contact){display:inline-block;font-size:.86rem}
 .navlinks .contact{padding:9px 16px}
 .hero,.page-hero{min-height:0;padding:64px 0 72px}
 .hero:before,.hero:after,.signal,.hero-note{display:none}
 .hero-copy{width:min(1180px,calc(100% - 40px));max-width:1180px}
 .hero h1,.page-hero h1{font-size:clamp(2.55rem,8vw,4.8rem);line-height:1.08;margin:24px 0 28px;overflow-wrap:break-word}
 .eyebrow{line-height:1.5;letter-spacing:.1em}
 .eyebrow:before{flex-shrink:0}
 .intro,.thinking-layout,.about-layout,.engage{grid-template-columns:minmax(0,1fr);gap:34px}
 .section-head{display:block}.section-head p{margin-top:20px}
 .contact-panel{grid-template-columns:minmax(0,1fr);gap:34px;padding:44px 28px}
 .contact-panel:after{display:none}
 .intro>*,.thinking-layout>*,.about-layout>*,.engage>*,.contact-panel>*{min-width:0}
 .field input,.field textarea,.field select{min-width:0}
 .card{min-width:0}.card h3{padding-right:16px}
 .footer-row{flex-wrap:wrap}
 .cohort-panel,.faq-item{grid-template-columns:minmax(0,1fr);gap:18px}
}
@media (max-width:480px){
 .hero-copy{width:calc(100% - 32px)}
 .navlinks{gap:12px 16px}
 .actions{flex-direction:column;align-items:stretch}
 .actions .button{width:100%;text-align:center;padding:12px 18px}
 section{padding:60px 0}
 .grid{grid-template-columns:minmax(0,1fr)}
 .card{padding:28px 24px}.card:after{width:28px;height:28px;right:20px;top:24px;border-width:6px}
 .contact-panel{padding:36px 22px}
 .steps li{grid-template-columns:32px minmax(0,1fr);gap:14px}
 .step-number{font-size:1.5rem}
 .footer-row>div:last-child{display:flex;flex-wrap:wrap;gap:12px 20px;margin-top:12px}
 .footer-row a{margin:0}
}
