/* Shared secondary-page first screens. The homepage keeps its existing carousel. */
.site-secondary{background:#f4f3eb;color:#182922}
.site-secondary .page-intro{background:#f4f3eb;color:#182922;padding:26px 0 45px}
.site-secondary .page-intro .breadcrumbs,.site-secondary .inner-hero .breadcrumbs{color:#627061;font-size:var(--text-small,14px);line-height:1.7;margin-bottom:34px;flex-wrap:wrap}
.site-secondary .page-intro .eyebrow{color:#7e6634;font-size:var(--text-small,14px);letter-spacing:.12em;margin-bottom:20px}
.site-secondary .page-intro h1{color:#182922;font-size:clamp(40px,4vw,60px);line-height:1.08;letter-spacing:-.04em;font-weight:400;max-width:1000px}
.site-secondary .page-lead{color:#5b6b5b;font-size:var(--text-body,18px);line-height:1.85;max-width:740px;margin-top:24px}
.site-secondary .page-intro+.section{padding-top:42px}
.inner-hero{background:#f4f3eb;color:#182922;padding:26px 0 56px}
.inner-hero-grid{display:grid;grid-template-columns:.97fr 1.1fr;gap:56px;align-items:center}
.inner-hero-copy{min-width:0}
.inner-hero-copy .eyebrow{color:#7e6634;font-size:var(--text-small,14px);line-height:1.8;letter-spacing:.1em;margin-bottom:22px}
.inner-hero-copy h1{font-size:clamp(40px,3.8vw,56px);line-height:1.08;letter-spacing:-.042em;font-weight:400;overflow-wrap:break-word}
.inner-lead{font-size:var(--text-body,18px);line-height:1.85;color:#5c6b5b;max-width:510px;margin-top:25px}
.inner-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 25px;margin-top:26px}
.inner-hero-actions .text-link{font-size:var(--text-small,14px);gap:18px;line-height:1.7}.inner-hero-actions .button{font-size:var(--text-small,14px);padding:17px 21px;gap:24px}
.inner-hero-media{margin:0;min-width:0}
.inner-hero-media>img{display:block;width:100%;height:auto;max-height:440px;object-fit:contain;background:#e1e5dc;border-radius:var(--media-radius)}
.inner-hero-media figcaption{font-size:var(--text-small,14px);line-height:1.8;color:#697461;margin-top:13px}
.inner-video{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--media-radius);background:#e1e5dc}
.inner-video video{position:absolute;inset:0;display:block;width:100%;height:100%;min-width:0;min-height:0;object-fit:contain;background:#e1e5dc}
.inner-hero+.section{padding-top:48px}
.inner-hero+.project-detail .project-story{margin-top:0}
.inner-context-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}
.inner-context-grid>.detail-copy{min-width:0}.inner-context-grid .content-list{margin-top:20px}
.inner-context-grid .button{margin-top:20px}
.site-secondary .project-catalog--more .catalog-card:first-child{grid-column:auto}
.site-secondary .project-catalog--more .catalog-card .image-button{aspect-ratio:16/9;background:#e1e5dc}
.site-secondary .project-catalog--more .catalog-card img{object-fit:contain}
.gallery-list-title{font-size:42px;font-weight:400;line-height:1.12;letter-spacing:-.035em;margin-bottom:32px}
.site-secondary .contact-page-grid{padding-top:0}
.site-secondary .contact-panel{background:#e6e9df;border:1px solid #d2d9c9;color:#182922}
.site-secondary .contact-panel>p,.site-secondary .contact-panel .contact-location{color:#5e6b5b}
.site-secondary .contact-panel .eyebrow{color:#7e6634}.site-secondary .contact-panel .text-link{color:#344c38}
.site-secondary .contact-panel .contact-links{color:#182922}
.site-secondary .contact-panel .contact-links a>span:first-child,.site-secondary .contact-panel .email-placeholder>span{color:#61705a}
/* Existing company and custom layouts retain their content and responsive grids. */
.page-about .company-intro,.page-custom .custom-intro{background:#f4f3eb;color:#182922}
.page-about .company-intro .breadcrumbs,.page-custom .custom-intro .breadcrumbs{color:#627061}
.page-about .company-hero-copy .eyebrow,.page-custom .custom-hero-copy .eyebrow{color:#7e6634}
.page-about .company-hero-copy>p:not(.eyebrow),.page-custom .custom-lead{color:#5c6b5b}
.page-about .company-hero-copy>.text-link,.page-custom .custom-hero-actions .text-link{color:#344c38}
.page-about .company-signature{border-color:#cbd2c3}.page-about .company-signature>span{color:#68755f}.page-about .company-signature strong{color:#243a2b}
.page-about .company-hero-media{align-self:center}.page-about .company-hero-media>img{height:auto;aspect-ratio:auto;object-fit:contain;flex:0}
.page-about .company-hero-media figcaption,.page-custom .custom-hero-media figcaption{color:#5f6e5a}
.page-about .company-hero-media figcaption>span,.page-custom .custom-hero-media figcaption span{color:#7e6634}
.page-about .company-hero-media figcaption>small{color:#77816e}
.page-custom .custom-route{border-color:#cbd2c3}.page-custom .custom-route li{color:#485e48;border-color:#cbd2c3}.page-custom .custom-route span{color:#7e6634}
.page-custom .custom-hero-media img{aspect-ratio:auto;object-fit:contain;max-height:none}
@media(max-width:1100px){.inner-hero-grid{gap:34px;grid-template-columns:1fr 1fr}.inner-hero-copy h1{font-size:44px}.inner-lead{font-size:var(--text-body,18px)}.inner-context-grid{gap:45px}}
@media(max-width:850px){.inner-hero-grid,.inner-context-grid{grid-template-columns:1fr;gap:28px}.inner-hero-copy h1{font-size:50px;max-width:740px}.inner-lead{max-width:650px}.inner-hero-media>img{max-height:none}.inner-hero-media{max-width:800px}}
@media(max-width:700px){.site-secondary .page-intro{padding:21px 0 30px}.site-secondary .page-intro .breadcrumbs,.site-secondary .inner-hero .breadcrumbs{font-size:var(--text-small,14px);gap:8px;margin-bottom:24px}.site-secondary .page-intro .eyebrow{font-size:var(--text-small,14px);margin-bottom:16px}.site-secondary .page-intro h1{font-size:clamp(32px,7.5vw,42px);line-height:1.1}.site-secondary .page-lead{font-size:var(--text-body,18px);line-height:1.85;margin-top:18px}.site-secondary .page-intro+.section{padding-top:29px}.inner-hero{padding:21px 0 37px}.inner-hero-copy .eyebrow{font-size:var(--text-small,14px);letter-spacing:.07em;margin-bottom:16px}.inner-hero-copy h1{font-size:clamp(32px,7.5vw,42px);line-height:1.1}.inner-lead{font-size:var(--text-body,18px);line-height:1.85;margin-top:18px}.inner-hero-actions{margin-top:19px;gap:13px 20px}.inner-hero-actions .text-link{font-size:var(--text-small,14px);gap:15px}.inner-hero-actions .button{font-size:var(--text-small,14px);padding:15px 19px}.inner-hero-grid{gap:23px}.inner-hero-media figcaption{font-size:var(--text-small,14px);margin-top:10px}.inner-hero+.section{padding-top:32px}.inner-context-grid{gap:30px}.page-about .company-signature{display:none}.page-about .company-hero-copy>p:not(.eyebrow){font-size:var(--text-body,18px);line-height:1.8}.page-about .company-hero-copy>.text-link{font-size:var(--text-small,14px)}.page-custom .custom-hero-copy h1{font-size:40px}.page-custom .custom-lead{font-size:var(--text-body,18px);line-height:1.8;margin-top:20px}.page-custom .custom-hero-actions{margin-top:20px;gap:13px}.page-custom .custom-hero-copy .eyebrow{margin-bottom:18px}.page-custom .custom-hero-grid{gap:26px}}

/* Split first screens follow their content. A viewport-sized minimum leaves
   large empty bands when browser zoom makes the content smaller. Full-photo
   homepage and immersive product heroes have their own independent sizing. */
.site-secondary{--site-header-space:128px}
.site-secondary :is(.inner-hero,.company-intro,.custom-intro,.applications-intro,.watch-hero,.catalog-intro,.contact-intro){
 min-height:0;display:flex;flex-direction:column;
}
.site-secondary :is(.inner-hero,.company-intro,.applications-intro,.watch-hero,.catalog-intro,.contact-intro){padding:26px 0 40px}
.site-secondary .custom-intro{padding:26px 0 0}
.site-secondary :is(.inner-hero,.company-intro,.custom-intro,.applications-intro,.watch-hero,.catalog-intro,.contact-intro)>.wrap{flex:none;display:flex;flex-direction:column}
.site-secondary :is(.inner-hero-grid,.company-hero-grid,.custom-hero-grid,.applications-hero-grid,.watch-grid,.catalog-intro-grid,.contact-hero-grid){flex:none;align-content:start;align-items:center;min-width:0}
.site-secondary :is(.inner-hero,.company-intro,.custom-intro,.applications-intro,.watch-hero,.catalog-intro,.contact-intro) .breadcrumbs{margin-bottom:30px}
.site-secondary .custom-route{margin-top:30px;flex-shrink:0}
.site-secondary .watch-grid{grid-template-columns:.86fr 1.14fr;grid-template-areas:"heading player" "notes player";column-gap:56px;row-gap:25px}
.site-secondary .watch-heading{grid-area:heading;min-width:0;margin-bottom:0;align-self:end}
.site-secondary .watch-player{grid-area:player}
.site-secondary .watch-notes{grid-area:notes;padding-top:22px;align-self:start}
.site-secondary .watch-notes h2{font-size:max(var(--text-small,18px),22px);margin:0 0 14px}
.site-secondary .watch-stage--portrait{aspect-ratio:16/10;max-height:none}
.site-secondary .catalog-intro-grid{grid-template-columns:.86fr 1.14fr;gap:56px}
.site-secondary .catalog-hero-copy{min-width:0}
.catalog-lead{font-size:var(--text-body,18px);line-height:1.85;color:#5d6b5d;max-width:510px;margin-top:26px}
.site-secondary .catalog-intro .inner-hero-actions .text-link{margin-top:0}
.catalog-feature{min-width:0}
.catalog-feature .motion-card-copy{padding-top:17px}
.catalog-feature .motion-card h2{font-size:max(var(--text-small,18px),24px)}
.catalog-feature .motion-card-copy>p{display:none}
.catalog-feature .motion-card-actions{margin-top:12px}
.site-secondary .motion-collection{padding-top:48px}
.contact-intro{background:#f4f3eb}
.contact-intro .breadcrumbs{font-size:var(--text-small,14px);color:#627061;line-height:1.7;flex-wrap:wrap}
.contact-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.contact-hero-copy .eyebrow{color:#7e6634;font-size:var(--text-small,14px);letter-spacing:.12em;margin-bottom:23px}
.contact-hero-copy h1{font-size:clamp(44px,4.6vw,76px);line-height:1.07;letter-spacing:-.045em;font-weight:400}
.contact-hero-copy>p:not(.eyebrow){font-size:var(--text-body,18px);line-height:1.85;color:#5c6b5b;max-width:510px;margin-top:26px}
.contact-hero-copy>.text-link{margin-top:23px}
.contact-intro .contact-panel{border-radius:var(--media-radius)}
.contact-enquiry{max-width:960px}
@media(min-width:1101px){
 .site-secondary :is(.inner-hero,.company-intro,.custom-intro,.applications-intro,.watch-hero,.catalog-intro,.contact-intro)>.wrap,
 .site-secondary .utility-bar>.wrap{width:calc(100% - clamp(80px,8vw,240px))}
 .site-secondary .site-header{padding-inline:clamp(40px,4vw,120px)}
 .site-secondary :is(.inner-hero-grid,.company-hero-grid,.custom-hero-grid,.applications-hero-grid,.watch-grid,.catalog-intro-grid){grid-template-columns:.86fr 1.14fr;column-gap:clamp(44px,4.6vw,88px)}
 .site-secondary :is(.inner-hero-copy,.company-hero-copy,.custom-hero-copy,.applications-hero-copy,.catalog-hero-copy) h1,
 .site-secondary .watch-heading h1,.site-secondary .contact-hero-copy h1{font-size:clamp(48px,4.25vw,112px);max-width:1000px}
 .site-secondary :is(.inner-lead,.company-hero-copy>p:not(.eyebrow),.custom-lead,.applications-lead,.catalog-lead,.contact-hero-copy>p:not(.eyebrow)){font-size:max(var(--text-small,18px),clamp(15px,1.02vw,24px));max-width:760px}
 .site-secondary :is(.inner-hero-media>img,.company-hero-media>img,.custom-hero-media>img,.applications-hero-photo>img){width:100%;height:auto;aspect-ratio:auto;max-height:max(280px,calc(100svh - var(--site-header-space) - 170px));object-fit:contain}
 .site-secondary .custom-hero-media>img{max-height:max(280px,calc(100svh - var(--site-header-space) - 230px))}
 .site-secondary .inner-video,.site-secondary .watch-stage,.site-secondary .catalog-feature .motion-card-media{aspect-ratio:16/9;max-height:max(280px,calc(100svh - var(--site-header-space) - 200px))}
 .site-secondary .watch-stage--portrait{aspect-ratio:16/10}
 .site-secondary .inner-hero-media figcaption,.site-secondary .watch-player figcaption{font-size:var(--text-small,14px)}
}
/* Large desktop windows need fluid content as well as viewport height. */
@media(min-width:2200px){
 .site-secondary .custom-hero-media>img{max-height:max(280px,calc(100svh - var(--site-header-space) - 254px))}
 .site-secondary .company-hero-media>img{max-height:max(280px,calc(100svh - var(--site-header-space) - 194px))}
 .site-secondary .site-header{height:clamp(104px,4.3vw,136px)}
 .site-secondary .brand img{width:clamp(180px,7.1vw,240px);height:auto}
 .site-secondary .site-header nav{gap:clamp(28px,1.25vw,46px)}
 .site-secondary .site-header nav>a{font-size:max(var(--text-small,18px),clamp(14px,.56vw,19px))}
 .site-secondary .site-header nav>a.nav-cta{font-size:max(var(--text-small,18px),clamp(13px,.53vw,18px));padding:17px 23px}
 .site-secondary .utility-contacts{font-size:var(--text-small,14px)}
 .site-secondary :is(.inner-hero,.company-intro,.custom-intro,.applications-intro,.watch-hero,.catalog-intro,.contact-intro) .breadcrumbs{font-size:var(--text-body,18px)}
 .site-secondary :is(.inner-hero-copy,.company-hero-copy,.custom-hero-copy,.applications-hero-copy,.catalog-hero-copy,.contact-hero-copy,.watch-heading)>.eyebrow{font-size:var(--text-body,18px)}
 .site-secondary :is(.inner-hero-actions,.custom-hero-actions) .text-link,.site-secondary .contact-hero-copy>.text-link{font-size:max(var(--text-small,18px),clamp(14px,.65vw,20px))}
 .site-secondary :is(.inner-hero-actions,.custom-hero-actions) .button{font-size:max(var(--text-small,18px),clamp(14px,.65vw,20px));padding:22px 30px;min-height:70px}
 .site-secondary .custom-route li{font-size:max(var(--text-small,18px),clamp(12px,.56vw,18px))}
 .site-secondary .custom-route span{font-size:var(--text-small,14px)}
 .site-secondary .watch-subtitle{font-size:max(var(--text-small,18px),18px)}
 .site-secondary .watch-notes h2{font-size:30px}
 .site-secondary .watch-notes>p:not(.micro){font-size:max(var(--text-small,18px),18px);max-width:760px}
 .site-secondary .watch-notes .text-link{font-size:var(--text-body,18px)}
 .site-secondary .watch-return{font-size:var(--text-body,18px)}
 .site-secondary .catalog-feature .motion-card h2{font-size:32px}
 .site-secondary .catalog-feature .motion-card-actions .text-link{font-size:var(--text-body,18px)}
 .site-secondary .catalog-feature .motion-watch-link{font-size:var(--text-body,18px)}
 .site-secondary :is(.inner-hero-media,.company-hero-media,.custom-hero-media,.applications-hero-photo,.watch-player) figcaption{font-size:var(--text-body,18px)}
 .site-secondary .company-signature strong{font-size:26px}
 .site-secondary .contact-intro .contact-panel{padding:clamp(40px,2.2vw,72px)}
 .site-secondary .contact-panel h2{font-size:clamp(40px,1.8vw,56px)}
 .site-secondary .contact-panel .contact-links{font-size:max(var(--text-small,18px),clamp(18px,.85vw,26px))}
 .site-secondary .contact-panel>p,.site-secondary .contact-panel>.text-link{font-size:max(var(--text-small,18px),18px)}
}
@media(min-width:851px) and (max-height:800px){
 .site-secondary :is(.inner-hero-copy,.company-hero-copy,.custom-hero-copy,.applications-hero-copy,.catalog-hero-copy) h1,
 .site-secondary .watch-heading h1{font-size:clamp(42px,3.6vw,58px)}
 .site-secondary :is(.inner-hero,.company-intro,.custom-intro,.applications-intro,.watch-hero,.catalog-intro,.contact-intro) .breadcrumbs{margin-bottom:22px}
 .site-secondary .custom-route{padding-block:23px;margin-top:23px}
 .site-secondary .watch-grid{row-gap:19px}
 .site-secondary .watch-notes{padding-top:16px}
}
@media(max-width:1000px){.site-secondary .watch-grid{grid-template-columns:1fr;grid-template-areas:"heading" "player" "notes";gap:30px}.site-secondary .watch-heading{max-width:740px}.site-secondary .watch-player{width:100%}}
@media(max-width:850px){
 .site-secondary :is(.inner-hero-grid,.company-hero-grid,.custom-hero-grid,.applications-hero-grid,.watch-grid,.catalog-intro-grid,.contact-hero-grid){grid-template-columns:1fr;gap:28px;align-content:center}
 .site-secondary .catalog-intro-grid{gap:30px}
 .site-secondary .catalog-feature .motion-card-actions{align-items:flex-start}
 .site-secondary .watch-heading h1{font-size:clamp(36px,6.5vw,54px)}
 .site-secondary .watch-stage--portrait{aspect-ratio:auto;height:min(64svh,530px);min-height:320px}
 .site-secondary .contact-hero-copy h1{font-size:clamp(38px,7vw,56px)}
}
@media(max-width:700px){
 .site-secondary{--site-header-space:112px}
 .site-secondary :is(.inner-hero,.company-intro,.applications-intro,.watch-hero,.catalog-intro,.contact-intro){padding:21px 0 36px}
 .site-secondary .custom-intro{padding:21px 0 0}
 .site-secondary :is(.inner-hero,.company-intro,.custom-intro,.applications-intro,.watch-hero,.catalog-intro,.contact-intro) .breadcrumbs{margin-bottom:24px}
 .site-secondary .custom-route{margin-top:25px}
 .catalog-lead,.contact-hero-copy>p:not(.eyebrow){font-size:var(--text-body,18px);line-height:1.85;margin-top:19px}
 .site-secondary .catalog-intro .inner-hero-actions{gap:8px;margin-top:18px;align-items:flex-start;flex-direction:column}
 .site-secondary .catalog-intro .inner-hero-actions .text-link{font-size:var(--text-small,14px);padding-block:6px}
 .catalog-feature .motion-card h2{font-size:25px}
 .site-secondary .watch-notes h2{font-size:max(var(--text-small,18px),22px)}
 .site-secondary .watch-notes>p:not(.micro){font-size:var(--text-body,18px);line-height:1.8}
 .site-secondary .watch-notes .text-link{margin-top:18px}
 .contact-intro .breadcrumbs{font-size:var(--text-small,14px);gap:8px}
 .contact-hero-copy .eyebrow{font-size:var(--text-small,14px);letter-spacing:.08em;margin-bottom:17px}
 .contact-hero-copy>.text-link{font-size:var(--text-small,14px);margin-top:16px}
}
