/* Full-width layout and homepage refresh. */
body{max-width:none;width:100%;margin:0}
.hero{height:calc(100svh - 108px);min-height:620px;max-height:none}
.home-email{margin-top:14px;font-size:15px;line-height:1.8}.home-email a{text-decoration:underline;text-underline-offset:4px;display:inline-block}
.home-listings{padding-left:0;padding-right:0}.listing-heading{padding:0 var(--gutter) 28px}.listing-heading h2{font-size:clamp(30px,3vw,48px);margin:16px 0}.listing-heading>p:not(.eyebrow){max-width:650px;color:var(--muted)}.listing-motion{margin-top:20px;border:1px solid var(--line);padding:10px 18px;font-size:12px}
.listing-row{overflow:hidden;width:100%;margin-bottom:18px}.listing-track{display:flex;width:max-content;animation:listing-drift 70s linear infinite}.listing-row-0 .listing-track{animation-direction:reverse}.listing-group{display:flex;gap:18px;padding-right:18px;flex-shrink:0}.listing-photo{display:block;width:clamp(270px,30vw,620px);aspect-ratio:3/2;border:0;padding:0;border-radius:10px;overflow:hidden;background:#e6e3dc;flex-shrink:0}.listing-photo img{width:100%;height:100%;object-fit:cover}.listing-row:hover .listing-track,.listing-row:focus-within .listing-track,.home-listings.is-paused .listing-track{animation-play-state:paused}.home-listings>.gallery-all,.home-listings>.gallery-note{margin-left:var(--gutter)}
@keyframes listing-drift{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.expert-home{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:45px;background:#e8e7e0}.expert-home h2{margin-top:18px}.expert-home p+p{margin-top:18px}.expert-home .actions{margin-top:25px}.expert-player-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.expert-player-grid[hidden]{display:none}.expert-player-grid video{width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;background:#111;border-radius:12px}.expert-player-grid h3{font-size:20px;margin-top:14px}
.portal-help{display:flex;align-items:center;justify-content:space-between;gap:40px}.portal-help p{max-width:700px;margin-top:18px}.portal-help .button{flex-shrink:0}.portal-help h2{margin-top:16px}
.team-partnership>.success-wide{width:min(100%,600px);height:auto;max-height:none;object-fit:contain;margin:35px auto 55px;border-radius:15px}.success-team img,.family-note img{height:auto;max-height:700px;object-fit:contain;object-position:center}.bio>img{height:auto;max-height:740px;object-fit:contain;object-position:top}
.success-card-grid article,.service-detail-body>*{min-width:0}.success-card-grid h2{font-size:clamp(25px,2.2vw,38px);line-height:1.15}.success-card-grid p{margin-top:20px}.success-card-grid .text-link{display:inline-block;margin-top:18px}
.training-intro{max-width:1100px}.training-intro h1{font-size:clamp(40px,5vw,76px);line-height:1.05;margin:20px 0}.training-intro p{max-width:760px}.training-intro .actions{margin-top:24px}.training-videos{padding-top:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:55px 35px}.training-videos h2{font-size:clamp(25px,2.2vw,38px)}.training-videos p{margin:15px 0 20px}.training-videos video{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#111;border-radius:12px}.training-videos .text-link{display:inline-block;margin-top:15px}.training-contact p{margin:18px 0 25px;max-width:740px}
.actions{row-gap:16px;flex-wrap:wrap}.actions>*{max-width:100%}.actions a{white-space:normal}.service-detail-hero>img,.package-sample-hero>img{height:auto;aspect-ratio:3/2;object-fit:contain;background:#e9e7e0}.industry-hero>img{object-fit:contain;background:#e9e7e0}.why-photo img{object-fit:cover;object-position:center}
@media(min-width:1921px){:root{--gutter:clamp(88px,5vw,150px)}.hero h1{font-size:clamp(72px,4.5vw,116px)}}
@media(max-width:760px){.hero{height:calc(100svh - 90px);min-height:660px}.expert-home{grid-template-columns:1fr;gap:28px}.portal-help{display:block}.portal-help .button{margin-top:25px}.training-videos{grid-template-columns:1fr}.home-email span{display:none}.home-email a{display:block}.listing-photo{width:82vw}.listing-heading h2{font-size:32px}.success-team img,.family-note img,.bio>img{height:auto;max-height:600px}.expert-player-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.expert-player-grid article{flex:0 0 80%;scroll-snap-align:start}}
@media(prefers-reduced-motion:reduce){.listing-track{animation:none}.listing-row{overflow-x:auto}.listing-group[aria-hidden]{display:none}.listing-motion{display:none}}
/* Keep architectural context and portraits visible instead of slicing wide photos. */
.success-wide{height:auto;max-height:none;object-fit:contain}
.why-photo{min-height:0;height:auto;aspect-ratio:3/2;align-self:center}
.why-photo img{height:100%;width:100%;object-fit:contain}
@media(max-width:760px){.why-photo{height:auto;min-height:0}.why-photo>span{font-size:22px;bottom:20px;left:20px}}
/* Hosted-review refinements: keep the whole portrait in view and balance four cards. */
.team-partnership>.success-wide{width:auto;max-width:min(100%,600px);max-height:70svh;height:auto}
.team-partnership .success-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.expert-detail-hero{align-items:center}
.expert-feature{margin:0 auto;width:min(100%,310px)}
.expert-feature video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain;border-radius:15px;background:#111}
.expert-feature figcaption{font-size:12px;line-height:1.5;color:var(--muted);margin-top:12px;text-align:center}
@media(max-width:760px){.team-partnership .success-card-grid{grid-template-columns:1fr}.expert-feature{width:min(100%,330px)}}
/* Homepage media: original dimensions divided by 1.85; preserve aspect ratios. */
.home-listings .listing-photo{width:clamp(145.946px,16.216216vw,335.135px)}
.expert-home>.expert-player-grid{width:min(100%,max(530px,calc(54.054054% + 22.972973px)));justify-self:center}
.expert-home .expert-player-grid article{min-width:0}
.expert-home .expert-player-grid h3{font-size:18px;line-height:1.3}
@media(max-width:760px){
 .home-listings .listing-photo{width:44.324324vw}
 .expert-home>.expert-player-grid{width:100%}
 .expert-home .expert-player-grid article{flex:0 0 max(160px,43.243243%)}
}
