@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700&family=Playfair+Display:ital,wght@1,500;1,600&family=Inter:wght@400;500;600&display=swap');

.eg-hero-root{
  --eg-bronze-dark:#6B4A32; --eg-bronze:#B98A5E; --eg-tan:#C7A17A; --eg-gold:#D9A86A;
  --eg-nile:#4CA6D4; --eg-nile-light:#7FC3E0; --eg-ink:#15100C; --eg-paper:#F4ECE2;
  position:relative; width:100%; left:0; right:0; margin-left:0; margin-right:0;
  background:#000; color:#fff; overflow:hidden;
}
.eg-hero-root *{box-sizing:border-box}

/* ---- Loader (cache-buster + scroll-to-top + first-frame enforcement) ---- */
.eg-loader{position:fixed;inset:0;z-index:100000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:26px;
  background:radial-gradient(120% 120% at 50% 40%, #1d150e 0%, #0c0906 70%);transition:opacity .7s ease, visibility .7s ease}
.eg-loader.is-hidden{opacity:0;visibility:hidden}
.eg-loader-logo{width:min(260px,52vw);filter:drop-shadow(0 6px 30px rgba(0,0,0,.5))}
.eg-loader-track{width:min(240px,46vw);height:2px;background:rgba(255,255,255,.14);border-radius:2px;overflow:hidden}
.eg-loader-fill{height:100%;width:100%;transform:scaleX(0);transform-origin:left center;
  background:linear-gradient(90deg,var(--eg-bronze),var(--eg-gold) 45%,var(--eg-nile))}
.eg-loader-note{font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:rgba(255,255,255,.4)}

/* ---- Hero stage ---- */
.eg-hero{position:relative;height:100vh;height:100svh;width:100%;overflow:hidden;background:#000}
.eg-hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;background:#000}
.eg-vignette{position:absolute;inset:0;pointer-events:none;
  background:
    linear-gradient(90deg, rgba(8,6,4,.74) 0%, rgba(8,6,4,.30) 42%, rgba(8,6,4,0) 70%),
    linear-gradient(0deg, rgba(8,6,4,.84) 2%, rgba(8,6,4,.16) 34%, rgba(8,6,4,0) 60%),
    linear-gradient(180deg, rgba(8,6,4,.45) 0%, rgba(8,6,4,0) 22%)}

.eg-stage{position:absolute;inset:0;pointer-events:none}
.eg-scene{position:absolute;left:clamp(22px,5vw,88px);bottom:clamp(92px,13vh,150px);max-width:min(1000px,92vw);opacity:0;will-change:opacity}
.eg-scene .eg-label{display:flex;align-items:center;gap:12px;color:var(--eg-nile-light);font-family:'Inter',sans-serif;
  font-size:clamp(12px,1.1vw,15px);letter-spacing:.34em;text-transform:uppercase;font-weight:600;margin-bottom:16px}
.eg-scene .eg-label::before{content:"";width:34px;height:1px;background:var(--eg-nile);opacity:.9}
.eg-scene h2{font-family:'Barlow Condensed',sans-serif;font-weight:700;color:#fff;margin:0;
  font-size:clamp(30px,3.9vw,56px);line-height:1.0;letter-spacing:.005em;white-space:nowrap;text-shadow:0 2px 24px rgba(0,0,0,.45)}
.eg-scene h2 em{display:block;white-space:normal;font-family:'Playfair Display',serif;font-style:italic;font-weight:600;
  color:var(--eg-gold);letter-spacing:0;text-transform:none;font-size:clamp(32px,4.3vw,62px);line-height:1.02;margin-top:.08em}
.eg-scene p{margin-top:20px;max-width:540px;color:rgba(244,236,226,.86);font-family:'Inter',sans-serif;
  font-size:clamp(14px,1.15vw,17px);line-height:1.55;font-weight:400;text-shadow:0 1px 14px rgba(0,0,0,.5)}
.eg-cta{display:flex;gap:14px;margin-top:28px;pointer-events:auto;flex-wrap:wrap}
.eg-btn{font-family:'Inter',sans-serif;font-weight:600;font-size:14px;letter-spacing:.02em;padding:14px 26px;border-radius:40px;
  cursor:pointer;border:1px solid transparent;text-decoration:none;transition:transform .2s ease, box-shadow .2s ease}
.eg-btn.eg-primary{background:linear-gradient(135deg,var(--eg-gold),var(--eg-bronze));color:#2a1c10;box-shadow:0 10px 30px rgba(185,138,94,.35)}
.eg-btn.eg-secondary{background:rgba(255,255,255,.06);color:#fff;border-color:rgba(255,255,255,.5);backdrop-filter:blur(3px)}
.eg-btn:hover{transform:translateY(-2px)}

.eg-rail{position:absolute;right:clamp(16px,2.2vw,34px);top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:14px;align-items:flex-end;pointer-events:none;z-index:6}
.eg-rail .eg-stop{display:flex;align-items:center;gap:10px;opacity:.5;transition:opacity .35s ease}
.eg-rail .eg-stop .eg-nm{font-family:'Inter',sans-serif;font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:#fff;font-weight:600;opacity:0;transform:translateX(6px);transition:opacity .35s ease,transform .35s ease;white-space:nowrap}
.eg-rail .eg-stop .eg-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.55);transition:all .35s ease}
.eg-rail .eg-stop.active{opacity:1}
.eg-rail .eg-stop.active .eg-nm{opacity:1;transform:translateX(0)}
.eg-rail .eg-stop.active .eg-dot{width:10px;height:10px;background:var(--eg-gold);box-shadow:0 0 0 4px rgba(217,168,106,.22)}

.eg-pbar{position:absolute;left:0;bottom:0;width:100%;height:3px;background:rgba(255,255,255,.12);z-index:6}
.eg-pbar .eg-fill{height:100%;width:100%;transform:scaleX(0);transform-origin:left center;background:linear-gradient(90deg,var(--eg-bronze),var(--eg-gold) 55%,var(--eg-nile))}

.eg-cue{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:6;
  transition:opacity .5s ease;cursor:pointer;background:none;border:0;padding:0}
.eg-cue .eg-cue-t{font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.eg-cue .eg-cue-mouse{width:22px;height:34px;border:1.5px solid rgba(255,255,255,.6);border-radius:12px;position:relative}
.eg-cue .eg-cue-mouse::after{content:"";position:absolute;left:50%;top:7px;width:3px;height:6px;border-radius:2px;background:#fff;transform:translateX(-50%);animation:eg-wheel 1.5s infinite}
@keyframes eg-wheel{0%{opacity:0;top:6px}30%{opacity:1}60%{opacity:1;top:14px}100%{opacity:0;top:16px}}

/* ---- Theme header driving (classes added to the theme's own header el) ---- */
.eg-nav{position:fixed !important;top:0;left:0;width:100%;z-index:9990;
  transition:transform .5s cubic-bezier(.4,0,.2,1), background-color .4s ease, box-shadow .4s ease !important}
.eg-nav.eg-nav-hidden{transform:translateY(-115%) !important}
.eg-nav.eg-nav-transparent{background:linear-gradient(180deg, rgba(8,6,4,.5) 0%, rgba(8,6,4,0) 100%) !important;box-shadow:none !important}
.eg-nav.eg-nav-solid{background:#120d09 !important;box-shadow:0 8px 28px rgba(0,0,0,.4) !important}
/* Clear the theme's inner bar backgrounds so the eg-nav backdrop shows through */
.eg-nav .main-bar,
.eg-nav.eg-nav-transparent .main-bar,
.eg-nav.eg-nav-solid .main-bar{background:transparent !important;box-shadow:none !important}
.eg-nav.is-fixed .main-bar{background:transparent !important}
/* The hero page header always sits on a dark backdrop -> light text + icons */
.eg-nav .logo-header a,
.eg-nav .header-nav > ul > li > a,
.eg-nav .header-nav > ul > li > a i,
.eg-nav .extra-nav a, .eg-nav .extra-nav i, .eg-nav .extra-nav span,
.eg-nav .extra-icon a, .eg-nav .extra-icon i,
.eg-nav .search-btn, .eg-nav .search-btn i,
.eg-nav .dz-quik-search ~ * i{color:#fff !important}
.eg-nav .navbar-toggler span,
.eg-nav .menu-btn span{background-color:#fff !important}
/* Keep dropdown submenus on their own light background readable (do not force white) */
.eg-nav .sub-menu a, .eg-nav .mega-menu a{color:inherit !important}

@media (max-width:760px){
  .eg-rail{display:none}
  .eg-scene h2{white-space:normal}
  .eg-scene{bottom:clamp(104px,16vh,160px)}
}
@media (prefers-reduced-motion: reduce){
  .eg-cue .eg-cue-mouse::after{animation:none}
}

/* === Header refinements (off-white, floating rounded bar, tight logo badge) === */
.site-header.eg-nav{ left:26px !important; right:26px !important; width:auto !important; top:12px !important; border-radius:16px !important; }
html body .site-header.eg-nav.eg-nav-solid,
html body .site-header.eg-nav.eg-nav-solid.color-fill,
html body .site-header.eg-nav.eg-nav-solid.is-fixed{ background:#F4ECE2 !important; box-shadow:0 10px 30px rgba(0,0,0,.10) !important; }
.site-header.eg-nav.eg-nav-solid .main-bar{ background:transparent !important; }
.site-header.eg-nav.eg-nav-solid .logo-header a,
.site-header.eg-nav.eg-nav-solid .header-nav > ul > li > a,
.site-header.eg-nav.eg-nav-solid .header-nav > ul > li > a i,
.site-header.eg-nav.eg-nav-solid .extra-nav a,
.site-header.eg-nav.eg-nav-solid .extra-nav i,
.site-header.eg-nav.eg-nav-solid .extra-icon a,
.site-header.eg-nav.eg-nav-solid .extra-icon i,
.site-header.eg-nav.eg-nav-solid .search-btn,
.site-header.eg-nav.eg-nav-solid .search-btn i{ color:#066168 !important; }
.site-header.eg-nav.eg-nav-solid .menu-btn span,
.site-header.eg-nav.eg-nav-solid .navbar-toggler span{ background-color:#066168 !important; }
.site-header.eg-nav::before{ width:208px !important; height:126px !important; }

/* account icon removal + nav link hover */
.site-header.eg-nav .header-right .profile-dropdown{ display:none !important; }
.site-header.eg-nav .header-nav > ul > li > a{ transition: color .25s ease !important; }
html body .site-header.eg-nav .header-nav > ul > li > a:hover,
html body .site-header.eg-nav .header-nav > ul > li.current-menu-item > a,
html body .site-header.eg-nav .header-nav > ul > li.current_page_item > a{ color:#D9A86A !important; }


/* === Mobile menu: remove duplicated desktop menu from drawer + keep links readable === */
@media (max-width:991px){
  /* full-width header on mobile: floating inset made the sticky-header transform offset the fixed drawer, leaving a white strip */
  .site-header.eg-nav{ left:0 !important; right:0 !important; width:100% !important; top:0 !important; border-radius:0 !important; }
  .site-header .extra-nav.header-1-nav{ display:none !important; }
  .site-header .header-nav > ul.nav.navbar-nav:not(.mobile-nav){ display:none !important; }
  .site-header.eg-nav .header-nav ul.mobile-nav a,
  .site-header.eg-nav .header-nav ul.mobile-nav a i{ color:#066168 !important; }
}
