:root {
  --gold: #d9a441;
  --gold-light: #f5d487;
  --ink: #0d1319;
  --ink-soft: #17212b;
  --paper: #f7f4ee;
  --muted: #64707a;
  --bs-primary: #d9a441;
  --bs-primary-rgb: 217, 164, 65;
}

html { scroll-behavior: smooth; scroll-padding-top: 84px; }
body { font-family: Tahoma, Arial, sans-serif; color: var(--ink); background: #fff; line-height: 1.8; }
a { color: inherit; }
img, video { max-width: 100%; }
.skip-link { position: fixed; z-index: 2000; top: .5rem; right: .5rem; padding: .75rem 1rem; background: white; color: #111; }
.section-padding { padding: 6.5rem 0; }
.section-kicker { color: var(--gold); font-weight: 800; letter-spacing: .03em; margin-bottom: .4rem; }
h1, h2, h3, .navbar-brand strong { font-weight: 900; letter-spacing: -.025em; }
h2 { font-size: clamp(2rem, 4vw, 3.2rem); line-height: 1.2; }
.section-lead, .section-heading > p:last-child { color: #5e6973; font-size: 1.1rem; }
.section-heading { max-width: 750px; }

.site-nav { background: rgba(8, 13, 18, .88); border-bottom: 1px solid rgba(255,255,255,.08); backdrop-filter: blur(14px); }
.navbar-brand img, .footer-brand img { border-radius: 50%; object-fit: cover; border: 2px solid var(--gold); }
.navbar-brand span, .footer-brand div { display: grid; line-height: 1.2; }
.navbar-brand strong { font-size: 1rem; color: white; }
.navbar-brand small { color: var(--gold-light); font-size: .68rem; margin-top: .2rem; }
.navbar-nav .nav-link { color: rgba(255,255,255,.82); font-weight: 700; padding-inline: .8rem !important; }
.navbar-nav .nav-link:hover, .navbar-nav .nav-link:focus { color: var(--gold-light); }

.hero { min-height: 100svh; position: relative; overflow: hidden; color: white; padding: 8rem 0 4rem; background: #05080b; }
.hero-video, .hero-overlay { position: absolute; inset: 0; width: 100%; height: 100%; }
.hero-video { object-fit: cover; }
.hero-overlay { background: linear-gradient(90deg, rgba(6,10,14,.45), rgba(6,10,14,.95) 62%), linear-gradient(0deg, rgba(6,10,14,.95), transparent 45%); }
.hero-content { z-index: 1; }
.hero-badge { color: var(--gold-light); background: rgba(217,164,65,.13); border: 1px solid rgba(245,212,135,.38); padding: .7rem 1rem; font-size: .9rem; }
.tv-event-trigger { display: flex; width: min(100%, 31rem); align-items: center; gap: .8rem; margin-top: 1rem; padding: .65rem .75rem; border: 1px solid rgba(245,212,135,.56); border-radius: 1rem; color: white; background: rgba(8,13,18,.72); box-shadow: 0 14px 40px rgba(0,0,0,.24); text-align: right; backdrop-filter: blur(12px); transition: border-color .2s ease, background .2s ease, transform .2s ease; }
.tv-event-trigger:hover, .tv-event-trigger:focus-visible { color: white; border-color: var(--gold-light); outline: none; background: rgba(15,22,28,.92); transform: translateY(-2px); }
.tv-event-trigger:focus-visible { box-shadow: 0 0 0 .25rem rgba(240,198,96,.28), 0 14px 40px rgba(0,0,0,.24); }
.tv-event-trigger-icon { display: grid; flex: 0 0 2.7rem; width: 2.7rem; height: 2.7rem; place-items: center; border-radius: 50%; color: #15120b; background: var(--gold-light); box-shadow: 0 0 0 .35rem rgba(240,198,96,.12); }
.tv-event-trigger-icon i { font-size: 1.45rem; }
.tv-event-trigger-copy { display: grid; flex: 1; line-height: 1.3; }
.tv-event-trigger-copy small { display: inline-flex; align-items: center; gap: .35rem; color: var(--gold-light); font-size: .72rem; font-weight: 900; }
.tv-event-trigger-copy strong { margin-top: .18rem; font-size: .92rem; }
.tv-event-trigger-arrow { color: var(--gold-light); font-size: 1.1rem; }
.hero h1 { font-size: clamp(2.8rem, 8vw, 6.5rem); line-height: 1.05; max-width: 980px; margin: 1.4rem 0; }
.hero h1 span { display: block; color: var(--gold-light); }
.hero .lead { max-width: 720px; color: rgba(255,255,255,.84); font-size: clamp(1.05rem, 2.2vw, 1.35rem); }
.btn-gold { --bs-btn-color: #111; --bs-btn-bg: var(--gold); --bs-btn-border-color: var(--gold); --bs-btn-hover-color: #111; --bs-btn-hover-bg: var(--gold-light); --bs-btn-hover-border-color: var(--gold-light); font-weight: 900; }
.quick-trust span { color: #e8edf0; font-weight: 700; }
.no-account-note { display: inline-flex; align-items: center; gap: .45rem; margin: 1rem 0 0; padding: .5rem .8rem; color: #eaf7ed; background: rgba(25,135,84,.18); border: 1px solid rgba(112,220,157,.38); border-radius: 999px; font-weight: 800; }
.no-account-note i { color: #76d99f; }
.intro-video-card { position: relative; width: min(100%, 25rem); margin-inline: auto; overflow: hidden; border: 1px solid rgba(245,212,135,.5); border-radius: 1.5rem; background: rgba(6,10,14,.92); box-shadow: 0 30px 90px rgba(0,0,0,.58), 0 0 0 .45rem rgba(217,164,65,.08); backdrop-filter: blur(16px); }
.intro-video-card::before { position: absolute; z-index: 3; inset: 0 auto 0 0; width: 3px; background: linear-gradient(transparent, var(--gold-light), transparent); content: ""; pointer-events: none; }
.intro-video-card-head { display: flex; gap: .8rem; align-items: center; justify-content: space-between; padding: .7rem .9rem; border-bottom: 1px solid rgba(245,212,135,.18); color: #f6e5b9; background: rgba(255,255,255,.035); font-size: .75rem; font-weight: 900; }
.intro-video-card-head span { display: inline-flex; align-items: center; gap: .4rem; }
.intro-video-card-head i { color: var(--gold-light); }
.intro-video-card-head strong { color: rgba(255,255,255,.62); font-size: .72rem; letter-spacing: .08em; }
.intro-video-frame { width: min(17rem, 100%); aspect-ratio: 9 / 16; margin-inline: auto; overflow: hidden; background: #030303; }
.intro-video-frame video { display: block; width: 100%; height: 100%; object-fit: contain; background: #030303; }
.intro-video-card-copy { position: relative; z-index: 2; padding: 1rem 1.15rem 1.2rem; border-top: 1px solid rgba(245,212,135,.18); background: linear-gradient(145deg, rgba(217,164,65,.09), rgba(255,255,255,.015)); }
.intro-video-card-copy p { margin: 0 0 .25rem; color: var(--gold-light); font-size: .75rem; font-weight: 900; }
.intro-video-card-copy h2 { margin: 0; color: #fff; font-size: clamp(1.1rem, 2vw, 1.35rem); line-height: 1.45; }
.intro-video-card-copy a { display: inline-flex; align-items: center; gap: .45rem; margin-top: .7rem; color: #f8dfa0; text-decoration: none; font-size: .82rem; font-weight: 900; }
.intro-video-card-copy a:hover, .intro-video-card-copy a:focus-visible { color: #fff; }

.competition-feature-section { position: relative; overflow: hidden; color: #fff; background: #090d12; }
.competition-feature-section::before { position: absolute; inset: -25% -10% auto auto; width: 34rem; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle, rgba(217,164,65,.2), transparent 68%); content: ""; pointer-events: none; }
.competition-feature-shell { position: relative; overflow: hidden; padding: clamp(1.2rem, 3vw, 2.4rem); border: 1px solid rgba(245,212,135,.35); border-radius: 2rem; background: linear-gradient(135deg, rgba(255,255,255,.06), rgba(217,164,65,.025)); box-shadow: 0 28px 80px rgba(0,0,0,.32); }
.competition-feature-shell::after { position: absolute; inset: 0; border-radius: inherit; box-shadow: inset 0 0 0 1px rgba(255,255,255,.035); content: ""; pointer-events: none; }
.competition-event-label { display: inline-flex; gap: .55rem; align-items: center; margin-bottom: 1rem; padding: .55rem .9rem; border: 1px solid rgba(245,212,135,.4); border-radius: 999px; color: #ffeab2; background: rgba(217,164,65,.11); font-size: .82rem; font-weight: 900; }
.competition-feature-copy h2 { max-width: 48rem; margin-bottom: 1rem; color: #fff; font-size: clamp(2rem, 4.5vw, 3.8rem); line-height: 1.16; }
.competition-feature-copy .lead { max-width: 47rem; color: #dce2e7; line-height: 1.9; }
.competition-highlights { display: flex; flex-wrap: wrap; gap: .65rem; margin: 1.5rem 0; }
.competition-highlights span { display: inline-flex; gap: .45rem; align-items: center; padding: .55rem .8rem; border-radius: .75rem; color: #f6e5b9; background: rgba(255,255,255,.06); font-size: .84rem; font-weight: 800; }
.competition-video-card { position: relative; width: min(100%, 26rem); margin-inline: auto; overflow: hidden; border: 1px solid rgba(245,212,135,.48); border-radius: 1.5rem; background: #05070a; box-shadow: 0 24px 70px rgba(0,0,0,.5), 0 0 0 .45rem rgba(217,164,65,.075); }
.competition-video-card-head { display: flex; gap: .7rem; align-items: center; justify-content: space-between; padding: .7rem .9rem; color: #f8dfa0; background: linear-gradient(90deg, rgba(217,164,65,.16), rgba(255,255,255,.03)); font-size: .75rem; font-weight: 900; }
.competition-video-card-head strong { color: rgba(255,255,255,.65); font-size: .72rem; letter-spacing: .08em; }
.competition-video-frame { width: min(17.5rem, 100%); aspect-ratio: 9 / 16; margin-inline: auto; background: #000; }
.competition-video-frame video { display: block; width: 100%; height: 100%; object-fit: contain; background: #000; }
.competition-video-caption { display: flex; gap: .5rem; align-items: center; margin: 0; padding: .85rem 1rem; border-top: 1px solid rgba(245,212,135,.18); color: #f5e7c0; background: rgba(217,164,65,.07); font-size: .82rem; font-weight: 800; }

.stats-strip { color: white; background: var(--ink-soft); border-top: 1px solid rgba(217,164,65,.25); }
.stats-strip strong { display: block; color: var(--gold-light); font-size: clamp(1.8rem, 5vw, 3.2rem); line-height: 1.2; }
.stats-strip span { display: block; color: #d4dce2; font-size: .9rem; }
.training-note { display: flex; gap: 1rem; padding: 1.25rem; border: 1px solid #eadbb9; background: #fffbf1; border-radius: 1rem; }
.training-note i { color: var(--gold); font-size: 1.7rem; }
.training-note p { margin: 0; }
.feature-card { display: flex; gap: 1rem; align-items: center; padding: 1.25rem; background: white; border: 1px solid #e7e7e7; border-radius: 1rem; box-shadow: 0 12px 35px rgba(10,20,30,.05); font-weight: 700; }
.feature-card i { color: var(--gold); font-size: 1.65rem; }

.dark-section { background: var(--ink); color: white; }
.dark-section .section-lead, .dark-section .section-heading > p:last-child, .dark-section > p { color: #bdc6cd; }
.trainer-photo { position: relative; overflow: hidden; border-radius: 1.5rem; border: 1px solid rgba(217,164,65,.35); }
.trainer-photo img { width: 100%; min-height: 520px; object-fit: cover; }
.trainer-photo > div { position: absolute; inset: auto 0 0; padding: 2.5rem 1.5rem 1.4rem; display: grid; background: linear-gradient(transparent, rgba(0,0,0,.9)); }
.trainer-photo strong { font-size: 1.5rem; }
.trainer-photo small { color: var(--gold-light); }
.pill { padding: .5rem .85rem; border: 1px solid rgba(217,164,65,.35); border-radius: 999px; color: #e6edf2; }
.pill i { color: var(--gold-light); margin-left: .35rem; }
.video-frame { overflow: hidden; border-radius: 1.25rem; background: #000; box-shadow: 0 22px 60px rgba(0,0,0,.22); }
.video-frame video { width: 100%; height: 100%; object-fit: cover; }

.course-stages { margin-top: 2.4rem; }
.course-stage-card { position: relative; overflow: hidden; padding: 1.55rem; border: 1px solid #e7dfd0; border-radius: 1.35rem; background: linear-gradient(155deg, #fff, #fbf7ef); box-shadow: 0 16px 45px rgba(10,20,30,.06); transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease; }
.course-stage-card::after { position: absolute; inset: auto -2.5rem -3.5rem auto; width: 8rem; height: 8rem; border-radius: 50%; background: rgba(217,164,65,.09); content: ""; }
.course-stage-card:hover { border-color: rgba(217,164,65,.65); box-shadow: 0 22px 55px rgba(10,20,30,.1); transform: translateY(-6px); }
.course-stage-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.2rem; }
.course-stage-head span { display: grid; width: 3.25rem; height: 3.25rem; place-items: center; border-radius: 1rem; color: #111; background: var(--gold-light); font-size: 1.15rem; font-weight: 900; box-shadow: 0 8px 22px rgba(217,164,65,.22); }
.course-stage-head small { padding: .35rem .7rem; border: 1px solid #e7d7b6; border-radius: 999px; color: #715116; background: #fffaf0; font-weight: 800; }
.course-stage-card h3 { margin-bottom: .65rem; font-size: 1.3rem; }
.course-stage-card p { position: relative; z-index: 1; margin: 0; color: #5d6871; }
.course-extras { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 2rem; align-items: center; margin-top: 1.5rem; padding: clamp(1.5rem, 4vw, 2.3rem); border-radius: 1.5rem; color: white; background: linear-gradient(135deg, #111a22, #25333e); box-shadow: 0 22px 60px rgba(10,20,30,.14); }
.course-extras h3 { margin-bottom: .55rem; }
.course-extras p:last-child { margin: 0; color: #c6d0d7; }
.course-extras ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.course-extras li { display: flex; gap: .55rem; align-items: center; padding: .72rem .85rem; border: 1px solid rgba(255,255,255,.1); border-radius: .85rem; background: rgba(255,255,255,.055); font-weight: 700; }
.course-extras li i { flex: 0 0 auto; color: var(--gold-light); font-size: 1.1rem; }
.program-list { background: var(--paper); padding: 1rem; border-radius: 1.5rem; }
.program-list > div { display: flex; gap: 1rem; align-items: center; padding: 1.15rem; border-bottom: 1px solid #dfd9cc; }
.program-list > div:last-child { border: 0; }
.program-list span { display: grid; flex: 0 0 2.8rem; height: 2.8rem; place-items: center; border-radius: 50%; color: #111; background: var(--gold-light); font-weight: 900; }
.program-list p { margin: 0; font-weight: 700; }
.offer-card { color: white; background: linear-gradient(145deg, #101821, #202b35); padding: 2rem; border-radius: 1.5rem; border: 1px solid rgba(217,164,65,.35); box-shadow: 0 24px 70px rgba(10,20,30,.18); }
.offer-label { display: inline-block; color: #121212; background: var(--gold-light); border-radius: 999px; padding: .35rem .75rem; font-weight: 900; }
.offer-card h3 { margin: 1.2rem 0 .7rem; }
.offer-card > p { color: #c9d0d5; }
.offer-card li { margin-bottom: .6rem; }
.offer-card li i, .certificate i { color: var(--gold-light); margin-left: .5rem; }
.course-meta { border-block: 1px solid rgba(255,255,255,.12); padding: 1rem 0; margin-block: 1rem; text-align: center; }
.course-meta i, .course-meta span { display: block; }
.course-meta i { color: var(--gold-light); font-size: 1.25rem; }
.course-meta span { color: #d2d9de; font-size: .8rem; }
.price del { color: #aeb8bf; }
.price strong { display: block; color: var(--gold-light); font-size: 2.8rem; line-height: 1.2; }
.price small { font-size: 1rem; }
.certificate { color: white !important; }

.article-page { background: #fbfaf7; }
.article-hero { padding: 10rem 0 5rem; color: white; background: radial-gradient(circle at 12% 20%, rgba(217,164,65,.22), transparent 32%), linear-gradient(145deg, #0b1117, #1d2a34); }
.article-hero-inner { max-width: 960px; }
.article-hero .breadcrumb { --bs-breadcrumb-divider-color: rgba(255,255,255,.4); --bs-breadcrumb-item-active-color: rgba(255,255,255,.58); }
.article-hero .breadcrumb a { color: var(--gold-light); }
.article-hero h1 { max-width: 950px; margin: 1rem 0 1.4rem; font-size: clamp(2.5rem, 6vw, 5rem); line-height: 1.1; }
.article-hero .lead { max-width: 850px; color: #d0d8de; }
.article-summary { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.6rem; }
.article-summary span { display: inline-flex; align-items: center; gap: .45rem; padding: .48rem .75rem; border: 1px solid rgba(255,255,255,.14); border-radius: 999px; color: #e4eaee; background: rgba(255,255,255,.055); font-size: .85rem; font-weight: 700; }
.article-summary i { color: var(--gold-light); }
.article-video-section { position: relative; z-index: 2; padding: 0 0 1rem; background: linear-gradient(180deg, #1d2a34 0, #1d2a34 3.5rem, #fbfaf7 3.5rem); }
.article-video-card { max-width: 1100px; margin: 0 auto; padding: clamp(1rem, 2.5vw, 1.5rem); border: 1px solid rgba(217,164,65,.28); border-radius: 1.5rem; background: #fff; box-shadow: 0 24px 70px rgba(5,12,18,.2); }
.article-video-heading { display: flex; gap: 1rem; align-items: end; justify-content: space-between; margin-bottom: 1rem; }
.article-video-heading h2 { margin: .25rem 0 0; font-size: clamp(1.35rem, 3vw, 2rem); }
.article-video-heading > span { display: inline-flex; flex: 0 0 auto; gap: .4rem; align-items: center; color: #5f6b74; font-size: .9rem; font-weight: 800; }
.article-video-frame { overflow: hidden; aspect-ratio: 16 / 9; border-radius: 1rem; background: #050505; }
.article-video-frame video { display: block; width: 100%; height: 100%; object-fit: contain; background: #050505; }
.article-video-frame-portrait { width: min(28rem, 100%); aspect-ratio: 9 / 16; margin-inline: auto; box-shadow: 0 20px 55px rgba(5,12,18,.22); }
.article-video-caption { margin: .9rem .2rem 0; color: #5d6972; font-size: .95rem; }
.article-context-links { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; margin-top: 1.2rem; padding: 1rem; border: 1px solid #e7dfcf; border-radius: .9rem; background: #fffcf5; }
.article-context-links strong { color: #27323a; }
.article-context-links a { display: inline-flex; gap: .4rem; align-items: center; color: #805b0f; font-weight: 850; text-decoration: none; }
.article-context-links a:hover, .article-context-links a:focus-visible { color: #161d22; text-decoration: underline; }
.article-layout { display: grid; grid-template-columns: 250px minmax(0, 820px); gap: clamp(2rem, 5vw, 5rem); align-items: start; justify-content: center; padding-top: 4rem; padding-bottom: 6rem; }
.article-toc { position: sticky; top: 105px; display: grid; gap: .45rem; padding: 1.3rem; border: 1px solid #e5dfd3; border-radius: 1.15rem; background: white; box-shadow: 0 12px 40px rgba(10,20,30,.05); }
.article-toc strong { margin-bottom: .35rem; }
.article-toc a { padding: .45rem .6rem; border-radius: .55rem; color: #53616b; text-decoration: none; font-size: .9rem; font-weight: 700; }
.article-toc a:hover, .article-toc a:focus-visible { color: #5d420f; background: #fff5df; }
.article-copy > section { scroll-margin-top: 105px; margin-bottom: 4.6rem; }
.article-copy h2 { margin-bottom: 1.2rem; font-size: clamp(1.8rem, 3.8vw, 2.7rem); }
.article-copy p, .article-copy li { color: #4f5d67; font-size: 1.06rem; }
.article-copy p { margin-bottom: 1.15rem; }
.article-skill-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.article-skill-grid > div { padding: 1.35rem; border: 1px solid #e4ded3; border-radius: 1.1rem; background: white; box-shadow: 0 10px 30px rgba(10,20,30,.045); }
.article-skill-grid i { color: var(--gold); font-size: 1.8rem; }
.article-skill-grid h3 { margin: .75rem 0 .4rem; font-size: 1.15rem; }
.article-skill-grid p { margin: 0; font-size: .95rem; }
.article-steps { display: grid; gap: .85rem; padding: 0; list-style: none; counter-reset: article-step; }
.article-steps li { position: relative; padding: 1rem 4.2rem 1rem 1rem; border-right: 3px solid var(--gold); border-radius: .9rem; background: white; counter-increment: article-step; }
.article-steps li::before { position: absolute; top: .85rem; right: 1rem; display: grid; width: 2.3rem; height: 2.3rem; place-items: center; border-radius: 50%; color: #111; background: var(--gold-light); content: counter(article-step); font-weight: 900; }
.article-callout { display: flex; gap: 1rem; margin-top: 1.4rem; padding: 1.25rem; border: 1px solid #ead8b1; border-radius: 1rem; background: #fff8e8; }
.article-callout i { color: var(--gold); font-size: 1.6rem; }
.article-callout p { margin: 0; }
.article-checklist { display: grid; gap: .65rem; padding: 0; list-style: none; }
.article-checklist li { position: relative; padding-right: 1.8rem; }
.article-checklist li::before { position: absolute; right: 0; color: #1a8d55; content: "✓"; font-weight: 900; }
.article-choice { padding: clamp(1.5rem, 5vw, 2.7rem); border-radius: 1.5rem; background: white; box-shadow: 0 18px 60px rgba(10,20,30,.08); }
.article-sources { display: flex; flex-wrap: wrap; gap: .65rem; align-items: center; margin-top: 1.2rem; padding: 1rem; border: 1px solid #dce5ea; border-radius: .9rem; background: #f7fbfd; }
.article-sources strong { width: 100%; }
.article-sources a { color: #155d7a; font-size: .9rem; font-weight: 700; }
.guides-section { background: linear-gradient(180deg, #fff, #f7f4ee); }
.guide-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.guide-grid article { display: flex; flex-direction: column; min-height: 100%; padding: 1.45rem; border: 1px solid #e6dfd2; border-radius: 1.2rem; background: white; box-shadow: 0 12px 38px rgba(10,20,30,.05); transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease; }
.guide-grid article:hover { border-color: rgba(217,164,65,.62); box-shadow: 0 18px 48px rgba(10,20,30,.09); transform: translateY(-5px); }
.guide-grid article > i { display: grid; width: 3.25rem; height: 3.25rem; place-items: center; margin-bottom: 1rem; border-radius: 1rem; color: #6e4c0d; background: var(--gold-light); font-size: 1.45rem; }
.guide-grid h3 { font-size: 1.2rem; }
.guide-grid p { flex: 1; color: #5f6b74; font-size: .94rem; }
.guide-grid a { display: inline-flex; align-items: center; gap: .4rem; color: #69480b; text-decoration: none; font-weight: 900; }
.guide-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
.guide-cards > a { display: flex; gap: .85rem; align-items: center; padding: 1rem; border: 1px solid #e4ded3; border-radius: 1rem; color: var(--ink); background: white; text-decoration: none; transition: transform .2s ease, border-color .2s ease; }
.guide-cards > a:hover, .guide-cards > a:focus-visible { border-color: var(--gold); transform: translateY(-3px); }
.guide-cards > a > i { display: grid; flex: 0 0 2.75rem; width: 2.75rem; height: 2.75rem; place-items: center; border-radius: .8rem; color: #67470d; background: var(--gold-light); font-size: 1.2rem; }
.guide-cards span { display: grid; }
.guide-cards small { margin-top: .2rem; color: #65717a; line-height: 1.45; }
.accommodation { color: #111; background: var(--gold-light); }
.accommodation .section-kicker { color: #6b4a0b; }
.accommodation p { max-width: 750px; }
.accommodation-showcase { position: relative; overflow: hidden; background: radial-gradient(circle at 8% 8%, rgba(217,164,65,.18), transparent 28%), #eee8da; }
.accommodation-showcase::before { position: absolute; top: -15rem; left: -12rem; width: 34rem; height: 34rem; border: 1px solid rgba(126,86,12,.15); border-radius: 50%; content: ""; }
.accommodation-showcase > .container { position: relative; }
.accommodation-showcase h2 { max-width: 760px; margin-bottom: 1.2rem; font-size: clamp(2.5rem, 5vw, 4.7rem); letter-spacing: -.08rem; line-height: 1.1; }
.accommodation-lead { color: #5f594f; font-size: 1.06rem; line-height: 1.9; }
.accommodation-feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; margin-top: 1.6rem; }
.accommodation-feature-grid article { display: grid; grid-template-columns: 3rem 1fr; gap: .85rem; min-height: 8.4rem; padding: 1.1rem; border: 1px solid rgba(81,66,36,.12); border-radius: 1rem; background: rgba(255,255,255,.62); }
.accommodation-feature-grid article > i { display: grid; width: 3rem; height: 3rem; place-items: center; border-radius: .85rem; color: var(--gold-light); background: #17120a; font-size: 1.25rem; }
.accommodation-feature-grid h3 { margin: .15rem 0 .35rem; font-size: 1rem; }
.accommodation-feature-grid p { margin: 0; color: #635d52; font-size: .82rem; line-height: 1.7; }
.accommodation-detail-link { display: inline-flex; align-items: center; gap: .5rem; color: #2a2112; font-weight: 900; text-decoration: none; }
.accommodation-detail-link:hover { color: #79530d; }
.accommodation-disclaimer { display: flex; align-items: start; gap: .45rem; margin: 1rem 0 0; color: #706756; font-size: .78rem; line-height: 1.75; }
.accommodation-disclaimer i { color: #8c610e; }
.accommodation-cover { position: relative; min-height: 42rem; margin: 0; }
.accommodation-cover::before { position: absolute; inset: 1.5rem -1rem -1.2rem 1.4rem; border: 1px solid rgba(154,109,16,.42); border-radius: 1.6rem; content: ""; }
.accommodation-cover > img { position: relative; width: 100%; height: 42rem; border-radius: 1.5rem; box-shadow: 0 2rem 4.5rem rgba(39,29,11,.22); object-fit: cover; }
.accommodation-cover figcaption { position: absolute; right: 1.25rem; bottom: 1.25rem; display: grid; min-width: 11rem; gap: .15rem; padding: 1rem; border: 1px solid rgba(255,255,255,.15); border-radius: .9rem; color: white; background: rgba(14,11,7,.88); backdrop-filter: blur(12px); }
.accommodation-cover figcaption span { color: var(--gold-light); font-size: .72rem; font-weight: 900; }
.accommodation-free-badge { position: absolute; top: 2.3rem; left: -1.6rem; display: grid; min-width: 9.8rem; gap: .1rem; padding: .95rem 1rem; border-radius: 1rem; color: #171004; background: linear-gradient(135deg, #f0cc62, #bd8115); box-shadow: 0 1.2rem 3rem rgba(58,37,4,.24); }
.accommodation-free-badge i { margin-bottom: .25rem; font-size: 1.3rem; }
.accommodation-free-badge span { font-size: .65rem; font-weight: 800; }
.accommodation-free-badge strong { font-size: 1.45rem; }
.accommodation-photo-showcase { padding: clamp(1.15rem, 2.5vw, 2rem); border: 1px solid rgba(92,67,20,.12); border-radius: 1.6rem; background: rgba(255,255,255,.62); box-shadow: 0 1.5rem 3.8rem rgba(42,31,10,.1); }
.accommodation-photo-heading { display: grid; grid-template-columns: 1fr .8fr; gap: 3rem; align-items: end; margin-bottom: 1.4rem; }
.accommodation-photo-heading h3 { margin: 0; font-size: clamp(1.75rem, 3vw, 2.65rem); line-height: 1.25; }
.accommodation-photo-heading > p { max-width: 38rem; margin: 0; color: #665f53; line-height: 1.9; }
.accommodation-preview-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-template-rows: repeat(3, minmax(13rem, 1fr)); gap: .75rem; }
.accommodation-preview-gallery > a { position: relative; min-height: 16rem; overflow: hidden; border-radius: 1rem; color: white; background: #17120a; text-decoration: none; }
.accommodation-preview-featured { grid-row: span 2; grid-column: span 2; }
.accommodation-preview-wide { grid-column: span 2; }
.accommodation-preview-gallery img { width: 100%; height: 100%; transition: transform .35s ease, filter .35s ease; object-fit: cover; }
.accommodation-preview-gallery > a:hover img { filter: brightness(1.06); transform: scale(1.045); }
.accommodation-photo-number { position: absolute; right: .7rem; bottom: .7rem; display: grid; width: 2.15rem; height: 2.15rem; place-items: center; border: 1px solid rgba(255,255,255,.22); border-radius: .65rem; color: var(--gold-light); background: rgba(8,7,5,.78); font: 800 .7rem/1 Arial, sans-serif; backdrop-filter: blur(8px); }
.accommodation-preview-more { display: grid; align-content: center; justify-items: start; gap: .35rem; padding: 1.35rem; background: radial-gradient(circle at 12% 15%, rgba(237,200,95,.22), transparent 44%), #17120a !important; }
.accommodation-preview-more i { color: var(--gold-light); font-size: 2rem; }
.accommodation-preview-more strong { line-height: 1.45; }
.accommodation-preview-more span { color: rgba(255,255,255,.58); font-size: .72rem; }
.accommodation-article-preview { display: grid; grid-template-columns: .9fr 1.1fr; gap: 4rem; padding: clamp(1.6rem, 4vw, 3rem); border: 1px solid rgba(237,200,95,.16); border-radius: 1.5rem; color: white; background: linear-gradient(120deg, rgba(237,200,95,.08), transparent 46%), #17120a; }
.accommodation-article-preview h3 { max-width: 34rem; margin: 0; font-size: clamp(1.8rem, 3vw, 2.7rem); line-height: 1.3; }
.accommodation-article-preview > div:last-child { display: grid; gap: .7rem; }
.accommodation-article-preview p { margin: 0; color: rgba(255,255,255,.6); font-size: .9rem; line-height: 1.9; }
.accommodation-article-preview a { display: inline-flex; width: max-content; align-items: center; gap: .45rem; margin-top: .35rem; color: var(--gold-light); font-weight: 900; text-decoration: none; }
.accommodation-article-page .article-video-card { max-width: 860px; }
.accommodation-article-page .article-video-frame { width: min(26rem, 100%); aspect-ratio: 9 / 16; margin-inline: auto; }
.accommodation-article-gallery-section { padding: 6rem 0; background: #e6dfd0; }
.accommodation-article-gallery-heading { display: grid; grid-template-columns: 1fr .7fr; gap: 4rem; align-items: end; }
.accommodation-article-gallery-heading h2 { margin: 0; font-size: clamp(2.3rem, 5vw, 4rem); line-height: 1.15; }
.accommodation-article-gallery-heading > p { margin: 0; color: #5f665f; line-height: 1.9; }
.accommodation-full-gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 20rem; gap: .8rem; margin-top: 3rem; }
.accommodation-full-gallery a { position: relative; overflow: hidden; border-radius: 1rem; background: #17120a; }
.accommodation-full-gallery .gallery-wide { grid-column: span 2; }
.accommodation-full-gallery img { width: 100%; height: 100%; transition: transform .35s ease, filter .35s ease; object-fit: cover; }
.accommodation-full-gallery a:hover img { filter: brightness(1.07); transform: scale(1.04); }
.accommodation-full-gallery span { position: absolute; right: .75rem; bottom: .75rem; display: grid; width: 2.2rem; height: 2.2rem; place-items: center; border-radius: .65rem; color: var(--gold-light); background: rgba(8,7,5,.78); font: 800 .7rem/1 Arial, sans-serif; }
.featured-video { max-width: 970px; }
.learning-card { max-width: 970px; padding: clamp(1.5rem, 4vw, 3rem); background: white; border-radius: 1.5rem; border-right: 5px solid var(--gold); box-shadow: 0 15px 50px rgba(10,20,30,.07); }
.graduation-card { overflow: hidden; border-radius: 1.5rem; color: var(--ink); background: var(--gold-light); }
.graduation-card img { min-height: 340px; }
.accordion-item { border-color: #e3e3e3; }
.accordion-button { font-weight: 800; font-size: 1.05rem; }
.accordion-button:not(.collapsed) { color: #634713; background: #fff8e9; box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 #eadbb9; }
.accordion-button:focus { border-color: var(--gold); box-shadow: 0 0 0 .25rem rgba(217,164,65,.2); }

.location-section { color: white; background: #26343f; }
.location-section address { font-style: normal; font-size: 1.1rem; margin: 0; }
.location-section address i { color: var(--gold-light); margin-left: .5rem; }
.register-section { background: var(--paper); }
.contact-list { display: grid; gap: 1rem; margin-top: 2rem; }
.contact-list a { display: flex; gap: 1rem; align-items: center; padding: 1rem; text-decoration: none; background: white; border-radius: 1rem; border: 1px solid #e4dfd5; }
.contact-list a > i { display: grid; place-items: center; width: 3rem; height: 3rem; border-radius: 50%; color: #111; background: var(--gold-light); font-size: 1.3rem; }
.contact-list span { display: grid; }
.contact-list small { color: var(--muted); }
.lead-form { padding: clamp(1.3rem, 4vw, 2.5rem); background: white; border-radius: 1.5rem; box-shadow: 0 25px 70px rgba(10,20,30,.09); }
.form-reassurance { margin: 0 0 1.35rem; color: #53616b; font-size: .92rem; }
.form-reassurance i { color: #198754; margin-left: .3rem; }
.form-control, .form-select { min-height: 3.2rem; border-radius: .8rem; border-color: #d8d8d8; }
.form-control:focus, .form-select:focus { border-color: var(--gold); box-shadow: 0 0 0 .25rem rgba(217,164,65,.15); }

.site-footer { color: #bec8cf; background: #070b0f; }
.tv-event-backdrop { position: fixed; z-index: 1058; inset: 0; visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .25s ease, visibility .25s ease; }
.tv-event-panel { position: fixed; z-index: 1060; top: 6.2rem; left: 1.1rem; width: min(27rem, calc(100vw - 2.2rem)); max-height: calc(100svh - 7.4rem); overflow: auto; border: 1px solid rgba(217,164,65,.42); border-radius: 1.4rem; color: var(--ink); background: #fff; box-shadow: 0 28px 90px rgba(0,0,0,.35); direction: rtl; opacity: 0; visibility: hidden; transform: translateX(calc(-100% - 2.5rem)); transition: transform .38s cubic-bezier(.2,.8,.2,1), opacity .28s ease, visibility .38s ease; }
.tv-event-panel.is-open { opacity: 1; visibility: visible; transform: translateX(0); }
.tv-event-close { position: absolute; z-index: 2; top: .75rem; left: .75rem; display: grid; width: 2.35rem; height: 2.35rem; place-items: center; border: 1px solid rgba(255,255,255,.24); border-radius: 50%; color: white; background: rgba(7,11,15,.72); backdrop-filter: blur(8px); }
.tv-event-close:hover, .tv-event-close:focus-visible { color: #111; outline: none; background: var(--gold-light); }
.tv-event-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .9rem 3.7rem .9rem 1rem; color: white; background: #0b1117; }
.tv-event-header span { display: inline-flex; align-items: center; gap: .35rem; color: var(--gold-light); font-size: .78rem; font-weight: 900; }
.tv-event-header small { color: #cbd4da; font-size: .72rem; font-weight: 700; }
.tv-event-video { aspect-ratio: 16 / 9; background: #050505; }
.tv-event-video video { display: block; width: 100%; height: 100%; object-fit: contain; background: #050505; }
.tv-event-body { padding: 1.2rem; }
.tv-event-channel { display: inline-flex; align-items: center; gap: .4rem; margin: 0 0 .55rem; color: #76540f; font-size: .76rem; font-weight: 900; }
.tv-event-body h2 { margin-bottom: .65rem; font-size: 1.45rem; line-height: 1.35; }
.tv-event-body > p:not(.tv-event-channel) { margin-bottom: 1rem; color: #58656e; font-size: .92rem; }
.tv-event-actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.tv-event-actions .btn { flex: 1 1 10rem; font-size: .82rem; font-weight: 900; }
.legal-copy { max-width: 850px; }
.site-footer a { color: white; }
.footer-brand { display: flex; gap: 1rem; align-items: center; }
.footer-brand strong { color: white; font-size: 1.25rem; }
.footer-brand small { color: var(--gold-light); }
.footer-social-title { margin: 0 0 .7rem; color: rgba(255,255,255,.58); font-size: .78rem; font-weight: 800; }
.footer-social-links { display: flex; flex-wrap: wrap; gap: .5rem; }
.footer-social-links a { display: inline-flex; min-height: 2.55rem; align-items: center; gap: .5rem; padding: 0 .8rem 0 .95rem; border: 1px solid rgba(255,255,255,.13); border-radius: 999px; color: rgba(255,255,255,.82); text-decoration: none; font-size: .8rem; font-weight: 800; transition: transform .2s, border-color .2s, background .2s, box-shadow .2s; }
.footer-social-links a i { display: grid; width: 1.7rem; height: 1.7rem; place-items: center; border-radius: 50%; color: #fff; background: rgba(255,255,255,.1); transition: transform .2s, background .2s; }
.footer-social-links a:hover, .footer-social-links a:focus-visible { color: white; background: rgba(255,255,255,.08); border-color: rgba(240,198,96,.55); box-shadow: 0 8px 24px rgba(0,0,0,.18); transform: translateY(-3px); }
.footer-social-links a:hover i, .footer-social-links a:focus-visible i { color: #101418; background: var(--gold-light); transform: rotate(-7deg) scale(1.08); }
.social-float-dock { position: fixed; z-index: 1050; bottom: 1.2rem; left: 1.2rem; display: flex; align-items: center; gap: .45rem; padding: .48rem; border: 1px solid rgba(240,198,96,.28); border-radius: 999px; background: rgba(7,11,15,.93); box-shadow: 0 18px 50px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.06); backdrop-filter: blur(16px); direction: ltr; }
.social-dock-title { display: inline-flex; align-items: center; gap: .4rem; padding: 0 .45rem 0 .65rem; color: rgba(255,255,255,.75); font-size: .72rem; font-weight: 900; white-space: nowrap; direction: rtl; }
.social-dock-title i { color: var(--gold-light); font-size: .95rem; }
.social-float-link { --social-color: #fff; --social-glow: rgba(255,255,255,.22); position: relative; isolation: isolate; display: flex; min-width: 3.15rem; height: 3.15rem; align-items: center; justify-content: center; overflow: hidden; gap: 0; padding: 0 .72rem; border: 1px solid rgba(255,255,255,.24); border-radius: 999px; color: white; background: var(--social-color); box-shadow: 0 9px 25px rgba(0,0,0,.28), 0 0 0 0 var(--social-glow); text-decoration: none; direction: rtl; touch-action: manipulation; transition: width .25s ease, transform .2s ease, box-shadow .25s ease, gap .25s ease, filter .2s ease; }
.social-float-link::before { position: absolute; z-index: -1; inset: 0; background: linear-gradient(115deg, transparent 18%, rgba(255,255,255,.28) 46%, transparent 72%); content: ""; transform: translateX(-140%); transition: transform .55s ease; }
.social-icon { position: relative; display: grid; flex: 0 0 1.65rem; width: 1.65rem; height: 1.65rem; place-items: center; }
.social-icon i { font-size: 1.35rem; line-height: 1; transition: transform .22s ease; }
.social-label { max-width: 0; overflow: hidden; opacity: 0; font-size: .78rem; font-weight: 900; white-space: nowrap; transform: translateX(.35rem); transition: max-width .25s ease, opacity .18s ease, transform .25s ease; }
.social-float-link:hover, .social-float-link:focus-visible { z-index: 2; color: white; gap: .48rem; outline: none; box-shadow: 0 15px 34px rgba(0,0,0,.34), 0 0 0 4px var(--social-glow); filter: saturate(1.12) brightness(1.04); transform: translateY(-5px); }
.social-float-link:hover::before, .social-float-link:focus-visible::before { transform: translateX(140%); }
.social-float-link:hover .social-icon i, .social-float-link:focus-visible .social-icon i { transform: rotate(-8deg) scale(1.12); }
.social-float-link:hover .social-label, .social-float-link:focus-visible .social-label { max-width: 5rem; opacity: 1; transform: translateX(0); }
.social-float-link:active { box-shadow: 0 6px 18px rgba(0,0,0,.3), 0 0 0 3px var(--social-glow); transform: translateY(-1px) scale(.94); }
.social-float-link.whatsapp { --social-color: #20b95a; --social-glow: rgba(37,211,102,.28); }
.social-float-link.facebook { --social-color: #1877f2; --social-glow: rgba(24,119,242,.28); }
.social-float-link.tiktok { --social-color: #101010; --social-glow: rgba(37,244,238,.2); box-shadow: -2px 0 0 rgba(37,244,238,.7), 2px 0 0 rgba(254,44,85,.7), 0 9px 25px rgba(0,0,0,.28); }
.social-float-link.instagram { --social-color: linear-gradient(135deg, #833ab4 0%, #c13584 34%, #e1306c 58%, #f77737 80%, #fcaf45 100%); --social-glow: rgba(225,48,108,.28); }
.social-float-link.whatsapp .social-icon::after { position: absolute; top: -.12rem; right: -.12rem; width: .48rem; height: .48rem; border: 2px solid #20b95a; border-radius: 50%; background: #d9ffe7; box-shadow: 0 0 0 0 rgba(217,255,231,.75); content: ""; animation: social-online-pulse 2s ease-out infinite; }
@keyframes social-online-pulse { 0%,45% { box-shadow: 0 0 0 0 rgba(217,255,231,.65); } 75%,100% { box-shadow: 0 0 0 .55rem rgba(217,255,231,0); } }
.mobile-quick-actions { display: none; }
.consent-banner { position: fixed; z-index: 1100; right: 1rem; bottom: 1rem; left: 1rem; max-width: 850px; margin: auto; display: flex; gap: 1rem; align-items: center; justify-content: space-between; padding: 1rem 1.2rem; color: white; background: rgba(12,18,24,.98); border: 1px solid rgba(217,164,65,.38); border-radius: 1rem; box-shadow: 0 20px 60px rgba(0,0,0,.3); }
.consent-banner p { margin: .15rem 0 0; color: #c4cdd3; font-size: .9rem; }

@media (max-width: 991.98px) {
  .navbar-collapse { padding: 1rem 0; }
  .hero-overlay { background: linear-gradient(0deg, rgba(6,10,14,.96), rgba(6,10,14,.35)); }
  .section-padding { padding: 4.5rem 0; }
  .course-extras { grid-template-columns: 1fr; }
  .article-layout { grid-template-columns: 1fr; }
  .article-toc { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .article-toc strong { grid-column: 1 / -1; }
  .guide-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .accommodation-cover { width: min(34rem, calc(100% - 1rem)); margin-inline: auto; }
  .accommodation-photo-heading { grid-template-columns: 1fr; gap: .6rem; }
  .accommodation-preview-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(5, 17rem); }
  .accommodation-preview-featured { grid-column: span 2; grid-row: span 2; }
  .accommodation-preview-wide { grid-column: span 2; }
  .accommodation-article-preview, .accommodation-article-gallery-heading { grid-template-columns: 1fr; gap: 1.5rem; }
  .accommodation-full-gallery { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .intro-video-card { width: min(100%, 27rem); }
  .competition-feature-copy { text-align: center; }
  .competition-feature-copy .lead { margin-inline: auto; }
  .competition-highlights, .competition-feature-actions { justify-content: center; }
}
@media (max-width: 575.98px) {
  body { padding-bottom: 4.7rem; }
  .hero { min-height: 860px; }
  .hero h1 { font-size: 2.75rem; }
  .intro-video-card { border-radius: 1.15rem; }
  .intro-video-frame { width: min(16rem, 100%); }
  .competition-feature-shell, .competition-video-card { border-radius: 1.2rem; }
  .competition-video-frame { width: min(16rem, 100%); }
  .stats-strip span { font-size: .72rem; }
  .trainer-photo img { min-height: 420px; }
  .course-extras ul { grid-template-columns: 1fr; }
  .article-hero { padding: 8.5rem 0 3.5rem; }
  .article-video-heading { display: grid; align-items: start; }
  .article-layout { padding-top: 2.5rem; padding-bottom: 4rem; }
  .article-toc, .article-skill-grid, .guide-grid, .guide-cards { grid-template-columns: 1fr; }
  .article-toc strong { grid-column: auto; }
  .social-float-dock { bottom: 5.4rem; left: .65rem; gap: .32rem; padding: .38rem; }
  .tv-event-backdrop.is-open { visibility: visible; opacity: 1; pointer-events: auto; background: rgba(4,8,11,.62); backdrop-filter: blur(2px); }
  .tv-event-panel { top: auto; right: .65rem; bottom: 5.25rem; left: .65rem; width: auto; max-height: calc(100svh - 6.5rem); border-radius: 1.25rem; transform: translateY(calc(100% + 6.5rem)); }
  .tv-event-panel.is-open { transform: translateY(0); }
  .tv-event-header { padding-right: 1rem; padding-left: 3.7rem; }
  .tv-event-header small { display: none; }
  .tv-event-body { padding: 1rem; }
  .tv-event-body h2 { font-size: 1.25rem; }
  .tv-event-open .social-float-dock { opacity: 0; pointer-events: none; }
  .social-dock-title { display: none; }
  .social-float-link { min-width: 2.85rem; height: 2.85rem; padding: 0 .58rem; }
  .social-label { display: none; }
  .social-float-link:hover, .social-float-link:focus-visible { gap: 0; transform: translateY(-3px) scale(1.04); }
  .mobile-quick-actions { position: fixed; z-index: 1045; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: 1fr 1.25fr; gap: .55rem; padding: .65rem max(.7rem, env(safe-area-inset-right)) calc(.65rem + env(safe-area-inset-bottom)) max(.7rem, env(safe-area-inset-left)); background: rgba(8,13,18,.97); border-top: 1px solid rgba(217,164,65,.35); box-shadow: 0 -10px 30px rgba(0,0,0,.22); }
  .mobile-quick-actions a { display: flex; align-items: center; justify-content: center; gap: .45rem; min-height: 2.9rem; color: white; border: 1px solid rgba(255,255,255,.28); border-radius: 999px; text-decoration: none; font-weight: 900; }
  .mobile-quick-actions a:last-child { color: #111; background: var(--gold); border-color: var(--gold); }
  .consent-banner { align-items: stretch; flex-direction: column; bottom: 5rem; }
  .accommodation-showcase h2 { font-size: 2.55rem; }
  .accommodation-feature-grid { grid-template-columns: 1fr; }
  .accommodation-cover { min-height: 33rem; }
  .accommodation-cover > img { height: 33rem; }
  .accommodation-cover::before { inset: 1rem -.55rem -.7rem .7rem; }
  .accommodation-free-badge { top: 1.2rem; left: -.7rem; min-width: 8.5rem; }
  .accommodation-photo-showcase { padding: .75rem; border-radius: 1.1rem; }
  .accommodation-photo-heading { padding: .55rem .4rem .25rem; }
  .accommodation-preview-gallery { grid-template-rows: repeat(5, 13rem); gap: .5rem; }
  .accommodation-preview-gallery > a { min-height: 13rem; border-radius: .8rem; }
  .accommodation-article-preview { padding: 1.4rem; }
  .accommodation-article-gallery-section { padding: 4.5rem 0; }
  .accommodation-full-gallery { grid-auto-rows: 16rem; gap: .55rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
}
