.home-page .hero-image{object-position:center center}
.home-page .hero-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:0;padding:30px var(--page-gutter) 42px}
@media(prefers-reduced-motion:reduce){.home-page .hero-discover:is(:hover,:focus-visible) svg{transform:none}}
.home-page .hero::before{background:linear-gradient(90deg,#000b 0%,#0006 35%,#0001 65%),linear-gradient(0deg,#0008 0%,transparent 40%)}
.home-page .experience-photo{aspect-ratio:4/3}
.home-page .client-strip{flex-direction:column;align-items:flex-start;gap:28px}
.home-page .client-strip>.client-trust-note{margin:0;font-size:14px;font-weight:400;line-height:1.6;color:#606060}
.home-page .client-logos{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px}
.home-page .client-logos img{display:block;width:100px;max-width:100px;height:55px;justify-self:center}
.home-page .client-logos img[alt="Ville de Lausanne"]{width:110px;max-width:110px;filter:grayscale(1) contrast(1.3);object-fit:contain;flex-shrink:0}
@media(max-width:1100px){.home-page .client-strip{flex-direction:column;align-items:flex-start;gap:24px}}
@media(max-width:1100px){.home-page .client-logos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.home-page .client-logos img{width:100%;max-width:120px}.home-page .client-logos img[alt="Ville de Lausanne"]{width:100%;max-width:110px;justify-self:center}}
@media(max-width:640px){.home-page .client-logos{gap:24px 18px}.home-page .client-logos img{height:45px}}
@media(min-width:701px){
    .home-page .hero{height:calc(100svh - 160px);min-height:600px;max-height:720px}
    .home-page .hero-eyebrow{font-size:12px}
    .home-page .hero h1{font-size:96px;align-self:auto;margin:20px 0 16px}
    .home-page .hero-headline{font-size:34px;max-width:430px}
    .home-page .hero-description{max-width:420px;margin-top:18px;font-size:16px}
    .home-page .hero-actions{margin-top:24px}
}
@media(min-width:701px) and (max-width:1000px){
    .home-page .hero h1{font-size:82px}
    .home-page .hero-headline{font-size:30px;max-width:330px}
    .home-page .hero-description{max-width:330px;font-size:15px}
    .home-page .hero-actions{align-items:flex-start;flex-direction:column-reverse;gap:16px}
}
@media(max-width:700px){
    .home-page .hero{height:calc(100svh - 145px);min-height:610px;max-height:760px;background:#171916}
    .home-page .hero-image{width:150%;max-width:none;height:auto;left:-50%;object-position:center top}
    .home-page .hero::before{background:linear-gradient(180deg,#0001 0,#0001 220px,#171916 340px)}
    .home-page .hero-headline{font-size:28px}
    .home-page .hero-description{font-size:15px;margin-top:18px}
    .home-page .hero-actions{margin-top:22px;gap:14px}
}
@media(max-width:700px){
    .home-page .hero-eyebrow{margin-bottom:20px}
    .home-page .hero-actions{align-items:flex-start;flex-direction:column-reverse}
    .home-page .hero-actions .button{min-height:56px}
}
@media(max-width:640px){.home-page .hero-content{padding-top:25px;padding-bottom:35px}}
@media(max-width:360px){.home-page .hero-headline{font-size:24px}.home-page .hero-description{font-size:14px}}
