/* Landing section patterns: open grids, a visual stage and an expanding carousel. */
body.home h1,body.home h2,body.home h3{font-family:var(--font-sans);font-weight:400;font-variation-settings:normal;letter-spacing:-.04em}
body.home h2{font-size:40px;line-height:1.05}
body.home .hero{height:100svh;min-height:700px;max-height:1150px;position:relative;display:block;background:#222;isolation:isolate}
body.home .hero-media{filter:sepia(.18) saturate(.82) contrast(1.04)}
body.home .hero-media video{object-position:center}
body.home .hero-gradient{background:linear-gradient(180deg,#0005 0%,transparent 32%,#0000 52%,#0009 100%)}
body.home .hero-content{position:absolute;bottom:65px;left:20px;right:20px;max-width:none;width:auto;padding:0;margin:0;color:#fff;text-align:center}
body.home .hero h1{font-size:clamp(40px,4.25vw,68px);line-height:1.03;letter-spacing:-.035em;text-transform:none}
.hero-bottom-line{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:28px}
body.home .hero-content p{margin:0;font-size:16px;line-height:1.4;max-width:470px;color:#fff}
body.home .hero-content .button{margin:0;background:#e8eae2!important;color:#191d13;font-size:12px;padding:6px 6px 6px 14px;gap:15px;min-height:32px}
body.home #hero-cta:after{content:'↗';display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#fff;font-size:14px}
body.home .video-toggle{bottom:28px;right:24px;width:26px;height:26px;font-size:12px;background:#ffffff5c;color:#fff;border:.5px solid #fff5}
.audience-strip{display:flex;align-items:center;gap:45px;padding:27px 24px 30px;border-bottom:.5px solid var(--rule)}
.audience-strip>span{font-size:11px;color:#7a7f71;white-space:nowrap}
body.home .hero-tabs{position:static;display:grid;grid-template-columns:repeat(4,1fr);width:100%;gap:28px;border:0}
body.home .hero-tab{background:transparent;backdrop-filter:none;padding:10px 0;min-height:0;gap:8px;border-radius:0;overflow:visible;border:0;opacity:.5;transition:opacity .2s;text-align:left}
body.home .hero-tab span{font-size:13px;letter-spacing:-.015em;font-weight:400;color:var(--ink)}
body.home .hero-tab strong{font-size:10px;font-weight:400;letter-spacing:0;color:#74796c}
body.home .hero-tab.active{background:none;opacity:1}
body.home .hero-tab.active:after{display:none}
body.home .hero-tab:hover{opacity:1}
body.home .section{padding:110px 24px}
.centred-heading{text-align:center;max-width:650px;margin:0 auto 58px}
.centred-heading p{font-size:16px;line-height:1.45;margin:24px auto 0;max-width:560px;color:#454c3c}
.method-section{padding-top:135px}
.method-stage{position:relative;min-height:620px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6%;padding:65px 8%;overflow:hidden;background:#e9eae5}
.method-stage-image{position:absolute;inset:0;background:linear-gradient(90deg,#eeefebef 5%,#eeefebbd 55%,#eeefeb80),url('/assets/workshops.jpg') center / cover;filter:saturate(.3)}
.method-tabs{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.method-tabs button{display:flex;gap:22px;align-items:center;justify-content:space-between;border-radius:999px;background:#ffffff9e;color:#555e4b;padding:9px 10px 9px 15px;font-size:13px;min-width:190px;border:.5px solid #fff7;transition:background .2s,color .2s}
.method-tabs button span{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#ffffff5e;color:inherit;font-size:16px}
.method-tabs button[aria-selected=true]{background:#13170f;color:#fff;border-color:#13170f}
.method-paper{position:relative;z-index:1;background:#fafbf7;padding:28px;min-height:390px;max-width:410px;width:100%;box-shadow:0 24px 60px #2d36201c;border:1px solid #dbe0d0;border-radius:5px;transform:rotate(-2deg)}
.paper-label{display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.04em;color:#879075;border-bottom:.5px solid #2d36202b;padding-bottom:20px}
body.home .method-paper h3{font-size:28px;margin-top:30px;line-height:1.1;letter-spacing:-.045em}
.method-paper>p{font-size:13px;line-height:1.55;color:#747d66;margin-top:15px}
.brief-lines{display:flex;flex-direction:column;gap:8px;margin:25px 0}
.brief-lines i{display:block;background:#dce0d4;height:3px;width:100%}.brief-lines i:nth-child(2){width:92%}.brief-lines i:nth-child(3){width:96%}.brief-lines i:nth-child(4){width:68%}
.brief-objective{background:#e9ede2;padding:16px;margin-top:22px}.brief-objective small{font-size:8px;letter-spacing:.05em;color:#7a856a}.brief-objective p{font-size:13px;color:#434e35;margin-top:10px}
.paper-caption{display:block;font-size:7px;color:#929b86;margin-top:27px}
.stage-caption{display:flex;align-items:start;justify-content:space-between;gap:30px;padding:30px 24px 0}
.stage-caption>p{font-size:16px;max-width:430px;line-height:1.45}
.method-card-grid{padding:100px 24px 40px;display:grid;grid-template-columns:repeat(4,1fr);gap:32px}
.method-icon{height:180px;background:#f0f1eb;display:grid;place-items:center;margin-bottom:23px;transition:background .3s}
.method-icon svg{width:95px;height:95px;color:#7e8770;stroke-width:1.1}
.method-icon svg .fill,.method-icon svg rect:nth-child(2){fill:currentColor}
.method-card-grid .step-number{font-size:10px;color:#8a917e}
body.home .training-step h3{font-size:20px;margin:13px 0 12px;letter-spacing:-.035em}
.training-step p{font-size:13px;color:#7b8370;line-height:1.45;max-width:260px}
body.home .home-pathways{padding-top:100px}
body.home .programme-heading{margin-bottom:65px;max-width:560px}
body.home .programme-heading h2{margin:0}
body.home .programme-heading>p{font-size:16px;line-height:1.45;color:#59624c;margin-top:27px;max-width:490px}
body.home .home-programmes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:58px 30px;margin:0}
body.home .home-programmes>a{padding:0;border:0;border-radius:0;background:none;min-height:0;display:flex;flex-direction:column;transition:none}
.programme-cover{height:300px;position:relative;overflow:hidden;background:#e6e8df}
.programme-cover img{width:100%;height:100%;object-fit:cover;filter:saturate(.45);transition:transform .7s,filter .7s}
.programme-cover:after{content:'';position:absolute;inset:0;background:linear-gradient(#0003,transparent 50%,#0001)}
.programme-cover-tag{position:absolute;top:16px;left:16px;color:#fff;font-size:10px;z-index:1}
.cover-arrow{position:absolute;bottom:15px;right:15px;width:28px;height:28px;border-radius:50%;background:#ffffffe0;display:grid;place-items:center;font-size:18px;z-index:1;color:#222}
.programme-card-copy{display:flex;flex-direction:column;flex:1;padding-top:20px}
body.home .home-programmes h3{font-size:23px;line-height:1.1;letter-spacing:-.04em;margin:0 0 16px;max-width:350px}
body.home .home-programmes p{font-size:13px;line-height:1.45;color:#78806e;margin-bottom:24px}
.programme-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:auto 0 0;padding:16px 0;border-top:.5px solid #202b1626}
.programme-facts dt{font-size:9px;color:#8a927e;margin-bottom:7px}.programme-facts dd{font-size:11px;color:#505c42;margin:0;line-height:1.4}
.programme-card-footer{border-top:.5px solid #202b1626;display:flex;justify-content:space-between;gap:15px;padding-top:15px;font-size:11px;color:#58654a}
.programme-card-footer strong{font-weight:400}
.programme-section-bottom{display:flex;align-items:start;justify-content:space-between;gap:30px;margin-top:55px}
.programme-availability{font-size:11px;color:#838c75;max-width:350px;line-height:1.5}
.audience-section{overflow:hidden}
.carousel-controls{display:flex;justify-content:space-between;align-items:center;margin:65px 0 55px}
.carousel-controls>button{display:grid;place-items:center;border-radius:50%;background:#e9eae4;width:26px;height:26px;font-size:17px;color:#535f44}
.carousel-dots{display:flex;align-items:center;gap:5px;background:#eeefe9;padding:8px;border-radius:99px}
.carousel-dots button{width:5px;height:5px;padding:0;border-radius:5px;background:#b8bfae;transition:width .3s,background .3s}
.carousel-dots button[aria-pressed=true]{width:24px;background:#676f5e}
.audience-track{display:flex;gap:25px;align-items:flex-start}
.audience-card{flex:1;min-width:0;transition:flex .5s ease}
.audience-card.active{flex:2.2}
.audience-image{height:390px;position:relative;overflow:hidden;background:#d6dccd}
.audience-image img{height:100%;width:100%;object-fit:cover;filter:saturate(.35);transition:transform .6s}
.audience-image:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(#0005,transparent 50%)}
.audience-toggle{position:absolute;z-index:1;inset:0;width:100%;height:100%;background:none;color:#fff;padding:19px 15px;text-align:center;font-size:13px;line-height:1.3;font-weight:400;display:flex;align-items:flex-start;justify-content:center}
.audience-toggle span{display:none}.audience-card.active .audience-toggle span{display:inline;margin-left:12px}
.audience-copy{padding-top:24px;font-size:13px;color:#7e8871;line-height:1.45}.audience-copy a{display:inline-block;color:#364429;margin-top:20px}
.practice-feature{height:620px;position:relative;overflow:hidden;margin-top:20px;background:#151b0e;color:#fff}
.practice-feature>img{height:100%;width:100%;object-fit:cover;filter:brightness(.65) saturate(.65)}
.feature-copy{position:absolute;top:35px;left:20px;right:20px;text-align:center}.feature-copy>span{font-size:11px;color:#c2cab6}
body.home .feature-copy h2{font-size:36px;margin-top:12px}.feature-copy a{display:inline-block;font-size:24px;color:#d9decf;margin-top:14px;letter-spacing:-.045em}
.programme-spotlight{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-block:110px 150px!important}
.programme-spotlight h2{margin:28px 0}.programme-spotlight p{font-size:15px;line-height:1.5;max-width:460px;color:#67725b}
.spotlight-facts>div{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:35px;padding:20px 0;border-bottom:.5px solid #202c1526}
.spotlight-facts strong{font-size:80px;line-height:1;font-weight:400;letter-spacing:-.07em}.spotlight-facts span{font-size:13px;color:#7e8a6f;max-width:170px}
.institute-vision{display:grid;grid-template-columns:1fr 1fr;gap:2%;background:#e5e5df;padding-block:45px!important}
.vision-title{display:flex;flex-direction:column;align-items:start;justify-content:space-between;gap:100px}
.vision-title .text-link{margin-top:auto}.vision-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:55px;font-size:13px;line-height:1.5;color:#555e4b}
.vision-content img{width:100%;height:350px;object-fit:cover;filter:saturate(.55)}
body.home .practice{display:block;background:#000;color:#fff;padding:40px 24px 30px;margin:0}
.faculty-heading{min-height:300px}.faculty-heading .eyebrow{color:#aab49e}body.home .faculty-heading h2{margin:18px 0 12px;font-size:34px}.faculty-heading .text-link{margin:0;color:#bac7ac}.faculty-heading>p{font-size:13px;line-height:1.5;max-width:310px;color:#929f84;margin:50px 0 80px}
.faculty-standards{display:grid;grid-template-columns:repeat(3,1fr)}
body.home .practice details{border:.5px solid #ffffff28;background:none;border-radius:0;padding:25px;margin-right:-.5px}
body.home .practice summary{font-size:14px;line-height:1.4;gap:20px;padding:0;align-items:start}
.faculty-summary{display:flex;flex-direction:column;gap:18px}.faculty-summary small{font-size:10px;color:#829171}.disclosure-mark{font-size:20px;color:#829171}
body.home .practice details p{padding:25px 0 0;font-size:13px;color:#9daa90;max-width:250px;line-height:1.55}
body.home .team-callout{background:var(--bone)}
.team-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}
body.home .team-intro h2{font-size:40px;margin:24px 0}.team-intro>p{font-size:15px;color:#6e7b61;max-width:360px}.team-actions{display:flex;align-items:center;gap:24px;margin-top:40px;flex-wrap:wrap}.team-actions .text-link{margin:0}
.commission-steps{display:grid;grid-template-columns:1fr 1fr;gap:40px 28px}
.commission-steps article{border-top:.5px solid #202d1429;padding-top:20px}.commission-steps .step-number{font-size:10px;color:#8e9a80}
body.home .commission-steps h3{font-size:20px;margin:30px 0 15px;line-height:1.15}.commission-steps p{font-size:13px;line-height:1.5;color:#7a886d}
@media(hover:hover) and (pointer:fine){.training-step:hover .method-icon{background:#e6e9df}.programme-overview:hover .programme-cover img,.audience-card:hover .audience-image img{transform:scale(1.025);filter:saturate(.65)}body.home .home-programmes>a:hover{transform:none}.audience-copy a:hover{opacity:.6}.method-tabs button:hover{background:#ffffffde}.method-tabs button[aria-selected=true]:hover{background:#303a25}}
@media(min-width:1700px){body.home .hero h1{font-size:72px}.method-stage{min-height:720px}.programme-cover{height:380px}}
@media(max-width:1100px){.programme-cover{height:240px}.audience-track{gap:15px}.audience-image{height:330px}.method-stage{padding:55px 7%}.hero-bottom-line{gap:16px}body.home .hero-content p{font-size:14px}}
@media(max-width:760px){
  body.home .hero{height:88svh;min-height:640px;max-height:900px}
  body.home .hero-content{bottom:75px;left:20px;right:20px;color:#fff;padding:0;width:auto;max-width:none}
  body.home .hero h1{font-size:38px;line-height:1.05;max-width:360px;margin:0 auto;letter-spacing:-.04em}
  body.home .hero-media video{object-position:62% center}
  .hero-bottom-line{flex-direction:column;gap:22px;margin-top:24px}
  body.home .hero-content p{font-size:14px;max-width:290px;margin:0;line-height:1.5}
  body.home .hero-content .button{margin:0}
  body.home .video-toggle{bottom:22px;right:20px}
  .audience-strip{display:block;padding:23px 0 23px 20px}.audience-strip>span{display:block;margin-bottom:15px;font-size:10px}
  body.home .hero-tabs{display:flex;overflow:auto;gap:30px;padding-right:20px;scrollbar-width:none;scroll-snap-type:x mandatory}
  body.home .hero-tab{flex:0 0 190px;padding:0;min-height:44px;gap:6px;scroll-snap-align:start}.hero-tab strong{white-space:nowrap}
  body.home .section{padding:75px 20px}body.home h2{font-size:32px}
  .method-section{padding-top:80px}.centred-heading{padding:0 20px;margin-bottom:40px}.centred-heading p{font-size:14px;margin-top:22px}
  .method-stage{display:flex;flex-direction:column;min-height:620px;padding:30px 20px;gap:35px}.method-tabs{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.method-tabs button{min-width:0;width:100%;padding:8px 8px 8px 12px;font-size:11px;gap:6px}.method-tabs button span{width:18px;height:18px;font-size:14px}
  .method-paper{width:90%;padding:24px;min-height:375px;transform:rotate(-1deg);max-width:350px}.method-paper>p{font-size:12px}.brief-objective p{font-size:12px}body.home .method-paper h3{font-size:25px}
  .stage-caption{padding:25px 20px 0;gap:22px;flex-direction:column}.stage-caption>p{font-size:14px}
  .method-card-grid{padding:65px 20px 0;grid-template-columns:1fr 1fr;gap:35px 20px}.method-icon{height:140px;margin-bottom:18px}.method-icon svg{width:70px;height:70px}body.home .training-step h3{font-size:18px;margin-top:10px}.training-step p{font-size:12px}
  body.home .home-pathways{padding-top:80px}.programme-heading{max-width:none}body.home .programme-heading{margin-bottom:35px}body.home .programme-heading>p{font-size:14px;margin-top:23px;max-width:320px}
  body.home .home-programmes{grid-template-columns:1fr;gap:45px}.programme-cover{height:310px}.programme-card-copy{padding-top:20px}body.home .home-programmes h3{font-size:24px;margin-bottom:14px}body.home .home-programmes p{font-size:13px;margin-bottom:20px}.programme-facts{padding:15px 0}.programme-card-footer{font-size:11px}
  .programme-section-bottom{flex-direction:column;margin-top:40px;gap:22px}.programme-availability{max-width:300px;font-size:11px}
  .audience-section .centred-heading{padding:0}.carousel-controls{margin:40px 0 30px}.audience-track{overflow:auto;scrollbar-width:none;scroll-snap-type:x mandatory;margin-right:-20px;padding-right:20px;gap:15px}.audience-card,.audience-card.active{flex:0 0 83%;scroll-snap-align:start}.audience-image{height:360px}.audience-toggle{text-align:left;justify-content:flex-start;padding:18px;font-size:16px}.audience-copy{font-size:13px;padding-top:20px;min-height:90px}
  .practice-feature{height:470px;margin:0}.feature-copy{top:30px}body.home .feature-copy h2{font-size:30px}.feature-copy a{font-size:19px}
  .programme-spotlight{grid-template-columns:1fr;gap:40px;padding-block:75px!important}.programme-spotlight p{font-size:14px;max-width:340px}.programme-spotlight h2{margin:24px 0}.spotlight-facts strong{font-size:66px}.spotlight-facts span{font-size:12px}.spotlight-facts>div{padding:17px 0;gap:30px}
  .institute-vision{grid-template-columns:1fr;gap:40px;padding-block:40px!important}.vision-title{gap:22px}.vision-title .text-link{margin:0}.vision-columns{gap:22px;font-size:12px;margin-bottom:30px}.vision-content img{height:270px}
  body.home .practice{padding:35px 20px 25px}.faculty-heading{min-height:0}body.home .faculty-heading h2{font-size:30px}.faculty-heading>p{font-size:12px;margin:30px 0 45px;max-width:285px}.faculty-standards{grid-template-columns:1fr}body.home .practice details{padding:22px;margin-top:-.5px}.faculty-summary{flex-direction:row;gap:22px}body.home .practice summary{font-size:14px}body.home .practice details p{padding:20px 0 0 35px;max-width:310px;font-size:12px}
  .team-layout{grid-template-columns:1fr;gap:45px}body.home .team-intro h2{font-size:32px}.team-intro>p{font-size:14px}.team-actions{gap:25px;margin-top:30px}.commission-steps{gap:35px 25px}body.home .commission-steps h3{font-size:18px;margin-top:25px}.commission-steps p{font-size:12px}
}
@media(max-width:370px){body.home .hero h1{font-size:34px}.method-tabs button{font-size:10px}.vision-columns{grid-template-columns:1fr}.programme-cover{height:270px}}
@media(prefers-reduced-motion:reduce){.audience-card,.method-tabs button,.programme-cover img,.audience-image img{transition:none}.programme-overview:hover .programme-cover img,.audience-card:hover .audience-image img{transform:none}}
body.reduce-motion .audience-card,body.reduce-motion .programme-cover img,body.reduce-motion .audience-image img{transition:none}
