.elementor-2932 .elementor-element.elementor-element-4446910e{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;border-style:none;--border-style:none;--border-radius:0px 0px 0px 0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2932 .elementor-element.elementor-element-4446910e:hover{border-style:none;--border-radius:0px 0px 0px 0px;--border-top-left-radius:0px;--border-top-right-radius:0px;--border-bottom-right-radius:0px;--border-bottom-left-radius:0px;}.elementor-2932 .elementor-element.elementor-element-4446910e, .elementor-2932 .elementor-element.elementor-element-4446910e::before{--border-transition:0s;}.elementor-2932 .elementor-element.elementor-element-4d644c7f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 24px;--row-gap:0px;--column-gap:24px;--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:10;}.elementor-2932 .elementor-element.elementor-element-3a5d60f3{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;z-index:12;}.elementor-2932 .elementor-element.elementor-element-3a5d60f3 img{width:100%;max-width:180px;opacity:1;border-style:none;border-radius:0px 0px 0px 0px;}.elementor-2932 .elementor-element.elementor-element-471452ab{background-color:var( --e-global-color-primary );padding:0px 0px 0px 0px;z-index:12;border-style:none;border-radius:0px 0px 0px 0px;--e-nav-menu-horizontal-menu-item-margin:calc( 8px / 2 );}.elementor-2932 .elementor-element.elementor-element-471452ab.elementor-element{--align-self:center;}.elementor-2932 .elementor-element.elementor-element-471452ab:hover{border-style:none;border-radius:0px 0px 0px 0px;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu .elementor-item{font-family:"Montserrat-Var", Sans-serif;font-weight:500;font-style:normal;text-decoration:none;line-height:1.2;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item{color:#FDFAFA;fill:#FDFAFA;padding-left:4px;padding-right:4px;padding-top:12px;padding-bottom:12px;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item:hover,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-secondary );}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:8px;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a, .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown{background-color:#0F333B;border-style:none;border-radius:0px 0px 0px 0px;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a:hover,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a:focus,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a.highlighted,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle:hover,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle:focus{color:var( --e-global-color-secondary );}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a:hover,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a:focus,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a.highlighted{background-color:#FEB7061A;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a.elementor-item-active{color:var( --e-global-color-secondary );background-color:#FEB7061A;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .elementor-item, .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:"Montserrat-Var", Sans-serif;font-size:15px;font-weight:500;letter-spacing:0.02em;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown li:first-child a{border-top-left-radius:0px;border-top-right-radius:0px;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown li:last-child a{border-bottom-right-radius:0px;border-bottom-left-radius:0px;}.elementor-2932 .elementor-element.elementor-element-27a17a82{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-end;--align-items:center;--gap:0 0;--row-gap:0;--column-gap:0;--flex-wrap:nowrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:10;}.elementor-2932 .elementor-element.elementor-element-10a8e3dc{z-index:12;}.elementor-2932 .elementor-element.elementor-element-10a8e3dc .elementor-button{font-family:"Montserrat-Var", Sans-serif;font-size:var(--fs-nav);font-weight:600;text-transform:uppercase;line-height:1.2;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);border-radius:var(--radius-md) var(--radius-md) var(--radius-md) var(--radius-md);padding:6px 16px 6px 16px;}.elementor-2932 .elementor-element.elementor-element-482ba5f9{z-index:12;}.elementor-2932 .elementor-element.elementor-element-482ba5f9 .elementor-button{font-family:"Montserrat-Var", Sans-serif;font-size:var(--fs-nav);font-weight:600;text-transform:uppercase;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);border-radius:var(--radius-md) var(--radius-md) var(--radius-md) var(--radius-md);padding:6px 16px 6px 16px;}@media(min-width:568px){.elementor-2932 .elementor-element.elementor-element-27a17a82{--width:auto;}}@media(max-width:1239px){.elementor-2932 .elementor-element.elementor-element-4446910e{--gap:0px 24px;--row-gap:0px;--column-gap:24px;--padding-top:16px;--padding-bottom:16px;--padding-left:24px;--padding-right:24px;}.elementor-2932 .elementor-element.elementor-element-4d644c7f{--gap:0px 12px;--row-gap:0px;--column-gap:12px;}.elementor-2932 .elementor-element.elementor-element-3a5d60f3 img{width:100%;max-width:160px;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu .elementor-item{font-size:16px;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item{padding-left:2px;padding-right:2px;}.elementor-2932 .elementor-element.elementor-element-471452ab{--e-nav-menu-horizontal-menu-item-margin:calc( 4px / 2 );}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:4px;}.elementor-2932 .elementor-element.elementor-element-27a17a82{--gap:0px 10px;--row-gap:0px;--column-gap:10px;}.elementor-2932 .elementor-element.elementor-element-10a8e3dc{padding:4px 14px 4px 14px;}.elementor-2932 .elementor-element.elementor-element-10a8e3dc .elementor-button{padding:4px 12px 4px 12px;}.elementor-2932 .elementor-element.elementor-element-482ba5f9 .elementor-button{padding:4px 12px 4px 12px;}}@media(max-width:1023px){.elementor-2932 .elementor-element.elementor-element-4446910e{--gap:0px 16px;--row-gap:0px;--column-gap:16px;--padding-top:12px;--padding-bottom:12px;--padding-left:20px;--padding-right:20px;}.elementor-2932 .elementor-element.elementor-element-4d644c7f{--gap:0px 10px;--row-gap:0px;--column-gap:10px;}.elementor-2932 .elementor-element.elementor-element-3a5d60f3 img{width:100%;max-width:140px;}.elementor-2932 .elementor-element.elementor-element-471452ab{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;--e-nav-menu-horizontal-menu-item-margin:calc( 4px / 2 );}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item{padding-left:2px;padding-right:2px;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:4px;}.elementor-2932 .elementor-element.elementor-element-27a17a82{--gap:0px 8px;--row-gap:0px;--column-gap:8px;}.elementor-2932 .elementor-element.elementor-element-10a8e3dc{padding:4px 12px 4px 12px;}.elementor-2932 .elementor-element.elementor-element-10a8e3dc .elementor-button{padding:4px 10px 4px 10px;}.elementor-2932 .elementor-element.elementor-element-482ba5f9 .elementor-button{padding:4px 10px 4px 10px;}}@media(max-width:767px){.elementor-2932 .elementor-element.elementor-element-4446910e{--gap:0px 12px;--row-gap:0px;--column-gap:12px;--padding-top:12px;--padding-bottom:12px;--padding-left:16px;--padding-right:16px;}.elementor-2932 .elementor-element.elementor-element-4d644c7f{--gap:0px 8px;--row-gap:0px;--column-gap:8px;}.elementor-2932 .elementor-element.elementor-element-3a5d60f3 img{width:100%;max-width:120px;}.elementor-2932 .elementor-element.elementor-element-471452ab{width:initial;max-width:initial;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item{padding-left:2px;padding-right:2px;}.elementor-2932 .elementor-element.elementor-element-27a17a82{--gap:0px 8px;--row-gap:0px;--column-gap:8px;}}@media(max-width:567px){.elementor-2932 .elementor-element.elementor-element-4446910e{--padding-top:8px;--padding-bottom:8px;--padding-left:16px;--padding-right:16px;}.elementor-2932 .elementor-element.elementor-element-3a5d60f3{text-align:center;}.elementor-2932 .elementor-element.elementor-element-3a5d60f3 img{width:100%;max-width:100px;}.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item{padding-left:2px;padding-right:2px;}.elementor-2932 .elementor-element.elementor-element-27a17a82{--gap:0px 8px;--row-gap:0px;--column-gap:8px;}}/* Start custom CSS for image, class: .elementor-element-3a5d60f3 *//* ========================================
   LOGO IMAGE WIDGET
   Professional responsive logo implementation
   Uses design system breakpoints & tokens
   Last Updated: March 23, 2026
======================================== */

/* ============================================
   BASE LOGO STYLING
   ============================================ */

.elementor-2932 .elementor-element.elementor-element-3a5d60f3 {
  /* Flexbox integration - matches Site CSS .logo-menu-wrapper */
  flex: 0 0 auto;
  
  /* Remove any box shadow */
  box-shadow: none !important;
}

.elementor-2932 .elementor-element.elementor-element-3a5d60f3 img {
  /* Responsive sizing */
  width: 100%;           /* Fill container */
  height: auto;          /* Maintain aspect ratio */
  
  /* Layout */
  display: block;
  
  /* Remove box shadow */
  box-shadow: none !important;
  
  /* Image rendering */
  object-fit: contain;   /* Preserve aspect ratio */
  object-position: left center; /* Align left in container */
  
  /* Performance optimization */
  will-change: max-width;
  
  /* Smooth scaling transitions */
  transition: max-width 280ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* ============================================
   ACCESSIBILITY
   ============================================ */

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
  .elementor-2932 .elementor-element.elementor-element-3a5d60f3 img {
    transition: none;
  }
}

/* High contrast mode - ensure visibility */
@media (prefers-contrast: high) {
  .elementor-2932 .elementor-element.elementor-element-3a5d60f3 img {
    filter: contrast(1.2);
  }
}

/* ============================================
   NOTES FOR FUTURE MAINTENANCE
   ============================================
   
   Logo Sizing Scale (Professional Progression):
   - Desktop (1240px+):     180px
   - Laptop (1024-1239px):  160px (-20px)
   - Tablet (768-1023px):   140px (-20px)
   - Mobile L (568-767px):  120px (-20px)
   - Mobile P (<568px):     100px (-20px)
   
   Consistent 20px reduction creates smooth visual flow
   
   SVG Recommended: Vector logos scale perfectly at any size
   PNG Fallback: Use 360px (2x) or 540px (3x) for retina displays
   
   ============================================ *//* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-471452ab *//* ============================================
   WORDPRESS MENU WIDGET
   Professional navigation with complete mobile
   support and navigation with slide-in drawer.
   Last Updated: December 13, 2024
   ============================================ */

/* ============================================
   FLEX BEHAVIOR (cannot be set in UI)
   ============================================ */

.elementor-2932 .elementor-element.elementor-element-471452ab {
  flex-grow: 1;
  flex-shrink: 1;
  align-self: center;
}

/* ============================================
   BASE TYPOGRAPHY - FLUID SCALE
   ============================================ */

.elementor-2932 .elementor-element.elementor-element-471452ab nav a,
.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item {
  /* Fluid navigation typography */
  font-size: var(--fs-nav);
  line-height: var(--lh-nav);
  font-weight: var(--fw-medium);
  
  /* Visual polish */
  text-decoration: none;
  transition: color 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* ============================================
   NAVIGATION ITEM SPACING - 4PT GRID
   ============================================ */

.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item {
  padding: var(--space-tiny) var(--space-tiny);  /* 8px / 8px */
}

.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-nav-menu > li {
  margin-right: var(--space-tiny);  /* 8px */
}

.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-nav-menu > li:last-child {
  margin-right: 0;
}

/* ============================================
   DESKTOP / LAPTOP (>= 1024px)
   ============================================ */

@media (min-width: 1024px) {
  /* Force desktop menu visible */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--layout-horizontal {
    display: flex !important;
  }
  
  /* Force hamburger hidden */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle {
    display: none !important;
  }

  /* Horizontal layout: flex row */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--layout-horizontal .elementor-nav-menu {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
  }

  /* Keep items on single line */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-nav-menu > li {
    white-space: nowrap;
  }

  /* Remove Elementor pointer */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item:before,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item:after {
    display: none;
  }

  /* Active state – underline + color (SEMANTIC TOKENS) */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item.elementor-item-active {
    color: var(--color-secondary);
    border-bottom: 2px solid var(--color-secondary);
    padding-bottom: calc(var(--space-tiny) - 2px); /* 8px - 2px = 6px */
  }

  /* Hover state – underline + color (SEMANTIC TOKENS) */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item:hover {
    color: var(--color-secondary);
    border-bottom: 2px solid var(--color-secondary);
    padding-bottom: calc(var(--space-tiny) - 2px);
  }

  /* Smooth transitions */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main .elementor-item {
    transition:
      color 200ms cubic-bezier(0.4, 0, 0.2, 1),
      border-bottom 200ms cubic-bezier(0.4, 0, 0.2, 1),
      padding-bottom 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  /* Submenu indicator (chevron) - USING TOKEN */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           .elementor-item.elementor-item-has-children::after {
    content: "▾";
    margin-left: var(--space-micro); /* 4px */
    font-size: 12px;
    transition: transform 200ms ease;
  }

  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           .elementor-item.elementor-item-has-children:hover::after {
    transform: rotate(180deg);
  }

  /* ============================================
     DESKTOP SUBMENU POSITIONING
     ============================================ */

  /* Reset Elementor's problematic CSS variable */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main {
    --e-nav-menu-horizontal-menu-item-margin: 0px !important;
  }

  /* Parent positioning context */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           .elementor-nav-menu > li.menu-item-has-children {
    position: relative;
  }

  /* Submenu dropdown - flush positioning with animation */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           .elementor-nav-menu > li.menu-item-has-children
           > ul.sub-menu.elementor-nav-menu--dropdown {
    /* Positioning - 4pt grid aligned */
    position: absolute;
    top: calc(100% + var(--space-micro));  /* 100% + 4px */
    left: 0;
    right: auto;
    
    /* Remove margin-based offsets */
    margin: 0;
    
    /* Visual styling - SEMANTIC TOKENS */
    min-width: 200px;
    background: var(--color-primary);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-elevated);
    padding: var(--space-tiny) 0;  /* 8px top/bottom */
    
    /* Initial hidden state */
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    
    /* Smooth animation */
    transition: 
      opacity 200ms cubic-bezier(0.4, 0, 0.2, 1),
      transform 200ms cubic-bezier(0.4, 0, 0.2, 1),
      visibility 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  /* Show submenu on hover */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           .elementor-nav-menu > li.menu-item-has-children:hover
           > ul.sub-menu.elementor-nav-menu--dropdown,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           .elementor-nav-menu > li.menu-item-has-children:focus-within
           > ul.sub-menu.elementor-nav-menu--dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  /* Submenu items styling */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           ul.sub-menu.elementor-nav-menu--dropdown .elementor-item {
    /* Spacing - 4pt grid */
    padding: var(--space-tiny) var(--space-md);  /* 8px / 24px */
    display: block;
    
    /* Remove border from parent styles */
    border-bottom: none;
    
    /* Smooth transition */
    transition: 
      background-color 200ms cubic-bezier(0.4, 0, 0.2, 1),
      color 200ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  /* Submenu item hover - SEMANTIC TOKENS */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           ul.sub-menu.elementor-nav-menu--dropdown .elementor-item:hover {
    background-color: rgba(var(--rgb-gold-marigold), 0.1);
    color: var(--color-secondary);
    padding-bottom: var(--space-tiny);  /* Keep consistent */
  }

  /* Submenu item active state */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           ul.sub-menu.elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
    background-color: rgba(var(--rgb-gold-marigold), 0.15);
    color: var(--color-secondary);
    border-left: var(--space-micro) solid var(--color-secondary); /* 4px accent */
    padding-left: calc(var(--space-md) - var(--space-micro)); /* 24px - 4px = 20px */
    padding-bottom: var(--space-tiny);
  }
}

/* ==================================================
   MOBILE / TABLET (<= 1023px)
   Slide-in drawer from right to left with backdrop
   ================================================== */

@media (max-width: 1023px) {
    /* Force desktop menu hidden
    Hide ONLY desktop menu presentation (SAFER) */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main {
    display: none !important;
  }

  /* ============================================
     HAMBURGER TOGGLE - Always visible & clickable
     ============================================ */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle {
    /* Force visibility */
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    
    /* WCAG tap target */
    min-width: 44px !important;   /* WCAG 2.1 minimum */
    min-height: 44px !important;

    /* Layout */
    align-items: center;
    justify-content: center;
    
    /* Visual */
    cursor: pointer;
    padding: var(--space-sm);  /* 20px */
    border-radius: var(--radius-md);
    background-color: transparent;
    cursor: pointer;
    
    /* Z-index - HIGHEST (always on top, always clickable) */
    position: relative;
    z-index: 10000 !important; /* ensures hamburger above drawer */
    
    /* Smooth hover */
    transition: background-color 200ms ease;
  }

  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle:hover {
    background-color: rgba(var(--rgb-gold-marigold), 0.1);
  }

  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle i {
    color: var(--color-secondary);
    font-size: 1rem !important; /* Size of X icon */
  }
  
  /* ==============================================================
     MOBILE DRAWER - Slides in from right to left
     Drawer anchored to RIGHT edge.
     CRITICAL: .elementor-nav-menu__container is the sliding div.
     ============================================================== */

  /* Base drawer container */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu__container.elementor-nav-menu--dropdown {
    /* Force display */
    display: block !important;
    
    /* Fixed positioning - anchored to RIGHT */
    position: fixed !important;
    top: 0 !important;
    right: 0 !important; /* Anchored to right edge */
    left: auto !important; /* NOT to left edge */
    bottom: 0 !important;
    
    /* Size */
    width: 85vw !important;
    max-width: 320px !important;
    height: 100vh !important;
    
    /* Visual */
    background: var(--color-primary) !important;
    box-shadow: -4px 0 24px rgba(var(--rgb-black), 0.3) !important;
    
    /* Scrolling */
    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    
    /* Padding */
    padding: var(--space-2xl) var(--space-md) !important;
    box-sizing: border-box !important;
    
    /* Z-index - high but below toggle */
    z-index: 9999 !important;
    
    /* Initial state IS CLOSED STATE - OFF SCREEN RIGHT
    Initial state - HIDDEN to the RIGHT */
    /* CRITICAL: Initial state - OFF SCREEN to RIGHT
       Drawer is at right:0, so translateX(100%) pushes it
       100% of its own width (320px) to the RIGHT = OFF SCREEN */
    transform: translateX(100%) !important;
    /* This pushes drawer 100% to the RIGHT (off-screen) */
    
    /* Smooth slide animation */
    transition: transform 350ms cubic-bezier(0.4, 0, 0.2, 1) !important;
  }

  /* ==============================================================
     OPEN STATE - Slide INTO view (left direction)
     OPEN STATE - Slide in (From RIGHT to LEFT, covering viewport)
     ============================================================== */
    .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu__container.elementor-nav-menu--dropdown.elementor-active,
    .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu__container.elementor-nav-menu--dropdown[aria-hidden="false"] {
    /* Bring drawer to position: 0 (visible at right edge) */
    /* translateX(0) = drawer at its natural position (right:0) = VISIBLE */
    transform: translateX(0) !important;
    /* This slides drawer FROM right TO its anchored position */
  }

  /* BACKDROP OVERLAY - on container, not UL. Premium backdrop - frosted glass effect when open */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu__container.elementor-nav-menu--dropdown.elementor-active::before,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu__container.elementor-nav-menu--dropdown[aria-hidden="false"]::before {
    content: "";
    position: fixed;
    inset: 0;
    
    /* Sophisticated gradient backdrop */
    background: 
      radial-gradient(
        ellipse at top left,
        rgba(var(--rgb-teal-abyss), 0.95) 0%,
        rgba(var(--rgb-teal-depths), 0.92) 50%,
        rgba(var(--rgb-teal-slate), 0.88) 100%
      );
    
    /* Frosted glass blur effect */
    backdrop-filter: blur(12px) saturate(180%);
    -webkit-backdrop-filter: blur(12px) saturate(180%);
    
    z-index: -1;
    pointer-events: auto; /* Allow clicking backdrop to close */
    
    /* Smooth fade-in */
    animation: backdropFadeIn 350ms cubic-bezier(0.4, 0, 0.2, 1);
  }

  /* ============================================
     MENU LIST (UL inside container) STYLING
     ============================================ */

  /* Menu list layout (Menu items styling) */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu__container.elementor-nav-menu--dropdown .elementor-nav-menu {
    display: flex;
    flex-direction: column;
    gap: var(--space-micro);
    list-style: none;
    margin: 0;
    padding: 0;
  }

  /* ============================================
     MENU ITEMS
     ============================================ */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .elementor-item {
    /* Typography */
    font-size: 0.9375rem !important; /* Menu items font size: 15px */
    font-weight: var(--fw-medium);
    line-height: var(--lh-nav);
    color: var(--text-primary);
    text-decoration: none;
    
    /* Layout */
    display: flex;
    align-items: center;
    width: 100%;
    
    /* Spacing */
    padding: var(--space-xs) var(--space-md);
    min-height: 44px;
    
    /* Visual */
    border-bottom: 1px solid rgba(var(--rgb-neutral-porcelain), 0.1);
    border-radius: var(--radius-sm);
    background-color: transparent;
    
    /* Smooth transition */
    transition: 
      background-color 200ms ease,
      color 200ms ease,
      padding-left 200ms ease;
  }

  /* Active item */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
    color: var(--color-secondary);
    background-color: rgba(var(--rgb-gold-marigold), 0.15);
    border-left: 4px solid var(--color-secondary);
    padding-left: calc(var(--space-md) - 4px);
  }

  /* Hover state */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .elementor-item:hover {
    color: var(--color-secondary);
    background-color: rgba(var(--rgb-gold-marigold), 0.1);
    padding-left: calc(var(--space-md) + var(--space-micro));
  }

  /* ============================================
     MOBILE SUBMENU ARROW (Elementor's .sub-arrow)
     ============================================ */
  /* Elementor's built-in sub-arrow */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .sub-arrow {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform 200ms ease;
  }

  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a.elementor-item[aria-expanded="true"] .sub-arrow {
    transform: rotate(180deg);
  }
  
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .sub-arrow i,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .sub-arrow svg {
    transition: transform 200ms ease;
    font-size: 0.875rem; /* Slightly smaller size chevron */
  }

/* zzzzzzzzzzzzzzzzzzzzzzzzzzz */
  /* Rotate when the parent link is expanded (Elementor commonly sets this) */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a.elementor-item[aria-expanded="true"] .sub-arrow i,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown a.elementor-item[aria-expanded="true"] .sub-arrow svg {
    transform: rotate(180deg);
  }

  /* Alternate: sometimes aria-expanded is on the sub-arrow itself */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .sub-arrow[aria-expanded="true"] i,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .sub-arrow[aria-expanded="true"] svg {
    transform: rotate(180deg);
  }
/* zzzzzzzzzzzzzzzzzzzzzzzzzzz */


  /* ============================================
     SUBMENU STYLING - Accordion behavior
     ============================================ */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .sub-menu {
    padding-left: var(--space-md);
    margin-top: var(--space-tiny);
    list-style: none;
    
    /* Hidden by default */
    display: none;
    max-height: 0;
    overflow: hidden;
    transition: max-height 300ms ease;
  }

  /* Show submenu ONLY when parent is active */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown li.menu-item-has-children.elementor-active > .sub-menu,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown li.menu-item-has-children.current-menu-ancestor > .sub-menu {
    display: block;
    max-height: 1000px; /* Large enough for any submenu */
  }
  
  /* Submenu items - smaller font */
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown .sub-menu .elementor-item {
    font-size: 0.875rem !important; /* 14px */
    padding: var(--space-tiny) var(--space-sm);
  }
}

/* ============================================
   ACCESSIBILITY
   ============================================ */

/* Focus states for keyboard navigation */
.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-item:focus {
  outline: var(--focus-outline);
  outline-offset: var(--focus-offset);
  border-radius: var(--radius-sm);
}

.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-item:focus:not(:focus-visible) {
  outline: none;
}

/* Focus state for hamburger toggle */
.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle:focus {
  outline: var(--focus-outline);
  outline-offset: var(--focus-offset);
}

.elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle:focus:not(:focus-visible) {
  outline: none;
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-item,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--dropdown,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-menu-toggle,
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main ul.sub-menu {
    transition: none;
  }
  
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           .elementor-item.elementor-item-has-children::after {
    transition: none;
  }
}

/* High contrast mode support */
@media (prefers-contrast: high) {
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-item {
    border: 1px solid currentColor;
  }
  
  .elementor-2932 .elementor-element.elementor-element-471452ab .elementor-nav-menu--main
           ul.sub-menu.elementor-nav-menu--dropdown {
    border: 2px solid var(--color-secondary);
  }
}

/* ============================================
   ANIMATIONS (Global scope)
   ============================================ */
@keyframes backdropFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
  
/* ============================================
   NOTES FOR FUTURE MAINTENANCE
   ============================================
   
   1. ALWAYS use semantic color tokens (--color-*, --text-*)
   2. ALWAYS use spacing tokens (--space-*) for 4pt grid
   3. Submenu uses pure CSS positioning (no margin hacks)
   4. Mobile drawer: min 44px tap targets (WCAG 2.1)
   5. Test keyboard navigation thoroughly
   6. Verify submenu animations work smoothly
   7. Mobile breakpoint: 1023px (matches HeaderWrapper)
   
   ============================================ *//* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4446910e *//* ===================================================================
   HEADER WRAPPER – FLEX ARCHITECTURE (2 cols)
    Uses 4pt spacing tokens & custom breakpoints
    CONTAINER ONLY - Layout controlled by Site CSS .logo-menu-wrapper
   =================================================================== */

/* Flex properties for automatic space management */

/* HEADER WRAPPER – constrain to panel width
   Subtle glass-depth treatment for a premium layered look */
.elementor-2932 .elementor-element.elementor-element-4446910e {
  display: flex;
  flex-direction: row;
  justify-content: space-between;    /* left group | CTAs */
  align-items: center;
  flex-wrap: nowrap;

  /* Lock to same width as .panel-1240 */
  width: 100%;
  max-width: var(--container-max-width); /* 1240px, matches .panel-1240 */
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;

  /* Responsive padding - 4pt-based padding */
  padding: var(--space-xs) var(--space-md);  /* 16px / 24px */

  /* Z-index positioning */
  position: relative;
  z-index: var(--z-header-wrapper);

  /* Premium surface treatment */
  background: rgba(var(--rgb-teal-abyss), 0.14);
  border: 1px solid rgba(var(--rgb-gold-champagne), 0.00);
  border-radius: var(--radius-lg);
  box-shadow:
    0 1px 0 rgba(var(--rgb-gold-champagne), 0.04) inset,
    0 10px 28px rgba(var(--rgb-black), 0.12);
  backdrop-filter: blur(10px) saturate(120%);
  -webkit-backdrop-filter: blur(10px) saturate(120%);

  /* Smooth transitions */
  transition:
    padding 280ms cubic-bezier(0.4, 0, 0.2, 1),
    background-color 280ms cubic-bezier(0.4, 0, 0.2, 1),
    box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1),
    border-color 280ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* ============================================
   CTA BUTTON SIZING - HARMONIZED
   Size: Medium (comfortable tap target)
   Grid: 4pt aligned
   ============================================ */
.elementor-2932 .elementor-element.elementor-element-4446910e .cta-buttons-wrapper .elementor-button {
  /* Typography */
  font-size: var(--fs-nav-button);  /* 14-16px fluid */
  font-weight: var(--fw-semibold);
  line-height: var(--lh-nav-button);
  
  /* Spacing - ON GRID */
  padding: var(--space-tiny) var(--space-xs);  /* 8px / 16px */
  
  /* Visual */
  border-radius: var(--radius-md);
  white-space: nowrap;

  /* Colors - using semantic tokens for reliability */
  background-color: var(--color-secondary);
  color: var(--text-on-gold);
  border: none;
  
  /* Layout */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-micro);  /* Icon spacing if added later */

  /* Interaction */
  cursor: pointer;
  transition: all 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

/* Hover state - professional lift effect */
.elementor-2932 .elementor-element.elementor-element-4446910e .cta-buttons-wrapper .elementor-button:hover {
  background-color: var(--color-secondary-dark);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(var(--rgb-black), 0.2);
}

/* Active state - subtle press */
.elementor-2932 .elementor-element.elementor-element-4446910e .cta-buttons-wrapper .elementor-button:active {
  transform: translateY(0);
  box-shadow: 0 2px 6px rgba(var(--rgb-black), 0.15);
}

/* Focus state - accessibility (WCAG 2.1) */
.elementor-2932 .elementor-element.elementor-element-4446910e .cta-buttons-wrapper .elementor-button:focus {
  outline: var(--focus-outline);
  outline-offset: var(--focus-offset);
}

.elementor-2932 .elementor-element.elementor-element-4446910e .cta-buttons-wrapper .elementor-button:focus:not(:focus-visible) {
  outline: none;
}

/* ============================================
   RESPONSIVE PADDING ADJUSTMENTS
   ============================================ */

/* Laptop <= 1239px
   Maintain consistent CTA sizing while slightly reducing header padding so the navigation row fits comfortably at laptop widths.
   Keep the header compact while preserving the glass surface */
@media (max-width: 1239px) {
  .elementor-2932 .elementor-element.elementor-element-4446910e {
    padding: var(--space-xs) var(--space-xs);   /* 16px / 16px */
    border-radius: var(--radius-md);
    box-shadow:
      0 1px 0 rgba(var(--rgb-gold-champagne), 0.035) inset,
      0 8px 22px rgba(var(--rgb-black), 0.10);
  }

  .elementor-2932 .elementor-element.elementor-element-4446910e .cta-buttons-wrapper .elementor-button {
    padding: var(--space-tiny) 12px;  /* 8px / 12px */
  }
}

/* Mobile Portrait <= 567px */
@media (max-width: 567px) {
  .elementor-2932 .elementor-element.elementor-element-4446910e {
    padding: var(--space-tiny) var(--space-xs); /* 8px / 16px */
  }
}

/* ============================================
   ACCESSIBILITY
   ============================================ */
   
/* Motion / contrast accessibility */
@media (prefers-reduced-motion: reduce) {
  .elementor-2932 .elementor-element.elementor-element-4446910e,
  .elementor-2932 .elementor-element.elementor-element-4446910e .cta-buttons-wrapper .elementor-button {
    transition: none;
  }
}

@media (prefers-contrast: high) {
  .elementor-2932 .elementor-element.elementor-element-4446910e {
    border-bottom: 2px solid var(--color-secondary);
  }
  
  .elementor-2932 .elementor-element.elementor-element-4446910e .cta-buttons-wrapper .elementor-button {
    border: 2px solid var(--text-on-gold);
  }
}

/* ============================================
   NOTES FOR FUTURE MAINTENANCE
   ============================================
   
   1. DO NOT add flexbox rules here - they belong in Site CSS
   2. DO NOT add .logo-menu-wrapper rules - they belong in Site CSS
   3. ONLY add properties specific to the header wrapper container
   4. ALWAYS use spacing tokens (--space-*) for 4pt grid alignment
   5. ALWAYS use semantic color tokens (--color-*, --text-*)
   6. Test responsive behavior at all 5 breakpoints
   
   ============================================ *//* End custom CSS */