/* Original house film and light stone surface, combined with the green redesign. */
:root{--stone-surface:linear-gradient(#fbfaf5ad,#fbfaf5ad),url('../images/BG.webp')}
body{background-image:var(--stone-surface);background-size:auto,1000px}
.intro-section,.services-section,.inspiration-invite,.reviews-section,.certificates-section,.partner-section,.job-benefits,.faq-section,.turnkey-definition,.trade-scope,.service-directory,.sub-hero{background-image:var(--stone-surface);background-size:auto,1000px}
.hybrid-intro{height:calc(100svh - 106px);min-height:580px;max-height:880px;position:relative;isolation:isolate;overflow:hidden;background:#647061;color:white}
.house-film,.house-film-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.house-film-shade{z-index:-1;background:linear-gradient(180deg,#14241935 0%,#15291d08 42%,#101e15c9 100%)}
.film-brand{position:absolute;inset:9% 0 auto;display:flex;flex-direction:column;align-items:center;gap:10px;padding:0 var(--gutter)}
.film-brand>.eyebrow{font-size:10px;font-weight:500;letter-spacing:.19em;text-shadow:0 1px 14px #18251b}
.film-identity{width:min(540px,55vw);height:auto;filter:drop-shadow(0 12px 30px #12231635)}
.film-bottom{position:absolute;bottom:38px;left:var(--gutter);right:var(--gutter);display:flex;align-items:flex-end;justify-content:space-between;gap:25px;border-top:1px solid #ffffff50;padding-top:25px}
.film-caption{display:block;font-family:Georgia,serif;font-style:italic;font-size:clamp(28px,3vw,43px);letter-spacing:-.04em;line-height:1.2}
.film-bottom p{font-size:12px;margin-top:8px;color:#f0f3ed}
.film-enter{display:inline-flex;align-items:center;gap:24px;font-size:12px;min-height:46px;border-bottom:1px solid #ffffff80}
.film-enter .ui-icon{font-size:24px;transition:transform .3s}
.film-enter:hover .ui-icon{transform:translateY(4px)}
.film-toggle{background:#14291daa;color:white;border:1px solid #ffffff80;border-radius:30px;padding:12px 18px;min-height:44px;font-size:11px}
.film-toggle:hover{background:var(--accent)}
.film-fallback{position:absolute;bottom:10px;left:var(--gutter);font-size:10px}
.home .hero{padding-top:80px}
@media(max-width:950px){.hybrid-intro{height:calc(100svh - 80px);min-height:560px}.film-brand{top:15%}.film-identity{width:min(560px,70vw)}.film-bottom{gap:20px}.film-caption{font-size:30px}}
@media(max-width:650px){.hybrid-intro{min-height:540px;max-height:760px}.house-film{object-position:56% center}.film-brand{top:14%;gap:22px}.film-brand>.eyebrow{font-size:8px;letter-spacing:.1em;text-align:center}.film-identity{width:min(410px,92vw);max-width:100%}.film-bottom{bottom:24px;display:grid;grid-template-columns:1fr auto;gap:21px 16px;padding-top:21px}.film-bottom>div{grid-column:1/-1}.film-caption{font-size:34px}.film-bottom p{font-size:12px}.film-enter{gap:13px;font-size:11px;justify-self:start}.film-toggle{font-size:10px;padding:10px 13px}.home .hero{padding-top:45px}.film-fallback{bottom:3px;font-size:8px}body,.intro-section,.services-section,.inspiration-invite,.reviews-section,.certificates-section,.partner-section,.job-benefits,.faq-section,.turnkey-definition,.trade-scope,.service-directory,.sub-hero{background-size:auto,760px}}
@media(max-height:550px) and (min-width:651px){.hybrid-intro{min-height:500px}.film-brand{top:5%}.film-identity{width:340px}}
/* Transparent navigation over the film, paper navigation over the content. */
.home .site-header{position:fixed;inset:0 0 auto;transition:background-color .35s,color .35s,box-shadow .35s}
.home .hybrid-intro{height:100svh;min-height:720px;max-height:1000px}
.home.intro-header-clear:not(.menu-open) .site-header{background:transparent;color:white;border-bottom-color:transparent;box-shadow:none}
.home.intro-header-clear:not(.menu-open) .site-header:after{opacity:0}
.home .site-header:after{transition:opacity .35s}
.home.intro-header-clear:not(.menu-open) .brand>span{border-color:#ffffff60}
.home.intro-header-clear:not(.menu-open) .header-contact{background:#17372140;border-color:#ffffff90;color:white}
.home.intro-header-clear:not(.menu-open) .header-contact:hover{background:var(--accent)}
.home.intro-header-clear:not(.menu-open) .desktop-nav a:after{background:white}
.home .film-brand{top:clamp(130px,17svh,190px)}
.house-film-shade{background:linear-gradient(180deg,#10241799 0%,#1424192e 42%,#101e15c9 100%)}
.film-identity{display:grid;place-items:center}
.film-logo,.film-motto{grid-area:1/1}
.film-logo{width:100%;height:auto}
.film-motto{opacity:0;pointer-events:none;text-align:center;font-size:clamp(38px,5vw,72px);font-weight:500;letter-spacing:-.055em;line-height:1.13;text-shadow:0 3px 25px #10241780}
.film-motto>span,.film-motto>em{display:block}
@keyframes film-logo-cycle{0%,35%,100%{opacity:1;transform:translateY(0)}45%,85%{opacity:0;transform:translateY(-10px)}95%{opacity:1;transform:translateY(0)}}
@keyframes film-motto-cycle{0%,35%,95%,100%{opacity:0;transform:translateY(10px)}45%,85%{opacity:1;transform:translateY(0)}}
@keyframes film-brand-arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.film-brand{animation:film-brand-arrive 1.2s ease-out both}.film-logo{animation:film-logo-cycle 14s ease-in-out infinite}.film-motto{animation:film-motto-cycle 14s ease-in-out infinite}}
.film-loop-paused .film-logo,.film-loop-paused .film-motto,.film-loop-paused .film-brand{animation-play-state:paused}
.motion-paused .film-logo{animation:none!important;opacity:1;transform:none}
.motion-paused .film-motto{animation:none!important;opacity:0}
@media(max-width:650px){.home .hybrid-intro{min-height:650px;max-height:900px}.home .film-brand{top:130px}.film-motto{font-size:clamp(31px,9vw,55px)}}
@media(prefers-reduced-motion:reduce){.film-logo{opacity:1}.film-motto{opacity:0}}
