/* Who We Help: audience-led hierarchy and native, accessible disclosures. */
.who-page{--who-ease:cubic-bezier(.22,1,.36,1);--who-duration:480ms;--who-distance:14px;--who-stagger:70ms;--who-interaction:180ms}
.who-page .page-hero{padding-bottom:62px}
.who-page .page-hero h1{text-wrap:balance;max-width:1000px;font-size:clamp(44px,5vw,76px);line-height:1.05}
.who-page .page-hero>p:last-child{max-width:73ch;font-size:18px;line-height:1.65;margin-bottom:0}
.who-page .page-body{max-width:1440px;padding:50px 5% 0}
.who-page .eyebrow{font-size:11px;letter-spacing:.11em;line-height:1.6;margin:0 0 20px}
.who-intro{margin-bottom:50px}
.who-intro>p:first-child{font-size:22px;line-height:1.5;letter-spacing:-.02em;margin:0;max-width:52ch}
.who-audience{--who-accent:#61784c;--who-tint:#edf2e3;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:28px 6%;padding:52px 0 44px;border-top:1px solid #aeb6a8;align-items:center}
.who-tours{--who-accent:#986c4d;--who-tint:#f5eadd}
.who-lodging{--who-accent:#8b75a5;--who-tint:#eee9f4}
.who-page .who-audience-number{display:block;width:fit-content;font-size:12px;line-height:1;letter-spacing:.07em;color:var(--who-accent);padding:8px 0;margin:0 0 15px;border-top:2px solid var(--who-accent)}
.who-page .who-audience h2{font-size:clamp(35px,3.65vw,54px);font-weight:600;letter-spacing:-.045em;line-height:1.06;margin:0 0 22px;max-width:22ch;text-wrap:balance}
.who-page .who-audience-heading .who-audience-benefit{font-size:23px;font-weight:500;letter-spacing:-.025em;line-height:1.25;color:var(--ink);max-width:30ch;margin:0 0 16px}
.who-page .who-audience-heading>p:not(.who-audience-number):not(.who-audience-benefit){font-size:16px;line-height:1.65;color:var(--muted);max-width:46ch;margin:0 0 24px}
.who-page .who-industry-art{pointer-events:none;justify-self:center;width:100%;max-width:450px;margin:0;transform:translateY(-8px)}
.who-page .who-industry-art img{display:block;width:100%;height:auto;aspect-ratio:500/310;object-fit:contain}
.who-page .who-service-button{font-size:14px;gap:22px;min-height:50px;max-width:100%;border:1px solid transparent;transform:none;box-shadow:none;transition:background-color var(--who-interaction),border-color var(--who-interaction),color var(--who-interaction)}
.who-page .who-service-button:is(:hover,:focus-visible){background:#e3fa9c;border-color:#a8c654;transform:none;box-shadow:none}
.who-page .who-service-button:active{background:#bed96e;border-color:#91ad47}
.who-page :is(a,summary):focus-visible{outline:3px solid #75629e;outline-offset:5px}
/* A compact disclosure sits beneath each text/illustration row. */
.who-page .who-workflow{grid-column:1/-1;min-width:0;margin:0;border:1px solid #c7cdbf;border-radius:12px;background:#fbfaf4;box-shadow:0 1px 0 #ffffffb3;overflow:visible}
.who-info-toggle{list-style:none;display:flex;align-items:center;gap:16px;min-height:84px;padding:18px 22px;cursor:pointer;border-radius:11px;touch-action:manipulation;transition:background-color var(--who-interaction),box-shadow var(--who-interaction)}
.who-info-toggle::-webkit-details-marker{display:none}
.who-info-toggle::marker{content:''}
.who-info-toggle:is(:hover,:focus-visible){background:var(--who-tint);box-shadow:inset 3px 0 0 var(--who-accent)}
.who-info-toggle:active{background:#e3e8d9}
.who-info-symbol{display:grid;place-items:center;flex:0 0 31px;width:31px;height:31px;border:1px solid #b7c0a8;border-radius:50%;font-size:21px;font-weight:400;line-height:1;color:var(--who-accent);transition:transform var(--who-interaction) var(--who-ease),background-color var(--who-interaction)}
.who-info-label{min-width:0;display:block}
.who-info-title{display:block;font-size:18px;font-weight:600;letter-spacing:-.025em;line-height:1.3}
.who-info-subtitle{display:block;font-size:12px;line-height:1.5;color:var(--muted);margin-top:5px}
.who-workflow[open] .who-info-toggle{background:var(--who-tint);border-radius:11px 11px 0 0}
.who-workflow[open] .who-info-symbol{transform:rotate(45deg);background:#ffffffa3}
.who-info-content{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:5%;padding:26px 28px 28px;border-top:1px solid #d9ddcf}
.who-delegate ul{list-style:none;padding:0;margin:0;display:grid;gap:11px}
.who-delegate li{position:relative;padding-left:23px;font-size:14px;line-height:1.65}
.who-delegate li:before{content:'✓';position:absolute;left:0;color:var(--who-accent);font-size:13px}
.who-retain{border-left:2px solid #c9c0db;padding-left:24px}
.who-retain h3{font-size:15px;letter-spacing:-.015em;line-height:1.3;margin:0 0 10px}
.who-retain p{font-size:14px;line-height:1.65;color:#485149;margin:0}
.who-section-heading{max-width:690px;margin-bottom:32px}
.who-section-heading h2{font-size:clamp(30px,3.3vw,46px);line-height:1.1;margin:0 0 20px}
.who-section-heading>p:not(.eyebrow){font-size:16px;color:var(--muted)}
.who-paths{padding:52px 0 56px;border-top:1px solid #aeb6a8}
.who-path-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}
.who-path-grid article{padding-top:23px;border-top:2px solid #71825b}
.who-path-grid article+article{border-color:#ac8a70}
.who-path-label{font-size:11px;font-weight:600;letter-spacing:.09em;margin-bottom:16px}
.who-path-grid h3{font-size:27px;line-height:1.2;margin-bottom:16px;max-width:24ch}
.who-path-grid p:not(.who-path-label){font-size:16px;line-height:1.7;color:var(--muted)}
.who-page>.who-close{background:var(--ink);color:var(--paper);text-align:center;padding:72px 5%;width:100%;margin:0}
.who-close h2{font-size:clamp(34px,3.7vw,52px);line-height:1.12;max-width:24ch;margin:0 auto 22px}
.who-close>p:not(.eyebrow){max-width:60ch;margin:0 auto 26px;color:#d0d8ce;font-size:17px;line-height:1.65}
.who-page>.who-close .eyebrow{color:var(--lime);justify-content:center;max-width:none;width:100%;margin-inline:auto}
.who-close .who-close-note{font-size:13px!important;margin:20px auto 0!important}
.who-page .who-close .button{justify-content:center;transition:background-color var(--who-interaction),box-shadow var(--who-interaction);transform:none}
.who-page .who-close .button:is(:hover,:focus-visible){background:#e4ffa0;transform:none;box-shadow:0 0 0 4px #d5ef7f20}
.who-close a:focus-visible{outline-color:var(--lilac)}
.who-page .button:active{background:#c5e56a}
.who-page .who-motion-in{animation:who-reveal var(--who-duration) var(--who-ease) var(--who-delay,0ms) 1 backwards}
.who-page .who-industry-art.who-motion-in{animation:who-float-in 950ms var(--who-ease) 1 both}
@keyframes who-reveal{from{opacity:.25;transform:translateY(var(--who-distance))}to{opacity:1;transform:translateY(0)}}
@keyframes who-float-in{0%{opacity:.3;transform:translateY(14px)}65%{opacity:1;transform:translateY(-12px)}100%{opacity:1;transform:translateY(-8px)}}
@media(min-width:1700px){.who-page .page-hero{padding-inline:max(5%,calc((100vw - 1296px)/2))}}
@media(max-width:950px){.who-audience{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);column-gap:4%}.who-page .who-audience h2{font-size:38px}.who-page .who-audience-heading .who-audience-benefit{font-size:21px}}
@media(max-width:700px){.who-page .page-hero{padding-top:160px;padding-bottom:42px}.who-page .page-hero h1{font-size:44px;letter-spacing:-.045em}.who-page .page-hero>p:last-child{font-size:16px}.who-page .page-body{padding-top:32px}.who-intro{margin-bottom:32px}.who-intro>p:first-child{font-size:19px}.who-audience{grid-template-columns:minmax(0,1fr);gap:18px;padding:34px 0}.who-page .who-audience h2{font-size:36px;max-width:none;margin-bottom:19px}.who-page .who-audience-heading .who-audience-benefit{font-size:21px}.who-page .who-audience-heading>p:not(.who-audience-number):not(.who-audience-benefit){font-size:15px;max-width:none}.who-page .who-industry-art{justify-self:end;width:min(82%,320px);margin:-5px 0 -8px}.who-page .who-service-button{font-size:13px;padding:15px 18px;gap:16px}.who-info-toggle{gap:11px;padding:17px 16px;min-height:88px}.who-info-symbol{flex-basis:27px;width:27px;height:27px;font-size:19px}.who-info-title{font-size:16px}.who-info-subtitle{font-size:11px}.who-info-content{grid-template-columns:1fr;gap:23px;padding:22px 20px 24px}.who-retain{padding:20px 0 0;border-left:0;border-top:1px solid #d4cdde}.who-path-grid{grid-template-columns:1fr;gap:32px}.who-paths{padding-block:36px}.who-page>.who-close{padding:48px 24px}.who-close>p:not(.eyebrow){font-size:16px}.who-page .who-close .button{width:100%}}
@media(prefers-reduced-motion:reduce){.who-page .who-motion-in{animation:none!important}.who-page :is(a,summary,summary span){transition:none!important}}

/* Mobile repair only: one bounded column, readable type, natural height.
   Existing SVG files, illustration sequences and desktop rules are preserved. */
@media(max-width:760px){
 .who-page .page-hero{padding:132px 24px 36px}
 .who-page .page-hero h1{font-size:clamp(34px,9vw,42px);line-height:1.12;letter-spacing:-.04em;max-width:19ch;margin-bottom:20px}
 .who-page .page-hero>p:last-child{font-size:16px;line-height:1.65;max-width:none}
 .who-page .page-body{width:100%;max-width:100%;padding:32px 24px 0}
 .who-page .who-intro{margin-bottom:32px}
 .who-page .who-intro>p:first-child{font-size:18px;line-height:1.6}
 .who-page .who-audience{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;padding:36px 0;align-items:start}
 .who-page .who-audience>*{min-width:0;max-width:100%}
 .who-page .who-audience-heading{width:100%}
 .who-page .who-audience-number{margin-bottom:16px}
 .who-page .who-audience h2{font-size:clamp(28px,7.5vw,34px);line-height:1.15;letter-spacing:-.035em;max-width:none;margin-bottom:16px;text-wrap:pretty;overflow-wrap:break-word}
 .who-page .who-audience-heading .who-audience-benefit{font-size:19px;line-height:1.4;letter-spacing:-.02em;max-width:none;margin-bottom:14px}
 .who-page .who-audience-heading>p:not(.who-audience-number):not(.who-audience-benefit){font-size:16px;line-height:1.65;max-width:none;margin-bottom:24px}
 .who-page .who-service-button,.who-page .who-close .button{display:flex;width:100%;min-width:0;max-width:100%;min-height:52px;justify-content:center;align-items:center;text-align:center;white-space:normal;overflow-wrap:anywhere;gap:12px;padding:14px 16px;font-size:14px;line-height:1.5}
 .who-page .who-service-button .mp-arrow{flex:0 0 18px}
 .who-page .who-industry-art{justify-self:center;width:min(100%,288px);max-width:100%;margin:4px auto 0}
 .who-page .who-industry-art img{width:100%;height:auto;max-width:100%}
 .who-page .who-workflow{width:100%;min-width:0;max-width:100%;margin:0}
 .who-page .who-info-toggle{width:100%;min-width:0;align-items:flex-start;gap:12px;padding:18px 16px;min-height:76px}
 .who-page .who-info-symbol{flex:0 0 28px;width:28px;height:28px;font-size:19px;margin-top:1px}
 .who-page .who-info-label{flex:1;min-width:0}
 .who-page .who-info-title{font-size:16px;line-height:1.4;overflow-wrap:break-word}
 .who-page .who-info-subtitle{font-size:12px;line-height:1.55;margin-top:6px;overflow-wrap:break-word}
 .who-page .who-info-content{grid-template-columns:minmax(0,1fr);gap:24px;padding:22px 16px 24px}
 .who-page .who-info-content>*{min-width:0}
 .who-page .who-delegate li,.who-page .who-retain p{font-size:15px;line-height:1.65;overflow-wrap:break-word}
 .who-page .who-retain{padding:20px 0 0;border-left:0;border-top:1px solid #d4cdde}
 .who-page .who-retain h3{font-size:17px;line-height:1.4}
 .who-page .who-paths{padding:36px 0 40px}
 .who-page .who-section-heading{margin-bottom:28px}
 .who-page .who-section-heading h2{font-size:clamp(28px,7.5vw,34px);line-height:1.2;letter-spacing:-.035em;margin-bottom:0;text-wrap:pretty}
 .who-page .who-path-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 .who-page .who-path-grid article{min-width:0;padding-top:24px}
 .who-page .who-path-label{margin-bottom:16px;font-size:11px}
 .who-page .who-path-grid h3{font-size:24px;line-height:1.25;letter-spacing:-.03em;max-width:none;margin:0 0 16px;text-wrap:pretty}
 .who-page .who-path-grid p:not(.who-path-label){font-size:16px;line-height:1.65;margin-bottom:24px}
 .who-page>.who-close{padding:44px 24px}
 .who-page .who-close h2{font-size:clamp(28px,7.5vw,34px);line-height:1.2;letter-spacing:-.035em;margin-bottom:20px}
 .who-page .who-close>p:not(.eyebrow){font-size:16px;line-height:1.65}
}
@media(max-width:350px){
 .who-page .page-hero{padding-inline:20px}
 .who-page .page-body{padding-inline:20px}
 .who-page>.who-close{padding-inline:20px}
 .who-page .who-info-toggle{padding-inline:14px;gap:10px}
}
