/* Corporate home: shared brand foundations with programme landing. */
.home-page{--home-hero-space:var(--space-24);--home-section-l:var(--space-24);--home-section-m:var(--space-20);--home-section-s:var(--space-16);--home-bleed:max(60px,calc((100vw - var(--max))/2));background:var(--paper);overflow-x:clip}
.home-page .button{background:var(--amber);border-color:var(--amber);color:var(--ink)}
.home-page .button:hover{background:var(--ink);border-color:var(--ink);color:var(--white)}
.home-page .header-cta{max-width:none}
.home-page .skip{background:var(--ink);color:var(--white)}
.home-page strong{font-family:var(--body);font-weight:600}
.home-page .home-benefits em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--ink)}
.home-page h1,.home-page h2{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}
.home-page h3{font-family:var(--display);font-weight:700;letter-spacing:-.015em}
.home-page .eyebrow{margin-bottom:var(--space-4);color:var(--slate)}
.home-page .text-link{font-size:16px}
.home-hero{padding:0;overflow:hidden}
.home-hero-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--gutter);align-items:center}
.home-hero-copy{max-width:780px;padding-block:var(--home-hero-space)}
.home-hero h1{margin:0;font-size:clamp(52px,5.3vw,78px);line-height:1.08;text-wrap:balance}
.home-hero h1 span{display:block;color:var(--slate)}
.home-lead{max-width:700px;margin:var(--space-8) 0 0;font-size:clamp(18px,1.45vw,21px);line-height:1.58;color:var(--graphite)}
.home-actions{display:flex;gap:var(--space-6);align-items:center;flex-wrap:wrap;margin-top:var(--space-8)}
.image-slot{position:relative;overflow:hidden;background:#dce6ea}
.image-slot img{display:block;width:100%;height:100%;object-fit:cover}
.home-hero-media{width:calc(100% + var(--home-bleed));margin-right:calc(-1 * var(--home-bleed));aspect-ratio:948/1659;align-self:stretch;background:transparent}
.home-hero-media img{object-fit:cover;object-position:center top}
.home-section{padding:var(--home-section-l) 0}
.home-section h2{margin:0 0 var(--space-8);font-size:clamp(44px,4.35vw,62px);line-height:1.11;text-wrap:balance}
.home-section p{margin-top:0}
.home-narrow{max-width:none}
.home-audience{background:var(--white)}
.home-audience h2{max-width:1000px}
.home-prose{font-size:clamp(18px,1.5vw,21px);line-height:1.65;color:var(--graphite)}
.home-prose p:last-child{margin-bottom:0}
.home-audience-prose{max-width:790px;margin-left:auto}
.home-section-heading{max-width:920px;margin-bottom:var(--space-12)}
.home-section-heading>p:last-child{max-width:750px;margin-bottom:0;font-size:clamp(18px,1.45vw,21px);line-height:1.6;color:var(--graphite)}
.home-benefits{background:var(--mist)}
.home-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}
.home-card-grid article{min-width:0;padding:var(--space-8) var(--space-6) 0;border-left:1px solid var(--line)}
.home-card-grid article:first-child{padding-left:0;border-left:0}
.home-card-no,.home-approach-grid article>span{font-family:var(--display);font-size:16px;font-weight:700;color:var(--slate)}
.home-card-grid h3,.home-approach-grid h3{margin:32px 0 16px;font-size:clamp(25px,2.2vw,32px);line-height:1.12}
.home-card-grid p,.home-approach-grid p{color:var(--graphite);font-size:17px;line-height:1.58}
.home-split{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center;gap:var(--gutter)}
.home-experience{padding:0;background:var(--paper)}
.home-experience-copy{max-width:790px;padding-block:var(--home-section-l)}
.home-experience-media{width:calc(100% + var(--home-bleed));margin-right:calc(-1 * var(--home-bleed));aspect-ratio:1;align-self:stretch;background:transparent}
.home-experience-media img{height:100%;object-fit:cover;object-position:center bottom;transform:none}
.home-program{padding-bottom:0;background:var(--white);border-block:1px solid var(--line)}
.home-program-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--gutter);align-items:center}
.home-program-media{min-height:clamp(440px,48vw,650px);align-self:stretch;background:var(--white)}
.home-program-media img{object-fit:cover;object-position:center top}
.home-program-copy{max-width:770px}
.home-program .eyebrow{color:#8b6b0d}
.home-program h2{font-family:var(--display);font-size:clamp(46px,4.3vw,68px);font-weight:700;line-height:.99;text-transform:uppercase;letter-spacing:-.028em}
.home-program-copy>p:not(.eyebrow){font-size:clamp(18px,1.4vw,21px);line-height:1.55;color:var(--graphite)}
.home-program-facts{display:flex;gap:var(--space-2);flex-wrap:wrap;margin:var(--space-8) 0;padding:var(--space-4) 0;border-block:1px solid var(--line);font-size:17px!important;color:var(--ink)!important}
.home-approach{padding-block:var(--home-section-m);background:var(--paper)}
.home-approach-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid var(--line)}
.home-approach-grid article{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:var(--space-4);padding:var(--space-8) var(--space-8) var(--space-8) 0;border-bottom:1px solid var(--line)}
.home-approach-grid article:nth-child(2n){padding-left:var(--space-8);border-left:1px solid var(--line)}
.home-approach-grid h3{margin:0 0 12px}
.home-approach-grid p{grid-column:2;margin-bottom:0;max-width:470px}
.home-team{padding-block:var(--home-section-m);background:var(--mist)}
.home-team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gutter)}
.home-person{min-width:0}
.home-person-photo{aspect-ratio:4/5;background:linear-gradient(145deg,#d4dfe3,#eaf2f4)}
.home-person-photo img{object-position:50% 25%;filter:grayscale(1)}
.home-person-photo-daniela img{transform:scale(1.15);transform-origin:50% 0}
.image-slot-person:before{content:"";position:absolute;left:22%;right:22%;top:17%;height:43%;border:1px solid #5d6d8660;border-radius:50%}
.image-slot-person:after{content:"";position:absolute;left:12%;right:12%;bottom:-19%;height:52%;border:1px solid #5d6d8660;border-radius:50% 50% 0 0}
.home-person h3{margin:var(--space-6) 0 0;font-size:clamp(24px,2vw,29px);line-height:1.1}
.home-person p{margin:var(--space-4) 0 0;max-width:35ch;color:var(--graphite);font-size:clamp(15px,1.1vw,17px);line-height:1.55}
.home-final{padding-block:var(--home-section-s);background:var(--ink);color:var(--white)}
.home-final .eyebrow{color:#b7c8d6}
.home-final-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--gutter);align-items:center}
.home-final h2{margin-bottom:0}
.home-final-grid>div:last-child>p{font-size:clamp(18px,1.5vw,21px);line-height:1.6;color:#d9e0e8}
.home-final .button{display:table;margin:var(--space-8) 0 var(--space-4)}
.home-final .button:hover{background:var(--white);border-color:var(--white);color:var(--ink)}
.home-final-link{font-family:var(--display);font-weight:700;text-underline-offset:5px}
.home-page footer{border-top:1px solid #ffffff3d}
@media(max-width:1199px){
  .home-page{--home-hero-space:var(--space-20);--home-section-l:var(--space-20);--home-section-m:var(--space-16);--home-section-s:var(--space-12);--home-bleed:40px}
  .home-hero-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:32px}
  .home-hero h1{font-size:clamp(45px,5vw,64px)}
  .home-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-card-grid article{padding:var(--space-6);border-bottom:1px solid var(--line)}
  .home-card-grid article:nth-child(odd){padding-left:0;border-left:0}
  .home-team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-8) var(--space-6)}
  .home-program-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--gutter)}
  .home-program-copy{padding-bottom:var(--home-section-l)}
  .home-program h2{font-size:clamp(42px,4.6vw,56px)}
  .home-split{grid-template-columns:1fr;gap:0}
  .home-experience-copy{grid-row:2;padding-block:var(--home-section-m) var(--home-section-l)}
  .home-experience-media{grid-row:1;width:calc(100% + 2 * var(--home-bleed));margin-inline:calc(-1 * var(--home-bleed));aspect-ratio:1754/1254}
  .home-experience-media img{height:100%;object-fit:contain;object-position:center top;transform:none}
}
@media(max-width:900px){
  .home-hero-grid,.home-split,.home-program-grid,.home-final-grid{grid-template-columns:1fr}
  .home-hero-grid{gap:var(--space-8)}
  .home-hero-copy{max-width:760px;padding-bottom:0}
  .home-hero h1{font-size:clamp(46px,6.5vw,65px)}
  .home-hero-media{width:calc(100% + 2 * var(--home-bleed));height:clamp(500px,90vw,760px);margin-inline:calc(-1 * var(--home-bleed));aspect-ratio:auto}
  .home-hero-media img{width:min(100%,600px);height:100%;margin-inline:auto;object-position:center top}
  .home-program-media{min-height:0;aspect-ratio:1.35}
  .home-program-media{grid-row:1}
  .home-program-copy{grid-row:2}
}
@media(max-width:767px){
  .home-page{--home-hero-space:72px;--home-section-l:var(--space-16);--home-section-m:56px;--home-section-s:40px;--home-bleed:24px}
  .home-hero-grid{gap:var(--space-12)}
  .home-hero h1{font-size:clamp(40px,8.4vw,55px);line-height:1.1}
  .home-lead{margin-top:var(--space-6)}
  .home-actions{align-items:flex-start;gap:var(--space-6)}
  .home-hero-media{height:clamp(470px,110vw,690px)}
  .home-section h2{font-size:clamp(36px,7.7vw,49px)}
  .home-section-heading{margin-bottom:var(--space-8)}
  .home-audience-prose{margin-left:0}
  .home-card-grid,.home-approach-grid{grid-template-columns:1fr}
  .home-card-grid article,.home-card-grid article:nth-child(odd){padding:var(--space-6) 0;border-left:0}
  .home-card-grid h3{margin:var(--space-4) 0 var(--space-2)}
  .home-approach-grid article,.home-approach-grid article:nth-child(2n){padding:var(--space-6) 0;border-left:0}
  .home-program-grid{gap:var(--space-8)}
  .home-program h2{font-size:clamp(40px,8vw,54px)}
  .home-team-grid{gap:var(--space-8) var(--space-4)}
  .home-person h3{font-size:23px}
  .home-person p{font-size:16px}
  .home-final-grid{gap:var(--space-8)}
  .home-final .button{width:max-content;max-width:100%;text-align:center}
}
@media(max-width:479px){
  .home-page{--home-bleed:16px}
  .home-hero h1{font-size:clamp(37px,10.1vw,48px)}
  .home-actions .button{width:100%;text-align:center}
  .home-hero-media{height:120vw}
  .home-experience-media{aspect-ratio:1.25}
  .home-experience-media img{object-fit:cover;object-position:center top}
  .home-team-grid{grid-template-columns:1fr;gap:var(--space-12)}
  .home-person-photo{max-width:330px}
  .home-person h3{font-size:23px}
  .home-person p{font-size:16px;line-height:1.55}
  .home-program-facts{gap:var(--space-1)}
}
