.elementor-kit-5{--e-global-color-primary:#003C6B;--e-global-color-secondary:#C2521C;--e-global-color-text:#1A1A1A;--e-global-color-accent:#5B6168;--e-global-color-hlnavyd:#002A4B;--e-global-color-hlfog00:#E1E4E4;--e-global-color-hloff00:#F5F7F8;--e-global-color-hlgalv0:#969BA0;--e-global-color-hlwhite:#FFFFFF;--e-global-color-hlonnav:#D9E2EA;--e-global-color-hlcophv:#A84617;--e-global-typography-primary-font-family:"Teko";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Teko";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:700;background-color:#FFFFFF;color:#1A1A1A;font-family:"Inter", Sans-serif;font-size:17px;line-height:1.7em;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:#C2521C;color:#FFFFFF;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:#A84617;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:#003C6B;}.elementor-kit-5 a:hover{color:#002A4B;}.elementor-kit-5 h1{color:#003C6B;font-family:"Teko", Sans-serif;}.elementor-kit-5 h2{color:#003C6B;font-family:"Teko", Sans-serif;}.elementor-kit-5 h3{color:#003C6B;font-family:"Teko", Sans-serif;}.elementor-kit-5 h4{color:#003C6B;font-family:"Teko", Sans-serif;}.elementor-kit-5 h5{color:#003C6B;font-family:"Teko", Sans-serif;}.elementor-kit-5 h6{color:#003C6B;font-family:"Teko", Sans-serif;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* Highline kit CSS (Sonic, 2026-09-14). Brand hexes here mirror vars.py. */
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.e-con.e-grid > .e-con{min-width:0}
.hl-lift{transition:transform .2s ease,box-shadow .2s ease}
.hl-lift:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(0,20,40,.18)}
.hl-arrow span{display:inline-block;transition:transform .2s ease}
.hl-arrow:hover span{transform:translateX(4px)}
.hl-arrow:hover{text-decoration:underline !important}

/* wide table scrolls inside itself; min-width:0 stops it stretching the layout viewport */
.elementor-widget-text-editor:has(.hl-table-wrap){min-width:0;max-width:100%}
.hl-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}
.hl-table-wrap table{min-width:520px}

/* lead form */
.hl-form .elementor-field-group{margin-bottom:12px}
.hl-form .elementor-field-group .elementor-field-textual{border:1px solid #BFC5CA;background:#fff;
  color:#1A1A1A;border-radius:3px;min-height:50px;padding:12px 14px}
.hl-form .elementor-field-group textarea.elementor-field-textual{min-height:112px}
.hl-form .elementor-field-textual:focus{border-color:#003C6B;box-shadow:0 0 0 3px rgba(0,60,107,.16);outline:0}
.hl-form .elementor-field-textual::placeholder{color:#5B6168;opacity:1}
.hl-form .elementor-button{min-height:54px}

/* FAQ accordion, v2 (Kris 2026-09-14 "enhance this one"): numbered raised cards */
.hl-faq .elementor-accordion{counter-reset:hlfaq;display:flex;flex-direction:column;gap:14px}
.hl-faq .elementor-accordion-item{counter-increment:hlfaq;border:1px solid rgba(0,60,107,.1) !important;
  border-radius:6px;background:#fff;overflow:hidden;
  box-shadow:0 1px 2px rgba(0,30,60,.05),0 10px 26px -14px rgba(0,30,60,.22);
  transition:box-shadow .22s ease,transform .22s ease,border-color .22s ease}
.hl-faq .elementor-accordion-item:hover{transform:translateY(-2px);
  box-shadow:0 2px 4px rgba(0,30,60,.06),0 18px 36px -16px rgba(0,30,60,.3)}
.hl-faq .elementor-accordion-item:has(.elementor-active){border-color:rgba(0,60,107,.28) !important;
  box-shadow:inset 5px 0 0 #003C6B,0 20px 40px -18px rgba(0,30,60,.34)}
.hl-faq .elementor-tab-title{position:relative;display:flex !important;align-items:center;gap:18px;
  padding:20px 22px 20px 22px !important;border:0 !important;cursor:pointer}
.hl-faq .elementor-tab-title:before{content:counter(hlfaq,decimal-leading-zero);flex:none;
  width:46px;height:46px;border-radius:50%;display:grid;place-items:center;
  font:600 24px/1 "Teko",sans-serif;padding-top:3px;color:#003C6B;background:#E1E4E4;transition:all .22s ease}
.hl-faq .elementor-tab-title.elementor-active:before{background:#003C6B;color:#fff}
.hl-faq .elementor-tab-title .elementor-accordion-title{order:1;flex:1;color:#003C6B !important;
  font-family:"Teko",sans-serif;font-weight:600;font-size:25px;line-height:1.1;letter-spacing:.2px;text-decoration:none}
.hl-faq .elementor-accordion-icon{order:2;flex:none;float:none !important;width:36px !important;height:36px;
  border-radius:50%;display:grid !important;place-items:center;border:2px solid rgba(0,60,107,.2);
  color:#003C6B !important;font-size:13px;transition:all .22s ease}
.hl-faq .elementor-accordion-icon svg{width:13px;height:13px;fill:currentColor}
.hl-faq .elementor-tab-title.elementor-active .elementor-accordion-icon{background:#003C6B;border-color:#003C6B;color:#fff !important}
.hl-faq .elementor-tab-content{border:0 !important;padding:0 26px 24px 86px !important;color:#1A1A1A;
  font-size:16.5px;line-height:1.75}
@media(max-width:767px){
  .hl-faq .elementor-tab-title{gap:12px;padding:16px !important}
  .hl-faq .elementor-tab-title:before{width:38px;height:38px;font-size:20px}
  .hl-faq .elementor-tab-title .elementor-accordion-title{font-size:21px}
  .hl-faq .elementor-tab-content{padding:0 18px 20px 18px !important}}
/* FAQ aside: photo + overlapping sticky call card */
/* balance: aside column stretches to the questions column; photo absorbs the difference
   (Kris 2026-09-14 "need to balance the height"). Replaces the sticky aside. */
@media(min-width:768px){
  .e-con:has(> .e-con > .hl-faq-aside){align-items:stretch !important}
  .e-con:has(> .hl-faq-aside){align-self:stretch !important}
  .hl-faq-aside{flex:1 1 auto !important;height:100%;display:flex !important;flex-direction:column !important}
  .hl-faq-aside > .hl-faq-photo{flex:1 1 auto !important;min-height:230px !important;background-position:center 30% !important}
  .hl-faq-aside > .hl-faq-callcard{flex:none !important}}
.hl-faq-photo{border-radius:6px 6px 0 0 !important}
.hl-faq-callcard{margin:-46px 18px 0 !important;width:auto !important;max-width:none !important;position:relative;z-index:1;border-top:4px solid #C2521C}
@media(max-width:767px){.hl-faq-callcard{margin:-40px 12px 0 !important}.hl-pf-ring{width:52px;height:52px;box-shadow:0 0 0 7px rgba(255,255,255,.1)}}
.hl-faq-promises{list-style:none;margin:0;padding:0}
.hl-faq-promises li{display:flex;gap:10px;align-items:center;margin:0 0 10px;color:#fff;font-weight:600}
.hl-faq-promises span{flex:none;width:22px;height:22px;border-radius:50%;background:rgba(225,228,228,.16);
  color:#E1E4E4;font-size:12px;display:grid;place-items:center}

/* pre-footer CTA, v2 */
.hl-prefooterA{border-top:1px solid rgba(225,228,228,.12)}
.hl-pf-list{list-style:none;margin:4px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 22px}
.hl-pf-list li{display:flex;gap:10px;align-items:center;color:#fff;font-weight:600}
.hl-pf-tick{flex:none;width:24px;height:24px;border-radius:50%;background:#fff;color:#003C6B;font-size:12px;
  display:grid;place-items:center;font-weight:700}
.hl-pf-call{display:flex;align-items:center;gap:18px;margin-top:10px}
.hl-pf-ring{flex:none;width:60px;height:60px;border-radius:50%;background:#fff;color:#003C6B;display:grid;
  place-items:center;box-shadow:0 0 0 9px rgba(255,255,255,.1),0 0 0 18px rgba(255,255,255,.05)}
.hl-pf-call small{display:block;font:600 12px/1.3 Inter,sans-serif;letter-spacing:1.5px;text-transform:uppercase;color:#E1E4E4}
.hl-pf-call a{font:600 44px/1 "Teko",sans-serif;color:#fff !important;text-decoration:none;letter-spacing:.6px}
.hl-pf-formwrap{position:relative}
@media(min-width:1025px){.hl-pf-formwrap:before{content:"";position:absolute;inset:22px -22px -22px 22px;
  border:2px solid rgba(225,228,228,.28);border-radius:8px;pointer-events:none}}
.hl-pf-formwrap .hl-formcard{position:relative}
#hl-footer{border-top:1px solid rgba(225,228,228,.14)}
@media(max-width:767px){.hl-pf-list{grid-template-columns:1fr}.hl-pf-call a{font-size:36px}}

/* header */
#hl-header .elementor-button-text{white-space:nowrap}
#hl-header.elementor-sticky--effects{box-shadow:0 2px 16px rgba(0,20,40,.12)}
.hl-callbtn{display:inline-flex;align-items:center;gap:7px;background:#C2521C;color:#fff !important;
  border-radius:999px;padding:11px 15px;font:700 14px/1 Inter,sans-serif;letter-spacing:.4px;
  text-decoration:none;text-transform:uppercase}
.hl-callbtn:hover,.hl-callbtn:focus{background:#A84617;color:#fff !important}

/* tablet/mobile nav: pin the dropdown to the viewport. Elementor's "stretch" anchors it to the
   nav widget's own narrow column (Iron Ridge 2026-08-18: rendered as a 41px sliver). */
:root{--hl-hdr-h:70px}
@media(max-width:1024px){
  #hl-nav .elementor-nav-menu__container.elementor-nav-menu--dropdown{
    position:fixed !important;top:var(--hl-hdr-h) !important;left:0 !important;right:0 !important;
    width:100% !important;max-width:100% !important;margin:0 !important;
    max-height:calc(100dvh - var(--hl-hdr-h)) !important;overflow-y:auto !important;
    overscroll-behavior:contain;box-shadow:0 16px 30px rgba(0,20,40,.22) !important;z-index:9999}
  #hl-nav .elementor-nav-menu--dropdown a.elementor-item,
  #hl-nav .elementor-nav-menu--dropdown a.elementor-sub-item{padding-left:24px !important;min-height:48px}
  #hl-nav .elementor-nav-menu--dropdown .sub-menu a.elementor-sub-item{padding-left:44px !important}
  #hl-nav .elementor-menu-toggle{background:transparent !important}
}
/* hello-elementor paints bare buttons #cc3366 on hover/focus */
#hl-nav .elementor-menu-toggle:hover,#hl-nav .elementor-menu-toggle:focus{background:transparent !important;color:#003C6B}

/* footer */
#hl-footer a:hover{text-decoration:underline !important}
#hl-footer p,#hl-footer a{overflow-wrap:anywhere}

/* visible focus, WCAG 2.4.7 */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,
.elementor-tab-title:focus-visible{outline:3px solid #C2521C;outline-offset:2px}


/* ===== DEPTH PASS (Kris 2026-09-14: "enhance the design, add more depth") ===== */
.hl-band{position:relative;isolation:isolate}
.hl-band > .e-con-inner{position:relative;z-index:1}
/* dark bands: navy-to-deep gradient light falloff + a faint blueprint grid */
.hl-band-dark::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(1100px 520px at 12% 0%,rgba(255,255,255,.09),transparent 60%),
    radial-gradient(900px 600px at 100% 100%,rgba(0,0,0,.28),transparent 65%),
    linear-gradient(rgba(225,228,228,.045) 1px,transparent 1px) 0 0/44px 44px,
    linear-gradient(90deg,rgba(225,228,228,.045) 1px,transparent 1px) 0 0/44px 44px}
.hl-band-photo.hl-band-dark::after{background:
    radial-gradient(1100px 520px at 12% 0%,rgba(255,255,255,.07),transparent 60%),
    linear-gradient(180deg,rgba(0,20,40,0) 60%,rgba(0,20,40,.35) 100%)}
/* light bands: soft top light and a quiet diagonal roofline texture */
.hl-band-light::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(900px 420px at 88% 0%,rgba(0,60,107,.045),transparent 70%),
    repeating-linear-gradient(135deg,rgba(0,60,107,.018) 0 2px,transparent 2px 22px)}
/* a hairline where two light bands meet */
.hl-band-light + .hl-band-light{box-shadow:inset 0 1px 0 rgba(0,60,107,.07)}

/* cards: layered elevation */
.hl-card{box-shadow:0 1px 2px rgba(0,30,60,.06),0 10px 28px -8px rgba(0,30,60,.16);
  transition:transform .22s ease,box-shadow .22s ease}
.hl-card:hover{transform:translateY(-4px);
  box-shadow:0 2px 4px rgba(0,30,60,.06),0 22px 44px -12px rgba(0,30,60,.26)}
.hl-card-dark{box-shadow:0 24px 50px -18px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.08)}
.hl-card-dark:hover{transform:none}
.hl-syscard{box-shadow:0 2px 4px rgba(0,0,0,.12),0 18px 40px -14px rgba(0,0,0,.45)}
.hl-syscard:hover{box-shadow:0 4px 8px rgba(0,0,0,.14),0 30px 56px -16px rgba(0,0,0,.55)}
.hl-band-light .hl-syscard{box-shadow:0 1px 2px rgba(0,30,60,.06),0 14px 34px -10px rgba(0,30,60,.2)}

/* photos: offset Ridge Fog frame behind + soft drop shadow */
.hl-photo{box-shadow:18px 18px 0 0 #E1E4E4,0 26px 50px -18px rgba(0,30,60,.38)}
.hl-photo-l{box-shadow:-18px 18px 0 0 #E1E4E4,0 26px 50px -18px rgba(0,30,60,.38)}
.hl-band-light .hl-photo-r{box-shadow:18px 18px 0 0 rgba(0,60,107,.12),0 26px 50px -18px rgba(0,30,60,.34)}
.hl-band-light .hl-photo-l{box-shadow:-18px 18px 0 0 rgba(0,60,107,.12),0 26px 50px -18px rgba(0,30,60,.34)}
.hl-syscard .hl-photo{box-shadow:none}
@media(max-width:767px){.hl-photo,.hl-photo-l{box-shadow:10px 10px 0 0 rgba(0,60,107,.12),0 18px 34px -16px rgba(0,30,60,.34)}}

/* form card: raised, copper top edge (the kit lets offer boxes carry copper) */
.hl-formcard{border-top:5px solid #C2521C;
  box-shadow:0 2px 6px rgba(0,20,40,.12),0 40px 80px -24px rgba(0,20,40,.55) !important}

/* buttons: copper glow + lift */
.elementor-button{transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
a.elementor-button[style*="C2521C"],.hl-copper-btn .elementor-button{box-shadow:0 10px 22px -8px rgba(194,82,28,.55)}
.elementor-widget-button .elementor-button:hover{transform:translateY(-2px)}

/* ===== HOME HERO, OPTION A (approved by Kris 2026-09-14) ===== */
#hl-hero,.hl-heroA{position:relative;isolation:isolate;overflow:hidden}
/* Niel 2026-09-16: shadow under the proof strip. Its bottom edge IS the hero's bottom edge,
   so the hero must stop clipping it; the art layer keeps its own clip. Inner heroes unchanged. */
#hl-hero{overflow:visible;z-index:1}
#hl-hero .hl-hero-artwrap{overflow:hidden}
#hl-hero > .e-con-inner,.hl-heroA > .e-con-inner{position:static}
.hl-hero-artwrap{position:absolute !important;inset:0;z-index:0;margin:0 !important;width:auto !important;max-width:none !important}
.hl-hero-artwrap > .elementor-widget-container{height:100%}
.hl-hero-art{position:absolute;inset:0;pointer-events:none}
.hl-hero-photo{display:none}
@media(min-width:1025px){#hl-hero,.hl-heroI{background-image:none !important}
  .hl-hero-photo{display:block;position:absolute;inset:0 0 0 46%;background-position:0% 10%;background-size:cover;background-repeat:no-repeat}}
.hl-hero-art:before{content:"";position:absolute;inset:0 0 0 38%;
  background:linear-gradient(90deg,rgba(0,42,75,.55) 0%,rgba(0,42,75,0) 38%),linear-gradient(0deg,rgba(0,20,40,.55),rgba(0,20,40,0) 40%)}
.hl-hero-panel{position:absolute;inset:0 auto 0 0;width:58%;
  background:linear-gradient(160deg,#003C6B 0%,#002A4B 70%);clip-path:polygon(0 0,100% 0,78% 100%,0 100%)}
.hl-hero-panel:after{content:"";position:absolute;inset:0;
  background:linear-gradient(rgba(225,228,228,.05) 1px,transparent 1px) 0 0/46px 46px,
             linear-gradient(90deg,rgba(225,228,228,.05) 1px,transparent 1px) 0 0/46px 46px}
.hl-hero-edge{position:absolute;inset:0 auto 0 0;width:58%;background:#C2521C;
  clip-path:polygon(99.2% 0,100% 0,78.8% 100%,78% 100%)}
.hl-hero-tag{position:absolute;left:49%;bottom:150px;z-index:1;background:rgba(0,20,40,.72);color:#fff;
  font:700 12px/1 Inter,sans-serif;letter-spacing:1.4px;text-transform:uppercase;padding:10px 14px;border-left:3px solid #C2521C}
.hl-hero-row,.hl-proof{position:relative;z-index:2}
.hl-hero-row{flex:1 1 auto}
.hl-hero-h1 .hl-h1-2{display:block;color:#E1E4E4;white-space:nowrap}
.hl-hero-lead{max-width:560px !important}
.hl-proof-cell > .elementor-widget-heading{flex:none}
.hl-proof{margin-top:44px;background:#fff;border-radius:6px 6px 0 0;
  box-shadow:0 -20px 50px -20px rgba(0,20,40,.5),0 18px 34px -14px rgba(0,20,40,.3)}
.hl-proof-cell + .hl-proof-cell{border-left:1px solid #E1E4E4}
.hl-proof-num{white-space:nowrap}
@media(max-width:1024px){
  .hl-hero-panel{width:100%;clip-path:none;opacity:.94}.hl-hero-edge,.hl-hero-tag{display:none}
  .hl-hero-h1 .hl-h1-2{white-space:normal}
  .hl-proof-cell:nth-child(3){border-left:0}.hl-proof-cell:nth-child(n+3){border-top:1px solid #E1E4E4}}
@media(max-width:767px){
  .hl-hero-panel{top:220px;opacity:1;background:linear-gradient(180deg,rgba(0,42,75,0) 0,#002A4B 44px,#002A4B 100%)}
  .hl-hero-panel:after{top:60px}
  .hl-hero-art:before{inset:0 0 auto 0;height:240px;background:linear-gradient(0deg,rgba(0,42,75,.9),rgba(0,42,75,0) 55%)}
  .hl-hero-tag{display:inline-block;left:18px;right:auto;top:196px;bottom:auto}
  .hl-hero-h1 .hl-h1-2{white-space:normal}
  .hl-proof{margin:36px -18px 0 !important;width:calc(100% + 36px) !important;max-width:none !important;border-radius:0}}

/* ===== INNER HERO (service, city, about, contact) in option A language ===== */
/* Kris 2026-09-14: "make the image a full background overlay", card "align to center" */
@media(min-width:1025px){
  .hl-heroI .hl-hero-photo{inset:0 !important;background-size:cover !important}
  .hl-heroI .hl-hero-edge{display:none}
  .hl-heroI .hl-hero-panel{width:100%;clip-path:none;
    background:linear-gradient(90deg,rgba(0,34,62,.95) 0%,rgba(0,42,75,.88) 42%,rgba(0,42,75,.62) 72%,rgba(0,42,75,.5) 100%)}
  .hl-heroI .hl-hero-panel:after{opacity:.8}
  .hl-heroI .hl-hero-art:before{inset:0;z-index:1;background:linear-gradient(0deg,rgba(0,20,40,.45),rgba(0,20,40,0) 45%)}
  .hl-heroI .hl-hero-row{align-items:center !important}}
.hl-heroI-h1 .hl-h1-sub{display:block;margin-top:10px;font-size:.52em;line-height:1.02;color:#E1E4E4;letter-spacing:.3px}
.hl-crumbs{font:600 13px/1.3 Inter,sans-serif;color:#D9E2EA;letter-spacing:.3px}
.hl-crumbs a{color:#fff;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}
.hl-crumbs a:hover{border-bottom-color:#fff}
.hl-crumbs span[aria-hidden]{margin:0 8px;color:#D9E2EA}
.hl-chips{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.hl-chips li{display:flex;align-items:center;gap:8px;padding:9px 13px;border:1px solid rgba(225,228,228,.3);
  background:rgba(255,255,255,.06);border-radius:3px;color:#fff;font-weight:600;font-size:13.5px}
.hl-chips span{color:#E1E4E4;font-weight:700}
/* evaluation card with the proof points (Kris 2026-09-14) */
.hl-heroI-card{flex:none !important;width:360px !important;max-width:360px !important;margin-bottom:6px;overflow:hidden;
  border-top:5px solid #C2521C;box-shadow:0 2px 6px rgba(0,20,40,.14),0 36px 70px -22px rgba(0,20,40,.65)}
.hl-ec-head{display:flex;align-items:center;gap:10px;padding:24px 28px 0;font:700 12px/1 Inter,sans-serif;
  letter-spacing:2px;text-transform:uppercase;color:#5B6168}
.hl-ec-dot{width:8px;height:8px;border-radius:50%;background:#C2521C;box-shadow:0 0 0 4px rgba(194,82,28,.18)}
.hl-ec-phone{display:block;padding:10px 28px 0;font:600 40px/1 "Teko",sans-serif;letter-spacing:.6px;color:#C2521C !important;text-decoration:none}
.hl-ec-phone:hover{color:#A84617 !important}
.hl-ec-sub{padding:4px 28px 20px;font:500 14px/1.4 Inter,sans-serif;color:#5B6168;border-bottom:1px solid #E1E4E4}
.hl-ec-list{list-style:none;margin:0;padding:18px 28px 6px;background:#F5F7F8}
.hl-ec-list li{display:flex;align-items:center;gap:12px;margin:0 0 12px;font:600 14.5px/1.3 Inter,sans-serif;color:#1A1A1A}
.hl-ec-tick{flex:none;width:24px;height:24px;border-radius:50%;background:#003C6B;color:#fff;font-size:12px;font-weight:700;
  display:grid;place-items:center}
.hl-ec-cta{display:flex;justify-content:space-between;align-items:center;padding:16px 28px;background:#F5F7F8;
  border-top:1px solid #E1E4E4;font:700 13px/1 Inter,sans-serif;letter-spacing:1px;text-transform:uppercase;
  color:#003C6B !important;text-decoration:none}
.hl-ec-cta span{transition:transform .2s ease}.hl-ec-cta:hover span{transform:translateX(4px)}
@media(max-width:1024px){.hl-heroI-card{width:100% !important;max-width:480px !important;margin-top:30px}}
@media(max-width:767px){.hl-heroI-card{max-width:none !important}.hl-ec-phone{font-size:36px}}
@media(max-width:767px){.hl-heroI .hl-hero-art:before{display:none}.hl-heroI .hl-hero-panel{top:150px;background:linear-gradient(180deg,rgba(0,42,75,0) 0,rgba(0,42,75,.55) 60px,#002A4B 124px,#002A4B 100%)}.hl-chips li{font-size:12.5px;padding:8px 10px}}

/* ===== PROCESS TIMELINE (Kris 2026-09-14 "this looks boring") ===== */
.hl-tl-left{position:relative}
.hl-tl-left > .hl-tl-photo{flex:1 1 auto !important;min-height:260px !important;margin-top:10px}
.hl-tl-step{position:relative}
.hl-tl-mark{flex:none !important;width:66px !important;max-width:66px !important;position:relative;align-self:stretch}
.hl-tl-num{position:relative;z-index:1;width:66px;height:66px;border-radius:50%;display:grid;place-items:center;
  font:600 32px/1 "Teko",sans-serif;padding-top:4px;letter-spacing:.5px}
.hl-tl-step:not(:last-child) .hl-tl-mark:after{content:"";position:absolute;left:32px;
  top:74px;bottom:-26px;width:2px;border-radius:2px;z-index:0}
.hl-tl-body{flex:1 1 auto !important;min-width:0;border-radius:6px;transition:transform .22s ease,box-shadow .22s ease}
.hl-tl-step:hover .hl-tl-body{transform:translateX(4px)}
.hl-tl-dark .hl-tl-num{background:#fff;color:#003C6B;box-shadow:0 0 0 8px rgba(255,255,255,.08),0 14px 30px -10px rgba(0,0,0,.5)}
.hl-tl-dark .hl-tl-mark:after{background:linear-gradient(rgba(225,228,228,.55),rgba(225,228,228,.12))}
.hl-tl-dark .hl-tl-body{background:rgba(255,255,255,.055);border:1px solid rgba(225,228,228,.16);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 24px 40px -26px rgba(0,0,0,.6)}
.hl-tl-dark .hl-tl-lead{color:#fff}
.hl-tl-light .hl-tl-num{background:#003C6B;color:#fff;box-shadow:0 0 0 8px rgba(0,60,107,.08),0 14px 30px -12px rgba(0,30,60,.45)}
.hl-tl-light .hl-tl-mark:after{background:linear-gradient(rgba(0,60,107,.45),rgba(0,60,107,.08))}
.hl-tl-light .hl-tl-body{background:#fff;border:1px solid rgba(0,60,107,.1);
  box-shadow:0 1px 2px rgba(0,30,60,.05),0 14px 32px -14px rgba(0,30,60,.22)}
.hl-tl-light .hl-tl-lead{color:#003C6B}
@media(max-width:767px){.hl-tl-mark{width:52px !important;max-width:52px !important}
  .hl-tl-num{width:52px;height:52px;font-size:26px}
  .hl-tl-step:not(:last-child) .hl-tl-mark:after{left:25px;top:60px}}
@media (prefers-reduced-motion:reduce){.hl-tl-body{transition:none}.hl-tl-step:hover .hl-tl-body{transform:none}}

/* ===== ABOUT v2 (Kris 2026-09-14 "add more background image") ===== */
.hl-band-wash::after{background:repeating-linear-gradient(135deg,rgba(0,60,107,.022) 0 2px,transparent 2px 22px) !important}
.hl-ab-pills{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.hl-ab-pills li{padding:9px 14px;border:1px solid rgba(225,228,228,.32);background:rgba(255,255,255,.07);
  border-radius:999px;color:#fff;font-weight:600;font-size:13.5px}
.hl-ab-biocard{border-top:5px solid #C2521C !important;box-shadow:0 2px 6px rgba(0,20,40,.14),0 40px 80px -26px rgba(0,0,0,.6) !important}
.hl-ab-biocard:hover{transform:none !important}
.hl-collage{position:relative;padding:0 0 60px 0 !important}
.hl-collage-main{width:86% !important;margin-left:auto;box-shadow:0 30px 60px -24px rgba(0,30,60,.45)}
.hl-collage-inset{position:absolute !important;left:0;bottom:0;width:48% !important;border:7px solid #fff;
  box-shadow:0 30px 60px -20px rgba(0,30,60,.5)}
.hl-collage > .elementor-widget-html{position:absolute !important;right:-10px;top:28px;width:auto !important}
.hl-collage-badge{background:#003C6B;color:#fff;border-radius:6px;padding:16px 20px;border-left:5px solid #C2521C;
  box-shadow:0 20px 40px -16px rgba(0,20,40,.55)}
.hl-collage-badge b{display:block;font:600 40px/1 "Teko",sans-serif;letter-spacing:.5px}
.hl-collage-badge span{font:600 12px/1.3 Inter,sans-serif;letter-spacing:1.2px;text-transform:uppercase;color:#E1E4E4}
@media(max-width:767px){.hl-collage{padding-bottom:40px !important}.hl-collage-main{width:92% !important}
  .hl-collage-inset{width:56% !important;border-width:5px}.hl-collage > .elementor-widget-html{right:0;top:14px}
  .hl-collage-badge b{font-size:32px}}
.hl-ab-quote{margin:0;position:relative;padding:40px 36px 34px;border-radius:6px;background:rgba(255,255,255,.06);
  border:1px solid rgba(225,228,228,.2);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 30px 50px -30px rgba(0,0,0,.6)}
.hl-ab-qmark{position:absolute;left:28px;top:-34px;font:600 130px/1 "Teko",sans-serif;color:#E1E4E4;opacity:.9}
.hl-ab-quote blockquote{margin:0;font:600 36px/1.08 "Teko",sans-serif;color:#fff;letter-spacing:.3px;text-transform:uppercase}
.hl-ab-quote figcaption{margin-top:18px;font:700 12px/1 Inter,sans-serif;letter-spacing:2px;text-transform:uppercase;color:#E1E4E4}
.hl-ab-mvp{height:100%}
/* Who We Are v3 */
.hl-ab-left{position:relative;display:flex !important;flex-direction:column !important}
.hl-ab-tallphoto{width:100% !important;flex:1 1 auto !important}
.hl-ab-photo2{width:100% !important;flex:none !important;margin-top:28px !important;box-shadow:0 26px 50px -22px rgba(0,30,60,.4)}
.hl-ab-callcard{position:relative !important;z-index:2;align-self:flex-end;margin:-70px -28px 0 0 !important;width:auto !important;max-width:340px;
  border-top:5px solid #C2521C !important;box-shadow:0 2px 6px rgba(0,20,40,.14),0 30px 60px -22px rgba(0,20,40,.55) !important}
.hl-ab-lead p{color:#003C6B !important;font-weight:500}
.hl-ab-how{background:#F5F7F8;border-left:5px solid #003C6B;border-radius:0 6px 6px 0}
.hl-ab-close p{color:#003C6B !important;font-weight:600;font-family:"Teko",sans-serif !important;font-size:26px !important;
  line-height:1.15 !important;letter-spacing:.2px}
.hl-ab-pills-light li{border-color:rgba(0,60,107,.22) !important;background:#fff !important;color:#003C6B !important}
@media(max-width:1024px){.hl-ab-callcard{margin-right:16px !important}.hl-ab-photo2{display:none !important}}
@media(max-width:767px){.hl-ab-callcard{align-self:stretch;margin:-50px 16px 0 !important;max-width:none}
  .hl-ab-close p{font-size:22px !important}}
@media(max-width:1024px){.hl-ab-mvp{height:auto}}
.hl-ab-chip{background:rgba(255,255,255,.05);transition:background .2s ease}
.hl-ab-chip:hover{background:rgba(255,255,255,.1)}
.hl-ab-vnum{font:600 64px/1 "Teko",sans-serif;color:rgba(0,60,107,.16);margin:-6px 0 -4px}
.hl-ab-creds{list-style:none;margin:10px 0 0;padding:22px 30px;display:flex;flex-wrap:wrap;justify-content:space-around;gap:14px 30px;
  background:#003C6B;border-radius:6px;box-shadow:0 26px 50px -24px rgba(0,30,60,.55)}
.hl-ab-creds li{display:flex;align-items:center;gap:10px;color:#fff;font-weight:600}
.hl-ab-creds span{flex:none;width:26px;height:26px;border-radius:50%;background:#fff;color:#003C6B;display:grid;place-items:center;font-size:13px;font-weight:700}

/* ===== CONTACT v2 (Kris 2026-09-14) ===== */
.hl-ct-list{list-style:none;margin:0;padding:0;background:#fff;border:1px solid rgba(0,60,107,.1);border-radius:6px;
  box-shadow:0 1px 2px rgba(0,30,60,.05),0 14px 32px -16px rgba(0,30,60,.22)}
.hl-ct-row{display:flex;gap:18px;align-items:flex-start;padding:20px 24px}
.hl-ct-row + .hl-ct-row{border-top:1px solid #E1E4E4}
.hl-ct-ico{flex:none;width:46px;height:46px;border-radius:50%;background:#003C6B;color:#fff;display:grid;place-items:center}
.hl-ct-row:first-child .hl-ct-ico{background:#C2521C}
.hl-ct-txt small{display:block;font:700 12px/1.2 Inter,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:#5B6168;margin:3px 0 5px}
.hl-ct-txt > span{font:500 16.5px/1.55 Inter,sans-serif;color:#1A1A1A}
.hl-ct-big{font:600 34px/1 "Teko",sans-serif !important;color:#C2521C !important;text-decoration:none;letter-spacing:.5px}
.hl-ct-map{position:relative;border-radius:6px;overflow:hidden;box-shadow:0 26px 50px -24px rgba(0,30,60,.45)}
.hl-ct-map iframe{display:block;border:0;width:100%;height:300px}
.hl-ct-dir{position:absolute;left:14px;bottom:14px;background:#003C6B;color:#fff !important;text-decoration:none;
  font:700 12.5px/1 Inter,sans-serif;letter-spacing:1px;text-transform:uppercase;padding:12px 16px;border-radius:3px;
  box-shadow:0 10px 24px -8px rgba(0,20,40,.5)}
.hl-ct-dir:hover{background:#002A4B}
.hl-ct-formcard{height:100%;background:#fff;border-radius:6px;overflow:hidden;border:1px solid rgba(0,60,107,.1);
  box-shadow:0 2px 6px rgba(0,20,40,.08),0 40px 80px -30px rgba(0,20,40,.4)}
.hl-ct-formcard > .elementor-widget-form{padding:28px 34px 34px}
.hl-ct-formhead{background:#003C6B;padding:30px 34px 26px;border-top:5px solid #C2521C;position:relative}
.hl-ct-formhead h2{margin:0 0 6px;font:600 38px/1 "Teko",sans-serif;color:#fff;text-transform:uppercase;letter-spacing:.3px}
.hl-ct-formhead p{margin:0;color:#D9E2EA;font:500 15px/1.5 Inter,sans-serif}
.hl-ct-formhead a{color:#fff;font-weight:700;text-decoration:none;white-space:nowrap}
.hl-ct-formhead .hl-ec-dot{display:none}
.hl-ct-formcard .elementor-field-textual{min-height:54px}
.hl-ct-formcard textarea.elementor-field-textual{min-height:150px}
.hl-ct-formcard{display:flex !important;flex-direction:column !important}
.hl-ct-formcard > .hl-ns-wrap,.hl-ct-formcard > .elementor-widget-html:last-child{margin-top:auto !important}
.hl-ns{margin:0 34px 34px;padding:22px 24px;background:#F5F7F8;border-radius:6px;border-left:4px solid #003C6B}
.hl-ns small{display:block;font:700 12px/1 Inter,sans-serif;letter-spacing:1.6px;text-transform:uppercase;color:#5B6168;margin-bottom:14px}
.hl-ns ol{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.hl-ns li{display:flex;gap:12px;align-items:center;font:600 15.5px/1.35 Inter,sans-serif;color:#1A1A1A}
.hl-ns-n{flex:none;width:28px;height:28px;border-radius:50%;background:#003C6B;color:#fff;display:grid;place-items:center;
  font:600 17px/1 "Teko",sans-serif;padding-top:2px}
@media(max-width:767px){.hl-ns{margin:0 20px 24px;padding:18px}}
.hl-ql{display:flex;flex-direction:column;gap:12px;height:100%;padding:30px 28px;background:#fff;border-radius:6px;
  border:1px solid rgba(0,60,107,.1);text-decoration:none !important;
  box-shadow:0 1px 2px rgba(0,30,60,.05),0 12px 28px -14px rgba(0,30,60,.2);transition:transform .2s ease,box-shadow .2s ease}
.hl-ql:hover{transform:translateY(-4px);box-shadow:0 2px 4px rgba(0,30,60,.06),0 22px 44px -16px rgba(0,30,60,.3)}
.hl-ql-ico{width:54px;height:54px;border-radius:12px;background:#E1E4E4;color:#003C6B;display:grid;place-items:center;transition:all .2s ease}
.hl-ql:hover .hl-ql-ico{background:#003C6B;color:#fff}
.hl-ql-q{font:600 26px/1.1 "Teko",sans-serif;color:#003C6B;text-transform:uppercase;letter-spacing:.2px}
.hl-ql-l{margin-top:auto;font:700 13px/1.3 Inter,sans-serif;letter-spacing:1px;text-transform:uppercase;color:#A84617}
@media(max-width:767px){.hl-ct-row{padding:16px 18px;gap:14px}.hl-ct-ico{width:40px;height:40px}
  .hl-ct-formhead{padding:24px 22px 20px}.hl-ct-formhead h2{font-size:32px}.hl-ct-formcard > .elementor-widget-form{padding:22px 20px 26px}
  .hl-ct-big{font-size:30px !important}}

/* home: trust bar lifts out of the hero as a raised strip (no longer used on home) */
#hl-trust{margin-top:-58px;z-index:5;background:transparent !important;padding-top:0 !important}
#hl-trust::after{display:none}
#hl-trust > .e-con-inner{background:#FFFFFF;border-radius:6px;padding:22px 34px;
  box-shadow:0 2px 6px rgba(0,20,40,.1),0 30px 60px -22px rgba(0,20,40,.45);border-bottom:4px solid #003C6B}
@media(max-width:767px){#hl-trust{margin-top:-36px}#hl-trust > .e-con-inner{padding:18px 18px}}

/* inner-page hero: floating evaluation card over the photo corner */
.hl-herophoto{position:relative}
.hl-float{position:absolute !important;left:-34px;bottom:-30px;z-index:3;width:auto !important;
  max-width:300px;box-shadow:0 2px 6px rgba(0,20,40,.12),0 28px 56px -18px rgba(0,20,40,.5)}
@media(max-width:1024px){.hl-float{left:16px;bottom:-24px}}

/* steps on navy: glass panels */
.hl-glass{background:rgba(255,255,255,.055);border:1px solid rgba(225,228,228,.16);border-radius:6px;
  padding:30px 28px !important;box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 24px 40px -26px rgba(0,0,0,.6);
  backdrop-filter:blur(2px)}
.hl-band-light .hl-glass{background:#FFFFFF;border:1px solid rgba(0,60,107,.08);
  box-shadow:0 1px 2px rgba(0,30,60,.06),0 14px 32px -12px rgba(0,30,60,.18)}

/* big faint numeral behind section kickers on light bands */
.hl-watermark{position:absolute;right:-8px;top:-40px;font:600 220px/1 "Teko",sans-serif;
  color:rgba(0,60,107,.045);pointer-events:none;user-select:none;z-index:0}

/* footer depth */
#hl-footer{background:linear-gradient(180deg,#003C6B 0%,#002A4B 100%) !important}
#hl-prefooter{box-shadow:inset 0 10px 24px -18px rgba(0,30,60,.25)}
@media (prefers-reduced-motion:reduce){.hl-card,.elementor-button{transition:none}
  .hl-card:hover,.elementor-widget-button .elementor-button:hover{transform:none}}

.hl-map iframe{display:block}
@media (prefers-reduced-motion:reduce){
  .hl-lift,.hl-arrow span{transition:none}.hl-lift:hover{transform:none}.hl-arrow:hover span{transform:none}}/* End custom CSS */