.elementor-74 .elementor-element.elementor-element-769cc43{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-053fb83 *//* ============================================================
       GNR HEADER — ALL STYLES SCOPED TO #gnr-header
       No global resets. Safe to drop into any page.
    ============================================================ */

    #gnr-header {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 9999;
      transition: background-color 0.35s ease, box-shadow 0.35s ease;
      background-color: #0d0d0d;
    }

    /* Scrolled / white state */
    #gnr-header.gnr-scrolled {
      background-color: #ffffff;
      box-shadow: 0 2px 20px rgba(0, 0, 0, 0.10);
    }

    #gnr-header__inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      max-width: 1280px;
      margin: 0 auto;
      padding: 10px 40px;
      height: 80px;
    }

    /* --- Logo --- */
    #gnr-header__logo {
      flex-shrink: 0;
      display: flex;
      align-items: center;
      text-decoration: none;
    }

    #gnr-header__logo img {
        height: 100%;
    width: 92px;
      display: block;
      transition: opacity 0.3s ease;
    }

    #gnr-header__logo .gnr-logo--dark { display: none; }
    #gnr-header__logo .gnr-logo--light { display: block; }

    #gnr-header.gnr-scrolled #gnr-header__logo .gnr-logo--dark { display: block; }
    #gnr-header.gnr-scrolled #gnr-header__logo .gnr-logo--light { display: none; }

    /* --- Nav --- */
    #gnr-header__nav {
      display: flex;
      align-items: center;
      gap: 40px;
      list-style: none;
      margin: 0;
      padding: 0;
    }

    #gnr-header__nav li a {
      font-family: 'Barlow', sans-serif;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      text-decoration: none;
      color: #ffffff;
      transition: color 0.25s ease;
      position: relative;
    }

    #gnr-header__nav li a::after {
      content: '';
      position: absolute;
      bottom: -4px;
      left: 0;
      width: 0;
      height: 1.5px;
      background-color: #C9A84C;
      transition: width 0.25s ease;
    }

    #gnr-header__nav li a:hover::after { width: 100%; }

    /* Nav — scrolled state */
    #gnr-header.gnr-scrolled #gnr-header__nav li a {
      color: #111111;
    }

    #gnr-header.gnr-scrolled #gnr-header__nav li a:hover {
      color: #C9A84C;
    }

    /* --- CTA Button --- */
    #gnr-header__cta {
      font-family: 'Barlow', sans-serif;
      font-size: 12px;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      text-decoration: none;
      padding: 12px 22px;
      border: 2px solid #C9A84C;
      background-color: #C9A84C;
      color: #0d0d0d;
      transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
      white-space: nowrap;
      cursor: pointer;
      display: inline-block;
    }

    #gnr-header__cta:hover {
      background-color: transparent;
      color: #C9A84C;
    }

    /* CTA — scrolled state */
    #gnr-header.gnr-scrolled #gnr-header__cta {
      border-color: #111111;
      background-color: #111111;
      color: #ffffff;
    }

    #gnr-header.gnr-scrolled #gnr-header__cta:hover {
      background-color: transparent;
      color: #111111;
    }

    /* --- Mobile hamburger --- */
    #gnr-header__hamburger {
      display: none;
      flex-direction: column;
      gap: 5px;
      cursor: pointer;
      padding: 4px;
      background: none;
      border: none;
    }

    #gnr-header__hamburger span {
      display: block;
      width: 24px;
      height: 2px;
      background-color: #ffffff;
      transition: background-color 0.25s ease, transform 0.25s ease, opacity 0.25s ease;
    }

    #gnr-header.gnr-scrolled #gnr-header__hamburger span {
      background-color: #111111;
    }

    /* Hamburger → X */
    #gnr-header__hamburger.gnr-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
    #gnr-header__hamburger.gnr-open span:nth-child(2) { opacity: 0; }
    #gnr-header__hamburger.gnr-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

    /* --- Mobile nav drawer --- */
    #gnr-header__mobile-nav {
      display: none;
      flex-direction: column;
      gap: 0; 
      background-color: #0d0d0d;
      border-top: 1px solid rgba(255,255,255,0.08);
      overflow: hidden;
      max-height: 0;
      transition: max-height 0.35s ease, padding 0.35s ease;
    }

    #gnr-header__mobile-nav.gnr-open {
      max-height: 360px; 
      padding: 24px;
    }

    #gnr-header.gnr-scrolled #gnr-header__mobile-nav {
      background-color: #ffffff;
      border-top-color: rgba(0,0,0,0.08);
    }

    #gnr-header__mobile-nav a {
      font-family: 'Barlow', sans-serif;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      text-decoration: none;
      color: #ffffff;
      padding: 12px 0;
      border-bottom: 1px solid rgba(255,255,255,0.07);
      display: block;
    }

    #gnr-header.gnr-scrolled #gnr-header__mobile-nav a {
      color: #111111;
      border-bottom-color: rgba(0,0,0,0.07);
          padding: 10px 30px;
    }

    #gnr-header__mobile-nav .gnr-mobile-cta {
      margin-top: 16px;
      text-align: center;
      border: 2px solid #C9A84C;
      background-color: #C9A84C;
      color: #0d0d0d;
      border-bottom: 2px solid #C9A84C;
    }

    /* --- Responsive breakpoint --- */
    @media (max-width: 900px) {
      #gnr-header__nav,
      #gnr-header__cta {
        display: none;
      }
      #gnr-header__hamburger {
        display: flex;
      }
      #gnr-header__mobile-nav {
        display: flex;
      }
    }

    /* ============================================================
       DEMO PAGE STYLES — Remove these when integrating
    ============================================================ */
    * { box-sizing: border-box; margin: 0; padding: 0; }

    body {
      font-family: 'Barlow', sans-serif;
      background: #0d0d0d;
    }

    .gnr-demo-hero {
      min-height: 100vh;
      background: #0d0d0d;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      text-align: center;
      padding: 100px 40px 60px;
    }

    .gnr-demo-hero h1 {
      font-size: clamp(36px, 6vw, 80px);
      font-weight: 700;
      color: #ffffff;
      line-height: 1.05;
      letter-spacing: -0.02em;
    }

    .gnr-demo-hero h1 span { color: #C9A84C; }

    .gnr-demo-hero p {
      margin-top: 24px;
      font-size: 17px;
      color: rgba(255,255,255,0.55);
      max-width: 540px;
      line-height: 1.65;
    }

    .gnr-demo-section {
      min-height: 100vh;
      background: #f5f3ef;
      display: flex;
      align-items: center;
      justify-content: center;
      padding: 80px 40px;
    }

    .gnr-demo-section p {
      font-size: 16px;
      color: #555;
      max-width: 600px;
      text-align: center;
      line-height: 1.7;
    }

    .gnr-scroll-hint {
      margin-top: 48px;
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 8px;
      color: rgba(255,255,255,0.3);
      font-size: 12px;
      letter-spacing: 0.1em;
      text-transform: uppercase;
    }

    .gnr-scroll-arrow {
      width: 1px;
      height: 40px;
      background: linear-gradient(to bottom, rgba(201,168,76,0.6), transparent);
      animation: gnr-pulse 1.8s ease-in-out infinite;
    }

    @keyframes gnr-pulse {
      0%, 100% { opacity: 0.4; transform: translateY(0); }
      50% { opacity: 1; transform: translateY(6px); }
    }
    
    
  /* ==========================================
   GNR Premium Services Dropdown
========================================== */

.gnr-has-dropdown{
    position:relative;
}

.gnr-has-dropdown > a{
    display:flex;
    align-items:center;
    gap:8px;
}

.gnr-has-dropdown > a::before{
    content:"⌃";
    font-size:12px;
    order:2;
    transition:transform .3s ease;
}

.gnr-has-dropdown:hover > a::before{
    transform:rotate(180deg);
}

.gnr-dropdown{
    position:absolute;
    top:calc(100% + 18px);
    left:0;

    width:345px;
    padding:0;
    margin:0;
    list-style:none;

    background:#050505;

    border-top:3px solid #C9A84C;
    border-left:1px solid rgba(255,255,255,.08);
    border-right:1px solid rgba(255,255,255,.08);
    border-bottom:1px solid rgba(255,255,255,.08);

    opacity:0;
    visibility:hidden;
    transform:translateY(10px);

    transition:all .25s ease;
    z-index:9999;
}

.gnr-has-dropdown:hover .gnr-dropdown{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.gnr-dropdown li{
    margin:0;
    padding:0;
}

.gnr-dropdown li:not(:last-child){
    border-bottom:1px solid rgba(255,255,255,.08);
}

.gnr-dropdown li a{
    display:block;
    padding:18px 24px;

    color:#d2d2d2 !important;

    font-size:12px !important;
    font-weight:700 !important;

    letter-spacing:.08em !important;
    text-transform:uppercase !important;

    text-decoration:none;
    line-height:1.4;

    transition:all .25s ease;
}

.gnr-dropdown li a:hover{
    color:#C9A84C !important;
    background:#0b0b0b;
}

.gnr-dropdown li a::after{
    display:none !important;
}

.gnr-active-service{
    color:#C9A84C !important;
}

#gnr-header.gnr-scrolled .gnr-dropdown{
    background:#050505;
    border-top:3px solid #C9A84C;
}

#gnr-header.gnr-scrolled .gnr-dropdown a{
    color:#d2d2d2 !important;
}

#gnr-header.gnr-scrolled .gnr-dropdown a:hover{
    color:#C9A84C !important;
}/* End custom CSS */