/* =========================================================
   مربط الفيصل اف اند ان – Main Stylesheet
   Bootstrap 5.3 RTL is used for layout/grid/utilities.
   This file contains the brand tokens and reusable sections
   used by the HTML prototype before converting it into React components.
   ========================================================= */

/* ---------- 1. Brand tokens ---------- */
:root {
  /* Brand palette extracted from the supplied design (PNG) screens */
  --color-primary: #c2202f;       /* main red – CTA / badges / accents   */
  --color-primary-dark: #9c1924;  /* hover state for red elements        */
  --color-gold: #cda15c;          /* gold – stats numbers / footer accents */
  --color-dark: #1c1a19;          /* headings / strong text              */
  --color-text: #4a4742;          /* body paragraphs                     */
  --color-muted: #847f78;         /* secondary / caption text            */
  --color-bg-soft: #f8f7f5;       /* navbar / hero card background       */
  --color-bg-section: #f2f0ec;    /* alternate section background        */
  --color-border: #e8e5e0;        /* hairline borders                    */
  --color-footer-bg: #15110f;     /* stats + footer dark background      */

  --radius-lg: 20px;
  --radius-md: 14px;
  --radius-pill: 50rem;

  --shadow-card: 0 10px 30px rgba(28, 26, 25, 0.08);
  --font-main: "Cairo", sans-serif;
  --navbar-offset: 78px;

  /* Fallback tokens for the inner-page header/footer partials (v18-*),
     which were originally scoped under an unused .home-v18 body class.
     Defining them globally here fixes buttons like the header CTA that
     were rendering with a transparent background on inner pages. */
  --v18-red: #b81f2d;
  --v18-red-dark: #8d1722;
  --v18-gold: #d5ad67;
  --v18-gold-soft: #ead4a9;
}

/* ---------- 2. Base ---------- */
html {
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--navbar-offset) + 12px);
  overflow-x: hidden; /* guards against any accidental sideways scroll on mobile */
}

body {
  font-family: var(--font-main);
  color: var(--color-text);
  background-color: #fff;
  overflow-x: hidden;
  max-width: 100vw;
  padding-top: var(--navbar-offset);
}

/* The public pages (home-v24 + the v20/v21/v22 inner-page templates) each
   size their own hero section to clear the fixed navbar, so the generic
   --navbar-offset padding above was stacking on top of that and leaving a
   dead empty strip above the header on every page. Zero it out here. */
body.home-v24,
body.v20-inner-page,
body.v21-inner-page,
body.v22-inner-page {
  padding-top: 0;
}

h1, h2, h3, h4, h5, .section-heading {
  font-family: var(--font-main);
  font-weight: 800;
  color: var(--color-dark);
}

p {
  color: var(--color-text);
  line-height: 1.9;
}

img { max-width: 100%; height: auto; } /* prevents any oversized image from forcing horizontal scroll */

/* Reusable "eyebrow" label used above every section heading (—— title) */
.section-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--color-primary);
  font-weight: 700;
  font-size: 0.95rem;
  margin-bottom: 14px;
}
.section-eyebrow::before {
  content: "";
  width: 34px;
  height: 2px;
  background-color: var(--color-primary);
  display: inline-block;
}

.section-heading {
  font-size: clamp(1.9rem, 3vw, 2.6rem);
  line-height: 1.35;
}

.text-gold { color: var(--color-gold) !important; }
.bg-soft   { background-color: var(--color-bg-soft) !important; }
.bg-section{ background-color: var(--color-bg-section) !important; }

/* ---------- 3. Buttons ---------- */
.btn-brand,
.btn-more,
.link-underline-brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  background-color: var(--color-primary);
  border: 1px solid var(--color-primary);
  color: #fff;
  font-weight: 700;
  border-radius: var(--radius-pill);
  padding: 0.6rem 1.5rem;
  text-decoration: none;
  line-height: 1.5;
  transition: all 0.25s ease;
}
.btn-brand:hover,
.btn-more:hover,
.link-underline-brand:hover {
  background-color: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
  color: #fff;
}

.btn-gold {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  color: #fff;
  font-weight: 700;
  border-radius: var(--radius-pill);
  padding: 0.75rem 2rem;
  transition: all 0.25s ease;
}
.btn-gold:hover {
  background-color: var(--color-primary-dark);
  border-color: var(--color-primary-dark);
  color: #fff;
}

.btn-outline-light-pill {
  border: 1px solid rgba(255, 255, 255, 0.5);
  color: #fff;
  border-radius: var(--radius-pill);
  font-weight: 700;
  padding: 0.75rem 2rem;
  transition: all 0.25s ease;
}
.btn-outline-light-pill:hover {
  background-color: rgba(255, 255, 255, 0.12);
  color: #fff;
}

/* Small circular "read more" link used across sections */
.btn-more { font-size: 0.92rem; }
.btn-more .bi { font-size: 0.85rem; }

/* Underlined text link used inside cards (التفاصيل / اقرأ المزيد) */
.link-underline-brand { font-size: 0.95rem; }

/* ---------- 4. Navbar ---------- */

.site-navbar {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
  background-color: rgba(248, 247, 245, 0.98);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  box-shadow: 0 8px 24px rgba(28, 26, 25, 0.08);
  backdrop-filter: blur(10px);
}

/* Logo is now a small horse emblem rather than a wide wordmark */
.site-navbar .navbar-brand { padding: 0; }
.site-navbar .navbar-brand img {
  height: 52px;
  width: 52px;
  object-fit: contain;
  border-radius: 50%;
  border: 2px solid var(--color-gold);
}

.site-navbar .nav-link {
  font-weight: 600;
  color: var(--color-dark);
  padding-inline: 0.85rem;
  position: relative;
}
.site-navbar .nav-link:hover,
.site-navbar .nav-link.active { color: var(--color-primary); }


.btn-lang-switch {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 46px;
  min-height: 43px;
  padding: 0.45rem 0.9rem;
  border: 1px solid rgba(205, 161, 92, 0.55);
  border-radius: var(--radius-pill);
  color: var(--color-primary);
  background-color: #fff;
  font-size: 0.92rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0.03em;
  box-shadow: 0 8px 18px rgba(28, 26, 25, 0.06);
  transition: all 0.25s ease;
}
.btn-lang-switch:hover,
.btn-lang-switch:focus {
  border-color: var(--color-primary);
  color: #fff;
  background-color: var(--color-primary);
  box-shadow: 0 10px 22px rgba(194, 32, 47, 0.18);
}

/* Services dropdown */
.site-navbar .dropdown-hover { position: relative; }
.site-navbar .dropdown-menu {
  border: none;
  border-radius: var(--radius-md);
  box-shadow: var(--shadow-card);
  padding: 0.5rem;
  margin-top: 0;
}
.site-navbar .dropdown-item {
  border-radius: 8px;
  font-weight: 600;
  padding: 0.6rem 1rem;
}
.site-navbar .dropdown-item:hover {
  background-color: var(--color-bg-section);
  color: var(--color-primary);
}

/* Desktop only: open "الخدمات" on hover instead of click */
@media (min-width: 992px) {
  .site-navbar .dropdown-hover::after {
    content: "";
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    height: 14px;
  }
  .site-navbar .dropdown-hover .dropdown-menu {
    display: block;
    top: 100%;
    right: 0;
    opacity: 0;
    visibility: hidden;
    transform: translateY(10px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
    pointer-events: none;
  }
  .site-navbar .dropdown-hover:hover .dropdown-menu,
  .site-navbar .dropdown-hover:focus-within .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(8px);
    pointer-events: auto;
  }
}

/* Offcanvas mobile menu */
.mobile-offcanvas { width: 86%; max-width: 360px; }
.mobile-offcanvas .nav-link {
  font-weight: 700;
  color: var(--color-dark);
  padding: 0.85rem 0.25rem;
  border-bottom: 1px solid var(--color-border);
}
.mobile-offcanvas .accordion-button {
  font-weight: 700;
  box-shadow: none;
  padding: 0.85rem 0.25rem;
}
.mobile-offcanvas .accordion-button:not(.collapsed) { color: var(--color-primary); background: transparent; }
.mobile-offcanvas .accordion-item,
.mobile-offcanvas .accordion-button { background: transparent; border: none; }
.mobile-offcanvas .accordion-body { padding-inline-start: 0.75rem; }

/* ---------- 5. Hero ---------- */
.hero-section {
  position: relative;
  min-height: 92vh;
  display: flex;
  align-items: center;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.hero-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(10, 8, 7, 0.75) 10%, rgba(10, 8, 7, 0.25) 60%, rgba(10, 8, 7, 0.55) 100%);
}
.hero-section .container { position: relative; z-index: 2; }

.hero-frame {
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: var(--radius-lg);
  padding: clamp(1.5rem, 3vw, 3rem);
}

.hero-eyebrow {
  color: #fff;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
.hero-eyebrow::before {
  content: "";
  width: 34px;
  height: 2px;
  background-color: var(--color-primary);
}

.hero-title {
  color: #fff;
  font-weight: 900;
  font-size: clamp(2.4rem, 5vw, 4rem);
  line-height: 1.25;
}

.hero-text { color: rgba(255, 255, 255, 0.85); font-size: 1.05rem; }

/* ---------- 6. About / Mission image blocks ---------- */
.media-card { position: relative; border-radius: var(--radius-lg); overflow: hidden; }
.media-card img { width: 100%; height: 100%; object-fit: cover; display: block; }

.media-card-badge {
  position: absolute;
  bottom: 24px;
  right: 24px;
  background-color: var(--color-primary);
  color: #fff;
  border-radius: var(--radius-md);
  padding: 1rem 1.6rem;
  text-align: center;
}
.media-card-badge strong { display: block; font-size: 1.05rem; font-weight: 800; }
.media-card-badge span { display: block; font-size: 0.8rem; opacity: 0.85; }

/* ---------- 7. Stats strip ---------- */
.stats-section {
  background-color: var(--color-footer-bg);
  background-image: radial-gradient(circle at 15% 20%, rgba(205, 161, 92, 0.18), transparent 45%);
}
.stat-card {
  background-color: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--radius-md);
  padding: 1.8rem 1rem;
  text-align: center;
  height: 100%;
}
.stat-card .stat-number {
  font-weight: 900;
  font-size: clamp(2rem, 3vw, 2.6rem);
  color: var(--color-gold);
}
.stat-card .stat-label { color: #e7e3de; font-weight: 600; font-size: 0.95rem; }

/* ---------- 8. Service / Experience / News cards ---------- */
.feature-card {
  background-color: #fff;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
  overflow: visible; /* was "hidden" — that clipped the overlapping number badge in half */
  height: 100%;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.feature-card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(28, 26, 25, 0.14); }

.feature-card .feature-media {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden; /* clips only the hover zoom on the image itself */
  border-radius: var(--radius-lg) var(--radius-lg) 0 0; /* top corners only, since the card no longer clips */
}
.feature-card .feature-media img {
  width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease;
}
.feature-card:hover .feature-media img { transform: scale(1.06); }

/* Numbered badge overlapping the image corner (services section) */
.feature-index {
  position: absolute;
  bottom: 16px;
  right: 16px;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  color: #fff;
  font-weight: 900;
  border: 3px solid rgba(255, 255, 255, 0.9);
  border-radius: 14px;
  z-index: 2;
  box-shadow: 0 10px 22px rgba(28, 26, 25, 0.22);
}

.feature-body {
  padding: 1.6rem 1.4rem;
  border-radius: 0 0 var(--radius-lg) var(--radius-lg); /* bottom corners, matching the card's own radius */
  background-color: #fff;
}
.feature-tag { color: var(--color-primary); font-weight: 700; font-size: 0.85rem; display: block; margin-bottom: 4px; }
.feature-title { font-weight: 800; font-size: 1.15rem; margin-bottom: 0.6rem; }
.feature-desc { font-size: 0.92rem; color: var(--color-muted); margin-bottom: 0; }

/* ---------- 9. Important notice box ---------- */
.notice-box {
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  padding: clamp(1.5rem, 3vw, 3rem);
}
.notice-box p { color: var(--color-text); margin-bottom: 0.5rem; }
.notice-box p strong { color: var(--color-dark); }

/* ---------- 10. Footer ---------- */
.site-footer {
  position: relative;
  background-color: var(--color-footer-bg);
  background-size: cover;
  background-position: center;
  overflow: hidden;
  padding-top: clamp(3rem, 8vw, 6rem);
}
.site-footer::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(10, 8, 7, 0.65) 30%, rgba(10, 8, 7, 0.15) 75%);
}
.site-footer .container { position: relative; z-index: 2; }

.footer-eyebrow {
  color: var(--color-gold);
  font-weight: 800;
  letter-spacing: 1px;
}

.footer-title {
  color: #fff;
  font-weight: 900;
  font-size: clamp(1.8rem, 3.4vw, 2.6rem);
  line-height: 1.3;
}

.footer-glass {
  background-color: rgba(20, 16, 14, 0.55);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--radius-lg);
  padding: 2rem;
}
.footer-glass h6 { color: var(--color-gold); font-weight: 800; margin-bottom: 1rem; }
.footer-glass p, .footer-glass a {
  color: #e9e6e1;
  font-size: 0.92rem;
  text-decoration: none;
}
.footer-glass ul { list-style: none; padding: 0; margin: 0; }
.footer-glass ul li { margin-bottom: 0.6rem; }
.footer-glass ul li a:hover { color: var(--color-gold); }
.footer-glass hr { border-color: rgba(255, 255, 255, 0.15); }

.footer-bottom {
  position: relative;
  z-index: 2;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  padding: 1.2rem 0;
  color: #cfc9c2;
  font-size: 0.85rem;
}

/* Fixed floating buttons */
.whatsapp-fab {
  position: fixed;
  bottom: 24px;
  left: 24px;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background-color: #25d366;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
  z-index: 1040;
}
.whatsapp-fab:hover { color: #fff; filter: brightness(1.05); }

.scroll-top-btn {
  position: fixed;
  bottom: 24px;
  right: 24px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #fff;
  color: var(--color-dark);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
  z-index: 1040;
}
.scroll-top-btn:hover { color: var(--color-primary); }

/* ---------- 11. Responsive tweaks ---------- */
@media (max-width: 991.98px) {
  .hero-section { min-height: 80vh; text-align: center; }
  .hero-frame { border: none; padding: 0; }
  .hero-eyebrow, .section-eyebrow { justify-content: center; }
  .media-card-badge { right: 16px; bottom: 16px; padding: 0.8rem 1.2rem; }
}

@media (max-width: 575.98px) {
  .footer-glass { padding: 1.4rem; }
  .whatsapp-fab, .scroll-top-btn { width: 46px; height: 46px; font-size: 1.25rem; }
}

/* ---------- 12. Shared media/background helpers ---------- */
.home-hero {
  background-image: url("https://images.unsplash.com/photo-1733065334817-b994423ecf06?auto=format&fit=crop&w=1800&q=80");
}

.footer-bg {
  background-image: url("https://images.unsplash.com/photo-1733065334817-b994423ecf06?auto=format&fit=crop&w=1800&q=80");
}

.media-ratio-4x3 { aspect-ratio: 4 / 3; }
.mobile-logo { height: 44px; }

/* ---------- 13. Inner pages ---------- */
.page-hero {
  position: relative;
  min-height: 68vh;
  display: flex;
  align-items: center;
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(10, 8, 7, 0.78) 10%, rgba(10, 8, 7, 0.25) 60%, rgba(10, 8, 7, 0.55) 100%);
}
.page-hero .container { position: relative; z-index: 2; }
.page-hero-card {
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: var(--radius-lg);
  padding: clamp(1.5rem, 3vw, 3rem);
}
.page-hero-training {
  background-image: url("https://images.unsplash.com/photo-1733066934108-44fb94e840b4?auto=format&fit=crop&w=1800&q=80");
}
.page-hero-stabling {
  background-image: url("https://images.unsplash.com/photo-1559823291-4830c119d877?auto=format&fit=crop&w=1800&q=80");
}
.page-hero-archery {
  background-image: url("https://images.unsplash.com/photo-1733065334817-b994423ecf06?auto=format&fit=crop&w=1800&q=80");
}
.page-hero-lounges {
  background-image: url("https://images.unsplash.com/photo-1718730570868-520d27735256?auto=format&fit=crop&w=1800&q=80");
}

.info-card,
.package-card,
.special-panel,
.cta-box,
.contract-form,
.form-section-card,
.care-box {
  background-color: #fff;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-card);
}

.info-card { padding: 2rem; }
.info-icon {
  width: 54px;
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 16px;
  color: #fff;
  background: linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));
  font-size: 1.4rem;
  margin-bottom: 1.2rem;
}
.info-card h3 {
  font-size: 1.1rem;
  margin-bottom: 0.7rem;
}
.info-card p { margin-bottom: 0; color: var(--color-muted); }

.cta-box,
.special-panel {
  padding: clamp(1.5rem, 3vw, 3rem);
}

/* ---------- 14. Training page ---------- */
.package-card {
  padding: clamp(1.5rem, 3vw, 2.4rem);
}
.package-badge {
  display: inline-flex;
  align-items: center;
  color: #fff;
  background-color: var(--color-primary);
  border-radius: var(--radius-pill);
  padding: 0.35rem 1rem;
  font-weight: 700;
  font-size: 0.85rem;
  margin-bottom: 1rem;
}
.package-card h3 {
  font-size: 1.7rem;
  margin-bottom: 1.4rem;
}
.package-meta {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
  margin-bottom: 1.6rem;
}
.package-meta div {
  background-color: var(--color-bg-soft);
  border-radius: var(--radius-md);
  padding: 1rem;
}
.package-meta span,
.package-meta strong { display: block; }
.package-meta span {
  color: var(--color-muted);
  font-size: 0.82rem;
  margin-bottom: 0.35rem;
}
.package-meta strong { color: var(--color-dark); font-weight: 800; }

/* ---------- 15. Stabling form ---------- */
.contract-form { padding: clamp(1.2rem, 3vw, 2.4rem); }
.contract-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 1.4rem;
  border-bottom: 1px solid var(--color-border);
  margin-bottom: 1.4rem;
}
.contract-header span,
.contract-header strong {
  color: var(--color-primary);
  font-weight: 800;
}
.contract-header h3 { margin: 0.35rem 0 0; }
.form-section-card {
  padding: clamp(1.2rem, 2vw, 1.8rem);
  margin-bottom: 1.2rem;
  box-shadow: none;
}
.form-section-title {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  margin-bottom: 1.2rem;
}
.form-section-title span {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background-color: var(--color-primary);
  border-radius: 14px;
  font-weight: 900;
}
.form-section-title h3 {
  margin-bottom: 0;
  font-size: 1.25rem;
}
.contract-form .form-label {
  font-weight: 700;
  color: var(--color-dark);
}
.contract-form .form-control,
.contract-form .form-select {
  border-color: var(--color-border);
  border-radius: var(--radius-md);
  padding: 0.8rem 1rem;
}
.contract-form .form-control:focus,
.contract-form .form-select:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 0 0.2rem rgba(194, 32, 47, 0.12);
}
.care-box {
  padding: 1.4rem;
  box-shadow: none;
  background-color: var(--color-bg-soft);
}
.care-box h4 {
  font-size: 1.05rem;
  margin-bottom: 0.85rem;
}
.care-box ul {
  padding-inline-start: 1.1rem;
  margin-bottom: 0;
  color: var(--color-muted);
  line-height: 1.9;
}
.extra-option {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.7rem 0.8rem;
  align-items: center;
  width: 100%;
  min-height: 100%;
  background-color: var(--color-bg-soft);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: 1rem;
  cursor: pointer;
}
.extra-option span { color: var(--color-dark); font-weight: 700; }
.extra-option strong {
  grid-column: 2;
  color: var(--color-primary);
  font-weight: 900;
}
.form-submit-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-top: 0.6rem;
}
.form-submit-box p { color: var(--color-muted); }

@media (max-width: 991.98px) {
  .page-hero { min-height: 62vh; text-align: center; }
  .page-hero-card { border: none; padding: 0; }
}

@media (max-width: 575.98px) {
  .package-meta { grid-template-columns: 1fr; }
  .contract-header { align-items: flex-start; flex-direction: column; }
}

/* =========================================================
   16. Homepage v1.5 refresh
   CSS-only motion and richer home composition.
   ========================================================= */
.home-page {
  --home-red: #ba1f2d;
  --home-red-dark: #8f1721;
  --home-ink: #171411;
  --home-cream: #f6f2eb;
  --home-gold-soft: #d9b374;
}

.home-page .site-navbar {
  background: rgba(248, 247, 245, 0.93);
  border-bottom: 1px solid rgba(205, 161, 92, 0.16);
}

.home-page .site-navbar .nav-link::after {
  content: "";
  position: absolute;
  right: 50%;
  bottom: 0.15rem;
  width: 0;
  height: 2px;
  background: var(--color-primary);
  border-radius: 10px;
  transition: width .28s ease, right .28s ease;
}
.home-page .site-navbar .nav-link:hover::after,
.home-page .site-navbar .nav-link.active::after {
  width: 22px;
  right: calc(50% - 11px);
}

.home-hero-v15 {
  min-height: calc(100vh - var(--navbar-offset));
  background-position: center 42%;
  isolation: isolate;
}
.home-hero-v15::before {
  background:
    linear-gradient(90deg, rgba(7, 5, 4, .88) 0%, rgba(7, 5, 4, .64) 34%, rgba(7, 5, 4, .23) 70%, rgba(7, 5, 4, .45) 100%);
  z-index: -2;
}
.home-hero-v15::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.04) 55%, rgba(0,0,0,.62) 100%);
  z-index: -1;
  pointer-events: none;
}
.home-hero-v15 {
  animation: heroBackgroundBreath 16s ease-in-out infinite alternate;
}
.min-vh-75 { min-height: 75vh; }

.hero-content-v15 {
  max-width: 690px;
  padding-block: clamp(4rem, 9vw, 8rem);
}
.hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: .6rem;
  padding: .55rem 1rem;
  margin-bottom: 1.4rem;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: var(--radius-pill);
  color: #fff;
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(8px);
  font-size: .88rem;
  font-weight: 700;
}
.hero-kicker .bi { color: var(--home-gold-soft); }
.home-hero-v15 .hero-title {
  max-width: 650px;
  margin-bottom: 1.3rem;
  font-size: clamp(2.8rem, 6vw, 5.3rem);
  line-height: 1.12;
  letter-spacing: -.035em;
  text-wrap: balance;
}
.home-hero-v15 .hero-text {
  max-width: 610px;
  font-size: clamp(1rem, 1.5vw, 1.18rem);
  line-height: 2;
  margin-bottom: 1.8rem;
}
.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
  margin-bottom: 2rem;
}
.btn-brand-lg { padding: .85rem 1.7rem; min-height: 52px; }
.btn-hero-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .55rem;
  min-height: 52px;
  padding: .8rem 1.5rem;
  border: 1px solid rgba(255,255,255,.3);
  border-radius: var(--radius-pill);
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(8px);
  transition: transform .25s ease, background .25s ease, border-color .25s ease;
}
.btn-hero-ghost:hover {
  color: #fff;
  transform: translateY(-2px);
  background: rgba(255,255,255,.13);
  border-color: rgba(255,255,255,.55);
}
.hero-trust {
  display: flex;
  flex-wrap: wrap;
  gap: .85rem 1.3rem;
}
.hero-trust-item {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  color: rgba(255,255,255,.82);
  font-size: .86rem;
  font-weight: 600;
}
.hero-trust-item .bi { color: var(--home-gold-soft); }

.hero-orbit {
  position: absolute;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 50%;
  pointer-events: none;
}
.hero-orbit-one {
  width: 390px;
  height: 390px;
  left: -90px;
  top: 8%;
  animation: orbitFloat 9s ease-in-out infinite;
}
.hero-orbit-two {
  width: 190px;
  height: 190px;
  left: 13%;
  bottom: 8%;
  animation: orbitFloat 7s ease-in-out infinite reverse;
}
.hero-scroll-cue {
  position: absolute;
  right: 50%;
  bottom: 24px;
  transform: translateX(50%);
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: .25rem;
  color: rgba(255,255,255,.78);
  text-decoration: none;
  font-size: .74rem;
  letter-spacing: .06em;
  z-index: 3;
  animation: scrollCue 2s ease-in-out infinite;
}
.hero-scroll-cue:hover { color: #fff; }

.hero-stagger-1,
.hero-stagger-2,
.hero-stagger-3,
.hero-stagger-4,
.hero-stagger-5 {
  opacity: 0;
  transform: translateY(22px);
  animation: heroRise .85s cubic-bezier(.2,.8,.2,1) forwards;
}
.hero-stagger-1 { animation-delay: .10s; }
.hero-stagger-2 { animation-delay: .22s; }
.hero-stagger-3 { animation-delay: .36s; }
.hero-stagger-4 { animation-delay: .50s; }
.hero-stagger-5 { animation-delay: .64s; }

.brand-ticker {
  position: relative;
  overflow: hidden;
  background: var(--home-red);
  color: #fff;
  padding: .78rem 0;
}
.brand-ticker::before,
.brand-ticker::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100px;
  z-index: 2;
  pointer-events: none;
}
.brand-ticker::before { right: 0; background: linear-gradient(90deg, transparent, var(--home-red)); }
.brand-ticker::after { left: 0; background: linear-gradient(-90deg, transparent, var(--home-red)); }
.ticker-track {
  display: flex;
  align-items: center;
  width: max-content;
  gap: 1.4rem;
  white-space: nowrap;
  animation: tickerMove 28s linear infinite;
}
.ticker-track span { font-size: .88rem; font-weight: 800; }
.ticker-track .bi { font-size: .45rem; color: #f1cf95; }

.home-section { position: relative; }
.display-home-heading {
  max-width: 780px;
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1.28;
  letter-spacing: -.025em;
}
.home-lead,
.section-intro {
  color: #716b63;
  font-size: 1.02rem;
  line-height: 2;
}
.section-intro { max-width: 560px; }

.about-visual-wrap { position: relative; padding: 0 0 2.8rem 2.5rem; }
.about-main-media {
  aspect-ratio: 5 / 6;
  border-radius: 28px;
  box-shadow: 0 28px 70px rgba(28,26,25,.17);
}
.about-main-media::after {
  content: "";
  position: absolute;
  inset: 16px;
  border: 1px solid rgba(255,255,255,.36);
  border-radius: 20px;
  pointer-events: none;
}
.about-floating-card {
  position: absolute;
  left: 0;
  bottom: 0;
  min-width: 235px;
  display: flex;
  align-items: center;
  gap: .9rem;
  padding: 1rem 1.2rem;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(205,161,92,.28);
  border-radius: 18px;
  box-shadow: 0 16px 45px rgba(28,26,25,.14);
  animation: floatingCard 5s ease-in-out infinite;
}
.about-floating-icon {
  width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 46px;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, var(--home-red), var(--home-red-dark));
  font-size: 1.25rem;
}
.about-floating-card strong,
.about-floating-card small { display: block; }
.about-floating-card strong { color: var(--home-ink); margin-bottom: .2rem; }
.about-floating-card small { color: var(--color-muted); font-size: .76rem; }
.about-red-stamp {
  position: absolute;
  top: 34px;
  right: -24px;
  width: 98px;
  height: 98px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #fff;
  background: var(--home-red);
  border: 5px solid #fff;
  box-shadow: 0 14px 35px rgba(186,31,45,.28);
  font-weight: 900;
  font-size: 1rem;
  transform: rotate(-7deg);
}
.about-red-stamp span { font-size: .48rem; font-weight: 700; letter-spacing: .08em; }
.about-points { display: grid; gap: 1rem; }
.about-point { display: grid; grid-template-columns: 42px 1fr; gap: .9rem; align-items: start; }
.about-point > span {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 13px;
  background: rgba(186,31,45,.09);
  color: var(--home-red);
  font-size: 1.1rem;
}
.about-point strong,
.about-point small { display: block; }
.about-point strong { color: var(--home-ink); margin-bottom: .2rem; }
.about-point small { color: var(--color-muted); line-height: 1.8; }

.stats-v15 {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 18%, rgba(186,31,45,.22), transparent 34%),
    radial-gradient(circle at 18% 70%, rgba(205,161,92,.16), transparent 38%),
    #15110f;
}
.stats-v15 .stat-card {
  position: relative;
  overflow: hidden;
  padding: 1.5rem 1rem;
  transition: transform .3s ease, border-color .3s ease, background .3s ease;
}
.stats-v15 .stat-card:hover {
  transform: translateY(-6px);
  border-color: rgba(205,161,92,.3);
  background: rgba(255,255,255,.07);
}
.stats-v15 .stat-icon {
  width: 44px;
  height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: .65rem;
  border-radius: 13px;
  color: var(--home-gold-soft);
  background: rgba(255,255,255,.06);
}
.stats-v15 .stat-number {
  font-size: clamp(1.35rem, 2.2vw, 1.75rem);
  color: #fff;
  margin-bottom: .2rem;
}

.service-card-v15 {
  display: block;
  height: 100%;
  color: inherit;
  text-decoration: none;
  background: #fff;
  border: 1px solid var(--color-border);
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 12px 34px rgba(28,26,25,.07);
  transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, border-color .35s ease;
}
.service-card-v15:hover {
  transform: translateY(-10px);
  box-shadow: 0 24px 60px rgba(28,26,25,.14);
  border-color: rgba(186,31,45,.18);
  color: inherit;
}
.service-card-media {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}
.service-card-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 52%, rgba(12,9,8,.42) 100%);
}
.service-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.2,.8,.2,1);
}
.service-card-v15:hover .service-card-media img { transform: scale(1.075); }
.service-number {
  position: absolute;
  z-index: 2;
  top: 16px;
  left: 16px;
  min-width: 46px;
  height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 14px;
  color: #fff;
  background: rgba(186,31,45,.92);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,.28);
  font-weight: 900;
}
.service-card-body { position: relative; padding: 1.55rem 1.4rem 1.45rem; }
.service-icon {
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: -42px;
  margin-bottom: .9rem;
  position: relative;
  z-index: 3;
  border-radius: 15px;
  background: #fff;
  color: var(--home-red);
  border: 1px solid var(--color-border);
  box-shadow: 0 10px 24px rgba(28,26,25,.12);
  font-size: 1.2rem;
}
.service-card-body h3 { font-size: 1.15rem; margin-bottom: .55rem; }
.service-card-body p { color: var(--color-muted); font-size: .9rem; margin-bottom: 1rem; min-height: 3.4em; }
.service-link { display: inline-flex; align-items: center; gap: .4rem; color: var(--home-red); font-weight: 800; font-size: .86rem; }
.service-link .bi { transition: transform .25s ease; }
.service-card-v15:hover .service-link .bi { transform: translateX(-4px); }

.booking-flow-section {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #f7f3ed, #fff);
}
.booking-flow-section::before {
  content: "";
  position: absolute;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  left: -230px;
  top: 8%;
  background: radial-gradient(circle, rgba(186,31,45,.08), transparent 68%);
}
.booking-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}
.booking-steps::before {
  content: "";
  position: absolute;
  top: 43px;
  right: 10%;
  left: 10%;
  height: 1px;
  background: linear-gradient(90deg, rgba(186,31,45,.15), rgba(205,161,92,.5), rgba(186,31,45,.15));
}
.booking-step {
  position: relative;
  z-index: 1;
  text-align: center;
  padding: 1.4rem 1rem 1.1rem;
}
.booking-step-no {
  position: absolute;
  top: 0;
  left: 14px;
  color: rgba(186,31,45,.22);
  font-weight: 900;
  font-size: 1.2rem;
}
.booking-step-icon {
  width: 86px;
  height: 86px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.2rem;
  border-radius: 50%;
  color: var(--home-red);
  background: #fff;
  border: 1px solid rgba(186,31,45,.16);
  box-shadow: 0 12px 30px rgba(28,26,25,.08);
  font-size: 1.55rem;
  transition: transform .3s ease, background .3s ease, color .3s ease;
}
.booking-step:hover .booking-step-icon { transform: translateY(-6px) rotate(-3deg); background: var(--home-red); color: #fff; }
.booking-step h3 { font-size: 1.05rem; margin-bottom: .45rem; }
.booking-step p { color: var(--color-muted); font-size: .87rem; margin-bottom: 0; }

.signature-section { background: #fff; }
.signature-card {
  overflow: hidden;
  border-radius: 30px;
  background: var(--home-ink);
  box-shadow: 0 28px 80px rgba(28,26,25,.16);
}
.signature-media { min-height: 500px; }
.signature-media img { width: 100%; height: 100%; min-height: 500px; object-fit: cover; display: block; }
.signature-content { padding: clamp(2rem, 5vw, 4.4rem); }
.signature-content .section-heading { color: #fff; }
.signature-content p { color: rgba(255,255,255,.68); }
.signature-content .section-eyebrow { color: var(--home-gold-soft); }
.signature-content .section-eyebrow::before { background: var(--home-gold-soft); }
.signature-list { display: grid; gap: .85rem; margin-top: 1.4rem; }
.signature-list span { display: flex; align-items: center; gap: .65rem; color: rgba(255,255,255,.88); font-weight: 700; }
.signature-list .bi { color: var(--home-gold-soft); }

.gallery-section { background: var(--home-cream); }
.gallery-grid {
  display: grid;
  grid-template-columns: 1.25fr 1fr 1fr;
  grid-template-rows: 260px 260px;
  gap: 1rem;
}
.gallery-item {
  position: relative;
  overflow: hidden;
  margin: 0;
  border-radius: 22px;
  min-height: 0;
}
.gallery-item-tall { grid-row: 1 / 3; }
.gallery-item-wide { grid-column: 2 / 4; }
.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .7s cubic-bezier(.2,.8,.2,1), filter .5s ease;
}
.gallery-item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(8,6,5,.58) 100%);
  transition: background .35s ease;
}
.gallery-item figcaption {
  position: absolute;
  z-index: 2;
  right: 20px;
  bottom: 18px;
  color: #fff;
  font-weight: 800;
}
.gallery-item:hover img { transform: scale(1.065); filter: saturate(1.08); }
.gallery-item:hover::after { background: linear-gradient(180deg, transparent 38%, rgba(8,6,5,.7) 100%); }

.home-cta-card {
  position: relative;
  overflow: hidden;
  border-radius: 30px;
  padding: clamp(2rem, 5vw, 4rem);
  color: #fff;
  background: linear-gradient(135deg, var(--home-red-dark), var(--home-red));
  box-shadow: 0 25px 70px rgba(143,23,33,.25);
}
.home-cta-card h2 { color: #fff; font-size: clamp(1.8rem, 4vw, 3rem); margin: .45rem 0 .7rem; }
.home-cta-card p { color: rgba(255,255,255,.76); margin-bottom: 0; }
.home-cta-eyebrow { color: #f1cf95; font-weight: 800; }
.home-cta-glow {
  position: absolute;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  left: -90px;
  top: -140px;
  background: rgba(255,255,255,.12);
  filter: blur(4px);
  animation: ctaGlow 6s ease-in-out infinite alternate;
}
.btn-light-pill,
.btn-whatsapp-dark {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .45rem;
  min-height: 48px;
  padding: .72rem 1.35rem;
  border-radius: var(--radius-pill);
  text-decoration: none;
  font-weight: 800;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.btn-light-pill { background: #fff; color: var(--home-red-dark); border: 1px solid #fff; }
.btn-whatsapp-dark { background: rgba(17,14,12,.72); color: #fff; border: 1px solid rgba(255,255,255,.14); }
.btn-light-pill:hover,
.btn-whatsapp-dark:hover { transform: translateY(-3px); box-shadow: 0 10px 28px rgba(0,0,0,.16); }
.btn-light-pill:hover { color: var(--home-red-dark); }
.btn-whatsapp-dark:hover { color: #fff; background: rgba(17,14,12,.88); }

.notice-box-v15 {
  display: flex;
  align-items: center;
  gap: 1.3rem;
  background: #fff;
  box-shadow: 0 16px 45px rgba(28,26,25,.06);
}
.notice-icon {
  width: 62px;
  height: 62px;
  flex: 0 0 62px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  color: var(--home-red);
  background: rgba(186,31,45,.08);
  font-size: 1.45rem;
}

.home-page .whatsapp-fab::after {
  content: "";
  position: absolute;
  inset: -6px;
  border: 1px solid rgba(37,211,102,.38);
  border-radius: 50%;
  animation: fabPulse 2.2s ease-out infinite;
}
.home-page .whatsapp-fab { transition: transform .25s ease; }
.home-page .whatsapp-fab:hover { transform: translateY(-4px) scale(1.04); }
.home-page .scroll-top-btn { transition: transform .25s ease, color .25s ease; }
.home-page .scroll-top-btn:hover { transform: translateY(-4px); }

/* CSS-only viewport reveals in browsers supporting scroll-driven animations. */
@supports (animation-timeline: view()) {
  .reveal {
    opacity: 0;
    transform: translateY(36px) scale(.985);
    animation: revealUp linear both;
    animation-timeline: view();
    animation-range: entry 8% cover 30%;
  }
  .reveal-right { transform: translateX(42px); animation-name: revealSide; }
  .reveal-left { transform: translateX(-42px); animation-name: revealSide; }
}

@keyframes heroRise {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}
@keyframes heroBackgroundBreath {
  from { background-size: 100% auto; }
  to { background-size: 106% auto; }
}
@keyframes orbitFloat {
  0%,100% { transform: translate3d(0,0,0) rotate(0); }
  50% { transform: translate3d(18px,-14px,0) rotate(8deg); }
}
@keyframes scrollCue {
  0%,100% { transform: translateX(50%) translateY(0); }
  50% { transform: translateX(50%) translateY(6px); }
}
@keyframes tickerMove {
  from { transform: translateX(0); }
  to { transform: translateX(50%); }
}
@keyframes floatingCard {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}
@keyframes ctaGlow {
  from { transform: translate(0,0) scale(1); }
  to { transform: translate(50px,45px) scale(1.2); }
}
@keyframes fabPulse {
  0% { transform: scale(.92); opacity: .7; }
  75%,100% { transform: scale(1.35); opacity: 0; }
}
@keyframes revealUp {
  to { opacity: 1; transform: translateY(0) scale(1); }
}
@keyframes revealSide {
  to { opacity: 1; transform: translateX(0); }
}

@media (max-width: 1199.98px) {
  .booking-steps { grid-template-columns: repeat(2, 1fr); }
  .booking-steps::before { display: none; }
}

@media (max-width: 991.98px) {
  .home-hero-v15 { min-height: 82vh; text-align: right; }
  .home-hero-v15 .hero-title { font-size: clamp(2.5rem, 9vw, 4.2rem); }
  .hero-content-v15 { padding-block: 4.5rem 6rem; }
  .hero-orbit { display: none; }
  .home-page .hero-eyebrow,
  .home-page .section-eyebrow { justify-content: flex-start; }
  .about-visual-wrap { padding-left: 1.4rem; }
  .about-red-stamp { right: -4px; }
  .signature-media,
  .signature-media img { min-height: 390px; }
  .gallery-grid { grid-template-columns: 1fr 1fr; grid-template-rows: 300px 220px 260px; }
  .gallery-item-tall { grid-row: 1 / 3; }
  .gallery-item-wide { grid-column: 1 / 3; }
  .notice-box-v15 { align-items: flex-start; }
}

@media (max-width: 767.98px) {
  .hero-actions > * { width: 100%; }
  .hero-trust { gap: .65rem 1rem; }
  .about-visual-wrap { padding: 0 0 2.2rem 1rem; }
  .about-floating-card { min-width: 205px; padding: .85rem 1rem; }
  .about-red-stamp { width: 82px; height: 82px; font-size: .9rem; }
  .booking-steps { grid-template-columns: 1fr 1fr; }
  .booking-step { padding-inline: .35rem; }
  .booking-step-icon { width: 72px; height: 72px; }
  .gallery-grid { grid-template-columns: 1fr; grid-template-rows: repeat(4, 260px); }
  .gallery-item-tall,
  .gallery-item-wide { grid-row: auto; grid-column: auto; }
  .notice-box-v15 { flex-direction: column; }
}

@media (max-width: 575.98px) {
  .home-hero-v15 { min-height: 78vh; }
  .home-hero-v15 .hero-title { font-size: 2.55rem; }
  .hero-kicker { font-size: .78rem; }
  .hero-trust { display: grid; grid-template-columns: 1fr 1fr; }
  .ticker-track { gap: 1rem; }
  .display-home-heading { font-size: 2rem; }
  .booking-steps { grid-template-columns: 1fr; gap: .2rem; }
  .booking-step { max-width: 330px; margin-inline: auto; }
  .signature-content { padding: 1.7rem; }
  .home-cta-card { border-radius: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    scroll-behavior: auto !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}

/* =========================================================
   Home v1.6
   ========================================================= */

.home-v16 {
  --v16-burgundy: #8f1f2d;
  --v16-burgundy-deep: #64131d;
  --v16-ink: #171311;
  --v16-sand: #efe5d6;
  --v16-cream: #fbf7f0;
  --v16-gold: #d7af6d;
  --v16-gold-soft: #edd4a6;
  --v16-line: rgba(143, 31, 45, 0.14);
}

.home-v16 .site-navbar .nav-link::after {
  content: "";
  position: absolute;
  right: .85rem;
  left: .85rem;
  bottom: .18rem;
  height: 2px;
  border-radius: 10px;
  background: var(--color-primary);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .25s ease;
}

.home-v16 .site-navbar .nav-link.active::after,
.home-v16 .site-navbar .nav-link:hover::after {
  transform: scaleX(1);
}

.home-v16 .site-navbar .dropdown-menu .dropdown-item::after { display: none; }

.home-hero-v16 {
  min-height: calc(100vh - var(--navbar-offset));
  padding: 0;
  overflow: hidden;
  background: #0e0b0a;
}

.home-hero-v16::before { display: none; }
.home-hero-v16 .hero-carousel,
.home-hero-v16 .carousel-inner,
.home-hero-v16 .carousel-item { min-height: calc(100vh - var(--navbar-offset)); }

.home-hero-v16 .hero-slide {
  position: relative;
  background-image: var(--hero-image);
  background-size: cover;
  background-position: center;
}

.home-hero-v16 .hero-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 75% 40%, rgba(194, 32, 47, .15), transparent 35%),
    linear-gradient(90deg, rgba(8, 6, 5, .88) 2%, rgba(8, 6, 5, .58) 47%, rgba(8, 6, 5, .28) 73%, rgba(8, 6, 5, .48) 100%);
}

.home-hero-v16 .hero-slide::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 140px;
  background: linear-gradient(180deg, transparent, rgba(8, 6, 5, .55));
}

.home-hero-v16 .hero-slide-container {
  position: relative;
  z-index: 3;
}

.home-hero-v16 .min-vh-75 { min-height: calc(100vh - var(--navbar-offset)); }

.hero-content-v16 {
  max-width: 670px;
  padding-block: 7rem 6rem;
  animation: heroV16In .8s ease both;
}

.home-hero-v16 .carousel-item:not(.active) .hero-content-v16 { animation: none; }

.home-hero-v16 .hero-kicker {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  padding: .52rem .85rem;
  margin-bottom: 1.25rem;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.08);
  color: var(--v16-gold-soft);
  border-radius: 999px;
  backdrop-filter: blur(12px);
  font-size: .84rem;
  font-weight: 800;
}

.home-hero-v16 .hero-title {
  max-width: 760px;
  margin-bottom: 1.15rem;
  font-size: clamp(2.35rem, 4.7vw, 4.45rem);
  line-height: 1.2;
  letter-spacing: -.035em;
}

.home-hero-v16 .hero-text {
  max-width: 640px;
  margin-bottom: 1.8rem;
  color: rgba(255,255,255,.78);
  font-size: clamp(.96rem, 1.4vw, 1.08rem);
  line-height: 2;
}

.hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; }
.btn-brand-lg { padding: .82rem 1.6rem; }

.btn-hero-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .5rem;
  padding: .82rem 1.45rem;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 999px;
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  background: rgba(255,255,255,.06);
  backdrop-filter: blur(10px);
  transition: all .25s ease;
}

.btn-hero-ghost:hover {
  color: #fff;
  border-color: rgba(255,255,255,.7);
  background: rgba(255,255,255,.14);
  transform: translateY(-2px);
}

.hero-indicators {
  justify-content: flex-start;
  margin: 0 auto 2.1rem;
  padding-inline: max(1rem, calc((100vw - 1320px) / 2));
  gap: .45rem;
  z-index: 11;
}

.hero-indicators [data-bs-target] {
  width: 34px;
  height: 4px;
  margin: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(255,255,255,.45);
  transition: width .25s ease, background .25s ease;
}

.hero-indicators .active { width: 64px; background: var(--v16-gold); }

.hero-control {
  top: auto;
  bottom: 1.35rem;
  width: 42px;
  height: 42px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%;
  opacity: 1;
  z-index: 12;
  background: rgba(17,13,11,.35);
  backdrop-filter: blur(8px);
}

.home-hero-v16 .carousel-control-prev { right: auto; left: max(1rem, calc((100vw - 1320px) / 2)); }
.home-hero-v16 .carousel-control-next { right: auto; left: calc(max(1rem, (100vw - 1320px) / 2) + 52px); }
.hero-control .bi { color: #fff; font-size: 1rem; }

.hero-visit-card {
  position: absolute;
  top: 1.35rem;
  left: max(1.25rem, calc((100vw - 1320px) / 2));
  z-index: 14;
  width: min(330px, calc(100vw - 2rem));
  padding: 1rem 1.05rem;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 20px;
  background: linear-gradient(145deg, rgba(20,15,13,.82), rgba(20,15,13,.58));
  box-shadow: 0 24px 70px rgba(0,0,0,.28);
  backdrop-filter: blur(18px);
  color: #fff;
  animation: visitCardFloat 5s ease-in-out infinite;
}

.visit-card-head {
  display: flex;
  align-items: center;
  gap: .8rem;
  padding-bottom: .75rem;
  border-bottom: 1px solid rgba(255,255,255,.12);
}

.visit-card-icon {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border-radius: 14px;
  color: #fff;
  background: linear-gradient(135deg, var(--color-primary), var(--v16-burgundy-deep));
}

.visit-card-head small,
.visit-card-head strong { display: block; }
.visit-card-head small { color: rgba(255,255,255,.58); font-size: .73rem; }
.visit-card-head strong { margin-top: .1rem; font-size: .95rem; }

.visit-time {
  display: flex;
  align-items: center;
  gap: .55rem;
  margin-top: .8rem;
  color: var(--v16-gold-soft);
  font-weight: 800;
  font-size: .9rem;
}

.hero-visit-card p {
  margin: .55rem 0 .45rem;
  color: rgba(255,255,255,.76);
  line-height: 1.65;
  font-size: .76rem;
}

.visit-note {
  display: inline-flex;
  gap: .4rem;
  color: rgba(255,255,255,.56);
  font-size: .69rem;
  line-height: 1.55;
}

.services-v16 { background: linear-gradient(180deg, #fff 0%, var(--v16-cream) 100%); }
.slider-hint { display: inline-flex; align-items: center; gap: .45rem; color: var(--color-muted); font-size: .84rem; font-weight: 700; }

.service-carousel {
  position: relative;
  padding: .4rem 0 4.4rem;
}

.service-feature-slide {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  min-height: 520px;
  overflow: hidden;
  border: 1px solid rgba(143,31,45,.1);
  border-radius: 34px;
  background: #fff;
  box-shadow: 0 30px 80px rgba(39,25,18,.1);
}

.service-feature-media { position: relative; min-height: 520px; overflow: hidden; }
.service-feature-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 55%, rgba(20,13,10,.45)); }
.service-feature-media img { width: 100%; height: 100%; min-height: 520px; object-fit: cover; display: block; transition: transform 1s cubic-bezier(.2,.8,.2,1); }
.carousel-item.active .service-feature-media img { transform: scale(1.025); }
.service-feature-number { position: absolute; right: 1.25rem; top: 1.25rem; z-index: 2; display: grid; place-items: center; width: 62px; height: 62px; border-radius: 50%; background: rgba(18,13,11,.55); border: 1px solid rgba(255,255,255,.28); color: #fff; font-weight: 900; backdrop-filter: blur(10px); }

.service-feature-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(2rem, 5vw, 4.4rem);
  background:
    radial-gradient(circle at 80% 15%, rgba(215,175,109,.16), transparent 28%),
    #fff;
}

.service-type {
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .45rem .72rem;
  margin-bottom: 1rem;
  border-radius: 999px;
  color: var(--color-primary);
  background: rgba(194,32,47,.07);
  font-size: .78rem;
  font-weight: 800;
}
.service-type-group { color: #7f5420; background: rgba(205,161,92,.13); }
.service-type-offer { color: #6b254b; background: rgba(107,37,75,.08); }
.service-feature-content h3 { font-size: clamp(2rem, 4vw, 3.1rem); margin-bottom: 1rem; }
.service-feature-content p { font-size: 1rem; color: #6f6862; max-width: 540px; }
.service-meta { display: flex; flex-wrap: wrap; gap: .65rem; margin: .6rem 0 1.65rem; }
.service-meta span { display: inline-flex; align-items: center; gap: .4rem; padding: .5rem .72rem; border: 1px solid var(--color-border); border-radius: 12px; color: #5c554f; font-size: .8rem; font-weight: 700; }
.service-feature-content .btn { align-self: flex-start; }

.service-carousel-nav {
  position: absolute;
  right: 0;
  left: 0;
  bottom: .3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .9rem;
}

.service-nav-btn {
  width: 46px;
  height: 46px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(143,31,45,.16);
  border-radius: 50%;
  background: #fff;
  color: var(--color-primary);
  box-shadow: 0 10px 30px rgba(39,25,18,.08);
  transition: all .25s ease;
}
.service-nav-btn:hover { background: var(--color-primary); color: #fff; transform: translateY(-2px); }
.service-carousel-progress { min-width: 150px; text-align: center; color: var(--color-muted); font-size: .75rem; font-weight: 700; }

.offers-section-v16 {
  position: relative;
  overflow: hidden;
  background: #171210;
}
.offers-section-v16::before { content: ""; position: absolute; inset: 0; background: radial-gradient(circle at 12% 20%, rgba(194,32,47,.28), transparent 28%), radial-gradient(circle at 90% 85%, rgba(215,175,109,.14), transparent 32%); }
.offers-shell { position: relative; display: grid; grid-template-columns: 1.2fr .8fr; overflow: hidden; border: 1px solid rgba(255,255,255,.11); border-radius: 34px; background: rgba(255,255,255,.035); box-shadow: 0 40px 90px rgba(0,0,0,.22); }
.offers-copy { padding: clamp(2rem, 5vw, 4.7rem); }
.offers-kicker { display: inline-flex; align-items: center; gap: .5rem; color: var(--v16-gold-soft); font-weight: 800; font-size: .83rem; }
.offers-copy h2 { color: #fff; font-size: clamp(2rem, 4.5vw, 3.7rem); line-height: 1.25; margin: .85rem 0 1rem; }
.offers-copy > p { color: rgba(255,255,255,.62); max-width: 700px; }
.offers-mini-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: .7rem; margin: 1.5rem 0 1.8rem; }
.offers-mini-grid > span { display: grid; grid-template-columns: 38px 1fr; column-gap: .6rem; padding: .85rem; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(255,255,255,.035); }
.offers-mini-grid .bi { grid-row: 1 / 3; display: grid; place-items: center; color: var(--v16-gold); font-size: 1.1rem; }
.offers-mini-grid strong, .offers-mini-grid small { display: block; }
.offers-mini-grid strong { color: #fff; font-size: .78rem; }
.offers-mini-grid small { color: rgba(255,255,255,.45); font-size: .65rem; }
.offers-visual { min-height: 520px; padding: 2rem; display: grid; place-items: center; background: linear-gradient(rgba(15,11,10,.15), rgba(15,11,10,.65)), url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1100&q=84') center/cover; }
.offer-poster-card { width: min(340px, 100%); padding: 2rem; border: 1px solid rgba(255,255,255,.2); border-radius: 28px; background: rgba(15,11,10,.65); color: #fff; backdrop-filter: blur(16px); box-shadow: 0 30px 80px rgba(0,0,0,.3); }
.offer-poster-badge { display: inline-flex; padding: .35rem .65rem; border-radius: 999px; background: var(--color-primary); font-size: .7rem; font-weight: 800; }
.offer-poster-icon { width: 70px; height: 70px; display: grid; place-items: center; margin: 1.4rem 0 1rem; border: 1px solid rgba(255,255,255,.18); border-radius: 22px; color: var(--v16-gold-soft); font-size: 1.8rem; background: rgba(255,255,255,.07); }
.offer-poster-card strong, .offer-poster-card small { display: block; }
.offer-poster-card strong { font-size: 1.2rem; }
.offer-poster-card small { margin-top: .55rem; color: rgba(255,255,255,.55); line-height: 1.7; }

.booking-flow-v16 { background: var(--v16-cream); }

.experience-orbit-section {
  position: relative;
  overflow: hidden;
  color: #fff;
  background: #100d0c;
}
.experience-grid-bg { position: absolute; inset: 0; opacity: .22; background-image: linear-gradient(rgba(255,255,255,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px); background-size: 46px 46px; mask-image: radial-gradient(circle at center, #000, transparent 78%); }
.experience-orbit-section::before { content: ""; position: absolute; width: 520px; height: 520px; top: 12%; left: 50%; transform: translateX(-50%); border-radius: 50%; background: rgba(194,32,47,.16); filter: blur(100px); }
.experience-kicker { display: inline-flex; align-items: center; gap: .5rem; color: var(--v16-gold-soft); font-size: .8rem; font-weight: 800; }
.experience-title { color: #fff; margin: .8rem 0 .8rem; font-size: clamp(2.2rem, 4.8vw, 4rem); }
.experience-lead { color: rgba(255,255,255,.6); max-width: 720px; margin-inline: auto; }

.experience-orbit {
  position: relative;
  width: min(820px, 100%);
  height: 620px;
  margin: 0 auto;
}
.orbit-ring { position: absolute; top: 50%; left: 50%; border: 1px solid rgba(215,175,109,.18); border-radius: 50%; transform: translate(-50%, -50%); }
.orbit-ring-one { width: 500px; height: 500px; }
.orbit-ring-two { width: 690px; height: 690px; opacity: .45; }
.orbit-center { position: absolute; top: 50%; left: 50%; width: 220px; height: 220px; transform: translate(-50%,-50%); display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1.5rem; text-align: center; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; background: radial-gradient(circle at 35% 25%, rgba(215,175,109,.25), rgba(92,17,26,.8) 58%, rgba(25,17,14,.95)); box-shadow: 0 0 0 18px rgba(255,255,255,.015), 0 30px 80px rgba(0,0,0,.35); }
.orbit-center-mark { display: block; color: var(--v16-gold-soft); font-size: 1.8rem; font-weight: 900; letter-spacing: .08em; }
.orbit-center strong { color: #fff; margin-top: .3rem; }
.orbit-center small { color: rgba(255,255,255,.5); margin-top: .25rem; }
.orbit-node { position: absolute; width: 170px; min-height: 155px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 1rem; text-align: center; text-decoration: none; color: #fff; border: 1px solid rgba(255,255,255,.13); border-radius: 26px; background: rgba(255,255,255,.055); backdrop-filter: blur(12px); transition: transform .3s ease, background .3s ease, border .3s ease; }
.orbit-node:hover { color: #fff; transform: translateY(-7px) scale(1.02); border-color: rgba(215,175,109,.5); background: rgba(255,255,255,.09); }
.orbit-node span { width: 52px; height: 52px; display: grid; place-items: center; margin-bottom: .7rem; border-radius: 16px; color: var(--v16-gold-soft); background: rgba(215,175,109,.1); font-size: 1.25rem; }
.orbit-node strong { font-size: .95rem; }
.orbit-node small { margin-top: .2rem; color: rgba(255,255,255,.45); font-size: .7rem; }
.orbit-node-1 { top: 2%; left: 50%; transform: translateX(-50%); }
.orbit-node-1:hover { transform: translateX(-50%) translateY(-7px) scale(1.02); }
.orbit-node-2 { top: 50%; right: 0; transform: translateY(-50%); }
.orbit-node-2:hover { transform: translateY(calc(-50% - 7px)) scale(1.02); }
.orbit-node-3 { bottom: 2%; left: 50%; transform: translateX(-50%); }
.orbit-node-3:hover { transform: translateX(-50%) translateY(-7px) scale(1.02); }
.orbit-node-4 { top: 50%; left: 0; transform: translateY(-50%); }
.orbit-node-4:hover { transform: translateY(calc(-50% - 7px)) scale(1.02); }
.experience-bottom-note { display: flex; align-items: center; justify-content: center; gap: .55rem; max-width: 760px; margin: 1rem auto 0; padding: .75rem 1rem; color: rgba(255,255,255,.52); font-size: .8rem; text-align: center; }
.experience-bottom-note .bi { color: var(--v16-gold); }

.auction-section { background: linear-gradient(180deg, #fff, #f7f1e7); }
.auction-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.auction-card { overflow: hidden; border: 1px solid rgba(143,31,45,.1); border-radius: 28px; background: #fff; box-shadow: 0 18px 55px rgba(41,27,20,.08); transition: transform .3s ease, box-shadow .3s ease; }
.auction-card:hover { transform: translateY(-7px); box-shadow: 0 28px 70px rgba(41,27,20,.13); }
.auction-card-featured { transform: translateY(-14px); }
.auction-card-featured:hover { transform: translateY(-20px); }
.auction-media { position: relative; height: 330px; overflow: hidden; }
.auction-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(15,10,8,.5)); }
.auction-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .7s ease; }
.auction-card:hover .auction-media img { transform: scale(1.055); }
.auction-status { position: absolute; top: 1rem; right: 1rem; z-index: 2; padding: .36rem .65rem; border-radius: 999px; color: #fff; background: var(--color-primary); font-size: .7rem; font-weight: 800; }
.auction-body { padding: 1.35rem; }
.auction-label { color: var(--color-primary); font-size: .72rem; font-weight: 800; }
.auction-body h3 { margin: .35rem 0 1rem; font-size: 1.2rem; }
.auction-placeholder { display: flex; justify-content: space-between; gap: .5rem; padding-top: .85rem; border-top: 1px solid var(--color-border); color: var(--color-muted); font-size: .72rem; font-weight: 700; }

.booking-portal-section { background: #fff; }
.booking-portal-card { position: relative; overflow: hidden; padding: clamp(2rem, 5vw, 4.7rem); border-radius: 36px; color: #fff; background: linear-gradient(125deg, #5f131d 0%, #8f1f2d 45%, #261815 100%); box-shadow: 0 32px 90px rgba(102,21,31,.2); }
.booking-portal-card::before { content: ""; position: absolute; inset: 0; opacity: .13; background-image: linear-gradient(120deg, transparent 30%, rgba(255,255,255,.5) 30.5%, transparent 31%); background-size: 80px 80px; }
.portal-light { position: absolute; width: 320px; height: 320px; border-radius: 50%; filter: blur(80px); opacity: .45; }
.portal-light-one { top: -100px; left: 10%; background: #ecb56c; }
.portal-light-two { bottom: -140px; right: 12%; background: #2c0a10; }
.portal-eyebrow { display: inline-flex; align-items: center; gap: .45rem; color: var(--v16-gold-soft); font-size: .8rem; font-weight: 800; }
.booking-portal-card h2 { color: #fff; max-width: 700px; margin: .75rem 0 1rem; font-size: clamp(2.1rem, 4.8vw, 3.9rem); line-height: 1.25; }
.booking-portal-card p { color: rgba(255,255,255,.67); max-width: 650px; }
.portal-actions { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.5rem; }
.btn-light-pill { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; padding: .75rem 1.5rem; border: 1px solid #fff; border-radius: 999px; color: #61141e; background: #fff; text-decoration: none; font-weight: 800; transition: all .25s ease; }
.btn-light-pill:hover { color: #61141e; transform: translateY(-2px); box-shadow: 0 12px 30px rgba(0,0,0,.15); }
.btn-portal-outline { display: inline-flex; align-items: center; justify-content: center; padding: .75rem 1.5rem; border: 1px solid rgba(255,255,255,.3); border-radius: 999px; color: #fff; text-decoration: none; font-weight: 800; background: rgba(255,255,255,.06); }
.btn-portal-outline:hover { color: #fff; background: rgba(255,255,255,.12); }
.portal-console { overflow: hidden; border: 1px solid rgba(255,255,255,.2); border-radius: 25px; background: rgba(18,10,10,.34); backdrop-filter: blur(16px); box-shadow: 0 26px 60px rgba(0,0,0,.2); }
.portal-console-head { display: flex; align-items: center; gap: .35rem; padding: .8rem 1rem; border-bottom: 1px solid rgba(255,255,255,.1); }
.portal-console-head > span { width: 7px; height: 7px; border-radius: 50%; background: rgba(255,255,255,.4); }
.portal-console-head small { margin-inline-start: auto; color: rgba(255,255,255,.35); font-size: .58rem; letter-spacing: .08em; }
.portal-console-body { display: grid; gap: .65rem; padding: 1rem; }
.portal-console-body > div { display: flex; align-items: center; gap: .75rem; padding: .85rem; border: 1px solid rgba(255,255,255,.09); border-radius: 15px; background: rgba(255,255,255,.05); }
.portal-console-body > div > .bi { width: 40px; height: 40px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 12px; color: var(--v16-gold-soft); background: rgba(215,175,109,.1); }
.portal-console-body strong, .portal-console-body small { display: block; }
.portal-console-body strong { color: #fff; font-size: .82rem; }
.portal-console-body small { color: rgba(255,255,255,.44); font-size: .67rem; }

.contact-premium-section { background: #f6f0e8; }
.contact-premium-shell { overflow: hidden; border-radius: 34px; background: #fff; box-shadow: 0 28px 80px rgba(41,27,20,.1); }
.contact-info-panel { padding: clamp(2rem, 5vw, 4rem); color: #fff; background: linear-gradient(145deg, #17110f, #36181a 78%, #741923); }
.contact-kicker { color: var(--v16-gold-soft); font-size: .78rem; font-weight: 800; }
.contact-info-panel h2 { color: #fff; margin: .65rem 0 .8rem; font-size: clamp(2rem, 4vw, 3.2rem); }
.contact-info-panel > p { color: rgba(255,255,255,.6); }
.contact-action-list { display: grid; gap: .65rem; margin-top: 1.7rem; }
.contact-action-list > a,
.contact-location { display: flex; align-items: center; gap: .75rem; padding: .85rem; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; color: #fff; text-decoration: none; background: rgba(255,255,255,.05); transition: background .25s ease, transform .25s ease; }
.contact-action-list > a:hover { color: #fff; background: rgba(255,255,255,.1); transform: translateX(-3px); }
.contact-action-list > a > span,
.contact-location > span { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 13px; color: var(--v16-gold-soft); background: rgba(215,175,109,.1); }
.contact-action-list small, .contact-action-list strong, .contact-location small, .contact-location strong { display: block; }
.contact-action-list small, .contact-location small { color: rgba(255,255,255,.45); font-size: .65rem; }
.contact-action-list strong, .contact-location strong { color: #fff; margin-top: .1rem; font-size: .82rem; line-height: 1.55; }
.contact-action-list > a > .bi { margin-inline-start: auto; color: rgba(255,255,255,.35); }
.contact-form-panel { padding: clamp(2rem, 5vw, 4rem); background: #fff; }
.contact-form-head { margin-bottom: 1.3rem; }
.contact-form-head span, .contact-form-head strong { display: block; }
.contact-form-head span { color: var(--color-primary); font-size: .75rem; font-weight: 800; }
.contact-form-head strong { margin-top: .2rem; color: var(--color-dark); font-size: 1.7rem; }
.contact-form-panel .form-label { color: #5b514c; font-size: .76rem; font-weight: 700; }
.premium-input { min-height: 50px; border: 1px solid #e8dfd8; border-radius: 14px; background: #fbf8f5; box-shadow: none !important; }
textarea.premium-input { min-height: 120px; resize: vertical; }
.premium-input:focus { border-color: rgba(194,32,47,.4); background: #fff; }

.footer-v16 { padding-top: 0; }
.footer-brand-v16 { display: flex; align-items: center; gap: .8rem; }
.footer-brand-v16 img { width: 58px; height: 58px; object-fit: contain; border: 1px solid rgba(215,175,109,.35); border-radius: 50%; }
.footer-brand-v16 strong, .footer-brand-v16 small { display: block; }
.footer-brand-v16 strong { color: #fff; font-size: 1rem; }
.footer-brand-v16 small { color: rgba(255,255,255,.42); font-size: .7rem; }
.footer-v16 h6 { color: var(--v16-gold-soft); margin-bottom: .9rem; }
.footer-links-v16 { list-style: none; padding: 0; margin: 0; display: grid; gap: .55rem; }
.footer-links-v16 a, .footer-links-v16 span { color: rgba(255,255,255,.56); text-decoration: none; font-size: .8rem; }
.footer-links-v16 a:hover { color: #fff; }

@keyframes heroV16In {
  from { opacity: 0; transform: translateY(26px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes visitCardFloat {
  0%,100% { transform: translateY(0); }
  50% { transform: translateY(7px); }
}

@media (max-width: 1199.98px) {
  .hero-visit-card { top: 1rem; width: 300px; }
  .home-hero-v16 .hero-title { font-size: clamp(2.3rem, 5vw, 3.8rem); }
  .service-feature-slide { grid-template-columns: 1fr 1fr; }
  .offers-mini-grid { grid-template-columns: 1fr; }
  .offers-mini-grid > span { grid-template-columns: 34px 1fr; }
}

@media (max-width: 991.98px) {
  .home-v16 .site-navbar .nav-link::after { display: none; }
  .home-hero-v16,
  .home-hero-v16 .hero-carousel,
  .home-hero-v16 .carousel-inner,
  .home-hero-v16 .carousel-item,
  .home-hero-v16 .min-vh-75 { min-height: 840px; }
  .hero-content-v16 { padding-block: 4.5rem 13rem; max-width: 650px; }
  .hero-visit-card { top: auto; bottom: 5.4rem; right: 1rem; left: 1rem; width: auto; animation: none; }
  .hero-control { display: none; }
  .hero-indicators { justify-content: center; padding-inline: 1rem; margin-bottom: 1.2rem; }
  .service-feature-slide { grid-template-columns: 1fr; }
  .service-feature-media, .service-feature-media img { min-height: 380px; height: 380px; }
  .service-feature-content { min-height: 390px; }
  .offers-shell { grid-template-columns: 1fr; }
  .offers-visual { min-height: 390px; }
  .experience-orbit { height: auto; display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; padding-top: 1rem; }
  .orbit-ring { display: none; }
  .orbit-center { position: relative; top: auto; left: auto; transform: none; grid-column: 1 / -1; width: min(260px, 100%); height: 260px; margin: 0 auto 1rem; }
  .orbit-node { position: relative; top: auto; right: auto; bottom: auto; left: auto; transform: none; width: 100%; min-height: 150px; }
  .orbit-node:hover,
  .orbit-node-1:hover,
  .orbit-node-2:hover,
  .orbit-node-3:hover,
  .orbit-node-4:hover { transform: translateY(-5px); }
  .auction-grid { grid-template-columns: 1fr 1fr; }
  .auction-card-featured { transform: none; grid-column: 1 / -1; }
  .auction-card-featured:hover { transform: translateY(-7px); }
}

@media (max-width: 767.98px) {
  .home-hero-v16,
  .home-hero-v16 .hero-carousel,
  .home-hero-v16 .carousel-inner,
  .home-hero-v16 .carousel-item,
  .home-hero-v16 .min-vh-75 { min-height: 820px; }
  .home-hero-v16 .hero-slide { background-position: 60% center; }
  .home-hero-v16 .hero-slide::before { background: linear-gradient(180deg, rgba(8,6,5,.62) 0%, rgba(8,6,5,.78) 62%, rgba(8,6,5,.92) 100%); }
  .hero-content-v16 { padding-block: 3.6rem 15rem; }
  .home-hero-v16 .hero-title { font-size: clamp(2.05rem, 9vw, 3.2rem); }
  .home-hero-v16 .hero-text { font-size: .9rem; }
  .hero-actions > * { width: 100%; }
  .hero-visit-card { bottom: 4.3rem; }
  .visit-card-head strong { font-size: .86rem; }
  .service-feature-slide { border-radius: 24px; }
  .service-feature-media, .service-feature-media img { min-height: 300px; height: 300px; }
  .service-feature-content { padding: 1.55rem; min-height: 360px; }
  .service-feature-content h3 { font-size: 1.8rem; }
  .service-carousel-progress { min-width: 115px; }
  .offers-copy { padding: 1.6rem; }
  .offers-copy h2 { font-size: 2.1rem; }
  .offers-mini-grid { grid-template-columns: 1fr; }
  .offers-visual { min-height: 330px; padding: 1.2rem; }
  .experience-orbit { grid-template-columns: 1fr; }
  .orbit-center { grid-column: 1; width: 210px; height: 210px; }
  .auction-grid { grid-template-columns: 1fr; }
  .auction-card-featured { grid-column: auto; }
  .auction-media { height: 280px; }
  .booking-portal-card { border-radius: 26px; padding: 1.6rem; }
  .booking-portal-card h2 { font-size: 2.15rem; }
  .portal-actions > * { width: 100%; }
  .contact-premium-shell { border-radius: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-visit-card,
  .hero-content-v16 { animation: none !important; }
  .service-feature-media img,
  .auction-media img { transition: none !important; }
}

/* ---------- Home v1.6 LTR ---------- */
html[dir="ltr"] .home-hero-v16 .hero-slide::before {
  background:
    radial-gradient(circle at 25% 40%, rgba(194, 32, 47, .15), transparent 35%),
    linear-gradient(270deg, rgba(8, 6, 5, .88) 2%, rgba(8, 6, 5, .58) 47%, rgba(8, 6, 5, .28) 73%, rgba(8, 6, 5, .48) 100%);
}
html[dir="ltr"] .hero-visit-card { right: max(1.25rem, calc((100vw - 1320px) / 2)); left: auto; }
html[dir="ltr"] .home-hero-v16 .carousel-control-prev { left: auto; right: calc(max(1rem, (100vw - 1320px) / 2) + 52px); }
html[dir="ltr"] .home-hero-v16 .carousel-control-next { left: auto; right: max(1rem, calc((100vw - 1320px) / 2)); }
html[dir="ltr"] .service-feature-number,
html[dir="ltr"] .auction-status { right: auto; left: 1.25rem; }
html[dir="ltr"] .contact-action-list > a:hover { transform: translateX(3px); }
html[dir="ltr"] .ticker-track { animation-direction: reverse; }

@media (max-width: 991.98px) {
  html[dir="ltr"] .hero-visit-card { right: 1rem; left: 1rem; }
}

/* ---------- Home v1.7 polish overrides ---------- */
.home-v16 .site-navbar .nav-link.active,
.home-v16 .site-navbar .nav-link.show,
.home-v16 .site-navbar .nav-link:hover {
  color: var(--color-primary);
}

.home-v16 .site-navbar .nav-link.active::after,
.home-v16 .site-navbar .nav-link.show::after {
  width: 70%;
  background: var(--color-primary);
}

.home-hero-v16 .hero-content-v16 {
  max-width: 720px;
  padding-block: 5.2rem 8.5rem;
}

.home-hero-v16 .hero-kicker {
  margin-bottom: 1rem;
  padding: .55rem .9rem;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(10px);
}

.home-hero-v16 .hero-title {
  max-width: 660px;
  font-size: clamp(2.5rem, 5vw, 4.9rem);
  line-height: 1.08;
  margin-bottom: 1.2rem;
}

.home-hero-v16 .hero-text {
  max-width: 620px;
  font-size: clamp(.98rem, 1.28vw, 1.08rem);
  line-height: 1.9;
}

.hero-visit-card {
  top: 1.15rem;
  left: max(1.25rem, calc((100vw - 1320px) / 2));
  width: min(285px, calc(100vw - 2rem));
  padding: .8rem .88rem;
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(18,14,12,.76), rgba(18,14,12,.44));
  box-shadow: 0 18px 45px rgba(0,0,0,.22);
}

.visit-card-head { gap: .65rem; padding-bottom: .6rem; }
.visit-card-icon { width: 36px; height: 36px; border-radius: 12px; }
.visit-card-head small { font-size: .66rem; }
.visit-card-head strong { font-size: .84rem; }
.visit-time { margin-top: .55rem; font-size: .8rem; }
.hero-visit-card p { margin: .4rem 0 .3rem; font-size: .7rem; line-height: 1.55; }
.visit-note { font-size: .63rem; }
.hero-scroll-cue { bottom: 1.55rem; }

.stats-v16 {
  background: linear-gradient(180deg, #fff 0%, #fbf6ef 100%);
}

.stats-shell {
  padding: clamp(1.8rem, 4vw, 3rem);
  border: 1px solid rgba(143,31,45,.1);
  border-radius: 34px;
  background: linear-gradient(180deg, #fff, #fbf8f4);
  box-shadow: 0 30px 80px rgba(39,25,18,.08);
}

.stats-shell-head .section-intro { max-width: 720px; }
.stat-card-vibe {
  height: 100%;
  padding: 1.45rem 1.15rem;
  border: 1px solid rgba(143,31,45,.08);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(39,25,18,.05);
  transition: transform .25s ease, box-shadow .25s ease;
}
.stat-card-vibe:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 36px rgba(39,25,18,.09);
}
.stat-card-vibe .stat-icon {
  width: 54px;
  height: 54px;
  margin-bottom: 1rem;
  border-radius: 16px;
  background: linear-gradient(135deg, rgba(194,32,47,.1), rgba(205,161,92,.18));
}
.stat-card-vibe .stat-number {
  font-size: 1.2rem;
  color: var(--color-dark);
  margin-bottom: .35rem;
}
.stat-card-vibe .stat-label { font-size: .87rem; }

.services-v16 .row.align-items-end { margin-bottom: 1.6rem !important; }
.service-tabs-shell {
  display: flex;
  align-items: center;
  gap: .85rem;
  margin-bottom: 1.35rem;
}
.service-tabs {
  display: flex;
  align-items: center;
  gap: .7rem;
  flex: 1 1 auto;
  overflow-x: auto;
  padding-bottom: .35rem;
  scrollbar-width: none;
}
.service-tabs::-webkit-scrollbar { display: none; }
.service-tab {
  flex: 0 0 auto;
  min-width: 116px;
  padding: .78rem 1rem;
  border: 1px solid rgba(143,31,45,.12);
  border-radius: 16px;
  background: #fff;
  color: #544d48;
  font-size: .9rem;
  font-weight: 800;
  box-shadow: 0 8px 24px rgba(39,25,18,.05);
  transition: all .25s ease;
}
.service-tab:hover,
.service-tab.active {
  color: #fff;
  background: linear-gradient(135deg, #8f1f2d, #cda15c);
  border-color: transparent;
  box-shadow: 0 18px 32px rgba(143,31,45,.2);
}
.service-nav-btn-inline { flex: 0 0 auto; }
.service-carousel { padding: .2rem 0 2.6rem; }
.service-feature-slide {
  min-height: 470px;
  grid-template-columns: 1fr 1fr;
  border-radius: 30px;
}
.service-feature-media,
.service-feature-media img { min-height: 470px; }
.service-feature-content { padding: clamp(1.9rem, 4vw, 3.4rem); }
.service-feature-content h3 {
  font-size: clamp(1.8rem, 3.4vw, 2.8rem);
  line-height: 1.18;
}
.service-feature-content p { line-height: 1.85; }
.service-carousel-nav {
  bottom: 0;
}
.service-carousel-progress {
  min-width: auto;
  padding: .65rem 1rem;
  border-radius: 999px;
  background: rgba(255,255,255,.8);
  box-shadow: 0 10px 24px rgba(39,25,18,.05);
}

.booking-flow-v16 {
  background: linear-gradient(180deg, #f8f2ea 0%, #fff 100%);
}
.booking-steps {
  gap: 1rem;
}
.booking-steps::before { opacity: .25; }
.booking-step {
  padding: 1.25rem 1rem 1.35rem;
  border: 1px solid rgba(143,31,45,.09);
  border-radius: 26px;
  background: linear-gradient(180deg, #fff, #fdf9f4);
  box-shadow: 0 15px 34px rgba(39,25,18,.05);
}
.booking-step-no {
  color: rgba(194,32,47,.25);
  font-size: 1.8rem;
}
.booking-step-icon {
  width: 84px;
  height: 84px;
  margin-bottom: 1rem;
  border: 1px solid rgba(194,32,47,.13);
  background: linear-gradient(180deg, #fff, #f6ebe4);
  color: var(--color-primary);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}
.booking-step h3 { font-size: 1.12rem; }
.booking-step p { line-height: 1.75; }
.btn-brand.btn-brand-lg {
  padding: .92rem 1.8rem;
  border-radius: 999px;
  box-shadow: 0 18px 35px rgba(143,31,45,.18);
}

.auction-section {
  position: relative;
  background: radial-gradient(circle at 80% 10%, rgba(205,161,92,.12), transparent 22%), linear-gradient(180deg, #fff 0%, #f8f4ee 100%);
}
.auction-grid { gap: 1.5rem; }
.auction-card {
  border-radius: 30px;
  background: linear-gradient(180deg, #fff, #fdfaf7);
}
.auction-media { height: 300px; }
.auction-body { padding: 1.5rem; }
.auction-body p {
  margin: .7rem 0 1.15rem;
  color: #6c645e;
  line-height: 1.8;
  font-size: .92rem;
}
.auction-placeholder {
  padding: .95rem 0 0;
  margin-bottom: .95rem;
}
.auction-link {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  color: var(--color-primary);
  font-weight: 800;
  text-decoration: none;
}
.auction-link:hover { color: #61141e; }
.auction-card-featured {
  background: linear-gradient(180deg, #fff, #fffaf3);
}
.auction-card-featured .auction-label {
  color: #8f6d32;
}
.auction-card-featured .auction-status {
  background: linear-gradient(135deg, #cda15c, #8f1f2d);
}

.booking-portal-section {
  background: #fff;
}
.booking-portal-card {
  padding: clamp(2rem, 4.5vw, 4rem);
  border: 1px solid rgba(143,31,45,.08);
  border-radius: 36px;
  color: #fff;
  background: linear-gradient(135deg, #1a1311 0%, #3c191b 45%, #8f1f2d 100%);
  box-shadow: 0 34px 90px rgba(47,21,18,.15);
}
.booking-portal-card::before {
  opacity: .08;
  background-image: linear-gradient(120deg, transparent 22%, rgba(255,255,255,.75) 22.6%, transparent 23.2%);
  background-size: 110px 110px;
}
.portal-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  color: var(--v16-gold-soft);
  font-size: .84rem;
  font-weight: 800;
}
.booking-portal-card h2 {
  max-width: 680px;
  font-size: clamp(2rem, 4.6vw, 3.7rem);
  line-height: 1.18;
}
.portal-actions { gap: .85rem; }
.btn-light-pill {
  padding: .88rem 1.5rem;
  border-radius: 999px;
  background: linear-gradient(180deg, #fff, #f2e8e2);
  box-shadow: 0 14px 30px rgba(0,0,0,.14);
}
.btn-portal-outline {
  padding: .88rem 1.4rem;
  background: rgba(255,255,255,.04);
}
.portal-console {
  background: rgba(255,255,255,.06);
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 24px 55px rgba(0,0,0,.18);
}
.portal-console-body > div {
  background: rgba(255,255,255,.06);
}

.contact-premium-shell { box-shadow: 0 30px 80px rgba(41,27,20,.08); }
.contact-form-panel { background: linear-gradient(180deg, #fff, #fdfaf7); }

.footer-bg {
  background-image: none;
}
.site-footer {
  background: linear-gradient(180deg, #161110 0%, #0e0b0a 100%);
  padding-top: clamp(2.2rem, 5vw, 3.5rem);
}
.site-footer::before {
  background: radial-gradient(circle at 15% 25%, rgba(205,161,92,.08), transparent 25%), radial-gradient(circle at 85% 20%, rgba(194,32,47,.08), transparent 22%), linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.15));
}
.footer-v16 .container.py-5 { padding-top: 1.8rem !important; padding-bottom: 1.8rem !important; }
.footer-mini-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
}
.btn-footer-primary,
.btn-footer-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 126px;
  padding: .72rem 1rem;
  border-radius: 999px;
  font-weight: 800;
  text-decoration: none;
}
.btn-footer-primary {
  color: #fff;
  background: linear-gradient(135deg, #8f1f2d, #cda15c);
}
.btn-footer-secondary {
  color: #fff;
  border: 1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.04);
}
.btn-footer-primary:hover,
.btn-footer-secondary:hover { color: #fff; }
.footer-brand-v16 {
  align-items: flex-start;
}
.footer-brand-v16 img {
  width: 56px;
  height: 56px;
  background: rgba(255,255,255,.04);
}
.footer-links-v16 { gap: .7rem; }
.footer-links-v16 a,
.footer-links-v16 span {
  color: rgba(255,255,255,.72);
}
.footer-bottom {
  border-top-color: rgba(255,255,255,.08);
  padding: .95rem 0;
}

@media (max-width: 991.98px) {
  .service-tabs-shell { gap: .55rem; }
  .service-tab { min-width: 104px; padding: .72rem .85rem; font-size: .84rem; }
  .service-feature-slide { grid-template-columns: 1fr; min-height: auto; }
  .service-feature-media,
  .service-feature-media img { min-height: 360px; }
  .home-hero-v16 .hero-content-v16 { padding-block: 4.2rem 12rem; }
}

@media (max-width: 767.98px) {
  .hero-visit-card { width: auto; padding: .76rem .82rem; }
  .home-hero-v16 .hero-title { font-size: clamp(2.1rem, 8vw, 3rem); }
  .stats-shell { border-radius: 24px; padding: 1.35rem; }
  .service-tabs-shell { align-items: stretch; }
  .service-nav-btn-inline { width: 42px; height: 42px; }
  .service-tab { min-width: 98px; border-radius: 14px; }
  .booking-step { max-width: none; }
  .footer-mini-actions > * { width: 100%; }
}

/* =========================================================
   Home v1.8 — reference-matched luxury layout
   ========================================================= */
.home-v18 {
  --v18-red: #b81f2d;
  --v18-red-dark: #8d1722;
  --v18-gold: #d5ad67;
  --v18-gold-soft: #ead4a9;
  --v18-ink: #171310;
  --v18-cream: #fbf6ee;
  --v18-line: rgba(213, 173, 103, .28);
  padding-top: 0;
  background: #fff;
  color: #2c2926;
  font-family: "Cairo", sans-serif;
}

.home-v18 main { overflow: hidden; }
.home-v18 section[id] { scroll-margin-top: 78px; }

/* navbar */
.v18-navbar {
  min-height: 76px;
  padding: .5rem 0;
  background: rgba(12, 9, 7, .94);
  border-bottom: 1px solid rgba(255,255,255,.06);
  box-shadow: none;
  backdrop-filter: blur(16px);
}
.v18-nav-container { max-width: 1380px; }
.v18-brand {
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  color: #fff;
  text-decoration: none;
  flex: 0 0 auto;
}
.v18-brand img {
  width: 48px;
  height: 48px;
  object-fit: contain;
  border-radius: 50%;
}
.v18-brand span,
.v18-brand strong,
.v18-brand small { display: block; }
.v18-brand strong {
  color: var(--v18-gold-soft);
  font-size: .84rem;
  font-weight: 800;
  white-space: nowrap;
}
.v18-brand small {
  margin-top: .15rem;
  color: rgba(255,255,255,.64);
  font-size: .58rem;
}
.v18-navlinks { gap: .35rem; }
.v18-navbar .v18-navlinks .nav-link {
  position: relative;
  padding: 1rem .75rem;
  color: rgba(255,255,255,.82);
  font-size: .84rem;
  font-weight: 700;
  transition: color .2s ease;
}
.v18-navbar .v18-navlinks .nav-link::after {
  content: "";
  position: absolute;
  right: 50%;
  bottom: .55rem;
  width: 0;
  height: 2px;
  transform: translateX(50%);
  border-radius: 999px;
  background: var(--v18-red);
  transition: width .2s ease;
}
.v18-navbar .v18-navlinks .nav-link:hover,
.v18-navbar .v18-navlinks .nav-link.active { color: #fff; }
.v18-navbar .v18-navlinks .nav-link.active::after { width: 34px; }
.v18-nav-actions { display: flex; align-items: center; gap: .65rem; }
.v18-lang,
.v18-book-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border-radius: 8px;
  font-weight: 800;
  text-decoration: none;
}
.v18-lang {
  min-width: 46px;
  padding: .5rem .8rem;
  color: #fff;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.03);
}
.v18-lang:hover { color: var(--v18-gold-soft); border-color: var(--v18-gold); }
.v18-book-btn {
  min-width: 118px;
  padding: .55rem 1.2rem;
  color: #fff;
  background: var(--v18-red);
  box-shadow: 0 10px 24px rgba(184,31,45,.2);
}
.v18-book-btn:hover { color: #fff; background: var(--v18-red-dark); }
.v18-toggler { border: 1px solid rgba(255,255,255,.18); color: #fff; }
.v18-toggler .bi { font-size: 1.5rem; }
.v18-offcanvas { background: #120e0c; color: #fff; }
.v18-mobile-links { display: grid; gap: .3rem; }
.v18-mobile-links a {
  color: rgba(255,255,255,.85);
  text-decoration: none;
  padding: .85rem .2rem;
  border-bottom: 1px solid rgba(255,255,255,.07);
  font-weight: 700;
}

/* hero */
.v18-hero {
  position: relative;
  min-height: 690px;
  padding-top: 76px;
  background: #0f0b09;
}
.v18-hero .carousel,
.v18-hero .carousel-inner,
.v18-hero .carousel-item { min-height: 614px; }
.v18-hero-slide {
  position: relative;
  background-position: center 46%;
  background-size: cover;
  background-repeat: no-repeat;
}
.v18-hero-one { background-image: url('https://images.unsplash.com/photo-1553284965-83fd3e82fa5a?auto=format&fit=crop&w=2100&q=90'); }
.v18-hero-two { background-image: url('https://images.unsplash.com/photo-1534773728080-33d31da27ae5?auto=format&fit=crop&w=2100&q=88'); }
.v18-hero-three { background-image: url('https://images.unsplash.com/photo-1559823291-4830c119d877?auto=format&fit=crop&w=2100&q=88'); }
.v18-hero-slide::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 52% 45%, transparent 0%, rgba(8,6,5,.06) 24%, rgba(8,6,5,.45) 62%, rgba(8,6,5,.74) 100%),
    linear-gradient(90deg, rgba(8,6,5,.76) 0%, rgba(8,6,5,.44) 22%, rgba(8,6,5,.08) 50%, rgba(8,6,5,.52) 82%, rgba(8,6,5,.78) 100%);
}
.v18-hero-copy {
  position: absolute;
  top: 50%;
  right: 5%;
  width: min(470px, 42vw);
  transform: translateY(-46%);
  z-index: 3;
}
.v18-hero-kicker {
  display: inline-block;
  margin-bottom: .65rem;
  color: #fff;
  font-size: .82rem;
  font-weight: 700;
}
.v18-hero-copy h1,
.v18-hero-copy h2 {
  margin: 0 0 1rem;
  color: #fff;
  font-size: clamp(3.25rem, 5.2vw, 5.2rem);
  line-height: 1.08;
  letter-spacing: -.035em;
  font-weight: 900;
}
.v18-hero-copy h1 span,
.v18-hero-copy h2 span { color: var(--v18-gold-soft); }
.v18-hero-copy p {
  max-width: 440px;
  margin-bottom: 1.45rem;
  color: rgba(255,255,255,.72);
  font-size: .94rem;
  line-height: 2;
}
.v18-primary-btn {
  display: inline-flex;
  align-items: center;
  gap: .8rem;
  padding: .72rem 1.35rem;
  border-radius: 9px;
  color: #fff;
  background: var(--v18-red);
  text-decoration: none;
  font-weight: 800;
  box-shadow: 0 14px 30px rgba(184,31,45,.2);
}
.v18-primary-btn:hover { color: #fff; background: var(--v18-red-dark); }
.v18-hours-card {
  position: absolute;
  top: 165px;
  left: max(36px, calc((100vw - 1380px) / 2));
  z-index: 10;
  width: 292px;
  padding: 1rem 1.1rem;
  color: #fff;
  background: rgba(18,14,11,.76);
  border: 1px solid rgba(213,173,103,.26);
  border-radius: 14px;
  box-shadow: 0 22px 60px rgba(0,0,0,.25);
  backdrop-filter: blur(12px);
}
.v18-hours-title { display: flex; align-items: center; gap: .65rem; color: var(--v18-gold-soft); font-size: .78rem; }
.v18-hours-title i { font-size: 1rem; }
.v18-hours-rule { height: 1px; margin: .75rem 0; background: rgba(213,173,103,.2); }
.v18-hours-days { display: block; color: #fff; font-size: .76rem; font-weight: 700; }
.v18-hours-time { display: block; margin: .2rem 0 .55rem; color: var(--v18-gold-soft); font-size: .8rem; }
.v18-hours-card p { margin: 0 0 .45rem; color: rgba(255,255,255,.69); font-size: .68rem; line-height: 1.8; }
.v18-hours-card small { color: rgba(255,255,255,.48); font-size: .62rem; }
.v18-hero-indicators {
  right: auto;
  left: calc(max(36px, (100vw - 1380px) / 2) + 85px);
  bottom: 28px;
  margin: 0;
  z-index: 11;
  gap: .35rem;
}
.v18-hero-indicators [data-bs-target] {
  width: 7px;
  height: 7px;
  margin: 0;
  border: 1px solid rgba(255,255,255,.72);
  border-radius: 50%;
  background: transparent;
  opacity: 1;
}
.v18-hero-indicators .active { background: var(--v18-red); border-color: var(--v18-red); }
.v18-hero-arrows {
  position: absolute;
  left: max(36px, calc((100vw - 1380px) / 2));
  bottom: 20px;
  display: flex;
  gap: .45rem;
  z-index: 12;
}
.v18-hero-arrows button {
  width: 36px;
  height: 36px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 50%;
  color: #fff;
  background: rgba(8,6,5,.42);
}

/* about */
.v18-about { padding: 5.5rem 0; background: #fffdfa; }
.v18-about .container { max-width: 1320px; }
.v18-about-image {
  overflow: hidden;
  border-radius: 22px;
  min-height: 470px;
  box-shadow: 0 22px 55px rgba(33,23,17,.09);
}
.v18-about-image img { width: 100%; height: 470px; object-fit: cover; display: block; }
.v18-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  margin-bottom: 1rem;
  color: var(--v18-red);
  font-size: .83rem;
  font-weight: 800;
}
.v18-eyebrow::after { content: ""; width: 34px; height: 2px; background: var(--v18-red); }
.v18-about h2 {
  margin-bottom: 1.25rem;
  color: #1d1916;
  font-size: clamp(2.35rem, 4.2vw, 4rem);
  line-height: 1.22;
  font-weight: 900;
}
.v18-about-lead { max-width: 610px; color: #756e67; font-size: .95rem; line-height: 2; }
.v18-about-points { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1.2rem; margin-top: 2rem; }
.v18-about-point { display: flex; align-items: center; gap: .8rem; }
.v18-round-icon {
  width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto;
  border-radius: 50%; color: var(--v18-gold); background: #171310;
  box-shadow: 0 10px 20px rgba(0,0,0,.12);
}
.v18-about-point strong,
.v18-about-point small { display: block; }
.v18-about-point strong { color: #201b18; font-size: .87rem; }
.v18-about-point small { margin-top: .25rem; color: #827a72; font-size: .7rem; line-height: 1.6; }

/* dark values strip */
.v18-values {
  position: relative;
  padding: 2.6rem 0;
  color: #fff;
  background: linear-gradient(110deg, #16110e 0%, #221a15 50%, #12100e 100%);
  border-top: 1px solid rgba(213,173,103,.14);
  border-bottom: 1px solid rgba(213,173,103,.12);
}
.v18-values-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); }
.v18-values article { position: relative; padding: .4rem 2rem; text-align: center; }
.v18-values article + article { border-right: 1px solid rgba(255,255,255,.09); }
.v18-values i { display: block; margin-bottom: .7rem; color: var(--v18-gold); font-size: 1.6rem; }
.v18-values strong { display: block; margin-bottom: .35rem; color: var(--v18-gold-soft); font-size: .9rem; }
.v18-values p { margin: 0 auto; max-width: 190px; color: rgba(255,255,255,.58); font-size: .69rem; line-height: 1.65; }

/* common title */
.v18-section-title { display: flex; align-items: center; justify-content: center; gap: .9rem; margin-bottom: 1.6rem; }
.v18-section-title h2 { margin: 0; color: #231e1a; font-size: 1.65rem; font-weight: 900; }
.v18-section-title > span { width: 42px; height: 1px; background: var(--v18-gold); position: relative; }
.v18-section-title > span::after { content: ""; position: absolute; top: -3px; width: 7px; height: 7px; transform: rotate(45deg); background: var(--v18-gold); }
.v18-section-title > span:first-child::after { right: 0; }
.v18-section-title > span:last-child::after { left: 0; }

/* services */
.v18-services { padding: 3.2rem 0 3.4rem; background: linear-gradient(180deg,#fff,#fcf8f2); }
.v18-services .container { max-width: 1320px; }
.v18-service-slider-wrap { display: flex; align-items: center; gap: .8rem; }
.v18-service-tabs {
  display: flex;
  flex: 1 1 auto;
  gap: .75rem;
  overflow-x: auto;
  padding: .35rem .1rem .7rem;
  scroll-behavior: smooth;
  scrollbar-width: none;
}
.v18-service-tabs::-webkit-scrollbar { display: none; }
.v18-service-tabs a {
  flex: 0 0 205px;
  min-height: 62px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .65rem;
  padding: .8rem 1rem;
  border: 1px solid #eadfce;
  border-radius: 16px;
  background: rgba(255,255,255,.92);
  color: #403933;
  text-decoration: none;
  font-size: .78rem;
  font-weight: 800;
  box-shadow: 0 8px 24px rgba(41,30,20,.035);
  transition: all .2s ease;
}
.v18-service-tabs a i { color: var(--v18-gold); font-size: 1.15rem; }
.v18-service-tabs a:hover { transform: translateY(-3px); border-color: rgba(213,173,103,.7); box-shadow: 0 14px 28px rgba(41,30,20,.08); }
.v18-slide-arrow {
  width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 auto;
  border: 1px solid #eadfce; border-radius: 50%; background: #fff; color: #4e4338;
}
.v18-slide-arrow:hover { color: #fff; background: var(--v18-red); border-color: var(--v18-red); }

/* booking steps */
.v18-booking {
  position: relative;
  padding: 3.3rem 0 3.6rem;
  background:
    radial-gradient(circle at 0% 90%, rgba(213,173,103,.08), transparent 28%),
    linear-gradient(180deg,#fffaf4,#fff);
}
.v18-booking::before {
  content: "";
  position: absolute;
  left: -70px; bottom: -50px;
  width: 360px; height: 360px;
  opacity: .035;
  background: url('/assets/images/logo/horse-logo.svg') center/contain no-repeat;
  filter: grayscale(1);
}
.v18-booking .container { max-width: 1260px; position: relative; }
.v18-booking-steps { position: relative; display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 1rem; margin: 2.4rem 0 2rem; }
.v18-booking-steps::before { content: ""; position: absolute; top: 54px; right: 9%; left: 9%; height: 1px; background: #e8d9c1; z-index: 0; }
.v18-booking-steps article { position: relative; z-index: 1; text-align: center; padding: 0 .7rem; }
.v18-step-no {
  position: absolute; top: -14px; right: calc(50% - 41px);
  min-width: 30px; height: 30px; display: grid; place-items: center;
  border-radius: 50%; background: #18130f; color: #fff; font-size: .64rem; font-weight: 900;
}
.v18-step-icon {
  width: 88px; height: 88px; margin: 0 auto 1rem; display: grid; place-items: center;
  border-radius: 50%; color: var(--v18-red); background: #fff;
  border: 1px solid #eadfce; box-shadow: 0 14px 30px rgba(41,30,20,.06); font-size: 1.35rem;
}
.v18-booking-steps h3 { margin-bottom: .45rem; font-size: .96rem; font-weight: 900; }
.v18-booking-steps p { max-width: 170px; margin: 0 auto; color: #8a8178; font-size: .68rem; line-height: 1.65; }
.v18-booking-cta {
  display: inline-flex; align-items: center; gap: .7rem; padding: .72rem 1.5rem;
  border-radius: 999px; color: #fff; background: var(--v18-red); text-decoration: none; font-size: .82rem; font-weight: 800;
  box-shadow: 0 12px 28px rgba(184,31,45,.16);
}
.v18-booking-cta:hover { color: #fff; background: var(--v18-red-dark); }

/* auction */
.v18-auction {
  position: relative;
  padding: 3.2rem 0 3rem;
  color: #fff;
  background:
    radial-gradient(circle at 92% 55%, rgba(213,173,103,.14), transparent 24%),
    linear-gradient(110deg,#0f0c0a,#1b1511 58%,#0f0c0a);
  overflow: hidden;
}
.v18-auction::after {
  content: "";
  position: absolute;
  right: -110px; bottom: -110px;
  width: 450px; height: 450px;
  opacity: .12;
  background: url('https://images.unsplash.com/photo-1553284965-83fd3e82fa5a?auto=format&fit=crop&w=900&q=70') center/cover;
  border-radius: 50%;
  filter: saturate(.7) sepia(.3);
}
.v18-section-title-dark { margin-bottom: .4rem; }
.v18-section-title-dark h2 { color: #fff; }
.v18-auction-intro { position: relative; z-index: 2; margin: 0 auto 1.6rem; text-align: center; color: rgba(255,255,255,.58); font-size: .76rem; }
.v18-auction-shell { position: relative; z-index: 2; display: flex; align-items: center; gap: .8rem; }
.v18-auction-track { display: flex; flex: 1 1 auto; gap: 1rem; overflow-x: auto; scroll-behavior: smooth; scrollbar-width: none; }
.v18-auction-track::-webkit-scrollbar { display: none; }
.v18-horse-card {
  flex: 0 0 calc((100% - 2rem) / 3);
  overflow: hidden;
  border: 1px solid rgba(213,173,103,.22);
  border-radius: 16px;
  background: rgba(255,255,255,.03);
}
.v18-horse-media { position: relative; height: 215px; overflow: hidden; }
.v18-horse-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 45%,rgba(12,9,7,.6)); }
.v18-horse-media img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .45s ease; }
.v18-horse-card:hover img { transform: scale(1.045); }
.v18-horse-media > span { position: absolute; top: .8rem; right: .8rem; z-index: 2; padding: .35rem .6rem; border-radius: 999px; color: #fff; background: var(--v18-red); font-size: .63rem; font-weight: 800; }
.v18-horse-info { padding: 1rem 1.05rem 1.05rem; }
.v18-horse-info h3 { margin: 0 0 .3rem; color: #fff; font-size: 1rem; }
.v18-horse-info p { margin: 0 0 .65rem; color: rgba(255,255,255,.52); font-size: .68rem; }
.v18-horse-info small { display: flex; gap: .35rem; color: var(--v18-gold-soft); font-size: .62rem; }
.v18-auction-arrow {
  width: 40px; height: 40px; display: grid; place-items: center; flex: 0 0 auto;
  border: 1px solid rgba(213,173,103,.28); border-radius: 50%; color: #fff; background: rgba(255,255,255,.03);
}
.v18-auction-arrow:hover { color: #15100d; background: var(--v18-gold); }
.v18-auction-dots { position: relative; z-index: 2; display: flex; justify-content: center; gap: .42rem; margin-top: 1.2rem; }
.v18-auction-dots span { width: 6px; height: 6px; border-radius: 50%; border: 1px solid rgba(255,255,255,.6); }
.v18-auction-dots .active { background: var(--v18-red); border-color: var(--v18-red); }

/* CTA */
.v18-cta { padding: 0; background: #17110e; }
.v18-cta-grid {
  display: grid;
  grid-template-columns: 1.25fr 1fr auto;
  align-items: center;
  gap: 2rem;
  padding: 1.8rem 2rem;
  background: linear-gradient(100deg,#7e1722 0%,#a81e2b 52%,#5f171d 100%);
}
.v18-cta-copy { display: flex; align-items: center; gap: 1rem; }
.v18-cta-emblem { width: 62px; height: 62px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: rgba(255,255,255,.08); border: 1px solid rgba(234,212,169,.35); }
.v18-cta-emblem img { width: 52px; height: 52px; }
.v18-cta h2 { margin: 0 0 .25rem; color: #fff; font-size: 1.55rem; font-weight: 900; }
.v18-cta p { margin: 0; color: rgba(255,255,255,.7); font-size: .75rem; }
.v18-cta-benefits { display: flex; flex-wrap: wrap; justify-content: center; gap: 1rem; color: rgba(255,255,255,.8); font-size: .7rem; }
.v18-cta-benefits i { color: var(--v18-gold-soft); }
.v18-gold-btn { display: inline-flex; align-items: center; gap: .65rem; padding: .82rem 1.35rem; border-radius: 999px; color: #3a2512; background: linear-gradient(135deg,#ead4a9,#cda15c); text-decoration: none; font-size: .78rem; font-weight: 900; }
.v18-gold-btn:hover { color: #24160b; filter: brightness(1.03); }

/* footer */
.v18-footer {
  position: relative;
  padding: 3.1rem 0 1rem;
  color: #fff;
  background:
    linear-gradient(rgba(12,10,9,.92),rgba(12,10,9,.95)),
    url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1900&q=70') center/cover;
}
.v18-footer-grid { display: grid; grid-template-columns: 1.35fr .8fr .8fr 1fr; gap: 2rem; }
.v18-brand-footer strong { font-size: .95rem; }
.v18-footer-brand p { max-width: 360px; margin: 1rem 0; color: rgba(255,255,255,.58); font-size: .72rem; line-height: 1.8; }
.v18-socials { display: flex; gap: .55rem; }
.v18-socials a { width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid rgba(213,173,103,.28); border-radius: 50%; color: var(--v18-gold-soft); }
.v18-socials a:hover { color: #1b130c; background: var(--v18-gold); }
.v18-footer h6 { margin-bottom: 1rem; color: var(--v18-gold-soft); font-size: .84rem; font-weight: 900; }
.v18-footer ul { list-style: none; padding: 0; margin: 0; display: grid; gap: .6rem; }
.v18-footer li,
.v18-footer a,
.v18-footer span { color: rgba(255,255,255,.66); font-size: .7rem; text-decoration: none; }
.v18-footer a:hover { color: #fff; }
.v18-contact-list i { width: 17px; color: var(--v18-gold); }
.v18-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 2.4rem; padding-top: 1rem; border-top: 1px solid rgba(255,255,255,.08); }
.v18-footer-bottom div { display: flex; gap: 1rem; }

.v18-whatsapp,
.v18-scroll-top {
  position: fixed;
  bottom: 22px;
  z-index: 1040;
  display: grid;
  place-items: center;
  border-radius: 50%;
  text-decoration: none;
  box-shadow: 0 12px 28px rgba(0,0,0,.2);
}
.v18-whatsapp { left: 22px; width: 52px; height: 52px; color: #fff; background: #20c968; font-size: 1.4rem; }
.v18-scroll-top { right: 22px; width: 48px; height: 48px; color: #211a16; background: #fff; }

@media (max-width: 1199.98px) {
  .v18-brand span { display: none; }
  .v18-navbar .v18-navlinks .nav-link { padding-inline: .55rem; font-size: .78rem; }
  .v18-hero-copy { right: 4%; width: 46vw; }
  .v18-hours-card { left: 24px; }
  .v18-hero-indicators { left: 110px; }
  .v18-hero-arrows { left: 24px; }
  .v18-cta-grid { grid-template-columns: 1fr auto; }
  .v18-cta-benefits { grid-column: 1 / -1; order: 3; }
}

@media (max-width: 991.98px) {
  .v18-navbar { background: rgba(12,9,7,.98); }
  .v18-brand span { display: block; }
  .v18-hero { min-height: 760px; }
  .v18-hero .carousel,
  .v18-hero .carousel-inner,
  .v18-hero .carousel-item { min-height: 684px; }
  .v18-hero-slide { background-position: 55% center; }
  .v18-hero-slide::before { background: linear-gradient(180deg,rgba(8,6,5,.35),rgba(8,6,5,.74) 62%,rgba(8,6,5,.92)); }
  .v18-hero-copy { top: 37%; right: 6%; left: 6%; width: auto; transform: none; }
  .v18-hero-copy h1,
  .v18-hero-copy h2 { font-size: clamp(2.8rem,8vw,4.2rem); }
  .v18-hours-card { top: auto; bottom: 70px; left: 6%; width: min(320px,88vw); }
  .v18-hero-indicators { left: 50%; bottom: 25px; transform: translateX(-50%); }
  .v18-hero-arrows { right: 6%; left: auto; bottom: 18px; }
  .v18-about { padding: 4rem 0; }
  .v18-about-image,
  .v18-about-image img { min-height: 390px; height: 390px; }
  .v18-values-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1.3rem 0; }
  .v18-values article:nth-child(3) { border-right: none; }
  .v18-booking-steps { grid-template-columns: repeat(3,minmax(0,1fr)); row-gap: 2.2rem; }
  .v18-booking-steps::before { display: none; }
  .v18-horse-card { flex-basis: calc((100% - 1rem)/2); }
  .v18-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 767.98px) {
  .v18-hero { min-height: 820px; }
  .v18-hero .carousel,
  .v18-hero .carousel-inner,
  .v18-hero .carousel-item { min-height: 744px; }
  .v18-hero-copy { top: 31%; }
  .v18-hero-copy h1,
  .v18-hero-copy h2 { font-size: clamp(2.6rem,13vw,3.8rem); }
  .v18-hero-copy p { font-size: .83rem; }
  .v18-hours-card { bottom: 72px; left: 5%; right: 5%; width: auto; }
  .v18-hero-arrows { display: none; }
  .v18-about-points { grid-template-columns: 1fr; }
  .v18-about h2 { font-size: 2.25rem; }
  .v18-values-grid { grid-template-columns: 1fr; }
  .v18-values article + article { border-right: none; border-top: 1px solid rgba(255,255,255,.08); padding-top: 1.3rem; }
  .v18-service-tabs a { flex-basis: 175px; }
  .v18-booking-steps { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .v18-horse-card { flex-basis: 82%; }
  .v18-cta-grid { grid-template-columns: 1fr; text-align: center; }
  .v18-cta-copy { justify-content: center; }
  .v18-gold-btn { justify-self: center; }
  .v18-footer-grid { grid-template-columns: 1fr; }
  .v18-footer-bottom { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 479.98px) {
  .v18-booking-steps { grid-template-columns: 1fr; }
  .v18-horse-card { flex-basis: 90%; }
  .v18-section-title h2 { font-size: 1.4rem; }
}

/* =========================================================
   HOME v1.9 — polish, stable sliders, offers/trips, auction
   ========================================================= */
html, body { overflow-x: hidden; }

/* Hero: smaller title, fully visible, lower visual anchor */
.v18-hero-copy {
  top: 55%;
  right: 6%;
  width: min(520px, 43vw);
  transform: translateY(-50%);
}
.v18-hero-copy h1,
.v18-hero-copy h2 {
  font-size: clamp(2.65rem, 4.15vw, 4.15rem);
  line-height: 1.12;
  letter-spacing: -.025em;
}
.v18-hero-copy p {
  max-width: 500px;
  font-size: .9rem;
  line-height: 1.9;
}
.v18-hours-card {
  top: 180px;
  width: 265px;
  padding: .88rem .95rem;
  border-radius: 13px;
}
.v18-hours-title { font-size: .73rem; }
.v18-hours-days { font-size: .71rem; }
.v18-hours-time { font-size: .75rem; }
.v18-hours-card p { font-size: .63rem; }
.v18-hours-card small { font-size: .57rem; }

/* Services — compact tabs, premium active/hover state, stable horizontal scrolling */
.v19-services {
  position: relative;
  padding: 3.5rem 0 3.7rem;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% -20%, rgba(213,173,103,.12), transparent 38%),
    linear-gradient(180deg, #fffdfa 0%, #faf5ed 100%);
}
.v19-services-intro {
  max-width: 700px;
  margin: -.6rem auto 1.6rem;
  color: #857a70;
  text-align: center;
  font-size: .78rem;
  line-height: 1.8;
}
.v19-service-slider-wrap {
  position: relative;
  width: 100%;
  min-width: 0;
  gap: .7rem;
}
.v19-service-tabs {
  direction: ltr;
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
  touch-action: pan-x;
}
.v19-service-tabs::-webkit-scrollbar { display: none; }
.v19-service-tabs a {
  direction: rtl;
  position: relative;
  flex: 0 0 172px;
  min-height: 58px;
  scroll-snap-align: center;
  border-radius: 15px;
  border: 1px solid rgba(187,151,88,.22);
  background: rgba(255,255,255,.82);
  box-shadow: 0 9px 22px rgba(46,32,22,.045);
  isolation: isolate;
}
html[dir="ltr"] .v19-service-tabs a { direction: ltr; }
.v19-service-tabs a::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  opacity: 0;
  background: linear-gradient(135deg, #221914 0%, #6f211f 60%, #b88e4a 135%);
  transition: opacity .25s ease;
}
.v19-service-tabs a i { transition: color .25s ease, transform .25s ease; }
.v19-service-tabs a:hover,
.v19-service-tabs a.is-active {
  color: #fff;
  border-color: rgba(213,173,103,.4);
  transform: translateY(-3px);
  box-shadow: 0 15px 32px rgba(70,30,25,.14);
}
.v19-service-tabs a:hover::before,
.v19-service-tabs a.is-active::before { opacity: 1; }
.v19-service-tabs a:hover i,
.v19-service-tabs a.is-active i { color: #f0d8aa; transform: scale(1.08); }
.v19-slide-arrow {
  position: relative;
  z-index: 3;
  width: 44px;
  height: 44px;
  flex: 0 0 44px;
  border-color: rgba(184,142,74,.35);
  background: #fffdfa;
  box-shadow: 0 10px 24px rgba(45,31,22,.07);
}
.v19-slide-arrow:hover {
  color: #fff;
  background: #211813;
  border-color: #211813;
  transform: translateY(-2px);
}

/* Offers & trips — cinematic flagship section */
.v19-offers {
  position: relative;
  padding: 5rem 0;
  overflow: hidden;
  color: #fff;
  background:
    radial-gradient(circle at 86% 12%, rgba(187,141,70,.2), transparent 27%),
    radial-gradient(circle at 12% 86%, rgba(171,28,42,.16), transparent 32%),
    linear-gradient(120deg, #0f0b09 0%, #1d1511 54%, #120e0c 100%);
}
.v19-offers::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .08;
  background-image: linear-gradient(115deg, transparent 0 49.4%, rgba(255,255,255,.24) 49.6% 50%, transparent 50.2% 100%);
  background-size: 100px 100px;
}
.v19-offers .container { position: relative; z-index: 2; max-width: 1320px; }
.v19-offers-heading {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  align-items: end;
  gap: 3rem;
  margin-bottom: 2rem;
}
.v19-offers-kicker {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin-bottom: .55rem;
  color: #e6c486;
  font-size: .78rem;
  font-weight: 800;
}
.v19-offers-heading h2 {
  margin: 0;
  color: #fff;
  font-size: clamp(2.2rem, 4.4vw, 4.2rem);
  line-height: 1.18;
  font-weight: 900;
}
.v19-offers-heading h2 span { color: #e3bd77; }
.v19-offers-heading > p {
  margin: 0;
  color: rgba(255,255,255,.58);
  font-size: .83rem;
  line-height: 2;
}
.v19-offers-stage {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(310px, .72fr);
  gap: 1rem;
  min-height: 560px;
}
.v19-offer-featured {
  position: relative;
  min-width: 0;
  min-height: 560px;
  overflow: hidden;
  border: 1px solid rgba(230,196,134,.22);
  border-radius: 28px;
  background: #211914;
  box-shadow: 0 35px 80px rgba(0,0,0,.28);
}
.v19-offer-featured > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .9s cubic-bezier(.2,.8,.2,1), filter .5s ease;
}
.v19-offer-featured:hover > img { transform: scale(1.035); filter: saturate(1.06); }
.v19-offer-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(12,9,7,.12) 10%, rgba(12,9,7,.35) 50%, rgba(12,9,7,.93) 100%), linear-gradient(180deg, rgba(12,9,7,.08), rgba(12,9,7,.72));
}
html[dir="ltr"] .v19-offer-overlay { background: linear-gradient(270deg, rgba(12,9,7,.12) 10%, rgba(12,9,7,.35) 50%, rgba(12,9,7,.93) 100%), linear-gradient(180deg, rgba(12,9,7,.08), rgba(12,9,7,.72)); }
.v19-offer-topline {
  position: absolute;
  top: 1.35rem;
  right: 1.35rem;
  left: 1.35rem;
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  color: rgba(255,255,255,.72);
  font-size: .68rem;
  font-weight: 700;
}
.v19-offer-topline span {
  padding: .45rem .68rem;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 999px;
  background: rgba(14,10,8,.32);
  backdrop-filter: blur(10px);
}
.v19-offer-content {
  position: absolute;
  right: clamp(1.5rem, 4vw, 3.2rem);
  bottom: clamp(1.5rem, 4vw, 3.2rem);
  z-index: 2;
  width: min(590px, 72%);
}
html[dir="ltr"] .v19-offer-content { right: auto; left: clamp(1.5rem, 4vw, 3.2rem); }
.v19-offer-chip {
  display: inline-flex;
  margin-bottom: .8rem;
  padding: .45rem .7rem;
  border-radius: 999px;
  color: #20140b;
  background: linear-gradient(135deg, #f0d7a0, #bd8c42);
  font-size: .7rem;
  font-weight: 900;
}
.v19-offer-content h3 {
  margin: 0 0 .75rem;
  color: #fff;
  font-size: clamp(1.8rem, 3.4vw, 3.2rem);
  line-height: 1.28;
  font-weight: 900;
}
.v19-offer-content p { margin: 0 0 1rem; color: rgba(255,255,255,.68); font-size: .8rem; line-height: 1.8; }
.v19-offer-meta { display: flex; flex-wrap: wrap; gap: .55rem; margin-bottom: 1.15rem; }
.v19-offer-meta span { display: inline-flex; align-items: center; gap: .35rem; color: rgba(255,255,255,.78); font-size: .66rem; }
.v19-offer-meta i { color: #dfb56d; }
.v19-offer-btn {
  display: inline-flex;
  align-items: center;
  gap: .65rem;
  padding: .78rem 1.15rem;
  border-radius: 999px;
  color: #fff;
  background: #b81f2d;
  text-decoration: none;
  font-size: .76rem;
  font-weight: 900;
  box-shadow: 0 14px 28px rgba(184,31,45,.23);
}
.v19-offer-btn:hover { color: #fff; background: #971925; }
.v19-offer-side-list { display: grid; grid-template-rows: 1fr 1fr auto; gap: 1rem; min-width: 0; }
.v19-offer-mini {
  position: relative;
  display: grid;
  grid-template-columns: 116px minmax(0,1fr) auto;
  align-items: center;
  gap: 1rem;
  min-height: 185px;
  padding: 1rem;
  overflow: hidden;
  border: 1px solid rgba(230,196,134,.14);
  border-radius: 22px;
  background: rgba(255,255,255,.045);
  backdrop-filter: blur(10px);
  transition: transform .25s ease, background .25s ease, border-color .25s ease;
}
html[dir="ltr"] .v19-offer-mini { grid-template-columns: 116px minmax(0,1fr) auto; }
.v19-offer-mini:hover { transform: translateY(-4px); background: rgba(255,255,255,.07); border-color: rgba(230,196,134,.28); }
.v19-offer-mini img { width: 116px; height: 140px; object-fit: cover; border-radius: 16px; }
.v19-offer-mini span { color: #dfb56d; font-size: .65rem; font-weight: 800; }
.v19-offer-mini h3 { margin: .35rem 0 .4rem; color: #fff; font-size: 1rem; line-height: 1.5; }
.v19-offer-mini p { margin: 0; color: rgba(255,255,255,.5); font-size: .66rem; }
.v19-offer-mini > i { color: rgba(230,196,134,.72); font-size: 1.05rem; }
.v19-offers-note {
  display: flex;
  align-items: center;
  gap: .75rem;
  padding: .95rem 1rem;
  border-radius: 18px;
  color: #1e160f;
  background: linear-gradient(135deg, #ead4a9, #c99b54);
}
.v19-offers-note > i { font-size: 1.2rem; }
.v19-offers-note strong,
.v19-offers-note small { display: block; }
.v19-offers-note strong { font-size: .76rem; }
.v19-offers-note small { margin-top: .15rem; font-size: .61rem; line-height: 1.5; opacity: .72; }

/* Booking — more character + glow interaction */
.v19-booking {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 10% 50%, rgba(213,173,103,.13), transparent 22%),
    radial-gradient(circle at 90% 45%, rgba(184,31,45,.06), transparent 20%),
    linear-gradient(180deg, #fffdf9, #f8f2e9);
}
.v19-booking::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .035;
  pointer-events: none;
  background-image: radial-gradient(circle, #8e6125 1px, transparent 1px);
  background-size: 24px 24px;
}
.v19-booking .container { position: relative; z-index: 2; }
.v19-booking-steps article {
  position: relative;
  z-index: 1;
  padding: 1.25rem .8rem 1.4rem;
  border-radius: 24px;
  transition: transform .28s ease, background .28s ease, box-shadow .28s ease;
}
.v19-booking-steps article::after {
  content: "";
  position: absolute;
  inset: 12px;
  z-index: -1;
  border-radius: 21px;
  opacity: 0;
  background: radial-gradient(circle at 50% 36%, rgba(213,173,103,.2), transparent 50%);
  box-shadow: inset 0 0 0 1px rgba(213,173,103,.18), 0 18px 45px rgba(107,55,36,.08);
  transition: opacity .28s ease;
}
.v19-booking-steps article:hover { transform: translateY(-7px); }
.v19-booking-steps article:hover::after { opacity: 1; }
.v19-booking-steps article:hover .v18-step-icon {
  color: #fff;
  border-color: rgba(213,173,103,.7);
  background: linear-gradient(145deg, #8f1f2d, #c89a52);
  box-shadow: 0 0 0 8px rgba(205,161,92,.09), 0 0 34px rgba(184,31,45,.22), 0 18px 34px rgba(75,42,27,.16);
  transform: translateY(-4px) scale(1.04);
}
.v19-booking-steps .v18-step-icon { transition: all .28s ease; }
.v19-booking-steps article:hover .v18-step-no { background: #b81f2d; box-shadow: 0 0 0 5px rgba(184,31,45,.09); }
.v19-booking-cta-wrap { margin-top: 1.8rem; }
.v19-booking-cta {
  padding: .82rem 1.7rem;
  border: 1px solid rgba(255,255,255,.18);
  background: linear-gradient(135deg, #a71927, #c72b38);
  box-shadow: 0 14px 30px rgba(184,31,45,.2);
  transition: transform .25s ease, box-shadow .25s ease;
}
.v19-booking-cta:hover { transform: translateY(-3px); box-shadow: 0 20px 38px rgba(184,31,45,.3); }

/* Auction — cinematic cards, independent stable carousel; no tabs */
.v19-auction {
  padding: 5rem 0 4.2rem;
  background:
    radial-gradient(circle at 12% 20%, rgba(171,28,42,.16), transparent 28%),
    radial-gradient(circle at 88% 80%, rgba(213,173,103,.15), transparent 30%),
    linear-gradient(120deg, #0a0807, #1a130f 52%, #0c0908);
}
.v19-auction::after { display: none; }
.v19-auction-head {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  align-items: end;
  gap: 3rem;
  margin-bottom: 2rem;
}
.v19-auction-kicker { display: inline-flex; align-items: center; gap: .45rem; margin-bottom: .55rem; color: #dfb56d; font-size: .76rem; font-weight: 800; }
.v19-auction-head h2 { margin: 0; color: #fff; font-size: clamp(2.2rem, 4.2vw, 4rem); line-height: 1.2; font-weight: 900; }
.v19-auction-head h2 span { color: #e2bd78; }
.v19-auction-head p { margin: 0; color: rgba(255,255,255,.55); font-size: .82rem; line-height: 2; }
.v19-auction-shell { position: relative; display: flex; align-items: center; gap: .85rem; min-width: 0; }
.v19-auction-viewport { flex: 1 1 auto; min-width: 0; overflow: hidden; border-radius: 28px; }
.v19-auction-track {
  direction: ltr;
  display: flex;
  gap: 1rem;
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-inline: contain;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  touch-action: pan-x;
}
.v19-auction-track::-webkit-scrollbar { display: none; }
.v19-horse-card {
  direction: rtl;
  position: relative;
  flex: 0 0 min(74%, 850px);
  height: 490px;
  overflow: hidden;
  scroll-snap-align: center;
  border: 1px solid rgba(219,180,111,.18);
  border-radius: 28px;
  background: #18110d;
  box-shadow: 0 28px 60px rgba(0,0,0,.26);
  transform: scale(.965);
  opacity: .78;
  transition: transform .35s ease, opacity .35s ease, border-color .35s ease;
}
html[dir="ltr"] .v19-horse-card { direction: ltr; }
.v19-horse-card.is-active,
.v19-horse-card:hover { transform: scale(1); opacity: 1; border-color: rgba(225,189,121,.42); }
.v19-horse-card > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .75s ease; }
.v19-horse-card:hover > img { transform: scale(1.035); }
.v19-horse-shade { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(8,6,5,.08) 20%, rgba(8,6,5,.18) 46%, rgba(8,6,5,.92) 100%), linear-gradient(90deg, transparent 35%, rgba(8,6,5,.28) 100%); }
html[dir="ltr"] .v19-horse-shade { background: linear-gradient(180deg, rgba(8,6,5,.08) 20%, rgba(8,6,5,.18) 46%, rgba(8,6,5,.92) 100%), linear-gradient(270deg, transparent 35%, rgba(8,6,5,.28) 100%); }
.v19-auction-status { position: absolute; top: 1.25rem; right: 1.25rem; padding: .45rem .72rem; border-radius: 999px; color: #fff; background: #b81f2d; font-size: .67rem; font-weight: 900; box-shadow: 0 10px 24px rgba(184,31,45,.2); }
html[dir="ltr"] .v19-auction-status { right: auto; left: 1.25rem; }
.v19-horse-copy { position: absolute; right: 1.6rem; left: 1.6rem; bottom: 1.55rem; }
.v19-horse-copy small { color: #e0bb79; font-size: .7rem; font-weight: 800; }
.v19-horse-copy h3 { margin: .2rem 0 .7rem; color: #fff; font-size: clamp(1.55rem, 3vw, 2.45rem); font-weight: 900; }
.v19-horse-facts { display: flex; flex-wrap: wrap; gap: .55rem .9rem; }
.v19-horse-facts span { display: inline-flex; align-items: center; gap: .35rem; color: rgba(255,255,255,.72); font-size: .66rem; }
.v19-horse-facts i { color: #d6a95d; }
.v19-auction-arrow { position: relative; z-index: 5; width: 48px; height: 48px; flex: 0 0 48px; background: rgba(255,255,255,.035); backdrop-filter: blur(10px); }
.v19-auction-arrow:hover { background: linear-gradient(135deg, #cda15c, #9b682b); }
.v19-auction-bottom { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 1.25rem; }
.v19-auction-bottom .v18-auction-dots { margin: 0; }
.v19-auction-bottom > span { color: rgba(255,255,255,.45); font-size: .65rem; }
.v19-auction-bottom > span i { color: #d8ac62; }

@media (max-width: 1199.98px) {
  .v18-hero-copy { width: min(500px, 47vw); }
  .v19-offers-stage { grid-template-columns: 1.35fr .75fr; }
  .v19-offer-mini { grid-template-columns: 96px minmax(0,1fr) auto; }
  .v19-offer-mini img { width: 96px; }
  .v19-horse-card { flex-basis: 82%; }
}

@media (max-width: 991.98px) {
  .v18-hero-copy { top: 42%; right: 6%; left: 6%; width: auto; transform: none; }
  .v18-hero-copy h1,
  .v18-hero-copy h2 { font-size: clamp(2.35rem, 7.5vw, 3.55rem); }
  .v18-hours-card { width: min(285px, 88vw); }
  .v19-offers-heading,
  .v19-auction-head { grid-template-columns: 1fr; gap: 1rem; }
  .v19-offers-stage { grid-template-columns: 1fr; }
  .v19-offer-featured { min-height: 500px; }
  .v19-offer-side-list { grid-template-columns: 1fr 1fr; grid-template-rows: auto auto; }
  .v19-offers-note { grid-column: 1 / -1; }
  .v19-horse-card { flex-basis: 88%; height: 440px; }
}

@media (max-width: 767.98px) {
  .v18-hero-copy { top: 29%; }
  .v18-hero-copy h1,
  .v18-hero-copy h2 { font-size: clamp(2.15rem, 10vw, 3.05rem); }
  .v18-hours-card { bottom: 68px; }
  .v19-service-tabs a { flex-basis: 152px; min-height: 55px; font-size: .72rem; }
  .v19-slide-arrow { width: 40px; height: 40px; flex-basis: 40px; }
  .v19-offers { padding: 3.8rem 0; }
  .v19-offers-heading h2,
  .v19-auction-head h2 { font-size: 2.25rem; }
  .v19-offer-featured { min-height: 520px; }
  .v19-offer-content { right: 1.25rem; left: 1.25rem; bottom: 1.35rem; width: auto; }
  .v19-offer-topline { top: 1rem; right: 1rem; left: 1rem; }
  .v19-offer-side-list { grid-template-columns: 1fr; }
  .v19-offers-note { grid-column: auto; }
  .v19-offer-mini { grid-template-columns: 88px minmax(0,1fr) auto; min-height: 145px; }
  .v19-offer-mini img { width: 88px; height: 112px; }
  .v19-auction { padding: 3.8rem 0 3.2rem; }
  .v19-horse-card { flex-basis: 92%; height: 410px; }
  .v19-auction-arrow { width: 42px; height: 42px; flex-basis: 42px; }
  .v19-auction-bottom { flex-direction: column; justify-content: center; text-align: center; }
}

@media (max-width: 479.98px) {
  .v19-service-slider-wrap { gap: .35rem; }
  .v19-service-tabs a { flex-basis: 138px; padding-inline: .65rem; }
  .v19-offer-meta { gap: .45rem; }
  .v19-horse-card { flex-basis: 100%; height: 390px; border-radius: 22px; }
  .v19-auction-shell { gap: .35rem; }
  .v19-auction-arrow { width: 38px; height: 38px; flex-basis: 38px; }
}

/* ---------- Home v1.10: Services image tabs ---------- */
.v19-service-tabs {
  gap: .9rem;
  padding: .45rem .15rem .9rem;
  align-items: stretch;
}

.v19-service-tabs a.service-image-tab {
  position: relative;
  flex: 0 0 210px;
  height: 138px;
  min-height: 138px;
  padding: 0;
  overflow: hidden;
  display: block;
  border: 1px solid rgba(190,151,83,.3);
  border-radius: 20px;
  background: #17120f;
  box-shadow: 0 14px 34px rgba(38,25,17,.09);
  isolation: isolate;
  transform: none;
}

.v19-service-tabs a.service-image-tab::before { display: none; }

.service-image-tab img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .55s cubic-bezier(.2,.75,.2,1), filter .35s ease;
}

.service-image-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(12,8,6,.08) 5%, rgba(12,8,6,.18) 38%, rgba(12,8,6,.88) 100%),
    linear-gradient(90deg, rgba(123,24,34,.12), transparent 55%);
  transition: background .3s ease;
}

.service-image-label {
  position: absolute;
  z-index: 2;
  right: 14px;
  left: 14px;
  bottom: 13px;
  display: flex;
  align-items: center;
  gap: .55rem;
  color: #fff;
  text-shadow: 0 2px 14px rgba(0,0,0,.5);
}

html[dir="ltr"] .service-image-label { direction: ltr; }

.service-image-label i {
  width: 32px;
  height: 32px;
  flex: 0 0 32px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 50%;
  color: #f0d8aa !important;
  background: rgba(15,10,8,.46);
  backdrop-filter: blur(8px);
  font-size: .9rem !important;
}

.service-image-label b {
  font-size: .82rem;
  line-height: 1.45;
  font-weight: 800;
}

.v19-service-tabs a.service-image-tab:hover,
.v19-service-tabs a.service-image-tab.is-active {
  transform: translateY(-5px);
  border-color: rgba(222,182,111,.78);
  box-shadow: 0 20px 42px rgba(70,34,26,.19);
}

.v19-service-tabs a.service-image-tab:hover img,
.v19-service-tabs a.service-image-tab.is-active img {
  transform: scale(1.08);
  filter: saturate(1.08) contrast(1.04);
}

.v19-service-tabs a.service-image-tab:hover .service-image-overlay,
.v19-service-tabs a.service-image-tab.is-active .service-image-overlay {
  background:
    linear-gradient(180deg, rgba(12,8,6,.02) 0%, rgba(12,8,6,.16) 34%, rgba(77,17,23,.9) 100%),
    linear-gradient(90deg, rgba(213,173,103,.12), transparent 60%);
}

.v19-service-tabs a.service-image-tab.is-active::after {
  content: "";
  position: absolute;
  z-index: 3;
  top: 10px;
  right: 10px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #d6aa61;
  box-shadow: 0 0 0 5px rgba(214,170,97,.14), 0 0 18px rgba(214,170,97,.55);
}

html[dir="ltr"] .v19-service-tabs a.service-image-tab.is-active::after {
  right: auto;
  left: 10px;
}

.v19-service-slider-wrap {
  align-items: center;
}

.v19-slide-arrow {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
}

@media (max-width: 991.98px) {
  .v19-service-tabs a.service-image-tab {
    flex-basis: 190px;
    height: 126px;
    min-height: 126px;
  }
}

@media (max-width: 575.98px) {
  .v19-service-tabs a.service-image-tab {
    flex-basis: 166px;
    height: 116px;
    min-height: 116px;
    border-radius: 17px;
  }
  .service-image-label { right: 10px; left: 10px; bottom: 10px; }
  .service-image-label b { font-size: .74rem; }
  .service-image-label i { width: 29px; height: 29px; flex-basis: 29px; }
}

/* =========================================================
   HOME v1.11 — hero visibility + service photo tabs
   ========================================================= */

/* Hero: give the positioning context a real height so text never jumps under the fixed nav */
.v18-hero {
  min-height: 720px;
  padding-top: 76px;
  overflow: hidden;
}
.v18-hero .carousel,
.v18-hero .carousel-inner,
.v18-hero .carousel-item,
.v18-hero-slide > .container {
  height: 644px !important;
  min-height: 644px;
}
.v18-hero-slide > .container {
  position: relative;
}
.v18-hero-copy {
  position: absolute;
  top: 50%;
  right: 5.5%;
  width: min(470px, 39vw);
  max-width: 470px;
  transform: translateY(-42%);
  z-index: 6;
  padding: 0;
}
.v18-hero-copy h1,
.v18-hero-copy h2 {
  margin: 0 0 .85rem;
  font-size: clamp(2.45rem, 3.65vw, 3.65rem);
  line-height: 1.13;
  letter-spacing: -.02em;
}
.v18-hero-copy p {
  max-width: 455px;
  margin-bottom: 1.25rem;
  font-size: .88rem;
  line-height: 1.85;
}
.v18-hero-kicker {
  margin-bottom: .55rem;
  font-size: .76rem;
}
.v18-primary-btn {
  padding: .7rem 1.2rem;
  border-radius: 10px;
  font-size: .82rem;
}

/* stronger text readability on every hero image */
.v18-hero-slide::before {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(7,5,4,.78) 0%, rgba(7,5,4,.34) 31%, rgba(7,5,4,.08) 53%, rgba(7,5,4,.58) 78%, rgba(7,5,4,.88) 100%),
    linear-gradient(180deg, rgba(7,5,4,.14) 0%, rgba(7,5,4,.10) 52%, rgba(7,5,4,.48) 100%);
}
.v18-hero-copy::before {
  content: "";
  position: absolute;
  inset: -26px -28px -26px -34px;
  z-index: -1;
  border-radius: 24px;
  background: radial-gradient(circle at 70% 45%, rgba(12,8,6,.44), rgba(12,8,6,.12) 62%, transparent 76%);
  pointer-events: none;
}

/* Visit card: compact and never overlaps hero copy */
.v18-hours-card {
  top: 184px;
  left: max(28px, calc((100vw - 1320px) / 2));
  width: 250px;
  padding: .82rem .9rem;
}

/* Services: real image tabs, clearly visible as tabs rather than plain buttons */
.v19-services {
  padding: 3.8rem 0 4rem;
}
.v19-services-intro {
  max-width: 760px;
  margin-bottom: 1.45rem;
}
.v19-service-slider-wrap {
  display: grid;
  grid-template-columns: 50px minmax(0,1fr) 50px;
  align-items: center;
  gap: .8rem;
  width: 100%;
  overflow: hidden;
}
.v19-service-tabs {
  display: flex;
  gap: .9rem;
  width: 100%;
  min-width: 0;
  padding: .55rem .25rem 1rem;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
  scroll-snap-type: x proximity;
}
.v19-service-tabs::-webkit-scrollbar { display: none; }
.v19-service-tabs a.service-image-tab {
  position: relative;
  flex: 0 0 218px;
  width: 218px;
  height: 148px;
  min-height: 148px;
  padding: 0;
  overflow: hidden;
  border: 1px solid rgba(205,161,92,.32);
  border-radius: 22px;
  background: #17110f;
  box-shadow: 0 14px 34px rgba(38,25,17,.10);
  scroll-snap-align: center;
  transform: translateZ(0);
}
.v19-service-tabs a.service-image-tab > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transform: scale(1.01);
}
.service-image-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(180deg, rgba(9,6,5,.02) 0%, rgba(9,6,5,.12) 44%, rgba(9,6,5,.92) 100%),
    linear-gradient(90deg, rgba(143,31,45,.12), transparent 62%);
}
.service-image-label {
  position: absolute;
  right: 13px;
  left: 13px;
  bottom: 13px;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: .58rem;
  color: #fff;
}
.service-image-label i {
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(239,207,151,.38);
  border-radius: 50%;
  color: #f1d49d !important;
  background: rgba(13,9,7,.58);
  backdrop-filter: blur(8px);
}
.service-image-label b {
  font-size: .83rem;
  line-height: 1.45;
  font-weight: 900;
  text-shadow: 0 2px 14px rgba(0,0,0,.6);
}
.v19-service-tabs a.service-image-tab:hover,
.v19-service-tabs a.service-image-tab.is-active {
  transform: translateY(-5px);
  border-color: rgba(230,194,126,.82);
  box-shadow: 0 22px 45px rgba(72,31,23,.20);
}
.v19-service-tabs a.service-image-tab:hover > img,
.v19-service-tabs a.service-image-tab.is-active > img {
  transform: scale(1.075);
  filter: saturate(1.08) contrast(1.05);
}
.v19-service-tabs a.service-image-tab.is-active::after {
  content: "";
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 4;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #e0b66d;
  box-shadow: 0 0 0 5px rgba(224,182,109,.15), 0 0 20px rgba(224,182,109,.75);
}
.v19-slide-arrow {
  position: relative;
  inset: auto;
  width: 48px;
  height: 48px;
  flex: none;
  margin: 0;
}

/* Slider mechanics: keep movement inside its own viewport */
#serviceTabs,
#auctionTrack {
  max-width: 100%;
  min-width: 0;
  contain: layout paint;
}
.v19-auction-shell,
.v19-service-slider-wrap {
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
}

@media (max-width: 1199.98px) {
  .v18-hero-copy { right: 4.5%; width: min(450px, 43vw); }
  .v18-hours-card { left: 24px; }
}

@media (max-width: 991.98px) {
  .v18-hero,
  .v18-hero .carousel,
  .v18-hero .carousel-inner,
  .v18-hero .carousel-item,
  .v18-hero-slide > .container {
    height: auto !important;
    min-height: 760px;
  }
  .v18-hero-copy {
    top: 24%;
    right: 6%;
    left: 6%;
    width: auto;
    max-width: 620px;
    transform: none;
  }
  .v18-hero-copy h1,
  .v18-hero-copy h2 { font-size: clamp(2.25rem, 7vw, 3.25rem); }
  .v18-hours-card { top: auto; bottom: 74px; left: 6%; width: min(285px,88vw); }
  .v19-service-slider-wrap { grid-template-columns: 44px minmax(0,1fr) 44px; gap: .5rem; }
  .v19-service-tabs a.service-image-tab { flex-basis: 190px; width: 190px; height: 132px; min-height: 132px; }
}

@media (max-width: 575.98px) {
  .v18-hero-copy { top: 20%; }
  .v18-hero-copy h1,
  .v18-hero-copy h2 { font-size: clamp(2rem, 10vw, 2.8rem); }
  .v18-hero-copy p { font-size: .8rem; line-height: 1.75; }
  .v19-service-slider-wrap { grid-template-columns: 40px minmax(0,1fr) 40px; gap: .35rem; }
  .v19-service-tabs a.service-image-tab { flex-basis: 164px; width: 164px; height: 116px; min-height: 116px; border-radius: 18px; }
  .service-image-label { right: 10px; left: 10px; bottom: 10px; }
  .service-image-label b { font-size: .72rem; }
  .service-image-label i { width: 29px; height: 29px; flex-basis: 29px; }
}


/* =========================================================
   HOME v1.12 — elegance polish for services / offers / auction
   ========================================================= */
body { overflow-x: hidden; }

.v19-services {
  background:
    radial-gradient(circle at 50% 0%, rgba(208,163,92,.14), transparent 28%),
    linear-gradient(180deg, #fffdf8 0%, #f6efe5 100%);
}
.v19-service-slider-wrap {
  display: grid;
  grid-template-columns: 50px minmax(0,1fr) 50px;
  align-items: center;
  gap: .85rem;
}
.v19-service-tabs {
  display: flex;
  gap: 1rem;
  padding: .5rem .2rem 1rem;
}
.v19-service-tabs a.service-image-tab {
  flex: 0 0 244px;
  width: 244px;
  height: 184px;
  min-height: 184px;
  border-radius: 24px;
  border: 1px solid rgba(201,157,90,.32);
  box-shadow: 0 18px 40px rgba(69,39,22,.10);
}
.service-image-badge {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 3;
  padding: .42rem .74rem;
  border-radius: 999px;
  color: #fff;
  background: rgba(184,31,45,.94);
  font-size: .63rem;
  font-weight: 900;
  box-shadow: 0 10px 22px rgba(184,31,45,.22);
}
html[dir="ltr"] .service-image-badge { right: auto; left: 14px; }
.service-image-overlay {
  background:
    linear-gradient(180deg, rgba(11,8,6,.04) 0%, rgba(11,8,6,.22) 42%, rgba(11,8,6,.96) 100%),
    linear-gradient(90deg, rgba(143,31,45,.14), transparent 65%);
}
.service-image-footer {
  position: absolute;
  right: 14px;
  left: 14px;
  bottom: 14px;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: .8rem;
}
html[dir="ltr"] .service-image-footer { direction: ltr; }
.service-image-icon {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  display: grid;
  place-items: center;
  border: 1px solid rgba(239,208,153,.36);
  border-radius: 50%;
  color: #f0d8aa;
  background: rgba(14,10,8,.58);
  backdrop-filter: blur(8px);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}
.service-image-icon i { font-size: 1rem; color: inherit !important; }
.service-image-label {
  position: static;
  right: auto;
  left: auto;
  bottom: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .18rem;
  min-width: 0;
}
.service-image-label small {
  color: rgba(255,255,255,.78);
  font-size: .63rem;
  line-height: 1.55;
  font-weight: 600;
}
.service-image-label b {
  font-size: .92rem;
  line-height: 1.45;
  font-weight: 900;
}
.v19-service-tabs a.service-image-tab:hover,
.v19-service-tabs a.service-image-tab.is-active {
  transform: translateY(-6px);
  border-color: rgba(230,194,126,.85);
  box-shadow: 0 24px 52px rgba(72,31,23,.18);
}
.v19-service-tabs a.service-image-tab.is-active::after {
  width: 10px;
  height: 10px;
}

.v20-offers-grid {
  display: grid;
  grid-template-columns: 1.25fr .95fr .95fr;
  gap: 1rem;
  align-items: stretch;
}
.v20-offer-card {
  position: relative;
  min-height: 470px;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(229,197,135,.18);
  background: #17110d;
  box-shadow: 0 30px 68px rgba(0,0,0,.24);
  text-decoration: none;
  color: #fff;
}
.v20-offer-main { min-height: 560px; }
.v20-offer-card > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .85s ease, filter .45s ease;
}
.v20-offer-card:hover > img { transform: scale(1.045); filter: saturate(1.05); }
.v20-offer-layer {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(8,6,5,.1) 5%, rgba(8,6,5,.26) 42%, rgba(8,6,5,.92) 100%), linear-gradient(90deg, rgba(129,20,33,.08), transparent 60%);
}
.v20-offer-state {
  position: absolute;
  top: 18px;
  right: 18px;
  z-index: 3;
  padding: .45rem .75rem;
  border-radius: 999px;
  color: #fff;
  background: rgba(184,31,45,.95);
  font-size: .66rem;
  font-weight: 900;
}
html[dir="ltr"] .v20-offer-state { right: auto; left: 18px; }
.v20-offer-copy {
  position: absolute;
  right: 1.35rem;
  left: 1.35rem;
  bottom: 1.35rem;
  z-index: 3;
}
.v20-offer-copy small {
  display: inline-block;
  margin-bottom: .55rem;
  color: #e6c486;
  font-size: .7rem;
  font-weight: 800;
}
.v20-offer-copy h3 {
  margin: 0 0 .55rem;
  color: #fff;
  font-size: clamp(1.35rem, 2.8vw, 2.4rem);
  line-height: 1.35;
  font-weight: 900;
}
.v20-offer-card:not(.v20-offer-main) .v20-offer-copy h3 { font-size: 1.35rem; }
.v20-offer-copy p {
  margin: 0 0 .95rem;
  color: rgba(255,255,255,.75);
  font-size: .74rem;
  line-height: 1.8;
}
.v20-offer-meta { display: flex; flex-wrap: wrap; gap: .45rem; margin-bottom: 1rem; }
.v20-offer-meta span {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .42rem .65rem;
  border-radius: 999px;
  color: rgba(255,255,255,.88);
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.12);
  font-size: .63rem;
}
.v20-offer-meta i { color: #e1b96f; }
.v20-offer-link {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .78rem 1rem;
  border-radius: 999px;
  color: #1b120d;
  background: linear-gradient(135deg, #f1d69e, #c8954c);
  font-size: .72rem;
  font-weight: 900;
  box-shadow: 0 15px 28px rgba(195,147,74,.18);
}
.v20-offers-strip {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 1rem;
  margin-top: 1.15rem;
}
.v20-offers-strip > div {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .65rem;
  padding: 1rem 1.1rem;
  border-radius: 18px;
  color: rgba(255,255,255,.82);
  background: rgba(255,255,255,.05);
  border: 1px solid rgba(229,197,135,.14);
  font-size: .72rem;
  text-align: center;
}
.v20-offers-strip i { color: #e0b66e; }

.v19-auction {
  background:
    radial-gradient(circle at 15% 0%, rgba(213,173,103,.12), transparent 24%),
    radial-gradient(circle at 100% 100%, rgba(184,31,45,.10), transparent 24%),
    linear-gradient(135deg, #0d0907 0%, #140e0b 55%, #0b0706 100%);
}
.v19-auction-viewport { overflow: hidden; }
.v19-auction-track { padding-bottom: .35rem; }
.v19-horse-card {
  flex: 0 0 min(68%, 660px);
  height: 500px;
  border-radius: 30px;
  border: 1px solid rgba(219,180,111,.22);
  box-shadow: 0 28px 65px rgba(0,0,0,.32);
}
.v19-horse-card.is-active,
.v19-horse-card:hover {
  border-color: rgba(225,189,121,.55);
  box-shadow: 0 36px 75px rgba(0,0,0,.38);
}
.v20-horse-text {
  margin: 0 0 .9rem;
  color: rgba(255,255,255,.72);
  font-size: .74rem;
  line-height: 1.8;
  max-width: 480px;
}
.v20-horse-link {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  margin-top: 1rem;
  padding: .72rem .95rem;
  border-radius: 999px;
  color: #1a120c;
  background: linear-gradient(135deg, #f0d6a1, #c39249);
  font-size: .7rem;
  font-weight: 900;
}
.v19-horse-copy h3 { margin-bottom: .5rem; }
.v19-horse-facts span {
  padding: .42rem .62rem;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.10);
}
.v19-auction-bottom > span { color: rgba(255,255,255,.56); font-size: .68rem; }

@media (max-width: 1199.98px) {
  .v20-offers-grid { grid-template-columns: 1fr 1fr; }
  .v20-offer-main { grid-column: 1 / -1; min-height: 500px; }
}
@media (max-width: 991.98px) {
  .v19-service-slider-wrap { grid-template-columns: 44px minmax(0,1fr) 44px; }
  .v19-service-tabs a.service-image-tab { flex-basis: 214px; width: 214px; height: 168px; min-height: 168px; }
  .v20-offers-grid,
  .v20-offers-strip { grid-template-columns: 1fr; }
  .v20-offer-card,
  .v20-offer-main { min-height: 360px; }
  .v19-horse-card { flex-basis: 84%; height: 470px; }
}
@media (max-width: 575.98px) {
  .v19-service-slider-wrap { grid-template-columns: 40px minmax(0,1fr) 40px; gap: .4rem; }
  .v19-service-tabs a.service-image-tab { flex-basis: 176px; width: 176px; height: 152px; min-height: 152px; border-radius: 20px; }
  .service-image-badge { top: 10px; right: 10px; font-size: .57rem; padding: .35rem .58rem; }
  .service-image-footer { right: 10px; left: 10px; bottom: 10px; gap: .55rem; }
  .service-image-icon { width: 32px; height: 32px; flex-basis: 32px; }
  .service-image-label b { font-size: .78rem; }
  .service-image-label small { font-size: .58rem; }
  .v20-offer-card,
  .v20-offer-main { min-height: 320px; border-radius: 24px; }
  .v20-offer-copy { right: 1rem; left: 1rem; bottom: 1rem; }
  .v20-offer-copy h3 { font-size: 1.28rem !important; }
  .v19-horse-card { flex-basis: 92%; height: 430px; border-radius: 24px; }
}


/* =========================================================
   HOME / INNER PAGES v1.14 — phase one content
   ========================================================= */
.v20-mission{padding:1rem 0 4.5rem;background:#fff}
.v20-mission-card{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:2.2rem;padding:clamp(1.8rem,4vw,3.4rem);border-radius:32px;overflow:hidden;color:#fff;background:linear-gradient(135deg,#17100d 0%,#2a1714 55%,#721a23 100%);box-shadow:0 30px 70px rgba(75,31,24,.14)}
.v20-mission-card:before{content:"";position:absolute;inset:0;opacity:.08;background-image:linear-gradient(120deg,transparent 0 49%,rgba(255,255,255,.4) 49.4% 49.8%,transparent 50.2%);background-size:90px 90px}
.v20-mission-card>*{position:relative;z-index:2}.v20-mission-mark{position:absolute;left:3rem;top:1.6rem;z-index:1;font-size:5rem;color:rgba(255,255,255,.06)}
.v20-mission-copy .v18-eyebrow{color:#e5bd74}.v20-mission-copy h2{margin:.6rem 0 1rem;font-size:clamp(1.7rem,3vw,2.8rem);font-weight:900;line-height:1.35}.v20-mission-copy p{margin:0;color:rgba(255,255,255,.7);font-size:.82rem;line-height:2}
.v20-mission-points{display:grid;gap:.75rem}.v20-mission-points article{display:flex;align-items:center;gap:.8rem;padding:1rem 1.1rem;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.055)}.v20-mission-points i{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;color:#eed39b;background:rgba(255,255,255,.07)}.v20-mission-points strong,.v20-mission-points small{display:block}.v20-mission-points strong{font-size:.75rem}.v20-mission-points small{margin-top:2px;color:rgba(255,255,255,.5);font-size:.61rem}

.v20-team-teaser{padding:4.8rem 0;background:linear-gradient(180deg,#fff,#f8f2ea)}.v20-team-head{display:flex;align-items:end;justify-content:space-between;gap:1.5rem;margin-bottom:1.6rem}.v20-team-head h2{max-width:650px;margin:.5rem 0 0;font-size:clamp(1.7rem,3vw,2.8rem);font-weight:900}.v20-outline-link{display:inline-flex;align-items:center;gap:.45rem;padding:.72rem 1rem;border:1px solid #d7c4aa;border-radius:999px;color:#7a1d26;font-size:.7rem;font-weight:900}.v20-team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.v20-coach-mini{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:1.1rem;border:1px solid #e8dccb;border-radius:20px;background:#fffdfa;box-shadow:0 14px 34px rgba(66,38,22,.045);transition:.25s ease}.v20-coach-mini:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(66,38,22,.08)}.v20-coach-letter,.v20-profile-monogram{display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#c99a4f,#8f1722);font-weight:900}.v20-coach-letter{width:44px;height:44px}.v20-coach-mini strong,.v20-coach-mini small{display:block}.v20-coach-mini strong{font-size:.78rem}.v20-coach-mini small{margin-top:3px;color:#877b70;font-size:.6rem}.v20-coach-mini>i{color:#b88a47}

.v20-inner-page{background:#f8f3ec}.v20-inner-page .v18-navbar{background:#0d0908;border-bottom:1px solid rgba(255,255,255,.07)}
.v20-service-hero{position:relative;min-height:620px;display:flex;align-items:center;padding-top:92px;color:#fff;background-position:center;background-size:cover;overflow:hidden}.v20-service-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,7,6,.28),rgba(10,7,6,.7) 58%,rgba(10,7,6,.94) 100%)}.v20-training-hero{background-image:url('https://images.unsplash.com/photo-1553284965-83fd3e82fa5a?auto=format&fit=crop&w=1800&q=88')}.v20-archery-hero{background-image:url('https://images.unsplash.com/photo-1510925758641-869d353cecc7?auto=format&fit=crop&w=1800&q=88')}.v20-service-hero .container{position:relative;z-index:2}.v20-service-hero-copy{max-width:680px;margin-right:auto}.v20-service-kicker{display:inline-flex;padding:.48rem .72rem;border:1px solid rgba(238,208,154,.32);border-radius:999px;color:#f0d39a;background:rgba(15,10,8,.34);font-size:.7rem;font-weight:900}.v20-service-hero h1{margin:1rem 0 .8rem;font-size:clamp(2.3rem,5vw,4.6rem);line-height:1.18;font-weight:900}.v20-service-hero p{max-width:620px;margin:0;color:rgba(255,255,255,.72);font-size:.84rem;line-height:2}.v20-hero-pills{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.2rem}.v20-hero-pills span{display:inline-flex;align-items:center;gap:.38rem;padding:.55rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);font-size:.64rem}.v20-hero-pills i{color:#e5bd75}

.v20-training-switch{position:relative;z-index:3;margin-top:-42px}.v20-switch-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.v20-training-type{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:.9rem;padding:1.2rem 1.3rem;border:1px solid #eadbc6;border-radius:22px;background:#fffdfa;box-shadow:0 20px 48px rgba(55,34,22,.1)}.v20-training-type>i:first-of-type{width:42px;height:42px;display:grid;place-items:center;border-radius:14px;color:#8f1722;background:#f6e6e4}.v20-training-type strong,.v20-training-type small{display:block}.v20-training-type strong{font-size:.8rem}.v20-training-type small{margin-top:3px;color:#85786e;font-size:.6rem}.v20-training-type>i:last-child{color:#b68441}.v20-type-no{color:#c99a4f;font-weight:900;font-size:.65rem}

.v20-packages-section{padding:6rem 0;background:linear-gradient(180deg,#f8f3ec,#fffdfa)}.v20-section-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.v20-section-head h2{max-width:700px;margin:.5rem 0 0;font-size:clamp(1.7rem,3vw,2.8rem);font-weight:900}.v20-section-head p{max-width:420px;margin:0;color:#857970;font-size:.7rem;line-height:1.9}.v20-package-grid{display:grid;gap:1rem}.v20-package-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.v20-package-grid-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin:auto}.v20-plan-card{position:relative;padding:1.45rem;border:1px solid #e8dac8;border-radius:24px;background:#fff;box-shadow:0 16px 36px rgba(64,39,24,.05);transition:.25s ease}.v20-plan-card:hover{transform:translateY(-6px);box-shadow:0 25px 50px rgba(64,39,24,.09)}.v20-plan-featured{border-color:#d2a35b;background:linear-gradient(180deg,#fff,#fff8ed)}.v20-popular{position:absolute;top:13px;left:13px;padding:.38rem .62rem;border-radius:999px;color:#fff;background:#b81f2d;font-size:.56rem;font-weight:900}.v20-plan-top{display:inline-flex;padding:.42rem .65rem;border-radius:999px;color:#8f1722;background:#f8e9e8;font-size:.62rem;font-weight:900}.v20-plan-card h3{margin:1rem 0 .3rem;font-size:1rem;font-weight:900}.v20-price{font-size:2rem;font-weight:900}.v20-price small{font-size:.68rem;color:#8a7e74}.v20-plan-card ul{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.55rem}.v20-plan-card li{display:flex;align-items:center;gap:.45rem;color:#74695f;font-size:.65rem}.v20-plan-card li i{color:#b58440}.v20-tabby{display:block;margin-bottom:1rem;color:#3a6b59;font-size:.58rem;font-weight:800}.v20-plan-btn{display:flex;justify-content:center;padding:.72rem .9rem;border-radius:12px;color:#fff;background:linear-gradient(135deg,#b81f2d,#8f1722);font-size:.65rem;font-weight:900}.v20-plan-btn:hover{color:#fff}

.v20-jumping-section{padding:5.5rem 0;background:#15100d}.v20-jumping-shell{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:center}.v20-jumping-media{position:relative;min-height:520px;border-radius:28px;overflow:hidden}.v20-jumping-media img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.v20-jumping-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(9,6,5,.78))}.v20-jumping-media span{position:absolute;right:1.3rem;bottom:1.2rem;z-index:2;color:#fff;font-size:.76rem;font-weight:900}.v20-jumping-copy{color:#fff}.v20-jumping-copy .v18-eyebrow{color:#e2bc75}.v20-jumping-copy h2{margin:.5rem 0 .8rem;font-size:clamp(1.8rem,3.4vw,3.3rem);font-weight:900}.v20-jumping-copy>p{color:rgba(255,255,255,.62);font-size:.75rem;line-height:1.9}.v20-jump-plans{display:grid;gap:.75rem;margin-top:1.4rem}.v20-jump-plans article{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:.9rem;padding:1rem;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.055)}.v20-jump-plans strong,.v20-jump-plans small{display:block}.v20-jump-plans strong{font-size:.76rem}.v20-jump-plans small{margin-top:2px;color:rgba(255,255,255,.44);font-size:.58rem}.v20-jump-plans>article>span{color:#e8c57f;font-size:.72rem;font-weight:900}.v20-jump-plans a{padding:.55rem .75rem;border-radius:10px;color:#fff;background:#b81f2d;font-size:.6rem;font-weight:900}

.v20-archery-intro{padding:4rem 0 0}.v20-archery-card{display:flex;align-items:center;gap:1rem;padding:1.4rem 1.5rem;border-radius:22px;border:1px solid #e4d4bf;background:#fffdfa}.v20-archery-icon{width:64px;height:64px;display:grid;place-items:center;flex:0 0 64px;border-radius:18px;color:#fff;background:linear-gradient(135deg,#c99a4f,#8f1722);font-size:1.4rem}.v20-archery-card h2{margin:.35rem 0;font-size:1.4rem;font-weight:900}.v20-archery-card p{margin:0;color:#857970;font-size:.68rem}

.v20-simple-cta{padding:2.6rem 0;background:linear-gradient(135deg,#821a24,#b81f2d);color:#fff}.v20-simple-cta .container{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.v20-simple-cta span{color:#edce91;font-size:.65rem;font-weight:800}.v20-simple-cta h2{margin:.25rem 0 0;font-size:clamp(1.3rem,2.5vw,2.2rem);font-weight:900}.v20-simple-cta a{display:inline-flex;align-items:center;gap:.45rem;padding:.8rem 1.1rem;border-radius:999px;color:#21140c;background:linear-gradient(135deg,#f0d69f,#c9974c);font-size:.68rem;font-weight:900;white-space:nowrap}

.v20-team-hero{padding:10rem 0 5rem;color:#fff;background:radial-gradient(circle at 15% 20%,rgba(201,154,79,.18),transparent 24%),linear-gradient(135deg,#110c0a,#2b1814 58%,#771a24)}.v20-team-hero h1{max-width:760px;margin:1rem 0 .7rem;font-size:clamp(2.4rem,5vw,4.8rem);font-weight:900}.v20-team-hero p{max-width:650px;margin:0;color:rgba(255,255,255,.65);font-size:.78rem;line-height:1.9}.v20-team-page{padding:5.5rem 0}.v20-coach-profile{display:grid;grid-template-columns:220px 1fr;gap:1.5rem;padding:1.5rem;border:1px solid #e4d6c4;border-radius:26px;background:#fffdfa;box-shadow:0 16px 40px rgba(64,39,24,.05)}.v20-coach-profile-featured{grid-template-columns:260px 1fr;margin-bottom:1.2rem;background:linear-gradient(135deg,#fffdfa,#fff8ed);border-color:#d8b372}.v20-coach-visual{min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:20px;color:#fff;background:radial-gradient(circle at 50% 30%,rgba(230,194,126,.18),transparent 30%),linear-gradient(135deg,#17100d,#5a1b20)}.v20-profile-monogram{width:92px;height:92px;font-size:2.2rem}.v20-coach-visual small{margin-top:.8rem;color:#e8c77f;font-size:.62rem}.v20-coach-content h2{margin:.45rem 0 .6rem;font-size:1.8rem;font-weight:900}.v20-coach-content>p{color:#75695f;font-size:.7rem;line-height:1.9}.v20-achievement-cols{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.2rem}.v20-achievement-cols>div{padding:1rem;border-radius:16px;background:#f8f2e9}.v20-achievement-cols h3,.v20-coach-content>h3{font-size:.72rem;font-weight:900}.v20-achievement-cols ul,.v20-simple-list{margin:.6rem 0 0;padding-right:1rem;color:#75695f;font-size:.62rem;line-height:1.9}.v20-team-profiles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.v20-team-profiles-grid .v20-coach-profile{grid-template-columns:1fr}.v20-team-profiles-grid .v20-coach-visual{min-height:180px}.v20-certificate{display:flex;align-items:flex-start;gap:.6rem;margin-top:1rem;padding:.8rem;border-radius:14px;background:#f7ede1}.v20-certificate i{color:#b17e38}.v20-certificate strong,.v20-certificate small{display:block}.v20-certificate strong{font-size:.62rem}.v20-certificate small{margin-top:2px;color:#75695f;font-size:.58rem;line-height:1.6}
.v20-inner-footer{margin-top:0}

@media(max-width:1100px){.v20-package-grid-4{grid-template-columns:repeat(2,1fr)}.v20-team-grid{grid-template-columns:repeat(2,1fr)}.v20-team-profiles-grid{grid-template-columns:1fr}.v20-team-profiles-grid .v20-coach-profile{grid-template-columns:200px 1fr}.v20-mission-card,.v20-jumping-shell{grid-template-columns:1fr}.v20-service-hero-copy{margin-right:0}.v20-achievement-cols{grid-template-columns:1fr 1fr}}
@media(max-width:767px){.v20-mission-card{padding:1.4rem}.v20-team-head,.v20-section-head,.v20-simple-cta .container{align-items:flex-start;flex-direction:column}.v20-team-grid,.v20-package-grid-4,.v20-package-grid-2,.v20-switch-grid{grid-template-columns:1fr}.v20-service-hero{min-height:580px}.v20-service-hero h1{font-size:2.5rem}.v20-training-switch{margin-top:-28px}.v20-jumping-media{min-height:360px}.v20-team-profiles-grid .v20-coach-profile,.v20-coach-profile,.v20-coach-profile-featured{grid-template-columns:1fr}.v20-achievement-cols{grid-template-columns:1fr}.v20-coach-visual{min-height:180px}.v20-jump-plans article{grid-template-columns:1fr auto}.v20-jump-plans article a{grid-column:1/-1;text-align:center}}

/* =========================================================
   HOME v1.15 — unified premium design system
   ========================================================= */
:root{
  --v21-ink:#17110e;
  --v21-coffee:#241713;
  --v21-cream:#fbf5ec;
  --v21-gold:#d0a158;
  --v21-gold-soft:#ecd39d;
  --v21-red:#b81f2d;
  --v21-line:rgba(150,105,59,.16);
}

body{overflow-x:hidden}
.v21-navlinks{gap:.06rem!important}
.v21-navlinks .nav-link{padding-inline:.5rem!important;font-size:.67rem!important;white-space:nowrap}
.v18-nav-container{max-width:1450px}

/* Mission */
.v21-mission{
  position:relative;
  padding:5.5rem 0;
  overflow:hidden;
  background:
    radial-gradient(circle at 8% 12%,rgba(208,161,88,.14),transparent 25%),
    linear-gradient(180deg,#fffdf9 0%,#f5ede2 100%);
}
.v21-mission:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.03;
  background-image:radial-gradient(circle,#6e4324 1px,transparent 1px);background-size:24px 24px
}
.v21-mission-shell{
  position:relative;z-index:2;
  display:grid;grid-template-columns:1.18fr .82fr;gap:1rem;
  overflow:hidden;border:1px solid rgba(150,105,59,.16);border-radius:34px;
  background:#fffdfa;box-shadow:0 34px 80px rgba(62,38,22,.09)
}
.v21-mission-quote{
  position:relative;min-height:430px;padding:clamp(2rem,4.5vw,4.2rem);
  color:#fff;background:
    radial-gradient(circle at 15% 10%,rgba(208,161,88,.18),transparent 24%),
    linear-gradient(135deg,#17100d 0%,#2f1b15 58%,#781a24 125%);
  overflow:hidden
}
.v21-mission-quote:after{
  content:"";position:absolute;left:-70px;bottom:-120px;width:310px;height:310px;border:1px solid rgba(236,211,157,.13);border-radius:50%;box-shadow:0 0 0 42px rgba(236,211,157,.03),0 0 0 88px rgba(236,211,157,.025)
}
.v21-mission-label{display:inline-flex;align-items:center;gap:.45rem;color:var(--v21-gold-soft);font-size:.72rem;font-weight:900}
.v21-quote-mark{position:absolute;top:1.1rem;left:1.6rem;color:rgba(255,255,255,.07);font-family:Georgia,serif;font-size:11rem;line-height:1}
.v21-mission-quote h2{position:relative;z-index:2;margin:1rem 0 1rem;font-size:clamp(2rem,4vw,3.9rem);line-height:1.28;font-weight:900}
.v21-mission-quote h2 span{color:var(--v21-gold-soft)}
.v21-mission-quote p{position:relative;z-index:2;max-width:680px;margin:0;color:rgba(255,255,255,.76);font-size:.86rem;line-height:2.1}
.v21-mission-signature{position:relative;z-index:2;display:flex;align-items:center;gap:.7rem;margin-top:1.6rem;color:#f0d39a;font-size:.68rem}
.v21-mission-signature span{width:44px;height:1px;background:#d0a158}
.v21-mission-principles{display:grid;align-content:center;gap:.8rem;padding:1.4rem}
.v21-mission-principles article{position:relative;display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:.8rem;padding:1.15rem;border:1px solid #eadfce;border-radius:20px;background:linear-gradient(180deg,#fff,#fbf6ef);transition:.28s ease}
.v21-mission-principles article:hover{transform:translateX(-6px);border-color:#d3b071;box-shadow:0 18px 36px rgba(62,38,22,.07)}
.v21-principle-no{color:#d1ac6b;font-size:.58rem;font-weight:900}
.v21-mission-principles i{width:44px;height:44px;display:grid;place-items:center;border-radius:14px;color:#8f1722;background:#f7e7e5;font-size:1.05rem}
.v21-mission-principles strong,.v21-mission-principles small{display:block}
.v21-mission-principles strong{font-size:.8rem}
.v21-mission-principles small{margin-top:3px;color:#83776e;font-size:.62rem;line-height:1.65}

/* Shared section head */
.v21-section-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.6rem}
.v21-section-head h2{margin:.45rem 0 0;font-size:clamp(1.8rem,3.3vw,3.1rem);font-weight:900}
.v21-section-head>p{max-width:430px;margin:0;color:#82766d;font-size:.72rem;line-height:1.9}
.v21-text-link{display:inline-flex;align-items:center;gap:.45rem;color:#8f1722;font-size:.68rem;font-weight:900}

/* Services — premium image tabs */
.v21-services{padding:5.5rem 0;background:linear-gradient(180deg,#fffdfa 0%,#f5eee4 100%)}
.v21-service-shell{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:.8rem;min-width:0}
.v21-service-rail{direction:ltr;display:flex;gap:1rem;min-width:0;overflow-x:auto;overflow-y:hidden;padding:.7rem .2rem 1.15rem;scroll-snap-type:x proximity;scrollbar-width:none;overscroll-behavior-x:contain;scroll-behavior:smooth}
.v21-service-rail::-webkit-scrollbar{display:none}
.v21-service-card{direction:rtl;position:relative;flex:0 0 280px;height:210px;overflow:hidden;scroll-snap-align:center;border:1px solid rgba(182,139,75,.28);border-radius:25px;background:#17100d;box-shadow:0 18px 42px rgba(54,33,20,.11);transition:.3s ease;isolation:isolate}
.v21-service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .35s ease}
.v21-service-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(7,5,4,.03) 0%,rgba(7,5,4,.12) 35%,rgba(7,5,4,.94) 100%),linear-gradient(90deg,rgba(128,22,32,.13),transparent 65%)}
.v21-service-index{position:absolute;top:14px;right:14px;z-index:3;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;color:#f2d79e;background:rgba(17,12,10,.62);border:1px solid rgba(242,215,158,.26);backdrop-filter:blur(8px);font-size:.6rem;font-weight:900}
.v21-service-copy{position:absolute;right:16px;left:16px;bottom:15px;z-index:3;color:#fff}
.v21-service-copy small,.v21-service-copy strong,.v21-service-copy span{display:block}
.v21-service-copy small{color:#e6c787;font-size:.6rem;font-weight:800}
.v21-service-copy strong{margin:.22rem 0 .45rem;font-size:1rem;font-weight:900}
.v21-service-copy span{display:flex;align-items:center;justify-content:space-between;color:rgba(255,255,255,.72);font-size:.6rem}
.v21-service-card:hover,.v21-service-card.is-active{transform:translateY(-7px);border-color:#ddb873;box-shadow:0 27px 58px rgba(75,33,25,.18)}
.v21-service-card:hover img,.v21-service-card.is-active img{transform:scale(1.06);filter:saturate(1.08) contrast(1.04)}
.v21-service-card.is-active:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;border:2px solid rgba(224,183,106,.48);border-radius:inherit;box-shadow:inset 0 0 36px rgba(224,183,106,.07)}
.v21-service-arrow{width:46px;height:46px;display:grid;place-items:center;border:1px solid #ddceb9;border-radius:50%;color:#4f4138;background:#fffdfa;box-shadow:0 12px 24px rgba(64,39,24,.07);transition:.22s ease}
.v21-service-arrow:hover{color:#fff;background:#1e1511;border-color:#1e1511;transform:scale(1.06)}
.v21-soon-badge{position:absolute;top:14px;left:14px;z-index:4;padding:.38rem .63rem;border-radius:999px;color:#fff;background:#b81f2d;font-size:.55rem;font-weight:900;box-shadow:0 10px 24px rgba(184,31,45,.2)}
.v21-service-soon img{filter:saturate(.75)}

/* Team teaser */
.v21-team{padding:5.8rem 0;background:#fffdfa}
.v21-team-head{margin-bottom:1.8rem}
.v21-team-grid{display:grid;grid-template-columns:1.3fr repeat(3,minmax(0,1fr));gap:1rem}
.v21-team-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:330px;padding:1.25rem;overflow:hidden;border:1px solid #eadfce;border-radius:25px;background:linear-gradient(180deg,#fff,#f8f1e8);box-shadow:0 16px 38px rgba(62,38,22,.055);transition:.28s ease}
.v21-team-card:before{content:"";position:absolute;inset:auto -20% -35% -20%;height:58%;border-radius:50%;background:radial-gradient(circle,rgba(208,161,88,.16),transparent 62%)}
.v21-team-card:hover{transform:translateY(-7px);border-color:#d5ad6b;box-shadow:0 28px 55px rgba(62,38,22,.1)}
.v21-team-featured{color:#fff;background:radial-gradient(circle at 12% 12%,rgba(208,161,88,.18),transparent 28%),linear-gradient(145deg,#17100d,#321a16 70%,#781a24 145%);border-color:rgba(208,161,88,.3)}
.v21-team-art{position:relative;z-index:2;display:flex;align-items:flex-start;justify-content:space-between}
.v21-team-letter{width:72px;height:72px;display:grid;place-items:center;border-radius:22px;color:#fff;background:linear-gradient(135deg,#b81f2d,#d0a158);font-size:1.75rem;font-weight:900;box-shadow:0 16px 30px rgba(184,31,45,.16)}
.v21-team-art i{color:#d0a158;font-size:1.4rem;opacity:.75}
.v21-team-info{position:relative;z-index:2;margin-top:2.3rem}
.v21-team-info>span{color:#b17f37;font-size:.58rem;font-weight:900}
.v21-team-featured .v21-team-info>span{color:#e7c77f}
.v21-team-info h3{margin:.28rem 0 .5rem;font-size:1.28rem;font-weight:900}
.v21-team-info p{margin:0;color:#766b63;font-size:.64rem;line-height:1.8}
.v21-team-featured .v21-team-info p{color:rgba(255,255,255,.62)}
.v21-team-facts{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}
.v21-team-facts b{padding:.4rem .58rem;border-radius:999px;color:#6f5140;background:#f2e5d5;font-size:.55rem}
.v21-team-featured .v21-team-facts b{color:#f4ddb0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.09)}

/* Coming soon */
.v21-coming{padding:2.2rem 0;background:#fffdfa}
.v21-coming-card{display:grid;grid-template-columns:.78fr 1.22fr;min-height:390px;overflow:hidden;border-radius:34px;color:#fff;background:linear-gradient(135deg,#18100d 0%,#2f1915 58%,#771925 130%);box-shadow:0 32px 70px rgba(64,27,22,.14)}
.v21-coming-visual{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 50%,rgba(208,161,88,.18),transparent 36%)}
.v21-coming-watermark{position:absolute;left:-5%;bottom:-22%;font-size:10rem;font-weight:900;letter-spacing:-.08em;color:rgba(255,255,255,.035)}
.v21-coming-icons{display:flex;align-items:center;gap:1rem;font-size:3.5rem;color:#e8c47e}
.v21-coming-icons i:first-child{transform:rotate(-10deg)}
.v21-coming-copy{align-self:center;padding:clamp(2rem,4vw,4rem)}
.v21-coming-chip{display:inline-flex;padding:.42rem .68rem;border-radius:999px;color:#fff;background:#b81f2d;font-size:.6rem;font-weight:900}
.v21-coming-copy>small,.v21-auction-copy>small{display:block;margin-top:.75rem;color:#e4c27e;font-size:.63rem;font-weight:900}
.v21-coming-copy h2{margin:.45rem 0 .7rem;font-size:clamp(1.8rem,3.5vw,3.3rem);line-height:1.35;font-weight:900}
.v21-coming-copy p{max-width:650px;margin:0;color:rgba(255,255,255,.65);font-size:.72rem;line-height:1.95}
.v21-coming-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.1rem}
.v21-coming-tags span{padding:.42rem .62rem;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:rgba(255,255,255,.76);background:rgba(255,255,255,.045);font-size:.56rem}

.v21-coming-auction{padding-bottom:5.5rem}
.v21-auction-teaser{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:center;padding:clamp(2rem,4vw,4rem);overflow:hidden;border-radius:34px;color:#fff;background:radial-gradient(circle at 85% 20%,rgba(208,161,88,.13),transparent 22%),linear-gradient(135deg,#0e0a08,#1e1511);box-shadow:0 32px 72px rgba(41,24,17,.14)}
.v21-auction-copy h2{margin:.5rem 0 .8rem;font-size:clamp(1.9rem,3.7vw,3.5rem);line-height:1.3;font-weight:900}
.v21-auction-copy h2 span{color:#e6c680}
.v21-auction-copy p{max-width:600px;color:rgba(255,255,255,.6);font-size:.72rem;line-height:1.95}
.v21-auction-lock{display:inline-flex;align-items:center;gap:.45rem;margin-top:1rem;padding:.55rem .72rem;border-radius:999px;color:#e8ca90;background:rgba(208,161,88,.08);border:1px solid rgba(208,161,88,.18);font-size:.58rem;font-weight:800}
.v21-auction-cards{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;perspective:900px}
.v21-auction-cards article{position:relative;height:290px;overflow:hidden;border-radius:20px;border:1px solid rgba(232,198,128,.18);background:#211610;box-shadow:0 24px 50px rgba(0,0,0,.26)}
.v21-auction-cards article:nth-child(1){transform:rotate(3deg) translateY(18px)}
.v21-auction-cards article:nth-child(2){transform:scale(1.06);z-index:2}
.v21-auction-cards article:nth-child(3){transform:rotate(-3deg) translateY(18px)}
.v21-auction-cards img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) brightness(.78)}
.v21-auction-cards article:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(9,6,5,.8))}
.v21-auction-cards span{position:absolute;right:12px;bottom:11px;z-index:2;padding:.35rem .55rem;border-radius:999px;color:#fff;background:#b81f2d;font-size:.52rem;font-weight:900}

/* Inner pages inherit the home spirit without copying its layout */
.v21-inner-page,.v20-inner-page{background:linear-gradient(180deg,#fffdfa,#f5eee4);color:#1b1512}
.v20-service-hero{border-bottom:1px solid rgba(208,161,88,.18)}
.v20-service-hero:after{content:"";position:absolute;inset:auto 0 0;height:120px;background:linear-gradient(180deg,transparent,rgba(9,6,5,.32));pointer-events:none}
.v20-service-kicker{border-color:rgba(236,211,157,.28);background:rgba(15,10,8,.42);backdrop-filter:blur(10px)}
.v20-plan-card,.v20-training-type,.v20-archery-card{border-color:#e5d7c5!important;border-radius:24px!important;box-shadow:0 18px 42px rgba(63,39,24,.06)!important}
.v20-plan-card:hover{border-color:#d0a158!important;box-shadow:0 28px 54px rgba(63,39,24,.1)!important}

/* Team full page */
.v21-team-hero{position:relative;min-height:620px;display:flex;align-items:center;padding:9rem 0 5rem;overflow:hidden;color:#fff;background:radial-gradient(circle at 10% 15%,rgba(208,161,88,.18),transparent 23%),linear-gradient(135deg,#0f0a08 0%,#281713 55%,#721823 130%)}
.v21-team-hero:before{content:"";position:absolute;inset:0;opacity:.05;background-image:linear-gradient(115deg,transparent 0 49.5%,#fff 49.7% 50%,transparent 50.2%);background-size:95px 95px}
.v21-team-hero .container{position:relative;z-index:2;display:grid;grid-template-columns:1.18fr .82fr;gap:2rem;align-items:center}
.v21-kicker{color:#e7c77f;font-size:.72rem;font-weight:900}
.v21-team-hero h1{margin:.65rem 0 .8rem;font-size:clamp(2.7rem,5.4vw,5.2rem);line-height:1.18;font-weight:900}
.v21-team-hero h1 span{color:#e7c77f}
.v21-team-hero p{max-width:640px;margin:0;color:rgba(255,255,255,.65);font-size:.78rem;line-height:2}
.v21-team-hero-stats{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.25rem}
.v21-team-hero-stats span{padding:.55rem .75rem;border-radius:999px;color:rgba(255,255,255,.72);background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09);font-size:.58rem}
.v21-team-hero-stats b{color:#f0d39a}
.v21-team-hero-art{position:relative;min-height:340px;display:grid;place-items:center}
.v21-team-hero-art>i{font-size:7rem;color:#e0b66e;filter:drop-shadow(0 24px 50px rgba(208,161,88,.18))}
.v21-orbit{position:absolute;width:300px;height:300px;border:1px solid rgba(236,211,157,.12);border-radius:50%;animation:v21orbit 18s linear infinite}
.v21-orbit:before,.v21-orbit:after{content:"";position:absolute;inset:28px;border:1px solid rgba(236,211,157,.09);border-radius:50%}.v21-orbit:after{inset:62px}
.v21-orbit span{position:absolute;padding:.4rem .55rem;border-radius:999px;color:#e8c77f;background:#2b1b16;border:1px solid rgba(236,211,157,.12);font-size:.54rem}.v21-orbit span:nth-child(1){top:-10px;left:45%}.v21-orbit span:nth-child(2){right:-18px;top:52%}.v21-orbit span:nth-child(3){left:-12px;bottom:15%}
@keyframes v21orbit{to{transform:rotate(360deg)}}
.v21-orbit span{animation:v21counter 18s linear infinite}@keyframes v21counter{to{transform:rotate(-360deg)}}

.v21-team-directory{padding:5.5rem 0;background:linear-gradient(180deg,#fffdfa,#f6efe5)}
.v21-profile{padding:1.3rem;border:1px solid #e4d6c3;border-radius:28px;background:#fffdfa;box-shadow:0 18px 44px rgba(62,38,22,.055)}
.v21-profile-featured{margin-bottom:1.15rem;padding:1.6rem;border-color:#d4ad6c;background:linear-gradient(135deg,#fffdfa,#fff8ed)}
.v21-profile-top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;border-bottom:1px solid #eee2d3}
.v21-profile-identity{display:flex;align-items:center;gap:1rem}
.v21-profile-letter{width:74px;height:74px;display:grid;place-items:center;flex:0 0 74px;border-radius:22px;color:#fff;background:linear-gradient(135deg,#b81f2d,#d0a158);font-size:1.8rem;font-weight:900;box-shadow:0 16px 30px rgba(184,31,45,.14)}
.v21-profile-identity small{color:#a07133;font-size:.58rem;font-weight:900}.v21-profile-identity h2{margin:.2rem 0 .35rem;font-size:1.5rem;font-weight:900}.v21-profile-identity p{max-width:720px;margin:0;color:#766b62;font-size:.64rem;line-height:1.8}
.v21-profile-badges{display:flex;flex-wrap:wrap;gap:.4rem}.v21-profile-badges span{padding:.45rem .6rem;border-radius:999px;color:#71513f;background:#f3e6d5;font-size:.55rem;font-weight:800}
.v21-profile-body{padding-top:1rem}.v21-profile-featured .v21-profile-body{display:grid;grid-template-columns:1fr 1fr .85fr;gap:.8rem}
.v21-achievement-block{padding:1rem;border-radius:18px;background:#f8f1e8}.v21-achievement-block h3{margin:0 0 .7rem;font-size:.7rem;font-weight:900}.v21-achievement-grid{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.v21-achievement-grid span{padding:.6rem;border-radius:12px;color:#6f645c;background:#fff;border:1px solid #eadccb;font-size:.58rem}.v21-achievement-grid b{display:block;margin-bottom:2px;color:#9a6727;font-size:.68rem}
.v21-proof-card{display:flex;align-items:center;gap:.65rem;padding:.9rem;border-radius:16px;color:#fff;background:linear-gradient(135deg,#1b120e,#5e1b20);min-height:92px}.v21-proof-card>i:first-child{font-size:1.1rem;color:#e3bd77}.v21-proof-card span{flex:1}.v21-proof-card strong,.v21-proof-card small{display:block}.v21-proof-card strong{font-size:.62rem}.v21-proof-card small{margin-top:2px;color:rgba(255,255,255,.5);font-size:.54rem}.v21-proof-card:hover{color:#fff;background:linear-gradient(135deg,#2a1711,#801b27)}
.v21-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.v21-profile-grid .v21-profile{display:flex;flex-direction:column}.v21-profile-grid .v21-profile-body{display:grid;gap:.8rem;align-content:start}.v21-credential{display:flex;gap:.65rem;align-items:center;padding:.8rem;border-radius:15px;background:#f6ecdf}.v21-credential i{color:#b88138;font-size:1.05rem}.v21-credential strong,.v21-credential small{display:block}.v21-credential strong{font-size:.62rem}.v21-credential small{font-size:.55rem;color:#756a61}.v21-focus-list{display:flex;flex-wrap:wrap;gap:.4rem}.v21-focus-list span{padding:.42rem .55rem;border-radius:999px;color:#715342;background:#f4e8d8;font-size:.53rem}
.v21-team-cta{padding:2.8rem 0;color:#fff;background:linear-gradient(135deg,#7e1923,#b81f2d)}.v21-team-cta .container{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.v21-team-cta small{color:#edce91;font-size:.6rem;font-weight:900}.v21-team-cta h2{margin:.25rem 0 0;font-size:clamp(1.3rem,2.4vw,2.1rem);font-weight:900}.v21-team-cta a{display:inline-flex;align-items:center;gap:.45rem;padding:.8rem 1.05rem;border-radius:999px;color:#1e140d;background:linear-gradient(135deg,#f0d69f,#c9974c);font-size:.65rem;font-weight:900;white-space:nowrap}

@media(max-width:1200px){.v21-navlinks .nav-link{font-size:.62rem!important;padding-inline:.38rem!important}.v21-team-grid{grid-template-columns:1fr 1fr}.v21-profile-grid{grid-template-columns:1fr}.v21-profile-featured .v21-profile-body{grid-template-columns:1fr 1fr}.v21-profile-featured .v21-proof-card{grid-column:1/-1}}
@media(max-width:991px){.v21-mission-shell,.v21-coming-card,.v21-auction-teaser,.v21-team-hero .container{grid-template-columns:1fr}.v21-coming-visual{min-height:220px}.v21-auction-cards{max-width:650px}.v21-team-hero-art{display:none}.v21-team-hero{min-height:auto}.v21-profile-featured .v21-profile-body{grid-template-columns:1fr}.v21-profile-featured .v21-proof-card{grid-column:auto}}
@media(max-width:767px){.v21-section-head,.v21-team-cta .container{align-items:flex-start;flex-direction:column}.v21-service-shell{grid-template-columns:40px minmax(0,1fr) 40px;gap:.35rem}.v21-service-arrow{width:38px;height:38px}.v21-service-card{flex-basis:220px;height:180px}.v21-team-grid{grid-template-columns:1fr}.v21-team-card{min-height:270px}.v21-auction-cards{grid-template-columns:1fr}.v21-auction-cards article{height:230px!important;transform:none!important}.v21-profile-top,.v21-profile-identity{align-items:flex-start;flex-direction:column}.v21-achievement-grid{grid-template-columns:1fr}.v21-team-hero h1{font-size:2.6rem}.v21-mission-quote{min-height:auto}.v21-quote-mark{font-size:7rem}.v21-coming-card{min-height:auto}}

/* Generic premium inner service pages */
.v21-inner-hero{position:relative;min-height:620px;display:flex;align-items:center;padding:8.5rem 0 4rem;overflow:hidden;color:#fff;background-position:center;background-size:cover}
.v21-inner-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,5,4,.25),rgba(7,5,4,.58) 54%,rgba(7,5,4,.94) 100%),linear-gradient(180deg,rgba(7,5,4,.08),rgba(7,5,4,.38))}
.v21-stabling-hero{background-image:url('https://images.unsplash.com/photo-1559823291-4830c119d877?auto=format&fit=crop&w=1900&q=88')}
.v21-lounges-hero{background-image:url('https://images.unsplash.com/photo-1718730570868-520d27735256?auto=format&fit=crop&w=1900&q=88')}
.v21-inner-hero .container{position:relative;z-index:2}
.v21-inner-hero-copy{max-width:680px;margin-right:auto}
.v21-inner-hero h1{margin:.75rem 0 1rem;font-size:clamp(2.5rem,5vw,4.8rem);line-height:1.2;font-weight:900}.v21-inner-hero h1 span{color:#e7c77f}
.v21-inner-hero p{max-width:620px;margin:0 0 1.25rem;color:rgba(255,255,255,.72);font-size:.8rem;line-height:2}
.v21-detail-section{padding:5.5rem 0;background:linear-gradient(180deg,#fffdfa,#f6efe5)}
.v21-detail-split{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}
.v21-detail-image{position:relative;min-height:520px;overflow:hidden;border-radius:30px;box-shadow:0 28px 65px rgba(62,38,22,.12)}
.v21-detail-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.v21-detail-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(9,6,5,.7))}.v21-detail-image>span{position:absolute;right:1.2rem;bottom:1rem;z-index:2;color:#fff;font-size:.7rem;font-weight:900}
.v21-detail-copy h2{margin:.55rem 0 .8rem;font-size:clamp(1.8rem,3.4vw,3.2rem);font-weight:900}.v21-detail-copy>p{color:#786d64;font-size:.72rem;line-height:1.95}
.v21-feature-list{display:grid;gap:.65rem;margin-top:1.3rem}.v21-feature-list article{display:flex;align-items:center;gap:.75rem;padding:.9rem;border:1px solid #e8dac8;border-radius:17px;background:#fffdfa}.v21-feature-list i{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:13px;color:#8f1722;background:#f7e8e6}.v21-feature-list strong,.v21-feature-list small{display:block}.v21-feature-list strong{font-size:.7rem}.v21-feature-list small{margin-top:3px;color:#83776e;font-size:.58rem;line-height:1.6}
.v21-info-banner{padding:3rem 0;color:#fff;background:linear-gradient(135deg,#17100d,#5f1b20)}.v21-info-banner .container{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.v21-info-banner small{color:#e7c77f;font-size:.58rem;font-weight:900}.v21-info-banner h2{margin:.25rem 0 .35rem;font-size:clamp(1.25rem,2.5vw,2.1rem);font-weight:900}.v21-info-banner p{max-width:720px;margin:0;color:rgba(255,255,255,.58);font-size:.62rem;line-height:1.75}.v21-info-banner a{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:999px;color:#1d140e;background:linear-gradient(135deg,#f0d69f,#c9974c);font-size:.62rem;font-weight:900;white-space:nowrap}
@media(max-width:991px){.v21-detail-split{grid-template-columns:1fr}.v21-detail-image{min-height:390px}.v21-inner-hero-copy{margin-right:0}.v21-info-banner .container{align-items:flex-start;flex-direction:column}}

/* =========================================================
   v1.16 — unified Arabic experience refresh
   ========================================================= */
:root{
  --v22-ink:#170f0b;
  --v22-brown:#2a1712;
  --v22-deep:#120c09;
  --v22-red:#9d1f2d;
  --v22-gold:#d7aa63;
  --v22-cream:#fbf6ed;
  --v22-soft:#f3eadf;
}

/* Current release is Arabic only. */
.v18-lang{display:none!important}

/* Mission — same design language as About, opposite composition, different image. */
.v22-mission{position:relative;padding:7rem 0;background:linear-gradient(180deg,#fffdfa 0%,#f6efe5 100%);overflow:hidden}
.v22-mission:before{content:"";position:absolute;right:-150px;bottom:-170px;width:460px;height:460px;border:1px solid rgba(157,31,45,.08);border-radius:50%;box-shadow:0 0 0 62px rgba(215,170,99,.035),0 0 0 125px rgba(157,31,45,.025)}
.v22-mission-row{position:relative;z-index:1}
.v22-mission-copy{padding-inline-end:2rem}
.v22-mission-copy h2{margin:.7rem 0 1rem;color:var(--v22-ink);font-size:clamp(2.1rem,4vw,4rem);line-height:1.22;font-weight:900;letter-spacing:-.035em}
.v22-mission-copy h2 span{color:var(--v22-red)}
.v22-mission-lead{max-width:630px;margin:0;color:#655a52;font-size:1rem;line-height:2.15}
.v22-mission-points{display:grid;grid-template-columns:1fr 1fr;gap:.85rem;margin-top:1.5rem}
.v22-mission-points article{display:flex;align-items:center;gap:.8rem;padding:1rem 1.05rem;border:1px solid #e6d8c7;border-radius:20px;background:rgba(255,253,250,.84);box-shadow:0 16px 34px rgba(55,34,22,.045)}
.v22-mission-points article>span{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border-radius:15px;color:#fff;background:linear-gradient(135deg,var(--v22-red),#6f1620);font-size:1.1rem}
.v22-mission-points strong,.v22-mission-points small{display:block}.v22-mission-points strong{color:#261913;font-size:.82rem;font-weight:900}.v22-mission-points small{margin-top:3px;color:#7d7168;font-size:.64rem;line-height:1.65}
.v22-mission-signature{display:flex;align-items:center;gap:.55rem;margin-top:1.35rem;color:#a06e2d;font-size:.72rem;font-weight:900}.v22-mission-signature i{color:var(--v22-red)}
.v22-mission-image-col{order:-1}
.v22-mission-image{position:relative;min-height:560px;border-radius:36px;overflow:hidden;box-shadow:0 34px 70px rgba(47,28,18,.16)}
.v22-mission-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,8,6,.04) 35%,rgba(13,8,6,.72) 100%)}
.v22-mission-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.01)}
.v22-mission-image-note{position:absolute;right:1.4rem;left:1.4rem;bottom:1.3rem;z-index:2;display:flex;align-items:end;justify-content:space-between;gap:1rem;color:#fff}
.v22-mission-image-note span{color:#efcc8e;font-size:.65rem;font-weight:900}.v22-mission-image-note strong{font-size:1.1rem;font-weight:900}

/* Services — editorial RTL grid, no carousel/tabs. */
.v22-services{padding:7rem 0;background:#fffdfa;overflow:hidden}
.v22-services-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.1rem}
.v22-services-head h2{margin:.55rem 0 0;color:#19110d;font-size:clamp(2rem,3.6vw,3.6rem);font-weight:900;letter-spacing:-.03em}.v22-services-head p{max-width:430px;margin:0;color:#74685f;font-size:.78rem;line-height:1.9}
.v22-services-grid{direction:rtl;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:240px 240px;gap:1rem;grid-template-areas:"main main main main main main stable stable stable stable stable stable" "main main main main main main arch arch arch lounge lounge lounge"}
.v22-service-card{position:relative;display:block;overflow:hidden;border-radius:28px;color:#fff!important;background:#1c120e;box-shadow:0 18px 46px rgba(43,26,17,.09);isolation:isolate;transition:transform .32s ease,box-shadow .32s ease}
.v22-service-card:hover{transform:translateY(-6px);box-shadow:0 30px 62px rgba(43,26,17,.16)}
.v22-service-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.v22-service-card:hover img{transform:scale(1.055)}
.v22-service-overlay{position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,5,4,.04) 8%,rgba(8,5,4,.18) 44%,rgba(8,5,4,.92) 100%);z-index:1}
.v22-service-main{grid-area:main;min-height:496px}.v22-service-stabling{grid-area:stable}.v22-service-archery{grid-area:arch}.v22-service-lounges{grid-area:lounge}
.v22-service-offers{grid-column:1/-1;min-height:220px;margin-top:.1rem}
.v22-service-offers img{filter:saturate(.6) brightness(.58)}.v22-service-offers .v22-service-overlay{background:linear-gradient(90deg,rgba(10,7,5,.93),rgba(29,16,11,.72),rgba(84,22,29,.7))}
.v22-service-no{position:absolute;top:1rem;right:1rem;z-index:2;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.22);border-radius:50%;background:rgba(15,10,8,.32);backdrop-filter:blur(8px);font-size:.66rem;font-weight:900;color:#f1d292}
.v22-service-soon{position:absolute;top:1rem;left:1rem;z-index:3;padding:.48rem .75rem;border-radius:999px;background:var(--v22-red);font-size:.58rem;font-weight:900;color:#fff}
.v22-service-content{position:absolute;right:1.25rem;left:1.25rem;bottom:1.2rem;z-index:3;text-align:right}
.v22-service-content small{display:block;color:#efc983;font-size:.62rem;font-weight:900}.v22-service-content h3{margin:.28rem 0 .45rem;color:#fff;font-size:clamp(1.15rem,2vw,1.8rem);font-weight:900}.v22-service-main .v22-service-content h3{font-size:clamp(1.8rem,3.4vw,3.25rem)}.v22-service-content p{max-width:520px;margin:0 0 .7rem;color:rgba(255,255,255,.72);font-size:.72rem;line-height:1.8}
.v22-service-link{display:inline-flex;align-items:center;gap:.4rem;color:#fff;font-size:.63rem;font-weight:900}.v22-service-link i{color:#e4bd76}

/* Team on home — stronger visual hierarchy, no plain letter cards. */
.v22-team{position:relative;padding:7rem 0;background:linear-gradient(135deg,#160e0b 0%,#26140f 56%,#4d1820 100%);overflow:hidden;color:#fff}
.v22-team:before{content:"TEAM";position:absolute;left:-1rem;bottom:-4rem;color:rgba(255,255,255,.025);font-size:15rem;font-weight:900;line-height:1}
.v22-team-head{position:relative;z-index:2;display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem}.v22-team-head h2{margin:.5rem 0 0;color:#fff;font-size:clamp(2rem,3.7vw,3.7rem);line-height:1.2;font-weight:900}.v22-team-head .v18-eyebrow{color:#e8bd73}.v22-team-head-side{max-width:420px}.v22-team-head-side p{margin:0 0 .75rem;color:rgba(255,255,255,.62);font-size:.74rem;line-height:1.8}.v22-team-head-side a{display:inline-flex;align-items:center;gap:.45rem;color:#f0cf91;font-size:.68rem;font-weight:900}
.v22-team-showcase{position:relative;z-index:2;display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:1rem;min-height:600px}
.v22-coach-card{position:relative;display:grid;grid-template-columns:130px 1fr;align-items:stretch;overflow:hidden;border:1px solid rgba(239,205,145,.12);border-radius:28px;color:#fff!important;background:rgba(255,255,255,.045);backdrop-filter:blur(9px);transition:.3s ease}.v22-coach-card:hover{transform:translateY(-5px);border-color:rgba(239,205,145,.38);background:rgba(255,255,255,.07)}
.v22-coach-lead{grid-row:1/-1;grid-template-columns:1fr;grid-template-rows:270px 1fr;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.035))}
.v22-coach-showcase>.v22-coach-card:nth-child(2){}
.v22-coach-visual{position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,rgba(215,170,99,.2),transparent 42%),linear-gradient(160deg,#4d1a20,#1a100c);overflow:hidden}.v22-coach-visual:after{content:"";position:absolute;inset:12%;border:1px solid rgba(233,197,132,.14);border-radius:50%}
.v22-coach-visual>i{position:relative;z-index:2;color:#e0b76f;font-size:2rem}.v22-coach-lead .v22-coach-visual>i{font-size:4rem}
.v22-coach-monogram{position:absolute;left:12px;bottom:-35px;color:rgba(255,255,255,.055);font-size:9rem;line-height:1;font-weight:900}.v22-coach-lead .v22-coach-monogram{font-size:14rem;left:22px;bottom:-45px}
.v22-coach-copy{padding:1.35rem;display:flex;flex-direction:column;justify-content:center}.v22-coach-copy small{color:#e5bd77;font-size:.6rem;font-weight:900}.v22-coach-copy h3{margin:.3rem 0 .5rem;color:#fff;font-size:1.35rem;font-weight:900}.v22-coach-lead .v22-coach-copy h3{font-size:2rem}.v22-coach-copy p{margin:0;color:rgba(255,255,255,.62);font-size:.65rem;line-height:1.75}.v22-coach-copy>div{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem}.v22-coach-copy>div span{padding:.38rem .55rem;border-radius:999px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);color:#f0d49b;font-size:.52rem;font-weight:800}
.v22-team-showcase>.v22-coach-card:nth-child(4){grid-column:2/-1;grid-template-columns:170px 1fr}

/* Offers + trips merged into one suspense experience. */
.v22-coming{padding:6.5rem 0;background:#f8f3ec}
.v22-coming-stage{position:relative;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;min-height:540px;overflow:hidden;border-radius:40px;background:radial-gradient(circle at 72% 42%,rgba(165,42,51,.28),transparent 30%),linear-gradient(115deg,#100b08 0%,#20110d 48%,#5b1a22 100%);box-shadow:0 32px 74px rgba(39,23,15,.16)}
.v22-coming-stage:before{content:"COMING SOON";position:absolute;right:-1rem;bottom:-4rem;color:rgba(255,255,255,.025);font-size:8.5rem;font-weight:900;white-space:nowrap}
.v22-coming-copy{position:relative;z-index:3;padding:4.5rem 4rem;color:#fff}.v22-coming-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.48rem .72rem;border-radius:999px;color:#fff;background:#b82030;font-size:.62rem;font-weight:900}.v22-coming-copy>small{display:block;margin-top:1rem;color:#e9bd72;font-size:.66rem;font-weight:900}.v22-coming-copy h2{margin:.45rem 0 .9rem;color:#fff!important;font-size:clamp(2.3rem,4.8vw,5rem);line-height:1.12;font-weight:900;letter-spacing:-.045em}.v22-coming-copy h2 span{color:#f0ca83!important}.v22-coming-copy p{max-width:620px;margin:0;color:rgba(255,255,255,.78)!important;font-size:.84rem;line-height:2}.v22-coming-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.25rem}.v22-coming-tags span{padding:.5rem .7rem;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:rgba(255,255,255,.055);color:#fff;font-size:.58rem;font-weight:800}
.v22-coming-mystery{position:relative;min-height:540px;display:grid;place-items:center;overflow:hidden}.v22-mystery-mark{position:relative;z-index:3;display:grid;place-items:center;width:150px;height:150px;border-radius:50%;color:#f1ce8b;background:radial-gradient(circle at 35% 30%,#5f2626,#1a0f0c 64%);border:1px solid rgba(239,204,141,.25);box-shadow:0 0 0 20px rgba(255,255,255,.025),0 30px 70px rgba(0,0,0,.34);font-size:5.2rem;font-weight:900}
.v22-mystery-orbit{position:absolute;border:1px solid rgba(239,204,141,.16);border-radius:50%;animation:v22Orbit 16s linear infinite}.v22-orbit-one{width:330px;height:330px}.v22-orbit-two{width:440px;height:440px;animation-direction:reverse;animation-duration:24s}@keyframes v22Orbit{to{transform:rotate(360deg)}}
.v22-hidden-ticket{position:absolute;z-index:2;display:flex;align-items:center;gap:.45rem;padding:.65rem .8rem;border-radius:14px;color:#f0ce8d;background:rgba(16,10,8,.72);border:1px solid rgba(239,204,141,.15);backdrop-filter:blur(10px);font-size:.58rem;font-weight:900;box-shadow:0 18px 45px rgba(0,0,0,.18)}.v22-ticket-one{top:17%;right:12%;transform:rotate(8deg)}.v22-ticket-two{bottom:19%;right:16%;transform:rotate(-7deg)}.v22-ticket-three{top:45%;left:8%;transform:rotate(6deg)}

/* Training: unify the two program entries and the package treatment. */
.v20-service-hero h1{color:#fff!important;text-shadow:0 8px 30px rgba(0,0,0,.28)}
.v20-service-hero-copy p{color:rgba(255,255,255,.82)!important}
.v22-training-switch{position:relative;z-index:3;margin-top:-58px;padding-bottom:1rem}
.v22-training-switch-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.v22-training-type{position:relative;display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:1rem;padding:1.15rem 1.25rem;overflow:hidden;border:1px solid #e7d8c5;border-radius:26px;color:#2a1a12!important;background:linear-gradient(135deg,#fffdf9,#f7efe3);box-shadow:0 24px 54px rgba(55,34,22,.12);transition:.3s ease}.v22-training-type:before{content:"";position:absolute;left:-34px;bottom:-52px;width:155px;height:155px;border-radius:50%;border:1px solid rgba(157,31,45,.07);box-shadow:0 0 0 32px rgba(215,170,99,.04)}.v22-training-type:hover{transform:translateY(-5px);border-color:#d3aa68;box-shadow:0 31px 65px rgba(55,34,22,.16)}
.v22-training-type>i:first-of-type{position:relative;z-index:2;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;color:#d8aa62;background:linear-gradient(135deg,#2f2119,#110c09);border:2px solid #d7aa63;box-shadow:0 10px 28px rgba(39,22,14,.16);font-size:1.2rem}.v22-training-type>i:last-child{position:relative;z-index:2;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;color:#9a6b2d;background:#fff;border:1px solid #eadbc7}
.v22-type-no{position:relative;z-index:2;padding-inline-start:.2rem;color:#a51f2d;font-family:Georgia,serif;font-size:1.55rem;font-weight:900}.v22-training-type div{position:relative;z-index:2}.v22-training-type strong,.v22-training-type small{display:block}.v22-training-type strong{color:#332218;font-size:.94rem;font-weight:900}.v22-training-type small{margin-top:.28rem;color:#8a786a;font-size:.62rem}
.v22-jumping-section{padding:6rem 0;background:linear-gradient(180deg,#16100d,#241510)}.v22-jumping-head{color:#fff}.v22-jumping-head h2{color:#fff}.v22-jumping-head p{color:rgba(255,255,255,.62)}.v22-jumping-head .v18-eyebrow{color:#e3bb74}
.v22-jumping-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:1.4rem;align-items:stretch}.v22-jumping-image{position:relative;min-height:540px;overflow:hidden;border-radius:30px;border:1px solid rgba(233,198,134,.12)}.v22-jumping-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.v22-jumping-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,5,4,.04),rgba(8,5,4,.82))}.v22-jumping-image>div{position:absolute;right:1.35rem;left:1.35rem;bottom:1.2rem;z-index:2;color:#fff}.v22-jumping-image small,.v22-jumping-image strong{display:block}.v22-jumping-image small{color:#efc77f;font-size:.62rem;font-weight:900}.v22-jumping-image strong{margin-top:.25rem;font-size:1.35rem;font-weight:900}
.v22-jumping-plans{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-content:center}.v22-jumping-plans .v20-plan-card{min-height:370px;display:flex;flex-direction:column}.v22-jumping-plans .v20-plan-btn{margin-top:auto}

/* Team page — orbit kept, profiles rebuilt around real achievement cards. */
.v22-team-page-hero{position:relative;min-height:650px;display:flex;align-items:center;padding:8rem 0 4rem;overflow:hidden;color:#fff;background:radial-gradient(circle at 72% 40%,rgba(168,43,50,.18),transparent 28%),linear-gradient(120deg,#0e0a08,#21120e 58%,#4d1820)}
.v22-team-page-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.014) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent)}
.v22-team-page-hero .container{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:2.5rem}.v22-team-page-copy h1{margin:.65rem 0 1rem;color:#fff;font-size:clamp(3rem,5.5vw,5.6rem);line-height:1.12;font-weight:900;letter-spacing:-.045em}.v22-team-page-copy h1 span{color:#e9c57e}.v22-team-page-copy p{max-width:650px;margin:0;color:rgba(255,255,255,.7);font-size:.85rem;line-height:2}.v22-team-scroll{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.4rem;padding:.68rem .9rem;border:1px solid rgba(235,199,133,.2);border-radius:999px;color:#f0cc88!important;background:rgba(255,255,255,.04);font-size:.65rem;font-weight:900}
.v22-team-orbit-art{display:grid!important}.v22-orbit-core{position:relative;z-index:3;display:grid;place-items:center;width:140px;height:140px;border-radius:50%;color:#e4b96e;background:linear-gradient(145deg,#361d16,#110c09);border:1px solid rgba(235,198,132,.22);box-shadow:0 30px 70px rgba(0,0,0,.25)}.v22-orbit-core i{font-size:3rem}.v22-orbit-core small{font-size:.52rem;color:#f0d093;font-weight:900}
.v22-team-page{padding:6.5rem 0;background:linear-gradient(180deg,#fffdfa,#f5ede2)}.v22-team-page-intro{max-width:700px;margin-bottom:2rem}.v22-team-page-intro h2{margin:.5rem 0 .6rem;color:#1d130e;font-size:clamp(2rem,3.5vw,3.4rem);font-weight:900}.v22-team-page-intro p{margin:0;color:#746960;font-size:.72rem}
.v22-coach-profile{display:grid;grid-template-columns:1.08fr .92fr;gap:1.1rem;align-items:stretch;margin-bottom:1.35rem;padding:1rem;border:1px solid #e5d6c4;border-radius:32px;background:#fffdfa;box-shadow:0 22px 52px rgba(56,34,21,.06)}.v22-coach-profile-reverse .v22-coach-profile-copy{order:2}.v22-coach-profile-reverse .v22-coach-proof{order:1}
.v22-coach-profile-copy{position:relative;padding:2rem 1.7rem;overflow:hidden;border-radius:24px;background:linear-gradient(145deg,#fff,#fbf2e5)}.v22-coach-profile-featured .v22-coach-profile-copy{background:radial-gradient(circle at 18% 20%,rgba(157,31,45,.06),transparent 28%),linear-gradient(145deg,#fff,#fbf1e4)}.v22-profile-no{position:absolute;left:1rem;top:.45rem;color:rgba(157,31,45,.08);font-family:Georgia,serif;font-size:5.4rem;font-weight:900;line-height:1}.v22-coach-profile-copy>small{position:relative;color:#a66f2f;font-size:.61rem;font-weight:900}.v22-coach-profile-copy h2{position:relative;margin:.35rem 0 .6rem;color:#22150f;font-size:2.25rem;font-weight:900}.v22-coach-profile-copy>p{position:relative;max-width:720px;margin:0;color:#71665d;font-size:.72rem;line-height:1.9}.v22-profile-tags{position:relative;display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1rem}.v22-profile-tags span{padding:.48rem .62rem;border-radius:999px;color:#6d4a35;background:#f1e4d3;border:1px solid #ead9c3;font-size:.56rem;font-weight:800}
.v22-profile-achievements{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-top:1rem}.v22-profile-achievements>div{padding:.9rem;border:1px solid #eadbc8;border-radius:17px;background:#fff}.v22-profile-achievements b{display:block;margin-bottom:.45rem;color:#8f1c29;font-size:.62rem}.v22-profile-achievements span{display:block;padding:.3rem 0;color:#6b6159;border-bottom:1px dashed #eadfce;font-size:.56rem}.v22-profile-achievements span:last-child{border-bottom:0}
.v22-coach-proof{position:relative;min-height:420px;overflow:hidden;border-radius:24px;background:#1c110d}.v22-coach-proof img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .45s ease}.v22-coach-proof:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(9,6,4,.72))}.v22-coach-proof>span{position:absolute;right:1rem;left:1rem;bottom:.85rem;z-index:2;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:.62rem;font-weight:900}.v22-coach-proof:hover img{transform:scale(1.025)}
.v22-team-cta{padding:3rem 0;color:#fff;background:linear-gradient(120deg,#701823,#a81f2d)}.v22-team-cta .container{display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.v22-team-cta small{color:#efce91;font-size:.62rem;font-weight:900}.v22-team-cta h2{margin:.25rem 0 0;color:#fff;font-size:clamp(1.3rem,2.6vw,2.3rem);font-weight:900}.v22-team-cta a{display:inline-flex;align-items:center;gap:.45rem;padding:.78rem 1rem;border-radius:999px;color:#1c120d!important;background:linear-gradient(135deg,#f1d8a1,#ca984b);font-size:.65rem;font-weight:900;white-space:nowrap}

@media(max-width:1200px){
  .v22-services-grid{grid-template-rows:220px 220px}.v22-service-main{min-height:456px}
  .v22-team-showcase{grid-template-columns:1.2fr 1fr;grid-template-rows:auto}.v22-coach-lead{grid-row:1/3}.v22-team-showcase>.v22-coach-card:nth-child(4){grid-column:1/-1;grid-template-columns:170px 1fr}
}
@media(max-width:991px){
  .v22-mission-copy{padding-inline-end:0}.v22-mission-image-col{order:0}.v22-mission-image{min-height:420px}
  .v22-services-grid{grid-template-columns:1fr 1fr;grid-template-rows:none;grid-template-areas:none}.v22-service-card,.v22-service-main,.v22-service-stabling,.v22-service-archery,.v22-service-lounges,.v22-service-offers{grid-area:auto;grid-column:auto;min-height:300px;margin:0}.v22-service-main,.v22-service-offers{grid-column:1/-1}.v22-service-main{min-height:430px}
  .v22-team-showcase{grid-template-columns:1fr 1fr;min-height:auto}.v22-coach-lead{grid-row:auto;grid-column:1/-1;grid-template-columns:200px 1fr;grid-template-rows:auto}.v22-team-showcase>.v22-coach-card:nth-child(4){grid-column:1/-1}
  .v22-coming-stage{grid-template-columns:1fr}.v22-coming-copy{padding-bottom:1rem}.v22-coming-mystery{min-height:390px}
  .v22-training-switch-grid,.v22-jumping-layout{grid-template-columns:1fr}.v22-jumping-image{min-height:390px}.v22-jumping-plans{max-width:820px}
  .v22-team-page-hero .container{grid-template-columns:1fr}.v22-team-orbit-art{min-height:360px}.v22-coach-profile{grid-template-columns:1fr}.v22-coach-profile-reverse .v22-coach-profile-copy,.v22-coach-profile-reverse .v22-coach-proof{order:initial}.v22-coach-proof{min-height:520px}
}
@media(max-width:767px){
  .v22-mission,.v22-services,.v22-team,.v22-coming,.v22-team-page{padding:4.5rem 0}.v22-mission-points{grid-template-columns:1fr}.v22-mission-image{min-height:360px}.v22-mission-image-note{align-items:flex-start;flex-direction:column}.v22-mission-copy h2{font-size:2.2rem}
  .v22-services-head,.v22-team-head,.v22-team-cta .container{align-items:flex-start;flex-direction:column}.v22-services-grid{grid-template-columns:1fr}.v22-service-card,.v22-service-main,.v22-service-offers{grid-column:auto;min-height:330px}.v22-service-main{min-height:430px}.v22-service-content h3{font-size:1.5rem}.v22-service-main .v22-service-content h3{font-size:2rem}
  .v22-team-showcase{grid-template-columns:1fr}.v22-coach-card,.v22-coach-lead,.v22-team-showcase>.v22-coach-card:nth-child(4){grid-column:auto;grid-template-columns:110px 1fr;grid-template-rows:auto;min-height:190px}.v22-coach-lead .v22-coach-visual>i{font-size:2.4rem}.v22-coach-lead .v22-coach-copy h3{font-size:1.4rem}.v22-coach-copy{padding:1rem}.v22-coach-copy p{font-size:.61rem}
  .v22-coming-stage{min-height:auto;border-radius:28px}.v22-coming-copy{padding:2.4rem 1.5rem 1rem}.v22-coming-copy h2{font-size:2.55rem}.v22-coming-copy p{font-size:.72rem}.v22-coming-mystery{min-height:330px}.v22-mystery-mark{width:118px;height:118px;font-size:4rem}.v22-orbit-one{width:250px;height:250px}.v22-orbit-two{width:330px;height:330px}
  .v22-training-switch{margin-top:-34px}.v22-training-switch-grid{grid-template-columns:1fr}.v22-training-type{grid-template-columns:auto auto 1fr auto}.v22-jumping-plans{grid-template-columns:1fr}.v22-jumping-plans .v20-plan-card{min-height:auto}
  .v22-team-page-hero{min-height:auto;padding:7rem 0 3.5rem}.v22-team-page-copy h1{font-size:3rem}.v22-team-orbit-art{min-height:310px}.v22-coach-profile{padding:.65rem;border-radius:24px}.v22-coach-profile-copy{padding:1.5rem 1.1rem}.v22-coach-profile-copy h2{font-size:1.8rem}.v22-profile-achievements{grid-template-columns:1fr}.v22-coach-proof{min-height:420px}.v22-team-cta h2{font-size:1.4rem}
}
.v22-offers-page{min-height:100vh;display:flex;align-items:center;padding:8rem 0 4rem;color:#fff;background:radial-gradient(circle at 72% 42%,rgba(170,45,53,.28),transparent 26%),linear-gradient(118deg,#0d0907 0%,#21120e 50%,#591b22 100%);overflow:hidden}.v22-offers-page .container{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:2rem}.v22-offers-page-copy>small{display:block;margin-top:1rem;color:#e9bd72;font-size:.68rem;font-weight:900}.v22-offers-page-copy h1{margin:.45rem 0 .9rem;color:#fff;font-size:clamp(3rem,6vw,6rem);line-height:1.08;font-weight:900;letter-spacing:-.05em}.v22-offers-page-copy h1 span{color:#f0ca83}.v22-offers-page-copy p{max-width:620px;color:rgba(255,255,255,.74);font-size:.86rem;line-height:2}.v22-offers-page-copy>a{display:inline-flex;align-items:center;gap:.45rem;margin-top:.8rem;padding:.7rem .9rem;border-radius:999px;color:#f0ce8d;border:1px solid rgba(239,204,141,.18);background:rgba(255,255,255,.04);font-size:.64rem;font-weight:900}.v22-offers-page-mystery{min-height:560px}@media(max-width:991px){.v22-offers-page .container{grid-template-columns:1fr}.v22-offers-page-mystery{min-height:390px}}@media(max-width:767px){.v22-offers-page{padding-top:7rem}.v22-offers-page-copy h1{font-size:3.2rem}.v22-offers-page-mystery{min-height:330px}}

/* =========================================================
   v1.17 — consolidated visual refinements
   ========================================================= */

/* 1) About: image LEFT, copy RIGHT. Mission mirrors it. */
.v23-about{padding:6rem 0;background:#fffdfa}
.v23-about-grid,.v23-mission-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:4.5rem;direction:ltr}
.v23-about-image-wrap{grid-column:1;direction:rtl}
.v23-about-copy{grid-column:2;direction:rtl}
.v23-about-image{position:relative;min-height:500px;border-radius:34px;overflow:hidden;box-shadow:0 30px 68px rgba(48,29,18,.14)}
.v23-about-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 44%;transition:transform .7s ease}
.v23-about-image:hover img{transform:scale(1.025)}
.v23-image-stamp{position:absolute;right:1.2rem;bottom:1.15rem;z-index:2;padding:.58rem .8rem;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#fff;background:rgba(16,10,8,.5);backdrop-filter:blur(10px);font-size:.62rem;font-weight:800}
.v23-about-copy h2{margin:.65rem 0 1rem;color:#201611;font-size:clamp(1.9rem,3.3vw,3.25rem);line-height:1.3;font-weight:900;letter-spacing:-.025em}
.v23-about-copy h2 span{color:#8f1d29}
.v23-about-points{margin-top:1.6rem}

.v23-mission{padding:6rem 0}
.v23-mission-copy{grid-column:1;direction:rtl;padding:0}
.v23-mission-image{grid-column:2;direction:rtl;min-height:500px}
.v23-mission-copy h2{font-size:clamp(1.9rem,3.3vw,3.25rem)}
.v23-mission-image img{object-position:center 48%}

/* 2) Services: simple premium image tabs, RTL, side-by-side. */
.v23-services{padding:6rem 0 6.4rem;background:linear-gradient(180deg,#fffdfa 0%,#f7f0e6 100%);overflow:hidden}
.v23-services-head{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.8rem}
.v23-services-head h2{margin:.45rem 0 0;color:#1d1410;font-size:clamp(1.8rem,3vw,2.8rem);font-weight:900}
.v23-services-head p{max-width:410px;margin:0;color:#766a61;font-size:.76rem;line-height:1.9}
.v23-service-tabs{direction:rtl;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.v23-service-tab{display:block;overflow:hidden;border:1px solid #e8dccd;border-radius:24px;color:#201611!important;background:#fff;box-shadow:0 16px 42px rgba(54,34,21,.07);text-decoration:none;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
.v23-service-tab:hover{transform:translateY(-7px);border-color:#d9b97e;box-shadow:0 28px 58px rgba(54,34,21,.13)}
.v23-service-photo{position:relative;height:255px;overflow:hidden;background:#21150f}
.v23-service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(10,7,5,.46))}
.v23-service-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.v23-service-tab:hover .v23-service-photo img{transform:scale(1.055)}
.v23-service-photo>span{position:absolute;right:.9rem;top:.9rem;z-index:2;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#f5d69b;background:rgba(15,10,8,.68);border:1px solid rgba(245,214,155,.24);font-size:.58rem;font-weight:900;backdrop-filter:blur(8px)}
.v23-service-label{position:relative;min-height:118px;padding:1.05rem 1.05rem 1rem;text-align:right}
.v23-service-label strong,.v23-service-label small{display:block}
.v23-service-label strong{padding-left:2.2rem;color:#251812;font-size:.93rem;font-weight:900}
.v23-service-label small{margin-top:.34rem;color:#8a7c70;font-size:.61rem;line-height:1.55}
.v23-service-label i{position:absolute;left:1rem;top:1.08rem;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;color:#8f1d29;background:#f4e9d9;font-size:.8rem}

/* 3) Team — richer editorial cards on home. */
.v23-team{position:relative;padding:6.2rem 0 6.5rem;color:#fff;background:radial-gradient(circle at 18% 12%,rgba(193,137,72,.12),transparent 24%),linear-gradient(135deg,#120c09 0%,#24140f 58%,#4c1720 100%);overflow:hidden}
.v23-team:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent)}
.v23-team-head{position:relative;z-index:2;display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:1.8rem}
.v23-team-head h2{margin:.45rem 0 0;color:#fff;font-size:clamp(1.9rem,3.2vw,3rem);line-height:1.3;font-weight:900}
.v23-team-head h2 span{color:#edca88}
.v23-team-head>div:last-child{max-width:410px}
.v23-team-head p{margin:0 0 .75rem;color:rgba(255,255,255,.64);font-size:.73rem;line-height:1.8}
.v23-team-head a{display:inline-flex;align-items:center;gap:.4rem;color:#efcf93!important;font-size:.66rem;font-weight:900}
.v23-team-grid{position:relative;z-index:2;direction:rtl;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}
.v23-team-card{display:flex;flex-direction:column;overflow:hidden;min-height:470px;border:1px solid rgba(239,205,145,.14);border-radius:26px;color:#fff!important;background:rgba(255,255,255,.045);box-shadow:0 24px 55px rgba(0,0,0,.16);transition:transform .3s ease,border-color .3s ease,background .3s ease;text-decoration:none}
.v23-team-card:hover{transform:translateY(-7px);border-color:rgba(239,205,145,.38);background:rgba(255,255,255,.07)}
.v23-team-art{position:relative;height:245px;overflow:hidden;background:#2a1812}
.v23-team-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,8,6,.04) 15%,rgba(12,8,6,.22) 52%,rgba(12,8,6,.9) 100%)}
.v23-team-art img{width:100%;height:100%;object-fit:cover;object-position:center 10%;filter:saturate(.78) contrast(1.04);transform:scale(1.02);transition:transform .55s ease}
.v23-team-card:hover .v23-team-art img{transform:scale(1.065)}
.v23-team-index{position:absolute;right:.9rem;top:.9rem;z-index:2;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:#f0d09a;background:rgba(14,9,7,.72);border:1px solid rgba(240,208,154,.22);font-size:.58rem;font-weight:900}
.v23-team-info{display:flex;flex:1;flex-direction:column;padding:1.15rem 1.1rem 1.05rem}
.v23-team-info small{color:#e7be77;font-size:.58rem;font-weight:900}
.v23-team-info h3{margin:.28rem 0 .5rem;color:#fff;font-size:1.18rem;font-weight:900}
.v23-team-info p{margin:0;color:rgba(255,255,255,.61);font-size:.63rem;line-height:1.75}
.v23-team-more{display:inline-flex;align-items:center;gap:.4rem;margin-top:auto;padding-top:1rem;color:#f0d294;font-size:.6rem;font-weight:900}

/* 4) Offers — suspense, no "experiences" wording. Trips live inside Offers. */
.v23-offers{padding:6rem 0;background:#f8f3ec}
.v23-offers-stage{position:relative;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;min-height:540px;overflow:hidden;border-radius:38px;color:#fff;background:radial-gradient(circle at 78% 32%,rgba(159,35,46,.3),transparent 28%),linear-gradient(120deg,#0d0907 0%,#20110d 48%,#541720 100%);box-shadow:0 30px 70px rgba(44,25,17,.15)}
.v23-offers-stage:before{content:"قريبًا";position:absolute;left:-1rem;bottom:-4.5rem;color:rgba(255,255,255,.025);font-size:10rem;font-weight:900;white-space:nowrap}
.v23-offers-copy{position:relative;z-index:4;padding:4rem 3.5rem;text-align:right}
.v23-soon-chip{display:inline-flex;align-items:center;gap:.42rem;padding:.48rem .72rem;border-radius:999px;color:#fff;background:#b71f2e;font-size:.6rem;font-weight:900;box-shadow:0 8px 25px rgba(183,31,46,.28)}
.v23-offers-copy>small,.v23-offers-page-copy>small{display:block;margin-top:1rem;color:#efc982;font-size:.64rem;font-weight:900}
.v23-offers-copy h2{margin:.42rem 0 .9rem;color:#fff!important;font-size:clamp(2rem,3.7vw,3.65rem);line-height:1.18;font-weight:900;letter-spacing:-.035em}
.v23-offers-copy h2 span{color:#f0ca83!important}
.v23-offers-copy p{max-width:600px;margin:0;color:rgba(255,255,255,.76)!important;font-size:.78rem;line-height:2}
.v23-offer-hints{display:flex;flex-wrap:wrap;gap:.48rem;margin-top:1.15rem}
.v23-offer-hints span{padding:.48rem .68rem;border:1px solid rgba(255,255,255,.13);border-radius:999px;color:#fff;background:rgba(255,255,255,.055);font-size:.56rem;font-weight:800}
.v23-offers-link{display:inline-flex;align-items:center;gap:.45rem;margin-top:1.15rem;color:#f1d39b!important;font-size:.62rem;font-weight:900}
.v23-offers-visual,.v23-offers-page-visual{position:relative;min-height:540px;overflow:hidden}
.v23-offers-visual:before,.v23-offers-page-visual:before{content:"";position:absolute;width:430px;height:430px;right:50%;top:50%;transform:translate(50%,-50%);border:1px solid rgba(239,205,145,.1);border-radius:50%;box-shadow:0 0 0 55px rgba(255,255,255,.018),0 0 0 110px rgba(239,205,145,.018)}
.v23-secret-card{position:absolute;width:220px;height:285px;padding:1.2rem;border:1px solid rgba(239,205,145,.16);border-radius:24px;color:#fff;background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.025));backdrop-filter:blur(12px);box-shadow:0 25px 55px rgba(0,0,0,.28);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.v23-secret-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(211,165,93,.06),transparent 45%,rgba(111,18,31,.14))}
.v23-secret-card i{position:absolute;right:1rem;top:1rem;color:#e8bf77;font-size:2rem}
.v23-secret-card strong,.v23-secret-card small{position:relative;z-index:2;display:block}.v23-secret-card strong{font-size:1.15rem}.v23-secret-card small{margin-top:.25rem;color:rgba(255,255,255,.53);font-size:.55rem}
.v23-secret-one{right:12%;top:17%;transform:rotate(8deg)}
.v23-secret-two{right:38%;top:26%;z-index:2;transform:rotate(-4deg) scale(1.06)}
.v23-secret-three{right:59%;top:13%;transform:rotate(5deg)}
.v23-secret-seal{position:absolute;right:45%;top:45%;z-index:5;display:grid;place-items:center;width:86px;height:86px;border-radius:50%;color:#25150f;background:linear-gradient(145deg,#f1d59d,#bb853e);box-shadow:0 15px 34px rgba(0,0,0,.3),0 0 0 12px rgba(239,205,145,.06);font-size:1.3rem}

/* Offers standalone page */
.v23-offers-page{min-height:100vh;display:flex;align-items:center;padding:8rem 0 5rem;color:#fff;background:radial-gradient(circle at 78% 36%,rgba(165,39,50,.28),transparent 28%),linear-gradient(120deg,#0c0806,#21110d 52%,#551821 100%)}
.v23-offers-page .container{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:2rem}
.v23-offers-page-copy h1{margin:.45rem 0 .9rem;color:#fff;font-size:clamp(2.35rem,4.4vw,4.35rem);line-height:1.12;font-weight:900;letter-spacing:-.04em}
.v23-offers-page-copy h1 span{color:#efca84}
.v23-offers-page-copy p{max-width:620px;color:rgba(255,255,255,.74);font-size:.8rem;line-height:2}
.v23-offers-page-copy>a{display:inline-flex;align-items:center;gap:.45rem;margin-top:1.1rem;padding:.7rem .9rem;border:1px solid rgba(239,205,145,.18);border-radius:999px;color:#efcf94!important;background:rgba(255,255,255,.04);font-size:.62rem;font-weight:900}

/* 5) Auction: preserve accepted composition, force every line readable. */
.v23-auction .v21-auction-copy,
.v23-auction .v21-auction-copy h2,
.v23-auction .v21-auction-copy h2 *{color:#fff!important}
.v23-auction .v21-auction-copy h2 span{color:#efcb84!important}
.v23-auction .v21-auction-copy p{color:rgba(255,255,255,.76)!important}
.v23-auction .v21-auction-copy>small{color:#e7bf79!important}
.v23-auction .v21-auction-lock{color:#f0d092!important}

/* 6) Team page: keep the orbit hero, make coach content cleaner and more visual. */
.v23-team-page{padding:5.8rem 0 6.3rem;background:linear-gradient(180deg,#fffdfa,#f4ebdf)}
.v23-team-page-intro{max-width:720px;margin-bottom:1.8rem}
.v23-team-page-intro h2{margin:.45rem 0 .55rem;color:#21150f;font-size:clamp(1.8rem,3vw,2.8rem);font-weight:900}
.v23-team-page-intro p{margin:0;color:#786c63;font-size:.72rem;line-height:1.8}
.v23-team-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
.v23-profile-card{display:grid;grid-template-columns:43% 57%;min-height:390px;overflow:hidden;border:1px solid #e5d7c5;border-radius:30px;background:#fff;box-shadow:0 20px 50px rgba(55,34,21,.07)}
.v23-profile-proof{position:relative;display:block;overflow:hidden;background:#20130e}
.v23-profile-proof:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(9,6,4,.77))}
.v23-profile-proof img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .45s ease}
.v23-profile-card:hover .v23-profile-proof img{transform:scale(1.025)}
.v23-profile-proof>span{position:absolute;right:.9rem;left:.9rem;bottom:.85rem;z-index:2;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:.58rem;font-weight:900}
.v23-profile-body{display:flex;flex-direction:column;padding:1.55rem 1.4rem}
.v23-profile-body>small{color:#a16b2d;font-size:.58rem;font-weight:900}
.v23-profile-body h2{margin:.3rem 0 .55rem;color:#241711;font-size:1.75rem;font-weight:900}
.v23-profile-body>p{margin:0;color:#74685f;font-size:.66rem;line-height:1.85}
.v23-profile-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.9rem}
.v23-profile-chips span{padding:.4rem .55rem;border:1px solid #e8dac7;border-radius:999px;color:#6c5140;background:#f7efe5;font-size:.52rem;font-weight:800}
.v23-profile-highlight{display:flex;align-items:center;gap:.65rem;margin-top:auto;padding-top:1rem;color:#7b2430;font-size:.58rem;font-weight:900;line-height:1.6}
.v23-profile-highlight i{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;color:#fff;background:#8f1d29}

/* 7) Reduce oversized headings throughout the public site. */
.v18-hero-copy h1,.v18-hero-copy h2{font-size:clamp(2.65rem,5.4vw,4.65rem)!important}
.v20-service-hero h1{font-size:clamp(2.15rem,4.2vw,3.8rem)!important}
.v22-team-page-copy h1{font-size:clamp(2.45rem,4.7vw,4.45rem)!important}
.v21-auction-copy h2{font-size:clamp(1.75rem,3.1vw,2.85rem)!important}
.v20-section-head h2,.v18-section-title h2{font-size:clamp(1.35rem,2.4vw,2.15rem)!important}
.v20-simple-cta h2,.v22-team-cta h2{font-size:clamp(1.2rem,2.2vw,1.9rem)!important}

/* 8) One footer everywhere. */
.v23-unified-footer{padding:4rem 0 1.3rem!important;background:#130e0b!important;border-top:1px solid rgba(232,196,132,.12)}
.v23-unified-footer .v18-footer-grid{grid-template-columns:1.35fr .9fr .9fr 1fr;gap:2.1rem}
.v23-unified-footer .v18-footer-brand p{max-width:330px;color:rgba(255,255,255,.58)}
.v23-unified-footer .v18-footer-bottom{margin-top:2.2rem}
.v23-unified-footer .v18-footer-bottom>div{display:flex;gap:1rem}

@media(max-width:1199px){
  .v23-service-photo{height:225px}
  .v23-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v23-team-card{min-height:440px}
  .v23-team-directory{grid-template-columns:1fr}
  .v23-profile-card{min-height:410px}
}
@media(max-width:991px){
  .v23-about-grid,.v23-mission-grid{grid-template-columns:1fr;gap:2rem;direction:rtl}
  .v23-about-image-wrap,.v23-about-copy,.v23-mission-copy,.v23-mission-image{grid-column:auto}
  .v23-about-copy{order:1}.v23-about-image-wrap{order:2}
  .v23-mission-copy{order:1}.v23-mission-image{order:2}
  .v23-about-image,.v23-mission-image{min-height:420px}
  .v23-service-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v23-offers-stage,.v23-offers-page .container{grid-template-columns:1fr}
  .v23-offers-copy{padding-bottom:1rem}
  .v23-offers-visual,.v23-offers-page-visual{min-height:430px}
  .v23-unified-footer .v18-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
  .v23-about,.v23-mission,.v23-services,.v23-team,.v23-offers,.v23-team-page{padding:4.3rem 0}
  .v23-about-image,.v23-mission-image{min-height:330px;border-radius:26px}
  .v23-services-head,.v23-team-head{align-items:flex-start;flex-direction:column}
  .v23-service-tabs{display:flex;overflow-x:auto;gap:.8rem;padding-bottom:.45rem;scroll-snap-type:x mandatory}
  .v23-service-tab{flex:0 0 78%;scroll-snap-align:start}
  .v23-service-photo{height:220px}
  .v23-team-grid{display:flex;overflow-x:auto;gap:.8rem;padding-bottom:.5rem;scroll-snap-type:x mandatory}
  .v23-team-card{flex:0 0 82%;min-height:445px;scroll-snap-align:start}
  .v23-offers-stage{border-radius:28px}
  .v23-offers-copy{padding:2.4rem 1.45rem .5rem}
  .v23-offers-copy h2{font-size:2.4rem}
  .v23-offers-visual,.v23-offers-page-visual{min-height:360px}
  .v23-secret-card{width:165px;height:225px;padding:.85rem}
  .v23-secret-one{right:4%;top:20%}.v23-secret-two{right:31%;top:25%}.v23-secret-three{right:57%;top:17%}
  .v23-secret-seal{right:42%;width:66px;height:66px}
  .v23-team-directory{grid-template-columns:1fr}
  .v23-profile-card{grid-template-columns:1fr;min-height:0}
  .v23-profile-proof{height:330px}
  .v23-unified-footer .v18-footer-grid{grid-template-columns:1fr}
  .v23-unified-footer .v18-footer-bottom{align-items:flex-start;flex-direction:column}
  .v18-hero-copy h1,.v18-hero-copy h2{font-size:clamp(2.15rem,10vw,3rem)!important}
  .v20-service-hero h1{font-size:clamp(2rem,9vw,2.8rem)!important}
  .v22-team-page-copy h1{font-size:clamp(2.2rem,10vw,3rem)!important}
}


/* =========================================================
   v1.24 — Public homepage refresh
   Editorial / premium equestrian direction
   ========================================================= */
.home-v24{
  --v24-ink:#1b1714;
  --v24-brown:#2a1b16;
  --v24-wine:#681923;
  --v24-red:#9d1725;
  --v24-gold:#bd8e46;
  --v24-gold-light:#e4c687;
  --v24-gold-deep:#8a6328;
  --v24-cream:#f7f2eb;
  --v24-paper:#fffdf9;
  --v24-line:#e7ddd1;
  --v24-muted:#776d66;
  background:var(--v24-paper);
  color:var(--v24-ink);
  font-family:"Cairo",sans-serif;
  overflow-x:hidden;
}
.home-v24 *{box-sizing:border-box}
.home-v24 a{text-decoration:none}
.home-v24 .container{max-width:1280px}

/* top utility + navigation */
.v24-topline{background:#17110f;color:#d9cec5;font-size:.74rem}
.v24-topline .container{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.v24-topline-contact,.v24-topline-social{display:flex;align-items:center;gap:18px}
.v24-topline a,.v24-topline span{color:#d9cec5}
.v24-topline i{color:var(--v24-gold);margin-left:5px}
.v24-topline-social a{width:27px;height:27px;border:1px solid rgba(255,255,255,.1);border-radius:50%;display:grid;place-items:center}
.v24-navbar{background:rgba(255,253,249,.96);border-bottom:1px solid rgba(46,31,25,.08);backdrop-filter:blur(16px);z-index:1050}
.v24-navbar .container{min-height:82px}
.v24-brand{display:flex;align-items:center;gap:12px;color:var(--v24-ink);text-decoration:none}
.v24-brand img{width:60px;height:60px;object-fit:contain;flex:none}
.v24-brand span{display:flex;flex-direction:column;justify-content:center}
.v24-brand strong{font-size:1rem;font-weight:900;color:var(--v24-gold-deep)}
.v24-brand small{font-size:.6rem;font-weight:800;color:var(--v24-gold);opacity:.85;letter-spacing:.03em;margin-top:3px}
.v24-navlinks{gap:4px}
.v24-navlinks .nav-link{position:relative;padding:29px 10px!important;color:#403833;font-size:.73rem;font-weight:800}
.v24-navlinks .nav-link::after{content:"";position:absolute;right:10px;left:10px;bottom:20px;height:2px;background:var(--v24-red);transform:scaleX(0);transition:.2s}
.v24-navlinks .nav-link.active{color:var(--v24-red)}
.v24-navlinks .nav-link:hover{color:var(--v24-gold-deep)}
.v24-navlinks .nav-link.active::after{transform:scaleX(1)}
.v24-navlinks .nav-link:hover::after{transform:scaleX(1);opacity:.45}
.v24-nav-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 18px;background:var(--v24-wine);color:#fff;border-radius:4px;font-size:.72rem;font-weight:900;transition:.2s;text-decoration:none}
.v24-nav-cta:hover{color:#fff;background:#801e2b;transform:translateY(-1px)}
.v24-toggler{border:0;color:var(--v24-wine);font-size:1.7rem;box-shadow:none!important}
.v24-offcanvas{background:#17110f;color:#fff}
.v24-offcanvas .v24-brand{color:#fff}
.v24-offcanvas .v24-brand strong{color:var(--v18-gold-soft)}
.v24-offcanvas .v24-brand small{color:var(--v18-gold-soft);opacity:.78}
.v24-mobile-links{display:grid}
.v24-mobile-links a{padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;font-weight:800;text-decoration:none;display:block}

/* hero */
.v24-hero{position:relative;min-height:690px;overflow:hidden;background:#17110f}
.v24-hero-image{position:absolute;inset:0;background:url("/assets/images/v24/hero.jpg") center 56%/cover no-repeat;transform:scale(1.025)}
.v24-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,9,8,.9) 0%,rgba(21,13,11,.62) 39%,rgba(21,13,11,.28) 69%,rgba(17,11,9,.62) 100%)}
.v24-hero-container{position:relative;min-height:690px;display:flex;align-items:center}
.v24-hero-content{width:min(640px,58%);padding:64px 0 100px;color:#fff}
.v24-kicker,.v24-section-label{display:inline-flex;align-items:center;gap:8px;color:var(--v24-red);font-size:.72rem;font-weight:900;letter-spacing:.02em}
.v24-kicker{color:var(--v24-gold-light)}
.v24-kicker::before,.v24-section-label::before{content:"";width:34px;height:2px;background:currentColor}
.v24-section-label.light{color:var(--v24-gold-light)}
.v24-hero h1{margin:14px 0 18px;font-size:clamp(2.7rem,5.3vw,5.5rem);line-height:1.18;font-weight:900;letter-spacing:-.04em}
.v24-hero h1 em,.v24-about h2 em,.v24-mission h2 em,.v24-section-head h2 em,.v24-team h2 em,.v24-offers h2 em,.v24-auction h2 em,.v24-contact h2 em{font-style:normal;color:var(--v24-gold-light)}
.v24-hero p{max-width:630px;margin:0;color:rgba(255,255,255,.75);font-size:1rem;line-height:2}
.v24-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.v24-btn-primary,.v24-btn-ghost,.v24-btn-dark,.v24-btn-outline-light{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:48px;padding:11px 19px;border-radius:4px;font-size:.74rem;font-weight:900;transition:.2s}
.v24-btn-primary{background:var(--v24-red);color:#fff}
.v24-btn-primary:hover{background:#b51c2c;color:#fff;transform:translateY(-2px)}
.v24-btn-ghost{border:1px solid rgba(255,255,255,.3);color:#fff;background:rgba(255,255,255,.04)}
.v24-btn-ghost:hover{color:#fff;border-color:var(--v24-gold-light);background:rgba(255,255,255,.08)}
.v24-visit-card{position:absolute;left:0;bottom:74px;width:320px;padding:21px 22px;color:#fff;background:rgba(22,14,12,.78);border:1px solid rgba(225,194,135,.28);backdrop-filter:blur(14px)}
.v24-visit-card::before{content:"";position:absolute;right:0;top:0;bottom:0;width:3px;background:var(--v24-gold)}
.v24-visit-icon{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:rgba(190,142,70,.16);color:var(--v24-gold-light);margin-bottom:12px}
.v24-visit-card>span{display:block;color:#d9c9bb;font-size:.68rem}
.v24-visit-card strong{display:block;margin-top:6px;font-size:.78rem}
.v24-visit-card b{display:block;margin:5px 0 10px;color:var(--v24-gold-light);font-size:.94rem}
.v24-visit-card p{font-size:.63rem;line-height:1.8;color:#d3c8c0}
.v24-visit-card small{display:block;padding-top:9px;border-top:1px solid rgba(255,255,255,.1);color:#a99c93;font-size:.54rem}
.v24-hero-values{position:absolute;right:0;left:355px;bottom:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-width:560px}
.v24-hero-values article{display:flex;align-items:center;gap:12px;min-height:76px;padding:14px 18px;background:rgba(255,253,249,.95);border-inline-start:1px solid #e6dcd0}
.v24-hero-values i{font-size:1.35rem;color:var(--v24-red)}
.v24-hero-values strong{display:block;font-size:.74rem}
.v24-hero-values small{display:block;color:var(--v24-muted);font-size:.55rem;margin-top:2px}
.v24-scroll-cue{position:absolute;left:32px;top:45%;display:flex;align-items:center;gap:10px;transform:rotate(-90deg);transform-origin:left center;color:rgba(255,255,255,.6);font-size:.58rem;letter-spacing:.08em}

/* section basics */
.v24-about,.v24-services,.v24-team,.v24-auction,.v24-booking{padding:105px 0}
.v24-about{background:var(--v24-paper)}
.v24-about-grid{display:grid;grid-template-columns:1fr 1.04fr;align-items:center;gap:78px}
.v24-about-media{position:relative;order:2}
.v24-about-media img{width:100%;height:520px;object-fit:cover;border-radius:2px;display:block}
.v24-experience-card{position:absolute;left:-34px;bottom:34px;width:170px;padding:18px;background:var(--v24-wine);color:#fff;box-shadow:0 24px 50px rgba(72,25,26,.18)}
.v24-experience-card strong{display:block;font-size:2rem;color:var(--v24-gold-light)}
.v24-experience-card span{display:block;font-size:.61rem;line-height:1.7}
.v24-about-copy{order:1}
.v24-about h2,.v24-mission h2,.v24-section-head h2,.v24-team h2,.v24-offers h2,.v24-auction h2,.v24-contact h2{margin:12px 0 18px;font-size:clamp(2rem,3.5vw,3.5rem);line-height:1.35;font-weight:900;letter-spacing:-.035em}
.v24-about h2 em,.v24-section-head h2 em,.v24-team h2 em,.v24-auction h2 em{color:var(--v24-wine)}
.v24-about-copy>p,.v24-section-head>p,.v24-team-copy>p,.v24-auction-copy>p{margin:0;color:var(--v24-muted);font-size:.88rem;line-height:2}
.v24-about-features{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}
.v24-about-features article{display:flex;align-items:flex-start;gap:10px;padding:14px;border-top:1px solid var(--v24-line)}
.v24-about-features article>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex:none;background:#f2e9dd;color:var(--v24-red)}
.v24-about-features strong{display:block;font-size:.72rem}
.v24-about-features small{display:block;color:var(--v24-muted);font-size:.55rem;line-height:1.65;margin-top:3px}
.v24-text-link{display:inline-flex;align-items:center;gap:8px;color:var(--v24-wine);font-size:.68rem;font-weight:900}

/* mission */
.v24-mission{padding:105px 0;background:var(--v24-brown);color:#fff;position:relative;overflow:hidden}
.v24-mission::before{content:"ALFAISAL";position:absolute;left:-30px;bottom:-70px;color:rgba(255,255,255,.025);font-size:14rem;font-weight:900;letter-spacing:-.08em}
.v24-mission-head{position:relative;display:grid;grid-template-columns:1fr .8fr;align-items:end;gap:80px;margin-bottom:46px}
.v24-mission-head p{margin:0;color:#c9bdb5;font-size:.86rem;line-height:2}
.v24-mission-layout{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;gap:0;align-items:stretch}
.v24-mission-photo{position:relative;min-height:475px;overflow:hidden}
.v24-mission-photo img{width:100%;height:100%;object-fit:cover}
.v24-mission-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(22,14,12,.72),transparent 55%)}
.v24-mission-photo>span{position:absolute;right:25px;bottom:22px;z-index:1;color:#fff;font-size:.65rem;font-weight:900}
.v24-mission-cards{display:grid;grid-template-columns:repeat(3,1fr);background:#fff;color:var(--v24-ink)}
.v24-mission-cards article{position:relative;padding:34px 23px;border-inline-start:1px solid var(--v24-line);display:flex;flex-direction:column;justify-content:flex-end;min-height:475px}
.v24-mission-cards b{position:absolute;top:23px;left:20px;color:#d9cdc2;font-size:2.6rem}
.v24-mission-cards i{font-size:1.8rem;color:var(--v24-red);margin-bottom:20px}
.v24-mission-cards h3{font-size:1rem;font-weight:900}
.v24-mission-cards p{color:var(--v24-muted);font-size:.62rem;line-height:1.9;margin:7px 0 0}

/* services */
.v24-services{background:#f7f2eb}
.v24-section-head{display:flex;align-items:end;justify-content:space-between;gap:55px;margin-bottom:36px}
.v24-section-head>div{max-width:720px}
.v24-section-head>p{max-width:400px}
.v24-service-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-auto-rows:305px;gap:12px}
.v24-service-card{position:relative;overflow:hidden;color:#fff;background:#241713}
.v24-service-card.v24-service-large{grid-row:span 2}
.v24-service-card:nth-child(4){grid-column:2 / span 2}
.v24-service-img{position:absolute;inset:0}
.v24-service-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.v24-service-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(22,13,11,.9),rgba(26,17,14,.08) 65%)}
.v24-service-no{position:absolute;top:18px;left:18px;width:34px;height:34px;border:1px solid rgba(255,255,255,.3);border-radius:50%;display:grid;place-items:center;font-size:.55rem;color:#fff}
.v24-service-copy{position:absolute;right:22px;left:22px;bottom:20px;z-index:1}
.v24-service-copy small{color:#d9c699;font-size:.55rem}
.v24-service-copy h3{margin:4px 0 9px;font-size:1.05rem;font-weight:900}
.v24-service-copy span{display:inline-flex;align-items:center;gap:6px;color:#fff;font-size:.58rem;font-weight:800}
.v24-service-card:hover .v24-service-img img{transform:scale(1.055)}
.v24-service-card:hover .v24-service-copy span{color:var(--v24-gold-light)}
.v24-service-archery{background:radial-gradient(circle at center,#5c201f 0,#241311 68%)}
.v24-target-art{position:absolute;inset:0;display:grid;place-items:center}
.v24-target-art i{font-size:8.5rem;color:rgba(229,196,130,.58)}
.v24-target-art span{position:absolute;border:1px solid rgba(229,196,130,.16);border-radius:50%}
.v24-target-art span:nth-child(2){width:190px;height:190px}
.v24-target-art span:nth-child(3){width:245px;height:245px}
.v24-target-art span:nth-child(4){width:300px;height:300px}

/* team */
.v24-team{background:#fff}
.v24-team-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:88px;align-items:center}
.v24-team-orbit-wrap{position:relative;height:560px;display:grid;place-items:center}
.v24-orbit{position:absolute;width:450px;height:450px;border:1px solid #ddc8ab;border-radius:50%;animation:v24Spin 28s linear infinite}
.v24-orbit::before,.v24-orbit::after{content:"";position:absolute;border:1px solid #eadfce;border-radius:50%}
.v24-orbit::before{inset:48px}.v24-orbit::after{inset:98px}
.v24-orbit-word{position:absolute;padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--v24-line);color:var(--v24-wine);font-size:.58rem;font-weight:900;box-shadow:0 8px 20px rgba(71,45,30,.06);animation:v24Counter 28s linear infinite}
.v24-orbit-word.one{top:-14px;right:48%}.v24-orbit-word.two{top:47%;left:-30px}.v24-orbit-word.three{bottom:-14px;right:44%}.v24-orbit-word.four{top:46%;right:-28px}
.v24-orbit-core{position:relative;z-index:2;width:205px;height:205px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:var(--v24-brown);color:#fff;box-shadow:0 28px 55px rgba(53,34,25,.18)}
.v24-orbit-core img{width:70px;height:70px;margin-bottom:8px}
.v24-orbit-core strong{font-size:.82rem}.v24-orbit-core small{font-size:.5rem;color:#bfb1a8;margin-top:3px}
@keyframes v24Spin{to{transform:rotate(360deg)}} @keyframes v24Counter{to{transform:rotate(-360deg)}}
.v24-team-list{margin:24px 0}
.v24-team-list a{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--v24-line);color:var(--v24-ink);transition:.2s}
.v24-team-list b{color:#c6b5a2;font-size:.66rem}
.v24-team-list strong{display:block;font-size:.75rem}.v24-team-list small{display:block;color:var(--v24-muted);font-size:.53rem;margin-top:2px}
.v24-team-list i{color:var(--v24-wine);transition:.2s}
.v24-team-list a:hover{padding-right:8px}.v24-team-list a:hover i{transform:translate(-4px,-4px)}
.v24-btn-dark{background:var(--v24-brown);color:#fff;border-radius:4px}
.v24-btn-dark:hover{color:#fff;background:var(--v24-wine)}

/* offers */
.v24-offers{padding:105px 0;background:#140d0b;color:#fff;overflow:hidden}
.v24-offers-stage{display:grid;grid-template-columns:1fr .9fr;align-items:center;gap:60px;min-height:510px}
.v24-soon{display:inline-flex;padding:7px 12px;border-radius:999px;background:var(--v24-red);color:#fff;font-size:.55rem;font-weight:900;margin-bottom:18px}
.v24-soon.dark{background:#241713;color:#fff}
.v24-offers-copy>p{max-width:620px;color:#c5b8ae;font-size:.84rem;line-height:2}
.v24-offer-tags{display:flex;gap:7px;flex-wrap:wrap;margin:22px 0}
.v24-offer-tags span{padding:6px 10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;color:#d8cbc1;font-size:.52rem}
.v24-btn-outline-light{border:1px solid rgba(255,255,255,.25);color:#fff}
.v24-btn-outline-light:hover{border-color:var(--v24-gold);color:var(--v24-gold-light)}
.v24-mystery{position:relative;height:430px;display:grid;place-items:center}
.v24-mystery-ring{position:absolute;width:330px;height:330px;border:1px dashed rgba(229,196,130,.28);border-radius:50%;animation:v24Spin 20s linear infinite}
.v24-mystery-ring::after{content:"";position:absolute;inset:48px;border:1px solid rgba(229,196,130,.12);border-radius:50%}
.v24-mystery-card{position:absolute;width:210px;height:260px;padding:20px;border:1px solid rgba(229,196,130,.24);background:linear-gradient(160deg,#3b1b18,#1e1210);box-shadow:0 30px 60px rgba(0,0,0,.25);display:flex;flex-direction:column;justify-content:flex-end}
.v24-mystery-card i{position:absolute;top:22px;right:22px;color:var(--v24-gold);font-size:1.3rem}
.v24-mystery-card strong{font-size:4rem;color:#fff;line-height:1}.v24-mystery-card small{color:#bdaa9d;font-size:.55rem}
.v24-mystery-card.card-a{right:14%;transform:rotate(7deg)}.v24-mystery-card.card-b{left:10%;bottom:12%;transform:rotate(-9deg)}
.v24-mystery-lock{position:relative;z-index:5;width:78px;height:78px;border-radius:50%;display:grid;place-items:center;background:var(--v24-red);color:#fff;font-size:1.5rem;box-shadow:0 0 0 14px rgba(157,23,37,.12)}

/* auction */
.v24-auction{background:#f6f0e8}
.v24-auction-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
.v24-auction-note{display:inline-flex;align-items:center;gap:8px;margin-top:20px;padding:9px 12px;background:#e8ddcf;color:#5b4a40;font-size:.57rem;font-weight:900}
.v24-auction-showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;align-items:end}
.v24-auction-showcase article{position:relative;height:370px;overflow:hidden;background:#1e1511;box-shadow:0 22px 40px rgba(53,36,27,.12)}
.v24-auction-showcase article:nth-child(2){height:430px}
.v24-auction-showcase img{width:100%;height:100%;object-fit:cover;filter:saturate(.8)}
.v24-auction-showcase article::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(25,14,12,.65),transparent 55%)}
.v24-auction-showcase span{position:absolute;right:12px;bottom:12px;z-index:1;padding:5px 8px;background:var(--v24-red);color:#fff;font-size:.5rem;font-weight:900}

/* booking */
.v24-booking{background:#fff}
.v24-section-head.centered{display:grid;grid-template-columns:1fr;justify-items:center;text-align:center;max-width:800px;margin:0 auto 45px}
.v24-section-head.centered>p{max-width:600px}
.v24-booking-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:0;border-top:1px solid var(--v24-line);border-bottom:1px solid var(--v24-line)}
.v24-booking-flow article{position:relative;padding:28px 20px;min-height:230px;border-inline-start:1px solid var(--v24-line)}
.v24-booking-flow article:first-child{border-inline-start:0}
.v24-booking-flow b{position:absolute;top:16px;left:16px;color:#d4c7b9;font-size:.58rem}
.v24-booking-flow i{display:block;margin:32px 0 20px;color:var(--v24-red);font-size:1.6rem}
.v24-booking-flow h3{font-size:.82rem;font-weight:900}.v24-booking-flow p{color:var(--v24-muted);font-size:.54rem;line-height:1.8}
.v24-booking-action{text-align:center;margin-top:30px}

/* contact */
.v24-contact{padding:105px 0;background:var(--v24-wine);color:#fff}
.v24-contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}
.v24-contact-copy>p{color:#dec9c9;font-size:.84rem;line-height:2;max-width:520px}
.v24-contact-info{display:grid;gap:10px;margin-top:26px}
.v24-contact-info>a,.v24-contact-info>div{display:flex;align-items:center;gap:10px;color:#fff}
.v24-contact-info i{width:39px;height:39px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center;color:var(--v24-gold-light)}
.v24-contact-info small{display:block;color:#caaeb0;font-size:.48rem}.v24-contact-info strong{display:block;font-size:.64rem}
.v24-contact-form{padding:28px;background:#fff;color:var(--v24-ink)}
.v24-contact-form label{display:grid;gap:6px;margin-bottom:12px;font-size:.58rem;font-weight:900}
.v24-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.v24-contact-form input,.v24-contact-form select,.v24-contact-form textarea{width:100%;border:1px solid #e6ddd4;background:#fcfaf7;padding:11px 12px;font-family:inherit;font-size:.62rem;outline:none}
.v24-contact-form textarea{min-height:110px;resize:vertical}
.v24-contact-form input:focus,.v24-contact-form select:focus,.v24-contact-form textarea:focus{border-color:var(--v24-gold)}
.v24-contact-form button{border:0;background:var(--v24-brown);color:#fff;min-height:46px;padding:10px 18px;font-family:inherit;font-size:.65rem;font-weight:900}

/* footer */
.v24-footer{padding:75px 0 0;background:#15100e;color:#fff}
.v24-footer-top{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:50px;padding-bottom:45px}
.v24-footer .v24-brand{color:#fff}.v24-footer .v24-brand small{color:#9f9188}
.v24-footer-brand>p{max-width:330px;color:#9f9188;font-size:.58rem;line-height:1.9;margin:14px 0}
.v24-footer-social{display:flex;gap:7px}.v24-footer-social a{width:34px;height:34px;border:1px solid rgba(255,255,255,.1);display:grid;place-items:center;color:#d9c7ba}
.v24-footer h6{font-size:.72rem;color:var(--v24-gold-light);margin-bottom:14px}
.v24-footer-top>div:not(.v24-footer-brand){display:flex;flex-direction:column;gap:9px}
.v24-footer-top>div>a,.v24-footer-top>div>span{color:#a99a90;font-size:.55rem}
.v24-footer-top>div>a:hover{color:#fff}
.v24-footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 0;border-top:1px solid rgba(255,255,255,.08);color:#7e726c;font-size:.5rem}
.v24-footer-bottom div{display:flex;gap:15px}.v24-footer-bottom a{color:#7e726c}
.v24-whatsapp,.v24-scroll-top{position:fixed;bottom:18px;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;z-index:1040;box-shadow:0 12px 25px rgba(0,0,0,.15)}
.v24-whatsapp{right:18px;background:#23c767;color:#fff;font-size:1.2rem}
.v24-scroll-top{left:18px;background:#fff;color:#2b201b;border:1px solid #e6ddd4}

@media(max-width:1199px){
  .v24-navlinks .nav-link{padding:29px 6px!important;font-size:.64rem}
  .v24-brand strong{font-size:.78rem}
  .v24-hero-content{width:62%}
  .v24-visit-card{width:285px}
  .v24-about-grid,.v24-team-grid,.v24-auction-grid{gap:45px}
  .v24-service-grid{grid-template-columns:1fr 1fr}
  .v24-service-card.v24-service-large{grid-row:span 1}
  .v24-service-card:nth-child(4){grid-column:auto}
  .v24-mission-layout{grid-template-columns:1fr}
  .v24-mission-cards article{min-height:300px}
  .v24-booking-flow{grid-template-columns:repeat(3,1fr)}
  .v24-booking-flow article:nth-child(4){border-top:1px solid var(--v24-line)}
}
@media(max-width:991px){
  .v24-topline{display:none}
  .v24-navbar .container{min-height:72px}
  .v24-hero,.v24-hero-container{min-height:720px}
  .v24-hero-content{width:100%;max-width:650px;padding-top:80px;align-self:flex-start}
  .v24-visit-card{right:12px;left:auto;bottom:25px;width:min(360px,calc(100% - 24px))}
  .v24-hero-values{display:none}
  .v24-scroll-cue{display:none}
  .v24-about-grid,.v24-team-grid,.v24-auction-grid,.v24-offers-stage,.v24-contact-grid{grid-template-columns:1fr}
  .v24-about-media{order:1}.v24-about-copy{order:2}
  .v24-about-media img{height:430px}
  .v24-experience-card{left:20px}
  .v24-mission-head{grid-template-columns:1fr;gap:12px}
  .v24-team-orbit-wrap{height:470px}
  .v24-orbit{width:380px;height:380px}
  .v24-auction-copy{max-width:720px}
  .v24-footer-top{grid-template-columns:1fr 1fr}
}
@media(max-width:767px){
  .v24-about,.v24-services,.v24-team,.v24-auction,.v24-booking,.v24-mission,.v24-offers,.v24-contact{padding:72px 0}
  .v24-hero h1{font-size:2.7rem}
  .v24-hero p{font-size:.82rem}
  .v24-about-grid{gap:45px}
  .v24-about-features{grid-template-columns:1fr}
  .v24-mission-cards{grid-template-columns:1fr}
  .v24-mission-cards article{min-height:210px}
  .v24-service-grid{grid-template-columns:1fr;grid-auto-rows:320px}
  .v24-section-head{display:block}
  .v24-section-head>p{margin-top:10px}
  .v24-team-orbit-wrap{height:400px}
  .v24-orbit{width:320px;height:320px}
  .v24-orbit-core{width:170px;height:170px}
  .v24-orbit-word.two{left:-14px}.v24-orbit-word.four{right:-14px}
  .v24-auction-showcase{gap:5px}
  .v24-auction-showcase article{height:280px}.v24-auction-showcase article:nth-child(2){height:325px}
  .v24-booking-flow{grid-template-columns:1fr 1fr}
  .v24-booking-flow article{min-height:200px;border-top:1px solid var(--v24-line)}
  .v24-form-row{grid-template-columns:1fr}
  .v24-footer-top{grid-template-columns:1fr}
  .v24-footer-bottom{align-items:flex-start;flex-direction:column}
}
@media(max-width:480px){
  .v24-hero,.v24-hero-container{min-height:760px}
  .v24-hero-content{padding-top:55px}
  .v24-hero h1{font-size:2.25rem}
  .v24-hero-actions{display:grid}
  .v24-visit-card{bottom:22px}
  .v24-about-media img{height:340px}
  .v24-about h2,.v24-mission h2,.v24-section-head h2,.v24-team h2,.v24-offers h2,.v24-auction h2,.v24-contact h2{font-size:2rem}
  .v24-team-orbit-wrap{height:340px}
  .v24-orbit{width:275px;height:275px}
  .v24-orbit-core{width:145px;height:145px}
  .v24-orbit-core img{width:54px;height:54px}
  .v24-mystery{height:370px}
  .v24-mystery-card{width:165px;height:220px}
  .v24-auction-showcase article{height:230px}.v24-auction-showcase article:nth-child(2){height:270px}
  .v24-booking-flow{grid-template-columns:1fr}
}

/* =========================================================
   v1.25 — site refresh
   Fixed homepage navbar, services dropdown, mobile services
   panel, and general polish.
   ========================================================= */

/* homepage navbar is now fixed-top (was sticky-top with a
   topline bar above it); give the hero matching top clearance */
.v24-hero{padding-top:82px}
@media(max-width:991px){.v24-hero{padding-top:72px}}

/* services dropdown — desktop, both navbar themes */
.v18-navlinks .nav-link[data-bs-toggle="dropdown"],
.v24-navlinks .nav-link[data-bs-toggle="dropdown"]{display:inline-flex;align-items:center;gap:6px}
.v18-navlinks .nav-link[data-bs-toggle="dropdown"] i,
.v24-navlinks .nav-link[data-bs-toggle="dropdown"] i{font-size:.6rem;transition:transform .2s}
.v18-navlinks .nav-link[aria-expanded="true"] i,
.v24-navlinks .nav-link[aria-expanded="true"] i{transform:rotate(180deg)}
.v18-navlinks .dropdown-menu,
.v24-navlinks .dropdown-menu{border:none;border-radius:14px;padding:.5rem;margin-top:12px!important;box-shadow:0 20px 45px rgba(20,14,10,.18);min-width:230px}
.v18-navlinks .dropdown-menu{background:#1c1613;border:1px solid rgba(213,173,103,.22)}
.v18-navlinks .dropdown-item{color:rgba(255,255,255,.82);border-radius:9px;font-weight:700;font-size:.8rem;padding:.6rem .9rem}
.v18-navlinks .dropdown-item:hover,.v18-navlinks .dropdown-item:focus{background:rgba(255,255,255,.07);color:#fff}
.v24-navlinks .dropdown-menu{background:#fffdf9;border:1px solid var(--v24-line)}
.v24-navlinks .dropdown-item{color:var(--v24-ink);border-radius:9px;font-weight:800;font-size:.72rem;padding:.65rem .9rem}
.v24-navlinks .dropdown-item:hover,.v24-navlinks .dropdown-item:focus{background:#f2e9dd;color:var(--v24-red)}

/* services panel — mobile offcanvas menu (shared look, both offcanvas themes are dark) */
.mobile-services-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.5rem;background:none;border:0;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08);color:#fff;font-weight:800;font-family:inherit;font-size:inherit;text-align:right}
.mobile-services-toggle i{font-size:.72rem;color:rgba(255,255,255,.55);transition:transform .2s}
.mobile-services-toggle[aria-expanded="true"] i{transform:rotate(180deg)}
.mobile-services-panel{display:flex;flex-direction:column;padding-right:14px;border-bottom:1px solid rgba(255,255,255,.08)}
.mobile-services-panel a{padding:10px 0;border-bottom:1px dashed rgba(255,255,255,.08);color:rgba(255,255,255,.68)!important;font-weight:600!important;font-size:.82rem}
.mobile-services-panel a:last-child{border-bottom:0}
.v24-mobile-links .mobile-services-panel,.v18-mobile-links .mobile-services-panel{border-bottom:0}

/* -------- trim the biggest headline sizes site-wide (~13% smaller) -------- */
.v24-hero h1{font-size:clamp(2.3rem,4.6vw,4.6rem)}
.v24-about h2,.v24-mission h2,.v24-section-head h2,.v24-team h2,.v24-offers h2,.v24-auction h2,.v24-contact h2{font-size:clamp(1.7rem,3vw,2.9rem)}
.v20-service-hero h1{font-size:clamp(1.9rem,3.7vw,3.3rem)!important}
.v21-inner-hero h1{font-size:clamp(2.15rem,4.3vw,4.1rem)}
.v22-team-page-copy h1{font-size:clamp(2.15rem,4.1vw,3.9rem)!important}
.v20-section-head h2{font-size:clamp(1.5rem,2.6vw,2.45rem)}
.v22-team-page-intro h2{font-size:clamp(1.75rem,3vw,2.95rem)}
.v23-team-page-intro h2{font-size:clamp(1.6rem,2.6vw,2.4rem)}
.v20-simple-cta h2,.v22-team-cta h2{font-size:clamp(1.1rem,2vw,1.7rem)!important}
.v24-mystery-card strong{font-size:3.4rem}
.v24-experience-card strong{font-size:1.7rem}
.v20-price{font-size:1.7rem}
@media(max-width:767px){
  .v24-hero h1{font-size:2.3rem}
}
@media(max-width:480px){
  .v24-hero h1{font-size:2rem}
  .v24-about h2,.v24-mission h2,.v24-section-head h2,.v24-team h2,.v24-offers h2,.v24-auction h2,.v24-contact h2{font-size:1.75rem}
}

/* -------- services rail: archery tile has no photo, reuse the target motif -------- */
.v21-service-archery{background:radial-gradient(circle at center,#5c201f 0,#241311 68%)}
.v21-archery-icon{position:absolute;inset:0;display:grid;place-items:center;color:rgba(229,196,130,.5);font-size:4.2rem;z-index:0}

/* -------- booking steps reused on the homepage: match the v24 palette -------- */
.v24-booking-steps.v18-booking-steps{margin:2.4rem 0 2rem}
.v24-booking-steps .v18-step-icon{color:var(--v24-red)}
.v24-booking-steps .v18-step-no{background:var(--v24-brown)}
.v24-booking-steps::before{background:var(--v24-line)}

/* -------- footer refresh (shared across every page) -------- */
.v23-unified-footer{position:relative;border-top:2px solid var(--v18-gold,#d5ad67)}
.v23-unified-footer .v18-footer-brand .v18-brand-footer{margin-bottom:.35rem}
.v23-unified-footer .v18-footer-brand .v18-brand-footer strong{font-size:1.05rem}
.v23-unified-footer .v18-socials a{transition:.2s ease}
.v23-unified-footer .v18-socials a:hover{transform:translateY(-3px);color:#1b130c;background:var(--v18-gold,#d5ad67)}
.v23-unified-footer .v18-footer-grid>div:not(.v18-footer-brand) h6{position:relative;display:inline-flex;align-items:center;gap:.5rem}
.v23-unified-footer .v18-footer-grid>div:not(.v18-footer-brand) h6::before{content:"";width:16px;height:2px;background:var(--v18-gold,#d5ad67);display:inline-block}
.v23-unified-footer .v18-footer-grid>div:not(.v18-footer-brand) a{position:relative;display:inline-block;width:fit-content;transition:.2s ease}
.v23-unified-footer .v18-footer-grid>div:not(.v18-footer-brand) a:hover{color:#fff;transform:translateX(-3px)}
.v23-unified-footer .v18-contact-list li a:hover{transform:none}
.v23-unified-footer .v18-footer-bottom a{transition:.2s ease}
.v23-unified-footer .v18-footer-bottom a:hover{color:var(--v18-gold-soft,#ead4a9)}

/* -------- homepage footer refresh (same content, fresher look) -------- */
.v24-footer{position:relative;border-top:2px solid var(--v24-gold)}
.v24-footer-social a{transition:.2s ease}
.v24-footer-social a:hover{transform:translateY(-3px);color:#1b130c;background:var(--v24-gold);border-color:var(--v24-gold)}
.v24-footer-top>div:not(.v24-footer-brand) h6{position:relative;display:inline-flex;align-items:center;gap:.5rem}
.v24-footer-top>div:not(.v24-footer-brand) h6::before{content:"";width:16px;height:2px;background:var(--v24-gold);display:inline-block}
.v24-footer-top>div:not(.v24-footer-brand)>a{position:relative;display:inline-block;width:fit-content;transition:.2s ease}
.v24-footer-top>div:not(.v24-footer-brand)>a:hover{color:#fff;transform:translateX(-3px)}
.v24-footer-bottom a{transition:.2s ease}
.v24-footer-bottom a:hover{color:var(--v24-gold-light)}
.v24-whatsapp,.v24-scroll-top{transition:.2s ease}
.v24-whatsapp:hover,.v24-scroll-top:hover{transform:translateY(-3px)}

/* =========================================================
   v1.26 — homepage redesign round (index.html only)
   Identity strip above the hero, compact visit card, mission
   mirrored on About's design, larger service tabs with text
   below the image, richer team cards, polished offers/auction
   stages, an inviting booking CTA, the shared footer, and a
   further trim of oversized headline sizes.
   ========================================================= */

/* -------- compact visit card: no explicit "visiting/entry hours" label -------- */
.v24-visit-card-compact{width:265px;padding:16px 18px}
.v24-visit-top{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.v24-visit-top .v24-visit-icon{position:relative;width:34px;height:34px;margin:0;flex:none}
.v24-visit-top strong{font-size:.72rem}
.v24-visit-top b{margin:2px 0 0;font-size:.86rem}
.v24-visit-card-compact p{margin:0 0 8px;font-size:.6rem;line-height:1.7}
.v24-visit-card-compact small{padding-top:7px;font-size:.52rem}
@media(max-width:991px){.v24-visit-card-compact{width:min(300px,calc(100% - 24px))}}

/* -------- mission: same design language as About, reversed composition -------- */
.v24-mission-mirror{background:var(--v24-cream)}
.v24-about-grid-reverse .v24-about-media{order:1}
.v24-about-grid-reverse .v24-about-copy{order:2}
.v24-about-features-3{grid-template-columns:repeat(3,1fr)}
.v24-quote-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-align:right}
.v24-quote-card i{font-size:1.5rem;color:var(--v24-gold-light)}
.v24-quote-card span{font-size:.6rem;line-height:1.6;color:#fff}
@media(max-width:767px){.v24-about-features-3{grid-template-columns:1fr}}

/* -------- services: archery tab has no photo, reuse the target motif -------- */
.v23-service-photo-archery{background:radial-gradient(circle at center,#5c201f 0,#241311 68%)}

/* -------- team: richer editorial cards without real headshots -------- */
.v23-team-avatar{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2c1712,#5c1720)}
.v23-team-avatar .v23-avatar-letter{width:92px;height:92px;display:grid;place-items:center;border-radius:50%;color:#fff;background:linear-gradient(135deg,#d0a158,#b81f2d);font-size:2rem;font-weight:900;box-shadow:0 18px 34px rgba(0,0,0,.3)}
.v23-team-avatar i{position:absolute;bottom:14px;left:14px;color:rgba(255,255,255,.3);font-size:1.3rem}
.v23-team-facts{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.7rem}
.v23-team-facts b{padding:.35rem .55rem;border-radius:999px;color:#f0d69f;background:rgba(255,255,255,.08);border:1px solid rgba(240,214,159,.18);font-size:.52rem;font-weight:800}
.v23-team-head .v18-eyebrow{color:#e8bd73}

/* -------- auction: elevated dark stage to match the offers section -------- */
.v24-auction{background:#f2ece2}
.v24-auction-stage{position:relative;overflow:hidden;display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:70px;padding:70px 60px;border-radius:34px;color:#fff;background:radial-gradient(circle at 80% 25%,rgba(157,23,37,.28),transparent 32%),linear-gradient(125deg,#120b09 0%,#241410 48%,#5a1a24 100%);box-shadow:0 34px 76px rgba(30,17,12,.22)}
.v24-auction-stage .v24-auction-copy>p{color:rgba(255,255,255,.76)}
.v24-auction-stage .v24-auction-copy h2{color:#fff}
.v24-auction-stage .v24-auction-copy h2 em{color:var(--v24-gold-light)}
.v24-auction-stage .v24-auction-note{background:rgba(255,255,255,.08);color:#f0d69f;border-color:rgba(240,214,159,.2)}
@media(max-width:1199px){.v24-auction-stage{gap:45px;padding:54px 42px}}
@media(max-width:991px){.v24-auction-stage{grid-template-columns:1fr;padding:44px 30px}}
@media(max-width:767px){.v24-auction-stage{padding:34px 22px;border-radius:26px}}

/* -------- booking: an inviting call-to-action panel -------- */
.v24-booking-cta{position:relative;display:flex;align-items:center;justify-content:space-between;gap:2rem;margin-top:2.6rem;padding:2.4rem 2.6rem;border-radius:28px;color:#fff;background:linear-gradient(120deg,#3a1015 0%,#7e1923 55%,#b81f2d 130%);box-shadow:0 28px 60px rgba(90,20,26,.22)}
.v24-booking-cta-eyebrow{display:inline-flex;align-items:center;gap:.4rem;color:#f0d69f;font-size:.62rem;font-weight:900}
.v24-booking-cta-copy h3{margin:.5rem 0 .5rem;color:#fff;font-size:1.35rem;font-weight:900}
.v24-booking-cta-copy p{margin:0;max-width:440px;color:rgba(255,255,255,.75);font-size:.68rem;line-height:1.85}
.v24-booking-cta-actions{display:flex;flex-direction:column;align-items:flex-end;gap:.7rem;flex:none}
.v24-booking-cta-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:999px;color:#3a2512;background:linear-gradient(135deg,#f0d69f,#c9974c);font-size:.72rem;font-weight:900;white-space:nowrap;transition:.2s}
.v24-booking-cta-btn:hover{color:#241608;filter:brightness(1.04);transform:translateY(-2px)}
.v24-booking-cta-link{display:inline-flex;align-items:center;gap:.4rem;color:rgba(255,255,255,.82);font-size:.62rem;font-weight:800}
.v24-booking-cta-link:hover{color:#fff}
@media(max-width:767px){.v24-booking-cta{flex-direction:column;align-items:flex-start;padding:1.9rem 1.6rem}.v24-booking-cta-actions{align-items:flex-start;width:100%}.v24-booking-cta-btn{width:100%;justify-content:center}}

/* -------- trim remaining oversized headline sizes -------- */
.v24-hero h1{font-size:clamp(2rem,4vw,3.7rem)}
@media(max-width:767px){.v24-hero h1{font-size:2.1rem}}
@media(max-width:480px){.v24-hero h1{font-size:1.85rem}}

/* =========================================================
   v1.27 — homepage follow-up round (index.html only)
   Real logo mark, a scrollable services rail with arrows
   (room to add more services later), a spotlight + grid team
   layout, a richer booking section with trust chips and a
   photo-backed CTA, and a further global type-size reduction.
   ========================================================= */

/* -------- real logo icon: horse + "الفيصل" only; the rest is normal text -------- */
.v24-brand small,.v18-brand small{white-space:normal;line-height:1.5;max-width:210px}

/* -------- services: scrollable rail with prev/next arrows for future growth -------- */
.v25-service-shell{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:.9rem}
.v23-service-tabs.v25-service-rail{display:flex;flex-wrap:nowrap;overflow-x:auto;scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none;gap:1.1rem;padding:.3rem .1rem 1rem}
.v23-service-tabs.v25-service-rail::-webkit-scrollbar{display:none}
.v25-service-rail .v23-service-tab{flex:0 0 300px;scroll-snap-align:start}
@media(max-width:767px){.v25-service-rail .v23-service-tab{flex:0 0 80%}}
/* HOTFIX 1: a real, final empty result (schema available, zero services
   flagged for the home page) — a genuine empty state, not an error. */
.v25-service-rail-empty{flex:1 1 100%;text-align:center;color:var(--v24-muted);padding:2rem 0;font-size:.9rem}

/* -------- team: editorial roster — a featured profile band + a clean 3-up row -------- */
.v26-team{background:var(--v24-paper)}
.v26-team-feature{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:2.2rem;padding:2.5rem 1rem;margin-bottom:.3rem;border-top:1px solid var(--v24-line);border-bottom:1px solid var(--v24-line);text-decoration:none!important;color:var(--v24-ink)!important;transition:.25s ease}
.v26-team-feature:hover{background:rgba(189,142,70,.06)}
.v26-team-medal{position:relative;display:grid;place-items:center;width:96px;height:96px;border-radius:50%;flex:none}
.v26-team-medal-lg{width:128px;height:128px}
.v26-medal-ring{position:absolute;inset:0;border-radius:50%;border:1px solid var(--v24-gold);box-shadow:0 0 0 8px rgba(189,142,70,.08)}
.v26-medal-ring:before{content:"";position:absolute;inset:9px;border-radius:50%;border:1px solid rgba(189,142,70,.35)}
.v26-medal-letter{position:relative;z-index:2;font-family:Georgia,"Cairo",serif;font-size:2rem;color:var(--v24-wine);font-weight:700}
.v26-team-medal-lg .v26-medal-letter{font-size:2.6rem}
.v26-team-feature-info{min-width:0}
.v26-team-kicker{display:inline-flex;align-items:center;gap:.4rem;color:var(--v24-wine);font-size:.6rem;font-weight:900;letter-spacing:.03em}
.v26-team-feature-info h3{margin:.5rem 0 .1rem;font-size:1.25rem;font-weight:900}
.v26-team-feature-info>small{color:var(--v24-muted);font-size:.62rem;font-weight:800}
.v26-team-feature-info>p{margin:.55rem 0 0;max-width:520px;color:var(--v24-muted);font-size:.68rem;line-height:1.85}
.v26-team-stats{display:flex;gap:2.2rem;margin-top:1rem}
.v26-team-stats div{position:relative;padding-inline-end:1.5rem}
.v26-team-stats div:not(:last-child):after{content:"";position:absolute;inset-inline-start:-1.1rem;top:2px;bottom:2px;width:1px;background:var(--v24-line)}
.v26-team-stats strong{display:block;font-family:Georgia,"Cairo",serif;font-size:1.25rem;color:var(--v24-wine)}
.v26-team-stats span{display:block;margin-top:2px;color:var(--v24-muted);font-size:.55rem}
.v26-team-arrow{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--v24-line);border-radius:50%;color:var(--v24-wine);flex:none;transition:.25s ease}
.v26-team-feature:hover .v26-team-arrow{background:var(--v24-wine);color:#fff;border-color:var(--v24-wine)}
.v26-team-row{display:grid;grid-template-columns:repeat(3,1fr)}
.v26-team-col{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:2.6rem 1.6rem;text-decoration:none!important;color:var(--v24-ink)!important;border-inline-start:1px solid var(--v24-line);transition:.25s ease}
.v26-team-col:first-child{border-inline-start:0}
.v26-team-col:hover{background:rgba(189,142,70,.06)}
.v26-team-col .v26-team-medal{width:80px;height:80px;margin-bottom:1.1rem}
.v26-team-col .v26-medal-letter{font-size:1.6rem}
.v26-team-kicker.light{color:var(--v24-muted);font-weight:800;letter-spacing:0}
.v26-team-col h3{margin:.5rem 0 .3rem;font-size:1.05rem;font-weight:900}
.v26-team-col>p{margin:0;max-width:230px;color:var(--v24-muted);font-size:.63rem;line-height:1.75}
.v26-team-tag{display:inline-flex;margin-top:1rem;padding-bottom:.3rem;border-bottom:1px solid var(--v24-gold);color:var(--v24-wine);font-size:.58rem;font-weight:900}
@media(max-width:991px){
  .v26-team-feature{grid-template-columns:auto 1fr}
  .v26-team-arrow{display:none}
  .v26-team-row{grid-template-columns:1fr}
  .v26-team-col{border-inline-start:0;border-top:1px solid var(--v24-line)}
  .v26-team-col:first-child{border-top:0}
}
@media(max-width:767px){
  .v26-team-feature{grid-template-columns:1fr;justify-items:center;text-align:center;gap:1.1rem;padding:2.2rem 1rem}
  .v26-team-stats{justify-content:center}
}

/* -------- booking: trust chips + a photo-backed, more inviting CTA -------- */
.v25-booking-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:0 0 1.6rem}
.v25-booking-trust span{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .8rem;border:1px solid var(--v24-line);border-radius:999px;color:var(--v24-muted);background:var(--v24-cream);font-size:.6rem;font-weight:800}
.v25-booking-trust i{color:var(--v24-wine)}
.v24-booking-cta{position:relative;overflow:hidden}
.v24-booking-cta-photo{position:absolute;inset:0;z-index:0}
.v24-booking-cta-photo img{width:100%;height:100%;object-fit:cover;opacity:.24;filter:saturate(.7)}
.v24-booking-cta-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,#3a1015 0%,#7e1923 55%,#b81f2d 130%);opacity:.93}
.v24-booking-cta-copy,.v24-booking-cta-actions{position:relative;z-index:1}

/* -------- a further, global reduction of large headline sizes -------- */
.v24-hero h1{font-size:clamp(1.7rem,3.2vw,3rem)}
.v24-about h2,.v24-mission h2,.v24-section-head h2,.v24-team h2,.v24-offers h2,.v24-auction h2,.v24-contact h2{font-size:clamp(1.35rem,2.2vw,2.15rem)}
.v23-offers-copy h2{font-size:clamp(1.4rem,2.4vw,2.3rem)}
.v26-team-feature-info h3{font-size:clamp(1.15rem,1.8vw,1.4rem)}
.v24-booking-cta-copy h3{font-size:1.1rem}
@media(max-width:767px){
  .v24-hero h1{font-size:1.7rem}
  .v24-about h2,.v24-mission h2,.v24-section-head h2,.v24-team h2,.v24-offers h2,.v24-auction h2,.v24-contact h2{font-size:1.5rem}
  .v23-offers-copy h2{font-size:1.6rem}
}
@media(max-width:480px){
  .v24-hero h1{font-size:1.5rem}
  .v24-about h2,.v24-mission h2,.v24-section-head h2,.v24-team h2,.v24-offers h2,.v24-auction h2,.v24-contact h2{font-size:1.3rem}
  .v23-offers-copy h2{font-size:1.4rem}
}

/* =========================================================
   v1.28 — homepage logo refinement (index.html only)
   The horse+"الفيصل" icon stays a separate image; the Arabic
   name and English caption stay as normal text, now recolored
   to the brand gold (to match the real logo artwork) and sized
   up a little. The footer brand mark is scoped to its own class,
   .v28-brand-unified (renamed in v1.31 once the same footer mark
   started rolling out to inner pages too), so pages that don't
   opt in keep the older, untouched footer brand styling.
   ========================================================= */
.v28-brand-unified img{width:64px;height:64px;border-radius:0}
.v28-brand-unified strong{font-size:1.15rem}
.v28-brand-unified small{color:var(--v18-gold,#d5ad67);opacity:.88;font-weight:800;letter-spacing:.03em;max-width:300px}

/* footer brand mark: the gold logo has a transparent background, which read
   as too faint against the footer's dark photo backdrop — a light rounded
   chip behind it restores contrast/legibility without altering the mark. */
.v33-footer-logo-chip{display:inline-flex;align-items:center;justify-content:center;width:76px;height:76px;flex:none;border-radius:18px;background:var(--v24-paper,#fffdf9);box-shadow:0 10px 24px rgba(0,0,0,.22)}
.v28-brand-unified .v33-footer-logo-chip img{width:56px;height:56px}
.v24-brand small{max-width:290px}

/* a light-bg dropdown shouldn't fall back to Bootstrap's default
   blue "active" highlight for the current page's service link */
.v24-navlinks .dropdown-item.active,
.v24-navlinks .dropdown-item:active{background:#f2e9dd;color:var(--v24-red)}

/* =========================================================
   v1.32 — Training page, rebuilt in full (training.html only)
   v1.31 kept this page's older v18/v20/v22 content sections and
   only swapped in the v24 header/footer, which read as a mismatch
   (new header, dated content). This round rebuilds the hero, the
   type switcher, both package sections and the closing CTA using
   the same v24 building blocks, tokens and editorial layout style
   as the homepage — .v24-hero, .v24-section-head, .v21-team-cta,
   etc. are reused directly (verified used nowhere but index.html),
   and the body now carries the real .home-v24 class instead of a
   page-only variable shim, since none of the old v18/v20/v22
   markup remains on this page to protect from its side effects.
   The five other inner pages (archery, stabling, lounges, offers,
   team) still use the older classes untouched — confirmed by diff.
   Pricing, session counts and validity periods are unchanged from
   the previous version of this page. */
#ground,#jumping{scroll-margin-top:96px}

/* Pre-existing site-wide bug fix: the base h1,h2,h3,h4,h5 rule near
   the top of this file (line ~67) hard-sets a dark ink color on every
   heading, which wins over the inherited #fff from .v24-hero-content
   because it is a direct (not inherited) match. This left the first
   line of the hero <h1> on BOTH index.html and training.html rendering
   in near-invisible dark text against the dark hero photo (the <em>
   second line was fine because it already has its own explicit gold
   color rule). Fixing it here, scoped to .v24-hero h1 only, restores
   the intended white heading text on both pages with zero risk to any
   other component. */
.v24-hero h1{color:#fff}

.v29-th-switch{position:relative;z-index:3;margin-top:-46px;padding-bottom:1rem}
.v29-th-switch-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.v29-th-switch-tile{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:1rem;padding:1.5rem 1.6rem;border-radius:20px;border:1px solid var(--v24-line);background:var(--v24-paper);box-shadow:0 20px 45px rgba(64,39,24,.08);text-decoration:none;color:var(--v24-ink);transition:.25s ease}
.v29-th-switch-tile:hover{border-color:var(--v24-gold);color:var(--v24-ink);transform:translateY(-4px)}
.v29-th-switch-no{font-family:Georgia,"Cairo",serif;font-size:1.3rem;font-weight:900;color:var(--v24-line)}
.v29-th-switch-tile>i:first-of-type{font-size:1.25rem;color:var(--v24-wine)}
.v29-th-switch-tile strong{display:block;font-size:.82rem;font-weight:900}
.v29-th-switch-tile small{display:block;margin-top:2px;color:var(--v24-muted);font-size:.62rem}
.v29-th-switch-tile>i:last-child{color:var(--v24-gold)}
@media(max-width:767px){.v29-th-switch{margin-top:-28px}.v29-th-switch-grid{grid-template-columns:1fr}}

.v29-th-section{padding:6.5rem 0}
.v29-th-section-alt{background:var(--v24-cream)}

.v29-th-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:1.4rem;align-items:stretch;margin-top:2.2rem}
.v29-th-layout-reverse{grid-template-columns:1.15fr .85fr}
.v29-th-image{position:relative;min-height:460px;overflow:hidden;border-radius:28px;border:1px solid var(--v24-line)}
.v29-th-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.v29-th-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,5,4,.03),rgba(8,5,4,.78))}
.v29-th-image>div{position:absolute;right:1.3rem;left:1.3rem;bottom:1.15rem;z-index:2;color:#fff}
.v29-th-image small,.v29-th-image strong{display:block}
.v29-th-image small{color:var(--v24-gold-light);font-size:.62rem;font-weight:900}
.v29-th-image strong{margin-top:.25rem;font-size:1.2rem;font-weight:900}

.v29-plan-list{display:flex;flex-direction:column}
.v29-plan-row{position:relative;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:1.3rem;padding:1.3rem 1rem;border-bottom:1px solid var(--v24-line)}
.v29-plan-row:last-child{border-bottom:0}
.v29-plan-row-featured{border-radius:16px;background:linear-gradient(90deg,rgba(189,142,70,.09),rgba(189,142,70,.02));border-bottom-color:transparent}
.v29-plan-row-badge{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;border:1px solid var(--v24-line);background:var(--v24-paper);flex:none}
.v29-plan-row-featured .v29-plan-row-badge{border-color:var(--v24-gold)}
.v29-plan-row-badge strong{display:block;font-size:1.05rem;font-weight:900;color:var(--v24-wine);line-height:1}
.v29-plan-row-badge span{display:block;margin-top:1px;font-size:.5rem;color:var(--v24-muted)}
.v29-plan-row-info{min-width:0}
.v29-plan-row-info h3{margin:0 0 .35rem;font-size:.86rem;font-weight:900}
.v29-plan-row-tag{display:inline-flex;margin-inline-start:.5rem;padding:.2rem .5rem;border-radius:999px;color:#fff;background:var(--v24-wine);font-size:.5rem;font-weight:900;vertical-align:middle}
.v29-plan-row-facts{display:flex;flex-wrap:wrap;gap:.7rem}
.v29-plan-row-facts span{display:inline-flex;align-items:center;gap:.3rem;color:var(--v24-muted);font-size:.62rem}
.v29-plan-row-facts i{color:var(--v24-gold)}
.v29-plan-row-tabby{display:inline-flex;align-items:center;gap:.3rem;margin-top:.4rem;color:#3a6b59;font-size:.56rem;font-weight:800}
.v29-plan-row-price{text-align:center;font-size:1.5rem;font-weight:900;color:var(--v24-ink)}
.v29-plan-row-price small{display:block;margin-top:-2px;font-size:.56rem;font-weight:800;color:var(--v24-muted)}
.v29-plan-row-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.7rem 1rem;border-radius:10px;color:#fff;background:var(--v24-wine);font-size:.63rem;font-weight:900;text-decoration:none;white-space:nowrap;transition:.2s}
.v29-plan-row-btn:hover{background:#801e2b;color:#fff}

@media(max-width:1100px){
  .v29-th-layout,.v29-th-layout-reverse{grid-template-columns:1fr}
  .v29-th-image{min-height:300px}
}
@media(max-width:640px){
  .v29-plan-row{grid-template-columns:auto 1fr;grid-template-areas:"badge info" "price price" "btn btn";row-gap:.8rem}
  .v29-plan-row-badge{grid-area:badge}
  .v29-plan-row-info{grid-area:info}
  .v29-plan-row-price{grid-area:price;text-align:start;display:flex;align-items:baseline;gap:.4rem}
  .v29-plan-row-price small{margin-top:0}
  .v29-plan-row-btn{grid-area:btn;justify-content:center}
}

/* v1.33 stabling.html rebuild: matches the training.html v24 rebuild
   pattern exactly — fresh, page-exclusive v29-sb-* classes, reusing only
   the already-shared v24/v21 homepage components (.v24-hero, .v24-section-head,
   .v21-team-cta). lounges.html (which shared the old v21-detail-*/v21-feature-list/
   v18-eyebrow classes with stabling.html) is untouched and keeps those old
   rules working exactly as before. */
.v29-sb-section{padding:6.5rem 0}
.v29-sb-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:stretch;margin-top:2.2rem}
.v29-sb-image{position:relative;min-height:460px;overflow:hidden;border-radius:28px;border:1px solid var(--v24-line)}
.v29-sb-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.v29-sb-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,5,4,.03),rgba(8,5,4,.78))}
.v29-sb-image>div{position:absolute;right:1.3rem;left:1.3rem;bottom:1.15rem;z-index:2;color:#fff}
.v29-sb-image small,.v29-sb-image strong{display:block}
.v29-sb-image small{color:var(--v24-gold-light);font-size:.62rem;font-weight:900}
.v29-sb-image strong{margin-top:.25rem;font-size:1.2rem;font-weight:900}

.v29-sb-features{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-content:start}
.v29-sb-features article{display:flex;gap:.8rem;padding:1.3rem;border:1px solid var(--v24-line);border-radius:16px;background:var(--v24-paper)}
.v29-sb-features i{font-size:1.2rem;color:var(--v24-wine);flex:none}
.v29-sb-features strong{display:block;font-size:.8rem;font-weight:900}
.v29-sb-features small{display:block;margin-top:.3rem;color:var(--v24-muted);font-size:.66rem;line-height:1.8}

@media(max-width:1100px){
  .v29-sb-layout{grid-template-columns:1fr}
  .v29-sb-image{min-height:300px}
}
@media(max-width:640px){
  .v29-sb-features{grid-template-columns:1fr}
}

/* v1.25 team.html rebuild: page-exclusive v29-tm-* profile cards, same
   v24-language rebuild pattern as stabling.html/archery.html/lounges.html.
   Preserves every coach's real name, specialty, bio, credential chips,
   highlight line and link to their real achievements image exactly as
   before — only the visual container changed. */
.v29-tm-card{display:grid;grid-template-columns:220px 1fr;gap:1.4rem;padding:1.6rem;margin-bottom:1.2rem;border:1px solid var(--v24-line);border-radius:22px;background:var(--v24-paper);box-shadow:0 20px 45px rgba(64,39,24,.06)}
.v29-tm-featured{grid-template-columns:260px 1fr;background:linear-gradient(135deg,var(--v24-paper),var(--v24-cream));border-color:var(--v24-gold)}
.v29-tm-photo{border-radius:16px;min-height:200px;display:grid;place-items:center;background:radial-gradient(circle at 50% 30%,rgba(189,142,70,.18),transparent 60%),linear-gradient(135deg,var(--v24-brown),var(--v24-wine))}
.v29-tm-initial{font-family:Georgia,"Cairo",serif;font-size:3rem;font-weight:900;color:var(--v24-gold-light)}
.v29-tm-tag{display:inline-flex;color:var(--v24-wine);font-size:.68rem;font-weight:900}
.v29-tm-body h3{margin:.4rem 0 .5rem;font-size:1.3rem;font-weight:900}
.v29-tm-body>p{margin:0 0 .8rem;color:var(--v24-muted);font-size:.76rem;line-height:1.9}
.v29-tm-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.8rem}
.v29-tm-chips span{padding:.35rem .7rem;border-radius:999px;background:var(--v24-cream);color:var(--v24-wine);font-size:.62rem;font-weight:800}
.v29-tm-highlight{display:flex;align-items:flex-start;gap:.5rem;margin-bottom:1rem;color:var(--v24-ink);font-size:.72rem;font-weight:700}
.v29-tm-highlight i{color:var(--v24-gold-deep);margin-top:2px}
.v29-tm-proof{display:inline-flex;align-items:center;gap:.4rem;color:var(--v24-wine);font-size:.68rem;font-weight:900;text-decoration:underline}

.v29-tm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}
.v29-tm-grid .v29-tm-card{grid-template-columns:1fr}
.v29-tm-grid .v29-tm-photo{min-height:140px}

@media(max-width:900px){
  .v29-tm-card,.v29-tm-featured{grid-template-columns:1fr}
  .v29-tm-grid{grid-template-columns:1fr}
}

/* v1.25 offers.html rebuild: page-exclusive "coming soon" teaser cards,
   same v24-language rebuild pattern as the other inner pages. */
.v29-of-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;margin-top:2.2rem}
.v29-of-card{padding:2.2rem 1.4rem;text-align:center;border:1px dashed var(--v24-line);border-radius:20px;background:var(--v24-cream)}
.v29-of-card i{font-size:1.8rem;color:var(--v24-gold-deep)}
.v29-of-card strong{display:block;margin:.8rem 0 .3rem;font-size:1rem;font-weight:900}
.v29-of-card small{color:var(--v24-muted);font-size:.7rem}
@media(max-width:767px){.v29-of-grid{grid-template-columns:1fr}}


/* =========================================================
   v1.34 — public premium refresh
   Route-safe navbar active state + dynamic services submenu,
   stronger shared header, team/booking spacing refinements.
   ========================================================= */
.v34-navbar{background:rgba(255,253,249,.92);border-bottom:1px solid rgba(74,48,34,.09);box-shadow:0 8px 28px rgba(45,29,18,.045);backdrop-filter:blur(18px)}
.v34-navbar-shell{position:relative;min-height:88px!important}
.v34-brand img{width:58px;height:58px}.v34-brand strong{font-size:.96rem}.v34-brand small{font-size:.52rem;letter-spacing:.045em}
.v34-navlinks{align-items:center;gap:2px;padding:.3rem;border:1px solid rgba(121,91,58,.1);border-radius:999px;background:rgba(255,255,255,.66)}
.v34-navlinks .nav-link{display:flex;align-items:center;gap:.35rem;padding:12px 10px!important;border-radius:999px;color:#4f443d;font-size:.67rem!important;font-weight:850;transition:color .2s ease,background .2s ease}
.v34-navlinks .nav-link:after{display:none!important}.v34-navlinks .nav-link:hover{color:#7e1923;background:#f8efe3}.v34-navlinks .nav-link.active{color:#fff!important;background:#7e1923;box-shadow:0 8px 20px rgba(126,25,35,.15)}
.v34-services-trigger{border:0;background:transparent;font-family:inherit;cursor:default}
.v34-services-trigger i{font-size:.55rem;transition:transform .2s ease}.v34-services-menu:hover .v34-services-trigger i,.v34-services-menu:focus-within .v34-services-trigger i{transform:rotate(180deg)}
.v34-nav-cta{padding:.72rem 1rem!important;border-radius:999px!important;box-shadow:0 12px 25px rgba(126,25,35,.17)}
.v34-services-menu{position:relative}
/* Hover bridge: keeps the submenu open while the pointer travels from the
   navbar trigger down into the floating panel. Without this bridge, the
   visual gap between trigger and panel briefly ends :hover and the menu
   disappears before the user can reach a service. */
.v34-services-menu::after{content:"";position:absolute;top:100%;right:50%;width:min(720px,80vw);height:18px;transform:translateX(50%);background:transparent;pointer-events:auto}
.v34-services-popover{position:absolute;top:calc(100% + 12px);right:50%;width:min(720px,80vw);padding:1rem;opacity:0;visibility:hidden;transform:translate(50%,8px);pointer-events:none;border:1px solid #eadcc9;border-radius:26px;background:rgba(255,253,249,.98);box-shadow:0 30px 80px rgba(49,29,17,.18);backdrop-filter:blur(18px);transition:.22s ease;z-index:1080}
.v34-services-menu:hover .v34-services-popover,.v34-services-menu:focus-within .v34-services-popover{opacity:1;visibility:visible;transform:translate(50%,0);pointer-events:auto}
.v34-services-popover:before{content:"";position:absolute;top:-7px;right:50%;width:14px;height:14px;transform:translateX(50%) rotate(45deg);background:#fffdf9;border-top:1px solid #eadcc9;border-left:1px solid #eadcc9}
.v34-services-popover-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.3rem .35rem .9rem;border-bottom:1px solid #eee2d2}.v34-services-popover-head small{display:block;color:#a17a44;font-size:.5rem;font-weight:900}.v34-services-popover-head strong{display:block;margin-top:.2rem;color:#241914;font-size:.9rem}.v34-services-popover-head>a{display:inline-flex;align-items:center;gap:.35rem;color:#7e1923;font-size:.58rem;font-weight:900;text-decoration:none;white-space:nowrap}
.v34-services-popover-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;padding-top:.8rem}.v34-services-popover-grid>a{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:.7rem;padding:.72rem;border-radius:17px;color:#281d18;text-decoration:none;transition:.2s ease}.v34-services-popover-grid>a:hover,.v34-services-popover-grid>a.active{background:#f8efe3}.v34-services-popover-grid>a>span:nth-child(2){min-width:0}.v34-services-popover-grid strong{display:block;font-size:.68rem;font-weight:900}.v34-services-popover-grid small{display:block;margin-top:.18rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#82766d;font-size:.5rem}.v34-services-popover-grid>a>i{color:#a77738;font-size:.7rem}.v34-service-menu-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;color:#7e1923;background:#f3e5d4;border:1px solid #ead5b9}.v34-services-empty{grid-column:1/-1;margin:0;padding:1.4rem;text-align:center;color:#7e7269;font-size:.65rem}
.v34-mobile-services>button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.9rem 0;border:0;border-bottom:1px solid rgba(255,255,255,.1);color:#fff;background:transparent;font:inherit;font-size:.85rem;font-weight:900}.v34-mobile-services-panel{display:grid;gap:.45rem;padding:.65rem 0}.v34-mobile-services-panel>a{display:grid;grid-template-columns:42px 1fr;align-items:center;gap:.7rem;padding:.65rem;border-radius:15px;color:#fff;text-decoration:none;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.07)}.v34-mobile-services-panel>a.active{border-color:rgba(231,201,133,.42);background:rgba(231,201,133,.1)}.v34-mobile-services-panel .v34-service-menu-icon{color:#e7c985;background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.09)}.v34-mobile-services-panel strong{display:block;font-size:.7rem}.v34-mobile-services-panel small{display:block;margin-top:.2rem;color:rgba(255,255,255,.58);font-size:.5rem;line-height:1.5}

/* Home team section: stronger rhythm, no giant empty block. */
.v26-team{padding:100px 0 0!important;background:linear-gradient(180deg,#fffdf9 0%,#f8f0e6 100%)!important}.v26-team .v24-section-head{margin-bottom:.5rem}.v26-team .v21-team-cta{margin-top:3rem}

/* Footer clarity. */
.v23-unified-footer .v18-footer-brand{max-width:360px}.v33-footer-logo-chip{width:86px;height:86px;border-radius:22px;background:#fffaf0}.v28-brand-unified .v33-footer-logo-chip img{width:66px;height:66px}.v23-unified-footer .v28-brand-unified strong{color:#f2d394!important}.v23-unified-footer .v28-brand-unified small{color:#d7b876!important;opacity:1}

@media(max-width:1199px){.v34-navlinks .nav-link{padding-inline:8px!important;font-size:.61rem!important}.v34-brand span{display:none}.v34-services-popover{width:650px}}
@media(max-width:991px){.v34-navbar-shell{min-height:76px!important}.v34-brand span{display:flex}.v34-services-popover{display:none}.v34-navbar .collapse{display:none!important}}
@media(max-width:600px){.v34-brand strong{font-size:.78rem}.v34-brand small{font-size:.43rem;max-width:190px}.v34-brand img{width:48px;height:48px}.v26-team{padding-top:72px!important}}
@media(prefers-reduced-motion:reduce){.v34-services-popover,.v34-services-trigger i{transition:none}}

/* Team directory page v1.34 */
.v34-team-page-hero{padding:7rem 0 5rem;background:linear-gradient(180deg,#fffdf9,#f7efe5)}
.v34-team-page-hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:4rem;align-items:center}.v34-team-page-copy h1{max-width:650px;margin:.8rem 0 1rem;color:#1d1714;font-size:clamp(2.6rem,4.6vw,4.9rem);line-height:1.18;font-weight:900;letter-spacing:-.04em}.v34-team-page-copy h1 em{color:#7e1923;font-style:normal}.v34-team-page-copy>p{max-width:580px;margin:0;color:#74685f;font-size:.82rem;line-height:2}
.v34-team-page-visual{position:relative;min-height:520px;overflow:hidden;border-radius:38px;box-shadow:0 34px 80px rgba(54,31,17,.16)}.v34-team-page-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.v34-team-page-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,10,8,.03),rgba(18,10,8,.56))}.v34-team-page-stat{position:absolute;right:24px;bottom:24px;display:flex;align-items:center;gap:.8rem;padding:.9rem 1.05rem;border-radius:18px;color:#fff;background:rgba(28,15,12,.55);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(12px)}.v34-team-page-stat strong{color:#edcf91;font-size:1.6rem}.v34-team-page-stat span{max-width:120px;font-size:.56rem;line-height:1.6;font-weight:800}
.v34-team-directory-section{padding:6rem 0;background:#fffdf9}
@media(max-width:991px){.v34-team-page-hero-grid{grid-template-columns:1fr}.v34-team-page-visual{min-height:400px}}
@media(max-width:600px){.v34-team-page-hero{padding-top:6rem}.v34-team-page-copy h1{font-size:2.35rem}.v34-team-page-visual{min-height:340px;border-radius:26px}}

/* Round 11 — public lounge booking */
.v40-lounge-booking-section{padding:90px 0;background:linear-gradient(180deg,#fffaf5,#f7efe7)}.v40-lounge-heading{max-width:760px;margin:0 0 36px 0;text-align:right}.v40-lounge-heading>span{display:inline-block;color:#a71e2c;font-weight:900;margin-bottom:8px}.v40-lounge-heading h2{font-size:clamp(2.2rem,4vw,4.4rem);line-height:1.02;margin:0 0 14px;color:#1d1210}.v40-lounge-heading p{color:#7f6b61;line-height:1.9}.v40-lounge-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.v40-lounge-choice{position:relative;overflow:hidden;text-align:right;padding:26px;border:1px solid #e8d8ca;border-radius:28px;background:rgba(255,255,255,.82);min-height:230px;cursor:pointer;transition:.32s ease}.v40-lounge-choice:before{content:"";position:absolute;inset:auto -60px -80px auto;width:190px;height:190px;border-radius:50%;background:radial-gradient(circle,#ead2a5,transparent 68%);opacity:.3}.v40-lounge-choice:hover,.v40-lounge-choice.active{transform:translateY(-6px);border-color:#b88a50;box-shadow:0 25px 60px rgba(52,31,18,.09)}.v40-lounge-choice.active{background:linear-gradient(145deg,#2d1714,#751c28);color:#fff}.v40-lounge-choice>i{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:#f3e4d4;color:#8f2730;font-size:1.25rem;margin-bottom:24px}.v40-lounge-choice.active>i{background:rgba(255,255,255,.1);color:#f0cf89}.v40-choice-index{position:absolute;left:20px;top:18px;font-weight:900;color:#c3aa94}.v40-lounge-choice small{display:block;color:#9d8170}.v40-lounge-choice.active small{color:#d5baa8}.v40-lounge-choice strong{display:block;font-size:1.35rem;margin:4px 0 14px}.v40-lounge-choice em{font-style:normal;font-weight:900;color:#7a1c26}.v40-lounge-choice.active em{color:#f3d187}.v40-lounge-scheduler{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.7fr);gap:20px;margin-top:20px}.v40-lounge-time-panel,.v40-lounge-estimate{border-radius:28px;padding:26px;border:1px solid #eadcd0;background:#fff}.v40-lounge-time-panel{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end}.v40-time-field span{display:block;font-weight:850;color:#2e1b17;margin-bottom:8px}.v40-time-field input{width:100%;padding:13px;border:1px solid #e5d7cc;border-radius:13px;background:#fffdfb}.v40-check-btn{min-height:48px;border:0;border-radius:13px;padding:0 18px;background:#2d1714;color:white;font-weight:850}.v40-availability{grid-column:1/-1;padding:13px 15px;border-radius:13px;font-weight:850}.v40-availability.ok{background:#e9f7f0;color:#167348}.v40-availability.bad{background:#fff0f1;color:#a42834}.v40-availability i{margin-left:8px}.v40-lounge-estimate{background:linear-gradient(150deg,#1e1110,#6d1924);color:white}.v40-lounge-estimate>span{color:#efcc81;font-weight:800}.v40-lounge-estimate h3{font-size:1.55rem;margin:8px 0 18px}.v40-lounge-estimate>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.1)}.v40-lounge-estimate small{color:#ccbcb1}.v40-lounge-estimate strong{color:#f5deaa}.v40-book-now{display:flex;align-items:center;justify-content:space-between;gap:12px;text-decoration:none;margin-top:20px;padding:14px 16px;border-radius:14px;background:#efcf8c;color:#2a1713;font-weight:900}.v40-book-now:not(.ready){opacity:.78}.v40-estimate-note{display:block;margin-top:10px;line-height:1.7}.v40-lounge-hero .page-hero-content{max-width:840px}
@media(max-width:900px){.v40-lounge-options{grid-template-columns:1fr}.v40-lounge-choice{min-height:auto}.v40-lounge-scheduler{grid-template-columns:1fr}.v40-lounge-time-panel{grid-template-columns:1fr 1fr}.v40-check-btn{grid-column:1/-1}}@media(max-width:600px){.v40-lounge-booking-section{padding:55px 0}.v40-lounge-heading h2{font-size:2.4rem}.v40-lounge-time-panel{grid-template-columns:1fr;padding:18px}.v40-check-btn,.v40-availability{grid-column:auto}.v40-lounge-estimate{padding:20px}.v40-lounge-choice{border-radius:22px}}
