/* SeaChart Custom Header v1.2.0 */
.sch-root,.sch-root *,.sch-mobile,.sch-mobile *,.sch-search,.sch-search *{box-sizing:border-box}
.sch-root,.sch-mobile,.sch-search{--n:#182551;--d:#09132f;--b:#5273bb;--a:#88b9e8;--w:#fff;--t:#192548;--m:#69758b;--l:#edf3fa;--p:#f7faff;--bd:rgba(24,37,81,.12);font-family:"Segoe UI",Arial,sans-serif}
.sch-root a,.sch-mobile a,.sch-search a{text-decoration:none!important}
.sch-root svg,.sch-mobile svg,.sch-search svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* Keep the active Elementor header above page imagery. */
.elementor-location-header,.hfe-site-header,[data-elementor-type="header"],.elementor-element:has(.sch-root){position:relative;z-index:999900!important;overflow:visible!important}
.elementor-location-header .elementor-container,.elementor-location-header .e-con,.elementor-location-header .elementor-widget-wrap,[data-elementor-type="header"] .elementor-container,[data-elementor-type="header"] .e-con,[data-elementor-type="header"] .elementor-widget-wrap{overflow:visible!important}

/* Header: transparent at top, then fully leaves the viewport. */
.sch-header{position:fixed;z-index:999910;top:0;left:0;width:100%;color:#fff;background:linear-gradient(180deg,rgba(6,17,38,.48),rgba(6,17,38,.08) 72%,transparent);transition:transform .42s cubic-bezier(.2,.75,.3,1),opacity .32s ease,background .25s ease;will-change:transform}
.admin-bar .sch-header{top:32px}
.sch-header.is-hidden{transform:translateY(calc(-100% - 38px));opacity:0;pointer-events:none}
.sch-header.is-menu-active{transform:translateY(0)!important;opacity:1!important;pointer-events:auto!important}
.sch-editor-preview .sch-header{position:relative!important;top:auto!important;color:var(--n);background:linear-gradient(135deg,#eef4fb,#fff);box-shadow:0 10px 30px rgba(9,19,47,.10);transform:none!important;opacity:1!important}

.sch-shell{display:grid;grid-template-columns:235px minmax(0,1fr) auto;align-items:center;gap:clamp(24px,4vw,64px);width:100%;min-height:106px;padding:12px clamp(22px,4vw,72px)}
.sch-logo{display:inline-flex;width:215px;position:relative;z-index:2}
.sch-logo img{display:block;width:100%;height:auto;max-height:83px;object-fit:contain;filter:drop-shadow(0 4px 16px rgba(0,0,0,.18))}
.sch-editor-preview .sch-logo{width:184px;padding:7px 12px;border-radius:14px;background:linear-gradient(135deg,var(--d),var(--n))}

/* Desktop navigation */
.sch-desktop{display:flex;align-items:center;justify-content:center;gap:clamp(22px,2.4vw,44px)}
.sch-desktop>a,.sch-services-button{position:relative;display:inline-flex;align-items:center;gap:7px;padding:13px 0;border:0;cursor:pointer;color:#fff!important;background:transparent;font-size:15px;font-weight:760;white-space:nowrap;text-shadow:0 2px 10px rgba(0,0,0,.20);transition:color .22s ease}
.sch-editor-preview .sch-desktop>a,.sch-editor-preview .sch-services-button{color:var(--n)!important;text-shadow:none}
.sch-desktop>a::after,.sch-services-button::after{content:"";position:absolute;left:0;right:100%;bottom:5px;height:2px;border-radius:99px;background:var(--a);transition:right .25s ease}
.sch-desktop>a:hover,.sch-services-button:hover,.sch-services.is-open .sch-services-button{color:var(--a)!important}
.sch-desktop>a:hover::after,.sch-services-button:hover::after,.sch-services.is-open .sch-services-button::after{right:0}
.sch-services-button svg{width:14px;height:14px;transition:transform .25s ease}
.sch-services.is-open .sch-services-button svg,.sch-services:hover .sch-services-button svg{transform:rotate(180deg)}
.sch-services{position:static}

/* Premium mega menu */
.sch-mega{position:absolute;top:calc(100% - 3px);left:clamp(22px,4vw,72px);right:clamp(22px,4vw,72px);display:grid;grid-template-columns:300px minmax(0,1fr);gap:18px;padding:18px;visibility:hidden;opacity:0;pointer-events:none;border:1px solid rgba(255,255,255,.58);border-radius:26px;background:rgba(248,251,255,.985);box-shadow:0 34px 90px rgba(5,13,34,.30);backdrop-filter:blur(22px);transform:translateY(18px) scale(.985);transform-origin:top center;transition:opacity .24s ease,visibility .24s ease,transform .28s cubic-bezier(.2,.75,.3,1)}
.sch-mega::before{content:"";position:absolute;left:0;right:0;top:-28px;height:30px}
.sch-services:hover .sch-mega,.sch-services:focus-within .sch-mega,.sch-services.is-open .sch-mega{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}
.sch-mega-intro{position:relative;display:flex;flex-direction:column;min-height:370px;padding:30px;overflow:hidden;border-radius:21px;color:#fff;background:radial-gradient(circle at 88% 6%,rgba(136,185,232,.38),transparent 37%),linear-gradient(145deg,#07142f,var(--n) 58%,#24457f)}
.sch-mega-intro::before,.sch-mega-intro::after{content:"";position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%}
.sch-mega-intro::before{width:190px;height:190px;right:-78px;bottom:-73px}
.sch-mega-intro::after{width:92px;height:92px;right:25px;top:30px}
.sch-mega-intro>small{position:relative;z-index:2;color:#a9d6ff;font-size:9px;font-weight:900;letter-spacing:1.3px;text-transform:uppercase}
.sch-mega-intro h3{position:relative;z-index:2;margin:13px 0 0;color:#fff;font-size:28px;font-weight:850;line-height:1.14;letter-spacing:-.7px}
.sch-mega-intro p{position:relative;z-index:2;margin:15px 0 0;color:rgba(255,255,255,.70);font-size:12px;line-height:1.75}
.sch-mega-intro>a{position:relative;z-index:2;display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin-top:22px;padding:12px 17px;border:1px solid rgba(255,255,255,.21);border-radius:999px;color:#fff!important;background:rgba(255,255,255,.09);font-size:10px;font-weight:850;transition:background .22s ease,color .22s ease,transform .22s ease}
.sch-mega-intro>a:hover{color:var(--n)!important;background:#fff;transform:translateY(-2px)}
.sch-coverage{position:relative;z-index:2;display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:24px;color:#fff}
.sch-coverage i{position:relative;flex:0 0 9px;width:9px;height:9px;border-radius:50%;background:#76d5a4}
.sch-coverage i::after{content:"";position:absolute;inset:-6px;border:1px solid rgba(118,213,164,.50);border-radius:50%;animation:schPulse 2s ease-out infinite}
.sch-coverage b{font-size:9px;font-weight:760;line-height:1.45}

.sch-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.sch-service-card{position:relative;display:flex;align-items:flex-start;gap:12px;min-height:112px;padding:15px;overflow:hidden;border:1px solid var(--bd);border-radius:17px;color:var(--t)!important;background:linear-gradient(145deg,#fff,#f1f6fc);box-shadow:0 5px 16px rgba(24,37,81,.035);transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease,color .24s ease}
.sch-service-card::after{content:"";position:absolute;right:-42px;bottom:-42px;width:100px;height:100px;border-radius:50%;background:radial-gradient(circle,rgba(82,115,187,.18),transparent 68%);transition:transform .34s ease}
.sch-service-card:hover{color:var(--t)!important;background:linear-gradient(145deg,#edf5ff,#fff)!important;border-color:rgba(82,115,187,.34);box-shadow:0 17px 38px rgba(24,37,81,.13);transform:translateY(-5px)}
.sch-service-card:hover::after{transform:scale(1.5)}
.sch-service-icon{position:relative;z-index:2;display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border-radius:13px;color:var(--n);background:#e4edf9;transition:color .24s ease,background .24s ease,transform .24s ease}
.sch-service-card:hover .sch-service-icon{color:#fff;background:linear-gradient(135deg,var(--n),var(--b));transform:rotate(-5deg) scale(1.04)}
.sch-service-icon svg{width:18px;height:18px}
.sch-service-text{position:relative;z-index:2;display:block;min-width:0;padding-right:8px}
.sch-service-text strong{display:block;color:var(--n)!important;font-size:11px;font-weight:850;line-height:1.4}
.sch-service-text small{display:block;margin-top:5px;color:var(--m)!important;font-size:8px;line-height:1.5}
.sch-service-card em{position:absolute;z-index:3;top:10px;right:11px;color:rgba(24,37,81,.28);font-style:normal;transition:color .22s ease,transform .22s ease}
.sch-service-card:hover em{color:var(--b);transform:translate(2px,-2px)}

/* Desktop actions */
.sch-actions{display:flex;align-items:center;gap:22px}
.sch-search-open{display:flex;align-items:center;justify-content:center;width:42px;height:42px;padding:0;border:1px solid transparent;border-radius:50%;cursor:pointer;color:#fff;background:transparent;transition:color .22s ease,background .22s ease,border-color .22s ease}
.sch-search-open:hover{color:var(--n);background:#fff;border-color:#fff}
.sch-editor-preview .sch-search-open{color:var(--n)}
.sch-search-open svg{width:21px;height:21px}
.sch-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-width:165px;min-height:54px;padding:12px 21px;border:1px solid rgba(255,255,255,.78);border-radius:999px;color:#fff!important;background:rgba(255,255,255,.05);font-size:14px;font-weight:800;transition:color .22s ease,background .22s ease,transform .22s ease,box-shadow .22s ease}
.sch-cta:hover{color:var(--n)!important;background:#fff;transform:translateY(-2px);box-shadow:0 15px 30px rgba(0,0,0,.16)}
.sch-editor-preview .sch-cta{border-color:var(--n);color:#fff!important;background:linear-gradient(135deg,var(--d),var(--b))}

/* Mobile trigger */
.sch-menu-open{display:none;align-items:center;justify-content:center;flex-direction:column;gap:5px;width:48px;height:48px;padding:0;border:1px solid rgba(255,255,255,.42);border-radius:14px;cursor:pointer;background:rgba(9,19,47,.28);backdrop-filter:blur(10px)}
.sch-menu-open span{display:block;width:21px;height:2px;border-radius:99px;background:#fff}
.sch-editor-preview .sch-menu-open{background:var(--l);border-color:var(--bd)}
.sch-editor-preview .sch-menu-open span{background:var(--n)}

/* Mobile and search are moved to document.body by JavaScript to escape theme stacking contexts. */
.sch-mobile,.sch-search{position:fixed!important;z-index:2147483600!important;inset:0!important;visibility:hidden;opacity:0;pointer-events:none;transition:opacity .28s ease,visibility .28s ease}
.sch-mobile.is-open,.sch-search.is-open{visibility:visible;opacity:1;pointer-events:auto}
.sch-mobile-backdrop,.sch-search-backdrop{position:absolute;inset:0;background:rgba(4,11,29,.84);backdrop-filter:blur(11px)}
.sch-mobile-panel{position:absolute;z-index:2;top:0;right:0;display:flex;flex-direction:column;width:min(480px,100%);height:100dvh;overflow-y:auto;overscroll-behavior:contain;color:var(--t);background:radial-gradient(circle at 100% 0%,rgba(82,115,187,.18),transparent 33%),linear-gradient(180deg,#fbfdff,#f1f6fc);box-shadow:-28px 0 90px rgba(3,10,27,.42);transform:translateX(100%);transition:transform .42s cubic-bezier(.2,.75,.3,1)}
.sch-mobile.is-open .sch-mobile-panel{transform:translateX(0)}
.sch-mobile-top{position:sticky;z-index:5;top:0;display:flex;align-items:center;justify-content:space-between;min-height:92px;padding:14px 18px;border-bottom:1px solid var(--bd);background:rgba(248,251,255,.94);backdrop-filter:blur(14px)}
.sch-mobile-logo{display:inline-flex;width:166px;padding:7px 11px;border-radius:13px;background:linear-gradient(135deg,var(--d),var(--n))}
.sch-mobile-logo img{display:block;width:100%;height:auto}
.sch-menu-close,.sch-search-close{position:relative;width:45px;height:45px;padding:0;border:1px solid var(--bd);border-radius:14px;cursor:pointer;background:#fff}
.sch-menu-close span,.sch-search-close span{position:absolute;top:21px;left:12px;width:21px;height:2px;border-radius:99px;background:var(--n)}
.sch-menu-close span:first-child,.sch-search-close span:first-child{transform:rotate(45deg)}
.sch-menu-close span:last-child,.sch-search-close span:last-child{transform:rotate(-45deg)}
.sch-mobile-intro{margin:18px 18px 8px;padding:19px;border-radius:18px;color:#fff;background:radial-gradient(circle at 100% 0%,rgba(136,185,232,.32),transparent 40%),linear-gradient(135deg,var(--d),var(--n))}
.sch-mobile-intro small{color:#a9d6ff;font-size:8px;font-weight:900;letter-spacing:.8px;text-transform:uppercase}
.sch-mobile-intro strong{display:block;margin-top:7px;font-size:16px;font-weight:820;line-height:1.45}
.sch-mobile-links{display:grid;padding:8px 18px 22px}
.sch-mobile-links>a,.sch-mobile-services>button{display:flex;align-items:center;gap:14px;width:100%;min-height:59px;padding:12px 5px;border:0;border-bottom:1px solid var(--bd);cursor:pointer;color:var(--n)!important;background:transparent;font-size:16px;font-weight:820;text-align:left;transition:color .2s ease,padding-left .2s ease}
.sch-mobile-links>a:hover,.sch-mobile-services>button:hover{color:var(--b)!important;padding-left:10px;background:transparent!important}
.sch-mobile-links>a>span,.sch-mobile-services>button>span{color:var(--b)!important;font-size:8px;font-weight:900}
.sch-mobile-services>button strong{flex:1;color:inherit!important}
.sch-mobile-services>button svg{width:18px;height:18px;transition:transform .25s ease}
.sch-mobile-services.is-open>button svg{transform:rotate(180deg)}
.sch-mobile-service-list{display:grid;max-height:0;overflow:hidden;opacity:0;transition:max-height .5s ease,opacity .3s ease,padding .3s ease}
.sch-mobile-services.is-open .sch-mobile-service-list{max-height:1300px;padding:10px 0;opacity:1}
.sch-mobile-service-list a{display:flex;align-items:flex-start;gap:11px;margin:4px 0;padding:12px;border:1px solid var(--bd);border-radius:14px;color:var(--t)!important;background:#fff!important;box-shadow:0 5px 15px rgba(24,37,81,.04);transition:transform .2s ease,border-color .2s ease,background .2s ease}
.sch-mobile-service-list a:hover{color:var(--t)!important;background:#edf5ff!important;border-color:rgba(82,115,187,.30);transform:translateX(4px)}
.sch-mobile-service-list>a>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;color:#fff!important;background:linear-gradient(135deg,var(--n),var(--b));font-size:8px;font-weight:900}
.sch-mobile-service-list strong{display:block;color:var(--n)!important;font-size:11px;font-weight:850;line-height:1.4}
.sch-mobile-service-list small{display:block;margin-top:3px;color:var(--m)!important;font-size:8px;line-height:1.45}
.sch-mobile-footer{margin-top:auto;padding:20px 18px 28px;border-top:1px solid var(--bd)}
.sch-mobile-cta{display:flex;align-items:center;justify-content:center;gap:9px;min-height:53px;padding:12px 18px;border-radius:999px;color:#fff!important;background:linear-gradient(135deg,var(--d),var(--b));box-shadow:0 14px 31px rgba(24,37,81,.22);font-size:12px;font-weight:900}
.sch-mobile-cta:hover{color:#fff!important;background:linear-gradient(135deg,#0c1c46,#6386c7)!important}
.sch-mobile-footer p{text-align:center;color:var(--m);font-size:9px;line-height:1.7}
.sch-mobile-footer p a{color:var(--m)!important}

/* Search */
.sch-search{display:flex;align-items:flex-start;justify-content:center;padding:130px 20px 30px}
.sch-search-box{position:relative;z-index:2;width:min(760px,100%);padding:42px;border:1px solid rgba(255,255,255,.18);border-radius:27px;background:#fff;box-shadow:0 35px 100px rgba(0,0,0,.38);transform:translateY(-20px) scale(.98);transition:transform .32s ease}
.sch-search.is-open .sch-search-box{transform:translateY(0) scale(1)}
.sch-search-close{position:absolute;top:17px;right:17px}
.sch-search-box>small{color:var(--b);font-size:9px;font-weight:900;letter-spacing:1px;text-transform:uppercase}
.sch-search-box h2{margin:10px 0 27px;color:var(--n);font-size:clamp(30px,4vw,46px);font-weight:850;letter-spacing:-1.4px}
.sch-search-box form{display:grid;grid-template-columns:minmax(0,1fr) 57px;gap:9px}
.sch-search-box input{width:100%;min-height:57px;padding:13px 19px;border:1px solid var(--bd);border-radius:15px;outline:none;color:var(--t);background:var(--l);font-size:13px}
.sch-search-box input:focus{border-color:var(--b);background:#fff;box-shadow:0 0 0 4px rgba(82,115,187,.10)}
.sch-search-box form button{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;border-radius:15px;cursor:pointer;color:#fff;background:linear-gradient(135deg,var(--n),var(--b))}
.sch-search-box form button svg{width:21px;height:21px}

.sch-scroll-lock{overflow:hidden!important}

@keyframes schPulse{from{opacity:.9;transform:scale(.7)}to{opacity:0;transform:scale(1.7)}}

@media(max-width:1180px){
 .sch-shell{grid-template-columns:200px minmax(0,1fr) auto;gap:30px}.sch-logo{width:190px}.sch-desktop{gap:24px}.sch-desktop>a,.sch-services-button{font-size:14px}.sch-cta{min-width:145px}.sch-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sch-mega{grid-template-columns:275px minmax(0,1fr)}
}
@media(max-width:960px){
 .sch-header{background:linear-gradient(180deg,rgba(5,15,35,.64),rgba(5,15,35,.08))}.sch-shell{grid-template-columns:minmax(0,1fr) auto;min-height:88px;padding:10px 17px}.sch-logo{width:176px}.sch-desktop,.sch-actions{display:none}.sch-menu-open{display:flex}
}
@media(max-width:782px){.admin-bar .sch-header{top:46px}}
@media(max-width:520px){
 .sch-shell{min-height:78px;padding:8px 13px}.sch-logo{width:151px}.sch-menu-open{width:44px;height:44px;border-radius:13px}.sch-mobile-top{min-height:84px;padding:12px 14px}.sch-mobile-logo{width:151px}.sch-mobile-intro{margin-left:14px;margin-right:14px}.sch-mobile-links{padding-left:14px;padding-right:14px}.sch-mobile-footer{padding-left:14px;padding-right:14px}.sch-search{align-items:center;padding:14px}.sch-search-box{padding:65px 21px 27px;border-radius:22px}.sch-search-box form{grid-template-columns:minmax(0,1fr) 53px}
}
@media(prefers-reduced-motion:reduce){.sch-root *,.sch-root *::before,.sch-root *::after,.sch-mobile *,.sch-mobile *::before,.sch-mobile *::after,.sch-search *,.sch-search *::before,.sch-search *::after{animation:none!important;transition-duration:.01ms!important}}


/* =========================================================
   v1.3 — STRONGER DESKTOP TYPOGRAPHY
   Mobile styling remains unchanged.
========================================================= */
@media (min-width: 961px) {
  .sch-desktop > a,
  .sch-services-button {
    font-size: 17px;
    font-weight: 850;
    letter-spacing: -0.12px;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.28);
  }

  .sch-mega-intro > small {
    font-size: 10px;
    letter-spacing: 1.45px;
  }

  .sch-mega-intro h3 {
    font-size: 32px;
    font-weight: 900;
    line-height: 1.12;
    letter-spacing: -0.9px;
  }

  .sch-mega-intro p {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.72;
  }

  .sch-mega-intro > a {
    min-height: 48px;
    padding: 13px 18px;
    font-size: 12px;
    font-weight: 900;
  }

  .sch-coverage b {
    font-size: 10.5px;
    font-weight: 850;
  }

  .sch-service-grid {
    gap: 12px;
  }

  .sch-service-card {
    min-height: 116px;
    gap: 13px;
    padding: 17px;
  }

  .sch-service-icon {
    flex-basis: 44px;
    width: 44px;
    height: 44px;
  }

  .sch-service-icon svg {
    width: 20px;
    height: 20px;
  }

  .sch-service-text {
    padding-right: 13px;
  }

  .sch-service-text strong {
    font-size: 14px;
    font-weight: 900;
    line-height: 1.34;
    letter-spacing: -0.1px;
  }

  .sch-service-text small {
    margin-top: 7px;
    font-size: 10.5px;
    font-weight: 540;
    line-height: 1.5;
  }

  .sch-service-card em {
    top: 13px;
    right: 14px;
    font-size: 16px;
    font-weight: 800;
  }

  .sch-search-open svg {
    width: 23px;
    height: 23px;
  }

  .sch-cta {
    min-width: 175px;
    min-height: 58px;
    font-size: 15px;
    font-weight: 900;
  }
}
