.trs-hero {
position: relative;
width: 100%;
height: 100svh; min-height: 560px;
display: flex;
flex-direction: column;
align-items: center;
justify-content: flex-end;
overflow: hidden;
} .trs-hero__slides {
position: absolute;
inset: 0;
z-index: 0;
}
.trs-hero__slide {
position: absolute;
inset: 0;
opacity: 0;
transition: opacity 1200ms ease-in-out;
}
.trs-hero__slide.is-active {
opacity: 1;
}
.trs-hero__slide img {
width: 100%; height: 100%;
object-fit: cover; object-position: center;
display: block;
} .trs-hero__overlay {
position: absolute;
inset: 0; background: linear-gradient(
to bottom,
rgba(28, 28, 28, 0.40)  0%,
rgba(28, 28, 28, 0.35) 40%,
rgba(28, 28, 28, 0.40) 65%,
rgba(28, 28, 28, 0.65) 85%,
rgba(28, 28, 28, 0.80) 100%
);
z-index: 1;
} .trs-hero__logo-wrap {
position: absolute; top: 50%;
left: 50%;
z-index: 3;
display: flex;
align-items: center;
justify-content: center;
width: clamp(220px, 38vw, 480px);
will-change: transform, opacity;
pointer-events: none;
}
.trs-hero__logo-wrap svg,
.trs-hero__logo-wrap img {
width: 100%; height: auto; display: block;
} .trs-hero__logo-text {
font-family: var(--trs-font-nav);
font-size: clamp(28px, 6vw, 72px);
font-weight: 500; color: var(--trs-offwhite);
text-transform: uppercase; letter-spacing: .06em;
text-align: center; line-height: 1.05;
} .trs-hero__content {
position: relative;
z-index: 3;
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
gap: var(--trs-space-md);
padding: 0 var(--trs-spacing-h) var(--trs-space-lg); padding-bottom: calc(var(--trs-space-lg) + 48px);
}
.trs-hero__headline {
font-family: var(--trs-font-nav);
font-size: var(--trs-fs-hero-headline);
font-weight: 400;
color: var(--trs-offwhite);
text-transform: uppercase;
letter-spacing: .06em;
line-height: 1.35;
text-align: center;
max-width: 820px;
margin: 0;
} .trs-hero__booking {
width: 100%;
max-width: 860px;
} .trs-hero__booking--placeholder {
display: flex;
flex-wrap: wrap;
gap: 2px;
background: rgba(245,242,235,.1);
border: 1px solid rgba(245,242,235,.3);
border-radius: 2px;
overflow: hidden;
}
.trs-hero__booking--placeholder span,
.trs-hero__booking--placeholder a {
flex: 1 1 140px;
min-width: 120px;
padding: var(--trs-space-sm) var(--trs-space-md);
font-family: var(--trs-font-nav);
font-size: var(--trs-fs-booking);
font-weight: 500;
color: var(--trs-offwhite);
text-transform: uppercase;
letter-spacing: .06em;
text-align: center;
background: rgba(245,242,235,.08);
border: 1px solid rgba(245,242,235,.15);
white-space: nowrap;
}
.trs-hero__booking-cta {
background: var(--trs-terracotta) !important;
border-color: var(--trs-terracotta) !important;
text-decoration: none;
transition: background var(--trs-dur-fast) ease;
cursor: pointer;
}
.trs-hero__booking-cta:hover {
background: var(--trs-red) !important;
border-color: var(--trs-red) !important;
} .trs-hero__scroll {
position: absolute;
bottom: var(--trs-space-md);
left: 50%;
transform: translateX(-50%);
z-index: 3;
color: var(--trs-offwhite); } @media (prefers-reduced-motion: reduce) {
.trs-hero__slide { transition: none; }
}  @media (min-width: 768px) {
.trs-hero__content {
padding-bottom: calc(var(--trs-space-lg) + 56px);
}
.trs-hero__headline {
letter-spacing: .08em;
}
} @media (min-width: 1024px) {
.trs-hero__booking--placeholder {
flex-wrap: nowrap;
}
}