.page-hero--hotels{background:var(--color-bg-alt)}
.hotels-unity{background:var(--color-bg)}
.hotels-unity__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16rem}
.hotels-unity-card{padding:22rem;border:1rem solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-card);transition:transform 220ms var(--ease),box-shadow 220ms var(--ease),border-color 220ms var(--ease)}
.hotels-unity-card:hover{transform:translateY(-3rem);border-color:rgba(229,168,134,.58);box-shadow:var(--shadow-panel)}
.hotels-unity-card span{display:block;margin-bottom:20rem;color:var(--color-eyebrow);font:700 13rem/1 var(--font-sans)}
.hotels-unity-card h3{font-size:24rem}
.hotels-unity-card p{margin-top:12rem;color:var(--color-muted);font-size:16rem;line-height:1.55}
.hotels-trips{background:var(--color-bg-alt)}
.hotels-trips__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16rem}
.hotels-trip-card{display:block;min-height:100%;padding:24rem;border:1rem solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);box-shadow:var(--shadow-card);transition:transform 220ms var(--ease),box-shadow 220ms var(--ease),border-color 220ms var(--ease)}
.hotels-trip-card:hover{transform:translateY(-3rem);border-color:rgba(193,95,60,.42);box-shadow:var(--shadow-panel)}
.hotels-trip-card h3{font-size:25rem}
.hotels-trip-card p{margin-top:12rem;color:var(--color-muted);font-size:17rem;line-height:1.55}
.hotel-archive{display:grid;gap:34rem}
.hotel-archive-card{display:grid;grid-template-columns:520rem minmax(0,1fr);gap:42rem;align-items:stretch;background:var(--color-surface);border:1rem solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-card);overflow:hidden;transition:transform 220ms var(--ease),box-shadow 220ms var(--ease),border-color 220ms var(--ease)}
.hotel-archive-card:hover{transform:translateY(-3rem);border-color:rgba(193,95,60,.42);box-shadow:var(--shadow-panel)}
.hotel-archive-card--reverse{grid-template-columns:minmax(0,1fr) 520rem}
.hotel-archive-card--reverse .hotel-archive-card__media{order:2}
.hotel-archive-card--reverse .hotel-archive-card__content{order:1}
.hotel-archive-card__media{position:relative;display:block;min-height:360rem;overflow:hidden;background:var(--color-bg-alt)}
.hotel-archive-card__media picture{width:100%;height:100%}
.hotel-archive-card__media img{width:100%;height:100%;object-fit:cover;transition:transform 420ms var(--ease)}
.hotel-archive-card:hover .hotel-archive-card__media img{transform:scale(1.03)}
.hotel-archive-card__badge{position:absolute;left:18rem;top:18rem;border-radius:999rem;background:#707070;color:#fff;padding:8rem 12rem;font:700 11rem/1 var(--font-sans);letter-spacing:.06em;text-transform:uppercase}
.hotel-archive-card__content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:42rem}
.hotel-archive-card__content h2{font-size:34rem}
.hotel-archive-card__content p:not(.eyebrow){margin-top:22rem;font-size:19rem;color:var(--color-muted)}
.hotel-archive-card__meta{display:flex;gap:10rem;flex-wrap:wrap;margin-top:18rem}
.hotel-archive-card__meta span{border:1rem solid var(--color-border);border-radius:999rem;padding:8rem 12rem;background:var(--color-bg);font:700 12rem/1 var(--font-sans);color:var(--color-primary)}
.hotel-archive-card .button{margin-top:28rem}
.hotels-map{background:var(--color-bg-alt)}
.hotels-map--wide{padding-top:72rem}
.hotels-map__content{max-width:780rem}
.hotels-map__content>p:not(.eyebrow){margin-top:16rem;color:var(--color-muted);font-size:18rem;line-height:1.6}
.hotels-map__map{margin-top:36rem}
.hotels-map__map .network-map{min-height:720rem;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.hotels-map__map .network-map__svg{inset:0;width:100%;height:100%}
.hotels-b2b{background:var(--color-bg)}
.hotels-b2b__panel{display:flex;align-items:center;justify-content:space-between;gap:32rem;padding:38rem 0;border-top:3rem solid var(--color-eyebrow)}
.hotels-b2b__panel h2{font-size:38rem}
.hotels-b2b__panel p:not(.eyebrow){max-width:680rem;margin-top:16rem;color:var(--color-muted);font-size:20rem;line-height:1.55}
.hotels-b2b__panel .button{flex:0 0 auto}

@media (max-width:1024px){
    .hotels-unity__grid,.hotels-trips__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .hotel-archive-card,.hotel-archive-card--reverse{grid-template-columns:1fr}
    .hotel-archive-card--reverse .hotel-archive-card__media,.hotel-archive-card--reverse .hotel-archive-card__content{order:initial}
    .hotel-archive-card__media{min-height:300rem}
    .hotels-map__map .network-map{min-height:520rem}
    .hotels-b2b__panel{align-items:flex-start;flex-direction:column}
}

@media (max-width:600px){
    .hotels-unity__grid,.hotels-trips__grid{grid-template-columns:1fr}
    .hotel-archive{gap:22rem}
    .hotel-archive-card__content{padding:24rem}
    .hotel-archive-card__content h2{font-size:27rem}
    .hotel-archive-card__media{min-height:230rem}
    .hotels-map__map .network-map{min-height:400rem}
    .hotels-b2b__panel h2{font-size:30rem}
    .hotels-b2b__panel p:not(.eyebrow){font-size:17rem}
}
