/* Responsive refinement: stable stages, readable content and compact stories. */
:root{--mobile-cta-space:calc(66px + env(safe-area-inset-bottom))}
.home-hero-intro{transform:translateY(calc((1 - var(--hero-progress,1))*12svh))}
.bs-video-pause{display:none!important}
.bs-hero-video,.home-event-video{pointer-events:none}
.formula-story .bs-benefit-grid h3,.baderie-story .bs-benefit-grid h3{overflow-wrap:normal;word-break:normal;hyphens:none}
/* Compact stories apply only to phones; desktop keeps the original brand styling. */
@media(max-width:700px){
.fs-quotes-grid{max-width:1120px;gap:20px;grid-auto-rows:auto;align-items:start}
.fs-quote-card{height:auto}
.fs-quote-card figure img{height:220px;aspect-ratio:auto;object-fit:contain;background:var(--brand-soft)}
.fs-quote-copy{padding:20px}
.formula-story .fs-quote-copy blockquote p{font-size:16px;line-height:1.6}
.formula-story .fs-quote-person h3{font-size:21px}
.fs-quote-person{margin-top:20px;padding-top:16px}
}
.team-orbit-photo img{max-height:24svh;object-fit:contain}
@media(max-width:1180px){
 body:not(.igm-form-page){padding-bottom:var(--mobile-cta-space)!important}
 body .site-footer{padding-bottom:calc(40px + var(--mobile-cta-space))!important}
 body .franchise-menu.igm-franchise{left:0!important;right:0!important;width:auto!important;bottom:0!important}
 body:has(#scene):not(.no-webgl) .copy{top:auto!important;bottom:calc(var(--mobile-cta-space) + 26px)!important;max-height:calc(100svh - var(--mobile-cta-space) - 125px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:8px 2px;left:7%;right:7%;width:auto;max-width:none}
 body:has(#scene) .copy h2{overflow-wrap:normal;word-break:normal}
}
@media(max-width:700px){
 .fs-quotes-grid{display:grid;grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:88%;gap:16px;max-width:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding-bottom:16px;align-items:start;scrollbar-width:thin}
 .fs-quote-card{scroll-snap-align:start;opacity:1!important;transform:none!important}
 .fs-quote-card figure img{height:180px}
 .fs-quote-copy{padding:18px}
 .formula-story .fs-quote-copy blockquote p{font-size:15px;line-height:1.6}
 .fs-quote-card figcaption{font-size:11px;bottom:10px;left:10px}
 .fs-quote-mark{font-size:48px;height:32px}
 .team-orbit{min-height:620px}
 .team-orbit-photo img{max-height:19svh}
 .team-department h2{font-size:clamp(32px,8vw,44px);overflow-wrap:normal}
 .team-feature h3{overflow-wrap:normal;word-break:normal}
}
@media(max-width:390px){
 .home-section-heading h2,.home-brands h2{font-size:36px}
 .home-stat h3>span{font-size:18px}
 .home-stat-copy{left:12px;right:12px}
 .home-stat-copy p{font-size:12px}
 .formula-story .bs-benefit-grid h3,.baderie-story .bs-benefit-grid h3{font-size:21px}
 body:has(#scene) .copy h2{font-size:28px}
 body:has(#scene) .copy p{font-size:13px;line-height:1.5}
}
@media(prefers-reduced-motion:reduce){.home-hero-intro{transform:none}.team-orbit-photo img{max-height:none}}
@media(max-width:390px){.home-stat h3>span{font-size:16px}.home-stat:nth-child(2) h3>strong{font-size:9.5vw}}

.fs-story-toggle{display:none}
@media(max-width:700px){
 .fs-quote-card:not(.story-expanded) blockquote p{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}
 .fs-quote-copy blockquote{margin-bottom:12px}
 .fs-story-toggle{display:block;align-self:flex-start;border:0;border-bottom:1px solid currentColor;background:none;color:var(--brand-text);font:600 13px/1.5 Manrope,Arial,sans-serif;padding:8px 0;cursor:pointer}
 .fs-story-toggle:focus-visible{outline:2px solid currentColor;outline-offset:4px}
}

.team-motion-control{top:calc(50% + 72px);bottom:auto!important;right:50%;transform:translateX(50%);white-space:nowrap}
@media(max-width:1180px){body:has(#scene) .copy{overflow-x:hidden}body:has(#scene) #intro::before{inset:0}}
/* Nine approved refinements — November 2026. */
.home-hero-intro{letter-spacing:-.025em}
.home-hero-intro .home-text-link{letter-spacing:normal}
.home-project:not(:last-child){margin-bottom:45svh}
.team-department:not(.has-multiple-rows) .team-department-copy{position:relative;top:auto;transform:none!important}
#wat-is-instalcenter .bs-about-photo img{object-position:50% 50%}
@media(min-width:761px){
 .ep-main .history-card{height:var(--history-height,450px);min-height:var(--history-height,450px)}
 .ep-main .history-image{min-height:0;height:100%}
 .ep-main .history-image img{max-height:none;height:100%}
 .ep-main .history-copy{min-height:0}
}
@media(min-width:1181px){
 body:has(#scene) #intro{width:42vw;max-width:600px;right:5%;box-sizing:border-box;padding:16px}
 body:has(#scene) #intro h2{font-size:clamp(38px,3.5vw,52px);text-wrap:balance;overflow-wrap:normal}
}
@media(max-width:1180px){
 body:has(#scene):not(.no-webgl) #intro{padding:22px;left:5%;right:5%}
 .home-project-bottom{bottom:calc(var(--mobile-cta-space) + 24px)}
}
@media(max-width:650px){
 .home-project{height:100svh;min-height:540px}
 .home-project-link{top:34%}
 .home-project-bottom{padding-top:12px}
 .home-project h3{font-size:38px}
 .home-project-description{font-size:14px;line-height:1.45}
}
@media(prefers-reduced-motion:reduce){.home-project:not(:last-child){margin-bottom:0}}
@media(max-width:700px){.team-orbit .team-orbit-photo{width:17vw}}
