:root{
  --carbon:#6B6B6B;
  --yellow:#FAB612;
  --blue:#154A99;
  --oxford:#1D1D1B;
  --white:#FFFFFF;
  --soft:#F5F7FA;
  --line:#DDE3EB;
  --text:#1D1D1B;
  --muted:#6B6B6B;
  --wrap:1180px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Open Sans",Arial,sans-serif;color:var(--text);background:#fff;line-height:1.6}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.wrap{width:min(calc(100% - 32px),var(--wrap));margin:auto}
.topbar{background:var(--oxford);color:#fff;font-size:13px}
.topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:center;gap:28px;flex-wrap:wrap}
.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);box-shadow:0 5px 18px rgba(21,74,153,.07)}
.header-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:30px}
.logo img{width:270px;height:auto}
nav{display:flex;gap:28px;align-items:center}nav a{font-weight:700;color:var(--blue);font-size:14px}nav a:hover{color:var(--yellow)}
.menu-toggle{display:none;background:var(--blue);color:#fff;border:0;border-radius:7px;padding:10px 12px;font-size:20px}
.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#10233d 0%,#154A99 70%,#194f9a 100%);color:#fff;padding:96px 0}
.hero:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 15% 20%,rgba(255,255,255,.06),transparent 15%),linear-gradient(120deg,transparent 0 48%,rgba(250,182,18,.08) 49% 52%,transparent 53%)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.kicker{color:var(--yellow);font-size:12px;font-weight:800;letter-spacing:.14em;margin-bottom:14px}
.hero h1,.section h2{font-weight:800;line-height:1.04}
.hero h1{font-size:clamp(42px,5.3vw,72px);margin-bottom:22px}.hero-copy>p:not(.kicker){color:#e8eef8;font-size:18px;max-width:700px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border-radius:999px;font-weight:800;border:2px solid transparent}.primary{background:var(--yellow);color:var(--oxford)}.secondary{border-color:#fff;color:#fff}
.hero-placeholder{min-height:390px;border-radius:24px;position:relative;overflow:hidden;background:linear-gradient(145deg,#7b8688,#363d41);box-shadow:0 30px 60px rgba(0,0,0,.25)}
.hero-placeholder:before{content:"";position:absolute;width:320px;height:320px;border:28px solid rgba(255,255,255,.12);border-radius:50%;left:60px;top:34px;box-shadow:0 0 0 20px rgba(255,255,255,.04) inset}.spray-gun{position:absolute;width:180px;height:70px;background:var(--blue);right:95px;top:155px;border-radius:10px;transform:skewX(-12deg)}.burst{position:absolute;right:35px;top:150px;width:55px;height:80px;background:conic-gradient(from 160deg,transparent 0 12%,var(--yellow) 12% 19%,transparent 19% 31%,var(--yellow) 31% 38%,transparent 38% 50%,var(--yellow) 50% 57%,transparent 57%)}.hero-placeholder span,.service-image span{position:absolute;left:18px;bottom:18px;background:rgba(255,255,255,.93);color:var(--blue);padding:7px 10px;border-radius:6px;font-size:11px;font-weight:700}
.section{padding:88px 0}.section h2{font-size:clamp(34px,4vw,54px);color:var(--blue);margin-bottom:20px}.about{background:#fff}.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}.about-main>p:not(.kicker){color:var(--muted);font-size:17px;margin-top:14px}.about-panel{background:var(--soft);border-left:8px solid var(--yellow);padding:34px;border-radius:18px}.about-panel img{width:250px;margin:0 auto 20px}.about-panel strong{display:block;color:var(--blue);font-size:18px;margin-bottom:10px}.about-panel p{color:var(--muted)}
.mission-vision{background:var(--soft)}.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.mv-grid article{border-radius:18px;padding:32px}.mv-grid article:first-child{background:var(--blue);color:#fff}.mv-grid article:last-child{background:#fff;border:1px solid var(--line)}.mv-grid span{font-weight:800;color:var(--yellow);font-size:12px;letter-spacing:.12em}.mv-grid h3{font-size:26px;line-height:1.2;margin:12px 0}.mv-grid article:last-child h3{color:var(--blue)}.mv-grid p{font-size:15px}.mv-grid article:last-child p{color:var(--muted)}
.services{background:#fff}.section-heading{max-width:820px;margin-bottom:36px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 14px 35px rgba(21,74,153,.08)}.service-image{min-height:230px;position:relative}.image-1{background:linear-gradient(135deg,#899392,#354147)}.image-2{background:radial-gradient(circle at 72% 38%,#FAB612 0 8%,transparent 9%),linear-gradient(135deg,#53636a,#202628)}.image-3{background:linear-gradient(45deg,transparent 0 38%,#FAB612 39% 42%,transparent 43%),linear-gradient(135deg,#3a484f,#171c1f)}.service-copy{padding:24px}.service-copy h3{color:var(--blue);font-size:20px;margin-bottom:9px}.service-copy p{color:var(--muted);font-size:14px}
.products{background:var(--soft)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-grid article{background:#fff;border:1px solid var(--line);border-top:6px solid var(--blue);border-radius:14px;padding:24px}.product-grid b{color:var(--yellow)}.product-grid h3{color:var(--blue);margin:12px 0 8px;font-size:18px}.product-grid p{color:var(--muted);font-size:14px}
.values{background:var(--oxford);color:#fff;border-top:10px solid var(--yellow)}.values-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px}.values h2{color:#fff}.light{color:var(--yellow)}.values-list{display:grid;grid-template-columns:1fr 1fr;gap:16px}.values-list>div{border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:20px;background:rgba(255,255,255,.04)}.values-list span{color:var(--yellow);font-size:12px;font-weight:800}.values-list strong{display:block;margin:6px 0 8px}.values-list p{color:#c9c9c9;font-size:13px}

footer{background:#fff;color:var(--blue);padding:28px 0;border-top:8px solid var(--yellow)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.footer-inner img{
    display:block !important;
    width:auto !important;
    height:88px !important;
    max-width:190px !important;
    max-height:88px !important;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    object-fit:contain !important;
}
.footer-inner p{font-size:12px;color:var(--blue)}

.footer-right{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:10px;
}

.footer-socials{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
}

.footer-social{
  width:24px;
  height:24px;
  min-width:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  margin:0;
  color:var(--blue);
  background:transparent;
  border:0;
  text-decoration:none;
}

.footer-social:hover{
  color:var(--yellow);
}

.footer-social svg{
  display:block;
  width:17px;
  height:17px;
  max-width:17px;
  max-height:17px;
  fill:currentColor;
  stroke:currentColor;
  stroke-width:1.8;
  flex:0 0 17px;
}

.footer-social-facebook svg,
.footer-social-linkedin svg,
.footer-social-youtube svg{
  stroke:none;
}

.footer-social-instagram svg,
.footer-social-google svg{
  fill:none;
}

@media (max-width:700px){
  .footer-right{
    align-items:center;
  }

  .footer-socials{
    justify-content:center;
  }
}
@media(max-width:900px){.menu-toggle{display:block}nav{display:none;position:absolute;top:84px;left:16px;right:16px;background:#fff;padding:16px;flex-direction:column;align-items:flex-start;border:1px solid var(--line);border-radius:12px;box-shadow:0 15px 35px rgba(0,0,0,.12)}nav.open{display:flex}.hero-grid,.about-grid,.mv-grid,.values-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr}.product-grid{grid-template-columns:1fr 1fr}.logo img{width:220px}}
@media(max-width:600px){.topbar-inner{gap:8px;padding:6px 0}.header-inner{min-height:76px}.logo img{width:185px}.hero{padding:70px 0}.section{padding:66px 0}.product-grid,.values-list{grid-template-columns:1fr}.footer-inner{flex-direction:column;text-align:center}}


/* =========================================================
   HERO V7 — PERSON ALWAYS TO THE RIGHT OF THE TEXT
   Background: assets/img/hero-background.jpg
   Person:     assets/img/hero-person.png
========================================================= */

.hero-header{
  position:sticky;
  top:0;
  z-index:100;
  background:#154A99;
  box-shadow:none;
}

.hero-header .header-inner{
  min-height:150px;
}

.logo-vertical img{
  width:145px;
  max-height:125px;
  object-fit:contain;
}

.hero-header nav{
  gap:28px;
}

.hero-header nav a{
  position:relative;
  color:#fff;
  text-transform:uppercase;
  font-size:13px;
  font-weight:600;
  letter-spacing:.02em;
}

.hero-header nav a.active::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-10px;
  width:100%;
  height:2px;
  background:#FAB612;
}

.hero-reference{
  position:relative;
  min-height:720px;
  padding:0;
  overflow:hidden;
  background:#1D1D1B;
  color:#fff;
  isolation:isolate;
}

.hero-bg-image{
  position:absolute;
  inset:0;
  z-index:-3;
  background:url("../img/hero-background.jpg") center center/cover no-repeat;
}

.hero-dark-overlay{
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(
    90deg,
    rgba(0,0,0,.76) 0%,
    rgba(0,0,0,.62) 37%,
    rgba(0,0,0,.25) 58%,
    rgba(0,0,0,.08) 100%
  );
}

.hero-reference-inner{
  position:relative;
  min-height:720px;
  display:flex;
  align-items:center;
}

.hero-reference-copy{
  position:relative;
  z-index:5;
  width:48%;
  max-width:580px;
  padding:60px 0;
}

.hero-reference-copy h1{
  margin:0;
  color:#fff;
  font-size:clamp(46px,4.45vw,72px);
  line-height:.98;
  font-weight:800;
  letter-spacing:-.03em;
  text-transform:uppercase;
  text-shadow:0 3px 10px rgba(0,0,0,.32);
}

.hero-reference-copy h2{
  margin:26px 0 0;
  color:#fff;
  font-size:clamp(28px,2.45vw,40px);
  line-height:1.14;
  font-weight:700;
}

.hero-reference-copy p{
  max-width:420px;
  margin:28px 0 0;
  color:#fff;
  font-size:19px;
  line-height:1.42;
}

.quote-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:205px;
  min-height:58px;
  margin-top:30px;
  padding:0 28px;
  background:#FAB612;
  color:#1D1D1B;
  font-size:15px;
  font-weight:800;
  text-transform:uppercase;
  text-decoration:none;
  border-radius:0;
}

.hero-reference-person{
  position:absolute;
  z-index:4;
  top:0;
  right:0;
  bottom:0;
  width:52%;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  pointer-events:none;
}

.hero-reference-person img{
  display:block;
  width:auto;
  height:96%;
  max-width:100%;
  object-fit:contain;
  object-position:right bottom;
  margin:0;
  transform:none;
}

/* The person never enters normal document flow. */
.hero-reference-person,
.hero-reference-person img{
  float:none;
  clear:none;
}

@media(max-width:1100px){
  .hero-header .header-inner{min-height:110px}
  .logo-vertical img{width:105px;max-height:90px}

  .hero-reference{min-height:650px}
  .hero-reference-inner{min-height:650px}

  .hero-reference-copy{
    width:53%;
    max-width:540px;
  }

  .hero-reference-copy h1{
    font-size:clamp(40px,5vw,58px);
  }

  .hero-reference-person{
    width:47%;
  }

  .hero-reference-person img{
    height:92%;
  }
}

@media(max-width:900px){
  .hero-header .header-inner{min-height:92px}

  .hero-reference{min-height:620px}
  .hero-reference-inner{
    min-height:620px;
    padding:0 16px;
  }

  .hero-reference-copy{
    width:58%;
    max-width:none;
  }

  .hero-reference-copy h1{
    font-size:clamp(33px,7.4vw,48px);
  }

  .hero-reference-copy h2{
    font-size:clamp(22px,4.4vw,30px);
  }

  .hero-reference-copy p{
    font-size:16px;
  }

  .hero-reference-person{
    width:43%;
  }

  .hero-reference-person img{
    height:86%;
  }
}

@media(max-width:640px){
  .hero-reference{min-height:560px}
  .hero-reference-inner{
    min-height:560px;
    padding:0 12px;
  }

  .hero-reference-copy{
    width:64%;
    padding:32px 0;
  }

  .hero-reference-copy h1{
    font-size:clamp(27px,8.1vw,36px);
  }

  .hero-reference-copy h2{
    margin-top:18px;
    font-size:clamp(18px,5.2vw,24px);
  }

  .hero-reference-copy p{
    margin-top:18px;
    max-width:270px;
    font-size:13px;
  }

  .quote-button{
    min-width:158px;
    min-height:48px;
    margin-top:20px;
    padding:0 16px;
  }

  .hero-reference-person{
    width:40%;
  }

  .hero-reference-person img{
    height:80%;
    max-width:120%;
  }
}


/* ===== V8 DEFINITIVE HERO: 50% COPY / 50% IMAGE ===== */
#home.hero-reference{
    position:relative !important;
    display:grid !important;
    grid-template-columns:50% 50% !important;
    min-height:720px !important;
    height:720px !important;
    padding:0 !important;
    margin:0 !important;
    overflow:hidden !important;
    background-image:none !important;
    background-position:center !important;
    background-size:cover !important;
    background-repeat:no-repeat !important;
}

#home.hero-reference::after{
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:0 !important;
    background:linear-gradient(90deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.48) 48%,rgba(0,0,0,.10) 100%) !important;
    pointer-events:none !important;
}

#home .hero-bg-image,
#home .hero-dark-overlay{
    display:none !important;
}

#home .hero-reference-inner{
    position:relative !important;
    z-index:2 !important;
    grid-column:1 !important;
    width:100% !important;
    max-width:none !important;
    min-height:720px !important;
    height:720px !important;
    margin:0 !important;
    padding:50px 6vw !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
}

#home .hero-reference-copy{
    width:min(100%,580px) !important;
    max-width:580px !important;
    padding:0 !important;
    margin:0 !important;
}

#home .hero-reference-copy h1{
    margin:0 0 24px !important;
    font-size:clamp(46px,4vw,68px) !important;
    line-height:.98 !important;
    font-weight:800 !important;
    color:#fff !important;
    text-transform:uppercase !important;
}

#home .hero-reference-copy h2{
    margin:0 0 24px !important;
    font-size:clamp(27px,2.3vw,38px) !important;
    line-height:1.14 !important;
    font-weight:700 !important;
    color:#fff !important;
}

#home .hero-reference-copy p{
    margin:0 0 28px !important;
    max-width:470px !important;
    font-size:18px !important;
    line-height:1.45 !important;
    color:#fff !important;
}

#home .quote-button{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:205px !important;
    min-height:58px !important;
    padding:0 28px !important;
    margin:0 !important;
    background:#FAB612 !important;
    color:#1D1D1B !important;
    font-size:15px !important;
    line-height:1 !important;
    font-weight:800 !important;
    text-transform:uppercase !important;
    text-decoration:none !important;
    border:0 !important;
    border-radius:0 !important;
}

#home .hero-reference-person{
    position:relative !important;
    z-index:2 !important;
    grid-column:2 !important;
    grid-row:1 !important;
    inset:auto !important;
    width:100% !important;
    height:720px !important;
    min-height:720px !important;
    margin:0 !important;
    padding:0 !important;
    display:block !important;
    overflow:hidden !important;
}

#home .hero-reference-person img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    object-fit:cover !important;
    object-position:center top !important;
    transform:none !important;
}

@media (max-width:900px){
    #home.hero-reference{
        grid-template-columns:55% 45% !important;
        height:620px !important;
        min-height:620px !important;
    }
    #home .hero-reference-inner,
    #home .hero-reference-person{
        height:620px !important;
        min-height:620px !important;
    }
    #home .hero-reference-inner{
        padding:35px 24px !important;
    }
    #home .hero-reference-copy h1{
        font-size:clamp(32px,5.7vw,46px) !important;
    }
    #home .hero-reference-copy h2{
        font-size:clamp(21px,3.7vw,29px) !important;
    }
    #home .hero-reference-copy p{
        font-size:15px !important;
    }
}

@media (max-width:600px){
    #home.hero-reference{
        grid-template-columns:58% 42% !important;
        height:560px !important;
        min-height:560px !important;
    }
    #home .hero-reference-inner,
    #home .hero-reference-person{
        height:560px !important;
        min-height:560px !important;
    }
    #home .hero-reference-inner{
        padding:26px 14px !important;
    }
    #home .hero-reference-copy h1{
        font-size:clamp(25px,7vw,34px) !important;
    }
    #home .hero-reference-copy h2{
        font-size:clamp(18px,4.7vw,23px) !important;
    }
    #home .hero-reference-copy p{
        font-size:13px !important;
    }
    #home .quote-button{
        min-width:150px !important;
        min-height:46px !important;
        padding:0 14px !important;
        font-size:13px !important;
    }
}


/* =========================================================
   ABOUT STORY — reference layout 2026-08-24
========================================================= */
.about-story{
    position:relative;
    overflow:hidden;
    background:#fff;
    color:#12375c;
    padding:86px 0 78px;
}

.about-story::before,
.about-story::after{
    content:"";
    position:absolute;
    width:250px;
    height:250px;
    opacity:.09;
    pointer-events:none;
    background:
      radial-gradient(circle at 50% 50%, transparent 0 23%, #154A99 24% 29%, transparent 30% 39%, #154A99 40% 44%, transparent 45%),
      repeating-conic-gradient(from 0deg, #154A99 0 8deg, transparent 8deg 22deg);
    border-radius:50%;
}

.about-story::before{
    left:-105px;
    top:-82px;
}

.about-story::after{
    right:-115px;
    bottom:-110px;
}

.about-story-inner{
    width:min(100% - 48px, 1180px);
    margin:0 auto;
}

.about-story-copy{
    width:min(100%, 820px);
    margin:0 auto;
    position:relative;
    z-index:2;
}

.about-story-lead{
    margin:0 0 26px;
    font-size:26px;
    line-height:1.25;
    font-weight:500;
    color:#12375c;
}

.about-story p{
    margin:0 0 28px;
    font-size:17px;
    line-height:1.52;
    color:#173a5e;
}

.about-story h3{
    margin:0 0 10px;
    font-size:21px;
    line-height:1.25;
    font-weight:800;
    color:#12375c;
}

.about-story h3 span{
    font-weight:500;
}

.about-team-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:8px;
    color:#12375c;
    text-decoration:none;
    font-size:17px;
    font-weight:500;
}

.about-team-link span{
    font-size:24px;
    line-height:1;
}

@media(max-width:700px){
    .about-story{
        padding:58px 0 55px;
    }
    .about-story-inner{
        width:min(100% - 32px, 1180px);
    }
    .about-story-lead{
        font-size:22px;
    }
    .about-story p{
        font-size:16px;
    }
    .about-story h3{
        font-size:19px;
    }
}


/* =========================================================
   ABOUT COMPLETE — visual hero + story panel
   Reference: 2026-08-24 supplied screenshot
========================================================= */

.about-complete{
    background:#fff;
}

.about-visual{
    position:relative;
    min-height:445px;
    overflow:hidden;
    background:#0f355d;
    isolation:isolate;
}

.about-visual-bg{
    position:absolute;
    inset:0;
    z-index:-3;
    background-image:url("../img/hero-background.jpg");
    background-size:cover;
    background-position:center 42%;
    background-repeat:no-repeat;
}

.about-visual-overlay{
    position:absolute;
    inset:0;
    z-index:-2;
    background:
      linear-gradient(90deg,
        rgba(9,41,78,.92) 0%,
        rgba(9,41,78,.68) 36%,
        rgba(9,41,78,.24) 64%,
        rgba(9,41,78,.08) 100%);
}

.about-visual-inner{
    position:relative;
    width:min(100% - 48px,1180px);
    min-height:445px;
    margin:0 auto;
}

.about-visual-copy{
    position:absolute;
    left:0;
    top:50%;
    z-index:3;
    transform:translateY(-46%);
    color:#fff;
}

.about-visual-copy h2{
    margin:0 0 16px;
    color:#fff;
    font-size:clamp(48px,5vw,72px);
    line-height:1;
    font-weight:800;
}

.about-visual-copy p{
    margin:0;
    color:#fff;
    font-size:clamp(28px,3vw,42px);
    line-height:1.13;
    font-weight:400;
}

.about-visual-person{
    position:absolute;
    right:0;
    bottom:0;
    z-index:2;
    width:48%;
    height:100%;
    display:flex;
    justify-content:flex-end;
    align-items:flex-end;
    overflow:hidden;
}

.about-visual-person img{
    display:block;
    width:auto;
    height:100%;
    max-width:100%;
    object-fit:contain;
    object-position:right bottom;
}

/* White story panel */
.about-story{
    position:relative;
    overflow:hidden;
    background:#fff;
    color:#12375c;
    padding:82px 0 72px;
}

.about-story::before,
.about-story::after{
    content:"";
    position:absolute;
    width:270px;
    height:270px;
    opacity:.075;
    pointer-events:none;
    border-radius:50%;
    background:
      radial-gradient(circle at 50% 50%, transparent 0 23%, #154A99 24% 29%, transparent 30% 39%, #154A99 40% 44%, transparent 45%),
      repeating-conic-gradient(from 0deg, #154A99 0 8deg, transparent 8deg 22deg);
}

.about-story::before{
    left:-105px;
    top:-92px;
}

.about-story::after{
    right:-120px;
    bottom:-120px;
}

.about-story-inner{
    width:min(100% - 48px,1180px);
    margin:0 auto;
}

.about-story-copy{
    width:min(100%,840px);
    margin:0 auto;
    position:relative;
    z-index:2;
}

.about-story-lead{
    margin:0 0 28px;
    color:#12375c;
    font-size:26px;
    line-height:1.28;
    font-weight:500;
}

.about-story p{
    margin:0 0 30px;
    color:#173a5e;
    font-size:17px;
    line-height:1.55;
}

.about-story h3{
    margin:0 0 10px;
    color:#12375c;
    font-size:21px;
    line-height:1.28;
    font-weight:800;
}

.about-story h3 span{
    font-weight:500;
}

.about-team-link{
    display:inline-flex;
    align-items:center;
    gap:8px;
    margin-top:6px;
    color:#12375c;
    text-decoration:none;
    font-size:17px;
    font-weight:500;
}

.about-team-link span{
    font-size:24px;
    line-height:1;
}

@media(max-width:900px){
    .about-visual{
        min-height:390px;
    }
    .about-visual-inner{
        min-height:390px;
    }
    .about-visual-person{
        width:46%;
    }
    .about-visual-copy{
        left:10px;
    }
}

@media(max-width:640px){
    .about-visual{
        min-height:350px;
    }
    .about-visual-inner{
        min-height:350px;
        width:min(100% - 24px,1180px);
    }
    .about-visual-copy{
        width:58%;
        left:0;
    }
    .about-visual-copy h2{
        font-size:40px;
    }
    .about-visual-copy p{
        font-size:25px;
    }
    .about-visual-person{
        width:45%;
    }

    .about-story{
        padding:58px 0 54px;
    }
    .about-story-inner{
        width:min(100% - 32px,1180px);
    }
    .about-story-lead{
        font-size:22px;
    }
    .about-story p{
        font-size:16px;
    }
    .about-story h3{
        font-size:19px;
    }
}


/* =========================================================
   ABOUT V2 — explicit top hero + story immediately below
========================================================= */

.about-anchor{
  height:0;
  scroll-margin-top:150px;
}

/* TOP HALF */
.about-hero-block{
  position:relative !important;
  display:block !important;
  width:100% !important;
  height:480px !important;
  min-height:480px !important;
  margin:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  background:#12375c !important;
  isolation:isolate;
}

.about-hero-bg{
  position:absolute;
  inset:0;
  z-index:-3;
  background-image:url("../img/hero-background.jpg");
  background-size:cover;
  background-position:center 42%;
  background-repeat:no-repeat;
}

.about-hero-overlay{
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(
    90deg,
    rgba(8,43,82,.90) 0%,
    rgba(8,43,82,.66) 38%,
    rgba(8,43,82,.22) 68%,
    rgba(8,43,82,.05) 100%
  );
}

.about-hero-inner{
  position:relative;
  width:min(calc(100% - 48px),1180px);
  height:480px;
  margin:0 auto;
}

.about-hero-copy{
  position:absolute;
  left:0;
  top:50%;
  z-index:5;
  transform:translateY(-50%);
  color:#fff;
}

.about-hero-copy h2{
  margin:0 0 16px;
  color:#fff;
  font-size:64px;
  line-height:1;
  font-weight:800;
}

.about-hero-copy p{
  margin:0;
  color:#fff;
  font-size:36px;
  line-height:1.12;
  font-weight:400;
}

.about-hero-person{
  position:absolute;
  right:0;
  top:0;
  bottom:0;
  z-index:4;
  width:50%;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  overflow:hidden;
}

.about-hero-person img{
  display:block;
  width:auto;
  height:100%;
  max-width:100%;
  object-fit:contain;
  object-position:right bottom;
}

/* BOTTOM HALF */
.about-story-block{
  position:relative !important;
  display:block !important;
  width:100% !important;
  min-height:560px !important;
  margin:0 !important;
  padding:78px 24px 72px !important;
  overflow:hidden !important;
  background:#fff !important;
  color:#12375c !important;
}

.about-story-content{
  position:relative;
  z-index:3;
  width:min(100%,820px);
  margin:0 auto;
}

.about-story-lead{
  margin:0 0 28px;
  color:#12375c;
  font-size:25px;
  line-height:1.28;
  font-weight:500;
}

.about-story-content > p:not(.about-story-lead){
  margin:0 0 28px;
  color:#173a5e;
  font-size:17px;
  line-height:1.55;
}

.about-story-content h3{
  margin:0 0 10px;
  color:#12375c;
  font-size:21px;
  line-height:1.28;
  font-weight:400;
}

.about-story-content h3 strong{
  font-weight:800;
}

.about-team-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:10px;
  color:#12375c;
  text-decoration:none;
  font-size:17px;
  font-weight:500;
}

.about-team-link span{
  font-size:24px;
}

.about-story-gears{
  position:absolute;
  width:230px;
  height:230px;
  opacity:.085;
  border-radius:50%;
  background:
    radial-gradient(circle at center, transparent 0 22%, #154A99 23% 29%, transparent 30% 40%, #154A99 41% 45%, transparent 46%),
    repeating-conic-gradient(#154A99 0 8deg, transparent 8deg 22deg);
}

.gear-top-left{
  left:-92px;
  top:-80px;
}

.gear-bottom-right{
  right:-90px;
  bottom:-96px;
}

@media(max-width:700px){
  .about-anchor{scroll-margin-top:92px;}

  .about-hero-block,
  .about-hero-inner{
    height:360px !important;
    min-height:360px !important;
  }

  .about-hero-inner{
    width:min(calc(100% - 24px),1180px);
  }

  .about-hero-copy{
    width:58%;
  }

  .about-hero-copy h2{
    font-size:42px;
  }

  .about-hero-copy p{
    font-size:25px;
  }

  .about-hero-person{
    width:45%;
  }

  .about-story-block{
    min-height:0 !important;
    padding:56px 20px 52px !important;
  }

  .about-story-lead{
    font-size:21px;
  }

  .about-story-content > p:not(.about-story-lead){
    font-size:16px;
  }

  .about-story-content h3{
    font-size:19px;
  }
}


/* =========================================================
   HOME + ABOUT SCREEN FIX
   Each menu target aligns directly below the sticky header.
========================================================= */

html{
  scroll-padding-top:150px;
}

/* HOME: exactly fills visible desktop area below header */
#home.hero-reference{
  scroll-margin-top:150px !important;
  min-height:calc(100vh - 150px) !important;
  height:calc(100vh - 150px) !important;
}

#home .hero-reference-inner,
#home .hero-reference-person{
  min-height:calc(100vh - 150px) !important;
  height:calc(100vh - 150px) !important;
}

/* ABOUT: one single screen below the header */
.about-screen{
  position:relative;
  width:100%;
  min-height:calc(100vh - 150px);
  height:calc(100vh - 150px);
  display:grid;
  grid-template-rows:46% 54%;
  background:#fff;
  overflow:hidden;
  scroll-margin-top:150px;
}

/* Upper visual half */
.about-screen-top{
  position:relative;
  overflow:hidden;
  background:#12375c;
  isolation:isolate;
}

.about-screen-bg{
  position:absolute;
  inset:0;
  z-index:-3;
  background-image:url("../img/hero-background.jpg");
  background-size:cover;
  background-position:center 42%;
  background-repeat:no-repeat;
}

.about-screen-overlay{
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(
    90deg,
    rgba(8,43,82,.91) 0%,
    rgba(8,43,82,.68) 38%,
    rgba(8,43,82,.24) 66%,
    rgba(8,43,82,.05) 100%
  );
}

.about-screen-inner{
  position:relative;
  width:min(calc(100% - 48px),1180px);
  height:100%;
  margin:0 auto;
}

.about-screen-copy{
  position:absolute;
  left:0;
  top:50%;
  z-index:5;
  transform:translateY(-50%);
  color:#fff;
}

.about-screen-copy h2{
  margin:0 0 12px;
  color:#fff;
  font-size:clamp(44px,4.5vw,66px);
  line-height:1;
  font-weight:800;
}

.about-screen-copy p{
  margin:0;
  color:#fff;
  font-size:clamp(25px,2.7vw,38px);
  line-height:1.12;
  font-weight:400;
}

.about-screen-person{
  position:absolute;
  right:0;
  top:0;
  bottom:0;
  z-index:4;
  width:48%;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  overflow:hidden;
}

.about-screen-person img{
  display:block;
  width:auto;
  height:100%;
  max-width:100%;
  object-fit:contain;
  object-position:right bottom;
}

/* Lower story half */
.about-screen-bottom{
  position:relative;
  overflow:hidden;
  background:#fff;
  padding:28px 24px 24px;
}

.about-screen-story{
  position:relative;
  z-index:3;
  width:min(100%,820px);
  height:100%;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.about-screen-story .about-story-lead{
  margin:0 0 14px;
  color:#12375c;
  font-size:clamp(18px,1.45vw,24px);
  line-height:1.25;
  font-weight:500;
}

.about-screen-story > p:not(.about-story-lead){
  margin:0 0 12px;
  color:#173a5e;
  font-size:clamp(13px,1.02vw,16px);
  line-height:1.42;
}

.about-screen-story h3{
  margin:0 0 5px;
  color:#12375c;
  font-size:clamp(15px,1.15vw,19px);
  line-height:1.22;
  font-weight:400;
}

.about-screen-story h3 strong{
  font-weight:800;
}

.about-screen-story .about-team-link{
  margin-top:5px;
  font-size:15px;
}

.about-gear{
  position:absolute;
  width:185px;
  height:185px;
  opacity:.075;
  border-radius:50%;
  background:
    radial-gradient(circle at center, transparent 0 22%, #154A99 23% 29%, transparent 30% 40%, #154A99 41% 45%, transparent 46%),
    repeating-conic-gradient(#154A99 0 8deg, transparent 8deg 22deg);
}

.about-gear-left{
  left:-78px;
  top:-66px;
}

.about-gear-right{
  right:-72px;
  bottom:-76px;
}

/* Header height changes at breakpoints: keep menu anchors aligned */
@media(max-width:1100px){
  html{scroll-padding-top:110px;}

  #home.hero-reference{
    scroll-margin-top:110px !important;
    min-height:calc(100vh - 110px) !important;
    height:calc(100vh - 110px) !important;
  }

  #home .hero-reference-inner,
  #home .hero-reference-person{
    min-height:calc(100vh - 110px) !important;
    height:calc(100vh - 110px) !important;
  }

  .about-screen{
    scroll-margin-top:110px;
    min-height:calc(100vh - 110px);
    height:calc(100vh - 110px);
  }
}

@media(max-width:900px){
  html{scroll-padding-top:92px;}

  #home.hero-reference{
    scroll-margin-top:92px !important;
    min-height:calc(100vh - 92px) !important;
    height:calc(100vh - 92px) !important;
  }

  #home .hero-reference-inner,
  #home .hero-reference-person{
    min-height:calc(100vh - 92px) !important;
    height:calc(100vh - 92px) !important;
  }

  .about-screen{
    scroll-margin-top:92px;
    min-height:auto;
    height:auto;
    grid-template-rows:360px auto;
  }

  .about-screen-bottom{
    padding:44px 22px 42px;
  }

  .about-screen-story{
    display:block;
  }

  .about-screen-story .about-story-lead{
    font-size:21px;
  }

  .about-screen-story > p:not(.about-story-lead){
    font-size:15px;
  }

  .about-screen-story h3{
    font-size:18px;
  }
}

@media(max-width:640px){
  .about-screen{
    grid-template-rows:330px auto;
  }

  .about-screen-inner{
    width:min(calc(100% - 24px),1180px);
  }

  .about-screen-copy{
    width:58%;
  }

  .about-screen-copy h2{
    font-size:39px;
  }

  .about-screen-copy p{
    font-size:23px;
  }

  .about-screen-person{
    width:45%;
  }
}


/* =========================================================
   ABOUT COMPACT FIX
   - removes the strip of HOME visible above ABOUT
   - reduces the graphic band height
   - gives more room to the story below
========================================================= */

/* Actual desktop header is taller than the earlier offset. */
html{
  scroll-padding-top:254px !important;
}

.about-screen{
  scroll-margin-top:254px !important;
  grid-template-rows:34% 66% !important;
}

/* Shorter About graphic band */
.about-screen-top{
  min-height:0 !important;
}

.about-screen-copy h2{
  font-size:clamp(40px,4vw,58px) !important;
}

.about-screen-copy p{
  font-size:clamp(23px,2.35vw,34px) !important;
}

/* Keep the person fully inside the shorter band */
.about-screen-person{
  height:100% !important;
}

.about-screen-person img{
  height:100% !important;
  max-height:100% !important;
}

/* More usable space for the story */
.about-screen-bottom{
  padding:18px 24px 18px !important;
}

.about-screen-story{
  justify-content:flex-start !important;
  padding-top:10px !important;
}

.about-screen-story .about-story-lead{
  margin-bottom:10px !important;
  font-size:clamp(17px,1.25vw,22px) !important;
}

.about-screen-story > p:not(.about-story-lead){
  margin-bottom:8px !important;
  font-size:clamp(12px,.92vw,15px) !important;
  line-height:1.36 !important;
}

.about-screen-story h3{
  margin-bottom:4px !important;
  font-size:clamp(14px,1vw,18px) !important;
}

.about-screen-story .about-team-link{
  margin-top:2px !important;
}

/* HOME target must also account for the real desktop header height */
#home.hero-reference{
  scroll-margin-top:254px !important;
}

@media(max-width:1100px){
  html{scroll-padding-top:110px !important;}
  .about-screen{scroll-margin-top:110px !important;}
  #home.hero-reference{scroll-margin-top:110px !important;}
}

@media(max-width:900px){
  html{scroll-padding-top:92px !important;}
  .about-screen{scroll-margin-top:92px !important;}
  #home.hero-reference{scroll-margin-top:92px !important;}
}


/* ===== ABOUT TARGET 2: match supplied screenshot =====
   Critical correction: do NOT reserve the full header height when jumping
   to About. The sticky header stays above; About starts immediately below it.
*/
@media (min-width:1101px){
  html{
    scroll-padding-top:0 !important;
  }

  #about.about-screen{
    /* screenshot target: entire About composition fits in one desktop view */
    height:calc(100vh - 0px) !important;
    min-height:600px !important;
    scroll-margin-top:0 !important;
    grid-template-rows:27% 73% !important;
  }

  #about .about-screen-top{
    min-height:0 !important;
    height:auto !important;
  }

  #about .about-screen-copy{
    top:50% !important;
    transform:translateY(-50%) !important;
  }

  #about .about-screen-copy h2{
    font-size:clamp(38px,3.7vw,56px) !important;
    margin-bottom:5px !important;
  }

  #about .about-screen-copy p{
    font-size:clamp(22px,2.1vw,31px) !important;
    line-height:1.12 !important;
  }

  #about .about-screen-person{
    height:96% !important;
    bottom:0 !important;
  }

  #about .about-screen-person img{
    height:100% !important;
    max-height:100% !important;
    width:auto !important;
  }

  #about .about-screen-bottom{
    padding:20px 24px 12px !important;
    min-height:0 !important;
  }

  #about .about-screen-story{
    max-width:780px !important;
    padding-top:4px !important;
    justify-content:flex-start !important;
  }

  #about .about-story-lead{
    font-size:clamp(17px,1.22vw,21px) !important;
    line-height:1.25 !important;
    margin:0 0 9px !important;
  }

  #about .about-screen-story > p:not(.about-story-lead){
    font-size:clamp(12px,.86vw,14px) !important;
    line-height:1.30 !important;
    margin:0 0 7px !important;
  }

  #about .about-screen-story h3{
    font-size:clamp(14px,.96vw,17px) !important;
    line-height:1.18 !important;
    margin:0 0 3px !important;
  }

  #about .about-team-link{
    margin-top:2px !important;
    font-size:14px !important;
  }
}


/* =========================================================
   HOME + ABOUT FINAL DESKTOP ALIGNMENT
   Target: supplied screenshots 2 and 4
========================================================= */

@media (min-width:1101px){

  :root{
    --desktop-header-h:254px;
  }

  html{
    scroll-padding-top:var(--desktop-header-h) !important;
  }

  /* ---------- HOME ---------- */
  #home.hero-reference{
    height:calc(100vh - var(--desktop-header-h)) !important;
    min-height:calc(100vh - var(--desktop-header-h)) !important;
    scroll-margin-top:var(--desktop-header-h) !important;
  }

  #home .hero-reference-inner,
  #home .hero-reference-person{
    height:calc(100vh - var(--desktop-header-h)) !important;
    min-height:calc(100vh - var(--desktop-header-h)) !important;
  }

  /* Center the complete Home copy vertically in the visible HERO area. */
  #home .hero-reference-inner{
    align-items:center !important;
  }

  #home .hero-reference-copy{
    align-self:center !important;
    padding-top:0 !important;
    padding-bottom:0 !important;
  }

  #home .hero-reference-copy h1{
    margin-top:0 !important;
    margin-bottom:18px !important;
    font-size:clamp(44px,3.75vw,66px) !important;
    line-height:.96 !important;
  }

  #home .hero-reference-copy h2{
    margin-top:0 !important;
    margin-bottom:18px !important;
    font-size:clamp(26px,2.15vw,36px) !important;
    line-height:1.12 !important;
  }

  #home .hero-reference-copy p{
    margin-top:0 !important;
    margin-bottom:22px !important;
    font-size:17px !important;
    line-height:1.38 !important;
  }

  #home .quote-button{
    margin-top:0 !important;
    min-height:54px !important;
  }

  #home .hero-reference-person img{
    height:100% !important;
    max-height:100% !important;
  }

  /* ---------- ABOUT ---------- */
  #about.about-screen{
    height:calc(100vh - var(--desktop-header-h)) !important;
    min-height:calc(100vh - var(--desktop-header-h)) !important;
    scroll-margin-top:var(--desktop-header-h) !important;

    /* Target capture: short graphic band + larger text area below */
    grid-template-rows:230px minmax(0,1fr) !important;
  }

  #about .about-screen-top{
    height:230px !important;
    min-height:230px !important;
  }

  #about .about-screen-copy{
    top:50% !important;
    transform:translateY(-50%) !important;
  }

  #about .about-screen-copy h2{
    margin:0 0 6px !important;
    font-size:52px !important;
    line-height:1 !important;
  }

  #about .about-screen-copy p{
    margin:0 !important;
    font-size:30px !important;
    line-height:1.10 !important;
  }

  #about .about-screen-person{
    height:100% !important;
  }

  #about .about-screen-person img{
    height:100% !important;
    max-height:100% !important;
    width:auto !important;
  }

  #about .about-screen-bottom{
    min-height:0 !important;
    padding:24px 24px 18px !important;
  }

  #about .about-screen-story{
    width:min(100%,760px) !important;
    max-width:760px !important;
    height:auto !important;
    margin:0 auto !important;
    padding-top:0 !important;
    justify-content:flex-start !important;
  }

  #about .about-story-lead{
    margin:0 0 11px !important;
    font-size:21px !important;
    line-height:1.26 !important;
  }

  #about .about-screen-story > p:not(.about-story-lead){
    margin:0 0 8px !important;
    font-size:15.5px !important;
    line-height:1.34 !important;
  }

  #about .about-screen-story h3{
    margin:0 0 4px !important;
    font-size:16.5px !important;
    line-height:1.22 !important;
  }

  #about .about-team-link{
    margin-top:5px !important;
    font-size:15px !important;
  }
}


/* =========================================================
   ABOUT + NAV FINAL CORRECTION
   1) No previous HOME content may remain visible above ABOUT.
   2) About story text uses the available white area more fully.
   3) Active menu underline follows the visible section.
========================================================= */

html{
    scroll-padding-top:0 !important;
}

/* JS handles the exact sticky-header offset. */
#home,
#about,
#services,
#products,
#gallery,
#contact{
    scroll-margin-top:0 !important;
}

/* ABOUT must begin immediately under the sticky header after navigation. */
#about.about-screen{
    scroll-margin-top:0 !important;
}

/* Keep the compact graphic strip but allow a larger story presentation. */
@media (min-width:1101px){
    #about.about-screen{
        grid-template-rows:230px minmax(0,1fr) !important;
    }

    #about .about-screen-bottom{
        padding:28px 28px 18px !important;
    }

    #about .about-screen-story{
        width:min(100%,900px) !important;
        max-width:900px !important;
        padding-top:0 !important;
    }

    #about .about-story-lead{
        font-size:24px !important;
        line-height:1.30 !important;
        margin-bottom:14px !important;
    }

    #about .about-screen-story > p:not(.about-story-lead){
        font-size:17px !important;
        line-height:1.46 !important;
        margin-bottom:10px !important;
    }

    #about .about-screen-story h3{
        font-size:18px !important;
        line-height:1.28 !important;
        margin-bottom:5px !important;
    }

    #about .about-team-link{
        font-size:16px !important;
        margin-top:7px !important;
    }
}

/* One source of truth for the yellow menu indicator. */
.hero-header nav a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-10px;
    width:0;
    height:2px;
    background:#FAB612;
    transition:width .18s ease;
}

.hero-header nav a.active::after{
    width:100%;
}


/* =========================================================
   SERVICES SCREEN
   Preserves approved HOME / ABOUT and follows same philosophy.
========================================================= */
.services-screen{
    background:#f3f4f5;
    color:#082f59;
}

.services-hero{
    position:relative;
    height:390px;
    overflow:hidden;
    background:
        linear-gradient(90deg, rgba(0,57,103,.90) 0%, rgba(0,75,126,.72) 45%, rgba(0,67,115,.38) 100%),
        url("../img/services-bg.jpg") center center / cover no-repeat;
}

.services-hero-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(90deg, rgba(0,48,88,.42), rgba(0,76,132,.08));
    pointer-events:none;
}

.services-hero-inner{
    position:relative;
    z-index:2;
    width:min(1120px, calc(100% - 56px));
    height:100%;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.services-hero-copy{
    position:relative;
    z-index:3;
    color:#fff;
    width:48%;
}

.services-hero-copy h2{
    margin:0 0 10px;
    color:#fff;
    font-size:58px;
    line-height:.98;
    font-weight:800;
    letter-spacing:-1px;
}

.services-hero-copy p{
    margin:0;
    color:#fff;
    font-size:26px;
    line-height:1.2;
    font-weight:400;
}

.services-person{
    position:absolute;
    right:20px;
    bottom:0;
    height:96%;
    width:auto;
    max-width:50%;
    object-fit:contain;
    object-position:bottom right;
    z-index:2;
}

.services-content{
    position:relative;
    padding:38px 28px 55px;
    background:
        linear-gradient(rgba(245,246,247,.94),rgba(245,246,247,.94)),
        url("../img/services-texture.jpg") center/cover repeat;
}

.services-content-inner{
    width:min(1120px,100%);
    margin:0 auto;
}

.services-content h3{
    margin:0 0 28px;
    text-align:center;
    color:#111;
    font-size:30px;
    line-height:1.15;
    font-weight:800;
}

.services-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:24px;
}

.service-card{
    overflow:hidden;
    background:#fff;
    border-radius:10px;
    box-shadow:0 7px 20px rgba(0,0,0,.10);
}

.service-image{
    height:190px;
    background:#d9dee3;
    overflow:hidden;
}

.service-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
}

.service-card-body{
    min-height:105px;
    padding:15px 18px 17px;
}

.service-card h4{
    margin:0 0 8px;
    color:#111;
    font-size:18px;
    line-height:1.15;
    font-weight:800;
}

.service-card a{
    color:#064e86;
    font-size:14px;
    text-decoration:none;
}

.service-card a:hover{
    text-decoration:underline;
}

@media (max-width:900px){
    .services-hero{
        height:440px;
    }
    .services-hero-inner{
        width:min(100% - 32px,720px);
    }
    .services-hero-copy{
        width:54%;
    }
    .services-hero-copy h2{
        font-size:48px;
    }
    .services-hero-copy p{
        font-size:21px;
    }
    .services-person{
        right:-15px;
        height:87%;
        max-width:56%;
    }
    .services-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:620px){
    .services-hero{
        height:520px;
    }
    .services-hero-inner{
        align-items:flex-start;
        padding-top:55px;
    }
    .services-hero-copy{
        width:100%;
        z-index:4;
    }
    .services-hero-copy h2{
        font-size:44px;
    }
    .services-hero-copy p{
        font-size:20px;
    }
    .services-person{
        right:-42px;
        height:68%;
        max-width:82%;
    }
    .services-content{
        padding:32px 18px 45px;
    }
    .services-grid{
        grid-template-columns:1fr;
        gap:18px;
    }
    .service-image{
        height:210px;
    }
}


/* =========================================================
   HERO VIDEO — DESKTOP ONLY
   Desktop: assets/img/hero3.mp4 replaces the static hero background.
   Mobile/tablet <= 900px: preserve the approved static-image hero.
========================================================= */
#home.hero-reference{
    background-image:none !important;
}

#home .hero-bg-video{
    display:block !important;
    position:absolute !important;
    inset:0 !important;

    z-index:0 !important;
    pointer-events:none !important;

  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}

#home.hero-reference::after{
    z-index:1 !important;
}

#home .hero-reference-inner,
#home .hero-reference-person{
    z-index:2 !important;
}

@media (min-width:901px){
    #home .hero-bg-image{
        display:none !important;
    }
}

@media (max-width:900px){
    #home.hero-reference{
        background-image:none !important;
        background-position:center !important;
        background-size:cover !important;
        background-repeat:no-repeat !important;
    }
    #home .hero-bg-video{
        display:none !important;
    
  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}
}


/* =========================================================
   HERO VIDEO DESKTOP CLEANUP
   Desktop: video is the full visual hero.
   Hide the independent person/right-side hero artwork.
   Mobile/tablet behavior remains unchanged.
========================================================= */
@media (min-width:901px){
    #home .hero-reference-person,
    #home .hero-person-image,
    #home .hero-reference-person img{
        display:none !important;
    }

    #home .hero-reference-inner{
        grid-template-columns:1fr !important;
    }

    #home .hero-reference-copy{
        width:min(100%,620px) !important;
        max-width:620px !important;
    }
}


/* =========================================================
   COMPACT DESKTOP HEADER
   Reduce header/logo approximately 40% so HERO gains viewport.
   Mobile remains unchanged.
========================================================= */
@media (min-width:901px){
    .hero-header{
        min-height:0 !important;
        height:154px !important;
        padding:0 !important;
    }

    .hero-header .hero-header-inner,
    .hero-header .header-inner,
    .hero-header .container{
        height:154px !important;
        min-height:154px !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
        display:flex !important;
        align-items:center !important;
    }

    .hero-header .brand,
    .hero-header .logo,
    .hero-header .site-logo{
        height:auto !important;
        margin-top:0 !important;
        margin-bottom:0 !important;
    }

    .hero-header .brand img,
    .hero-header .logo img,
    .hero-header .site-logo img,
    .hero-header img.logo{
        max-height:138px !important;
        width:auto !important;
        object-fit:contain !important;
    }

    .hero-header nav{
        align-self:center !important;
        margin-top:0 !important;
        margin-bottom:0 !important;
    }

    /* Hero uses the extra vertical space recovered from header. */
    #home.hero-reference,
    #home{
        min-height:calc(100vh - 154px) !important;
    }
}


/* =========================================================
   DESKTOP HEADER FINAL COMPACT
   Actual desktop target: ~90px high.
   Logo reduced proportionally.
========================================================= */
@media (min-width:901px){
    .hero-header{
        height:92px !important;
        min-height:92px !important;
        padding:0 !important;
    }

    .hero-header .header-inner,
    .hero-header .wrap{
        height:92px !important;
        min-height:92px !important;
        padding-top:0 !important;
        padding-bottom:0 !important;
        display:flex !important;
        align-items:center !important;
    }

    .hero-header .logo img,
    .hero-header .logo-vertical2 img,
    .hero-header .brand img{
        width:160px !important;
        max-width:160px !important;
        max-height:82px !important;
        height:auto !important;
        object-fit:contain !important;
    }

    .hero-header nav{
        margin:0 !important;
        align-self:center !important;
    }

    /* The hero now receives the space recovered from the header. */
    #home.hero-reference,
    #home .hero-reference-inner{
        min-height:calc(100vh - 92px) !important;
        height:calc(100vh - 92px) !important;
    }
}


/* =========================================================
   FINAL DESKTOP HEADER + HERO VIDEO
   This block is the final source of truth.
========================================================= */

@media (min-width:901px){

  /* MENU BAR: fixed compact height */
  body > header.header.hero-header{
    position:sticky !important;
    top:0 !important;
    z-index:1000 !important;

    height:92px !important;
    min-height:92px !important;
    max-height:92px !important;

    padding:0 !important;
    margin:0 !important;

    background:#154A99 !important;
    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  body > header.header.hero-header > .wrap.header-inner{
    width:min(1180px, calc(100% - 40px)) !important;

    height:92px !important;
    min-height:92px !important;
    max-height:92px !important;

    margin:0 auto !important;
    padding:0 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;

    overflow:hidden !important;
    box-sizing:border-box !important;
  }

  /* LOGO: proportional to compact menu bar */
  body > header.header.hero-header .logo.logo-vertical2{
    width:auto !important;
    height:82px !important;
    min-height:0 !important;
    max-height:82px !important;

    margin:0 !important;
    padding:0 !important;

    display:flex !important;
    align-items:center !important;
    flex:0 0 auto !important;
    overflow:hidden !important;
  }

body > header.header.hero-header .logo.logo-vertical2 img{
    width:auto !important;
    height:88px !important;
    max-height:88px !important;
    max-width:190px !important;
    object-fit:contain !important;
}

  body > header.header.hero-header nav{
    height:92px !important;
    min-height:92px !important;
    max-height:92px !important;

    margin:0 !important;
    padding:0 !important;

    display:flex !important;
    align-items:center !important;
    gap:27px !important;
    overflow:visible !important;
  }

  body > header.header.hero-header nav a{
    margin:0 !important;
    padding:0 !important;
    line-height:1 !important;
  }

  /* HERO: video fills all remaining desktop viewport */
  #home.hero-reference{
    position:relative !important;

    height:calc(100dvh - 126px) !important;
    min-height:calc(100dvh - 126px) !important;
    max-height:none !important;

    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    background:#000 !important;
  }

  #home .hero-bg-video{
    display:block !important;
    position:absolute !important;
    inset:0 !important;

    background:#000 !important;
    pointer-events:none !important;
    z-index:0 !important;
  
  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}

  #home .hero-bg-image{
    display:none !important;
  }

  #home .hero-reference-inner{
    height:100% !important;
    min-height:100% !important;
  }

  /* There is no hero person in desktop Hero. */
  #home .hero-reference-person,
  #home .hero-person-image{
    display:none !important;
  }
}

/* Mobile/tablet: keep the approved static hero image. */
@media (max-width:900px){
  #home.hero-reference{
    background:#1D1D1B url("../img/hero-background.jpg") center center / cover no-repeat !important;
  }

  #home .hero-bg-video{
    display:none !important;
  
  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}

  #home .hero-bg-image{
    display:none !important;
  }

  #home .hero-reference-person,
  #home .hero-person-image{
    display:none !important;
  }
}


/* =========================================================
   HERO TUNING — text lower + full head visible in desktop video
========================================================= */
@media (min-width:901px){

  /* Lower the copy a little and reduce it slightly */
  #home .hero-reference-inner{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    padding-top:110px !important;
  }

  #home .hero-reference-copy{
    width:min(100%,600px) !important;
    max-width:600px !important;
    padding:0 !important;
    margin:0 !important;
  }

  #home .hero-reference-copy h1{
    font-size:clamp(40px,3.35vw,58px) !important;
    line-height:.98 !important;
    margin:0 0 18px !important;
  }

  #home .hero-reference-copy h2{
    font-size:clamp(24px,1.95vw,32px) !important;
    line-height:1.12 !important;
    margin:0 0 18px !important;
  }

  #home .hero-reference-copy p{
    font-size:16px !important;
    line-height:1.40 !important;
    margin:0 0 22px !important;
    max-width:440px !important;
  }

  #home .quote-button{
    min-height:50px !important;
    min-width:190px !important;
    font-size:14px !important;
  }

  /* Single original video: fills the complete HERO. */
  #home .hero-bg-video{
  
  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}
}

@media (min-width:1400px){
  #home .hero-reference-inner{
    padding-top:125px !important;
  }

  #home .hero-bg-video{
  
  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}
}


/* HERO VIDEO — brighter / less darkened on desktop */
@media (min-width:901px){
  #home .hero-bg-video{
    opacity:1 !important;
    filter:brightness(1.12) contrast(1.02) !important;
  
  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}

  #home .hero-dark-overlay{
    background:linear-gradient(
      90deg,
      rgba(0,0,0,.48) 0%,
      rgba(0,0,0,.30) 34%,
      rgba(0,0,0,.10) 58%,
      rgba(0,0,0,0) 100%
    ) !important;
  }
}


/* =========================================================
   HERO FINAL TUNING
   - Copy higher so CTA remains visible.
   - Brighter video.
   - Darkness restricted mainly to the text area so the
     welding effect remains clearly visible.
========================================================= */
@media (min-width:901px){

  #home .hero-reference-inner{
    padding-top:58px !important;
    padding-bottom:28px !important;
    align-items:flex-start !important;
  }

  #home .hero-reference-copy{
    width:min(100%,590px) !important;
    max-width:590px !important;
  }

  #home .hero-reference-copy h1{
    font-size:clamp(39px,3.25vw,56px) !important;
    margin-bottom:15px !important;
  }

  #home .hero-reference-copy h2{
    font-size:clamp(23px,1.9vw,31px) !important;
    margin-bottom:14px !important;
  }

  #home .hero-reference-copy p{
    font-size:15.5px !important;
    line-height:1.36 !important;
    margin-bottom:18px !important;
    max-width:430px !important;
  }

  #home .quote-button{
    display:inline-flex !important;
    min-height:48px !important;
    min-width:185px !important;
    margin-top:0 !important;
  }

  /* Increase overall video presence without crushing the welding highlights. */
  #home .hero-bg-video{
    opacity:1 !important;
    filter:brightness(1.22) contrast(1.03) saturate(1.06) !important;
  
  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}

  /* Strong enough for copy only; center/right stays almost untouched. */
  #home .hero-dark-overlay{
    background:linear-gradient(
      90deg,
      rgba(0,0,0,.48) 0%,
      rgba(0,0,0,.38) 22%,
      rgba(0,0,0,.18) 38%,
      rgba(0,0,0,.04) 50%,
      rgba(0,0,0,0) 60%,
      rgba(0,0,0,0) 100%
    ) !important;
  }
}


/* =========================================================
   MOBILE MENU FIX
   The hamburger was white/blank because inherited mobile
   header/button rules were conflicting with the compact header.
========================================================= */
@media (max-width:900px){

  body > header.header.hero-header{
    position:sticky !important;
    top:0 !important;
    z-index:1000 !important;
    height:82px !important;
    min-height:82px !important;
    max-height:82px !important;
    padding:0 !important;
    overflow:visible !important;
    background:#154A99 !important;
  }

  body > header.header.hero-header > .wrap.header-inner{
    position:relative !important;
    height:82px !important;
    min-height:82px !important;
    max-height:82px !important;
    padding:0 16px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    overflow:visible !important;
  }

  body > header.header.hero-header .logo.logo-vertical2{
    height:72px !important;
    max-height:72px !important;
    display:flex !important;
    align-items:center !important;
  }

  body > header.header.hero-header .logo.logo-vertical2 img{
    display:block !important;
    width:auto !important;
    height:66px !important;
    max-height:66px !important;
    max-width:125px !important;
    object-fit:contain !important;
  }

  body > header.header.hero-header .menu-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex:0 0 46px !important;
    width:46px !important;
    height:46px !important;
    min-width:46px !important;
    min-height:46px !important;
    margin:0 !important;
    padding:0 !important;
    border:2px solid rgba(255,255,255,.9) !important;
    border-radius:6px !important;
    background:transparent !important;
    color:#fff !important;
    font-family:Arial,sans-serif !important;
    font-size:29px !important;
    font-weight:400 !important;
    line-height:1 !important;
    text-indent:0 !important;
    opacity:1 !important;
    visibility:visible !important;
    cursor:pointer !important;
    appearance:none !important;
    -webkit-appearance:none !important;
    z-index:1002 !important;
  }

  body > header.header.hero-header nav#mainNav{
    display:none !important;
    position:absolute !important;
    top:82px !important;
    left:12px !important;
    right:12px !important;
    z-index:1001 !important;
    height:auto !important;
    min-height:0 !important;
    max-height:calc(100vh - 94px) !important;
    overflow-y:auto !important;
    margin:0 !important;
    padding:14px !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    background:#154A99 !important;
    border:0 !important;
    border-radius:0 0 8px 8px !important;
    box-shadow:0 12px 25px rgba(0,0,0,.25) !important;
  }

  body > header.header.hero-header nav#mainNav.open,
  body > header.header.hero-header nav#mainNav.active{
    display:flex !important;
  }

  body > header.header.hero-header nav#mainNav a{
    display:block !important;
    width:100% !important;
    padding:13px 10px !important;
    color:#fff !important;
    font-size:14px !important;
    line-height:1.2 !important;
    border-bottom:1px solid rgba(255,255,255,.18) !important;
  }

  body > header.header.hero-header nav#mainNav a:last-child{
    border-bottom:0 !important;
  }

  body > header.header.hero-header nav#mainNav a::after{
    display:none !important;
  }
}


/* =========================================================
   MEET THE TEAM — 2026-08-31
   Content based on McLaughlin's current Meet the Team page.
   Photo panels intentionally remain placeholders until the
   original approved portraits are supplied as local assets.
========================================================= */
.team-section{
  position:relative;
  font-family:'Open Sans',Arial,sans-serif;
  overflow:hidden;
  padding:0;
  background:
    linear-gradient(135deg,rgba(21,74,153,.035),transparent 45%),
    #fff;
  scroll-margin-top:92px;
}
.team-section::before{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  border:70px solid rgba(250,182,18,.08);
  border-radius:50%;
  right:-210px;
  top:130px;
  pointer-events:none;
}
.team-heading{
  display:block;
  width:min(calc(100% - 64px),1180px);
  max-width:1180px;
  margin:0 auto;
  padding:18px 0 4px;
}
.team-kicker{display:none;}
.team-heading h2{
  margin:0 0 5px;
  color:#154A99;
  font-size:30px;
  line-height:1.05;
  font-weight:800;
}
.team-heading p{
  max-width:none;
  margin:0;
  color:#4d5966;
  font-size:14px;
  line-height:1.35;
}

@media (max-width:900px){
    
}




@media (min-width:901px){
  /* Jim uses the same typography and brand treatment as Ashley.
     Space is allowed to grow instead of shrinking Jim's text to fit one screen. */
  .team-heading + .team-list .team-member:first-child{
    min-height:auto;
    height:auto;
    padding:46px 0;
    align-items:center;
  }
  .team-heading + .team-list .team-member:first-child .team-photo{
    height:480px;
    min-height:0;
    align-self:center;
  }
  .team-heading + .team-list .team-member:first-child .team-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
  }
  .team-heading + .team-list .team-member:first-child .team-copy{
    align-self:center;
  }
  .team-heading + .team-list .team-member:first-child .team-title{
    margin-bottom:18px;
    padding-bottom:14px;
  }
  .team-heading + .team-list .team-member:first-child .team-title span{
    margin-bottom:8px;
    font-size:14px;
    letter-spacing:1.8px;
  }
  .team-heading + .team-list .team-member:first-child .team-title h3{
    font-size:44px;
    line-height:1.04;
  }
  .team-heading + .team-list .team-member:first-child .team-copy p{
    margin-bottom:18px;
    font-size:18px;
    line-height:1.52;
  }
  .team-heading + .team-list .team-member:first-child .team-copy p:last-child{
    margin-bottom:0;
  }
  .team-heading + .team-list .team-member:first-child .team-highlights{
    margin:16px 0;
    padding:16px 22px;
  }
  .team-heading + .team-list .team-member:first-child .team-highlights h4{
    margin-bottom:13px;
    font-size:19px;
  }
  .team-heading + .team-list .team-member:first-child .team-highlights li{
    margin-bottom:5px;
    font-size:14px;
    line-height:1.38;
  }
}


@media (min-width:901px){
  .team-member-reverse .team-title{
    margin-bottom:18px;
    padding-bottom:14px;
  }

  .team-member-reverse .team-title span{
    margin-bottom:8px;
    font-size:14px;
    letter-spacing:1.8px;
  }

  .team-member-reverse .team-title h3{
    font-size:44px;
    line-height:1.04;
  }

  .team-member-reverse .team-copy p{
    margin-bottom:18px;
    font-size:18px;
    line-height:1.52;
  }

  .team-member-reverse .team-copy p:last-child{
    margin-bottom:0;
  }
}


@media (min-width:901px){
  /* Less empty space between desktop screens */
  #about.about-section{
    min-height:auto !important;
    height:auto !important;
    padding-top:46px !important;
    padding-bottom:46px !important;
  }

  .team-list .team-member.team-member-reverse{
    min-height:auto !important;
    height:auto !important;
    padding-top:46px !important;
    padding-bottom:46px !important;
    align-items:center !important;
  }

  .team-list .team-member.team-member-reverse .team-photo,
  .team-list .team-member.team-member-reverse .team-copy{
    align-self:center !important;
  }
}

.team-list{
  position:relative;
  z-index:1;
  display:grid;
  gap:0;
  width:min(calc(100% - 64px),1180px);
  max-width:1180px;
  margin:0 auto;
}
.team-member{
  display:grid;
  grid-template-columns:minmax(280px,380px) minmax(0,1fr);
  gap:54px;
  align-items:center;
  min-height:calc(100dvh - 92px);
  padding:34px 0;
}
.team-member-reverse{
  grid-template-columns:minmax(0,1fr) minmax(280px,380px);
}
.team-member-reverse .team-photo{order:2}
.team-member-reverse .team-copy{order:1}
.team-photo{
  min-height:480px;
  position:relative;
  overflow:hidden;
  background:#154A99;
  box-shadow:0 20px 50px rgba(29,29,27,.14);
}
.team-photo::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:9px;
  background:#FAB612;
}
.team-photo-placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    linear-gradient(145deg,rgba(255,255,255,.07),transparent 55%),
    #154A99;
}
.team-photo-placeholder span{
  color:rgba(255,255,255,.16);
  font-size:38px;
  line-height:.95;
  font-weight:800;
  text-align:center;
  letter-spacing:.04em;
}
.team-title{
  margin-bottom:16px;
  padding-bottom:14px;
  border-bottom:1px solid #d9dfe6;
}
.team-title span{
  display:block;
  margin-bottom:7px;
  color:#FAB612;
  font-size:13px;
  font-weight:800;
  letter-spacing:.12em;
}
.team-title h3{
  margin:0;
  color:#154A99;
  font-size:clamp(30px,3vw,44px);
  line-height:1;
}
.team-copy p{
  margin:0 0 12px;
  color:#4c5965;
  font-size:15px;
  line-height:1.48;
}
.team-highlights{
  margin:16px 0;
  padding:16px 22px;
  border-left:5px solid #FAB612;
  background:#f4f6f8;
}
.team-highlights h4{
  margin:0 0 13px;
  color:#154A99;
  font-size:19px;
}
.team-highlights ul{
  margin:0;
  padding-left:20px;
}
.team-highlights li{
  margin:0 0 5px;
  color:#4c5965;
  font-size:14px;
  line-height:1.38;
}
.team-highlights li:last-child{margin-bottom:0}

@media(max-width:900px){
  .team-section{
    padding:62px 0 68px;
    scroll-margin-top:82px;
  }
  .team-heading{
    margin-bottom:38px;
  }
  .team-heading p{
    font-size:16px;
  }
  .team-list{
    gap:55px;
  }
  .team-member,
  .team-member-reverse{
    grid-template-columns:1fr;
    gap:28px;
    min-height:0;
    padding:0;
  }
  .team-member-reverse .team-photo,
  .team-member-reverse .team-copy{
    order:initial;
  }
  .team-photo{
    width:min(100%,430px);
    min-height:380px;
  }
}
.team-photo {
    height: 480px;
    min-height: 0;
}

.team-photo img {
    width: 100%;
    height: 100%;
    min-height: 0;
    display: block;
object-fit:cover !important;
object-position:center top !important;
}

@media (max-width: 900px) {
    .team-photo {
        height: 400px;
    }

    .team-photo img {
        height: 100%;
        min-height: 0;
    }
}
/* =========================================================
   HERO 1440P — LIGHT / WELDING VISIBILITY TUNING
========================================================= */
@media (min-width:901px){

  #home .hero-bg-video{
    opacity:1 !important;
    filter:brightness(1.14) contrast(1.02) saturate(1.04) !important;
  
  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}

  #home .hero-dark-overlay{
    background:linear-gradient(
      90deg,
      rgba(0,0,0,.44) 0%,
      rgba(0,0,0,.38) 14%,
      rgba(0,0,0,.27) 25%,
      rgba(0,0,0,.13) 36%,
      rgba(0,0,0,.035) 46%,
      rgba(0,0,0,0) 55%,
      rgba(0,0,0,0) 100%
    ) !important;
  }

  #home .hero-reference-copy{
    text-shadow:0 2px 7px rgba(0,0,0,.42);
  }

  #home .hero-reference-copy .quote-button{
    text-shadow:none;
  }
}
/* HERO VIDEO - ajuste final de brillo y overlay */
@media (min-width: 901px) {

    #home .hero-bg-video {
        opacity:1 !important;
        filter:
            brightness(1.20)
            contrast(1.02)
            saturate(1.05) !important;
    
  left:50% !important;
  right:auto !important;
  width:auto !important;
  min-width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
  transform:translateX(-50%) !important;
}

    #home .hero-dark-overlay {
        background: linear-gradient(
            90deg,
            rgba(0,0,0,.44) 0%,
            rgba(0,0,0,.38) 14%,
            rgba(0,0,0,.25) 24%,
            rgba(0,0,0,.10) 34%,
            rgba(0,0,0,.025) 43%,
            rgba(0,0,0,0) 50%,
            rgba(0,0,0,0) 100%
        ) !important;
    }

    #home .hero-reference-copy {
        text-shadow: 0 2px 7px rgba(0,0,0,.42);
    }

    #home .hero-reference-copy .quote-button {
        text-shadow: none;
    }
}


/* =========================================================
   ABOUT — IMAGE LEFT / TEXT RIGHT
   2026-09-04
   This is the only active About markup in index.php.
========================================================= */
#about.about-screen.about-side-layout{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  min-height:calc(100dvh - 92px) !important;
  margin:0 !important;
  padding:38px 0 !important;
  overflow:hidden !important;
  background:#fff !important;
  scroll-margin-top:92px !important;
}

#about .about-side-grid{
  width:min(calc(100% - 64px),1180px) !important;
  max-width:1180px !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:380px minmax(0,1fr) !important;
  gap:54px !important;
  align-items:center !important;
}

#about .about-side-image{
  width:100% !important;
  min-width:0 !important;
}

#about .about-side-image img{
  display:block !important;
  width:100% !important;
  height:auto !important;
  max-width:100% !important;
  max-height:none !important;
  object-fit:contain !important;
  object-position:center top !important;
}

#about .about-side-copy{
  min-width:0 !important;
  width:100% !important;
  color:#173a5e !important;
}

#about .about-side-copy h2{
  margin:0 0 8px !important;
  color:#154A99 !important;
  font-size:clamp(42px,4vw,60px) !important;
  line-height:1 !important;
  font-weight:800 !important;
}

#about .about-side-subtitle{
  margin:0 0 24px !important;
  color:#154A99 !important;
  font-size:clamp(24px,2.2vw,34px) !important;
  line-height:1.15 !important;
  font-weight:400 !important;
}

#about .about-side-copy .about-story-lead{
  margin:0 0 18px !important;
  color:#12375c !important;
  font-size:21px !important;
  line-height:1.36 !important;
  font-weight:600 !important;
}

#about .about-side-copy > p:not(.about-side-subtitle):not(.about-story-lead){
  margin:0 0 15px !important;
  color:#173a5e !important;
  font-size:16px !important;
  line-height:1.52 !important;
}

#about .about-side-copy h3{
  margin:20px 0 7px !important;
  color:#12375c !important;
  font-size:18px !important;
  line-height:1.3 !important;
}

#about .about-side-copy .about-team-link{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  margin-top:10px !important;
  color:#154A99 !important;
  font-size:16px !important;
  font-weight:700 !important;
}

@media (max-width:900px){
  #about.about-screen.about-side-layout{
    min-height:0 !important;
    padding:38px 0 50px !important;
  }

#about .about-side-grid{
    width:min(calc(100% - 32px),720px) !important;
    max-width:720px !important;
    margin:0 auto !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:30px !important;
    align-items:start !important;
  }


}


/* =========================================================
   ABOUT / TEAM SPACING — 2026-09-04
   Small Meet the Team link centered under About image.
   Team section starts closer to About.
========================================================= */
@media (min-width:901px){
  #about .about-side-image .about-team-link-image{
    display:flex !important;
    width:max-content !important;
    margin:16px auto 0 !important;
    justify-content:center !important;
    align-items:center !important;
  }

  #about.about-screen.about-side-layout{
    padding-bottom:18px !important;
  }

  #team.team-section{
    padding:0 !important;
  }
}

@media (max-width:900px){
  #about .about-side-image .about-team-link-image{
    display:flex !important;
    width:max-content !important;
    margin:14px auto 0 !important;
    justify-content:center !important;
    align-items:center !important;
  }
}


/* =========================================================
   ABOUT DROPDOWN + ABOUT IMAGE LINKS — 2026-09-04
========================================================= */

/* Two centered links below the About image */
#about .about-image-links{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:30px !important;
  margin:16px auto 0 !important;
}

#about .about-image-links .about-team-link{
  width:auto !important;
  margin:0 !important;
  white-space:nowrap !important;
}

/* ABOUT dropdown in desktop navigation */
@media (min-width:901px){
  body > header.header.hero-header nav#mainNav .nav-dropdown{
    position:relative !important;
    height:92px !important;
    display:flex !important;
    align-items:center !important;
    overflow:visible !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-head{
    height:92px !important;
    display:flex !important;
    align-items:center !important;
    gap:7px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-head > a{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    height:92px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:20px !important;
    height:28px !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#fff !important;
    font-size:20px !important;
    line-height:1 !important;
    cursor:pointer !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-menu{
    display:none !important;
    position:absolute !important;
    top:92px !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    min-width:220px !important;
    padding:0 !important;
    background:#fff !important;
    box-shadow:0 10px 24px rgba(0,0,0,.16) !important;
    z-index:1200 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown.open .nav-dropdown-menu,
  body > header.header.hero-header nav#mainNav .nav-dropdown:hover .nav-dropdown-menu{
    display:block !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-menu a{
    display:block !important;
    width:100% !important;
    padding:15px 18px !important;
    color:#1D1D1B !important;
    background:#fff !important;
    font-size:14px !important;
    font-weight:700 !important;
    text-transform:none !important;
    line-height:1.2 !important;
    white-space:nowrap !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-menu a:hover{
    background:#f5f7fa !important;
    color:#154A99 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-menu a::after{
    display:none !important;
  }

  /* Active yellow line remains under About Us itself */
  body > header.header.hero-header nav#mainNav .nav-dropdown-head > a.active::after{
    width:100% !important;
  }
}

/* Mobile: About submenu stays inside the hamburger panel */
@media (max-width:900px){
  body > header.header.hero-header nav#mainNav .nav-dropdown{
    width:100% !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-head{
    display:flex !important;
    align-items:center !important;
    width:100% !important;
    border-bottom:1px solid rgba(255,255,255,.18) !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-head > a{
    flex:1 1 auto !important;
    border-bottom:0 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-toggle{
    flex:0 0 48px !important;
    width:48px !important;
    height:44px !important;
    padding:0 !important;
    border:0 !important;
    background:transparent !important;
    color:#fff !important;
    font-size:22px !important;
    cursor:pointer !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-menu{
    display:none !important;
    width:100% !important;
    padding:0 0 0 18px !important;
    background:rgba(0,0,0,.10) !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown.open .nav-dropdown-menu{
    display:block !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-menu a{
    padding:12px 10px !important;
    font-size:13px !important;
  }

  #about .about-image-links{
    gap:20px !important;
    flex-wrap:wrap !important;
  }
}

@media (min-width:901px){
  body > header.header.hero-header{
    overflow:visible !important;
  }

  body > header.header.hero-header > .wrap.header-inner{
    overflow:visible !important;
  }
}



/* ABOUT DROPDOWN — FINAL CLIPPING FIX */
@media (min-width:901px){
  body > header.header.hero-header,
  body > header.header.hero-header > .wrap.header-inner,
  body > header.header.hero-header nav#mainNav{
    overflow:visible !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown{
    position:relative !important;
    overflow:visible !important;
    z-index:1300 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-menu{
    position:absolute !important;
    top:92px !important;
    left:50% !important;
    transform:translateX(-50%) !important;
    min-width:220px !important;
    z-index:5000 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown.open .nav-dropdown-menu,
  body > header.header.hero-header nav#mainNav .nav-dropdown:hover .nav-dropdown-menu{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
  }
}


/* =========================================================
   FULL NAVIGATION — APPROVED STRUCTURE 2026-09-04
   About / Services / Thermal Spray Equipment dropdowns.
   Gallery and Get a Quote preserved.
========================================================= */
@media (min-width:901px){
  body > header.header.hero-header nav#mainNav{
    gap:18px !important;
  }

  body > header.header.hero-header nav#mainNav > a,
  body > header.header.hero-header nav#mainNav .nav-dropdown-head > a{
    font-size:12px !important;
    white-space:nowrap !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-menu{
    left:0 !important;
    transform:none !important;
    min-width:245px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-services .nav-dropdown-menu{
    min-width:285px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .nav-dropdown-menu{
    min-width:255px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-menu a{
    padding:15px 16px !important;
    line-height:1.35 !important;
    white-space:normal !important;
  }

  body > header.header.hero-header nav#mainNav .nav-has-children{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:24px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-has-children span{
    flex:0 0 auto !important;
    font-size:25px !important;
    line-height:1 !important;
    font-weight:400 !important;
  }
}

@media (max-width:900px){
  body > header.header.hero-header nav#mainNav .nav-dropdown-menu{
    padding-left:18px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-has-children{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:16px !important;
  }
}


/* =========================================================
   NAV DROPDOWN CHEVRONS — CLEAN VERSION 2026-09-04
========================================================= */
body > header.header.hero-header nav#mainNav .nav-dropdown-head{
  gap:4px !important;
}

body > header.header.hero-header nav#mainNav .nav-dropdown-toggle{
  width:15px !important;
  min-width:15px !important;
  height:24px !important;
}

body > header.header.hero-header nav#mainNav .nav-chevron{
  display:block !important;
  width:7px !important;
  height:7px !important;
  border-right:1.5px solid currentColor !important;
  border-bottom:1.5px solid currentColor !important;
  transform:rotate(45deg) translateY(-2px) !important;
  transform-origin:center !important;
  transition:transform .18s ease !important;
}

body > header.header.hero-header nav#mainNav .nav-dropdown.open .nav-chevron{
  transform:rotate(225deg) translate(-1px,-1px) !important;
}

@media (max-width:900px){
  body > header.header.hero-header nav#mainNav .nav-dropdown-toggle{
    flex:0 0 42px !important;
    width:42px !important;
    height:44px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-chevron{
    width:8px !important;
    height:8px !important;
  }
}


/* =========================================================
   CONSULTING & TRAINING SERVICES — 2026-09-04
========================================================= */
#consulting-training.consulting-training{
  position:relative;
  padding:0 0 84px;
  background:#eef1f3;
  color:#173a5e;
  scroll-margin-top:92px;
}


#consulting-training .consulting-training-banner{
  position:relative;
  height:190px;
  overflow:hidden;
  background:linear-gradient(90deg,#154A99 0%,#2f6c9d 55%,#82a8bf 100%);
}

#consulting-training .consulting-training-banner-inner{
  position:relative;
  width:min(calc(100% - 64px),1180px);
  height:100%;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
}

#consulting-training .consulting-training-banner h2{
  position:relative;
  z-index:2;
  max-width:760px;
  margin:0;
  color:#fff;
  font-size:clamp(32px,2.8vw,46px);
  line-height:1.08;
  font-weight:700;
}

#consulting-training .consulting-training-character{
  position:absolute;
  z-index:1;
  right:0;
  bottom:0;
  width:auto;
  height:178px;
  max-width:42%;
  object-fit:contain;
  object-position:center bottom;
  pointer-events:none;
}

#consulting-training .consulting-training-grid{
  padding-top:54px;
}

#consulting-training .consulting-training-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:minmax(320px,430px) minmax(0,1fr);
  gap:52px;
  align-items:start;
}

#consulting-training .consulting-training-media img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}

#consulting-training .consulting-training-links{
  display:flex;
  justify-content:space-around;
  gap:24px;
  padding:34px 12px 0;
}

#consulting-training .consulting-training-links a{
  color:#154A99;
  font-size:14px;
  font-weight:600;
}


#consulting-training .consulting-training-intro{
  max-width:760px;
  margin:0 0 30px;
  color:#59636d;
  font-size:17px;
  line-height:1.65;
}

#consulting-training .consulting-training-copy h3{
  margin:0 0 28px;
  color:#154A99;
  font-size:clamp(28px,2.4vw,38px);
  line-height:1.15;
  font-weight:600;
}

#consulting-training .consulting-accordion{
  display:grid;
  gap:18px;
}

#consulting-training .consulting-item{
  overflow:hidden;
  background:#fff;
}

#consulting-training .consulting-trigger{
  width:100%;
  min-height:54px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:14px 18px 14px 22px;
  border:0;
  border-radius:0;
  background:#173f70;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:16px;
  line-height:1.35;
  font-weight:600;
  text-align:left;
  cursor:pointer;
}

#consulting-training .consulting-trigger:hover,
#consulting-training .consulting-item.open .consulting-trigger{
  background:#FAB612;
  color:#fff;
}

#consulting-training .consulting-symbol{
  flex:0 0 auto;
  font-size:24px;
  line-height:1;
  font-weight:400;
}

#consulting-training .consulting-panel{
  display:none;
  background:#fff;
}

#consulting-training .consulting-item.open .consulting-panel{
  display:block;
}

#consulting-training .consulting-panel-inner{
  padding:18px 20px 20px;
  color:#4e5358;
  font-size:16px;
  line-height:1.65;
}

#consulting-training .consulting-panel-inner p{
  margin:0 0 12px;
}

#consulting-training .consulting-panel-inner p:last-child{
  margin-bottom:0;
}

#consulting-training .consulting-panel-inner ul{
  margin:10px 0 0 24px;
  padding:0;
}

#consulting-training .consulting-panel-inner li{
  margin:3px 0;
}

@media (max-width:900px){
  #consulting-training.consulting-training{
    padding:0 0 62px;
    scroll-margin-top:82px;
  }

  #consulting-training .consulting-training-banner{
    height:150px;
  }

  #consulting-training .consulting-training-banner-inner{
    width:min(calc(100% - 32px),720px);
  }

  #consulting-training .consulting-training-banner h2{
    max-width:62%;
    font-size:clamp(25px,7vw,34px);
  }

  #consulting-training .consulting-training-character{
    right:-18px;
    height:142px;
    max-width:46%;
  }

  #consulting-training .consulting-training-grid{
    padding-top:38px;
  }

  #consulting-training .consulting-training-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:38px;
  }

  #consulting-training .consulting-training-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #consulting-training .consulting-training-copy h3{
    font-size:27px;
  }

  #consulting-training .consulting-training-intro,
  #consulting-training .consulting-panel-inner{
    font-size:15px;
  }

  #consulting-training .consulting-trigger{
    font-size:14px;
  }
}


/* =========================================================
   CONSULTING & TRAINING — COMPACT VIEW + CENTERED IMAGE
========================================================= */
@media (min-width:901px){
  #consulting-training.consulting-training{
    padding:42px 0 48px !important;
  }

  #consulting-training .consulting-training-grid{
    align-items:stretch !important;
    gap:48px !important;
  }

  #consulting-training .consulting-training-media{
    align-self:stretch !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
  }

  #consulting-training .consulting-training-links{
    padding-top:22px !important;
  }

  #consulting-training .consulting-training-copy h2{
    margin-bottom:10px !important;
    font-size:34px !important;
    line-height:1.08 !important;
  }

  #consulting-training .consulting-training-intro{
    margin-bottom:18px !important;
    font-size:15px !important;
    line-height:1.48 !important;
  }

  #consulting-training .consulting-training-copy h3{
    margin-bottom:16px !important;
    font-size:29px !important;
    line-height:1.08 !important;
  }

  #consulting-training .consulting-accordion{
    gap:10px !important;
  }

  #consulting-training .consulting-trigger{
    min-height:40px !important;
    padding:8px 14px 8px 17px !important;
    font-size:14px !important;
    line-height:1.2 !important;
  }

  #consulting-training .consulting-symbol{
    font-size:20px !important;
  }
}


/* =========================================================
   SERVICES — THERMAL SPRAY SPECIALISTS: LOWER TITLE BAND
   CONSULTING — SLIGHTLY TALLER ACCORDION BARS
========================================================= */
@media (min-width:901px){

  /* Reduce the large blue "Thermal Spray Specialists" band */
  #services .services-hero{
    min-height:0 !important;
    height:150px !important;
    padding:0 !important;
  }

  #services .services-hero-inner{
    min-height:150px !important;
    height:150px !important;
    display:flex !important;
    align-items:center !important;
  }

  #services .services-hero h2{
    margin:0 !important;
  }

  /* Keep Consulting image centered against the complete right column */
  #consulting-training .consulting-training-grid{
    align-items:stretch !important;
  }

  #consulting-training .consulting-training-media{
    align-self:stretch !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
  }

  /* Slightly taller than previous compact version */
  #consulting-training .consulting-trigger{
    min-height:46px !important;
    padding:10px 16px 10px 18px !important;
    font-size:14px !important;
    line-height:1.25 !important;
  }
}


/* =========================================================
   CONSULTING & TRAINING — FULL DESKTOP VIEWPORT
========================================================= */
@media (min-width:901px){
  #consulting-training.consulting-training{
    box-sizing:border-box !important;
    min-height:calc(100vh - 92px) !important;
    padding:0 0 48px !important;
    display:block !important;
  }

  #consulting-training .consulting-training-banner{
    width:100% !important;
  }

  #consulting-training .consulting-training-grid{
    width:min(calc(100% - 48px),1180px) !important;
    margin:0 auto !important;
    padding-top:42px !important;
    align-items:stretch !important;
  }

  #consulting-training .consulting-training-media{
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-self:stretch !important;
  }

  #consulting-training .consulting-trigger{
    min-height:48px !important;
    padding:10px 16px 10px 18px !important;
  }

  #consulting-training .consulting-accordion{
    gap:11px !important;
  }
}


/* =========================================================
   GAS PANEL CALIBRATION — 2026-09-04
========================================================= */
#gas-panel-calibration.gas-panel-section{
  position:relative;
  width:100%;
  background:#eef1f3;
  scroll-margin-top:92px;
}

#gas-panel-calibration .gas-panel-titleband{
  position:relative;
  height:150px;
  min-height:150px;
  background:#154A99;
  overflow:hidden;
}


#gas-panel-calibration .gas-panel-titleband-inner{
  position:relative;
  z-index:1;
  height:100%;
  display:flex;
  align-items:center;
}

#gas-panel-calibration .gas-panel-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:44px;
  line-height:1.05;
  font-weight:400;
}

#gas-panel-calibration .gas-panel-content{
  box-sizing:border-box;
  min-height:calc(100vh - 92px - 150px);
  padding:38px 0 48px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#gas-panel-calibration .gas-panel-rule{
  width:78px;
  height:3px;
  margin:0 auto 46px;
  background:#154A99;
}

#gas-panel-calibration .gas-panel-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:minmax(320px,430px) minmax(0,1fr);
  gap:52px;
  align-items:center;
}

#gas-panel-calibration .gas-panel-media{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#gas-panel-calibration .gas-panel-media img{
  display:block;
  width:100%;
  height:auto;
  object-fit:cover;
}

#gas-panel-calibration .gas-panel-links{
  display:flex;
  justify-content:space-around;
  gap:24px;
  padding:28px 12px 0;
}

#gas-panel-calibration .gas-panel-links a{
  color:#154A99;
  font-size:14px;
  font-weight:600;
}

#gas-panel-calibration .gas-panel-copy{
  align-self:center;
  color:#6B6B6B;
  font-size:17px;
  line-height:1.65;
}

#gas-panel-calibration .gas-panel-copy p{
  margin:0 0 14px;
}

#gas-panel-calibration .gas-panel-copy p:last-child{
  margin-bottom:0;
}

@media (max-width:900px){
  #gas-panel-calibration.gas-panel-section{
    scroll-margin-top:82px;
  }

  #gas-panel-calibration .gas-panel-titleband{
    height:128px;
    min-height:128px;
  }

  #gas-panel-calibration .gas-panel-titleband h2{
    font-size:32px;
  }

  #gas-panel-calibration .gas-panel-content{
    min-height:0;
    padding:34px 0 52px;
  }

  #gas-panel-calibration .gas-panel-rule{
    margin-bottom:32px;
  }

  #gas-panel-calibration .gas-panel-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:34px;
  }

  #gas-panel-calibration .gas-panel-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #gas-panel-calibration .gas-panel-copy{
    font-size:15px;
  }
}


/* =========================================================
   CONSULTING — INDUSTRY CONNECTION BLOCK
   Uses McLaughlin project typography and brand colors.
========================================================= */
.consulting-industry-connect{
  position:relative;
  width:100%;
  padding:54px 0;
  background:#fff;
  overflow:hidden;
}

.consulting-industry-connect::before{
  content:"";
  position:absolute;
  left:-70px;
  top:-110px;
  width:520px;
  height:520px;
  opacity:.08;
  pointer-events:none;
  background:
    radial-gradient(circle at 50% 50%, #154A99 0 12px, transparent 13px),
    repeating-conic-gradient(from 0deg, rgba(21,74,153,.85) 0 1deg, transparent 1deg 24deg);
}

.consulting-industry-grid{
  position:relative;
  z-index:1;
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(380px,500px);
  gap:70px;
  align-items:center;
}

.consulting-industry-copy{
  min-width:0;
  color:#1D1D1B;
}

.consulting-industry-copy h3{
  max-width:610px;
  margin:0 0 24px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(28px,2.55vw,42px);
  line-height:1.14;
  font-weight:700;
}

.consulting-industry-copy p{
  max-width:660px;
  margin:0 0 28px;
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:17px;
  line-height:1.62;
  font-weight:400;
}

.consulting-industry-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:0 24px;
  background:#FAB612;
  color:#1D1D1B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:15px;
  line-height:1;
  font-weight:800;
  text-transform:uppercase;
  text-decoration:none;
  border:0;
  border-radius:0;
}

.consulting-industry-button:hover{
  background:#154A99;
  color:#fff;
}

.consulting-industry-media{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:center;
}

.consulting-industry-media img{
  display:block;
  width:100%;
  height:auto;
  max-height:360px;
  object-fit:cover;
  object-position:center;
}

@media (max-width:900px){
  .consulting-industry-connect{
    padding:44px 0 48px;
  }

  .consulting-industry-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:32px;
  }

  .consulting-industry-copy h3{
    font-size:30px;
  }

  .consulting-industry-copy p{
    font-size:15px;
  }

  .consulting-industry-media{
    width:min(100%,560px);
    margin:0 auto;
  }
}


/* =========================================================
   LASER CLADDING, HEAT TREATING AND WELDING — 2026-09-07
   Compact desktop composition so all 3 images fit in one view.
========================================================= */
#laser-cladding.laser-cladding-section{
  position:relative;
  width:100%;
  background:#eef1f3;
  scroll-margin-top:92px;
}

#laser-cladding .laser-cladding-titleband{
  position:relative;
  height:104px;
  min-height:104px;
  background:#154A99;
  overflow:hidden;
}

#laser-cladding .laser-cladding-titleband-inner{
  height:100%;
  display:flex;
  align-items:center;
}

#laser-cladding .laser-cladding-titleband h2{
  max-width:720px;
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(27px,2.3vw,38px);
  line-height:1.10;
  font-weight:700;
}

#laser-cladding .laser-cladding-content{
  box-sizing:border-box;
  min-height:calc(100vh - 92px - 104px);
  padding:24px 0 30px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#laser-cladding .laser-cladding-rule{
  width:68px;
  height:3px;
  margin:0 auto 24px;
  background:#154A99;
}

#laser-cladding .laser-cladding-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:minmax(320px,430px) minmax(0,1fr);
  gap:54px;
  align-items:center;
}

#laser-cladding .laser-cladding-media{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-self:center;
}

#laser-cladding .laser-cladding-main-image{
  display:block;
  width:100%;
  height:auto;
  max-height:295px;
  object-fit:cover;
  object-position:center;
}

#laser-cladding .laser-cladding-links{
  display:flex;
  justify-content:space-around;
  gap:24px;
  padding:22px 12px 0;
}

#laser-cladding .laser-cladding-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  font-weight:600;
}

#laser-cladding .laser-cladding-copy{
  min-width:0;
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:15px;
  line-height:1.48;
}

#laser-cladding .laser-cladding-copy p{
  margin:0 0 10px;
}

#laser-cladding .laser-cladding-copy p:last-of-type{
  margin-bottom:14px;
}

#laser-cladding .laser-cladding-thumbs{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

#laser-cladding .laser-cladding-thumbs img{
  display:block;
  width:100%;
  height:128px;
  object-fit:cover;
  object-position:center;
}

@media (max-width:900px){
  #laser-cladding.laser-cladding-section{
    scroll-margin-top:82px;
  }

  #laser-cladding .laser-cladding-titleband{
    height:118px;
    min-height:118px;
  }

  #laser-cladding .laser-cladding-titleband h2{
    font-size:28px;
  }

  #laser-cladding .laser-cladding-content{
    min-height:0;
    padding:30px 0 46px;
  }

  #laser-cladding .laser-cladding-rule{
    margin-bottom:28px;
  }

  #laser-cladding .laser-cladding-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:32px;
  }

  #laser-cladding .laser-cladding-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #laser-cladding .laser-cladding-copy{
    font-size:15px;
  }

  #laser-cladding .laser-cladding-thumbs img{
    height:150px;
  }
}

@media (max-width:560px){
  #laser-cladding .laser-cladding-thumbs{
    grid-template-columns:1fr;
  }

  #laser-cladding .laser-cladding-thumbs img{
    height:auto;
  }
}


/* =========================================================
   THERMAL SPRAY EQUIPMENT — TWO-LEVEL NAVIGATION
   Adapted to the approved McLaughlin header.
========================================================= */

/* Desktop */
@media (min-width:901px){

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-menu{
    min-width:245px !important;
    width:245px !important;
    padding:0 !important;
    overflow:visible !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-menu-primary{
    position:relative !important;
    width:245px !important;
    background:#fff !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch{
    width:100% !important;
    min-height:58px !important;
    margin:0 !important;
    padding:13px 16px !important;
    border:0 !important;
    border-bottom:1px solid #e6e9ed !important;
    background:#fff !important;
    color:#1D1D1B !important;
    font-family:"Open Sans",Arial,sans-serif !important;
    font-size:14px !important;
    line-height:1.3 !important;
    font-weight:700 !important;
    text-align:left !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:18px !important;
    cursor:pointer !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch:last-child{
    border-bottom:0 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch:hover,
  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch.active{
    background:#f5f7fa !important;
    color:#154A99 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-arrow{
    flex:0 0 auto !important;
    color:#154A99 !important;
    font-size:24px !important;
    line-height:1 !important;
    font-weight:400 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-submenu{
    display:none !important;
    position:absolute !important;
    top:0 !important;
    left:245px !important;
    width:300px !important;
    min-height:100% !important;
    padding:0 !important;
    background:#fff !important;
    box-shadow:10px 10px 24px rgba(0,0,0,.13) !important;
    z-index:5100 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-submenu.open{
    display:block !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-submenu a{
    display:block !important;
    width:100% !important;
    padding:14px 16px !important;
    color:#1D1D1B !important;
    background:#fff !important;
    font-family:"Open Sans",Arial,sans-serif !important;
    font-size:14px !important;
    line-height:1.45 !important;
    font-weight:700 !important;
    text-transform:none !important;
    white-space:normal !important;
    border-bottom:1px solid #eef0f2 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-submenu a:last-child{
    border-bottom:0 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-submenu a:hover{
    background:#f5f7fa !important;
    color:#154A99 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-submenu a::after{
    display:none !important;
  }
}

/* Mobile / hamburger */
@media (max-width:900px){

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-menu{
    width:100% !important;
    padding-left:18px !important;
    overflow:visible !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-menu-primary{
    width:100% !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch{
    width:100% !important;
    min-height:46px !important;
    margin:0 !important;
    padding:11px 10px !important;
    border:0 !important;
    border-bottom:1px solid rgba(255,255,255,.15) !important;
    background:rgba(0,0,0,.08) !important;
    color:#fff !important;
    font-family:"Open Sans",Arial,sans-serif !important;
    font-size:13px !important;
    line-height:1.3 !important;
    font-weight:700 !important;
    text-align:left !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:14px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-arrow{
    flex:0 0 auto !important;
    font-size:22px !important;
    line-height:1 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-submenu{
    display:none !important;
    position:static !important;
    width:100% !important;
    padding:0 0 0 14px !important;
    background:rgba(0,0,0,.12) !important;
    box-shadow:none !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-submenu.open{
    display:block !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-submenu a{
    padding:11px 10px !important;
    color:#fff !important;
    font-size:12.5px !important;
    line-height:1.35 !important;
    border-bottom:1px solid rgba(255,255,255,.12) !important;
    text-transform:none !important;
  }
}


/* =========================================================
   DUST COLLECTORS — SINGLE DESKTOP VIEW
========================================================= */
#dust-collectors.dust-collectors-section{
  width:100%;
  background:#eef1f3;
  scroll-margin-top:92px;
}

#dust-collectors .dust-collectors-titleband{
  height:112px;
  min-height:112px;
  background:#154A99;
}

#dust-collectors .dust-collectors-titleband-inner{
  height:100%;
  display:flex;
  align-items:center;
}

#dust-collectors .dust-collectors-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(28px,2.45vw,40px);
  line-height:1.08;
  font-weight:700;
}

#dust-collectors .dust-collectors-content{
  box-sizing:border-box;
  min-height:calc(100vh - 92px - 112px);
  padding:22px 0 28px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#dust-collectors .dust-collectors-rule{
  width:70px;
  height:3px;
  margin:0 auto 24px;
  background:#154A99;
}

#dust-collectors .dust-collectors-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:430px minmax(0,1fr);
  gap:58px;
  align-items:center;
}

#dust-collectors .dust-collectors-media{
  align-self:center;
}

#dust-collectors .dust-collectors-image-slot{
  width:100%;
  height:310px;
  overflow:hidden;
  background:#dfe4e8;
}

#dust-collectors .dust-collectors-image-slot img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

#dust-collectors .dust-collectors-image-slot img[src=""]{
  visibility:hidden;
}

#dust-collectors .dust-collectors-links{
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:22px;
  margin-top:24px;
  min-height:66px;
}

#dust-collectors .dust-collectors-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1.25;
  font-weight:600;
  text-align:center;
}

#dust-collectors .dust-collectors-divider{
  width:1px;
  height:58px;
  background:#b7bec6;
}

#dust-collectors .dust-collectors-copy{
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:15px;
  line-height:1.48;
}

#dust-collectors .dust-collectors-copy p{
  margin:0 0 10px;
}

#dust-collectors .dust-collectors-copy p:last-child{
  margin-bottom:0;
}

@media (max-width:900px){
  #dust-collectors.dust-collectors-section{
    scroll-margin-top:82px;
  }

  #dust-collectors .dust-collectors-titleband{
    height:118px;
    min-height:118px;
  }

  #dust-collectors .dust-collectors-titleband h2{
    font-size:28px;
  }

  #dust-collectors .dust-collectors-content{
    min-height:0;
    padding:30px 0 46px;
  }

  #dust-collectors .dust-collectors-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:30px;
  }

  #dust-collectors .dust-collectors-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #dust-collectors .dust-collectors-copy{
    font-size:15px;
  }
}


/* =========================================================
   FULL SYSTEM INTEGRATION CAPABILITIES — SINGLE DESKTOP VIEW
========================================================= */
#full-system-integration.full-system-section{
  width:100%;
  background:#eef1f3;
  scroll-margin-top:92px;
}

#full-system-integration .full-system-titleband{
  height:104px;
  min-height:104px;
  background:#154A99;
}

#full-system-integration .full-system-titleband-inner{
  height:100%;
  display:flex;
  align-items:center;
}

#full-system-integration .full-system-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(27px,2.35vw,38px);
  line-height:1.08;
  font-weight:700;
}

#full-system-integration .full-system-content{
  box-sizing:border-box;
  min-height:calc(100vh - 92px - 104px);
  padding:20px 0 26px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#full-system-integration .full-system-rule{
  width:70px;
  height:3px;
  margin:0 auto 22px;
  background:#154A99;
}

#full-system-integration .full-system-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:430px minmax(0,1fr);
  gap:58px;
  align-items:center;
}

#full-system-integration .full-system-media{
  align-self:center;
}

#full-system-integration .full-system-media img{
  display:block;
  width:100%;
  height:290px;
  object-fit:contain;
  object-position:center;
  background:#fff;
}

#full-system-integration .full-system-links{
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:22px;
  margin-top:22px;
  min-height:64px;
}

#full-system-integration .full-system-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1.25;
  font-weight:600;
  text-align:center;
}

#full-system-integration .full-system-divider{
  width:1px;
  height:58px;
  background:#b7bec6;
}

#full-system-integration .full-system-copy{
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:15px;
  line-height:1.48;
}

#full-system-integration .full-system-copy h3{
  margin:0 0 20px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(26px,2.1vw,34px);
  line-height:1.12;
  font-weight:700;
}

#full-system-integration .full-system-copy p{
  margin:0 0 12px;
}

#full-system-integration .full-system-copy p:last-child{
  margin-bottom:0;
}

@media (max-width:900px){
  #full-system-integration.full-system-section{
    scroll-margin-top:82px;
  }

  #full-system-integration .full-system-titleband{
    height:118px;
    min-height:118px;
  }

  #full-system-integration .full-system-titleband h2{
    font-size:28px;
  }

  #full-system-integration .full-system-content{
    min-height:0;
    padding:30px 0 46px;
  }

  #full-system-integration .full-system-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:30px;
  }

  #full-system-integration .full-system-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #full-system-integration .full-system-media img{
    height:auto;
  }

  #full-system-integration .full-system-copy{
    font-size:15px;
  }

  #full-system-integration .full-system-copy h3{
    font-size:27px;
  }
}


/* =========================================================
   GRIT & SHOT BLAST EQUIPMENT
   One menu link, two consecutive desktop screens.
========================================================= */
#grit-blast-equipment.grit-blast-section{
  width:100%;
  background:#eef1f3;
  scroll-margin-top:92px;
}

#grit-blast-equipment .grit-blast-screen{
  width:100%;
  box-sizing:border-box;
}

/* ---------- SCREEN 1 ---------- */
#grit-blast-equipment .grit-blast-screen-main{
  min-height:calc(100vh - 92px);
  background:#eef1f3;
}

#grit-blast-equipment .grit-blast-titleband{
  height:104px;
  min-height:104px;
  background:#154A99;
}

#grit-blast-equipment .grit-blast-titleband-inner{
  height:100%;
  display:flex;
  align-items:center;
}

#grit-blast-equipment .grit-blast-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(28px,2.35vw,38px);
  line-height:1.08;
  font-weight:700;
}

#grit-blast-equipment .grit-blast-content{
  min-height:calc(100vh - 92px - 104px);
  padding:20px 0 28px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-sizing:border-box;
}

#grit-blast-equipment .grit-blast-rule{
  width:70px;
  height:3px;
  margin:0 auto 22px;
  background:#154A99;
}

#grit-blast-equipment .grit-blast-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:430px minmax(0,1fr);
  gap:58px;
  align-items:center;
}

#grit-blast-equipment .grit-blast-media{
  align-self:center;
}

#grit-blast-equipment .grit-blast-image-slot{
  width:100%;
  height:285px;
  overflow:hidden;
  background:#dfe4e8;
}

#grit-blast-equipment .grit-blast-image-slot img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

#grit-blast-equipment .grit-blast-image-slot img[src=""]{
  visibility:hidden;
}

#grit-blast-equipment .grit-blast-links{
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:22px;
  margin-top:22px;
  min-height:64px;
}

#grit-blast-equipment .grit-blast-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1.25;
  font-weight:600;
  text-align:center;
}

#grit-blast-equipment .grit-blast-divider{
  width:1px;
  height:58px;
  background:#b7bec6;
}

#grit-blast-equipment .grit-blast-copy{
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:15px;
  line-height:1.5;
}

#grit-blast-equipment .grit-blast-copy h3{
  margin:0 0 18px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(27px,2.1vw,34px);
  line-height:1.12;
  font-weight:700;
}

#grit-blast-equipment .grit-blast-copy p{
  margin:0 0 12px;
}

#grit-blast-equipment .grit-blast-copy p:last-child{
  margin-bottom:0;
}

/* ---------- SCREEN 2 ---------- */
#grit-blast-equipment .grit-blast-screen-secondary{
  min-height:calc(100vh - 92px);
  background:#eef1f3;
  display:flex;
  align-items:center;
  padding:56px 0;
}

#grit-blast-equipment .grit-blast-secondary-copy{
  width:min(calc(100% - 48px),1050px);
  margin:0 auto;
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:16px;
  line-height:1.55;
}

#grit-blast-equipment .grit-blast-secondary-copy h3{
  margin:0 0 24px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(30px,2.5vw,40px);
  line-height:1.12;
  font-weight:700;
}

#grit-blast-equipment .grit-blast-secondary-copy p{
  margin:0 0 14px;
}

#grit-blast-equipment .grit-blast-secondary-copy ul{
  margin:4px 0 14px 24px;
  padding:0;
}

#grit-blast-equipment .grit-blast-secondary-copy li{
  margin:3px 0;
}

/* ---------- MOBILE ---------- */
@media (max-width:900px){
  #grit-blast-equipment.grit-blast-section{
    scroll-margin-top:82px;
  }

  #grit-blast-equipment .grit-blast-screen-main,
  #grit-blast-equipment .grit-blast-screen-secondary{
    min-height:0;
  }

  #grit-blast-equipment .grit-blast-titleband{
    height:118px;
    min-height:118px;
  }

  #grit-blast-equipment .grit-blast-titleband h2{
    font-size:28px;
  }

  #grit-blast-equipment .grit-blast-content{
    min-height:0;
    padding:30px 0 46px;
  }

  #grit-blast-equipment .grit-blast-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:30px;
  }

  #grit-blast-equipment .grit-blast-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #grit-blast-equipment .grit-blast-copy{
    font-size:15px;
  }

  #grit-blast-equipment .grit-blast-screen-secondary{
    padding:46px 0 52px;
  }

  #grit-blast-equipment .grit-blast-secondary-copy{
    width:min(calc(100% - 32px),720px);
    font-size:15px;
  }

  #grit-blast-equipment .grit-blast-secondary-copy h3{
    font-size:28px;
  }
}


/* =========================================================
   GRIT BLAST — SECOND SCREEN CONTENT HIGHER
   Screen 2 still starts only after screen 1 has fully ended.
========================================================= */
@media (min-width:901px){
  #grit-blast-equipment .grit-blast-screen-main{
    height:calc(100vh - 92px) !important;
    min-height:calc(100vh - 92px) !important;
    overflow:hidden !important;
  }

  #grit-blast-equipment .grit-blast-screen-secondary{
    min-height:calc(100vh - 92px) !important;
    align-items:flex-start !important;
    padding:38px 0 56px !important;
  }
}


/* =========================================================
   SOUND ENCLOSURE SPRAY BOOTHS — SINGLE DESKTOP SCREEN
========================================================= */
#sound-enclosure-booths.sound-enclosure-section{
  width:100%;
  background:#eef1f3;
  scroll-margin-top:92px;
}

#sound-enclosure-booths .sound-enclosure-titleband{
  height:104px;
  min-height:104px;
  background:#154A99;
}

#sound-enclosure-booths .sound-enclosure-titleband-inner{
  height:100%;
  display:flex;
  align-items:center;
}

#sound-enclosure-booths .sound-enclosure-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(27px,2.25vw,37px);
  line-height:1.08;
  font-weight:700;
}

#sound-enclosure-booths .sound-enclosure-content{
  box-sizing:border-box;
  min-height:calc(100vh - 92px - 104px);
  padding:18px 0 24px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#sound-enclosure-booths .sound-enclosure-rule{
  width:70px;
  height:3px;
  margin:0 auto 20px;
  background:#154A99;
}

#sound-enclosure-booths .sound-enclosure-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:430px minmax(0,1fr);
  gap:58px;
  align-items:center;
}

#sound-enclosure-booths .sound-enclosure-media{
  align-self:center;
}

#sound-enclosure-booths .sound-enclosure-media > img{
  display:block;
  width:100%;
  height:285px;
  object-fit:cover;
  object-position:center;
}

#sound-enclosure-booths .sound-enclosure-links{
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:22px;
  margin-top:20px;
  min-height:62px;
}

#sound-enclosure-booths .sound-enclosure-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1.25;
  font-weight:600;
  text-align:center;
}

#sound-enclosure-booths .sound-enclosure-divider{
  width:1px;
  height:58px;
  background:#b7bec6;
}

#sound-enclosure-booths .sound-enclosure-copy{
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14.5px;
  line-height:1.42;
}

#sound-enclosure-booths .sound-enclosure-copy p{
  margin:0 0 10px;
}

#sound-enclosure-booths .sound-enclosure-copy-top p:last-child,
#sound-enclosure-booths .sound-enclosure-lower-copy p:last-child{
  margin-bottom:0;
}

#sound-enclosure-booths .sound-enclosure-lower{
  margin-top:14px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 250px;
  gap:24px;
  align-items:center;
}

#sound-enclosure-booths .sound-enclosure-lower img{
  display:block;
  width:250px;
  height:175px;
  object-fit:cover;
  object-position:center;
}

@media (max-width:900px){
  #sound-enclosure-booths.sound-enclosure-section{
    scroll-margin-top:82px;
  }

  #sound-enclosure-booths .sound-enclosure-titleband{
    height:118px;
    min-height:118px;
  }

  #sound-enclosure-booths .sound-enclosure-titleband h2{
    font-size:28px;
  }

  #sound-enclosure-booths .sound-enclosure-content{
    min-height:0;
    padding:30px 0 46px;
  }

  #sound-enclosure-booths .sound-enclosure-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:30px;
  }

  #sound-enclosure-booths .sound-enclosure-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #sound-enclosure-booths .sound-enclosure-media > img{
    height:auto;
  }

  #sound-enclosure-booths .sound-enclosure-copy{
    font-size:15px;
  }

  #sound-enclosure-booths .sound-enclosure-lower{
    grid-template-columns:1fr;
    gap:20px;
  }

  #sound-enclosure-booths .sound-enclosure-lower img{
    width:min(100%,420px);
    height:auto;
  }
}


/* =========================================================
   SOUND ENCLOSURE — USE SUPPLIED IMAGES COMPLETE / NO CROP
========================================================= */
@media (min-width:901px){

  #sound-enclosure-booths .sound-enclosure-media > img{
    width:100% !important;
    height:auto !important;
    max-height:285px !important;
    object-fit:contain !important;
    object-position:center center !important;
    background:transparent !important;
  }

  #sound-enclosure-booths .sound-enclosure-lower img{
    width:250px !important;
    height:auto !important;
    max-height:175px !important;
    object-fit:contain !important;
    object-position:center center !important;
    background:transparent !important;
  }
}

@media (max-width:900px){
  #sound-enclosure-booths .sound-enclosure-media > img,
  #sound-enclosure-booths .sound-enclosure-lower img{
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    object-fit:contain !important;
    object-position:center center !important;
  }
}


/* =========================================================
   COMPLETE THERMAL SPRAY SYSTEMS — SINGLE DESKTOP SCREEN
========================================================= */
#spray-systems.spray-systems-section{
  width:100%;
  background:#eef1f3;
  scroll-margin-top:92px;
}

#spray-systems .spray-systems-titleband{
  height:104px;
  min-height:104px;
  background:#154A99;
}

#spray-systems .spray-systems-titleband-inner{
  height:100%;
  display:flex;
  align-items:center;
}

#spray-systems .spray-systems-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(28px,2.35vw,38px);
  line-height:1.08;
  font-weight:700;
}

#spray-systems .spray-systems-content{
  box-sizing:border-box;
  min-height:calc(100vh - 92px - 104px);
  padding:20px 0 26px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#spray-systems .spray-systems-rule{
  width:70px;
  height:3px;
  margin:0 auto 22px;
  background:#154A99;
}

#spray-systems .spray-systems-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:430px minmax(0,1fr);
  gap:58px;
  align-items:center;
}

#spray-systems .spray-systems-media{
  align-self:center;
}

#spray-systems .spray-systems-media > img{
  display:block;
  width:100%;
  height:310px;
  object-fit:contain;
  object-position:center;
  background:transparent;
}

#spray-systems .spray-systems-links{
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:22px;
  margin-top:22px;
  min-height:64px;
}

#spray-systems .spray-systems-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1.25;
  font-weight:600;
  text-align:center;
}

#spray-systems .spray-systems-divider{
  width:1px;
  height:58px;
  background:#b7bec6;
}

#spray-systems .spray-systems-copy{
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:16px;
  line-height:1.48;
}

#spray-systems .spray-systems-copy h3{
  margin:0 0 20px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(28px,2.25vw,36px);
  line-height:1.12;
  font-weight:700;
}

#spray-systems .spray-systems-copy > ul{
  margin:0;
  padding-left:22px;
}

#spray-systems .spray-systems-copy li{
  margin:5px 0;
}

#spray-systems .spray-systems-copy li ul{
  margin:4px 0 4px 16px;
  padding-left:18px;
}

#spray-systems .spray-systems-copy li li{
  margin:3px 0;
}

@media (max-width:900px){
  #spray-systems.spray-systems-section{
    scroll-margin-top:82px;
  }

  #spray-systems .spray-systems-titleband{
    height:118px;
    min-height:118px;
  }

  #spray-systems .spray-systems-titleband h2{
    font-size:28px;
  }

  #spray-systems .spray-systems-content{
    min-height:0;
    padding:30px 0 46px;
  }

  #spray-systems .spray-systems-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:30px;
  }

  #spray-systems .spray-systems-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #spray-systems .spray-systems-media > img{
    height:auto;
  }

  #spray-systems .spray-systems-copy{
    font-size:15px;
  }

  #spray-systems .spray-systems-copy h3{
    font-size:28px;
  }
}


/* =========================================================
   TUBE & PIPE MILL WELD SEAM REMETALLIZING
   Capture 2 + Capture 3 combined into one desktop screen.
========================================================= */
#tube-pipe-remetallizing.tube-pipe-section{
  width:100%;
  background:#eef1f3;
  scroll-margin-top:92px;
}

#tube-pipe-remetallizing .tube-pipe-titleband{
  height:104px;
  min-height:104px;
  background:#154A99;
}

#tube-pipe-remetallizing .tube-pipe-titleband-inner{
  height:100%;
  display:flex;
  align-items:center;
}

#tube-pipe-remetallizing .tube-pipe-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(27px,2.25vw,37px);
  line-height:1.08;
  font-weight:700;
}

#tube-pipe-remetallizing .tube-pipe-content{
  box-sizing:border-box;
  min-height:calc(100vh - 92px - 104px);
  padding:18px 0 24px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#tube-pipe-remetallizing .tube-pipe-rule{
  width:70px;
  height:3px;
  margin:0 auto 20px;
  background:#154A99;
}

#tube-pipe-remetallizing .tube-pipe-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:430px minmax(0,1fr);
  gap:58px;
  align-items:center;
}

#tube-pipe-remetallizing .tube-pipe-media{
  align-self:center;
}

#tube-pipe-remetallizing .tube-pipe-media > img{
  display:block;
  width:100%;
  height:320px;
  object-fit:contain;
  object-position:center;
  background:transparent;
}

#tube-pipe-remetallizing .tube-pipe-links{
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:22px;
  margin-top:20px;
  min-height:64px;
}

#tube-pipe-remetallizing .tube-pipe-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1.25;
  font-weight:600;
  text-align:center;
}

#tube-pipe-remetallizing .tube-pipe-divider{
  width:1px;
  height:58px;
  background:#b7bec6;
}

#tube-pipe-remetallizing .tube-pipe-copy{
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1.40;
}

#tube-pipe-remetallizing .tube-pipe-copy p{
  margin:0 0 9px;
}

#tube-pipe-remetallizing .tube-pipe-copy > p:last-of-type{
  margin-bottom:10px;
}

#tube-pipe-remetallizing .tube-pipe-recycle{
  margin-top:8px;
  padding:12px 14px;
  background:rgba(255,255,255,.44);
  border-left:4px solid #FAB612;
}

#tube-pipe-remetallizing .tube-pipe-recycle p{
  margin:0;
}

#tube-pipe-remetallizing .tube-pipe-recycle strong{
  color:#1D1D1B;
}

#tube-pipe-remetallizing .tube-pipe-recycle em{
  color:#6B6B6B;
}

@media (max-width:900px){
  #tube-pipe-remetallizing.tube-pipe-section{
    scroll-margin-top:82px;
  }

  #tube-pipe-remetallizing .tube-pipe-titleband{
    height:118px;
    min-height:118px;
  }

  #tube-pipe-remetallizing .tube-pipe-titleband h2{
    font-size:27px;
  }

  #tube-pipe-remetallizing .tube-pipe-content{
    min-height:0;
    padding:30px 0 46px;
  }

  #tube-pipe-remetallizing .tube-pipe-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:30px;
  }

  #tube-pipe-remetallizing .tube-pipe-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #tube-pipe-remetallizing .tube-pipe-media > img{
    height:auto;
  }

  #tube-pipe-remetallizing .tube-pipe-copy{
    font-size:15px;
  }
}


/* =========================================================
   THERMAL SPRAY EQUIPMENT — OVERVIEW / LANDING
   Both "Thermal Spray Equipment" links land here.
========================================================= */
#thermal-spray-equipment-overview.thermal-equipment-overview{
  width:100%;
  background:#eef1f3;
  scroll-margin-top:92px;
}

#thermal-spray-equipment-overview .thermal-equipment-titleband{
  height:104px;
  min-height:104px;
  background:#154A99;
}

#thermal-spray-equipment-overview .thermal-equipment-titleband-inner{
  height:100%;
  display:flex;
  align-items:center;
}

#thermal-spray-equipment-overview .thermal-equipment-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(28px,2.35vw,38px);
  line-height:1.08;
  font-weight:700;
}

#thermal-spray-equipment-overview .thermal-equipment-content{
  box-sizing:border-box;
  min-height:calc(100vh - 92px - 104px);
  padding:20px 0 28px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#thermal-spray-equipment-overview .thermal-equipment-rule{
  width:70px;
  height:3px;
  margin:0 auto 22px;
  background:#154A99;
}

#thermal-spray-equipment-overview .thermal-equipment-grid{
  width:min(calc(100% - 48px),1180px);
  display:grid;
  grid-template-columns:430px minmax(0,1fr);
  gap:58px;
  align-items:center;
}

#thermal-spray-equipment-overview .thermal-equipment-media{
  align-self:center;
}

#thermal-spray-equipment-overview .thermal-equipment-media img{
  display:block;
  width:100%;
  height:360px;
  object-fit:contain;
  object-position:center;
  background:transparent;
}

#thermal-spray-equipment-overview .thermal-equipment-links{
  display:flex;
  justify-content:center;
  margin-top:20px;
}

#thermal-spray-equipment-overview .thermal-equipment-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  font-weight:600;
}

#thermal-spray-equipment-overview .thermal-equipment-copy{
  color:#6B6B6B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:15px;
  line-height:1.48;
}

#thermal-spray-equipment-overview .thermal-equipment-copy h3{
  margin:0 0 18px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:clamp(27px,2.1vw,34px);
  line-height:1.12;
  font-weight:700;
}

#thermal-spray-equipment-overview .thermal-equipment-copy ul{
  margin:0 0 12px 20px;
  padding:0;
}

#thermal-spray-equipment-overview .thermal-equipment-copy li{
  margin:4px 0;
}

#thermal-spray-equipment-overview .thermal-equipment-copy p{
  margin:0 0 12px;
}

#thermal-spray-equipment-overview .thermal-equipment-note{
  margin-top:22px !important;
  font-style:italic;
}

#thermal-spray-equipment-overview .thermal-equipment-datasheet{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  margin-top:6px;
  padding:0 20px;
  background:#FAB612;
  color:#1D1D1B;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1;
  font-weight:800;
  text-transform:uppercase;
  border:0;
  border-radius:0;
}

#thermal-spray-equipment-overview .thermal-equipment-datasheet:hover{
  background:#154A99;
  color:#fff;
}

/* First equipment branch: label navigates, arrow opens the second panel. */
@media (min-width:901px){
  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-link{
    width:100% !important;
    min-height:58px !important;
    padding:0 !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 48px !important;
    align-items:stretch !important;
    background:#fff !important;
    border-bottom:1px solid #e6e9ed !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-link > a{
    display:flex !important;
    align-items:center !important;
    padding:13px 16px !important;
    color:#1D1D1B !important;
    background:#fff !important;
    font-size:14px !important;
    line-height:1.3 !important;
    font-weight:700 !important;
    text-transform:none !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-link > a:hover,
  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-link.active > a{
    color:#154A99 !important;
    background:#f5f7fa !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-toggle{
    border:0 !important;
    background:#fff !important;
    color:#154A99 !important;
    cursor:pointer !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-link.active .equipment-branch-toggle,
  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-toggle:hover{
    background:#f5f7fa !important;
  }
}

@media (max-width:900px){
  #thermal-spray-equipment-overview.thermal-equipment-overview{
    scroll-margin-top:82px;
  }

  #thermal-spray-equipment-overview .thermal-equipment-titleband{
    height:118px;
    min-height:118px;
  }

  #thermal-spray-equipment-overview .thermal-equipment-titleband h2{
    font-size:28px;
  }

  #thermal-spray-equipment-overview .thermal-equipment-content{
    min-height:0;
    padding:30px 0 46px;
  }

  #thermal-spray-equipment-overview .thermal-equipment-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:30px;
  }

  #thermal-spray-equipment-overview .thermal-equipment-media{
    width:min(100%,520px);
    margin:0 auto;
  }

  #thermal-spray-equipment-overview .thermal-equipment-media img{
    height:auto;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-link{
    width:100% !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) 42px !important;
    background:rgba(0,0,0,.08) !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-link > a{
    padding:11px 10px !important;
    color:#fff !important;
    font-size:13px !important;
    font-weight:700 !important;
    text-transform:none !important;
  }

  body > header.header.hero-header nav#mainNav .nav-equipment .equipment-branch-toggle{
    border:0 !important;
    background:transparent !important;
    color:#fff !important;
  }
}


/* =========================================================
   TOP NAV SOCIAL ICONS — 2026-09-10
========================================================= */
body > header.header.hero-header nav#mainNav .nav-socials{
  display:flex;
  align-items:center;
  gap:8px;
  margin-left:2px;
  flex:0 0 auto;
}

body > header.header.hero-header nav#mainNav .nav-social{
  width:28px !important;
  height:28px !important;
  min-width:28px !important;
  padding:0 !important;
  margin:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.72) !important;
  border-radius:50% !important;
  background:transparent !important;
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease !important;
}

body > header.header.hero-header nav#mainNav .nav-social:hover{
  background:#FAB612 !important;
  color:#1D1D1B !important;
  border-color:#FAB612 !important;
  transform:translateY(-1px);
}

body > header.header.hero-header nav#mainNav .nav-social::after{
  display:none !important;
}

body > header.header.hero-header nav#mainNav .nav-social svg{
  width:15px;
  height:15px;
  display:block;
  fill:currentColor;
  stroke:currentColor;
  stroke-width:1.8;
}

body > header.header.hero-header nav#mainNav .nav-social-facebook svg{
  stroke:none;
}

body > header.header.hero-header nav#mainNav .nav-social-instagram svg{
  fill:none;
}

body > header.header.hero-header nav#mainNav .nav-social-instagram .instagram-dot{
  fill:currentColor;
  stroke:none;
}

body > header.header.hero-header nav#mainNav .nav-social-google svg{
  fill:none;
}

@media (max-width:900px){
  body > header.header.hero-header nav#mainNav .nav-socials{
    width:100% !important;
    margin:12px 0 2px !important;
    padding:2px 8px 4px !important;
    gap:12px !important;
  }

  body > header.header.hero-header nav#mainNav .nav-social{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    border-bottom:1px solid rgba(255,255,255,.72) !important;
  }

  body > header.header.hero-header nav#mainNav .nav-social svg{
    width:18px;
    height:18px;
  }
}


/* =========================================================
   SOCIAL TOPBAR — ALMAFRONT-STYLE PLACEMENT
   Independent bar above the main sticky header.
========================================================= */
.social-topbar{
  width:100%;
  min-height:34px;
  background:#0d2f5f;
  color:#fff;
}

.social-topbar-inner{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

.social-topbar .nav-socials{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  padding:0;
}

.social-topbar .nav-social{
  width:24px;
  height:24px;
  min-width:24px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  margin:0;
  color:#fff;
  background:transparent;
  border:0;
  border-radius:0;
  transition:color .18s ease, transform .18s ease;
}

.social-topbar .nav-social:hover{
  color:#FAB612;
  transform:translateY(-1px);
}

.social-topbar .nav-social svg{
  display:block;
  width:17px;
  height:17px;
  fill:currentColor;
  stroke:currentColor;
  stroke-width:1.8;
}

.social-topbar .nav-social-facebook svg{
  stroke:none;
}

.social-topbar .nav-social-instagram svg{
  fill:none;
}

.social-topbar .nav-social-instagram .instagram-dot{
  fill:currentColor;
  stroke:none;
}

.social-topbar .nav-social-google svg{
  fill:none;
}

/* Keep the existing main header behavior below the topbar. */
body > header.header.hero-header{
  top:0 !important;
}

/* Remove any old nav-specific social layout if still matched by earlier rules. */
body > header.header.hero-header nav#mainNav .nav-socials{
  display:none !important;
}

@media (max-width:900px){
  .social-topbar{
    min-height:32px;
  }

  .social-topbar-inner{
    min-height:32px;
    justify-content:center;
    padding:0 10px;
  }

  .social-topbar .nav-socials{
    width:auto;
    gap:16px;
  }

  .social-topbar .nav-social{
    width:26px;
    height:26px;
    min-width:26px;
  }

  .social-topbar .nav-social svg{
    width:18px;
    height:18px;
  }
}


/* =========================================================
   WHITE TOPBAR + WHITE MAIN HEADER — TEST VERSION
   Keeps current logo asset untouched until multicolor logo path is supplied.
========================================================= */

/* Social bar */
.social-topbar{
  background:#FFFFFF !important;
  color:#154A99 !important;
  border-bottom:1px solid #DDE3EB !important;
}

.social-topbar .nav-social{
  color:#154A99 !important;
}

.social-topbar .nav-social:hover{
  color:#FAB612 !important;
}

/* Main desktop header */
@media (min-width:901px){
  body > header.header.hero-header{
    background:#FFFFFF !important;
    border-bottom:1px solid #DDE3EB !important;
    box-shadow:0 4px 14px rgba(21,74,153,.07) !important;
  }

  body > header.header.hero-header nav#mainNav > a,
  body > header.header.hero-header nav#mainNav .nav-dropdown-head > a{
    color:#154A99 !important;
  }

  body > header.header.hero-header nav#mainNav > a:hover,
  body > header.header.hero-header nav#mainNav .nav-dropdown-head > a:hover{
    color:#1D1D1B !important;
  }

  body > header.header.hero-header nav#mainNav .nav-dropdown-toggle{
    color:#154A99 !important;
  }

  body > header.header.hero-header nav#mainNav .nav-chevron{
    color:#154A99 !important;
  }

  /* Yellow remains the active brand accent */
  body > header.header.hero-header nav#mainNav a.active::after,
  body > header.header.hero-header nav#mainNav .nav-dropdown-head > a.active::after{
    background:#FAB612 !important;
  }
}

/* Mobile header: same white visual language */
@media (max-width:900px){
  body > header.header.hero-header{
    background:#FFFFFF !important;
    border-bottom:1px solid #DDE3EB !important;
  }

  body > header.header.hero-header .menu-toggle{
    color:#154A99 !important;
    border-color:#154A99 !important;
    background:transparent !important;
  }

  /* The opened hamburger panel stays blue for strong contrast/readability */
  body > header.header.hero-header nav#mainNav{
    background:#154A99 !important;
  }

  body > header.header.hero-header nav#mainNav a,
  body > header.header.hero-header nav#mainNav .nav-dropdown-toggle,
  body > header.header.hero-header nav#mainNav .equipment-branch,
  body > header.header.hero-header nav#mainNav .equipment-branch-link > a,
  body > header.header.hero-header nav#mainNav .equipment-branch-toggle{
    color:#FFFFFF !important;
  }
}

/* =========================================================
   GRIT BLAST MATERIALS — SECTION ONLY
   Desktop: one complete viewport below header
========================================================= */
.grit-materials-section{
  font-family:"Open Sans",Arial,sans-serif;
  width:100%;
  height:calc(100vh - 126px);
  min-height:620px;
  display:grid;
  grid-template-rows:112px 1fr;
  background:#eef1f3;
  color:#6B6B6B;
  overflow:hidden;
}

.grit-materials-titleband{
  width:100%;
  height:112px;
  background:#154A99;
}

.grit-materials-titleband-inner{
  height:112px;
  display:flex;
  align-items:center;
}

.grit-materials-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:44px;
  line-height:1;
  font-weight:700;
}

.grit-materials-content{
  min-height:0;
  padding:24px 0 28px;
  background:#eef1f3;
  box-sizing:border-box;
}

.grit-materials-rule{
  width:70px;
  height:3px;
  margin:0 auto 26px;
  background:#154A99;
}

.grit-materials-grid{
  width:min(calc(100% - 56px),1220px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(500px,1.05fr) minmax(500px,.95fr);
  gap:62px;
  align-items:start;
}

.grit-materials-media{
  min-width:0;
}

.grit-materials-image{
  width:100%;
  aspect-ratio:1024 / 499;
  overflow:hidden;
  background:#dfe4e8;
}

.grit-materials-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.grit-materials-links{
  height:62px;
  margin-top:6px;
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:20px;
}

.grit-materials-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1;
  font-weight:400;
  text-align:center;
  text-decoration:none;
}

.grit-materials-links a:hover{
  color:#FAB612;
}

.grit-materials-divider{
  width:1px;
  height:52px;
  background:#aeb5bc;
}

.grit-materials-copy{
  min-width:0;
  padding-top:0;
  font-family:"Open Sans",Arial,sans-serif;
  color:#6B6B6B;
  font-size:16px;
  line-height:1.43;
}

.grit-materials-copy h3{
  margin:0 0 10px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:31px;
  line-height:1.12;
  font-weight:800;
}

.grit-materials-copy p{
  margin:0 0 8px;
}

.grit-materials-copy ul{
  margin:7px 0 7px 22px;
  padding:0;
}

.grit-materials-copy li{
  margin:0;
  padding:0;
  line-height:1.4;
}

.grit-materials-contact-line{
  margin-top:7px !important;
  color:#6B6B6B;
}

/* Pantallas de escritorio menos altas: conserva las dos columnas y ajusta escala. */
@media (min-width:981px) and (max-height:760px){
  .grit-materials-section{
    min-height:560px;
    grid-template-rows:96px 1fr;
  }

  .grit-materials-titleband,
  .grit-materials-titleband-inner{
    height:96px;
  }

  .grit-materials-titleband h2{
    font-size:40px;
  }

  .grit-materials-content{
    padding:18px 0 22px;
  }

  .grit-materials-rule{
    margin-bottom:18px;
  }

  .grit-materials-grid{
    width:min(calc(100% - 56px),1160px);
    gap:52px;
  }

  .grit-materials-copy{
    font-size:14px;
    line-height:1.34;
  }

  .grit-materials-copy h3{
    font-size:28px;
    margin-bottom:7px;
  }

  .grit-materials-copy ul{
    margin-top:4px;
    margin-bottom:4px;
  }

  .grit-materials-copy li{
    line-height:1.3;
  }

  .grit-materials-links{
    height:50px;
  }

  .grit-materials-divider{
    height:42px;
  }
}

/* Mobile/tablet: vuelve al flujo natural. */
@media (max-width:980px){
  .grit-materials-section{
    height:auto;
    min-height:0;
    display:block;
    overflow:visible;
  }

  .grit-materials-titleband,
  .grit-materials-titleband-inner{
    height:92px;
  }

  .grit-materials-titleband h2{
    font-size:34px;
  }

  .grit-materials-content{
    padding:24px 0 34px;
  }

  .grit-materials-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:24px;
  }

  .grit-materials-media{
    width:min(100%,600px);
    margin:0 auto;
  }

  .grit-materials-copy{
    font-size:15px;
  }

  .grit-materials-copy h3{
    font-size:28px;
  }
}

@media (max-width:600px){
  .grit-materials-titleband h2{
    font-size:30px;
  }
}

/* =========================================================
   MASKING TAPES FOR PLASMA, EAS AND HVOF — SECTION ONLY
   Desktop: image left / copy right / one viewport
========================================================= */
.masking-tapes-section{
  font-family:"Open Sans",Arial,sans-serif;
  width:100%;
  height:calc(100vh - 126px);
  min-height:620px;
  display:grid;
  grid-template-rows:112px 1fr;
  background:#eef1f3;
  color:#6B6B6B;
  overflow:hidden;
}

.masking-tapes-titleband{
  width:100%;
  height:112px;
  background:#154A99;
}

.masking-tapes-titleband-inner{
  height:112px;
  display:flex;
  align-items:center;
}

.masking-tapes-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:44px;
  line-height:1.05;
  font-weight:700;
}

.masking-tapes-content{
  min-height:0;
  padding:24px 0 28px;
  background:#eef1f3;
  box-sizing:border-box;
}

.masking-tapes-rule{
  width:70px;
  height:3px;
  margin:0 auto 26px;
  background:#154A99;
}

.masking-tapes-grid{
  width:min(calc(100% - 56px),1220px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(500px,1.05fr) minmax(500px,.95fr);
  gap:62px;
  align-items:start;
}

.masking-tapes-media{
  min-width:0;
}

.masking-tapes-image{
  width:100%;
  aspect-ratio:16 / 10;
  overflow:hidden;
  background:#dfe4e8;
}

.masking-tapes-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.masking-tapes-links{
  height:62px;
  margin-top:6px;
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:20px;
}

.masking-tapes-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1;
  font-weight:400;
  text-align:center;
  text-decoration:none;
}

.masking-tapes-links a:hover{
  color:#FAB612;
}

.masking-tapes-divider{
  width:1px;
  height:52px;
  background:#aeb5bc;
}

.masking-tapes-copy{
  min-width:0;
  padding-top:0;
  font-family:"Open Sans",Arial,sans-serif;
  color:#6B6B6B;
  font-size:15px;
  line-height:1.38;
}

.masking-tapes-copy h3{
  margin:0 0 10px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:31px;
  line-height:1.12;
  font-weight:400;
}

.masking-tapes-copy p{
  margin:0 0 9px;
}

.masking-tapes-copy ul{
  margin:6px 0 10px 22px;
  padding:0;
}

.masking-tapes-copy li{
  margin:0;
  padding:0;
  line-height:1.36;
}

.masking-tapes-contact-line{
  margin-top:8px !important;
  color:#6B6B6B;
}

@media (min-width:981px) and (max-height:760px){
  .masking-tapes-section{
    min-height:560px;
    grid-template-rows:96px 1fr;
  }

  .masking-tapes-titleband,
  .masking-tapes-titleband-inner{
    height:96px;
  }

  .masking-tapes-titleband h2{
    font-size:40px;
  }

  .masking-tapes-content{
    padding:18px 0 22px;
  }

  .masking-tapes-rule{
    margin-bottom:18px;
  }

  .masking-tapes-grid{
    width:min(calc(100% - 56px),1160px);
    gap:52px;
  }

  .masking-tapes-copy{
    font-size:13.5px;
    line-height:1.3;
  }

  .masking-tapes-copy h3{
    font-size:28px;
    margin-bottom:7px;
  }

  .masking-tapes-copy ul{
    margin-top:4px;
    margin-bottom:7px;
  }

  .masking-tapes-copy li{
    line-height:1.27;
  }

  .masking-tapes-links{
    height:50px;
  }

  .masking-tapes-divider{
    height:42px;
  }
}

@media (max-width:980px){
  .masking-tapes-section{
    height:auto;
    min-height:0;
    display:block;
    overflow:visible;
  }

  .masking-tapes-titleband,
  .masking-tapes-titleband-inner{
    height:92px;
  }

  .masking-tapes-titleband h2{
    font-size:34px;
  }

  .masking-tapes-content{
    padding:24px 0 34px;
  }

  .masking-tapes-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:24px;
  }

  .masking-tapes-media{
    width:min(100%,600px);
    margin:0 auto;
  }

  .masking-tapes-copy{
    font-size:15px;
  }

  .masking-tapes-copy h3{
    font-size:28px;
  }
}

@media (max-width:600px){
  .masking-tapes-titleband h2{
    font-size:30px;
  }
}

/* =========================================================
   POWDER AND WIRE — SECTION ONLY
   Desktop: larger image + larger type, still one viewport
========================================================= */
.powder-wire-section{
  font-family:"Open Sans",Arial,sans-serif;
  width:100%;
  height:calc(100vh - 126px);
  min-height:620px;
  display:grid;
  grid-template-rows:112px 1fr;
  background:#eef1f3;
  color:#6B6B6B;
  overflow:hidden;
}

.powder-wire-titleband{
  width:100%;
  height:112px;
  background:#154A99;
}

.powder-wire-titleband-inner{
  height:112px;
  display:flex;
  align-items:center;
}

.powder-wire-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:46px;
  line-height:1;
  font-weight:700;
}

.powder-wire-content{
  min-height:0;
  padding:18px 0 20px;
  background:#eef1f3;
  box-sizing:border-box;
}

.powder-wire-rule{
  width:72px;
  height:3px;
  margin:0 auto 16px;
  background:#154A99;
}

.powder-wire-grid{
  width:min(calc(100% - 48px),1320px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(560px,1.12fr) minmax(540px,.88fr);
  gap:56px;
  align-items:start;
}

.powder-wire-media{
  min-width:0;
}

.powder-wire-image{
  width:100%;
  aspect-ratio:16 / 9;
  overflow:hidden;
  background:#dfe4e8;
}

.powder-wire-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.powder-wire-links{
  height:58px;
  margin-top:6px;
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:20px;
}

.powder-wire-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1;
  font-weight:400;
  text-align:center;
  text-decoration:none;
}

.powder-wire-links a:hover{
  color:#FAB612;
}

.powder-wire-divider{
  width:1px;
  height:48px;
  background:#aeb5bc;
}

.powder-wire-copy{
  min-width:0;
  font-family:"Open Sans",Arial,sans-serif;
  color:#6B6B6B;
  font-size:15px;
  line-height:1.38;
}

.powder-wire-copy h3{
  margin:0 0 10px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:30px;
  line-height:1.18;
  font-weight:500;
}

.powder-wire-copy p{
  margin:0 0 12px;
}

.powder-wire-copy ul{
  margin:6px 0 0 20px;
  padding:0;
}

.powder-wire-copy li{
  margin:0;
  padding:0;
  line-height:1.34;
}

/* Escritorio con poca altura: conserva el contenido completo sin reducirlo demasiado. */
@media (min-width:981px) and (max-height:760px){
  .powder-wire-section{
    min-height:560px;
    grid-template-rows:96px 1fr;
  }

  .powder-wire-titleband,
  .powder-wire-titleband-inner{
    height:96px;
  }

  .powder-wire-titleband h2{
    font-size:41px;
  }

  .powder-wire-content{
    padding:14px 0 16px;
  }

  .powder-wire-rule{
    margin-bottom:12px;
  }

  .powder-wire-grid{
    width:min(calc(100% - 48px),1260px);
    grid-template-columns:minmax(520px,1.08fr) minmax(500px,.92fr);
    gap:48px;
  }

  .powder-wire-copy{
    font-size:13.5px;
    line-height:1.3;
  }

  .powder-wire-copy h3{
    font-size:26px;
    margin-bottom:7px;
  }

  .powder-wire-copy p{
    margin-bottom:8px;
  }

  .powder-wire-copy li{
    line-height:1.28;
  }

  .powder-wire-links{
    height:48px;
  }

  .powder-wire-divider{
    height:40px;
  }
}

@media (max-width:980px){
  .powder-wire-section{
    height:auto;
    min-height:0;
    display:block;
    overflow:visible;
  }

  .powder-wire-titleband,
  .powder-wire-titleband-inner{
    height:92px;
  }

  .powder-wire-titleband h2{
    font-size:34px;
  }

  .powder-wire-content{
    padding:24px 0 34px;
  }

  .powder-wire-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:24px;
  }

  .powder-wire-media{
    width:min(100%,620px);
    margin:0 auto;
  }

  .powder-wire-copy{
    font-size:15px;
    line-height:1.45;
  }

  .powder-wire-copy h3{
    font-size:28px;
  }
}

@media (max-width:600px){
  .powder-wire-titleband h2{
    font-size:30px;
  }
}

/* =========================================================
   USED THERMAL SPRAY EQUIPMENT — SECTION ONLY
   Desktop: title + image + complete copy in one viewport
========================================================= */
.used-equipment-section{
  font-family:"Open Sans",Arial,sans-serif;
  width:100%;
  height:calc(100vh - 126px);
  min-height:620px;
  display:grid;
  grid-template-rows:108px 1fr;
  background:#eef1f3;
  color:#6B6B6B;
  overflow:hidden;
}

.used-equipment-titleband{
  width:100%;
  height:108px;
  background:#154A99;
}

.used-equipment-titleband-inner{
  height:108px;
  display:flex;
  align-items:center;
}

.used-equipment-titleband h2{
  margin:0;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:44px;
  line-height:1;
  font-weight:700;
}

.used-equipment-content{
  min-height:0;
  padding:16px 0 18px;
  background:#eef1f3;
  box-sizing:border-box;
}

.used-equipment-rule{
  width:70px;
  height:3px;
  margin:0 auto 14px;
  background:#154A99;
}

.used-equipment-grid{
  width:min(calc(100% - 48px),1280px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(500px,1.02fr) minmax(540px,.98fr);
  gap:60px;
  align-items:start;
}

.used-equipment-media{
  min-width:0;
}

.used-equipment-image{
  width:100%;
  aspect-ratio:4 / 2.65;
  overflow:hidden;
  background:#dfe4e8;
}

.used-equipment-image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.used-equipment-links{
  height:54px;
  margin-top:5px;
  display:grid;
  grid-template-columns:1fr 1px 1fr;
  align-items:center;
  gap:20px;
}

.used-equipment-links a{
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:13px;
  line-height:1.2;
  font-weight:400;
  text-align:center;
  text-decoration:none;
}

.used-equipment-divider{
  width:1px;
  height:44px;
  background:#aeb5bc;
}

.used-equipment-signup{
  display:block;
  width:100%;
  margin-top:14px;
  padding:12px 18px;
  box-sizing:border-box;
  background:#FAB612;
  color:#fff;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:14px;
  line-height:1.15;
  text-align:center;
  text-decoration:none;
}

.used-equipment-copy{
  min-width:0;
  font-family:"Open Sans",Arial,sans-serif;
  color:#6B6B6B;
  font-size:14px;
  line-height:1.34;
}

.used-equipment-copy h3{
  margin:0 0 10px;
  color:#154A99;
  font-family:"Open Sans",Arial,sans-serif;
  font-size:29px;
  line-height:1.18;
  font-weight:500;
}

.used-equipment-copy p{
  margin:0 0 9px;
}

.used-equipment-copy .used-equipment-question{
  color:#154A99;
  font-weight:500;
}

.used-equipment-copy ul{
  margin:5px 0 0 20px;
  padding:0;
}

.used-equipment-copy li{
  margin:0;
  padding:0;
  line-height:1.3;
}

@media (min-width:981px) and (max-height:760px){
  .used-equipment-section{
    min-height:560px;
    grid-template-rows:92px 1fr;
  }

  .used-equipment-titleband,
  .used-equipment-titleband-inner{
    height:92px;
  }

  .used-equipment-titleband h2{
    font-size:39px;
  }

  .used-equipment-content{
    padding:12px 0 14px;
  }

  .used-equipment-rule{
    margin-bottom:10px;
  }

  .used-equipment-grid{
    width:min(calc(100% - 48px),1220px);
    gap:50px;
  }

  .used-equipment-copy{
    font-size:12.5px;
    line-height:1.25;
  }

  .used-equipment-copy h3{
    font-size:25px;
    margin-bottom:6px;
  }

  .used-equipment-copy p{
    margin-bottom:6px;
  }

  .used-equipment-copy li{
    line-height:1.22;
  }

  .used-equipment-links{
    height:44px;
  }

  .used-equipment-divider{
    height:36px;
  }

  .used-equipment-signup{
    margin-top:9px;
    padding:9px 14px;
    font-size:12px;
  }
}

@media (max-width:980px){
  .used-equipment-section{
    height:auto;
    min-height:0;
    display:block;
    overflow:visible;
  }

  .used-equipment-titleband,
  .used-equipment-titleband-inner{
    height:92px;
  }

  .used-equipment-titleband h2{
    font-size:34px;
  }

  .used-equipment-content{
    padding:24px 0 34px;
  }

  .used-equipment-grid{
    width:min(calc(100% - 32px),720px);
    grid-template-columns:1fr;
    gap:24px;
  }

  .used-equipment-media{
    width:min(100%,620px);
    margin:0 auto;
  }

  .used-equipment-copy{
    font-size:15px;
    line-height:1.45;
  }

  .used-equipment-copy h3{
    font-size:28px;
  }
}

@media (max-width:600px){
  .used-equipment-titleband h2{
    font-size:30px;
  }
}

/* =========================================================
   OUR SERVICES — FULL DESKTOP SCREEN
   2026-09-16
   Fits title band + all 6 Thermal Spray Process cards in one
   desktop viewport below the approved 92px header.
   ========================================================= */
@media (min-width:901px){
    #services.services-screen{
        height:calc(100dvh - 92px) !important;
        min-height:calc(100dvh - 92px) !important;
        overflow:hidden !important;
        display:grid !important;
        grid-template-rows:118px minmax(0,1fr) !important;
    }

    #services .services-hero{
        height:118px !important;
        min-height:118px !important;
        overflow:hidden !important;
    }

    #services .services-hero-inner{
        height:118px !important;
        min-height:118px !important;
        align-items:center !important;
    }

    #services .services-hero-copy{
        width:55% !important;
        align-self:center !important;
    }

    #services .services-hero-copy h2{
        margin:0 0 2px !important;
        font-size:43px !important;
        line-height:.88 !important;
    }

    #services .services-hero-copy p{
        margin:0 !important;
        max-width:520px !important;
        font-size:18px !important;
        line-height:1.08 !important;
    }

    #services .services-person{
        height:112px !important;
        width:auto !important;
        max-width:34% !important;
        right:42px !important;
        bottom:0 !important;
        object-fit:contain !important;
        object-position:center bottom !important;
    }

    #services .services-content{
        min-height:0 !important;
        height:100% !important;
        overflow:hidden !important;
        padding:18px 28px 20px !important;
        display:flex !important;
        flex-direction:column !important;
    }

    #services .services-content-inner{
        width:min(1120px,100%) !important;
        height:100% !important;
        margin:0 auto !important;
        display:flex !important;
        flex-direction:column !important;
        min-height:0 !important;
    }

    #services .services-content h3{
        flex:0 0 auto !important;
        margin:0 0 14px !important;
        font-size:25px !important;
        line-height:1.05 !important;
    }

    #services .services-grid{
        flex:1 1 auto !important;
        min-height:0 !important;
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
        grid-template-rows:repeat(2,minmax(0,1fr)) !important;
        gap:14px 20px !important;
    }

    #services .service-card{
        min-height:0 !important;
        height:100% !important;
        display:grid !important;
        grid-template-rows:minmax(0,1fr) auto !important;
    }

    #services .service-image{
        height:auto !important;
        min-height:0 !important;
    }

    #services .service-image img{
        width:100% !important;
        height:100% !important;
        object-fit:cover !important;
    }

    #services .service-card-body{
        min-height:76px !important;
        padding:10px 15px 11px !important;
    }

    #services .service-card h4{
        margin:0 0 7px !important;
        font-size:15px !important;
        line-height:1.12 !important;
    }

    #services .service-card a{
        font-size:12px !important;
        line-height:1.1 !important;
    }
}






#contact .contact-field select{
  width:100%;
  height:34px;
  padding:0 12px;
  border:1px solid rgba(21,74,153,.18);
  border-radius:7px;
  background:#fff;
  color:#154A99;
  font:inherit;
}

#contact .contact-form-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}

#contact .contact-captcha-placeholder{
  display:grid;
  grid-template-columns:28px auto;
  grid-template-rows:auto auto;
  column-gap:10px;
  align-items:center;
  min-width:250px;
  padding:8px 12px;
  border:1px solid rgba(21,74,153,.18);
  border-radius:8px;
  background:#f7f8f9;
  color:#154A99;
}

#contact .contact-captcha-box{
  grid-row:1 / 3;
  width:26px;
  height:26px;
  border:2px solid #6B6B6B;
  border-radius:3px;
  background:#fff;
}

#contact .contact-captcha-placeholder strong{
  font-size:12px;
  line-height:1.1;
}

#contact .contact-captcha-placeholder small{
  color:#6B6B6B;
  font-size:9px;
  line-height:1.15;
}

#contact .contact-submit{
  flex:0 0 auto;
  min-width:118px;
}

/* =========================================================
   VIDEO GALLERY — YOUTUBE CAROUSEL
========================================================= */
#videos.video-gallery{
  padding:64px 0 70px;
  background:#fff;
  color:#154A99;
  scroll-margin-top:92px;
}

#videos .video-gallery-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:28px;
}

#videos .video-gallery-head .kicker{
  margin:0 0 7px;
  color:#154A99;
  font-size:12px;
  font-weight:800;
  letter-spacing:1.8px;
}

#videos .video-gallery-head h2{
  margin:0;
  color:#154A99;
  font-size:clamp(31px,3vw,44px);
  line-height:1.08;
}

#videos .video-channel-link{
  flex:0 0 auto;
  padding-bottom:5px;
  border-bottom:3px solid #FAB612;
  color:#154A99;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
}

#videos .video-carousel-shell{
  position:relative;
}

#videos .video-carousel{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-flow:row;
  gap:16px;
  overflow:visible;
  padding:3px 2px 8px;
  scroll-snap-type:none;
  scrollbar-width:none;
}

#videos .video-carousel::-webkit-scrollbar{
  display:none;
}

#videos .video-card{
  overflow:hidden;
  scroll-snap-align:start;
  border-radius:13px;
  background:#f3f5f6;
  box-shadow:0 8px 24px rgba(21,74,153,.08);
  color:#154A99;
  text-decoration:none;
  transition:transform .22s ease,box-shadow .22s ease;
}

#videos .video-card:hover{
  transform:translateY(-4px);
  box-shadow:0 13px 30px rgba(21,74,153,.15);
}

#videos .video-card-preview{
  position:relative;
  aspect-ratio:16/9;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:
    linear-gradient(135deg,rgba(21,74,153,.96),rgba(47,108,157,.82)),
    #154A99;
}

#videos .video-card-preview-real img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

#videos .video-card-preview-real::after{
  display:none;
}

#videos .video-card-preview::after{
  content:"";
  position:absolute;
  inset:auto -10% -48% 25%;
  height:90%;
  transform:rotate(-10deg);
  background:rgba(250,182,18,.18);
}

#videos .video-card-preview-alt{
  background:linear-gradient(135deg,#154A99,#154A99);
}

#videos .video-card-preview-third{
  background:linear-gradient(135deg,#1D1D1B,#154A99);
}

#videos .video-play{
  position:relative;
  z-index:3;
  display:grid;
  place-items:center;
  width:58px;
  height:58px;
  padding-left:4px;
  border:3px solid #fff;
  border-radius:50%;
  background:#FAB612;
  color:#154A99;
  font-size:20px;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}

#videos .video-card-copy{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:11px 15px 13px;
}

#videos .video-card-copy span{
  color:#154A99;
  font-size:10px;
  font-weight:800;
  letter-spacing:1.5px;
}

#videos .video-card-copy strong{
  font-size:16px;
  line-height:1.2;
}

#videos .video-card-copy small{
  color:#6B6B6B;
  font-size:12px;
}

#videos .video-carousel-arrow{
  position:absolute;
  z-index:4;
  top:calc(50% - 28px);
  width:44px;
  height:44px;
  border:0;
  border-radius:50%;
  background:#FAB612;
  color:#154A99;
  font-size:31px;
  line-height:1;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(21,74,153,.18);
}

#videos .video-carousel-prev{left:-22px}
#videos .video-carousel-next{right:-22px}

@media (min-width:901px){
  #videos .video-carousel-arrow{
    display:grid;
    place-items:center;
    top:110px;
    width:42px;
    height:42px;
    font-size:29px;
    box-shadow:0 6px 18px rgba(21,74,153,.24);
  }

  #videos .video-carousel-prev{
    left:8px;
  }

  #videos .video-carousel-next{
    right:8px;
  }

  #videos .video-carousel-arrow.is-disabled{
    opacity:.28;
    pointer-events:none;
  }

  #videos .video-card-preview{
    aspect-ratio:16/7.6;
  }
}

@media (max-width:900px){
  #videos.video-gallery{
    padding:50px 0 56px;
    scroll-margin-top:82px;
  }

  #videos .video-gallery-head{
    align-items:flex-start;
  }

  #videos .video-carousel{
    grid-template-columns:none;
    grid-auto-flow:column;
    grid-auto-columns:minmax(285px,78vw);
    gap:18px;
    overflow-x:auto;
    padding:3px 2px 18px;
    scroll-snap-type:x mandatory;
  }

  #videos .video-carousel-prev{left:-8px}
  #videos .video-carousel-next{right:-8px}
}

@media (max-width:620px){
  #videos .video-gallery-head{
    flex-direction:column;
    gap:14px;
    margin-bottom:22px;
  }

  #videos .video-carousel{
    grid-auto-columns:86vw;
  }

  #videos .video-carousel-arrow{
    display:none;
  }
}

/* =========================================================
   CONTACT — COMPACT TWO-COLUMN LAYOUT
========================================================= */
#contact.contact-compact{
  padding:0 0 54px;
  background:#eef1f3;
  color:#154A99;
}

#contact .contact-banner{
  background:linear-gradient(90deg,#154A99 0%,#154A99 100%);
}

#contact .contact-banner-inner{
  min-height:138px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

#contact .contact-banner .kicker{
  margin:0 0 7px;
  color:#FAB612;
  font-size:12px;
  font-weight:800;
  letter-spacing:2px;
}

#contact .contact-banner h2{
  max-width:850px;
  margin:0;
  color:#fff;
  font-size:clamp(30px,3vw,44px);
  line-height:1.08;
}

#contact .contact-compact-grid{
  display:grid;
  grid-template-columns:minmax(230px,.68fr) minmax(0,1.72fr);
  gap:38px;
  padding-top:18px;
  align-items:start;
}

#contact .contact-intro{
  position:sticky;
  top:112px;
}

#contact .contact-intro .kicker{
  margin:0 0 8px;
  color:#154A99;
  font-size:12px;
  font-weight:800;
  letter-spacing:1.8px;
}

#contact .contact-intro h3{
  margin:0 0 14px;
  color:#154A99;
  font-size:31px;
  line-height:1.08;
}

#contact .contact-intro > p:not(.kicker){
  margin:0;
  color:#6B6B6B;
  font-size:16px;
  line-height:1.55;
}

#contact .contact-direct{
  display:flex;
  flex-direction:column;
  gap:7px;
  margin-top:25px;
  padding-top:20px;
  border-top:3px solid #FAB612;
}

#contact .contact-direct span{
  margin-bottom:3px;
  color:#6B6B6B;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:1px;
}

#contact .contact-direct a{
  color:#154A99;
  font-weight:700;
  text-decoration:none;
}

#contact .contact-compact-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px 14px;
  padding:16px 18px;
  background:#fff;
  border-radius:14px;
  box-shadow:0 12px 34px rgba(21,74,153,.08);
}

#contact .contact-field{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}

#contact .contact-field-wide{
  grid-column:1 / -1;
}

#contact .contact-field label{
  color:#154A99;
  font-size:12px;
  line-height:1.2;
  font-weight:700;
}

#contact .contact-field label em{
  color:#b94a35;
  font-size:10px;
  font-weight:600;
}

#contact .contact-field input,
#contact .contact-field select,
#contact .contact-field textarea{
  width:100%;
  box-sizing:border-box;
  border:1px solid #d7dde1;
  border-radius:7px;
  background:#f9fafb;
  padding:10px 11px;
  color:#1D1D1B;
  font:inherit;
  font-size:14px;
  outline:none;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;
}

#contact .contact-field input{
  height:34px;
}

#contact .contact-field textarea{
  min-height:58px;
  resize:vertical;
}

#contact .contact-field input:focus,
#contact .contact-field textarea:focus{
  border-color:#154A99;
  background:#fff;
  box-shadow:0 0 0 3px rgba(21,74,153,.10);
}

#contact .contact-form-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:2px;
}

#contact .contact-form-note{
  margin:0;
  color:#7a7a7a;
  font-size:11px;
  line-height:1.35;
}

#contact .contact-form-bottom .btn{
  flex:0 0 auto;
}

@media (max-width:900px){
  #contact.contact-compact{
    padding-bottom:42px;
  }

  #contact .contact-banner-inner{
    min-height:118px;
  }

  #contact .contact-compact-grid{
    grid-template-columns:1fr;
    gap:28px;
    padding-top:30px;
  }

  #contact .contact-intro{
    position:static;
  }

  #contact .contact-compact-form{
    padding:20px;
  }
}

@media (max-width:620px){
  #contact .contact-compact-form{
    grid-template-columns:1fr;
    gap:13px;
    padding:17px;
  }

  #contact .contact-field-wide{
    grid-column:auto;
  }

  #contact .contact-form-bottom{
    flex-direction:column;
    align-items:stretch;
  }

  #contact .contact-form-bottom .btn{
    width:100%;
  }
}

/* Floating contact CTA */
.floating-contact-btn{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:1200;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:42px;
  padding:0 14px;
  border:2px solid #FAB612;
  border-radius:999px;
  background:#FAB612;
  color:#154A99;
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:.7px;
  text-decoration:none;
  box-shadow:0 7px 20px rgba(21,74,153,.20);
  transform-origin:center;
  animation:floatingContactAttention 5s ease-in-out infinite;
  transition:background .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease;
}

.floating-contact-btn:hover,
.floating-contact-btn:focus-visible{
  background:#154A99;
  border-color:#154A99;
  color:#fff;
  box-shadow:0 9px 24px rgba(21,74,153,.30);
  animation-play-state:paused;
  transform:scale(1.04);
}

.floating-contact-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
  line-height:1;
}

@keyframes floatingContactAttention{
  0%,68%,100%{
    transform:translate3d(0,0,0) scale(1);
    box-shadow:0 7px 20px rgba(21,74,153,.18);
    filter:brightness(1);
  }

  72%{
    transform:translate3d(0,-3px,0) scale(1.06);
  }

  76%{
    transform:translate3d(-4px,-5px,0) scale(1.12);
    box-shadow:
      0 12px 30px rgba(250,182,18,.52),
      0 0 0 6px rgba(250,182,18,.16);
    filter:brightness(1.12);
  }

  80%{
    transform:translate3d(4px,-5px,0) scale(1.12);
  }

  84%{
    transform:translate3d(-2px,-3px,0) scale(1.08);
  }

  88%{
    transform:translate3d(2px,-2px,0) scale(1.05);
    box-shadow:
      0 9px 25px rgba(250,182,18,.34),
      0 0 0 3px rgba(250,182,18,.10);
    filter:brightness(1.06);
  }

  94%{
    transform:translate3d(0,0,0) scale(1);
    box-shadow:0 7px 20px rgba(21,74,153,.18);
    filter:brightness(1);
  }
}

@media (max-width:900px){
  .floating-contact-btn{
    right:14px;
    bottom:14px;
    min-width:44px;
    min-height:44px;
    padding:0;
    border-radius:50%;
  }

  .floating-contact-text{
    display:none;
  }

  .floating-contact-icon{
    font-size:17px;
  }
}

/* YouTube fullscreen-style video modal */
.video-modal{
  position:fixed;
  inset:0;
  z-index:3000;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
}

.video-modal.is-open{display:flex}

.video-modal-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,18,30,.94);
}

.video-modal-dialog{
  position:relative;
  z-index:1;
  width:min(94vw,1400px);
}

.video-modal-frame{
  overflow:hidden;
  width:100%;
  aspect-ratio:16/9;
  border-radius:10px;
  background:#000;
  box-shadow:0 20px 60px rgba(0,0,0,.38);
}

.video-modal-frame iframe{
  display:block;
  width:100%;
  height:100%;
  border:0;
}

.video-modal-close{
  position:absolute;
  z-index:3;
  top:12px;
  right:12px;
  width:42px;
  height:42px;
  border:0;
  border-radius:50%;
  background:#FAB612;
  color:#154A99;
  font-size:30px;
  line-height:1;
  font-weight:700;
  cursor:pointer;
}

body.video-modal-open{overflow:hidden}

@media (max-width:620px){
  .video-modal{padding:14px}
  .video-modal-close{
    top:-48px;
    right:0;
  }
}

/* Explicit swipe instruction for normal portrait-phone use */
.video-swipe-hint{
  display:none;
}

@media (max-width:620px) and (orientation:portrait){
  #videos .video-swipe-hint{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    width:min(calc(100% - 32px),720px);
    margin:-6px auto 14px;
    padding:9px 12px;
    border-radius:999px;
    background:#FAB612;
    color:#154A99;
    font-size:11px;
    line-height:1;
    font-weight:800;
    letter-spacing:.7px;
    text-align:center;
  }

  #videos .video-swipe-arrow{
    flex:0 0 auto;
    font-size:19px;
    line-height:1;
  }

  #videos .video-carousel-arrow{
    display:grid !important;
    top:92px;
    z-index:8;
  }

  #videos .video-carousel-prev{
    left:8px;
  }

  #videos .video-carousel-next{
    right:8px;
  }
}


@media (max-width:620px){
  #contact .contact-form-bottom{
    align-items:stretch;
    flex-direction:column;
  }

  #contact .contact-captcha-placeholder{
    min-width:0;
    width:100%;
  }

  #contact .contact-submit{
    width:100%;
  }
}

@media (min-width:901px){
  #contact .contact-banner{
    height:88px;
  }

  #contact .contact-banner-inner{
    height:100%;
    display:flex;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
    gap:22px;
    padding-top:0;
    padding-bottom:0;
  }

  #contact .contact-banner .kicker{
    flex:0 0 auto;
    margin:0;
    white-space:nowrap;
  }

  #contact .contact-banner h2{
    flex:1 1 auto;
    min-width:0;
    margin:0;
    font-size:clamp(28px,2.45vw,39px);
    line-height:1.05;
    white-space:nowrap;
  }

  #contact .contact-compact-grid{
    padding-top:18px;
  }

  #contact .contact-intro .kicker{
    margin-bottom:5px;
  }

  #contact .contact-intro h3{
    margin-bottom:10px;
  }

  #contact .contact-intro p{
    margin-bottom:10px;
    line-height:1.45;
  }

  #contact .contact-direct{
    margin-top:16px;
    padding-top:16px;
  }

  #contact .contact-field label{
    margin-bottom:3px;
    font-size:12px;
  }

  #contact .contact-field input,
  #contact .contact-field select{
    height:34px;
  }

  #contact .contact-field textarea{
    min-height:58px;
  }

  #contact .contact-captcha-placeholder{
    min-height:38px;
    padding:6px 10px;
  }
}

.floating-contact-btn.is-hidden-on-contact{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(14px) scale(.92);
  animation:none;
}



/* =========================================================
   HERO — brand text mirrors the menu-logo typography
   2026-09-23
========================================================= */
#home .hero-reference-copy h1 .hero-company-name,
#home .hero-reference-copy h1 .hero-specialty,
#home .hero-reference-copy h1 .hero-specialty-main,
#home .hero-reference-copy h1 .hero-specialty-sub{
  display:block;
}

#home .hero-reference-copy h1 .hero-company-name{
  color:#6B6B6B;
  font-size:clamp(17px,1.25vw,22px) !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:-.035em !important;
  white-space:nowrap;
  width:max-content;
  max-width:none;
  margin:0 0 2px;
}

#home .hero-reference-copy h1 .hero-specialty{
  margin:0;
  color:#fff;
  white-space:nowrap;
  width:max-content;
  max-width:none;
}

#home .hero-reference-copy h1 .hero-specialty-main,
#home .hero-reference-copy h1 .hero-specialty-sub{
  color:#fff !important;
  font-size:clamp(23px,1.75vw,30px) !important;
  font-weight:800 !important;
  line-height:.82 !important;
  letter-spacing:-.045em !important;
  white-space:nowrap;
  width:max-content;
  max-width:none;
}

#home .hero-reference-copy h1 .hero-specialty-sub{
  margin-top:4px;
}

#home .hero-reference-copy h2.hero-trusted-title{
  margin:22px 0 16px !important;
  font-family:"Open Sans",Arial,sans-serif !important;
  text-transform:uppercase !important;
  line-height:.92 !important;
  letter-spacing:-.035em !important;
}

#home .hero-reference-copy .hero-trusted-title span{
  display:block;
  width:max-content;
  max-width:100%;
  white-space:nowrap;
}

#home .hero-reference-copy .hero-trusted-top,
#home .hero-reference-copy .hero-trusted-bottom{
  color:#FAB612 !important;
  font-size:clamp(19px,1.45vw,25px) !important;
  font-weight:800 !important;
}

#home .hero-reference-copy .hero-trusted-main{
  color:#fff !important;
  font-size:clamp(27px,2.15vw,36px) !important;
  font-weight:800 !important;
}

#home .hero-reference-copy .hero-trusted-bottom{
  margin-top:3px;
}

@media (max-width:900px){
  #home .hero-reference-copy h1 .hero-company-name{
    font-size:clamp(15px,2.25vw,19px) !important;
  }

  #home .hero-reference-copy h1 .hero-specialty-main,
  #home .hero-reference-copy h1 .hero-specialty-sub{
    font-size:clamp(20px,3.1vw,26px) !important;
  }

  #home .hero-reference-copy .hero-trusted-top,
  #home .hero-reference-copy .hero-trusted-bottom{
    font-size:clamp(17px,2.8vw,22px) !important;
  }

  #home .hero-reference-copy .hero-trusted-main{
    font-size:clamp(24px,4vw,31px) !important;
  }
}

#home .hero-copy-paragraphs{
  max-width:470px;
  margin:0 0 28px;
}

#home .hero-copy-paragraphs p{
  margin:0 !important;
}

#home .hero-copy-paragraphs p + p{
  margin-top:22px !important;
}

@media (max-width:600px){
  /* MOBILE HERO — text above artwork, copy below logo, CTA last */
  #home.hero-reference{
    background-color:#0b3f79 !important;
    background-image:url("../img/fondo_page.png") !important;
    background-repeat:no-repeat !important;
    background-size:100% auto !important;
    background-position:center top !important;
    height:calc(100svh - 78px) !important;
    min-height:0 !important;
    overflow:hidden !important;
    /* Override the old 58% / 42% mobile grid: the artwork is now a background,
       so the content column must span the full HERO width. */
    grid-template-columns:1fr !important;
  }

  #home.hero-reference::after{
    background:linear-gradient(180deg,
      rgba(0,0,0,.08) 0%,
      rgba(0,0,0,0) 48%,
      rgba(0,0,0,.30) 72%,
      rgba(0,0,0,.52) 100%) !important;
  }

  #home .hero-reference-inner{
    box-sizing:border-box !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    margin:0 !important;
    padding:14px 18px 14px !important;
    display:block !important;
    grid-column:1 / -1 !important;
  }

  #home .hero-reference-copy{
    position:relative !important;
    box-sizing:border-box !important;
    width:100% !important;
    max-width:none !important;
    height:100% !important;
    margin:0 !important;
    padding:0 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
  }

  /* MOBILE: upper brand block hidden; the background/logo composition is untouched. */
  #home .hero-reference-copy h1{
    display:none !important;
  }

  #home .hero-reference-copy h1 .hero-company-name{
    display:block !important;
    color:#FAB612 !important;
    font-size:clamp(10px,2.8vw,12px) !important;
    font-weight:400 !important;
    line-height:1 !important;
    margin:0 0 2px !important;
  }

  #home .hero-reference-copy h1 .hero-specialty{
    display:block !important;
    color:#fff !important;
    margin:0 !important;
  }

  #home .hero-reference-copy h1 .hero-specialty-main,
  #home .hero-reference-copy h1 .hero-specialty-sub{
    display:block !important;
    color:#fff !important;
    font-size:clamp(13px,3.55vw,16px) !important;
    font-weight:800 !important;
    line-height:.86 !important;
    letter-spacing:-.045em !important;
  }

  #home .hero-reference-copy h1 .hero-specialty-sub{
    margin-top:3px !important;
  }

  /* MOBILE: exactly three headline lines below the N+A artwork. */
  #home .hero-reference-copy h2.hero-trusted-title{
    flex:0 0 auto !important;
    position:relative !important;
    width:100% !important;
    max-width:none !important;
    margin:calc(clamp(235px,62vw,270px) + 38px) 0 0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
    font-family:"Open Sans",Arial,sans-serif !important;
    text-align:center !important;
    text-transform:none !important;
  }

  #home .hero-reference-copy h2.hero-trusted-title span{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    letter-spacing:-.035em !important;
    white-space:normal !important;
    text-align:center !important;
  }

  /* Line 1 */
  #home .hero-reference-copy .hero-trusted-top{
    color:#FAB612 !important;
    font-size:clamp(22px,6vw,27px) !important;
    font-weight:800 !important;
    line-height:.92 !important;
  }

  /* PROVIDER OF remains available for desktop, hidden only on mobile. */
  #home .hero-reference-copy .hero-trusted-main:first-of-type{
    display:none !important;
  }

  /* Line 2 */
  #home .hero-reference-copy .hero-trusted-main{
    color:#fff !important;
    font-size:clamp(22px,6vw,27px) !important;
    font-weight:800 !important;
    line-height:.92 !important;
  }

  /* Line 3 */
  #home .hero-reference-copy .hero-trusted-bottom{
    color:#FAB612 !important;
    font-size:clamp(13px,3.6vw,16px) !important;
    font-weight:800 !important;
    line-height:1 !important;
    margin-top:2px !important;
  }

  /* Existing lower copy, with no white separator lines. */
  #home .hero-copy-paragraphs{
    flex:0 0 auto !important;
    position:relative !important;
    left:auto !important;
    right:auto !important;
    width:100% !important;
    max-width:none !important;
    margin:7px 0 8px !important;
    padding:0 !important;
    border:0 !important;
    box-sizing:border-box !important;
    transform:none !important;
    text-align:center !important;
  }

  #home .hero-copy-paragraphs p{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
    box-sizing:border-box !important;
    color:#fff !important;
    font-size:clamp(13px,3.55vw,15px) !important;
    font-weight:400 !important;
    line-height:1.05 !important;
    text-align:center !important;
    text-wrap:wrap !important;
  }

  #home .hero-copy-paragraphs p + p{
    width:100% !important;
    margin:13px 0 0 !important;
    padding:0 !important;
    border:0 !important;
  }

  #home .quote-button{
    position:relative !important;
    flex:0 0 auto !important;
    align-self:center !important;
    left:auto !important;
    right:auto !important;
    width:auto !important;
    min-width:184px !important;
    min-height:42px !important;
    margin:10px auto 0 !important;
    padding:0 26px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    transform:none !important;
    font-size:11px !important;
    white-space:nowrap !important;
  }

  .floating-contact-btn.is-hidden-on-mobile-hero{
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    animation:none !important;
  }
}


/* =========================================================
   ENTRY LANDING — landing_mclaughlin.png
   ========================================================= */
body.landing-active{
  overflow:hidden;
}

.site-entry{
  position:fixed;
  inset:0;
  z-index:999999;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#05090d;
  opacity:1;
  visibility:visible;
  transition:opacity .45s ease, visibility .45s ease;
}

.site-entry.is-leaving{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

.site-entry-image{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  user-select:none;
  -webkit-user-drag:none;
}

.site-entry-button{
  position:absolute;
  left:66%;
  top:51%;
  transform:translate(-50%,-50%);
  min-width:150px;
  min-height:44px;
  padding:11px 20px;
  border:2px solid #FAB612;
  border-radius:3px;
  background:#FAB612;
  color:#1D1D1B;
  font-family:'Open Sans',sans-serif;
  font-size:15px;
  font-weight:800;
  line-height:1;
  letter-spacing:.06em;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(0,0,0,.30);
  transition:background .2s ease,color .2s ease,transform .2s ease;
}

.site-entry-button:hover,
.site-entry-button:focus-visible{
  background:#154A99;
  color:#fff;
  outline:none;
  transform:translate(-50%,-50%) scale(1.04);
}

@media (max-width:700px){
  .site-entry-button{
    left:70%;
    top:51%;
    min-width:118px;
    min-height:38px;
    padding:9px 12px;
    font-size:10px;
  }
}
