/* Full-width hero and staggered text entrances, isolated from the original index. */
.v2-hero.v2-carousel { position:relative; padding:0; background:#131921; }
.v2-hero .v2-slide { position:relative; isolation:isolate; overflow:hidden; background:#131921; }
.v2-hero .v2-slide-inner { position:relative; display:flex; align-items:center; width:100%; min-height:clamp(440px,44vw,640px); padding:46px max(24px,calc((100% - 1280px)/2)) 94px; }
.v2-hero .v2-slide-image { position:absolute; z-index:-2; inset:0; width:100%; height:100%; border-radius:0; background:#fff; }
.v2-hero .v2-slide-catalogue .v2-slide-image { background:#131921; }
.v2-hero .v2-slide-image img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.v2-hero .v2-slide-image picture { display:block; width:100%; height:100%; }
.v2-hero .v2-slide-inner::before { content:""; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,#131921e8 0%,#131921a6 42%,#13192133 100%); pointer-events:none; }
.v2-hero .v2-hero-copy { width:100%; max-width:610px; min-height:0; color:#fff; }
.v2-hero .v2-slide-align-center .v2-hero-copy { margin-inline:auto; text-align:center; max-width:760px; }
.v2-hero .v2-slide-align-center .v2-hero-copy>p { margin-inline:auto; }
.v2-hero .v2-slide-align-center .v2-slide-inner::before { background:#13192180; }
.v2-hero .v2-slide-align-right .v2-hero-copy { margin-left:auto; text-align:right; }
.v2-hero .v2-slide-align-right .v2-hero-copy>p { margin-left:auto; }
.v2-hero .v2-slide-align-right .v2-slide-inner::before { background:linear-gradient(270deg,#131921d9,#13192133); }
.v2-hero .v2-slide-image-only .v2-slide-inner { align-items:flex-end; }
.v2-hero .v2-slide-image-only .v2-slide-inner::before { background:linear-gradient(0deg,#13192180,transparent 45%); }
.v2-hero .v2-hero-copy h1,.v2-hero .v2-hero-copy h2 { font-size:clamp(30px,3.1vw,44px); line-height:1.15; color:#fff; letter-spacing:-.9px; }
.v2-hero .v2-hero-copy em { color:#f78400; }
.v2-hero .v2-hero-copy>p { color:#eceef0; font-size:16px; }
.v2-hero .v2-overline { color:#f78400; }
.v2-hero .v2-carousel-controls { position:absolute; z-index:2; bottom:0; left:50%; transform:translateX(-50%); padding-bottom:22px; }
.v2-hero .v2-carousel-dots button::after { background:#ffffff80; }
.v2-hero .v2-carousel-dots button[aria-current=true]::after { background:var(--v2-orange); }
.v2-hero .v2-carousel-buttons button { background:#232f3eb3; border-color:#ffffff80; color:#fff; }
.v2-hero .v2-carousel-buttons button:hover { background:var(--v2-orange); border-color:var(--v2-orange); }
.v2-hero a:focus-visible,.v2-hero button:focus-visible { outline:3px solid #fff; outline-offset:4px; }
/* Displaying a slide restarts these animations, just like the index slider. */
.v2-js .v2-slide:not([hidden]) .v2-overline { animation:v2-hero-fade-up .55s .05s both; }
.v2-js .v2-slide:not([hidden]) .v2-hero-copy h1,.v2-js .v2-slide:not([hidden]) .v2-hero-copy h2 { animation:v2-hero-zoom-left .75s .15s both; }
.v2-js .v2-slide-business:not([hidden]) .v2-hero-copy h2 { animation-name:v2-hero-flip; }
.v2-js .v2-slide-new:not([hidden]) .v2-hero-copy h2 { animation-name:v2-hero-zoom-right; }
.v2-js .v2-slide:not([hidden]) .v2-hero-copy>p { animation:v2-hero-fade-up .65s .35s both; }
.v2-js .v2-slide:not([hidden]) .v2-hero-copy>.v2-button { animation:v2-hero-fade-up .65s .55s both; }
@keyframes v2-hero-zoom-left { from { opacity:0; transform:translateX(-36px) scale(.94); } to { opacity:1; transform:none; } }
@keyframes v2-hero-zoom-right { from { opacity:0; transform:translateX(36px) scale(.94); } to { opacity:1; transform:none; } }
@keyframes v2-hero-flip { from { opacity:0; transform:perspective(700px) rotateX(35deg) translateY(-12px); } to { opacity:1; transform:none; } }
@keyframes v2-hero-fade-up { from { opacity:0; transform:translateY(18px); } to { opacity:1; transform:none; } }
@media(min-width:761px) {
    .v2-hero .v2-slide-image img { object-fit:cover; }
    .v2-hero .v2-slide-image { background:#131921; }
}
@media(max-width:760px) {
    .v2-hero .v2-slide-inner { min-height:300px; padding:24px 20px 72px; align-items:center; }
    .v2-hero .v2-slide-image { height:100%; background:#131921; }
    .v2-hero .v2-slide-image img { object-fit:cover; }
    .v2-hero .v2-slide-inner::before { background:linear-gradient(0deg,#131921c9,#13192170); }
    .v2-hero .v2-hero-copy h1,.v2-hero .v2-hero-copy h2 { font-size:20px; letter-spacing:-.3px; margin-bottom:12px; }
    .v2-hero .v2-hero-copy>p { font-size:12px; line-height:1.5; margin-bottom:14px; }
    .v2-hero .v2-hero-copy>.v2-button { padding:10px 14px; font-size:11px; }
    .v2-hero .v2-overline { font-size:10px; }
    .v2-hero .v2-carousel-controls { padding-bottom:18px; }
    /* Imported artwork with embedded text must remain fully visible.
       Mobile-specific artwork keeps the regular overlay presentation. */
    .v2-hero .v2-slide-mobile-full .v2-slide-inner { display:block; min-height:0; padding:0 0 96px; }
    .v2-hero .v2-slide-mobile-full .v2-slide-image { position:relative; z-index:0; height:auto; }
    .v2-hero .v2-slide-mobile-full .v2-slide-image picture { height:auto; }
    .v2-hero .v2-slide-mobile-full .v2-slide-image img { height:auto; object-fit:contain; }
    .v2-hero .v2-slide-mobile-full .v2-slide-inner::before { display:none; }
    .v2-hero .v2-slide-mobile-full .v2-hero-copy { position:absolute; z-index:1; bottom:48px; left:16px; right:16px; width:auto; text-align:left; }
    .v2-hero .v2-slide-mobile-full .v2-button { min-height:40px; padding:8px 14px; }
    .v2-hero .v2-carousel-controls { padding-bottom:5px; }
}
@media(prefers-reduced-motion:reduce) {
    .v2-hero .v2-hero-copy>* { animation:none!important; }
}
