
/* =========================================================
   V35 — isolated corrections loaded AFTER styles.css
   New filename => browser cannot reuse an old cached version.
   ========================================================= */

/* ---------- ARROWS ---------- */
/* Hide every legacy arrow implementation. */
.v34-arrow,
.v32-arrow,
.site-arrow,
.v30-arrow,
.arrow-img,
.arrow-svg,
.icon-arrow,
.ui-arrow,
.link-arrow{
  display:none !important;
}

/* Remove legacy arrow pseudo-elements only on our arrow links. */
.v35-arrow-ne::after,
.v35-arrow-se::after,
.v35-arrow-right::after,
.v35-arrow-left::before{
  content:"" !important;
  display:inline-block !important;
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  min-height:16px !important;
  max-width:16px !important;
  max-height:16px !important;
  flex:0 0 16px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background-color:transparent !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:16px 16px !important;
  vertical-align:middle !important;
  box-shadow:none !important;
  transition:transform .2s ease !important;
}

/* White arrows */
.v35-arrow-ne::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 17L17 7M9 7h8v8' fill='none' stroke='%23ffffff' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.v35-arrow-se::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 7l10 10M9 17h8V9' fill='none' stroke='%23ffffff' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.v35-arrow-right::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M14 7l5 5-5 5' fill='none' stroke='%23ffffff' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.v35-arrow-left::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 12H5M10 7l-5 5 5 5' fill='none' stroke='%23ffffff' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

/* Layout */
.v35-arrow-ne,
.v35-arrow-se,
.v35-arrow-right,
.v35-arrow-left{
  display:inline-flex !important;
  align-items:center !important;
  gap:.55em !important;
}
.contact-panel__cta.v35-arrow-right{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  width:100% !important;
}

/* Subtle hover */
@media(hover:hover){
  .v35-arrow-ne:hover::after{transform:translate(2px,-2px) !important;}
  .v35-arrow-se:hover::after{transform:translate(2px,2px) !important;}
  .v35-arrow-right:hover::after{transform:translateX(3px) !important;}
  .v35-arrow-left:hover::before{transform:translateX(-3px) !important;}
}

/* Legal page: dark arrows on light background. */
.legal-page .v35-arrow-ne::after{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 17L17 7M9 7h8v8' fill='none' stroke='%2312362f' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}
.legal-page .v35-arrow-left::before{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M19 12H5M10 7l-5 5 5 5' fill='none' stroke='%2312362f' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
}

/* ---------- MOBILE HEADER ---------- */
@media(max-width:980px){

  /* TOP OF PAGE = transparent over the hero */
  .site-header,
  .site-header:not(.scrolled){
    display:flex !important;
    grid-template-columns:none !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:16px !important;

    position:fixed !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    z-index:100 !important;

    width:100% !important;
    height:76px !important;
    min-height:76px !important;
    padding:0 20px !important;

    background:transparent !important;
    background-color:transparent !important;
    background-image:none !important;
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    box-shadow:none !important;
    border-bottom:1px solid rgba(255,255,255,.22) !important;
    color:#fff !important;
  }

  /* AFTER SCROLL = green */
  .site-header.scrolled{
    background:#12362f !important;
    background-color:#12362f !important;
    background-image:none !important;
    backdrop-filter:blur(14px) !important;
    -webkit-backdrop-filter:blur(14px) !important;
    border-bottom:1px solid rgba(255,255,255,.14) !important;
    color:#fff !important;
  }

  /* Desktop menu/contact never shown on mobile */
  .site-header .desktop-nav,
  .site-header .header-cta{
    display:none !important;
    visibility:hidden !important;
    pointer-events:none !important;
  }

  .site-header .brand,
  .site-header.scrolled .brand{
    position:relative !important;
    inset:auto !important;
    display:flex !important;
    align-items:center !important;
    flex:0 1 auto !important;
    width:auto !important;
    max-width:calc(100% - 64px) !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    background-color:transparent !important;
    box-shadow:none !important;
    transform:none !important;
  }

  .site-header .brand-logo,
  .site-header.scrolled .brand-logo{
    display:block !important;
    width:185px !important;
    max-width:100% !important;
    height:auto !important;
    max-height:38px !important;
    margin:0 !important;
  }

  .site-header .menu-toggle{
    display:flex !important;
    position:relative !important;
    inset:auto !important;
    flex:0 0 44px !important;
    width:44px !important;
    height:44px !important;
    margin:0 0 0 auto !important;
    padding:7px !important;
    align-items:center !important;
    justify-content:center !important;
    flex-direction:column !important;
    background:transparent !important;
    color:#fff !important;
    border:0 !important;
    z-index:110 !important;
  }

  .site-header .menu-toggle span{
    position:absolute !important;
    left:8px !important;
    display:block !important;
    width:28px !important;
    height:1.5px !important;
    margin:0 !important;
    background:#fff !important;
    border:0 !important;
    transform-origin:center !important;
    transition:top .25s ease,transform .25s ease !important;
  }
  .site-header .menu-toggle span:first-child{top:17px !important;}
  .site-header .menu-toggle span:last-child{top:27px !important;}
  .site-header .menu-toggle.open span:first-child{
    top:22px !important;
    transform:rotate(45deg) !important;
  }
  .site-header .menu-toggle.open span:last-child{
    top:22px !important;
    transform:rotate(-45deg) !important;
  }

  .v35-arrow-ne::after,
  .v35-arrow-se::after,
  .v35-arrow-right::after,
  .v35-arrow-left::before{
    width:15px !important;
    height:15px !important;
    min-width:15px !important;
    min-height:15px !important;
    max-width:15px !important;
    max-height:15px !important;
    flex-basis:15px !important;
    background-size:15px 15px !important;
  }
}

@media(max-width:640px){
  .site-header,
  .site-header:not(.scrolled),
  .site-header.scrolled{
    height:72px !important;
    min-height:72px !important;
    padding:0 16px !important;
  }

  .site-header .brand-logo,
  .site-header.scrolled .brand-logo{
    width:165px !important;
    max-height:36px !important;
  }

  .site-header .menu-toggle{
    flex-basis:42px !important;
    width:42px !important;
    height:42px !important;
  }
  .site-header .menu-toggle span{
    left:8px !important;
    width:26px !important;
  }
}
