/* AlpinStar home. Outside the Vite build on purpose: only this tenant loads it, nothing has to be rebuilt.
   Colours come from the logo through the brand skin: --ink is the navy, --brand the teal. */
:root[data-site=alpinstar]{--as-navy:var(--ink);--as-teal:var(--brand);--as-soft:#f2f5fb}

/* Hero: photo, copy on the left, booking form on the right. */
[data-site=alpinstar] .as-hero{min-height:0;display:block;overflow:visible}
[data-site=alpinstar] .as-hero .b-hero__img{object-position:50% 58%}
[data-site=alpinstar] .as-hero__shade{background:linear-gradient(100deg,rgba(17,20,60,.84) 0%,rgba(17,20,60,.5) 46%,rgba(17,20,60,.12) 100%),linear-gradient(0deg,rgba(17,20,60,.34),transparent 42%)}
[data-site=alpinstar] .as-hero__grid{position:relative;z-index:4;display:grid;gap:30px;padding-top:124px;padding-bottom:56px}
[data-site=alpinstar] .as-hero__eyebrow{color:var(--as-teal)}
[data-site=alpinstar] .as-hero__h1{color:#fff;font-size:clamp(2.35rem,5vw,4.15rem);line-height:1.06;letter-spacing:-.02em;margin-top:14px;max-width:17ch}
[data-site=alpinstar] .as-hero__lede{color:rgba(255,255,255,.9);font-size:1.13rem;line-height:1.62;margin-top:20px;max-width:56ch}
[data-site=alpinstar] .as-hero__cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
[data-site=alpinstar] .as-hero__booktitle{color:#fff;font-weight:700;font-size:1.05rem;margin-bottom:12px}

/* What every transfer includes: one quiet row directly under the hero. */
[data-site=alpinstar] .as-checks{background:var(--as-navy);color:#fff;padding:34px 0}
[data-site=alpinstar] .as-checks__grid{display:grid;gap:24px}
@media (min-width:640px){[data-site=alpinstar] .as-checks__grid{grid-template-columns:1fr 1fr}}
@media (min-width:1080px){[data-site=alpinstar] .as-checks__grid{grid-template-columns:repeat(4,1fr)}}
[data-site=alpinstar] .as-check{display:flex;gap:14px;align-items:flex-start}
[data-site=alpinstar] .as-check__icon{flex:0 0 auto;color:var(--as-teal);margin-top:2px}
[data-site=alpinstar] .as-check h2{color:#fff;font-size:1.02rem;line-height:1.3;font-weight:700;letter-spacing:0;text-transform:none}
[data-site=alpinstar] .as-check p{color:rgba(255,255,255,.76);font-size:.94rem;line-height:1.5;margin-top:4px}

/* Sentence case, unlike the capitals of the other brand sites. */
[data-site=alpinstar] .b-h2{text-transform:none;letter-spacing:-.015em}

/* Section heads with a link on the right. */
[data-site=alpinstar] .as-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 40px}
[data-site=alpinstar] .as-head .b-lead{margin-top:12px;max-width:62ch}
[data-site=alpinstar] .as-more{font-weight:700;color:var(--as-navy);white-space:nowrap;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--as-teal);text-decoration-thickness:2px}
[data-site=alpinstar] .as-note{margin-top:20px;color:var(--text-muted);font-size:.95rem;line-height:1.55}

/* Destination cards. */
[data-site=alpinstar] .as-dest__grid{display:grid;gap:18px;margin-top:32px;grid-template-columns:1fr 1fr}
@media (min-width:960px){[data-site=alpinstar] .as-dest__grid{grid-template-columns:repeat(4,1fr)}}
[data-site=alpinstar] .as-card{position:relative;display:block;overflow:hidden;border-radius:var(--r-card);aspect-ratio:4/3.5;background:var(--as-navy);color:#fff}
[data-site=alpinstar] .as-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 72%;transition:transform .35s ease}
[data-site=alpinstar] .as-card:hover img{transform:scale(1.04)}
[data-site=alpinstar] .as-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(17,20,60,.88) 0%,rgba(17,20,60,.28) 52%,transparent 74%)}
[data-site=alpinstar] .as-card__body{position:absolute;z-index:1;left:16px;right:16px;bottom:14px;display:grid;gap:2px}
[data-site=alpinstar] .as-card__name{font-weight:800;font-size:1.22rem;line-height:1.2}
[data-site=alpinstar] .as-card__meta{font-size:.88rem;color:rgba(255,255,255,.82)}
[data-site=alpinstar] .as-card__price{font-weight:800;font-size:1.12rem;margin-top:6px;color:#fff}
[data-site=alpinstar] .as-card__price small{font-weight:600;font-size:.82rem;color:rgba(255,255,255,.82)}
[data-site=alpinstar] .as-card:focus-visible{outline:3px solid var(--as-teal);outline-offset:3px}

/* Fleet: the firm's own photo, then the three vehicles on top of it. */
[data-site=alpinstar] .as-fleet{background:var(--as-soft);padding-bottom:64px}
[data-site=alpinstar] .as-fleet__photo{display:block;width:100%;height:clamp(200px,31vw,440px);object-fit:cover;object-position:center 62%}
[data-site=alpinstar] .as-fleet__inner{padding-top:44px}
[data-site=alpinstar] .as-fleet__inner .b-lead{margin-top:12px;max-width:62ch}
[data-site=alpinstar] .as-fleet__grid{display:grid;gap:16px;margin-top:28px}
@media (min-width:760px){[data-site=alpinstar] .as-fleet__grid{grid-template-columns:repeat(3,1fr)}}
[data-site=alpinstar] .as-car{background:#fff;border-radius:var(--r-card);padding:20px 22px 22px}
[data-site=alpinstar] .as-car img{width:100%;height:150px;object-fit:contain}
[data-site=alpinstar] .as-car h3{font-size:1.14rem;font-weight:800;margin-top:12px;text-transform:none;letter-spacing:0}
[data-site=alpinstar] .as-car p{color:var(--text-muted);margin-top:4px}

/* From landing to hotel. */
[data-site=alpinstar] .as-journey__list{list-style:none;margin:36px 0 0;padding:0;display:grid;gap:26px}
@media (min-width:900px){
    [data-site=alpinstar] .as-journey__list{grid-template-columns:repeat(4,1fr);gap:28px;position:relative}
    [data-site=alpinstar] .as-journey__list::before{content:"";position:absolute;left:22px;right:22px;top:21px;height:2px;background:color-mix(in srgb,var(--as-teal) 45%,#fff)}
}
[data-site=alpinstar] .as-journey__list li{position:relative}
[data-site=alpinstar] .as-journey__n{position:relative;display:grid;place-items:center;width:44px;height:44px;border-radius:999px;background:var(--as-navy);color:#fff;font-weight:800}
[data-site=alpinstar] .as-journey__list h3{font-size:1.1rem;font-weight:800;margin-top:14px;text-transform:none;letter-spacing:0}
[data-site=alpinstar] .as-journey__list p{color:var(--text-muted);line-height:1.58;margin-top:6px}

/* Price table: radio tabs, so it works without JavaScript. */
[data-site=alpinstar] .as-prices{background:var(--as-soft)}
[data-site=alpinstar] .as-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
[data-site=alpinstar] .as-tabs__radio{position:absolute;opacity:0;pointer-events:none}
[data-site=alpinstar] .as-tabs__label{cursor:pointer;padding:10px 18px;border-radius:999px;background:#fff;font-weight:700;color:var(--as-navy);border:1.5px solid transparent}
[data-site=alpinstar] .as-tabs__radio:checked + .as-tabs__label{background:var(--as-navy);color:#fff}
[data-site=alpinstar] .as-tabs__radio:focus-visible + .as-tabs__label{border-color:var(--as-teal)}
[data-site=alpinstar] .as-tabs__panel{display:none;width:100%;margin-top:6px}
[data-site=alpinstar] #as-tab-0:checked ~ .as-tabs__panel[data-tab="0"],
[data-site=alpinstar] #as-tab-1:checked ~ .as-tabs__panel[data-tab="1"],
[data-site=alpinstar] #as-tab-2:checked ~ .as-tabs__panel[data-tab="2"]{display:block}
[data-site=alpinstar] .as-table-wrap{background:#fff;border-radius:var(--r-card);overflow-x:auto}
[data-site=alpinstar] .as-table{width:100%;border-collapse:collapse;font-size:1rem}
[data-site=alpinstar] .as-table th,[data-site=alpinstar] .as-table td{padding:13px 18px;text-align:left;border-bottom:1px solid #e6e9f2;white-space:nowrap}
[data-site=alpinstar] .as-table tr:last-child th,[data-site=alpinstar] .as-table tr:last-child td{border-bottom:0}
[data-site=alpinstar] .as-table thead th{font-size:.86rem;font-weight:700;color:var(--text-muted)}
[data-site=alpinstar] .as-table tbody th{font-weight:700}
[data-site=alpinstar] .as-table tbody th a{color:var(--as-navy);text-decoration:underline;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,var(--as-teal) 70%,#fff)}
[data-site=alpinstar] .as-table__num{text-align:right !important;font-variant-numeric:tabular-nums}
[data-site=alpinstar] td.as-table__num{font-weight:700}
[data-site=alpinstar] .as-table__meta{color:var(--text-muted)}
@media (max-width:560px){
    [data-site=alpinstar] .as-table th,[data-site=alpinstar] .as-table td{padding:11px 10px;font-size:.92rem}
    [data-site=alpinstar] .as-table__meta{display:none}
}

/* Reviews. */
[data-site=alpinstar] .as-reviews__grid{display:grid;gap:16px;margin-top:30px}
@media (min-width:760px){[data-site=alpinstar] .as-reviews__grid{grid-template-columns:repeat(3,1fr)}}
[data-site=alpinstar] .as-review{margin:0;padding:22px 24px;border-radius:var(--r-card);background:var(--as-soft);display:flex;flex-direction:column;justify-content:space-between;gap:14px}
[data-site=alpinstar] .as-review blockquote{margin:0;line-height:1.55}
[data-site=alpinstar] .as-review figcaption{font-weight:700;font-size:.92rem;color:var(--text-muted)}

/* FAQ beside its title on wide screens. */
@media (min-width:980px){[data-site=alpinstar] .as-faq{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:56px;align-items:start}}
@media (min-width:980px){[data-site=alpinstar] .as-faq .b-faq{margin-top:0}}

/* Contact band. */
[data-site=alpinstar] .as-contact{background:var(--as-navy);color:#fff;padding:52px 0}
[data-site=alpinstar] .as-contact__inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px 48px}
[data-site=alpinstar] .as-contact h2{color:#fff;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;text-transform:none}
[data-site=alpinstar] .as-contact p{color:rgba(255,255,255,.82);margin-top:8px;max-width:56ch;line-height:1.55}
[data-site=alpinstar] .as-contact__links{display:flex;flex-wrap:wrap;gap:12px}
