.follow-main { overflow: hidden; }

.follow-page .header {
    position: relative;
    inset: auto;
    padding: 18px 0;
    background: #000;
}

.follow-hero {
    position: relative;
    width: 100%;
    height: clamp(250px, 26vw, 390px);
    overflow: hidden;
}

.follow-hero__scene,
.follow-hero__scene img { position: absolute; inset: 0; width: 100%; height: 100%; }
.follow-hero__scene img { object-fit: cover; object-position: center; }

.follow-intro { padding-top: clamp(18px, 2.5vw, 30px); text-align: center; }
.follow-intro h1 { max-width: 850px; margin: 0 auto 10px; font-family: var(--font-heading); font-size: clamp(1.5rem, 3.3vw, 3.15rem); line-height: 1.08; letter-spacing: .07em; text-transform: uppercase; }
.follow-intro h1 span { display: block; color: var(--color-accent); font-size: .48em; letter-spacing: .24em; margin-bottom: .5em; }
.follow-intro h1 .follow-intro__name { color: #fff; font-size: 1em; letter-spacing: .07em; margin-bottom: 0; }
.follow-intro p { font-family: "Rajdhani", sans-serif; font-size: clamp(.95rem, 1.5vw, 1.2rem); line-height: 1.45; letter-spacing: .16em; }
.follow-intro p strong { color: var(--color-accent); }

.follow-content { padding-block: 0 64px; }
.link-section { margin-top: clamp(30px, 4vw, 48px); }
.follow-heading { width: min(560px, 100%); margin-bottom: 22px; justify-content: center; text-align: center; }
.follow-heading h2 { white-space: nowrap; }

.active-links,
.streaming-grid { display: grid; gap: 14px; }
.active-links { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.streaming-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.destination-card {
    min-width: 0;
    min-height: 86px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px clamp(16px, 2vw, 24px);
    border: 1px solid rgba(255,106,0,.45);
    border-radius: 8px;
    background: linear-gradient(135deg, rgba(255,255,255,.045), rgba(255,106,0,.025));
    font-family: var(--font-heading);
    font-size: clamp(.72rem, 1vw, .88rem);
    letter-spacing: .08em;
    text-transform: uppercase;
    transition: transform .25s ease, border-color .25s ease, color .25s ease, box-shadow .25s ease;
}
.destination-card svg { width: 28px; height: 28px; flex: 0 0 28px; color: var(--color-accent); }
.destination-card > span:not(.card-arrow) { color: #fff; }
.destination-card .card-arrow { margin-left: auto; color: var(--color-accent); font-size: 1.35rem; transition: transform .25s ease; }
.destination-card:hover { transform: translateY(-3px); color: var(--color-accent); border-color: var(--color-accent); box-shadow: 0 8px 28px rgba(255,106,0,.12); }
.destination-card:hover .card-arrow { transform: translateX(4px); }
.destination-card:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }

.destination-card--disabled,
.destination-card--disabled:hover,
.destination-card--disabled:focus { min-height: 96px; flex-wrap: wrap; cursor: not-allowed; opacity: .52; border-color: rgba(255,255,255,.18); background: rgba(255,255,255,.025); box-shadow: none; transform: none; }
.destination-card--disabled svg { color: rgba(255,255,255,.7); }
.destination-card--disabled small { width: 100%; padding-left: 42px; color: var(--color-accent); font-family: "Rajdhani", sans-serif; font-size: .69rem; font-weight: 600; letter-spacing: .16em; }

.website-cta { min-height: 92px; margin-top: clamp(38px, 6vw, 68px); padding: 18px clamp(20px, 3vw, 34px); display: flex; align-items: center; justify-content: space-between; border: 1px solid rgba(255,106,0,.62); border-radius: 8px; background: linear-gradient(90deg, rgba(255,106,0,.12), rgba(255,255,255,.035)); font-family: var(--font-heading); font-size: clamp(1rem, 2vw, 1.35rem); letter-spacing: .06em; transition: border-color .25s ease, box-shadow .25s ease, color .25s ease; }
.website-cta small { display: block; margin-bottom: 6px; color: var(--color-accent); font-family: "Rajdhani", sans-serif; font-size: .72rem; font-weight: 600; letter-spacing: .2em; }
.website-cta > span:last-child { color: var(--color-accent); font-size: 1.65rem; }
.website-cta:hover { border-color: var(--color-accent); color: var(--color-accent); box-shadow: 0 8px 30px rgba(255,106,0,.13); }

.brand-statement { margin: clamp(46px, 7vw, 78px) auto 0; border: 0; text-align: center; }
.brand-statement p { font-size: clamp(1.05rem, 2vw, 1.35rem); line-height: 1.75; letter-spacing: .04em; color: rgba(255,255,255,.82); }
.brand-statement strong { color: var(--color-accent); font-family: var(--font-heading); font-size: .85em; letter-spacing: .08em; }
.follow-page .site-footer { margin-top: 0; }

@media (min-width: 1024px) {
    .follow-page .follow-hero { height: clamp(225px, 23.2vw, 350px); }
    .follow-page .website-cta { margin-top: clamp(43px, calc(6vw - 18px), 50px); }
    .follow-page .brand-statement { margin-top: clamp(45px, calc(7vw - 28px), 50px); }
    .follow-page .follow-content { padding-bottom: 49px; }
}

@media (max-width: 900px) {
    .active-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 768px) {
    .follow-page .header { padding: 11px 0 10px; }
    .follow-page .header .container { width: 90%; justify-content: center; }
    .follow-page .header .logo img { width: min(290px, 74vw); }
    .follow-page .navigation,
    .follow-page .mobile-menu { display: none; }
    .follow-hero { height: clamp(175px, 48vw, 225px); }
    .follow-hero__scene img { object-position: center center; }
    .follow-intro { width: min(560px, calc(100% - 48px)); padding-top: 16px; }
    .follow-intro h1 { margin-bottom: 13px; font-size: clamp(1.35rem, 7vw, 2rem); }
    .follow-content { width: min(560px, calc(100% - 48px)); padding: 4px 0 38px; }
    .active-links, .streaming-grid { gap: 10px; }
    .streaming-grid { grid-template-columns: 1fr; }
    .destination-card { min-height: 60px; padding-block: 14px; }
    .destination-card--disabled { min-height: 50px; flex-wrap: nowrap; padding-block: 8px; }
    .destination-card--disabled small { width: auto; margin-left: auto; padding-left: 0; white-space: nowrap; }
    .follow-heading { font-size: clamp(.68rem, 3vw, .86rem); letter-spacing: 3px; }
    .website-cta { min-height: 78px; }
    .brand-statement { margin-top: 12px; }
}

@media (max-width: 600px) {
    .active-links { grid-template-columns: 1fr; }
}

@media (max-width: 430px) {
    .follow-page .header .logo img { width: min(290px, 74vw); }
    .follow-hero { height: clamp(155px, 46vw, 195px); }
    .follow-heading { gap: 7px; }
    .follow-heading h2 { white-space: normal; }
    .follow-intro h1 .follow-intro__name { white-space: nowrap; margin-inline: auto; font-size: clamp(.72em, 3.8vw, .82em); line-height: 1.2; }
    .destination-card { font-size: .76rem; }
}

@media (prefers-reduced-motion: reduce) {
    .destination-card, .destination-card .card-arrow, .website-cta { transition: none; }
}
