/* ══════════════════════════════════════════
   HYPER ELITE YACHT — main.css
   Single source of truth for all styles.
   ══════════════════════════════════════════ */


/* ══════════════════════════════════════════
   FONTS
   ══════════════════════════════════════════ */

/* Saudi — Arabic */
@font-face { font-family:"Saudi"; src:url("../Fonts/Arabic/Saudi-Regular.ttf") format("truetype"); font-weight:400; font-display:swap; }
@font-face { font-family:"Saudi"; src:url("../Fonts/Arabic/Saudi-Medium.ttf") format("truetype"); font-weight:500; font-display:swap; }
@font-face { font-family:"Saudi"; src:url("../Fonts/Arabic/Saudi-SemiBold.ttf") format("truetype"); font-weight:600; font-display:swap; }
@font-face { font-family:"Saudi"; src:url("../Fonts/Arabic/Saudi-Bold.ttf") format("truetype"); font-weight:700; font-display:swap; }

/* Cormorant Garamond — Latin decorative */
@font-face { font-family:"Cormorant Garamond"; src:url("../Fonts/En/Cormorant_Garamond/static/CormorantGaramond-Light.ttf") format("truetype"); font-weight:300; font-display:swap; }
@font-face { font-family:"Cormorant Garamond"; src:url("../Fonts/En/Cormorant_Garamond/static/CormorantGaramond-Regular.ttf") format("truetype"); font-weight:400; font-display:swap; }
@font-face { font-family:"Cormorant Garamond"; src:url("../Fonts/En/Cormorant_Garamond/static/CormorantGaramond-Italic.ttf") format("truetype"); font-weight:400; font-style:italic; font-display:swap; }
@font-face { font-family:"Cormorant Garamond"; src:url("../Fonts/En/Cormorant_Garamond/static/CormorantGaramond-Bold.ttf") format("truetype"); font-weight:700; font-display:swap; }

/* Big Caslon CC — Logo font (not used in CSS, only in logo SVG context) */
@font-face { font-family:"Big Caslon CC"; src:url("../Fonts/En/fonnts.com-Big_Caslon_CC.otf") format("opentype"); font-weight:400; font-display:swap; }
@font-face { font-family:"Big Caslon CC"; src:url("../Fonts/En/fonnts.com-Big_Caslon_CC_Bold.otf") format("opentype"); font-weight:700; font-display:swap; }
@font-face { font-family:"Big Caslon CC"; src:url("../Fonts/En/fonnts.com-Big_Caslon_CC_Black.otf") format("opentype"); font-weight:900; font-display:swap; }


/* ══════════════════════════════════════════
   BRAND TOKENS
   ══════════════════════════════════════════ */
:root {
  --he-black:  #090B0E;
  --he-dark:   #06080B;
  --he-deep:   #040507;
  --he-gold:   #C9A84C;
  --he-gold2:  #E8CF80;
  --he-white:  #FAFAF6;
  --he-g70:    rgba(201,168,76,0.70);
  --he-g45:    rgba(201,168,76,0.45);
  --he-g25:    rgba(201,168,76,0.25);
  --he-g12:    rgba(201,168,76,0.12);
  --he-g07:    rgba(201,168,76,0.07);
  --he-font-ar: "Saudi", sans-serif;
  --he-font-en: "Cormorant Garamond", serif;
  --he-font-logo: "Big Caslon CC", serif;
}


/* ══════════════════════════════════════════
   RESET
   ══════════════════════════════════════════ */
*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }

/* --- WordPress default style overrides --- */
.wp-block-library, .wp-element-button, .wp-block-button__link,
.has-link-color a, .wp-element-a { all: unset; }
body .is-layout-flow > * + * { margin-block-start: 0; }
body a:where(:not(.wp-element-button)) { color: inherit; text-decoration: none; }
body {
  background: var(--he-black);
  color: var(--he-white);
  font-family: var(--he-font-ar);
  font-size: 22px;
  direction: rtl;
  overflow-x: hidden;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
img { max-width:100%; height:auto; display:block; }
a,
a:visited,
a:hover,
a:active,
a:focus { color:inherit; text-decoration:none; }
ul, ol { list-style:none; }
button { font-family:inherit; cursor:pointer; border:none; background:none; }


/* ══════════════════════════════════════════
   TYPOGRAPHY
   ══════════════════════════════════════════ */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--he-font-ar);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.01em;
}


/* ══════════════════════════════════════════
   SHARED COMPONENTS
   ══════════════════════════════════════════ */

/* Gold rule */
.g-rule { height:0.5px; background:var(--he-gold); opacity:0.22; flex-shrink:0; }

/* Ornament row */
.orn { display:flex; align-items:center; gap:10px; }
.orn-l { height:0.5px; background:var(--he-gold); opacity:0.28; }
.orn-g { color:var(--he-gold); opacity:0.50; line-height:1; flex-shrink:0; }

/* Section label */
.s-label {
  font-family: var(--he-font-ar);
  font-weight:400; font-size:18px;
  color:var(--he-gold); letter-spacing:0.22em; opacity:0.82;
  margin-bottom:16px; text-align:center;
}

/* Section title */
.s-title {
  font-family: var(--he-font-ar);
  font-weight:700; font-size:52px;
  color:var(--he-white); line-height:1.15; letter-spacing:0.01em;
  margin-bottom:20px; text-align:center;
}

/* Section body */
.s-body {
  font-family: var(--he-font-ar);
  font-weight:400; font-size:23px;
  color:rgba(250,250,246,0.58); line-height:1.9; letter-spacing:0.03em;
  text-align:center;
}

/* Arabesque dot grid */
.ar-grid {
  position:absolute; inset:0; pointer-events:none; z-index:0;
  background-image: radial-gradient(circle, rgba(201,168,76,0.065) 1px, transparent 1px);
  background-size: 44px 44px;
}

/* Gold glow blob */
.gold-glow {
  position:absolute; pointer-events:none; border-radius:50%;
  background: radial-gradient(circle, rgba(201,168,76,0.07) 0%, transparent 65%);
}


/* ══════════════════════════════════════════
   BUTTONS
   ══════════════════════════════════════════ */
.btn-gold {
  font-family: var(--he-font-ar); font-weight:600; font-size:21px;
  letter-spacing:0.10em; color:var(--he-black);
  background:linear-gradient(135deg, #C9A84C 0%, #E8CF80 50%, #C9A84C 100%);
  padding:16px 52px; text-decoration:none; display:inline-block;
  transition:opacity 0.3s, transform 0.3s;
}
.btn-gold:visited { color:var(--he-black); }
.btn-gold:hover,
.btn-gold:active { opacity:0.88; transform:translateY(-2px); color:var(--he-black); }

.btn-outline {
  font-family: var(--he-font-ar); font-weight:400; font-size:21px;
  letter-spacing:0.08em; color:rgba(201,168,76,0.82);
  border:0.5px solid rgba(201,168,76,0.42);
  padding:15px 42px; text-decoration:none; display:inline-block;
  transition:background 0.3s;
}
.btn-outline:visited { color:rgba(201,168,76,0.82); }
.btn-outline:hover,
.btn-outline:active { background:rgba(201,168,76,0.08); color:rgba(201,168,76,0.82); }


/* ══════════════════════════════════════════
   UTILITIES
   ══════════════════════════════════════════ */

/* Screen reader only */
.sr-only {
  position:absolute; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;
}

/* Skip link — visible on keyboard focus */
.sr-only:focus {
  position:fixed; top:12px; left:50%; transform:translateX(-50%); z-index:10000;
  width:auto; height:auto; padding:12px 28px; margin:0;
  overflow:visible; clip:auto; white-space:nowrap;
  background:var(--he-black); color:var(--he-gold);
  border:1px solid var(--he-gold); font-family:var(--he-font-ar);
  font-size:16px; font-weight:600; letter-spacing:0.04em;
}

/* Global focus-visible indicator */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[tabindex]:focus-visible {
  outline:2px solid var(--he-gold);
  outline-offset:2px;
}

/* Remove outline on mouse clicks */
a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
input:focus:not(:focus-visible),
textarea:focus:not(:focus-visible) {
  outline:none;
}

/* Reveal animation */
.rev {
  opacity:0; transform:translateY(32px);
  transition:opacity 0.85s ease, transform 0.85s ease;
}
.rev.vis { opacity:1; transform:translateY(0); }
.d1 { transition-delay:0.12s; }
.d2 { transition-delay:0.24s; }
.d3 { transition-delay:0.36s; }
.d4 { transition-delay:0.50s; }


/* ══════════════════════════════════════════
   NAVIGATION
   ══════════════════════════════════════════ */
.nav {
  position:fixed; top:0; left:0; right:0; z-index:100;
  display:flex; align-items:center; justify-content:space-between;
  padding:22px 64px;
  transition:background 0.5s, padding 0.5s, border-color 0.5s;
  border-bottom:0.5px solid transparent;
}
.nav.scrolled {
  background:rgba(9,11,14,0.94);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  padding:14px 64px;
  border-bottom-color:rgba(201,168,76,0.16);
}

.nav-logo img {
  height:46px;
  filter:brightness(0) invert(1) sepia(1) saturate(0.55) hue-rotate(5deg) brightness(1.18);
  transition:height 0.5s;
}
.nav.scrolled .nav-logo img { height:36px; }

.nav-links { display:flex; gap:38px; }
.nav-links a {
  font-family: var(--he-font-ar); font-weight:500; font-size:20px;
  color:rgba(250,250,246,0.72); text-decoration:none;
  letter-spacing:0.06em; transition:color 0.3s;
  position:relative;
}
.nav-links a::after {
  content:''; position:absolute; bottom:-5px; left:0; right:0;
  height:0.5px; background:var(--he-gold);
  transform:scaleX(0); transition:transform 0.3s; transform-origin:center;
}
.nav-links a:visited { color:rgba(250,250,246,0.72); }
.nav-links a:hover,
.nav-links a:active { color:var(--he-gold); }
.nav-links a:hover::after { transform:scaleX(1); }

.nav-cta {
  font-family: var(--he-font-ar); font-weight:600; font-size:16px;
  color:var(--he-gold); border:0.5px solid rgba(201,168,76,0.55);
  padding:10px 28px; text-decoration:none; letter-spacing:0.09em;
  transition:background 0.3s, color 0.3s;
}
.nav-cta:visited { color:var(--he-gold); }
.nav-cta:hover,
.nav-cta:active { background:rgba(201,168,76,0.11); color:var(--he-gold); }

/* Hamburger toggle */
.nav-burger {
  display:none; background:none; border:none; cursor:pointer;
  padding:8px; z-index:110; position:relative;
}
.nav-burger span {
  display:block; width:26px; height:2px; background:var(--he-white);
  transition:transform 0.3s, opacity 0.3s;
}
.nav-burger span + span { margin-top:6px; }
.nav-burger.open span:nth-child(1) { transform:translateY(8px) rotate(45deg); }
.nav-burger.open span:nth-child(2) { opacity:0; }
.nav-burger.open span:nth-child(3) { transform:translateY(-8px) rotate(-45deg); }

/* Admin bar offset */
.admin-bar .nav { top:32px; }
@media (max-width: 782px) { .admin-bar .nav { top:46px; } }


/* ══════════════════════════════════════════
   HERO SECTION
   ══════════════════════════════════════════ */
.hero {
  position:relative; width:100%; height:100vh; min-height:700px;
  overflow:hidden; display:flex; align-items:center; justify-content:center;
}

.hero-bg {
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center 40%; z-index:0;
  transition:transform 0.1s linear;
}

.hero-veil {
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(
    to bottom,
    rgba(9,11,14,0.52)   0%,
    rgba(9,11,14,0.20)  14%,
    rgba(9,11,14,0.16)  28%,
    rgba(9,11,14,0.66)  50%,
    rgba(9,11,14,0.97)  65%,
    #090B0E             75%
  );
}

.hero-vignette {
  position:absolute; inset:0; z-index:2;
  background:radial-gradient(ellipse 80% 58% at 50% 34%, transparent 34%, rgba(9,11,14,0.65) 100%);
}

.hero-frame {
  position:absolute; inset:0; z-index:20; pointer-events:none;
  box-shadow:
    inset 0 0 0 1px  rgba(201,168,76,0.28),
    inset 0 0 0 14px #090B0E,
    inset 0 0 0 15px rgba(201,168,76,0.10);
}

.hero-ar {
  position:absolute; left:0; bottom:0; width:100%; height:58%;
  z-index:3; pointer-events:none;
}

/* Compass */
.compass-wrap {
  position:absolute; left:50%; top:42%;
  transform:translate(-50%, -50%);
  z-index:10; width:540px; height:540px;
}
.compass-svg { width:100%; height:100%; overflow:visible; }

#tickRing {
  transform-origin:0px 0px;
  animation:spinRing 80s linear infinite;
}
@keyframes spinRing {
  from { transform:rotate(0deg); }
  to   { transform:rotate(360deg); }
}

/* Hero bottom: main text */
.hero-bottom {
  position:absolute; left:0; right:0; bottom:0; z-index:15;
  display:flex; flex-direction:column; align-items:center;
  padding-bottom:40px; gap:0;
}
.hero-h1 {
  font-family: var(--he-font-ar); font-weight:700; font-size:64px;
  color:var(--he-white); text-align:center; letter-spacing:0.01em; line-height:1.05;
  margin-bottom:4px;
}
.hero-sub {
  font-family: var(--he-font-ar); font-weight:400; font-size:25px;
  color:rgba(250,250,246,0.58); text-align:center;
  letter-spacing:0.04em; max-width:none; margin-bottom:8px; line-height:1.75; white-space:nowrap;
}
.hero-btns { display:flex; gap:14px; align-items:center; }

/* Scroll indicator */
.scroll-ind {
  position:absolute; bottom:60px; left:40px; transform:none;
  z-index:22; display:flex; flex-direction:column; align-items:center; gap:8px;
  animation:scrollBob 2.8s ease-in-out infinite;
}
@keyframes scrollBob {
  0%,100% { opacity:0.85; transform:translateY(0); }
  50%      { opacity:0.45; transform:translateY(7px); }
}
.scroll-line { width:1px; height:50px; background:linear-gradient(to bottom, var(--he-gold), transparent); }
.scroll-txt {
  font-family: var(--he-font-en); font-size:12px;
  letter-spacing:0.20em; color:rgba(201,168,76,0.85); writing-mode:vertical-rl;
}


/* ══════════════════════════════════════════
   ABOUT SECTION
   ══════════════════════════════════════════ */
.about {
  position:relative; background:var(--he-black);
  padding:130px 0 100px; overflow:hidden;
}
.about .ar-grid {
  mask-image:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.55) 20%, rgba(0,0,0,0.55) 80%, transparent 100%);
  -webkit-mask-image:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.55) 20%, rgba(0,0,0,0.55) 80%, transparent 100%);
}
.about-inner {
  position:relative; z-index:5;
  max-width:960px; margin:0 auto; padding:0 48px;
}

/* Stats row */
.stats {
  display:flex; justify-content:center; align-items:stretch;
  margin-top:72px;
  border-top:0.5px solid rgba(201,168,76,0.14);
  border-bottom:0.5px solid rgba(201,168,76,0.14);
}
.stat {
  flex:1; max-width:220px; padding:42px 16px; text-align:center;
  border-inline-start:0.5px solid rgba(201,168,76,0.10);
}
.stat:last-child { border-inline-start:none; }
.stat-n {
  font-family: var(--he-font-en); font-weight:300;
  font-size:58px; color:var(--he-gold); letter-spacing:0.02em;
  line-height:1; display:block;
}
.stat-l {
  font-family: var(--he-font-ar); font-weight:400; font-size:19px;
  color:rgba(250,250,246,0.50); letter-spacing:0.07em;
  margin-top:8px; display:block;
}


/* ══════════════════════════════════════════
   SERVICES SECTION
   ══════════════════════════════════════════ */
.services {
  position:relative; background:var(--he-dark);
  padding:130px 0; overflow:hidden;
}
.services-inner {
  max-width:1220px; margin:0 auto; padding:0 64px;
}
.services-hd { text-align:center; margin-bottom:72px; }

.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:2px; }
.card {
  position:relative; padding:56px 42px 50px;
  background:rgba(201,168,76,0.025);
  border:0.5px solid rgba(201,168,76,0.12);
  text-align:center; overflow:hidden;
  transition:background 0.4s, border-color 0.4s;
  cursor:default;
}
.card::before {
  content:''; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:55%; height:1px;
  background:linear-gradient(to right, transparent, var(--he-gold), transparent);
  opacity:0; transition:opacity 0.4s;
}
.card:hover { background:rgba(201,168,76,0.06); border-color:rgba(201,168,76,0.26); }
.card:hover::before { opacity:0.60; }
.card-icon { width:62px; height:62px; margin:0 auto 26px; opacity:0.78; }
.card-title {
  font-family: var(--he-font-ar); font-weight:600; font-size:22px;
  color:var(--he-white); letter-spacing:0.02em; margin-bottom:14px;
}
.card-body {
  font-family: var(--he-font-ar); font-weight:400; font-size:21px;
  color:rgba(250,250,246,0.48); line-height:1.9; letter-spacing:0.02em;
}
.card-line {
  width:34px; height:0.5px; background:var(--he-gold);
  opacity:0.42; margin:22px auto 0;
}


/* ══════════════════════════════════════════
   SLASH DIVIDER
   ══════════════════════════════════════════ */
.slash-div {
  position:relative; height:110px; background:var(--he-dark); overflow:hidden;
}
.slash-div::after {
  content:''; position:absolute; left:50%; top:50%;
  width:220%; height:1.5px;
  background:linear-gradient(to right,
    transparent       4%,
    rgba(201,168,76,0.22) 18%,
    rgba(201,168,76,0.88) 50%,
    rgba(201,168,76,0.22) 82%,
    transparent       96%
  );
  box-shadow:0 0 22px 5px rgba(201,168,76,0.12);
  transform:translate(-50%,-50%) rotate(-3deg);
}


/* ══════════════════════════════════════════
   GALLERY SECTION
   ══════════════════════════════════════════ */
.gallery {
  position:relative; background:var(--he-black);
  padding:130px 0 90px; overflow:hidden;
}
.gallery-inner {
  max-width:1320px; margin:0 auto; padding:0 64px;
}
.gallery-hd { text-align:center; margin-bottom:56px; }

.g-grid {
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  grid-template-rows:repeat(2, 270px);
  gap:3px;
}
.g-item { position:relative; overflow:hidden; }
.g-item.tall { grid-row:span 2; }
.g-item img {
  width:100%; height:100%; object-fit:cover; object-position:center;
  transition:transform 0.8s ease;
  filter:brightness(0.82) saturate(0.80);
}
.g-item:hover img { transform:scale(1.06); filter:brightness(0.90) saturate(1); }
.g-item::after {
  content:''; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(to top, rgba(9,11,14,0.58) 0%, transparent 55%);
}
.g-cap {
  position:absolute; bottom:0; left:0; right:0; z-index:5;
  padding:16px 18px; direction:ltr;
  opacity:0; transform:translateY(6px);
  transition:opacity 0.4s, transform 0.4s;
}
.g-item:hover .g-cap { opacity:1; transform:translateY(0); }
.g-cap-txt {
  font-family: var(--he-font-en); font-size:13px;
  color:var(--he-gold); letter-spacing:0.14em; opacity:0.85;
}


/* ══════════════════════════════════════════
   EXPERIENCE BAND
   ══════════════════════════════════════════ */
.band {
  position:relative; height:500px; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
}
.band-bg {
  position:absolute; inset:0;
  width:100%; height:100%; object-fit:cover; object-position:center;
}
.band-veil {
  position:absolute; inset:0;
  background:rgba(9,11,14,0.70);
}
.band-content {
  position:relative; z-index:5;
  max-width:760px; text-align:center; padding:0 40px;
}
.band-quote {
  font-family: var(--he-font-ar); font-style:normal;
  font-size:32px; color:var(--he-white); letter-spacing:0.06em;
  line-height:1.55; margin-bottom:28px; direction:rtl;
}
.band-attr {
  font-family: var(--he-font-ar); font-weight:400; font-size:19px;
  color:rgba(201,168,76,0.72); letter-spacing:0.14em;
}


/* ══════════════════════════════════════════
   BOOKING FORM SECTION
   ══════════════════════════════════════════ */
.bf {
  position:relative; background:var(--he-dark);
  padding:120px 0 100px; overflow:hidden;
}
.bf .ar-grid {
  mask-image:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.45) 25%, rgba(0,0,0,0.45) 75%, transparent 100%);
  -webkit-mask-image:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.45) 25%, rgba(0,0,0,0.45) 75%, transparent 100%);
}
.bf-inner {
  position:relative; z-index:5;
  max-width:900px; margin:0 auto; padding:0 48px;
}
.bf-desc {
  max-width:640px; margin:0 auto 0;
}

/* Success message */
.bf-success {
  text-align:center; padding:28px 36px; margin-top:40px;
  border:0.5px solid rgba(201,168,76,0.35);
  background:rgba(201,168,76,0.06);
}
.bf-success-icon {
  display:block; font-size:20px; color:var(--he-gold);
  margin-bottom:10px;
}
.bf-success p {
  font-family:var(--he-font-ar); font-size:20px;
  color:var(--he-gold); letter-spacing:0.04em;
  line-height:1.7;
}

/* Form layout */
.bf-form { margin-top:52px; }
.bf-grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:28px 32px;
}

/* Field */
.bf-field { display:flex; flex-direction:column; gap:8px; }
.bf-field--full { margin-top:28px; }

.bf-label {
  font-family:var(--he-font-ar); font-weight:500; font-size:17px;
  color:rgba(201,168,76,0.72); letter-spacing:0.08em;
}

.bf-input {
  font-family:var(--he-font-ar); font-weight:400; font-size:20px;
  color:var(--he-white); letter-spacing:0.03em;
  background:rgba(201,168,76,0.04);
  border:0.5px solid rgba(201,168,76,0.18);
  padding:16px 20px; direction:rtl;
  transition:border-color 0.3s, background 0.3s;
  appearance:none; -webkit-appearance:none;
  outline:none;
}
.bf-input::placeholder {
  color:rgba(250,250,246,0.25); font-weight:400;
}
.bf-input:focus {
  border-color:rgba(201,168,76,0.50);
  background:rgba(201,168,76,0.07);
}

/* Custom Select — Luxury Dropdown */
.bf-select {
  position:relative;
}
.bf-select__trigger {
  display:flex; align-items:center; justify-content:space-between;
  width:100%;
  font-family:var(--he-font-ar); font-weight:400; font-size:20px;
  color:var(--he-white); letter-spacing:0.03em;
  background:rgba(201,168,76,0.04);
  border:0.5px solid rgba(201,168,76,0.18);
  padding:16px 20px; direction:rtl; cursor:pointer;
  transition:border-color 0.3s, background 0.3s, box-shadow 0.3s;
  outline:none;
}
.bf-select__trigger:hover {
  border-color:rgba(201,168,76,0.35);
  background:rgba(201,168,76,0.06);
}
.bf-select__trigger:focus,
.bf-select.open .bf-select__trigger {
  border-color:rgba(201,168,76,0.50);
  background:rgba(201,168,76,0.07);
  box-shadow:0 0 0 2px rgba(201,168,76,0.35);
}
.bf-select__trigger:focus-visible {
  outline:2px solid var(--he-gold); outline-offset:2px;
}
.bf-input:focus-visible {
  outline:2px solid var(--he-gold); outline-offset:2px;
}
.bf-select__value--placeholder {
  color:rgba(250,250,246,0.25);
}

/* Arrow */
.bf-select__arrow {
  width:12px; height:12px; flex-shrink:0;
  border-left:1.5px solid var(--he-gold);
  border-bottom:1.5px solid var(--he-gold);
  transform:rotate(-45deg) translateY(-2px);
  opacity:0.55;
  transition:transform 0.35s ease, opacity 0.3s;
}
.bf-select.open .bf-select__arrow {
  transform:rotate(135deg) translateY(-2px);
  opacity:0.85;
}

/* Dropdown panel */
.bf-select__dropdown {
  position:absolute; top:calc(100% + 6px); left:0; right:0;
  z-index:60;
  background:var(--he-dark);
  border:0.5px solid rgba(201,168,76,0.28);
  box-shadow:
    0 12px 48px rgba(0,0,0,0.55),
    0 0 0 1px rgba(201,168,76,0.06),
    inset 0 1px 0 rgba(201,168,76,0.08);
  opacity:0; visibility:hidden;
  transform:translateY(-8px);
  transition:opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
  max-height:0; overflow:hidden;
}
.bf-select.open .bf-select__dropdown {
  opacity:1; visibility:visible;
  transform:translateY(0);
  max-height:320px; overflow-y:auto;
}

/* Top gold accent line */
.bf-select__dropdown::before {
  content:''; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:60%; height:1px;
  background:linear-gradient(to right, transparent, var(--he-gold), transparent);
  opacity:0.45;
}

/* Scrollbar */
.bf-select__dropdown::-webkit-scrollbar { width:3px; }
.bf-select__dropdown::-webkit-scrollbar-track { background:transparent; }
.bf-select__dropdown::-webkit-scrollbar-thumb { background:rgba(201,168,76,0.25); border-radius:2px; }

/* Option items */
.bf-select__option {
  display:flex; align-items:center; gap:14px;
  padding:15px 22px; cursor:pointer; direction:rtl;
  font-family:var(--he-font-ar); font-weight:400; font-size:19px;
  color:rgba(250,250,246,0.62); letter-spacing:0.03em;
  transition:background 0.25s, color 0.25s, padding-inline-start 0.25s;
  border-bottom:0.5px solid rgba(201,168,76,0.06);
  position:relative;
}
.bf-select__option:last-child { border-bottom:none; }
.bf-select__option:hover {
  background:rgba(201,168,76,0.08);
  color:var(--he-white);
  padding-inline-start:28px;
}
.bf-select__option.selected {
  background:rgba(201,168,76,0.10);
  color:var(--he-gold);
}
.bf-select__option.focused {
  background:rgba(201,168,76,0.12);
  outline:1px solid rgba(201,168,76,0.35);
  outline-offset:-1px;
}
.bf-select__option.selected::after {
  content:'✓'; position:absolute; left:20px; top:50%; transform:translateY(-50%);
  font-size:14px; color:var(--he-gold); opacity:0.65;
}

/* Option icon */
.bf-select__icon {
  font-size:16px; opacity:0.50; flex-shrink:0;
  transition:opacity 0.25s;
}
.bf-select__option:hover .bf-select__icon { opacity:0.85; }
.bf-select__option.selected .bf-select__icon { opacity:1; }

/* Custom Datepicker */
.bf-datepicker {
  position:relative;
}
.bf-datepicker__trigger {
  display:flex; align-items:center;
  width:100%;
  background:rgba(201,168,76,0.04);
  border:0.5px solid rgba(201,168,76,0.18);
  transition:border-color 0.3s, background 0.3s, box-shadow 0.3s;
}
.bf-datepicker__trigger:hover {
  border-color:rgba(201,168,76,0.35);
  background:rgba(201,168,76,0.06);
}
.bf-datepicker__trigger:focus-within,
.bf-datepicker.open .bf-datepicker__trigger {
  border-color:rgba(201,168,76,0.50);
  background:rgba(201,168,76,0.07);
  box-shadow:0 0 0 1px rgba(201,168,76,0.12);
}
.bf-datepicker__input {
  flex:1; border:none; background:transparent; outline:none;
  font-family:var(--he-font-en); font-weight:400; font-size:20px;
  color:var(--he-white); letter-spacing:0.06em;
  padding:16px 20px; direction:ltr; text-align:right;
}
.bf-datepicker__input::placeholder {
  color:rgba(250,250,246,0.25); font-weight:400;
  font-family:var(--he-font-ar); font-size:20px; letter-spacing:0.03em;
}
.bf-datepicker__toggle {
  flex-shrink:0; display:flex; align-items:center; justify-content:center;
  width:52px; height:100%; padding:0;
  color:var(--he-gold); opacity:0.55; cursor:pointer;
  border:none; background:transparent;
  border-right:0.5px solid rgba(201,168,76,0.12);
  transition:opacity 0.3s, background 0.3s;
}
.bf-datepicker__toggle:hover {
  opacity:0.85; background:rgba(201,168,76,0.06);
}
.bf-datepicker.open .bf-datepicker__toggle { opacity:0.85; }

/* Datepicker dropdown panel */
.bf-datepicker__dropdown {
  position:absolute; top:calc(100% + 6px); left:0; right:0;
  z-index:60;
  background:var(--he-dark);
  border:0.5px solid rgba(201,168,76,0.28);
  box-shadow:
    0 16px 56px rgba(0,0,0,0.60),
    0 0 0 1px rgba(201,168,76,0.06),
    inset 0 1px 0 rgba(201,168,76,0.08);
  opacity:0; visibility:hidden;
  transform:translateY(-8px);
  transition:opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
  padding:20px;
}
.bf-datepicker.open .bf-datepicker__dropdown {
  opacity:1; visibility:visible;
  transform:translateY(0);
}

/* Top gold accent line */
.bf-datepicker__dropdown::before {
  content:''; position:absolute; top:0; left:50%; transform:translateX(-50%);
  width:60%; height:1px;
  background:linear-gradient(to right, transparent, var(--he-gold), transparent);
  opacity:0.45;
}

/* Header: month/year + navigation */
.bf-datepicker__header {
  display:flex; align-items:center; justify-content:space-between;
  margin-bottom:18px; padding:0 4px;
}
.bf-datepicker__month-year {
  font-family:var(--he-font-ar); font-weight:600; font-size:18px;
  color:var(--he-gold); letter-spacing:0.06em;
}
.bf-datepicker__nav {
  width:34px; height:34px;
  display:flex; align-items:center; justify-content:center;
  border:0.5px solid rgba(201,168,76,0.20);
  background:rgba(201,168,76,0.04);
  color:var(--he-gold); font-size:20px;
  cursor:pointer; transition:background 0.25s, border-color 0.25s;
  line-height:1;
}
.bf-datepicker__nav:hover {
  background:rgba(201,168,76,0.12);
  border-color:rgba(201,168,76,0.40);
}
.bf-datepicker__nav:disabled {
  opacity:0.25; cursor:default;
  pointer-events:none;
}

/* Weekday headers */
.bf-datepicker__weekdays {
  display:grid; grid-template-columns:repeat(7, 1fr);
  text-align:center; margin-bottom:8px;
  border-bottom:0.5px solid rgba(201,168,76,0.10);
  padding-bottom:10px;
}
.bf-datepicker__weekdays span {
  font-family:var(--he-font-ar); font-weight:500; font-size:13px;
  color:rgba(201,168,76,0.55); letter-spacing:0.04em;
}

/* Day cells grid */
.bf-datepicker__days {
  display:grid; grid-template-columns:repeat(7, 1fr);
  gap:4px;
}
.bf-datepicker__day {
  display:flex; align-items:center; justify-content:center;
  width:100%; aspect-ratio:1; cursor:pointer;
  font-family:var(--he-font-en); font-weight:400; font-size:15px;
  color:rgba(250,250,246,0.62); letter-spacing:0.02em;
  border:0.5px solid transparent;
  transition:background 0.25s, color 0.25s, border-color 0.25s;
  position:relative;
}
.bf-datepicker__day:hover {
  background:rgba(201,168,76,0.08);
  color:var(--he-white);
  border-color:rgba(201,168,76,0.20);
}
.bf-datepicker__day--today {
  border-color:rgba(201,168,76,0.25);
  color:var(--he-gold);
}
.bf-datepicker__day--today::after {
  content:''; position:absolute; bottom:4px; left:50%; transform:translateX(-50%);
  width:4px; height:4px; border-radius:50%;
  background:var(--he-gold); opacity:0.50;
}
.bf-datepicker__day--selected {
  background:linear-gradient(135deg, rgba(201,168,76,0.20) 0%, rgba(201,168,76,0.10) 100%);
  color:var(--he-gold);
  border-color:rgba(201,168,76,0.45);
}
.bf-datepicker__day--selected::after { display:none; }
.bf-datepicker__day--disabled {
  opacity:0.18; cursor:default;
  pointer-events:none;
}
.bf-datepicker__day--empty {
  pointer-events:none;
}

/* Textarea */
.bf-textarea {
  resize:vertical; min-height:100px;
  line-height:1.8;
}

/* Submit area */
.bf-submit-wrap {
  text-align:center; margin-top:44px;
}
.bf-submit {
  display:inline-block;
  font-family:var(--he-font-ar); font-weight:600; font-size:22px;
  letter-spacing:0.12em; color:var(--he-black);
  background:linear-gradient(135deg, #C9A84C 0%, #E8CF80 50%, #C9A84C 100%);
  padding:20px 72px; cursor:pointer;
  border:none; outline:none;
  transition:opacity 0.3s, transform 0.3s;
}
.bf-submit:hover {
  opacity:0.88; transform:translateY(-2px);
}
.bf-note {
  font-family:var(--he-font-ar); font-weight:400; font-size:16px;
  color:rgba(250,250,246,0.32); letter-spacing:0.06em;
  margin-top:16px;
}


/* ══════════════════════════════════════════
   BOOKING / CONTACT SECTION
   ══════════════════════════════════════════ */
.booking {
  position:relative; background:var(--he-dark);
  padding:130px 0; overflow:hidden; text-align:center;
}
.booking .ar-grid {
  mask-image:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.40) 30%, rgba(0,0,0,0.40) 70%, transparent 100%);
  -webkit-mask-image:linear-gradient(to bottom, transparent 0%, rgba(0,0,0,0.40) 30%, rgba(0,0,0,0.40) 70%, transparent 100%);
}
.booking-bg {
  position:absolute; inset:0; width:100%; height:100%;
  object-fit:cover; object-position:center; z-index:0; opacity:0.07;
}
.booking-inner {
  position:relative; z-index:5;
  max-width:780px; margin:0 auto; padding:0 48px;
}

.phones {
  display:flex; justify-content:center; align-items:center;
  gap:52px; margin-top:52px; flex-wrap:wrap;
}
.phone-item { text-align:center; }
.ph-label {
  font-family: var(--he-font-ar); font-weight:400; font-size:18px;
  color:rgba(201,168,76,0.68); letter-spacing:0.12em; margin-bottom:5px;
}
.ph-num {
  font-family: var(--he-font-en); font-weight:400; font-size:34px;
  color:var(--he-gold); letter-spacing:0.18em; direction:ltr;
  text-decoration:none; display:block; transition:opacity 0.3s;
}
.ph-num:hover { opacity:0.72; }
.ph-sep { width:0.5px; height:62px; background:rgba(201,168,76,0.22); flex-shrink:0; }

.location {
  display:flex; align-items:center; justify-content:center;
  gap:10px; margin-top:36px;
}
.loc-txt {
  font-family: var(--he-font-ar); font-weight:600; font-size:23px;
  color:rgba(201,168,76,0.86); letter-spacing:0.05em;
}

.cta-wrap { margin-top:52px; }
.book-btn {
  display:inline-block;
  font-family: var(--he-font-ar); font-weight:600; font-size:22px;
  letter-spacing:0.12em; color:var(--he-black);
  background:linear-gradient(135deg, #C9A84C 0%, #E8CF80 50%, #C9A84C 100%);
  padding:20px 68px; text-decoration:none;
  transition:opacity 0.3s, transform 0.3s;
  position:relative; overflow:hidden;
}
.book-btn:hover { opacity:0.87; transform:translateY(-2px); }

.map-link {
  margin-top:52px;
  display:inline-flex; align-items:center; gap:14px;
  padding:16px 32px;
  border:0.5px solid rgba(201,168,76,0.25);
  background:rgba(201,168,76,0.04);
  text-decoration:none;
  transition:background 0.3s, border-color 0.3s, transform 0.3s;
}
.map-link:hover {
  background:rgba(201,168,76,0.09);
  border-color:rgba(201,168,76,0.45);
  transform:translateY(-2px);
}
.map-link__icon {
  flex-shrink:0; color:var(--he-gold); opacity:0.72;
  transition:opacity 0.3s;
}
.map-link:hover .map-link__icon { opacity:1; }
.map-link__text {
  font-family:var(--he-font-ar); font-weight:500; font-size:19px;
  color:rgba(201,168,76,0.78); letter-spacing:0.06em;
  transition:color 0.3s;
}
.map-link:hover .map-link__text { color:var(--he-gold); }
.map-link__arrow {
  flex-shrink:0; color:var(--he-gold); opacity:0.40;
  transition:opacity 0.3s, transform 0.3s;
}
.map-link:hover .map-link__arrow { opacity:0.75; transform:translate(2px,-2px); }

.hashtag {
  margin-top:24px;
  font-family: var(--he-font-en); font-size:14px;
  color:rgba(201,168,76,0.38); letter-spacing:0.14em; direction:ltr;
}


/* ══════════════════════════════════════════
   FOOTER
   ══════════════════════════════════════════ */
.footer {
  background:var(--he-deep);
  border-top:0.5px solid rgba(201,168,76,0.12);
  padding:64px 0 40px; text-align:center;
}
.footer-logo img {
  height:50px;
  filter:brightness(0) invert(1) sepia(1) saturate(0.55) hue-rotate(5deg) brightness(1.18);
  margin:0 auto 26px;
}
.foot-links {
  display:flex; justify-content:center; gap:36px;
  margin-bottom:30px;
}
.foot-links a {
  font-family: var(--he-font-ar); font-size:18px;
  color:rgba(250,250,246,0.40); text-decoration:none;
  letter-spacing:0.08em; transition:color 0.3s;
}
.foot-links a:hover { color:var(--he-gold); }

.foot-social {
  display:flex; justify-content:center; gap:18px; margin-bottom:30px;
}
.foot-social a {
  width:38px; height:38px;
  border:0.5px solid rgba(201,168,76,0.26);
  display:flex; align-items:center; justify-content:center;
  color:rgba(201,168,76,0.55); text-decoration:none;
  transition:border-color 0.3s, color 0.3s;
}
.foot-social a:hover { border-color:rgba(201,168,76,0.65); color:var(--he-gold); }

.foot-copy {
  font-family: var(--he-font-en); font-size:12px;
  color:rgba(250,250,246,0.20); letter-spacing:0.10em; direction:ltr;
}


/* ══════════════════════════════════════════
   RESPONSIVE — MOBILE FIRST
   ══════════════════════════════════════════ */

/* Mobile: up to 767px */
@media (max-width: 767px) {
  .nav { padding:14px 24px; transition:none; }
  .nav.scrolled { padding:14px 24px; }
  .nav.scrolled .nav-logo img { height:36px; }
  .nav-burger { display:flex; flex-direction:column; }
  .nav-links {
    display:none; position:fixed; top:0; left:0; width:100%; height:100vh;
    z-index:200;
    background:#090B0E;
    flex-direction:column; align-items:center; justify-content:center; gap:36px;
    overflow-y:auto;
  }
  .nav-links.open { display:flex; }
  .nav-links a { font-size:24px; color:var(--he-white); }
  .nav-burger { z-index:210; position:relative; }
  .nav-logo { z-index:210; position:relative; }
  .nav-cta { z-index:210; position:relative; }
  .nav-logo img { height:36px; }

  .hero-h1 { font-size:34px; }
  .hero-sub { font-size:19px; max-width:90%; white-space:normal; }
  .hero-btns { flex-direction:column; gap:10px; }
  .btn-gold, .btn-outline { padding:14px 36px; font-size:19px; }
  .compass-wrap { width:280px; height:280px; }
  .hero-bottom { padding-bottom:56px; }

  .s-title { font-size:32px; }
  .s-body { font-size:19px; }

  .about { padding:80px 0 60px; }
  .about-inner { padding:0 24px; }
  .stats { flex-wrap:wrap; }
  .stat { min-width:140px; padding:28px 12px; }
  .stat-n { font-size:38px; }

  .services { padding:80px 0; }
  .services-inner { padding:0 24px; }
  .cards { grid-template-columns:1fr; gap:12px; }
  .card { padding:40px 28px 36px; }

  .slash-div { height:60px; }

  .gallery { padding:80px 0 60px; }
  .gallery-inner { padding:0 24px; }
  .g-grid {
    grid-template-columns:1fr;
    grid-template-rows:auto;
  }
  .g-item.tall { grid-row:span 1; }
  .g-item { height:220px; }

  .band { height:360px; }
  .band-quote { font-size:22px; }
  .band-content { padding:0 24px; }

  .bf { padding:72px 0 64px; }
  .bf-inner { padding:0 24px; }
  .bf-grid { grid-template-columns:1fr; gap:20px; }
  .bf-input { font-size:18px; padding:14px 16px; }
  .bf-submit { padding:16px 48px; font-size:19px; width:100%; }
  .bf-field--full { margin-top:20px; }
  .bf-select__trigger { font-size:18px; padding:14px 16px; }
  .bf-select__option { font-size:17px; padding:13px 18px; }
  .bf-datepicker__input { font-size:18px; padding:14px 16px; }
  .bf-datepicker__toggle { width:46px; }
  .bf-datepicker__dropdown { padding:14px; }
  .bf-datepicker__day { font-size:13px; }
  .bf-datepicker__month-year { font-size:16px; }
  .bf-datepicker__nav { width:30px; height:30px; font-size:18px; }

  .booking { padding:80px 0; }
  .booking-inner { padding:0 24px; }
  .phones { gap:28px; flex-direction:column; }
  .ph-sep { width:62px; height:0.5px; }
  .ph-num { font-size:26px; }
  .book-btn { padding:16px 48px; font-size:19px; }

  .foot-links { flex-wrap:wrap; gap:18px; }
}

/* Tablet: 768px - 1023px */
@media (min-width: 768px) and (max-width: 1023px) {
  .nav { padding:18px 40px; }
  .nav-links { gap:24px; }
  .nav-links a { font-size:16px; }

  .hero-h1 { font-size:46px; }
  .compass-wrap { width:380px; height:380px; }

  .s-title { font-size:40px; }

  .cards { grid-template-columns:1fr 1fr; }
  .card:last-child { grid-column:1 / -1; max-width:50%; margin:0 auto; }

  .g-grid {
    grid-template-columns:1fr 1fr;
    grid-template-rows:repeat(3, 220px);
  }
  .g-item.tall { grid-row:span 2; }

  .gallery-inner { padding:0 40px; }
  .services-inner { padding:0 40px; }

  .bf-inner { padding:0 40px; }
}

/* Large desktop: 1440px+ */
@media (min-width: 1440px) {
  .nav { padding:22px 96px; }
  .hero-h1 { font-size:72px; }
  .compass-wrap { width:600px; height:600px; }
}

/* ══════════════════════════════════════════
   404 PAGE
   ══════════════════════════════════════════ */
.err-404 {
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  min-height:80vh;
  padding:80px 24px;
  text-align:center;
  overflow:hidden;
  background:var(--he-black);
}
.err-404__glow {
  position:absolute;
  width:420px; height:420px;
  top:50%; left:50%;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle, rgba(201,168,76,.08) 0%, transparent 70%);
  pointer-events:none;
}
.err-404 .orn { margin-bottom:32px; }
.err-404__code {
  font-family:'Cormorant Garamond', serif;
  font-size:clamp(100px, 20vw, 180px);
  font-weight:300;
  line-height:1;
  letter-spacing:0.08em;
  background:linear-gradient(180deg, var(--he-gold) 0%, var(--he-gold-light, #E8CF80) 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  background-clip:text;
  margin:0 0 16px;
}
.err-404__title {
  font-size:clamp(22px, 3.5vw, 32px);
  font-weight:600;
  color:var(--he-white);
  margin:0 0 16px;
}
.err-404__desc {
  font-size:clamp(15px, 2vw, 18px);
  color:rgba(250,250,246,.55);
  max-width:480px;
  margin:0 auto 28px;
  line-height:1.7;
}

/* ══════════════════════════════════════════
   WHATSAPP CHAT WIDGET
   ══════════════════════════════════════════ */
.wa {
  position:fixed;
  bottom:24px;
  right:24px;
  z-index:9999;
  direction:rtl;
}

/* Floating button */
.wa__btn {
  width:56px; height:56px;
  border-radius:50%;
  border:none;
  background:#25D366;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 4px 16px rgba(0,0,0,.35);
  transition:transform .25s ease, box-shadow .25s ease;
  position:relative;
}
.wa__btn:hover { transform:scale(1.08); box-shadow:0 6px 24px rgba(0,0,0,.45); }
.wa__btn:focus-visible { outline:2px solid var(--he-gold); outline-offset:3px; }
.wa__btn-icon { transition:opacity .2s, transform .2s; }
.wa__btn-icon--close { position:absolute; opacity:0; transform:rotate(-90deg); }
.wa__btn--open .wa__btn-icon--wa { opacity:0; transform:rotate(90deg); }
.wa__btn--open .wa__btn-icon--close { opacity:1; transform:rotate(0); }

/* Popup */
.wa__popup {
  position:absolute;
  bottom:calc(100% + 16px);
  right:0;
  width:320px;
  border-radius:14px;
  overflow:hidden;
  background:#F5F0E8;
  border:1px solid rgba(201,168,76,.25);
  box-shadow:0 12px 48px rgba(0,0,0,.25);
  opacity:0;
  transform:translateY(12px) scale(.95);
  pointer-events:none;
  transition:opacity .25s ease, transform .25s ease;
}
.wa__popup[aria-hidden="false"] {
  opacity:1;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}

/* Header */
.wa__header {
  display:flex;
  align-items:center;
  gap:10px;
  padding:14px 16px;
  background:linear-gradient(135deg,#1a1610 0%,#2a2218 100%);
  border-bottom:1px solid rgba(201,168,76,.3);
}
.wa__avatar {
  width:40px; height:40px;
  border-radius:50%;
  background:rgba(201,168,76,.15);
  border:1px solid rgba(201,168,76,.3);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.wa__info { flex:1; min-width:0; }
.wa__name {
  display:block;
  font-size:14px;
  font-weight:600;
  color:var(--he-white);
  line-height:1.3;
}
.wa__tagline {
  display:block;
  font-size:11px;
  color:rgba(250,250,246,.6);
  line-height:1.3;
}
.wa__close {
  width:28px; height:28px;
  border:none;
  background:transparent;
  color:rgba(250,250,246,.6);
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  transition:background .2s;
  flex-shrink:0;
}
.wa__close:hover { background:rgba(250,250,246,.1); }
.wa__close:focus-visible { outline:2px solid var(--he-gold); outline-offset:2px; }

/* Body */
.wa__body { padding:20px 16px; }
.wa__bubble {
  background:#fff;
  border:1px solid rgba(201,168,76,.18);
  border-radius:0 12px 12px 12px;
  padding:12px 14px;
  font-size:13px;
  line-height:1.65;
  color:#1a1610;
  box-shadow:0 2px 8px rgba(0,0,0,.06);
}

/* Send CTA */
.wa__send {
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 16px 16px;
  padding:11px 20px;
  border-radius:8px;
  background:#25D366;
  color:#fff;
  font-size:14px;
  font-weight:600;
  text-decoration:none;
  transition:background .2s;
}
.wa__send:hover { background:#20bd5a; }
.wa__send:focus-visible { outline:2px solid var(--he-gold); outline-offset:2px; }

/* ══════════════════════════════════════════
   LANGUAGE SWITCHER
   ══════════════════════════════════════════ */
.nav-lang {
  font-family: var(--he-font-en);
  font-weight:600;
  font-size:13px;
  letter-spacing:0.12em;
  color:rgba(250,250,246,0.55);
  text-decoration:none;
  border:0.5px solid rgba(250,250,246,0.18);
  padding:5px 12px;
  transition:color 0.3s, border-color 0.3s;
}
.nav-lang:hover {
  color:var(--he-gold);
  border-color:rgba(201,168,76,0.55);
}
@media (max-width: 767px) {
  .nav-lang { z-index:210; position:relative; margin-inline-start:auto; }
}

/* ══════════════════════════════════════════
   LTR OVERRIDES — English Page
   ══════════════════════════════════════════ */
body.ltr { direction:ltr; font-family:var(--he-font-en); }
/* Headings — Big Caslon CC */
body.ltr .hero-h1 { font-family:var(--he-font-logo); }
body.ltr .s-title { font-family:var(--he-font-logo); }
body.ltr .card-title { font-family:var(--he-font-logo); }
body.ltr .band-quote { font-family:var(--he-font-logo); font-style:italic; }
body.ltr .bf-heading { font-family:var(--he-font-logo); }
/* Body text — Cormorant Garamond */
body.ltr .nav-links a { font-family:var(--he-font-en); font-size:17px; }
body.ltr .nav-cta { font-family:var(--he-font-en); font-size:14px; }
body.ltr .s-label { font-family:var(--he-font-en); letter-spacing:0.22em; }
body.ltr .s-body { font-family:var(--he-font-en); direction:ltr; }
body.ltr .card-body { font-family:var(--he-font-en); }
body.ltr .stat-l { font-family:var(--he-font-en); }
body.ltr .band-attr { font-family:var(--he-font-en); }
body.ltr .ph-label { font-family:var(--he-font-en); }
body.ltr .loc-txt { font-family:var(--he-font-en); }
body.ltr .book-btn { font-family:var(--he-font-en); }
body.ltr .hashtag { font-family:var(--he-font-en); }
body.ltr .map-link__text { font-family:var(--he-font-en); }
body.ltr .hero-sub { font-family:var(--he-font-en); }
body.ltr .bf-label { font-family:var(--he-font-en); }
body.ltr .bf-input { font-family:var(--he-font-en); direction:ltr; }
body.ltr .bf-textarea { font-family:var(--he-font-en); direction:ltr; }
body.ltr .bf-select__trigger { direction:ltr; font-family:var(--he-font-en); }
body.ltr .bf-select__option { font-family:var(--he-font-en); }
body.ltr .bf-datepicker__input { direction:ltr; font-family:var(--he-font-en); }
body.ltr .bf-submit { font-family:var(--he-font-en); }
body.ltr .bf-note { font-family:var(--he-font-en); }
body.ltr .bf-success p { font-family:var(--he-font-en); }
body.ltr .bf-datepicker__weekdays span { font-family:var(--he-font-en); }

/* ══════════════════════════════════════════
   REDUCED MOTION
   ══════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration:0.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:0.01ms !important;
    scroll-behavior:auto !important;
  }
  .rev { opacity:1; transform:none; transition:none; }
  .hero-bg { transform:none !important; }
}
