@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Playfair+Display:wght@500;600;700&display=swap");


:root{
  --font-body:"Plus Jakarta Sans","Segoe UI",Arial,sans-serif;
  --font-display:"Playfair Display",Georgia,"Times New Roman",serif;
  --navy:#020b16;
  --navy-2:#071628;
  --gold:#cfa96a;
  --gold-2:#f0c878;
  --text:#f7f2ea;
  --muted:#b8c0c9;
  --line:rgba(207,169,106,.35);
  --card:rgba(6,19,34,.78);
  --teal:#19bbb5;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--navy);
  color:var(--text);
  font-family:var(--font-body);
  line-height:1.5;
}
img{max-width:100%;display:block}
a{text-decoration:none;color:inherit}
.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}

.lp-header{
  position:fixed;
  z-index:1000;
  inset-inline:0;
  top:0;
  padding:18px 0;
  background:rgba(2,11,22,.18);
  backdrop-filter:blur(6px);
  border-bottom:1px solid rgba(207,169,106,.06);
}
.lp-nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.brand img{width:110px;height:auto}
.menu{
  display:flex;
  gap:34px;
  align-items:center;
  font-size:14px;
  font-weight:600;
  letter-spacing:.2px;
}
.menu a{opacity:.92;position:relative}
.menu a.active::after{
  content:"";
  position:absolute;
  left:0;right:0;bottom:-10px;
  margin:auto;
  width:34px;height:2px;
  background:var(--gold);
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:48px;
  padding:0 28px;
  border-radius:4px;
  border:1px solid var(--line);
  color:var(--text);
  font-weight:700;
  font-size:14px;
  transition:.25s ease;
}
.btn.gold{
  color:#08111f;
  background:linear-gradient(135deg,#f1ca79,#b98b43);
  border-color:transparent;
}
.btn.outline{background:rgba(2,11,22,.34)}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,0,0,.28)}
.header-cta{
  min-height:42px;
  padding:0 24px;
  color:var(--gold-2);
  border-color:rgba(207,169,106,.75);
  background:rgba(2,11,22,.32);
}

.hero{
  position:relative;
  min-height:760px;
  overflow:hidden;
  background:#061426;
}
.hero-bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(2,10,20,.94) 0%,rgba(2,10,20,.72) 35%,rgba(2,10,20,.26) 68%,rgba(2,10,20,.45) 100%),
    linear-gradient(180deg,rgba(2,10,20,.42) 0%,rgba(2,10,20,.04) 44%,rgba(2,10,20,.9) 100%);
}
.hero-inner{
  position:relative;
  z-index:2;
  min-height:760px;
  display:grid;
  grid-template-columns: 48% 52%;
  align-items:center;
  padding-top:92px;
}
.hero-copy{
  max-width:620px;
}
.hero-copy h1{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(48px,5vw,78px);
  line-height:1.06;
  letter-spacing:-1px;
  font-weight:500;
}
.hero-copy h1 span{color:var(--gold)}
.hero-copy .bar{
  width:90px;height:2px;background:var(--gold);
  margin:34px 0;
}
.hero-copy p{
  max-width:540px;
  margin:0 0 34px;
  color:#e7e9ec;
  font-size:20px;
  line-height:1.65;
}
.hero-actions{display:flex;gap:18px;flex-wrap:wrap}
.logo-stage{
  position:relative;
  min-height:520px;
}
.trust-row{
  position:absolute;
  z-index:3;
  left:0;right:0;
  bottom:0;
  border-top:1px solid rgba(207,169,106,.22);
  border-bottom:1px solid rgba(207,169,106,.22);
  background:rgba(3,14,27,.72);
  backdrop-filter:blur(12px);
}
.trust-grid{
  min-height:88px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  align-items:center;
  gap:0;
}
.trust-item{
  display:flex;
  align-items:center;
  gap:14px;
  padding:0 24px;
  border-right:1px solid rgba(207,169,106,.22);
}
.trust-item:last-child{border-right:none}
.icon{
  color:var(--gold);
  font-size:26px;
}
.trust-item strong{display:block;color:var(--gold-2);font-size:16px}
.trust-item small{color:#d9dde2}

section{position:relative}
.section-pad{padding:78px 0}
.dark-section{
  background:
    radial-gradient(circle at 70% 20%,rgba(31,178,170,.08),transparent 32%),
    linear-gradient(180deg,#061426 0%,#02101e 100%);
}
.eyebrow{
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:4px;
  font-weight:800;
  font-size:12px;
}
.section-title{
  font-family:var(--font-display);
  font-size:clamp(34px,3.8vw,54px);
  line-height:1.12;
  margin:10px 0 20px;
  font-weight:500;
}
.coverage-grid{
  display:grid;
  grid-template-columns:36% 64%;
  align-items:center;
  gap:40px;
}
.coverage-copy p{color:var(--muted);max-width:420px}
.map-card{
  min-height:310px;
  border:1px solid var(--line);
  border-radius:14px;
  overflow:hidden;
  background:var(--card);
  box-shadow:0 18px 60px rgba(0,0,0,.22);
}
.map-card img{width:100%;height:100%;object-fit:cover;opacity:.92}

.stats{
  margin-top:28px;
  border:1px solid var(--line);
  border-radius:12px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  background:rgba(3,15,29,.72);
}
.stat{
  text-align:center;
  padding:22px 14px;
  border-right:1px solid rgba(207,169,106,.22);
}
.stat:last-child{border-right:none}
.stat b{display:block;color:var(--gold-2);font-size:34px;font-weight:700}
.stat span{font-size:13px;color:#d9dde2}

.products{text-align:center}
.products .eyebrow{display:block}
.product-grid{
  margin-top:28px;
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:16px;
}
.product-card{
  text-align:left;
  border:1px solid var(--line);
  border-radius:8px;
  overflow:hidden;
  background:rgba(5,18,33,.82);
  transition:.25s ease;
}
.product-card:hover{transform:translateY(-6px);border-color:rgba(240,200,120,.72)}
.product-card img{height:132px;width:100%;object-fit:cover}
.product-card .body{padding:18px}
.product-card h3{
  margin:0 0 8px;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:22px;
}
.product-card p{margin:0 0 16px;color:#d6dbe2;font-size:14px}
.link{color:var(--gold-2);font-size:13px;font-weight:800}

.partners{
  text-align:center;
  padding:18px 0 38px;
}
.partner-row{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  margin-top:18px;
}
.partner-logo{
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(207,169,106,.24);
  border-radius:7px;
  background:rgba(5,18,33,.72);
  color:#fff;
  font-size:22px;
  letter-spacing:2px;
  font-weight:800;
}
.partner-logo small{display:block;font-size:9px;letter-spacing:4px;color:#d3d9e0}

.features{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:14px;
  border:1px solid var(--line);
  border-radius:10px;
  padding:28px;
  background:rgba(5,18,33,.65);
}
.feature{
  text-align:center;
  padding:6px 10px;
}
.feature .icon{font-size:36px}
.feature h4{margin:12px 0 6px;color:var(--gold-2)}
.feature p{font-size:13px;color:#cfd5dd;margin:0}

.contact{
  padding:62px 0 0;
  background:#061321;
}
.contact-grid{
  display:grid;
  grid-template-columns:32% 40% 28%;
  gap:28px;
  align-items:stretch;
}
.checks{padding:0;margin:22px 0 0;list-style:none}
.checks li{margin:8px 0;color:#e6e8eb}
.checks li::before{content:"✓";color:var(--gold-2);margin-right:10px}
.form{
  border:1px solid var(--line);
  border-radius:9px;
  padding:22px;
  background:rgba(4,16,29,.78);
}
.form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.form input,.form textarea{
  width:100%;
  background:#061426;
  border:1px solid rgba(207,169,106,.22);
  color:#fff;
  border-radius:4px;
  min-height:44px;
  padding:0 14px;
  outline:none;
}
.form textarea{
  grid-column:1/-1;
  min-height:110px;
  padding-top:14px;
  resize:vertical;
}
.form .btn{width:100%;margin-top:14px}
.office{
  border-radius:6px;
  overflow:hidden;
  border:1px solid rgba(207,169,106,.22);
}
.office img{width:100%;height:100%;object-fit:cover}
.footer{
  padding:28px 0 22px;
  border-top:1px solid rgba(207,169,106,.18);
  background:#03101e;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.2fr repeat(4,1fr);
  gap:26px;
}
.footer-logo{width:88px;margin-bottom:12px}
.footer p,.footer a{font-size:13px;color:#aeb8c4}
.footer h5{margin:0 0 12px;color:#fff}
.footer ul{padding:0;margin:0;list-style:none}
.footer li{margin:7px 0}
.copyright{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.08);
  display:flex;
  justify-content:space-between;
  color:#8994a2;
  font-size:12px;
}
.mobile-toggle{display:none}

@media (max-width:980px){
  .mobile-toggle{display:flex}
  .menu,.header-cta{display:none}
  .hero-inner{grid-template-columns:1fr;align-items:end;padding-bottom:120px}
  .logo-stage{display:none}
  .hero-copy p{font-size:17px}
  .trust-grid,.stats,.product-grid,.partner-row,.features,.contact-grid,.footer-grid{grid-template-columns:1fr}
  .trust-item,.stat{border-right:none;border-bottom:1px solid rgba(207,169,106,.18)}
  .coverage-grid{grid-template-columns:1fr}
}


/* ================================
   Premium Motion Layer - V4
================================ */
html{scroll-padding-top:90px}
body::before{
  content:"";
  position:fixed;
  inset:auto auto 0 0;
  width:420px;
  height:420px;
  pointer-events:none;
  z-index:999;
  opacity:.18;
  transform:translate3d(calc(var(--mx, 50vw) - 50%), calc(var(--my, 50vh) - 50%),0);
  background:radial-gradient(circle, rgba(207,169,106,.28), rgba(25,187,181,.08) 38%, transparent 70%);
  filter:blur(18px);
  transition:opacity .35s ease;
}

.lp-header{
  transition:background .35s ease, backdrop-filter .35s ease, padding .35s ease, border-color .35s ease;
}
.lp-header.is-scrolled{
  background:rgba(2,11,22,.84);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(207,169,106,.18);
  padding:10px 0;
  box-shadow:0 14px 34px rgba(0,0,0,.24);
}
@keyframes headerDrop{
  from{transform:translateY(-16px);opacity:.7}
  to{transform:translateY(0);opacity:1}
}

.menu a{
  transition:color .28s ease, opacity .28s ease;
}
.menu a::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:-12px;
  width:0;
  height:2px;
  background:linear-gradient(90deg, transparent, var(--gold-2), transparent);
  transform:translateX(-50%);
  transition:width .35s cubic-bezier(.2,.8,.2,1);
}
.menu a:hover,
.menu a.is-active{color:var(--gold-2);opacity:1}
.menu a:hover::before,
.menu a.is-active::before,
.menu a.active::before{width:42px}
.menu a.active::after{display:none}

.hero-bg{
  transform:scale(1.04) translate3d(calc(var(--parallax-x,0px) * -1), calc(var(--parallax-y,0px) * -1), 0);
  transition:transform .16s linear;
}
.hero-copy{
  animation:heroContentIn 1.15s cubic-bezier(.18,.8,.18,1) .2s both;
}
.logo-stage{
  animation:heroLogoIn 1.2s cubic-bezier(.18,.8,.18,1) .45s both;
}
@keyframes heroContentIn{
  from{opacity:0;transform:translateY(38px);filter:blur(12px)}
  to{opacity:1;transform:translateY(0);filter:blur(0)}
}
@keyframes heroLogoIn{
  from{opacity:0;transform:translateX(48px) scale(.96);filter:blur(14px)}
  to{opacity:1;transform:translateX(0) scale(1);filter:blur(0)}
}

.btn{
  position:relative;
  overflow:hidden;
}
.btn::before{
  content:"";
  position:absolute;
  top:-50%;
  left:-80%;
  width:70%;
  height:200%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.32), transparent);
  transform:rotate(18deg);
  transition:left .55s cubic-bezier(.2,.8,.2,1);
}
.btn:hover::before{left:125%}

.reveal{
  opacity:0;
  transform:translateY(44px);
  filter:blur(10px);
  transition:
    opacity .9s cubic-bezier(.2,.8,.2,1),
    transform .9s cubic-bezier(.2,.8,.2,1),
    filter .9s cubic-bezier(.2,.8,.2,1);
  transition-delay:var(--delay,0ms);
  will-change:opacity,transform,filter;
}
.reveal.is-visible{
  opacity:1;
  transform:translateY(0);
  filter:blur(0);
}
.reveal-left{transform:translateX(-44px)}
.reveal-right{transform:translateX(44px)}
.reveal-scale{transform:scale(.94)}
.reveal-left.is-visible,
.reveal-right.is-visible,
.reveal-scale.is-visible{transform:translateX(0) scale(1)}

.section-focus{
  position:relative;
}
.section-focus::before{
  content:"";
  position:absolute;
  inset:18px;
  border-radius:18px;
  border:1px solid rgba(240,200,120,.28);
  box-shadow:0 0 70px rgba(207,169,106,.16);
  opacity:0;
  pointer-events:none;
  animation:focusPulse 1.6s cubic-bezier(.2,.8,.2,1);
}
@keyframes focusPulse{
  0%{opacity:0;transform:scale(.985)}
  28%{opacity:1;transform:scale(1)}
  100%{opacity:0;transform:scale(1.012)}
}

.product-card,
.partner-logo,
.feature,
.map-card,
.form,
.office,
.stat,
.trust-item{
  transform-style:preserve-3d;
  backface-visibility:hidden;
}
.product-card{
  transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(0);
}
.product-card:hover{
  box-shadow:0 24px 70px rgba(0,0,0,.36), 0 0 0 1px rgba(240,200,120,.26) inset;
}
.product-card::after{
  content:"";
  position:absolute;
  inset:0;
  opacity:0;
  background:radial-gradient(circle at var(--lx,50%) var(--ly,50%), rgba(240,200,120,.18), transparent 38%);
  transition:opacity .25s ease;
  pointer-events:none;
}
.product-card:hover::after{opacity:1}

.partner-logo{
  transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, border-color .35s ease;
}
.partner-logo:hover{
  transform:translateY(-7px) scale(1.025);
  border-color:rgba(240,200,120,.7);
  box-shadow:0 20px 45px rgba(0,0,0,.3), 0 0 38px rgba(207,169,106,.14);
}
.partner-row.is-visible .partner-logo{
  animation:partnerFloat 4.8s ease-in-out infinite;
  animation-delay:var(--delay,0ms);
}
@keyframes partnerFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}

.stat b{
  text-shadow:0 0 22px rgba(207,169,106,.28);
}
.features .feature{
  transition:transform .32s ease, background .32s ease, box-shadow .32s ease;
  border-radius:12px;
}
.features .feature:hover{
  transform:translateY(-8px);
  background:rgba(207,169,106,.055);
  box-shadow:0 18px 44px rgba(0,0,0,.22);
}
.icon{
  transition:transform .35s cubic-bezier(.2,.8,.2,1), color .35s ease;
}
.feature:hover .icon,
.trust-item:hover .icon{
  transform:translateY(-4px) scale(1.12);
  color:var(--gold-2);
}
.map-card img,
.office img{
  transition:transform 1.2s cubic-bezier(.2,.8,.2,1), filter 1.2s ease;
}
.map-card:hover img,
.office:hover img{
  transform:scale(1.055);
  filter:saturate(1.12) contrast(1.05);
}
.form input:focus,
.form textarea:focus{
  border-color:rgba(240,200,120,.72);
  box-shadow:0 0 0 4px rgba(207,169,106,.08);
}

@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }
  .reveal{opacity:1;transform:none;filter:none}
}


/* ================================
   Full Viewport Sections + Elite Motion - V6
================================ */
html{
  scroll-padding-top:0;
  scroll-snap-type:y proximity;
}
body{
  overflow-x:hidden;
}
.snap-section{
  min-height:100vh;
  scroll-snap-align:start;
  scroll-snap-stop:always;
  display:flex;
  align-items:center;
}
.hero.snap-section{
  height:100vh;
  min-height:760px;
  display:block;
}
.hero-inner{
  min-height:100vh;
}
.trust-row{
  bottom:0;
}
.dark-section.section-pad.snap-section{
  padding:110px 0 80px;
}
.products.snap-section{
  justify-content:center;
}
.partners.snap-section{
  min-height:100vh;
  display:flex;
  align-items:center;
}
.contact.snap-section{
  min-height:100vh;
  align-items:center;
  padding:110px 0 0;
}

/* deeper content entrance, similar high-end agency page motion */
.reveal{
  transform:translateY(70px) scale(.985);
  clip-path:inset(0 0 18% 0);
}
.reveal.is-visible{
  clip-path:inset(0 0 0 0);
}
.section-title{
  overflow:hidden;
}
.is-visible .section-title,
.section-title.reveal.is-visible{
  animation:titleShine 1.4s cubic-bezier(.2,.8,.2,1) both;
}
@keyframes titleShine{
  from{text-shadow:0 0 0 rgba(207,169,106,0)}
  45%{text-shadow:0 0 28px rgba(207,169,106,.26)}
  to{text-shadow:0 0 0 rgba(207,169,106,0)}
}
.product-card,
.partner-logo,
.feature,
.stat{
  position:relative;
}
.product-card::before,
.partner-logo::before,
.feature::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:linear-gradient(135deg, rgba(240,200,120,.22), transparent 38%, rgba(25,187,181,.12));
  opacity:0;
  transition:opacity .35s ease;
}
.product-card:hover::before,
.partner-logo:hover::before,
.feature:hover::before{
  opacity:1;
}
.coverage-grid,
.product-grid,
.partner-row,
.features,
.contact-grid{
  perspective:1200px;
}
.map-card.is-visible,
.product-card.is-visible,
.partner-logo.is-visible,
.feature.is-visible,
.contact-grid > *.is-visible{
  animation:premiumRise .95s cubic-bezier(.18,.86,.22,1) both;
  animation-delay:var(--delay,0ms);
}
@keyframes premiumRise{
  0%{opacity:0;transform:translateY(80px) rotateX(10deg) scale(.965);filter:blur(12px)}
  100%{opacity:1;transform:translateY(0) rotateX(0) scale(1);filter:blur(0)}
}

/* show a clear focus state after nav click */
.section-focus::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 50% 18%, rgba(207,169,106,.11), transparent 42%);
  animation:sectionGlowIn 1.8s ease both;
}
@keyframes sectionGlowIn{
  0%{opacity:0}
  25%{opacity:1}
  100%{opacity:0}
}

@media (max-height:820px) and (min-width:981px){
  .hero.copy-compact .hero-copy h1,
  .hero-copy h1{font-size:clamp(42px,4.2vw,62px)}
  .hero-copy p{font-size:17px}
  .trust-grid{min-height:76px}
  .dark-section.section-pad.snap-section{padding:88px 0 58px}
}
@media (max-width:980px){
  html{scroll-snap-type:none}
  .snap-section,
  .hero.snap-section{
    min-height:auto;
    height:auto;
    scroll-snap-align:none;
  }
  .hero-inner{min-height:760px}
}


/* ================================
   Back To Top + Active Header State - V7
================================ */
.back-to-top{
  position:fixed;
  right:28px;
  bottom:28px;
  z-index:1200;
  width:52px;
  height:52px;
  border-radius:50%;
  border:1px solid rgba(240,200,120,.65);
  background:linear-gradient(135deg,rgba(207,169,106,.95),rgba(142,101,43,.95));
  color:#061321;
  font-size:24px;
  font-weight:900;
  cursor:pointer;
  opacity:0;
  visibility:hidden;
  transform:translateY(18px) scale(.92);
  box-shadow:0 18px 45px rgba(0,0,0,.35), 0 0 26px rgba(207,169,106,.22);
  transition:opacity .35s ease, visibility .35s ease, transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease;
}
.back-to-top.is-visible{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scale(1);
}
.back-to-top:hover{
  transform:translateY(-5px) scale(1.06);
  box-shadow:0 22px 54px rgba(0,0,0,.42), 0 0 38px rgba(240,200,120,.36);
}
.menu a.selected,
.menu a.is-active{
  color:var(--gold-2);
  opacity:1;
}
.menu a.selected::before,
.menu a.is-active::before{
  width:46px;
}
.menu a.selected{
  text-shadow:0 0 18px rgba(207,169,106,.22);
}

@media (max-width:980px){
  .back-to-top{
    right:18px;
    bottom:18px;
    width:46px;
    height:46px;
    font-size:21px;
  }
}


/* ================================
   Header Links Order + Reliable Back Top - V8
================================ */
.back-to-top{
  opacity:1!important;
  visibility:visible!important;
  transform:translateY(0) scale(1)!important;
}
.back-to-top.is-hidden{
  opacity:0!important;
  visibility:hidden!important;
  transform:translateY(18px) scale(.92)!important;
}
.menu a[href$=".html"]{
  opacity:.72;
}
.menu a[href$=".html"]::before{
  background:linear-gradient(90deg, transparent, rgba(207,169,106,.45), transparent);
}
.menu a.selected,
.menu a.is-active{
  color:var(--gold-2)!important;
  opacity:1!important;
}
.menu a.selected::before,
.menu a.is-active::before{
  width:46px!important;
}


/* ================================
   About Us / Vision / Message - V9
================================ */
.about-section{
  background:
    radial-gradient(circle at 18% 20%, rgba(207,169,106,.10), transparent 30%),
    radial-gradient(circle at 82% 78%, rgba(25,187,181,.09), transparent 34%),
    linear-gradient(180deg,#061426 0%,#020d19 100%);
  overflow:hidden;
}
.about-section > .container{
  width:min(1220px,calc(100% - 48px));
}
.about-head{
  max-width:820px;
  margin:0 auto 34px;
  text-align:center;
}
.about-head p{
  margin:0 auto;
  max-width:760px;
  color:var(--muted);
  font-size:17px;
  line-height:1.75;
}
.about-cards{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.about-card{
  position:relative;
  overflow:hidden;
  min-height:520px;
  border:1px solid rgba(207,169,106,.28);
  border-radius:16px;
  background:rgba(4,17,31,.74);
  box-shadow:0 22px 60px rgba(0,0,0,.24);
  transition:transform .42s cubic-bezier(.2,.8,.2,1), border-color .42s ease, box-shadow .42s ease;
}
.about-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(180deg,rgba(2,10,20,.02) 0%, rgba(2,10,20,.18) 34%, rgba(2,10,20,.92) 100%),
    radial-gradient(circle at 50% 30%, rgba(240,200,120,.13), transparent 42%);
}
.about-card::after{
  content:"";
  position:absolute;
  inset:14px;
  z-index:3;
  pointer-events:none;
  border:1px solid rgba(240,200,120,.18);
  border-radius:12px;
  opacity:.7;
}
.about-card:hover{
  transform:translateY(-10px);
  border-color:rgba(240,200,120,.72);
  box-shadow:0 30px 85px rgba(0,0,0,.34), 0 0 55px rgba(207,169,106,.11);
}
.about-image{
  position:absolute;
  inset:0;
}
.about-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.04);
  filter:saturate(1.04) contrast(1.05) brightness(.82);
  transition:transform 1.35s cubic-bezier(.2,.8,.2,1), filter 1.35s ease;
}
.about-card:hover .about-image img{
  transform:scale(1.12);
  filter:saturate(1.12) contrast(1.1) brightness(.92);
}
.about-body{
  position:absolute;
  z-index:4;
  left:26px;
  right:26px;
  bottom:28px;
}
.about-number{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  margin-bottom:16px;
  border-radius:50%;
  background:rgba(207,169,106,.12);
  border:1px solid rgba(240,200,120,.42);
  color:var(--gold-2);
  font-weight:900;
}
.about-body h3{
  margin:0 0 12px;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:32px;
  font-weight:500;
}
.about-body p{
  margin:0;
  color:#e1e6ec;
  font-size:15px;
  line-height:1.72;
}
.about-card.is-visible{
  animation:premiumRise .95s cubic-bezier(.18,.86,.22,1) both;
  animation-delay:var(--delay,0ms);
}

@media (max-height:820px) and (min-width:981px){
  .about-head{margin-bottom:22px}
  .about-card{min-height:440px}
  .about-body h3{font-size:27px}
  .about-body p{font-size:13.5px;line-height:1.6}
}
@media (max-width:980px){
  .about-section{padding:96px 0 60px}
  .about-cards{grid-template-columns:1fr}
  .about-card{min-height:460px}
}

/* ================================
   About Section - Why Choose Style - V10
================================ */
.about-section-v10{
  background:
    radial-gradient(circle at 12% 16%, rgba(207,169,106,.12), transparent 30%),
    radial-gradient(circle at 92% 62%, rgba(25,187,181,.08), transparent 32%),
    linear-gradient(180deg,#071426 0%,#020d19 100%);
  overflow:hidden;
}
.about-v10-layout{
  display:grid;
  grid-template-columns:38% 62%;
  gap:52px;
  align-items:center;
  width:min(1220px,calc(100% - 48px));
}
.about-v10-intro{
  position:sticky;
  top:118px;
  align-self:start;
}
.about-v10-intro p{
  color:var(--muted);
  font-size:17px;
  line-height:1.8;
  margin:0 0 28px;
}
.about-v10-list{
  position:relative;
  display:grid;
  gap:22px;
}
.about-v10-list::before{
  content:"";
  position:absolute;
  left:46px;
  top:38px;
  bottom:38px;
  width:1px;
  background:linear-gradient(180deg, transparent, rgba(240,200,120,.48), rgba(25,187,181,.25), transparent);
}
.about-v10-item{
  position:relative;
  display:grid;
  grid-template-columns:132px 1fr;
  gap:24px;
  align-items:center;
  min-height:178px;
  padding:22px;
  border:1px solid rgba(207,169,106,.26);
  border-radius:18px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.018)),
    rgba(4,17,31,.72);
  box-shadow:0 22px 60px rgba(0,0,0,.22);
  overflow:hidden;
  backdrop-filter:blur(10px);
  transition:transform .42s cubic-bezier(.2,.8,.2,1), border-color .42s ease, box-shadow .42s ease;
}
.about-v10-item:nth-child(2){
  margin-left:38px;
}
.about-v10-item:nth-child(3){
  margin-left:76px;
}
.about-v10-item::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 12% 20%, rgba(240,200,120,.18), transparent 34%);
  opacity:.65;
  pointer-events:none;
}
.about-v10-item::after{
  content:"";
  position:absolute;
  inset:14px;
  border:1px solid rgba(240,200,120,.11);
  border-radius:14px;
  pointer-events:none;
}
.about-v10-item:hover{
  transform:translateY(-8px) translateX(-4px);
  border-color:rgba(240,200,120,.72);
  box-shadow:0 30px 86px rgba(0,0,0,.34), 0 0 55px rgba(207,169,106,.12);
}
.about-v10-media{
  position:relative;
  z-index:2;
  width:112px;
  height:112px;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(240,200,120,.38);
  box-shadow:0 16px 44px rgba(0,0,0,.25), 0 0 28px rgba(207,169,106,.12);
}
.about-v10-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:saturate(1.08) contrast(1.08) brightness(.86);
  transform:scale(1.05);
  transition:transform 1.1s cubic-bezier(.2,.8,.2,1), filter 1.1s ease;
}
.about-v10-item:hover .about-v10-media img{
  transform:scale(1.16);
  filter:saturate(1.14) contrast(1.1) brightness(.96);
}
.about-v10-content{
  position:relative;
  z-index:2;
}
.about-v10-number{
  display:inline-flex;
  margin-bottom:8px;
  color:var(--gold-2);
  font-weight:900;
  letter-spacing:3px;
  font-size:13px;
}
.about-v10-content h3{
  margin:0 0 8px;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:30px;
  font-weight:500;
}
.about-v10-content p{
  margin:0;
  color:#dfe6ed;
  font-size:15px;
  line-height:1.68;
}
.about-v10-item.is-visible{
  animation:premiumRise .95s cubic-bezier(.18,.86,.22,1) both;
  animation-delay:var(--delay,0ms);
}

@media (max-height:820px) and (min-width:981px){
  .about-v10-layout{gap:34px}
  .about-v10-item{min-height:150px;padding:17px;grid-template-columns:110px 1fr}
  .about-v10-media{width:94px;height:94px;border-radius:20px}
  .about-v10-content h3{font-size:25px}
  .about-v10-content p{font-size:13.4px;line-height:1.55}
}
@media (max-width:980px){
  .about-v10-layout{grid-template-columns:1fr;gap:30px}
  .about-v10-intro{position:relative;top:auto}
  .about-v10-item,
  .about-v10-item:nth-child(2),
  .about-v10-item:nth-child(3){margin-left:0}
  .about-v10-list::before{display:none}
}
@media (max-width:640px){
  .about-v10-item{grid-template-columns:1fr}
  .about-v10-media{width:100%;height:180px}
}


/* ================================
   Premium Typography - V11
================================ */
body{
  font-feature-settings:"kern" 1, "liga" 1;
  text-rendering:optimizeLegibility;
  letter-spacing:-0.01em;
}
.menu,
.btn,
.eyebrow,
.trust-item,
.stat span,
.product-card p,
.feature p,
.footer p,
.footer a,
.form input,
.form textarea{
  font-family:var(--font-body);
}
.section-title,
.hero-copy h1,
.product-card h3,
.about-v10-content h3,
.about-body h3{
  font-family:var(--font-display);
  letter-spacing:-0.035em;
}
.hero-copy h1{
  font-weight:600;
}
.section-title{
  font-weight:600;
}
.menu{
  font-weight:700;
  letter-spacing:.01em;
}
.eyebrow{
  font-weight:800;
  letter-spacing:.18em;
}
p{
  letter-spacing:-0.006em;
}


/* ================================
   Dynamic Products Slider - V12
================================ */
.products-v12{
  text-align:left;
  background:
    radial-gradient(circle at 12% 20%, rgba(207,169,106,.12), transparent 32%),
    radial-gradient(circle at 80% 82%, rgba(25,187,181,.09), transparent 34%),
    linear-gradient(180deg,#061426 0%,#020d19 100%);
  overflow:hidden;
}
.products-v12-shell{
  width:min(1240px,calc(100% - 48px));
}
.products-v12-head{
  max-width:880px;
  margin:0 auto 28px;
  text-align:center;
}
.products-v12-head p{
  margin:0 auto;
  max-width:760px;
  color:var(--muted);
  font-size:16px;
  line-height:1.75;
}
.products-v12-dashboard{
  display:grid;
  grid-template-columns:280px 1fr;
  gap:24px;
  min-height:560px;
}
.product-category-tabs{
  display:grid;
  gap:10px;
  align-content:start;
  padding:14px;
  border:1px solid rgba(207,169,106,.22);
  border-radius:20px;
  background:rgba(4,17,31,.68);
  backdrop-filter:blur(14px);
  box-shadow:0 24px 70px rgba(0,0,0,.25);
}
.product-tab{
  position:relative;
  display:grid;
  grid-template-columns:38px 1fr;
  gap:10px;
  align-items:center;
  width:100%;
  min-height:74px;
  padding:13px 14px;
  border:1px solid rgba(207,169,106,.14);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  color:var(--text);
  text-align:left;
  cursor:pointer;
  overflow:hidden;
  transition:transform .32s cubic-bezier(.2,.8,.2,1), border-color .32s ease, background .32s ease, box-shadow .32s ease;
}
.product-tab::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(240,200,120,.16),transparent 48%,rgba(25,187,181,.10));
  opacity:0;
  transition:opacity .32s ease;
}
.product-tab span{
  position:relative;
  z-index:1;
  width:34px;
  height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  border:1px solid rgba(240,200,120,.3);
  color:var(--gold-2);
  font-weight:900;
  font-size:12px;
}
.product-tab strong,
.product-tab small{
  position:relative;
  z-index:1;
  display:block;
}
.product-tab strong{
  color:#fff;
  font-size:14px;
}
.product-tab small{
  color:#aeb8c4;
  font-size:12px;
  margin-top:2px;
}
.product-tab:hover,
.product-tab.active{
  transform:translateX(7px);
  border-color:rgba(240,200,120,.65);
  background:rgba(207,169,106,.08);
  box-shadow:0 14px 38px rgba(0,0,0,.24);
}
.product-tab:hover::before,
.product-tab.active::before{opacity:1}

.product-slider-panel{
  position:relative;
  display:flex;
  flex-direction:column;
  min-width:0;
  border:1px solid rgba(207,169,106,.25);
  border-radius:24px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.018)),
    rgba(4,17,31,.72);
  box-shadow:0 28px 90px rgba(0,0,0,.3);
  overflow:hidden;
}
.product-slider-panel::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 80% 16%, rgba(240,200,120,.16), transparent 34%),
    linear-gradient(90deg,transparent,rgba(25,187,181,.05));
  pointer-events:none;
}
.product-slider-toolbar{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:space-between;
  gap:24px;
  align-items:flex-start;
  padding:26px 28px 18px;
}
.product-category-label{
  display:block;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:11px;
  font-weight:900;
  margin-bottom:8px;
}
.product-slider-toolbar h3{
  margin:0 0 8px;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:34px;
  line-height:1.1;
  letter-spacing:-.035em;
}
.product-slider-toolbar p{
  margin:0;
  color:#ccd5df;
  max-width:680px;
  line-height:1.65;
}
.product-slider-actions{
  display:flex;
  gap:10px;
  flex-shrink:0;
}
.product-arrow{
  width:48px;
  height:48px;
  border-radius:50%;
  border:1px solid rgba(240,200,120,.5);
  background:rgba(2,11,22,.42);
  color:var(--gold-2);
  font-size:30px;
  cursor:pointer;
  transition:.3s ease;
}
.product-arrow:hover{
  transform:translateY(-4px);
  background:rgba(207,169,106,.16);
  box-shadow:0 18px 40px rgba(0,0,0,.24);
}
.product-slider-viewport{
  position:relative;
  z-index:2;
  flex:1;
  min-height:360px;
  padding:0 28px 22px;
}
.product-track{
  position:absolute;
  inset:0 28px 22px;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
  opacity:0;
  pointer-events:none;
  transform:translateX(40px) scale(.985);
  filter:blur(10px);
  transition:opacity .55s ease, transform .55s cubic-bezier(.2,.8,.2,1), filter .55s ease;
}
.product-track.active{
  opacity:1;
  pointer-events:auto;
  transform:translateX(0) scale(1);
  filter:blur(0);
}
.product-v12-card{
  position:relative;
  overflow:hidden;
  min-height:340px;
  border:1px solid rgba(207,169,106,.2);
  border-radius:18px;
  background:rgba(2,11,22,.56);
  box-shadow:0 16px 42px rgba(0,0,0,.2);
  transition:transform .35s cubic-bezier(.2,.8,.2,1), border-color .35s ease, box-shadow .35s ease;
}
.product-v12-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 0%,rgba(2,10,20,.26) 34%,rgba(2,10,20,.96) 100%);
}
.product-v12-card:hover{
  transform:translateY(-9px);
  border-color:rgba(240,200,120,.7);
  box-shadow:0 26px 74px rgba(0,0,0,.35),0 0 48px rgba(207,169,106,.12);
}
.product-v12-img{
  position:absolute;
  inset:0;
}
.product-v12-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.04);
  filter:saturate(1.08) contrast(1.08) brightness(.78);
  transition:transform 1.2s cubic-bezier(.2,.8,.2,1), filter 1.2s ease;
}
.product-v12-card:hover .product-v12-img img{
  transform:scale(1.14);
  filter:saturate(1.16) contrast(1.12) brightness(.92);
}
.product-v12-info{
  position:absolute;
  z-index:3;
  left:18px;
  right:18px;
  bottom:18px;
}
.product-v12-info span{
  display:inline-flex;
  margin-bottom:10px;
  padding:6px 9px;
  border:1px solid rgba(240,200,120,.34);
  border-radius:999px;
  color:var(--gold-2);
  background:rgba(2,11,22,.42);
  font-size:11px;
  font-weight:900;
}
.product-v12-info h4{
  margin:0 0 8px;
  color:#fff;
  font-family:var(--font-display);
  font-size:24px;
  line-height:1.08;
  letter-spacing:-.03em;
}
.product-v12-info p{
  margin:0 0 12px;
  color:#dce3eb;
  font-size:13px;
  line-height:1.55;
}
.product-v12-info em{
  font-style:normal;
  color:var(--gold-2);
  font-size:12px;
  font-weight:900;
}
.product-slider-footer{
  position:relative;
  z-index:3;
  display:flex;
  align-items:center;
  gap:18px;
  padding:0 28px 24px;
}
.product-slider-footer p{
  width:350px;
  margin:0;
  color:#aeb8c4;
  font-size:12px;
}

@media (max-height:820px) and (min-width:981px){
  .products-v12-head{margin-bottom:18px}
  .products-v12-dashboard{min-height:480px}
  .product-tab{min-height:60px;padding:10px}
  .product-slider-viewport{min-height:300px}
  .product-v12-card{min-height:285px}
  .product-v12-info h4{font-size:20px}
  .product-v12-info p{font-size:12px}
}
@media (max-width:1100px){
  .products-v12-dashboard{grid-template-columns:1fr}
  .product-category-tabs{grid-template-columns:repeat(3,1fr)}
  .product-tab:hover,.product-tab.active{transform:translateY(-4px)}
}
@media (max-width:980px){
  .product-track{position:relative;inset:auto;grid-template-columns:1fr 1fr}
  .product-track:not(.active){display:none}
  .product-slider-viewport{min-height:auto}
}
@media (max-width:640px){
  .product-category-tabs{grid-template-columns:1fr}
  .product-track{grid-template-columns:1fr}
  .product-slider-toolbar{flex-direction:column}
  .product-slider-footer{flex-direction:column;align-items:stretch}
  .product-slider-footer p{width:auto}
}

/* ================================
   Products Visibility Fix - V13
================================ */
.products-v12.snap-section{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  min-height:100vh;
  padding:118px 0 54px !important;
  overflow:visible;
}
.products-v12 .products-v12-shell{
  position:relative;
  z-index:2;
  width:min(1240px,calc(100% - 48px));
}
.products-v12 .reveal,
.products-v12 .products-v12-head,
.products-v12 .products-v12-dashboard,
.products-v12 .product-v12-card{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
  clip-path:none !important;
}
.products-v12-dashboard{
  min-height:520px;
}
.product-slider-panel{
  min-height:520px;
}
.product-slider-viewport{
  min-height:330px;
}
.product-track{
  min-height:330px;
}
.product-track.active{
  display:grid;
}
.product-v12-card{
  min-height:315px;
}
.products-v12 .product-v12-card{
  animation:productCardIn .75s cubic-bezier(.2,.8,.2,1) both;
}
.products-v12 .product-v12-card:nth-child(1){animation-delay:.05s}
.products-v12 .product-v12-card:nth-child(2){animation-delay:.12s}
.products-v12 .product-v12-card:nth-child(3){animation-delay:.19s}
.products-v12 .product-v12-card:nth-child(4){animation-delay:.26s}
@keyframes productCardIn{
  from{opacity:0;transform:translateY(30px) scale(.98);filter:blur(8px)}
  to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}

@media (max-height:820px) and (min-width:981px){
  .products-v12.snap-section{
    padding:96px 0 36px !important;
  }
  .products-v12-head{
    margin-bottom:16px;
  }
  .products-v12-head .section-title{
    font-size:42px;
  }
  .products-v12-head p{
    font-size:14px;
    line-height:1.55;
  }
  .products-v12-dashboard{
    min-height:450px;
  }
  .product-slider-panel{
    min-height:450px;
  }
  .product-slider-toolbar{
    padding:20px 22px 14px;
  }
  .product-slider-toolbar h3{
    font-size:28px;
  }
  .product-slider-toolbar p{
    font-size:13px;
  }
  .product-slider-viewport,
  .product-track{
    min-height:280px;
  }
  .product-v12-card{
    min-height:275px;
  }
  .product-tab{
    min-height:56px;
  }
}

/* ================================
   Product Slider Links + Image Fit - V14
================================ */
.product-category-title-link{
  display:inline-flex;
  align-items:flex-end;
  gap:14px;
  width:fit-content;
  color:var(--gold-2);
  transition:color .25s ease, transform .25s ease;
}
.product-category-title-link span{
  display:block;
  font-family:var(--font-display);
  font-size:34px;
  line-height:1.1;
  letter-spacing:-.035em;
}
.product-category-title-link i{
  font-style:normal;
  margin-bottom:5px;
  font-family:var(--font-body);
  font-size:13px;
  font-weight:800;
  color:rgba(240,200,120,.78);
  white-space:nowrap;
}
.product-category-title-link:hover{
  color:#fff;
  transform:translateX(4px);
}
.product-v12-img{
  background:#071426;
}
.product-v12-img img{
  object-fit:cover !important;
  object-position:center center !important;
  width:100% !important;
  height:100% !important;
  transform:scale(1.02) !important;
}
.product-v12-card:hover .product-v12-img img{
  transform:scale(1.08) !important;
}
.product-category-link{
  display:inline-flex;
  margin-bottom:10px;
  padding:6px 10px;
  border:1px solid rgba(240,200,120,.34);
  border-radius:999px;
  color:var(--gold-2);
  background:rgba(2,11,22,.48);
  font-size:11px;
  font-weight:900;
  transition:.25s ease;
}
.product-category-link:hover{
  background:rgba(207,169,106,.18);
  border-color:rgba(240,200,120,.75);
  color:#fff;
}
.product-v12-info h4 a{
  color:#fff;
  transition:color .25s ease;
}
.product-v12-info h4 a:hover{
  color:var(--gold-2);
}
.product-v12-info > span{
  display:none;
}
.product-v12-links{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:12px;
}
.product-details-link{
  color:var(--gold-2);
  font-size:12px;
  font-weight:900;
  white-space:nowrap;
  transition:.25s ease;
}
.product-details-link:hover{
  color:#fff;
  transform:translateX(3px);
}
.product-track.active .product-v12-card{
  animation:productCardIn .72s cubic-bezier(.2,.8,.2,1) both;
}
@media (max-height:820px) and (min-width:981px){
  .product-category-title-link span{font-size:28px}
  .product-category-title-link i{font-size:12px}
  .product-v12-links{align-items:flex-start;flex-direction:column;gap:6px}
}

/* ================================
   Products Progress Full Width - V15
================================ */
.product-slider-footer{
  display:block !important;
  padding:0 28px 26px !important;
}
.product-slider-footer p{
  display:none !important;
}

/* ================================
   Product Image Refinement - V16
================================ */
.product-v12-card{
  min-height:315px;
  background:
    radial-gradient(circle at 50% 24%, rgba(207,169,106,.12), transparent 36%),
    rgba(2,11,22,.72);
}
.product-v12-card::before{
  background:
    linear-gradient(180deg, rgba(2,10,20,.08) 0%, rgba(2,10,20,.28) 48%, rgba(2,10,20,.96) 100%);
}
.product-v12-img{
  position:absolute;
  top:18px;
  left:18px;
  right:18px;
  height:142px;
  border-radius:16px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 50%, rgba(240,200,120,.12), transparent 55%),
    rgba(255,255,255,.035);
  border:1px solid rgba(240,200,120,.16);
  box-shadow:inset 0 0 35px rgba(0,0,0,.26);
}
.product-v12-img::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.10),transparent 38%,rgba(207,169,106,.10));
  opacity:.45;
  transition:opacity .35s ease;
}
.product-v12-img img{
  object-fit:cover !important;
  object-position:center center !important;
  width:100% !important;
  height:100% !important;
  transform:scale(.92) !important;
  filter:saturate(1.05) contrast(1.04) brightness(.86);
  transition:
    transform .85s cubic-bezier(.2,.8,.2,1),
    filter .85s ease;
}
.product-v12-card:hover .product-v12-img::after{
  opacity:.75;
}
.product-v12-card:hover .product-v12-img img{
  transform:scale(1.03) rotate(.6deg) !important;
  filter:saturate(1.2) contrast(1.12) brightness(1);
}
.product-v12-info{
  bottom:20px;
}
.product-v12-info h4{
  font-size:22px;
}
.product-v12-card:hover{
  transform:translateY(-9px);
}
.product-v12-card:hover .product-v12-img{
  border-color:rgba(240,200,120,.55);
  box-shadow:
    inset 0 0 40px rgba(0,0,0,.22),
    0 16px 38px rgba(0,0,0,.28),
    0 0 34px rgba(207,169,106,.16);
}

@media (max-height:820px) and (min-width:981px){
  .product-v12-img{
    top:14px;
    left:14px;
    right:14px;
    height:116px;
  }
  .product-v12-info h4{
    font-size:19px;
  }
}

/* ================================
   Full Product Background Cards - V17
================================ */
.product-v12-card{
  min-height:315px;
  background:rgba(2,11,22,.72);
}
.product-v12-card::before{
  z-index:2;
  background:
    linear-gradient(180deg, rgba(2,10,20,.05) 0%, rgba(2,10,20,.20) 38%, rgba(2,10,20,.92) 100%),
    radial-gradient(circle at 50% 15%, rgba(240,200,120,.12), transparent 42%);
}
.product-v12-img{
  position:absolute !important;
  inset:0 !important;
  height:auto !important;
  border-radius:0 !important;
  border:0 !important;
  overflow:hidden;
  background:#071426;
  box-shadow:none !important;
}
.product-v12-img::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(135deg, rgba(255,255,255,.10), transparent 36%, rgba(207,169,106,.12)),
    radial-gradient(circle at 50% 20%, rgba(240,200,120,.18), transparent 44%);
  opacity:.35;
  transition:opacity .45s ease;
}
.product-v12-img img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  transform:scale(1.02) !important;
  filter:saturate(1.04) contrast(1.04) brightness(.83);
  transition:
    transform 1.05s cubic-bezier(.2,.8,.2,1),
    filter 1.05s ease;
}
.product-v12-card:hover .product-v12-img::after{
  opacity:.62;
}
.product-v12-card:hover .product-v12-img img{
  transform:scale(1.085) !important;
  filter:saturate(1.18) contrast(1.12) brightness(.98);
}
.product-v12-info{
  bottom:20px;
}
.product-v12-info h4{
  font-size:22px;
}
.product-v12-card:hover{
  transform:translateY(-9px);
  box-shadow:
    0 28px 76px rgba(0,0,0,.36),
    0 0 48px rgba(207,169,106,.13);
}

@media (max-height:820px) and (min-width:981px){
  .product-v12-card{
    min-height:275px;
  }
  .product-v12-info h4{
    font-size:19px;
  }
}

/* ================================
   Partners Logo Slider - V18
================================ */
.partners-v18{
  text-align:left;
  background:
    radial-gradient(circle at 18% 26%, rgba(207,169,106,.12), transparent 34%),
    radial-gradient(circle at 84% 70%, rgba(25,187,181,.08), transparent 32%),
    linear-gradient(180deg,#061426 0%,#020d19 100%);
  overflow:hidden;
}
.partners-v18-shell{
  width:min(1240px,calc(100% - 48px));
}
.partners-v18-head{
  max-width:840px;
  margin:0 auto 30px;
  text-align:center;
}
.partners-v18-head p{
  max-width:700px;
  margin:0 auto;
  color:var(--muted);
  font-size:16px;
  line-height:1.7;
}
.partners-slider{
  position:relative;
  border:1px solid rgba(207,169,106,.25);
  border-radius:26px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.018)),
    rgba(4,17,31,.74);
  box-shadow:0 28px 88px rgba(0,0,0,.32);
  overflow:hidden;
  backdrop-filter:blur(12px);
}
.partners-slider::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 12% 20%, rgba(240,200,120,.14), transparent 30%),
    radial-gradient(circle at 88% 78%, rgba(25,187,181,.08), transparent 34%);
  pointer-events:none;
}
.partners-slider-top{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
  padding:28px 30px 14px;
}
.partner-slider-label{
  display:block;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:11px;
  font-weight:900;
  margin-bottom:8px;
}
.partners-slider-top h3{
  margin:0;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:36px;
  line-height:1.1;
  letter-spacing:-.035em;
}
.partners-slider-actions{
  display:flex;
  gap:10px;
}
.partner-arrow{
  width:48px;
  height:48px;
  border-radius:50%;
  border:1px solid rgba(240,200,120,.5);
  background:rgba(2,11,22,.45);
  color:var(--gold-2);
  font-size:30px;
  cursor:pointer;
  transition:.3s ease;
}
.partner-arrow:hover{
  transform:translateY(-4px);
  background:rgba(207,169,106,.16);
  box-shadow:0 18px 40px rgba(0,0,0,.26);
}
.partners-viewport{
  position:relative;
  z-index:2;
  overflow:hidden;
  padding:16px 30px 26px;
}
.partners-track{
  display:flex;
  gap:18px;
  transition:transform .65s cubic-bezier(.2,.8,.2,1);
  will-change:transform;
}
.partner-slide{
  flex:0 0 calc((100% - 54px) / 4);
  min-height:310px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:22px;
  border:1px solid rgba(207,169,106,.22);
  border-radius:20px;
  background:
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015)),
    rgba(2,11,22,.58);
  color:#fff;
  position:relative;
  overflow:hidden;
  transition:transform .42s cubic-bezier(.2,.8,.2,1), border-color .42s ease, box-shadow .42s ease;
}
.partner-slide::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 18%, rgba(240,200,120,.16), transparent 42%),
    linear-gradient(135deg,rgba(25,187,181,.08),transparent 42%);
  opacity:.5;
  transition:opacity .35s ease;
  pointer-events:none;
}
.partner-slide:hover{
  transform:translateY(-10px);
  border-color:rgba(240,200,120,.72);
  box-shadow:0 28px 80px rgba(0,0,0,.36),0 0 54px rgba(207,169,106,.13);
}
.partner-slide:hover::before{
  opacity:.95;
}
.partner-logo-frame{
  position:relative;
  z-index:2;
  min-height:135px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:14px;
  margin-bottom:20px;
  border-radius:18px;
  background:rgba(3,13,25,.55);
  border:1px solid rgba(240,200,120,.18);
  overflow:hidden;
}
.partner-logo-frame::after{
  content:"";
  position:absolute;
  top:-80%;
  left:-60%;
  width:46%;
  height:260%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent);
  transform:rotate(18deg);
  transition:left .75s cubic-bezier(.2,.8,.2,1);
}
.partner-slide:hover .partner-logo-frame::after{
  left:120%;
}
.partner-logo-frame img{
  max-width:100%;
  max-height:110px;
  object-fit:contain;
  filter:brightness(.92) saturate(.96);
  opacity:.86;
  transform:scale(.96);
  transition:transform .55s cubic-bezier(.2,.8,.2,1), filter .55s ease, opacity .55s ease;
}
.partner-slide:hover .partner-logo-frame img{
  transform:scale(1.05);
  filter:brightness(1.16) saturate(1.08) drop-shadow(0 0 18px rgba(240,200,120,.24));
  opacity:1;
}
.partner-slide strong,
.partner-slide small,
.partner-slide span{
  position:relative;
  z-index:2;
}
.partner-slide strong{
  display:block;
  margin-bottom:8px;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:25px;
  letter-spacing:-.03em;
}
.partner-slide small{
  min-height:48px;
  color:#cfd8e2;
  line-height:1.55;
}
.partner-slide span{
  display:inline-flex;
  margin-top:18px;
  color:var(--gold-2);
  font-size:13px;
  font-weight:900;
  transition:.25s ease;
}
.partner-slide:hover span{
  transform:translateX(4px);
  color:#fff;
}
.partners-slider-footer{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:0 30px 28px;
}
.partner-dots{
  display:flex;
  gap:8px;
}
.partner-dot{
  width:34px;
  height:4px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  cursor:pointer;
  transition:.3s ease;
}
.partner-dot.active{
  background:linear-gradient(90deg,var(--gold),var(--gold-2));
  box-shadow:0 0 18px rgba(207,169,106,.24);
}

@media (max-height:820px) and (min-width:981px){
  .partners-v18-head{margin-bottom:18px}
  .partner-slide{min-height:250px;padding:18px}
  .partner-logo-frame{min-height:102px;margin-bottom:14px}
  .partner-logo-frame img{max-height:82px}
  .partner-slide strong{font-size:21px}
  .partner-slide small{font-size:12px}
}
@media (max-width:1100px){
  .partner-slide{flex-basis:calc((100% - 18px) / 2)}
}
@media (max-width:640px){
  .partners-slider-top,
  .partners-slider-footer{flex-direction:column;align-items:flex-start}
  .partner-slide{flex-basis:100%}
}

/* ================================
   Partners Visibility Fix - V19
================================ */
.partners-v18.snap-section{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:100vh;
  padding:118px 0 54px !important;
  overflow:visible;
}
.partners-v18 .partners-v18-shell{
  position:relative;
  z-index:2;
  width:min(1240px,calc(100% - 48px));
}
.partners-v18 .reveal,
.partners-v18 .partners-v18-head,
.partners-v18 .partners-slider,
.partners-v18 .partner-slide{
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  filter:none !important;
  clip-path:none !important;
}
.partners-slider{
  min-height:430px;
}
.partners-viewport{
  min-height:310px;
}
.partners-track{
  min-height:310px;
}
.partner-slide{
  min-height:300px;
}
.partners-v18 .partner-slide{
  animation:partnerCardIn .75s cubic-bezier(.2,.8,.2,1) both;
}
.partners-v18 .partner-slide:nth-child(1){animation-delay:.05s}
.partners-v18 .partner-slide:nth-child(2){animation-delay:.12s}
.partners-v18 .partner-slide:nth-child(3){animation-delay:.19s}
.partners-v18 .partner-slide:nth-child(4){animation-delay:.26s}
@keyframes partnerCardIn{
  from{opacity:0;transform:translateY(30px) scale(.98);filter:blur(8px)}
  to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}
}

@media (max-height:820px) and (min-width:981px){
  .partners-v18.snap-section{
    padding:96px 0 36px !important;
  }
  .partners-v18-head{
    margin-bottom:18px;
  }
  .partners-v18-head .section-title{
    font-size:42px;
  }
  .partners-v18-head p{
    font-size:14px;
    line-height:1.55;
  }
  .partners-slider{
    min-height:365px;
  }
  .partners-viewport,
  .partners-track{
    min-height:245px;
  }
  .partner-slide{
    min-height:245px;
  }
}

/* ================================
   Partners Slider Movement Fix - V20
================================ */
.partners-track{
  transform:translateX(0);
}
.partner-slide{
  flex:0 0 calc((100% - 54px) / 4);
}
.partner-dot{
  width:26px;
}
.partners-v18 .partner-slide:nth-child(n){
  animation-delay:0s;
}
.partners-v18 .partner-slide:nth-child(1){animation-delay:.05s}
.partners-v18 .partner-slide:nth-child(2){animation-delay:.10s}
.partners-v18 .partner-slide:nth-child(3){animation-delay:.15s}
.partners-v18 .partner-slide:nth-child(4){animation-delay:.20s}
.partners-v18 .partner-slide:nth-child(5){animation-delay:.25s}
.partners-v18 .partner-slide:nth-child(6){animation-delay:.30s}
.partners-v18 .partner-slide:nth-child(7){animation-delay:.35s}
.partners-v18 .partner-slide:nth-child(8){animation-delay:.40s}
@media (max-width:1100px){
  .partner-slide{flex-basis:calc((100% - 18px) / 2)}
}
@media (max-width:640px){
  .partner-slide{flex-basis:100%}
}

/* ================================
   Partners Full Width Progress - V21
================================ */
.partner-progress{
  position:relative;
  z-index:3;
  width:calc(100% - 60px);
  height:4px;
  margin:0 30px 22px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.10);
}
.partner-progress span{
  display:block;
  width:0;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--gold),var(--gold-2));
  box-shadow:0 0 22px rgba(207,169,106,.28);
}
.partner-progress span.is-running{
  animation:partnerProgressRun 3.5s linear both;
}
.partners-slider:hover .partner-progress span.is-running{
  animation-play-state:paused;
}
@keyframes partnerProgressRun{
  from{width:0}
  to{width:100%}
}
.partners-slider-footer{
  padding-top:0 !important;
}
@media (max-width:640px){
  .partner-progress{
    width:calc(100% - 40px);
    margin:0 20px 18px;
  }
}

/* ================================
   Services Section - V22
================================ */
.services-section{
  background:
    radial-gradient(circle at 20% 22%, rgba(207,169,106,.13), transparent 30%),
    radial-gradient(circle at 82% 76%, rgba(25,187,181,.09), transparent 34%),
    linear-gradient(180deg,#061426 0%,#020d19 100%);
  overflow:hidden;
}
.services-shell{
  width:min(1240px,calc(100% - 48px));
  display:grid;
  grid-template-columns:36% 64%;
  gap:54px;
  align-items:center;
}
.services-intro p{
  color:var(--muted);
  font-size:17px;
  line-height:1.8;
  margin:0 0 28px;
}
.services-orbit{
  position:relative;
  min-height:560px;
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:24px;
  align-items:center;
}
.services-orbit::before{
  content:"";
  position:absolute;
  inset:28px;
  border:1px solid rgba(207,169,106,.15);
  border-radius:50%;
  transform:rotate(-8deg);
  pointer-events:none;
}
.services-orbit::after{
  content:"";
  position:absolute;
  width:240px;
  height:240px;
  right:22%;
  top:50%;
  transform:translateY(-50%);
  border-radius:50%;
  background:radial-gradient(circle, rgba(207,169,106,.16), rgba(25,187,181,.08) 45%, transparent 72%);
  filter:blur(12px);
  pointer-events:none;
}
.service-main-card,
.service-mini-card{
  position:relative;
  z-index:2;
  border:1px solid rgba(207,169,106,.25);
  background:
    linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.018)),
    rgba(4,17,31,.72);
  color:#fff;
  overflow:hidden;
  box-shadow:0 24px 70px rgba(0,0,0,.28);
  transition:transform .42s cubic-bezier(.2,.8,.2,1), border-color .42s ease, box-shadow .42s ease;
}
.service-main-card::before,
.service-mini-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 25% 18%, rgba(240,200,120,.16), transparent 34%),
    linear-gradient(135deg,rgba(25,187,181,.08),transparent 45%);
  opacity:.65;
  pointer-events:none;
  transition:opacity .35s ease;
}
.service-main-card:hover,
.service-mini-card:hover{
  transform:translateY(-8px);
  border-color:rgba(240,200,120,.72);
  box-shadow:0 30px 86px rgba(0,0,0,.34),0 0 55px rgba(207,169,106,.13);
}
.service-main-card:hover::before,
.service-mini-card:hover::before{
  opacity:1;
}
.service-main-card{
  min-height:430px;
  border-radius:28px;
  padding:34px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}
.service-main-card::after{
  content:"";
  position:absolute;
  top:34px;
  right:34px;
  width:150px;
  height:150px;
  border-radius:50%;
  border:1px solid rgba(240,200,120,.28);
  background:
    radial-gradient(circle, rgba(240,200,120,.16), transparent 58%),
    linear-gradient(135deg,rgba(255,255,255,.08),transparent);
}
.service-kicker{
  position:relative;
  z-index:2;
  color:var(--gold);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:11px;
  font-weight:900;
  margin-bottom:14px;
}
.service-main-card h3{
  position:relative;
  z-index:2;
  margin:0 0 14px;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:42px;
  line-height:1.08;
  letter-spacing:-.04em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.service-main-card p{
  position:relative;
  z-index:2;
  color:#dce3eb;
  line-height:1.7;
  margin:0 0 20px;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.service-main-card strong{
  position:relative;
  z-index:2;
  color:var(--gold-2);
}
.service-mini-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.service-mini-card{
  min-height:210px;
  border-radius:20px;
  padding:24px;
}
.service-mini-card:nth-child(2),
.service-mini-card:nth-child(4){
  transform:translateY(34px);
}
.service-mini-card:nth-child(2):hover,
.service-mini-card:nth-child(4):hover{
  transform:translateY(24px);
}
.service-icon{
  position:relative;
  z-index:2;
  width:46px;
  height:46px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
  border-radius:16px;
  color:var(--gold-2);
  border:1px solid rgba(240,200,120,.38);
  background:rgba(207,169,106,.10);
  font-size:22px;
}
.service-mini-card h4{
  position:relative;
  z-index:2;
  margin:0 0 10px;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:24px;
  letter-spacing:-.03em;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.service-mini-card p{
  position:relative;
  z-index:2;
  margin:0;
  color:#d5dde6;
  font-size:14px;
  line-height:1.62;
  display:-webkit-box;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.services-section .reveal,
.services-section .services-intro,
.services-section .services-orbit,
.services-section .service-main-card,
.services-section .service-mini-card{
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  clip-path:none !important;
}

@media (max-height:820px) and (min-width:981px){
  .services-shell{gap:36px}
  .services-orbit{min-height:450px}
  .service-main-card{min-height:350px;padding:26px}
  .service-main-card h3{font-size:34px}
  .service-main-card p{font-size:14px}
  .service-mini-card{min-height:165px;padding:19px}
  .service-mini-card h4{font-size:20px}
  .service-mini-card p{font-size:12.5px}
}
@media (max-width:980px){
  .services-shell{
    grid-template-columns:1fr;
    gap:30px;
  }
  .services-orbit{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .service-mini-grid{
    grid-template-columns:1fr;
  }
  .service-mini-card:nth-child(2),
  .service-mini-card:nth-child(4),
  .service-mini-card:nth-child(2):hover,
  .service-mini-card:nth-child(4):hover{
    transform:none;
  }
}

/* ================================
   Services Entrance Motion - V23
================================ */
.services-section .services-motion-item,
.services-section .service-main-card,
.services-section .service-mini-card{
  will-change:transform, opacity, filter;
}

.services-section.prepare-services-motion .services-motion-item,
.services-section.prepare-services-motion .service-main-card,
.services-section.prepare-services-motion .service-mini-card{
  opacity:0 !important;
  filter:blur(12px) !important;
}

.services-section.prepare-services-motion .services-motion-item:nth-child(1){
  transform:translateX(-70px) !important;
}
.services-section.prepare-services-motion .services-motion-item:nth-child(2){
  transform:translateX(-88px) !important;
}
.services-section.prepare-services-motion .services-motion-item:nth-child(3){
  transform:translateX(-104px) !important;
}
.services-section.prepare-services-motion .services-motion-item:nth-child(4){
  transform:translateX(-120px) !important;
}

.services-section.prepare-services-motion .service-main-card{
  transform:translateY(90px) scale(.94) rotateX(8deg) !important;
}
.services-section.prepare-services-motion .service-mini-card:nth-child(1){
  transform:translateX(100px) translateY(-45px) scale(.94) !important;
}
.services-section.prepare-services-motion .service-mini-card:nth-child(2){
  transform:translateX(100px) translateY(80px) scale(.94) !important;
}
.services-section.prepare-services-motion .service-mini-card:nth-child(3){
  transform:translateX(-70px) translateY(70px) scale(.94) !important;
}
.services-section.prepare-services-motion .service-mini-card:nth-child(4){
  transform:translateX(90px) translateY(110px) scale(.94) !important;
}

.services-section.play-services-motion .services-motion-item{
  animation:servicesTextIn .9s cubic-bezier(.18,.86,.22,1) both;
}
.services-section.play-services-motion .services-motion-item:nth-child(1){animation-delay:.08s}
.services-section.play-services-motion .services-motion-item:nth-child(2){animation-delay:.18s}
.services-section.play-services-motion .services-motion-item:nth-child(3){animation-delay:.30s}
.services-section.play-services-motion .services-motion-item:nth-child(4){animation-delay:.44s}

.services-section.play-services-motion .service-main-card{
  animation:serviceMainIn 1s cubic-bezier(.18,.86,.22,1) .18s both;
}
.services-section.play-services-motion .service-mini-card{
  animation:serviceBlockIn .92s cubic-bezier(.18,.86,.22,1) both;
}
.services-section.play-services-motion .service-mini-card:nth-child(1){animation-delay:.34s}
.services-section.play-services-motion .service-mini-card:nth-child(2){animation-delay:.46s}
.services-section.play-services-motion .service-mini-card:nth-child(3){animation-delay:.58s}
.services-section.play-services-motion .service-mini-card:nth-child(4){animation-delay:.70s}

@keyframes servicesTextIn{
  from{opacity:0;transform:translateX(-90px);filter:blur(14px)}
  to{opacity:1;transform:translateX(0);filter:blur(0)}
}
@keyframes serviceMainIn{
  from{opacity:0;transform:translateY(95px) scale(.94) rotateX(8deg);filter:blur(14px)}
  to{opacity:1;transform:translateY(0) scale(1) rotateX(0);filter:blur(0)}
}
@keyframes serviceBlockIn{
  from{opacity:0;transform:translate(var(--sx,70px), var(--sy,50px)) scale(.94);filter:blur(14px)}
  to{opacity:1;transform:translate(0,0) scale(1);filter:blur(0)}
}

.services-section.play-services-motion .service-mini-card:nth-child(1){--sx:90px;--sy:-55px}
.services-section.play-services-motion .service-mini-card:nth-child(2){--sx:95px;--sy:70px}
.services-section.play-services-motion .service-mini-card:nth-child(3){--sx:-70px;--sy:70px}
.services-section.play-services-motion .service-mini-card:nth-child(4){--sx:80px;--sy:105px}

.services-section.services-focus::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(circle at 55% 34%, rgba(207,169,106,.13), transparent 44%);
  animation:servicesFocusGlow 1.8s ease both;
}
@keyframes servicesFocusGlow{
  0%{opacity:0}
  30%{opacity:1}
  100%{opacity:0}
}

/* ================================
   Header Centered Logo Layout - V51
   Coverage Map: locked and untouched.
================================ */
.lp-header{
  min-height:108px !important;
}

.lp-nav-centered{
  display:grid !important;
  grid-template-columns:1fr auto 1fr !important;
  align-items:center !important;
  gap:34px !important;
  min-height:108px !important;
}

.lp-nav-centered .menu{
  display:flex !important;
  align-items:center !important;
  gap:34px !important;
  margin:0 !important;
}

.lp-nav-centered .menu-left{
  justify-content:flex-end !important;
}

.lp-nav-centered .menu-right{
  justify-content:flex-start !important;
}

.lp-nav-centered .brand-center{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:158px !important;
  height:158px !important;
  margin:0 12px -44px !important;
  z-index:30 !important;
  border-radius:34px !important;
  background:
    radial-gradient(circle at 50% 28%, rgba(207,169,106,.22), transparent 56%),
    linear-gradient(180deg, rgba(8,22,38,.98), rgba(3,11,22,.72)) !important;
  border:1px solid rgba(207,169,106,.22) !important;
  box-shadow:
    0 22px 52px rgba(0,0,0,.34),
    0 0 44px rgba(207,169,106,.14) !important;
}

.lp-nav-centered .brand-center::before{
  content:"";
  position:absolute;
  inset:10px;
  border-radius:27px;
  border:1px solid rgba(207,169,106,.13);
  pointer-events:none;
}

.lp-nav-centered .brand-center img{
  width:124px !important;
  height:auto !important;
  max-height:124px !important;
  object-fit:contain !important;
  display:block !important;
  filter:drop-shadow(0 0 16px rgba(207,169,106,.24));
}

/* Removed by request */
.lp-nav-centered .header-cta,
.lp-nav-centered a[href="solutions.html"],
.lp-nav-centered a[href="resources.html"]{
  display:none !important;
}

@media (max-width:1100px){
  .lp-nav-centered{
    gap:22px !important;
  }

  .lp-nav-centered .menu{
    gap:22px !important;
  }

  .lp-nav-centered .brand-center{
    width:126px !important;
    height:126px !important;
    margin:0 6px -28px !important;
    border-radius:28px !important;
  }

  .lp-nav-centered .brand-center img{
    width:100px !important;
    max-height:100px !important;
  }
}

@media (max-width:820px){
  .lp-header{
    min-height:auto !important;
  }

  .lp-nav-centered{
    display:flex !important;
    flex-direction:column !important;
    gap:16px !important;
    padding-top:14px !important;
    padding-bottom:14px !important;
  }

  .lp-nav-centered .brand-center{
    order:1;
    width:120px !important;
    height:120px !important;
    margin:0 !important;
  }

  .lp-nav-centered .menu-left{
    order:2;
  }

  .lp-nav-centered .menu-right{
    order:3;
  }

  .lp-nav-centered .menu{
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:18px !important;
  }
}

/* ================================
   Premium Section Motion - V52
   Coverage Map itself remains untouched.
================================ */
html{
  scroll-behavior:auto !important;
}

.snap-section{
  position:relative;
  isolation:isolate;
  scroll-margin-top:96px;
}

.snap-section::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(circle at 50% 38%, rgba(207,169,106,.12), transparent 42%),
    linear-gradient(90deg, transparent, rgba(240,200,120,.05), transparent);
  transform:scaleX(.74);
  filter:blur(10px);
}

.snap-section.section-active::after{
  animation:sectionLightSweep 1.15s cubic-bezier(.19,1,.22,1) both;
}

@keyframes sectionLightSweep{
  0%{
    opacity:0;
    transform:translateY(18px) scaleX(.72);
    filter:blur(18px);
  }
  35%{
    opacity:1;
  }
  100%{
    opacity:0;
    transform:translateY(0) scaleX(1);
    filter:blur(0);
  }
}

.section-motion-item{
  opacity:0;
  transform:
    translate3d(var(--motion-x, 0), var(--motion-y, 34px), 0)
    scale(.985);
  filter:blur(12px);
  will-change:transform, opacity, filter;
}

.section-active .section-motion-item{
  animation:premiumSectionIn .95s cubic-bezier(.16,1,.3,1) both;
  animation-delay:var(--motion-delay, 0ms);
}

@keyframes premiumSectionIn{
  0%{
    opacity:0;
    transform:
      translate3d(var(--motion-x, 0), var(--motion-y, 34px), 0)
      scale(.985);
    filter:blur(14px);
  }
  62%{
    opacity:1;
    filter:blur(0);
  }
  100%{
    opacity:1;
    transform:translate3d(0,0,0) scale(1);
    filter:blur(0);
  }
}

.section-leaving .section-motion-item{
  animation:premiumSectionOut .38s cubic-bezier(.4,0,.2,1) both;
}

@keyframes premiumSectionOut{
  from{
    opacity:1;
    transform:translate3d(0,0,0) scale(1);
    filter:blur(0);
  }
  to{
    opacity:.36;
    transform:translate3d(0,-18px,0) scale(.992);
    filter:blur(6px);
  }
}

body.section-scroll-active .lp-header{
  box-shadow:0 20px 50px rgba(0,0,0,.26);
  border-bottom-color:rgba(207,169,106,.18);
  background:rgba(2,11,22,.72);
}

.menu a{
  transition:color .28s ease, opacity .28s ease, transform .28s ease;
}

.menu a.is-active,
.menu a.selected,
.menu a.active{
  color:#f0c878;
  opacity:1;
  transform:translateY(-1px);
}

.menu a.is-active::after,
.menu a.selected::after,
.menu a.active::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-10px;
  margin:auto;
  width:34px;
  height:2px;
  background:var(--gold);
  box-shadow:0 0 16px rgba(240,200,120,.5);
}

@media (prefers-reduced-motion: reduce){
  .section-motion-item,
  .section-active .section-motion-item,
  .section-leaving .section-motion-item{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
    animation:none !important;
  }

  .snap-section::after{
    display:none !important;
  }
}

/* ================================
   Header Logo Partner-Style Shine - V53
   Coverage Map: locked and untouched.
================================ */
.lp-nav-centered .brand-center{
  overflow:hidden !important;
}

.lp-nav-centered .brand-center::after{
  content:"";
  position:absolute;
  top:-45%;
  left:-95%;
  width:58%;
  height:190%;
  z-index:2;
  pointer-events:none;
  background:
    linear-gradient(
      105deg,
      transparent 0%,
      rgba(255,255,255,.06) 28%,
      rgba(240,200,120,.42) 48%,
      rgba(255,255,255,.16) 56%,
      transparent 76%
    );
  transform:rotate(18deg);
  opacity:.85;
  animation:headerLogoShine 4.2s cubic-bezier(.2,.8,.2,1) infinite;
}

.lp-nav-centered .brand-center img{
  position:relative;
  z-index:3;
}

.lp-nav-centered .brand-center:hover::after{
  animation-duration:1.25s;
}

.lp-nav-centered .brand-center:hover{
  box-shadow:
    0 24px 58px rgba(0,0,0,.36),
    0 0 54px rgba(207,169,106,.22) !important;
}

@keyframes headerLogoShine{
  0%, 38%{
    left:-95%;
    opacity:0;
  }
  48%{
    opacity:.9;
  }
  68%{
    left:138%;
    opacity:.75;
  }
  100%{
    left:138%;
    opacity:0;
  }
}

/* ================================
   Replay Motion For All Sections - V54
   Coverage Map: locked and untouched.
================================ */
.v54-motion-item{
  opacity:0;
  transform:
    translate3d(var(--v54-x, 0), var(--v54-y, 44px), 0)
    scale(.965)
    rotateX(var(--v54-rx, 0deg));
  filter:blur(14px);
  will-change:opacity, transform, filter;
}

.v54-section-play .v54-motion-item{
  animation:v54SectionItemIn .95s cubic-bezier(.16,1,.3,1) both;
  animation-delay:var(--v54-delay, 0ms);
}

@keyframes v54SectionItemIn{
  0%{
    opacity:0;
    transform:
      translate3d(var(--v54-x, 0), var(--v54-y, 44px), 0)
      scale(.965)
      rotateX(var(--v54-rx, 0deg));
    filter:blur(14px);
  }
  58%{
    opacity:1;
    filter:blur(0);
  }
  100%{
    opacity:1;
    transform:translate3d(0,0,0) scale(1) rotateX(0deg);
    filter:blur(0);
  }
}

.v54-section-play::before{
  content:"";
  position:absolute;
  inset:10px;
  z-index:0;
  pointer-events:none;
  opacity:0;
  background:
    radial-gradient(circle at 50% 38%, rgba(207,169,106,.15), transparent 42%),
    linear-gradient(90deg, transparent, rgba(240,200,120,.055), transparent);
  animation:v54SectionGlow 1.15s cubic-bezier(.16,1,.3,1) both;
}

@keyframes v54SectionGlow{
  0%{opacity:0;transform:translateY(20px) scale(.92);filter:blur(18px)}
  42%{opacity:1}
  100%{opacity:0;transform:translateY(0) scale(1);filter:blur(0)}
}

.snap-section,
section[id]{
  position:relative;
  isolation:isolate;
}

@media (prefers-reduced-motion: reduce){
  .v54-motion-item,
  .v54-section-play .v54-motion-item{
    opacity:1 !important;
    transform:none !important;
    filter:none !important;
    animation:none !important;
  }
  .v54-section-play::before{
    display:none !important;
  }
}

/* ================================
   Contact ISO Banner Card - V55
   Coverage Map: locked and untouched.
================================ */
.iso-banner-card{
  position:relative;
  display:flex;
  min-height:100%;
  border-radius:24px !important;
  overflow:hidden;
  background:
    radial-gradient(circle at 18% 16%, rgba(240,200,120,.18), transparent 32%),
    radial-gradient(circle at 82% 76%, rgba(44,124,176,.16), transparent 30%),
    linear-gradient(180deg, rgba(7,20,36,.96), rgba(4,13,24,.98)) !important;
  border:1px solid rgba(207,169,106,.26) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 18px 48px rgba(0,0,0,.26);
}

.iso-banner-card::before{
  content:"";
  position:absolute;
  inset:12px;
  border-radius:18px;
  border:1px solid rgba(207,169,106,.12);
  pointer-events:none;
}

.iso-banner-card::after{
  content:"";
  position:absolute;
  inset:auto -22% 12% auto;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(240,200,120,.16), transparent 65%);
  filter:blur(10px);
  pointer-events:none;
}

.iso-banner-inner{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:16px;
  padding:28px 24px;
  width:100%;
}

.iso-eyebrow{
  display:inline-flex;
  width:max-content;
  padding:7px 12px;
  border-radius:999px;
  color:var(--gold-2);
  background:rgba(207,169,106,.10);
  border:1px solid rgba(207,169,106,.22);
  font-size:11px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.iso-seal{
  position:relative;
  width:118px;
  height:118px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,246,214,.34), rgba(255,246,214,.06) 46%, transparent 47%),
    conic-gradient(from 90deg, #f4d696, #cda35e, #f8e1b2, #c9964d, #f4d696);
  box-shadow:
    0 0 0 7px rgba(207,169,106,.10),
    0 18px 34px rgba(0,0,0,.28);
}

.iso-seal::before{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:50%;
  border:1px dashed rgba(255,244,214,.36);
}

.iso-seal-core{
  width:84px;
  height:84px;
  border-radius:50%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg, rgba(7,18,34,.94), rgba(4,12,22,.98));
  border:1px solid rgba(248,225,178,.32);
  text-align:center;
}

.iso-seal-core strong{
  color:#f5d79b;
  font-size:28px;
  line-height:1;
  letter-spacing:.08em;
}

.iso-seal-core small{
  margin-top:4px;
  color:#d6dde6;
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.iso-banner-card h3{
  margin:0;
  font-size:28px;
  line-height:1.16;
  color:#fff;
}

.iso-banner-card p{
  margin:0;
  color:#cfd8e2;
  line-height:1.7;
  font-size:14px;
}

.iso-standard-box{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:16px 18px;
  border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(207,169,106,.18);
}

.iso-standard-box span{
  color:#9fb2c6;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.14em;
}

.iso-standard-box strong{
  color:#f3d28e;
  font-size:24px;
  line-height:1.1;
}

.iso-standard-box small{
  color:#c7d0da;
  font-size:12px;
}

.iso-points{
  list-style:none;
  padding:0;
  margin:2px 0 0;
  display:grid;
  gap:10px;
}

.iso-points li{
  position:relative;
  padding-left:24px;
  color:#e1e7ee;
  font-size:13px;
}

.iso-points li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--gold-2);
  font-weight:700;
}

@media (max-width:980px){
  .iso-banner-inner{
    padding:24px 20px;
  }

  .iso-banner-card h3{
    font-size:24px;
  }

  .iso-seal{
    width:104px;
    height:104px;
  }

  .iso-seal-core{
    width:74px;
    height:74px;
  }

  .iso-seal-core strong{
    font-size:24px;
  }
}

/* ================================
   Premium Back To Top Button - V57
   Coverage Map: locked and untouched.
================================ */
.premium-back-to-top{
  position:fixed !important;
  right:26px !important;
  bottom:26px !important;
  width:58px !important;
  height:58px !important;
  border-radius:50% !important;
  border:1px solid rgba(240,200,120,.38) !important;
  background:
    radial-gradient(circle at 50% 30%, rgba(240,200,120,.20), transparent 46%),
    linear-gradient(180deg, rgba(7,22,39,.94), rgba(2,10,20,.98)) !important;
  color:#f4d38e !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  z-index:1200 !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,.34),
    0 0 0 8px rgba(207,169,106,.045),
    inset 0 1px 0 rgba(255,255,255,.06) !important;
  opacity:0;
  visibility:hidden;
  transform:translateY(16px) scale(.92);
  transition:
    opacity .35s ease,
    visibility .35s ease,
    transform .35s cubic-bezier(.16,1,.3,1),
    box-shadow .35s ease,
    border-color .35s ease !important;
}

.premium-back-to-top.show,
.premium-back-to-top.visible,
.premium-back-to-top.is-visible{
  opacity:1 !important;
  visibility:visible !important;
  transform:translateY(0) scale(1) !important;
}

.premium-back-to-top::before{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:inherit;
  background:conic-gradient(from 180deg, transparent, rgba(240,200,120,.34), transparent 38%);
  opacity:.72;
  animation:backTopOrbit 4.8s linear infinite;
  z-index:-1;
}

.premium-back-to-top::after{
  content:"";
  position:absolute;
  inset:9px;
  border-radius:inherit;
  border:1px solid rgba(240,200,120,.14);
  pointer-events:none;
}

.back-to-top-ring{
  position:absolute;
  inset:0;
  border-radius:inherit;
  overflow:hidden;
}

.back-to-top-ring::before{
  content:"";
  position:absolute;
  top:-60%;
  left:-90%;
  width:58%;
  height:220%;
  background:linear-gradient(105deg, transparent, rgba(255,255,255,.10), rgba(240,200,120,.42), transparent);
  transform:rotate(20deg);
  animation:backTopShine 3.8s cubic-bezier(.2,.8,.2,1) infinite;
}

.back-to-top-arrow{
  position:relative;
  z-index:2;
  font-size:24px;
  line-height:1;
  font-weight:800;
  transform:translateY(-1px);
  text-shadow:0 0 18px rgba(240,200,120,.48);
}

.premium-back-to-top:hover{
  transform:translateY(-4px) scale(1.04) !important;
  border-color:rgba(240,200,120,.68) !important;
  box-shadow:
    0 24px 48px rgba(0,0,0,.42),
    0 0 0 10px rgba(207,169,106,.07),
    0 0 34px rgba(240,200,120,.16),
    inset 0 1px 0 rgba(255,255,255,.10) !important;
}

.premium-back-to-top:active{
  transform:translateY(-1px) scale(.98) !important;
}

@keyframes backTopOrbit{
  to{transform:rotate(360deg)}
}

@keyframes backTopShine{
  0%, 42%{left:-90%;opacity:0}
  52%{opacity:.9}
  72%{left:130%;opacity:.75}
  100%{left:130%;opacity:0}
}

@media (max-width:720px){
  .premium-back-to-top{
    right:18px !important;
    bottom:18px !important;
    width:52px !important;
    height:52px !important;
  }

  .back-to-top-arrow{
    font-size:22px;
  }
}

/* ================================
   Healthcare Institution Identity - V58
   Coverage Map: locked and untouched.
================================ */
:root{
  --navy:#020c18;
  --navy-2:#071d32;
  --gold:#bfa56a;
  --gold-2:#e6c47d;
  --teal:#18b7b5;
  --medical-blue:#0c6fa4;
  --hospital-cyan:#4ad4d1;
  --text:#f7fbff;
  --muted:#b9c8d6;
  --line:rgba(120,191,212,.25);
  --card:rgba(6,24,42,.82);
}

body{
  background:
    radial-gradient(circle at 12% 16%, rgba(24,183,181,.08), transparent 28%),
    radial-gradient(circle at 82% 8%, rgba(12,111,164,.10), transparent 30%),
    var(--navy);
}

.hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(2,12,24,.84), rgba(2,12,24,.50) 48%, rgba(2,12,24,.74)),
    radial-gradient(circle at 72% 46%, rgba(24,183,181,.13), transparent 34%);
}

.hero-copy{
  position:relative;
  z-index:2;
}

.hero-copy h1 span{
  color:#eaf8ff;
}

.bar{
  background:linear-gradient(90deg, var(--hospital-cyan), var(--gold-2)) !important;
  box-shadow:0 0 28px rgba(74,212,209,.28);
}

.btn.gold{
  background:linear-gradient(135deg, #0c6fa4, #18b7b5) !important;
  border-color:rgba(74,212,209,.46) !important;
  color:#fff !important;
  box-shadow:0 18px 42px rgba(12,111,164,.20);
}

.btn.outline{
  border-color:rgba(120,191,212,.36) !important;
}

.trust-item .icon{
  color:var(--hospital-cyan) !important;
}

.eyebrow,
.section-eyebrow{
  color:var(--hospital-cyan) !important;
}

.section-title{
  color:#f7fbff;
}

.product-tab.active,
.product-v12-card,
.service-main-card,
.service-mini-card,
.about-v10-item,
.form,
.iso-banner-card{
  border-color:rgba(120,191,212,.22) !important;
}

.product-tab.active{
  background:
    linear-gradient(135deg, rgba(12,111,164,.22), rgba(24,183,181,.10)),
    rgba(6,24,42,.78) !important;
}

.product-category-title-link,
.product-category-link,
.service-kicker,
.service-icon{
  color:var(--hospital-cyan) !important;
}

.iso-seal{
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,.28), rgba(74,212,209,.08) 46%, transparent 47%),
    conic-gradient(from 90deg, #dfefff, #18b7b5, #e6c47d, #0c6fa4, #dfefff) !important;
}

.footer{
  background:#020b16 !important;
}

/* ================================
   Hero CTA Smooth Section Motion - V59
   Coverage Map: locked and untouched.
================================ */
.hero-actions .btn,
.btn[data-cta-motion="true"]{
  position:relative;
  overflow:hidden;
  transform:translateZ(0);
}

.hero-actions .btn::after,
.btn[data-cta-motion="true"]::after{
  content:"";
  position:absolute;
  inset:auto;
  left:50%;
  top:50%;
  width:12px;
  height:12px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(255,255,255,.34), rgba(240,200,120,.26), transparent 68%);
  transform:translate(-50%,-50%) scale(0);
  opacity:0;
  pointer-events:none;
}

.hero-actions .btn.cta-route-active::after,
.btn[data-cta-motion="true"].cta-route-active::after{
  animation:ctaRouteRipple .72s cubic-bezier(.16,1,.3,1) both;
}

.hero-actions .btn.cta-route-active,
.btn[data-cta-motion="true"].cta-route-active{
  animation:ctaRoutePress .52s cubic-bezier(.16,1,.3,1) both;
}

@keyframes ctaRouteRipple{
  0%{opacity:0;transform:translate(-50%,-50%) scale(0)}
  28%{opacity:1}
  100%{opacity:0;transform:translate(-50%,-50%) scale(34)}
}

@keyframes ctaRoutePress{
  0%{transform:translateY(0) scale(1)}
  38%{transform:translateY(-3px) scale(1.025)}
  100%{transform:translateY(0) scale(1)}
}

.cta-target-focus{
  position:relative;
}

.cta-target-focus::before{
  content:"";
  position:absolute;
  inset:18px;
  z-index:0;
  pointer-events:none;
  border-radius:26px;
  border:1px solid rgba(74,212,209,.28);
  box-shadow:
    0 0 80px rgba(74,212,209,.12),
    inset 0 0 50px rgba(230,196,125,.045);
  animation:ctaTargetFocus 1.25s cubic-bezier(.16,1,.3,1) both;
}

@keyframes ctaTargetFocus{
  0%{opacity:0;transform:scale(.965);filter:blur(12px)}
  35%{opacity:1}
  100%{opacity:0;transform:scale(1.015);filter:blur(0)}
}

body.cta-section-traveling .lp-header{
  background:rgba(2,11,22,.78);
  border-bottom-color:rgba(74,212,209,.22);
  box-shadow:0 20px 54px rgba(0,0,0,.28);
}

/* ================================
   Section Spacing + Header Offset - V61
   Coverage Map content remains locked and untouched.
================================ */
:root{
  --lp-header-clearance: 138px;
  --lp-section-gap: clamp(34px, 4.2vw, 76px);
}

html{
  scroll-padding-top: var(--lp-header-clearance) !important;
}

/* Add visual breathing space between all sections except the hero */
main > section:not(#home){
  margin-top: var(--lp-section-gap) !important;
  scroll-margin-top: var(--lp-header-clearance) !important;
}

/* When opening direct hashes like #contact, keep the section safely below the fixed header */
section[id]:not(#home),
.snap-section:not(#home){
  scroll-margin-top: var(--lp-header-clearance) !important;
}

/* Do not add extra gap before the first hero section */
#home{
  margin-top: 0 !important;
  scroll-margin-top: 0 !important;
}

/* Extra safety for contact because its content is tall and close to the sticky header */
#contact{
  scroll-margin-top: calc(var(--lp-header-clearance) + 18px) !important;
}

@media (max-width: 860px){
  :root{
    --lp-header-clearance: 172px;
    --lp-section-gap: 42px;
  }
}

/* ================================
   Final Section Clearance + Healthcare Copy Pass - V62
   Header untouched. Coverage Map untouched.
================================ */
:root{
  --lp-header-clearance: 248px;
  --lp-section-gap: clamp(56px, 6vw, 96px);
}

html{
  scroll-padding-top: var(--lp-header-clearance) !important;
}

/* Space between sections, excluding Hero */
main > section:not(#home){
  margin-top: var(--lp-section-gap) !important;
  scroll-margin-top: var(--lp-header-clearance) !important;
}

/* Keep section content clear from the centered logo/header when navigating by hash */
section[id]:not(#home),
.snap-section:not(#home){
  scroll-margin-top: var(--lp-header-clearance) !important;
}

/* Extra breathing room for the first content row inside non-hero sections */
main > section:not(#home) > .container{
  padding-top: clamp(20px, 2.3vw, 42px);
}

#home{
  margin-top: 0 !important;
  scroll-margin-top: 0 !important;
}

@media (max-width: 860px){
  :root{
    --lp-header-clearance: 210px;
    --lp-section-gap: 48px;
  }

  main > section:not(#home) > .container{
    padding-top: 20px;
  }
}

/* ================================
   Balanced Section Clearance - V63
   Header untouched. Coverage Map untouched.
================================ */
:root{
  --lp-header-clearance: 205px;
  --lp-section-gap: clamp(28px, 3.4vw, 56px);
}

html{
  scroll-padding-top: var(--lp-header-clearance) !important;
}

/* Moderate visual spacing only. No oversized blank area. */
main > section:not(#home){
  margin-top: var(--lp-section-gap) !important;
  scroll-margin-top: var(--lp-header-clearance) !important;
}

/* Remove the extra visual padding that pushed content too far down. */
main > section:not(#home) > .container{
  padding-top: 0 !important;
}

#home{
  margin-top: 0 !important;
  scroll-margin-top: 0 !important;
}

/* Keep full-viewport layout, but align content naturally after navigation */
.snap-section:not(#home){
  scroll-margin-top: var(--lp-header-clearance) !important;
}

@media (max-width: 860px){
  :root{
    --lp-header-clearance: 190px;
    --lp-section-gap: 34px;
  }
}

/* ================================
   Product Category Sidebar Text Fix - V64
   Header untouched. Coverage Map untouched.
================================ */
.product-tab{
  display:grid !important;
  grid-template-columns:44px minmax(0, 1fr) !important;
  align-items:center !important;
  column-gap:14px !important;
  row-gap:0 !important;
  min-height:88px !important;
  padding:16px 18px !important;
}

.product-tab .product-tab-index,
.product-tab > span:first-child{
  grid-column:1 !important;
  grid-row:1 / span 2 !important;
  align-self:center !important;
  justify-self:center !important;
  flex:0 0 auto !important;
}

.product-tab strong,
.product-tab h4,
.product-tab .product-tab-title{
  grid-column:2 !important;
  display:block !important;
  width:100% !important;
  margin:0 0 4px !important;
  white-space:normal !important;
  overflow:visible !important;
  line-height:1.18 !important;
  font-size:15px !important;
}

.product-tab small,
.product-tab p,
.product-tab .product-tab-desc{
  grid-column:2 !important;
  display:block !important;
  width:100% !important;
  margin:0 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  line-height:1.35 !important;
  font-size:12px !important;
  color:rgba(218,228,238,.82) !important;
}

.product-tab br{
  display:none !important;
}

@media (max-width:980px){
  .product-tab{
    min-height:76px !important;
    grid-template-columns:40px minmax(0, 1fr) !important;
  }

  .product-tab small,
  .product-tab p,
  .product-tab .product-tab-desc{
    white-space:normal !important;
  }
}

/* ================================
   Premium Footer With Socials - V65
   Header untouched. Coverage Map untouched.
================================ */
.footer-premium{
  position:relative;
  overflow:hidden;
  padding:0 0 26px !important;
  border-top:1px solid rgba(74,212,209,.16) !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(74,212,209,.10), transparent 32%),
    radial-gradient(circle at 82% 8%, rgba(230,196,125,.10), transparent 34%),
    linear-gradient(180deg, #041423 0%, #020a14 100%) !important;
}

.footer-premium::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, transparent, rgba(255,255,255,.025), transparent),
    repeating-linear-gradient(90deg, rgba(255,255,255,.025) 0 1px, transparent 1px 120px);
  opacity:.32;
}

.footer-cta-panel{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:28px;
  padding:28px 32px;
  margin-top:34px;
  margin-bottom:34px;
  border:1px solid rgba(74,212,209,.22);
  border-radius:24px;
  background:
    radial-gradient(circle at 20% 20%, rgba(74,212,209,.12), transparent 40%),
    linear-gradient(135deg, rgba(6,24,42,.92), rgba(2,12,24,.96));
  box-shadow:
    0 22px 60px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.04);
}

.footer-eyebrow{
  display:inline-block;
  color:var(--hospital-cyan, #4ad4d1);
  font-size:11px;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
  margin-bottom:8px;
}

.footer-cta-panel h3{
  margin:0 0 8px;
  color:#fff;
  font-family:var(--font-display);
  font-size:clamp(26px, 2.4vw, 38px);
  line-height:1.12;
  font-weight:500;
}

.footer-cta-panel p{
  margin:0;
  color:#b9c8d6;
  max-width:680px;
  line-height:1.7;
}

.footer-cta-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:50px;
  padding:0 22px;
  border-radius:14px;
  color:#061321;
  font-weight:900;
  white-space:nowrap;
  background:linear-gradient(135deg, #e6c47d, #bfa56a);
  box-shadow:0 18px 34px rgba(191,165,106,.16);
  transition:transform .28s ease, box-shadow .28s ease;
}

.footer-cta-btn:hover{
  transform:translateY(-3px);
  box-shadow:0 24px 46px rgba(191,165,106,.24);
}

.footer-main{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.45fr .78fr .95fr 1fr 1.12fr;
  gap:34px;
  padding:34px 0 30px;
}

.footer-brand-col p{
  margin:16px 0 20px;
  color:#b9c8d6;
  line-height:1.75;
  max-width:330px;
}

.footer-brand{
  display:inline-flex;
  width:106px;
  height:106px;
  align-items:center;
  justify-content:center;
  border-radius:26px;
  background:
    radial-gradient(circle at 50% 28%, rgba(230,196,125,.18), transparent 58%),
    rgba(6,24,42,.66);
  border:1px solid rgba(230,196,125,.18);
  box-shadow:0 18px 42px rgba(0,0,0,.24);
  overflow:hidden;
  position:relative;
}

.footer-brand::after{
  content:"";
  position:absolute;
  top:-40%;
  left:-90%;
  width:48%;
  height:180%;
  background:linear-gradient(105deg, transparent, rgba(255,255,255,.10), rgba(230,196,125,.34), transparent);
  transform:rotate(18deg);
  animation:footerLogoShine 4.8s ease-in-out infinite;
}

.footer-logo{
  width:82px !important;
  margin:0 !important;
  position:relative;
  z-index:2;
}

.footer-socials{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.footer-socials a{
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#e6c47d;
  border:1px solid rgba(230,196,125,.24);
  background:rgba(255,255,255,.035);
  box-shadow:0 10px 22px rgba(0,0,0,.16);
  transition:transform .28s ease, border-color .28s ease, background .28s ease, color .28s ease;
}

.footer-socials a:hover{
  transform:translateY(-4px);
  color:#061321;
  border-color:rgba(74,212,209,.50);
  background:linear-gradient(135deg, #4ad4d1, #e6c47d);
}

.footer-socials span{
  font-size:15px;
  font-weight:900;
}

.footer-main h5{
  margin:0 0 16px !important;
  color:#fff !important;
  font-size:14px;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.footer-main ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}

.footer-main li,
.footer-main a{
  color:#aebdcb !important;
  font-size:14px !important;
}

.footer-main a{
  position:relative;
  transition:color .24s ease, transform .24s ease;
}

.footer-links-col a:hover,
.footer-contact-col a:hover{
  color:#4ad4d1 !important;
  transform:translateX(3px);
}

.footer-contact-list li{
  display:grid;
  gap:3px;
}

.footer-contact-list span{
  color:#e6c47d;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.14em;
}

.footer-cert{
  margin-top:18px;
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(74,212,209,.20);
  background:rgba(74,212,209,.055);
}

.footer-cert strong{
  display:block;
  color:#e6c47d;
  font-size:20px;
  line-height:1.1;
}

.footer-cert small{
  display:block;
  color:#b9c8d6;
  margin-top:5px;
  line-height:1.5;
}

.footer-bottom{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:space-between;
  gap:16px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.08);
  color:#8998a8;
  font-size:13px;
}

.footer-bottom div{
  display:flex;
  gap:18px;
}

.footer-bottom a{
  color:#aebdcb;
  transition:color .24s ease;
}

.footer-bottom a:hover{
  color:#4ad4d1;
}

@keyframes footerLogoShine{
  0%, 42%{left:-90%;opacity:0}
  52%{opacity:.9}
  72%{left:130%;opacity:.75}
  100%{left:130%;opacity:0}
}

@media (max-width:1100px){
  .footer-main{
    grid-template-columns:1.3fr 1fr 1fr;
  }
}

@media (max-width:760px){
  .footer-cta-panel{
    grid-template-columns:1fr;
    padding:24px 20px;
  }

  .footer-main{
    grid-template-columns:1fr;
    gap:26px;
  }

  .footer-bottom{
    flex-direction:column;
  }
}

/* ================================
   Footer Links + Social Tooltips - V66
   Header untouched. Coverage Map untouched.
================================ */

/* Social icons hover: black text/icons */
.footer-socials a:hover,
.footer-socials a:hover span{
  color:#020a14 !important;
}

/* Professional black tooltip for social links */
.footer-socials a{
  position:relative !important;
}

.footer-socials a[data-tooltip]::after{
  content:attr(data-tooltip);
  position:absolute;
  left:50%;
  bottom:calc(100% + 12px);
  transform:translateX(-50%) translateY(6px);
  padding:7px 10px;
  border-radius:999px;
  background:#05070b;
  color:#ffffff;
  border:1px solid rgba(230,196,125,.28);
  box-shadow:0 14px 30px rgba(0,0,0,.42);
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease, transform .24s ease, visibility .24s ease;
  z-index:20;
}

.footer-socials a[data-tooltip]::before{
  content:"";
  position:absolute;
  left:50%;
  bottom:calc(100% + 6px);
  transform:translateX(-50%) translateY(6px) rotate(45deg);
  width:8px;
  height:8px;
  background:#05070b;
  border-right:1px solid rgba(230,196,125,.22);
  border-bottom:1px solid rgba(230,196,125,.22);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .24s ease, transform .24s ease, visibility .24s ease;
  z-index:19;
}

.footer-socials a[data-tooltip]:hover::after,
.footer-socials a[data-tooltip]:hover::before{
  opacity:1;
  visibility:visible;
  transform:translateX(-50%) translateY(0);
}

.footer-socials a[data-tooltip]:hover::before{
  transform:translateX(-50%) translateY(0) rotate(45deg);
}

/* Small arrow beside every footer text link */
.footer-links-col a,
.footer-contact-col a,
.footer-bottom a{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
}

.footer-links-col a::after,
.footer-contact-col a::after,
.footer-bottom a::after{
  content:"›";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#e6c47d;
  font-size:16px;
  line-height:1;
  transform:translateX(0);
  transition:transform .24s ease, color .24s ease;
}

.footer-links-col a:hover::after,
.footer-contact-col a:hover::after,
.footer-bottom a:hover::after{
  transform:translateX(4px);
  color:#4ad4d1;
}

/* CTA arrow already exists, keep it clean */
.footer-cta-btn::after{
  content:none !important;
}

.footer-brand::after,
.footer-socials a::after{
  text-decoration:none !important;
}

/* ================================
   Premium Contact Form - V67
   Header untouched. Coverage Map untouched.
================================ */
.contact-pro-form{
  position:relative;
  overflow:hidden;
  border-radius:26px !important;
  padding:26px !important;
  border:1px solid rgba(74,212,209,.24) !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(74,212,209,.13), transparent 35%),
    radial-gradient(circle at 90% 100%, rgba(230,196,125,.10), transparent 34%),
    linear-gradient(180deg, rgba(7,24,42,.96), rgba(3,13,24,.96)) !important;
  box-shadow:
    0 24px 64px rgba(0,0,0,.30),
    inset 0 1px 0 rgba(255,255,255,.05);
}

.contact-pro-form::before{
  content:"";
  position:absolute;
  inset:12px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.055);
  pointer-events:none;
}

.contact-pro-form::after{
  content:"";
  position:absolute;
  top:-35%;
  left:-50%;
  width:40%;
  height:170%;
  background:linear-gradient(105deg, transparent, rgba(255,255,255,.06), rgba(74,212,209,.12), transparent);
  transform:rotate(18deg);
  animation:contactFormShine 6.5s ease-in-out infinite;
  pointer-events:none;
}

.contact-form-head{
  position:relative;
  z-index:2;
  margin-bottom:20px;
}

.contact-form-head span{
  display:inline-flex;
  padding:7px 11px;
  border-radius:999px;
  color:#4ad4d1;
  background:rgba(74,212,209,.08);
  border:1px solid rgba(74,212,209,.20);
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:12px;
}

.contact-form-head h3{
  margin:0 0 8px;
  color:#fff;
  font-family:var(--font-display);
  font-size:clamp(24px, 2vw, 34px);
  line-height:1.12;
  font-weight:500;
}

.contact-form-head p{
  margin:0;
  color:#b9c8d6;
  line-height:1.65;
  font-size:14px;
}

.contact-pro-grid{
  position:relative;
  z-index:2;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:14px !important;
}

.field-control{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0;
}

.field-control span{
  color:#e6c47d;
  font-size:11px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.field-control input,
.field-control select,
.field-control textarea{
  width:100% !important;
  min-height:52px !important;
  border-radius:14px !important;
  padding:0 15px !important;
  color:#f7fbff !important;
  background:
    linear-gradient(180deg, rgba(3,14,26,.84), rgba(5,20,36,.88)) !important;
  border:1px solid rgba(120,191,212,.20) !important;
  outline:none !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  transition:border-color .24s ease, box-shadow .24s ease, background .24s ease, transform .24s ease;
}

.field-control select{
  appearance:none;
  background-image:
    linear-gradient(45deg, transparent 50%, #e6c47d 50%),
    linear-gradient(135deg, #e6c47d 50%, transparent 50%),
    linear-gradient(180deg, rgba(3,14,26,.84), rgba(5,20,36,.88)) !important;
  background-position:
    calc(100% - 19px) 50%,
    calc(100% - 13px) 50%,
    0 0 !important;
  background-size:6px 6px, 6px 6px, 100% 100% !important;
  background-repeat:no-repeat !important;
}

.field-control textarea{
  min-height:126px !important;
  padding-top:15px !important;
  resize:vertical;
}

.field-full{
  grid-column:1 / -1;
}

.field-control input::placeholder,
.field-control textarea::placeholder{
  color:rgba(185,200,214,.58);
}

.field-control:focus-within input,
.field-control:focus-within select,
.field-control:focus-within textarea{
  border-color:rgba(74,212,209,.72) !important;
  box-shadow:
    0 0 0 4px rgba(74,212,209,.08),
    0 10px 24px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.055) !important;
  transform:translateY(-1px);
}

.form-support-note{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:16px 0 0;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(230,196,125,.18);
  background:rgba(230,196,125,.055);
}

.form-support-note strong{
  color:#e6c47d;
  white-space:nowrap;
  font-size:15px;
}

.form-support-note span{
  color:#c2d0dc;
  font-size:12px;
  line-height:1.5;
}

.contact-submit-btn{
  position:relative;
  z-index:2;
  height:54px;
  border-radius:14px !important;
  margin-top:16px !important;
  overflow:hidden;
}

.contact-submit-btn::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(105deg, transparent, rgba(255,255,255,.22), transparent);
  transform:translateX(-120%);
  transition:transform .55s ease;
}

.contact-submit-btn:hover::before{
  transform:translateX(120%);
}

@keyframes contactFormShine{
  0%, 48%{left:-60%;opacity:0}
  58%{opacity:1}
  76%{left:120%;opacity:.65}
  100%{left:120%;opacity:0}
}

@media (max-width:980px){
  .contact-pro-grid{
    grid-template-columns:1fr !important;
  }

  .contact-pro-form{
    padding:22px !important;
  }

  .form-support-note{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* ================================
   Contact Form Text Cleanup - V68
   Header untouched. Coverage Map untouched.
================================ */
.contact-form-head{
  margin-bottom:16px !important;
}

.contact-form-head h3{
  max-width:420px;
}

.contact-form-head p{
  max-width:430px;
}

.form-support-note{
  display:none !important;
}

/* ================================
   Social Tooltip Transparency Only - V70
   Header untouched. Coverage Map untouched.
================================ */
.footer-socials a[data-tooltip]::after{
  background:rgba(4,7,12,.72) !important;
  color:#fff !important;
  border:1px solid rgba(230,196,125,.22) !important;
  box-shadow:0 14px 30px rgba(0,0,0,.28) !important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

.footer-socials a[data-tooltip]::before{
  background:rgba(4,7,12,.72) !important;
  border-right:1px solid rgba(230,196,125,.18) !important;
  border-bottom:1px solid rgba(230,196,125,.18) !important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

/* Keep social icon text black on hover */
.footer-socials a:hover,
.footer-socials a:hover span{
  color:#020a14 !important;
}

/* ================================
   Footer CTA Button Text Color - V71
   Header untouched. Coverage Map untouched.
================================ */
.footer-cta-panel .footer-cta-btn,
.footer-cta-panel .footer-cta-btn span{
  color:#020a14 !important;
}

.footer-cta-panel .footer-cta-btn:hover,
.footer-cta-panel .footer-cta-btn:hover span{
  color:#020a14 !important;
}

/* ================================
   Non-Hero Section Gap Fix - V76
   Fixes the oversized blank space before sections.
   Header untouched. Coverage Map files untouched.
================================ */
:root{
  --lp-header-clearance: 188px;
  --lp-section-gap: 26px;
}

html{
  scroll-padding-top: var(--lp-header-clearance) !important;
}

/* Reduce vertical gap between sections without affecting Hero */
main > section:not(#home){
  margin-top: var(--lp-section-gap) !important;
  scroll-margin-top: var(--lp-header-clearance) !important;
}

/* Stop non-hero sections from vertically centering content and creating a big blank area */
.dark-section.section-pad.snap-section:not(.coverage-section),
.products.snap-section,
.partners.snap-section,
.services-section.snap-section,
.contact.snap-section{
  min-height:auto !important;
  align-items:flex-start !important;
}

/* Products was the most affected section */
.products.products-v12.snap-section{
  padding-top:44px !important;
  padding-bottom:70px !important;
  justify-content:flex-start !important;
}

/* Keep other sections visually balanced */
.about-section.snap-section,
.services-section.snap-section{
  padding-top:54px !important;
  padding-bottom:72px !important;
}

.partners.partners-v18.snap-section{
  padding-top:50px !important;
  padding-bottom:70px !important;
}

.contact.snap-section{
  padding-top:58px !important;
  padding-bottom:70px !important;
}

/* Keep first content row directly under the intended section top */
main > section:not(#home) > .container{
  padding-top:0 !important;
}

#home{
  margin-top:0 !important;
  scroll-margin-top:0 !important;
}

@media (max-width:860px){
  :root{
    --lp-header-clearance: 170px;
    --lp-section-gap: 24px;
  }

  .products.products-v12.snap-section,
  .about-section.snap-section,
  .services-section.snap-section,
  .partners.partners-v18.snap-section,
  .contact.snap-section{
    padding-top:40px !important;
  }
}

/* ================================
   Contact Google Map Card - V77
   Header untouched. Coverage Map files untouched.
================================ */
.contact-grid{
  grid-template-columns:34% 39% 27% !important;
  align-items:start !important;
}

.contact-map-card{
  margin-top:22px;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(74,212,209,.22);
  background:
    radial-gradient(circle at 18% 0%, rgba(74,212,209,.10), transparent 38%),
    linear-gradient(180deg, rgba(7,24,42,.92), rgba(3,13,24,.96));
  box-shadow:0 22px 55px rgba(0,0,0,.24);
}

.contact-map-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:15px 16px;
  border-bottom:1px solid rgba(230,196,125,.16);
}

.contact-map-head span{
  color:#4ad4d1;
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.contact-map-head strong{
  color:#e6c47d;
  font-size:13px;
  white-space:nowrap;
}

.contact-map-card iframe{
  display:block;
  width:100%;
  height:230px;
  border:0;
  filter:saturate(.9) contrast(1.05) brightness(.82);
}

@media (max-width:1100px){
  .contact-grid{
    grid-template-columns:1fr !important;
  }

  .contact-map-card iframe{
    height:260px;
  }
}

/* ================================
   Contact Google Map Visible Under Checklist - V78
   Header untouched. Coverage Map files untouched.
================================ */
.contact-map-card{
  display:block !important;
  width:100% !important;
  margin-top:22px !important;
  overflow:hidden !important;
  border-radius:22px !important;
  border:1px solid rgba(74,212,209,.24) !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(74,212,209,.10), transparent 38%),
    linear-gradient(180deg, rgba(7,24,42,.92), rgba(3,13,24,.96)) !important;
  box-shadow:0 22px 55px rgba(0,0,0,.24) !important;
}

.contact-map-head{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:14px 16px !important;
  border-bottom:1px solid rgba(230,196,125,.16) !important;
}

.contact-map-head span{
  color:#4ad4d1 !important;
  font-size:10px !important;
  font-weight:900 !important;
  letter-spacing:.16em !important;
  text-transform:uppercase !important;
}

.contact-map-head strong{
  color:#e6c47d !important;
  font-size:13px !important;
  white-space:nowrap !important;
}

.contact-map-card iframe{
  display:block !important;
  width:100% !important;
  height:210px !important;
  border:0 !important;
  filter:saturate(.9) contrast(1.05) brightness(.82);
}

@media (max-width:1100px){
  .contact-map-card iframe{
    height:260px !important;
  }
}

/* ================================
   Footer Newsletter Form - V79
   Header untouched. Coverage Map files untouched.
================================ */
.footer-newsletter-panel{
  grid-template-columns:1fr minmax(360px, 480px) !important;
}

.footer-newsletter-form{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  width:100%;
  padding:8px;
  border-radius:18px;
  border:1px solid rgba(230,196,125,.22);
  background:rgba(2,10,22,.42);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045);
}

.footer-newsletter-form input{
  width:100%;
  min-height:48px;
  border:0;
  outline:0;
  border-radius:13px;
  padding:0 15px;
  color:#f7fbff;
  background:rgba(255,255,255,.055);
}

.footer-newsletter-form input::placeholder{
  color:rgba(185,200,214,.68);
}

.footer-newsletter-form input:focus{
  box-shadow:0 0 0 3px rgba(74,212,209,.12);
  background:rgba(255,255,255,.075);
}

.footer-newsletter-form button{
  min-height:48px;
  border:0;
  border-radius:13px;
  padding:0 18px;
  cursor:pointer;
  color:#020a14;
  font-weight:900;
  white-space:nowrap;
  background:linear-gradient(135deg, #e6c47d, #bfa56a);
  transition:transform .25s ease, box-shadow .25s ease;
}

.footer-newsletter-form button span{
  color:#020a14;
}

.footer-newsletter-form button:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 28px rgba(191,165,106,.22);
}

.sr-only{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

@media (max-width:900px){
  .footer-newsletter-panel{
    grid-template-columns:1fr !important;
  }

  .footer-newsletter-form{
    grid-template-columns:1fr;
  }

  .footer-newsletter-form button{
    width:100%;
  }
}

/* ================================
   Newsletter Subscribe Button Like Contact Form - V80
   Header untouched. Coverage Map files untouched.
================================ */
.footer-newsletter-form button{
  position:relative !important;
  overflow:hidden !important;
  min-height:48px !important;
  border:0 !important;
  border-radius:13px !important;
  padding:0 20px !important;
  cursor:pointer !important;
  color:#ffffff !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  background:linear-gradient(135deg, #1285b7, #1fb9b8) !important;
  box-shadow:0 14px 30px rgba(31,185,184,.22) !important;
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease !important;
}

.footer-newsletter-form button span{
  position:relative;
  z-index:2;
  color:#ffffff !important;
}

.footer-newsletter-form button::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(105deg, transparent, rgba(255,255,255,.24), transparent);
  transform:translateX(-120%);
  transition:transform .55s ease;
  z-index:1;
}

.footer-newsletter-form button:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 18px 38px rgba(31,185,184,.32) !important;
  filter:saturate(1.08);
}

.footer-newsletter-form button:hover::before{
  transform:translateX(120%);
}

.footer-newsletter-form button:active{
  transform:translateY(0) !important;
}

/* ================================
   Branded Contact Location Card - V81
   Replaces external Google iframe visual with a design-matched location card.
   Header untouched. Coverage Map files untouched.
================================ */
.contact-map-card{
  display:none !important;
}

.contact-location-card{
  position:relative;
  display:block;
  width:100%;
  margin-top:22px;
  overflow:hidden;
  border-radius:22px;
  border:1px solid rgba(74,212,209,.24);
  background:
    radial-gradient(circle at 18% 0%, rgba(74,212,209,.12), transparent 38%),
    radial-gradient(circle at 82% 100%, rgba(230,196,125,.10), transparent 36%),
    linear-gradient(180deg, rgba(7,24,42,.94), rgba(3,13,24,.97));
  box-shadow:
    0 22px 55px rgba(0,0,0,.24),
    inset 0 1px 0 rgba(255,255,255,.045);
}

.contact-location-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(105deg, transparent, rgba(255,255,255,.035), transparent);
  transform:translateX(-115%);
  animation:locationCardShine 7s ease-in-out infinite;
  pointer-events:none;
}

.location-card-top{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:15px 16px;
  border-bottom:1px solid rgba(230,196,125,.16);
}

.location-card-top span,
.location-card-bottom span{
  color:#4ad4d1;
  font-size:10px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.location-card-top strong{
  color:#e6c47d;
  font-size:13px;
  white-space:nowrap;
}

.location-visual{
  position:relative;
  height:220px;
  overflow:hidden;
  background:
    radial-gradient(circle at 54% 48%, rgba(74,212,209,.15), transparent 14%),
    radial-gradient(circle at 54% 48%, rgba(230,196,125,.16), transparent 28%),
    linear-gradient(135deg, rgba(5,20,36,.96), rgba(2,10,20,.98));
}

.location-grid{
  position:absolute;
  inset:0;
  background:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:28px 28px;
  mask-image:radial-gradient(circle at 54% 48%, #000 0 48%, transparent 78%);
  opacity:.72;
}

.location-radar{
  position:absolute;
  left:54%;
  top:48%;
  width:128px;
  height:128px;
  transform:translate(-50%, -50%);
  border-radius:50%;
  border:1px solid rgba(74,212,209,.35);
  box-shadow:
    0 0 0 18px rgba(74,212,209,.055),
    0 0 0 38px rgba(230,196,125,.045),
    0 0 42px rgba(74,212,209,.18);
  animation:locationPulse 2.8s ease-in-out infinite;
}

.location-route{
  position:absolute;
  height:1px;
  border-top:1px dashed rgba(230,196,125,.28);
  transform-origin:left center;
}

.route-a{
  width:62%;
  left:9%;
  top:36%;
  transform:rotate(11deg);
}

.route-b{
  width:54%;
  left:25%;
  top:69%;
  transform:rotate(-17deg);
}

.location-route::before,
.location-route::after{
  content:"";
  position:absolute;
  top:-4px;
  width:8px;
  height:8px;
  border-radius:50%;
  background:#e6c47d;
  box-shadow:0 0 16px rgba(230,196,125,.75);
}

.location-route::before{ left:0; }
.location-route::after{ right:0; }

.location-pin-core{
  position:absolute;
  left:54%;
  top:48%;
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  transform:translate(-50%, -50%);
  border-radius:50%;
  background:rgba(5,20,36,.72);
  border:1px solid rgba(230,196,125,.45);
  box-shadow:0 18px 34px rgba(0,0,0,.32);
}

.location-pin-core span{
  width:15px;
  height:15px;
  display:block;
  border-radius:50%;
  background:#4ad4d1;
  border:3px solid rgba(255,255,255,.88);
  box-shadow:
    0 0 0 8px rgba(74,212,209,.20),
    0 0 26px rgba(74,212,209,.95);
}

.location-label{
  position:absolute;
  left:calc(54% + 28px);
  top:calc(48% - 36px);
  min-width:124px;
  padding:9px 11px;
  border-radius:14px;
  background:rgba(2,10,22,.74);
  border:1px solid rgba(230,196,125,.22);
  backdrop-filter:blur(10px);
  box-shadow:0 16px 32px rgba(0,0,0,.28);
}

.location-label small{
  display:block;
  color:#4ad4d1;
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:3px;
}

.location-label b{
  color:#fff;
  font-size:18px;
  font-family:var(--font-display);
  font-weight:500;
}

.location-card-bottom{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  padding:15px 16px 16px;
  border-top:1px solid rgba(255,255,255,.06);
}

.location-card-bottom strong{
  display:block;
  margin-top:3px;
  color:#dce8f2;
  font-size:13px;
  line-height:1.35;
}

.location-card-bottom a{
  color:#e6c47d;
  font-size:13px;
  font-weight:900;
  white-space:nowrap;
  transition:color .24s ease, transform .24s ease;
}

.location-card-bottom a:hover{
  color:#4ad4d1;
  transform:translateX(3px);
}

@keyframes locationPulse{
  0%,100%{ transform:translate(-50%, -50%) scale(.92); opacity:.72; }
  50%{ transform:translate(-50%, -50%) scale(1.08); opacity:1; }
}

@keyframes locationCardShine{
  0%,46%{ transform:translateX(-115%); opacity:0; }
  58%{ opacity:.8; }
  78%{ transform:translateX(115%); opacity:.45; }
  100%{ transform:translateX(115%); opacity:0; }
}

@media (max-width:1100px){
  .location-visual{
    height:240px;
  }
}

@media (max-width:560px){
  .location-card-top,
  .location-card-bottom{
    flex-direction:column;
    align-items:flex-start;
  }

  .location-label{
    left:50%;
    top:calc(48% + 34px);
    transform:translateX(-50%);
  }
}

/* ================================
   Contact Intro Copy Cleanup - V82
   Header untouched. Coverage Map files untouched.
================================ */
.contact .checks{
  gap:10px !important;
}

.contact .checks li{
  line-height:1.35 !important;
}

.contact .contact-intro p,
.contact .section-text p{
  max-width:470px;
}

/* ================================
   Footer ISO Shine Effect - V83
   Header untouched. Coverage Map files untouched.
================================ */
.footer-cert{
  position:relative !important;
  overflow:hidden !important;
}

.footer-cert::after{
  content:"";
  position:absolute;
  top:-45%;
  left:-95%;
  width:52%;
  height:190%;
  background:
    linear-gradient(
      105deg,
      transparent 0%,
      rgba(255,255,255,.06) 28%,
      rgba(230,196,125,.38) 48%,
      rgba(74,212,209,.12) 58%,
      transparent 76%
    );
  transform:rotate(18deg);
  opacity:.85;
  pointer-events:none;
  animation:footerIsoShine 4.8s ease-in-out infinite;
}

.footer-cert:hover::after{
  animation-duration:1.25s;
}

.footer-cert strong,
.footer-cert small{
  position:relative;
  z-index:2;
}

@keyframes footerIsoShine{
  0%, 42%{
    left:-95%;
    opacity:0;
  }
  52%{
    opacity:.9;
  }
  72%{
    left:135%;
    opacity:.72;
  }
  100%{
    left:135%;
    opacity:0;
  }
}

/* ================================
   Global Premium Select Styling - V84
   Applies to current and future select fields.
   Header untouched. Coverage Map files untouched.
================================ */

/* Native fallback if JS is disabled */
select{
  color:#f7fbff !important;
  background:
    linear-gradient(180deg, rgba(3,14,26,.92), rgba(5,20,36,.96)) !important;
  border:1px solid rgba(74,212,209,.22) !important;
  border-radius:14px !important;
}

select option,
select optgroup{
  background:#061426 !important;
  color:#f7fbff !important;
}

select option:checked{
  background:#123a4a !important;
  color:#ffffff !important;
}

/* Enhanced custom select */
select.select-enhanced{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  opacity:0 !important;
  pointer-events:none !important;
  overflow:hidden !important;
}

.custom-select{
  position:relative;
  width:100%;
  z-index:10;
}

.custom-select.is-open{
  z-index:9999;
}

.custom-select-trigger{
  width:100%;
  min-height:52px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-radius:14px;
  padding:0 15px;
  cursor:pointer;
  color:#f7fbff;
  background:
    linear-gradient(180deg, rgba(3,14,26,.92), rgba(5,20,36,.96));
  border:1px solid rgba(74,212,209,.22);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  transition:border-color .24s ease, box-shadow .24s ease, transform .24s ease, background .24s ease;
}

.custom-select-placeholder{
  color:rgba(185,200,214,.68);
}

.custom-select-trigger::after{
  content:"";
  width:8px;
  height:8px;
  border-right:2px solid #e6c47d;
  border-bottom:2px solid #e6c47d;
  transform:rotate(45deg) translateY(-2px);
  transition:transform .24s ease;
  flex:0 0 auto;
}

.custom-select.is-open .custom-select-trigger::after{
  transform:rotate(225deg) translateY(-2px);
}

.custom-select.is-open .custom-select-trigger,
.custom-select-trigger:focus{
  outline:0;
  border-color:rgba(74,212,209,.72);
  box-shadow:
    0 0 0 4px rgba(74,212,209,.08),
    0 10px 24px rgba(0,0,0,.16),
    inset 0 1px 0 rgba(255,255,255,.055);
  transform:translateY(-1px);
}

.custom-select-menu{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 8px);
  max-height:220px;
  overflow:auto;
  padding:7px;
  border-radius:16px;
  background:rgba(4,13,25,.96);
  border:1px solid rgba(74,212,209,.25);
  box-shadow:
    0 22px 48px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease, visibility .2s ease;
}

.custom-select.is-open .custom-select-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}

.custom-select-option{
  display:flex;
  align-items:center;
  min-height:38px;
  padding:9px 11px;
  border-radius:11px;
  color:#dce8f2;
  font-size:13px;
  cursor:pointer;
  transition:background .18s ease, color .18s ease, transform .18s ease;
}

.custom-select-option:hover,
.custom-select-option.is-focused{
  background:rgba(74,212,209,.12);
  color:#ffffff;
  transform:translateX(3px);
}

.custom-select-option.is-selected{
  background:linear-gradient(135deg, rgba(18,133,183,.48), rgba(31,185,184,.34));
  color:#ffffff;
  box-shadow:inset 0 0 0 1px rgba(74,212,209,.20);
}

.custom-select-option.is-disabled{
  opacity:.44;
  cursor:not-allowed;
  transform:none !important;
}

/* Cleaner scrollbar inside dropdown */
.custom-select-menu::-webkit-scrollbar{
  width:7px;
}

.custom-select-menu::-webkit-scrollbar-track{
  background:rgba(255,255,255,.04);
  border-radius:999px;
}

.custom-select-menu::-webkit-scrollbar-thumb{
  background:rgba(230,196,125,.38);
  border-radius:999px;
}

@media (max-width:720px){
  .custom-select-menu{
    max-height:190px;
  }
}

/* ================================
   Clean Text-Only Select Dropdown - V85
   Makes custom select options text-only and same width as the select.
   Header untouched. Coverage Map files untouched.
================================ */
.custom-select{
  width:100% !important;
}

.custom-select-menu{
  left:0 !important;
  right:auto !important;
  width:100% !important;
  min-width:100% !important;
  box-sizing:border-box !important;
  padding:8px 10px !important;
  background:rgba(4,13,25,.88) !important;
}

.custom-select-option{
  width:100% !important;
  justify-content:flex-start !important;
  background:transparent !important;
  box-shadow:none !important;
  border:0 !important;
  border-radius:0 !important;
  padding:8px 4px !important;
  min-height:34px !important;
  color:#cbd8e4 !important;
  text-align:left !important;
}

.custom-select-option:hover,
.custom-select-option.is-focused{
  background:transparent !important;
  box-shadow:none !important;
  color:#ffffff !important;
  transform:translateX(3px);
}

.custom-select-option.is-selected{
  background:transparent !important;
  box-shadow:none !important;
  color:#4ad4d1 !important;
}

.custom-select-option.is-disabled{
  background:transparent !important;
  color:rgba(203,216,228,.38) !important;
  opacity:1 !important;
}

/* ================================
   Select Dropdown Above Form Button - V86
   Makes select menu appear above Request Institutional Support button.
   Header untouched. Coverage Map files untouched.
================================ */
.contact-pro-form,
.contact-pro-grid,
.form-grid.contact-pro-grid,
.field-control{
  overflow:visible !important;
}

.contact-pro-form{
  z-index:20 !important;
}

.field-control{
  position:relative !important;
  z-index:30 !important;
}

.field-control:focus-within{
  z-index:10020 !important;
}

.field-control:has(.custom-select.is-open){
  z-index:10050 !important;
}

.custom-select.is-open{
  z-index:10060 !important;
}

.custom-select.is-open .custom-select-menu{
  z-index:10070 !important;
}

.contact-submit-btn{
  position:relative !important;
  z-index:5 !important;
}

/* ================================
   Contact Select Menu Above Submit Button - V87
   Ensures dropdown option buttons layer above Request Institutional Support button.
   Header untouched. Coverage Map files untouched.
================================ */
.contact-pro-form{
  overflow:visible !important;
  isolation:auto !important;
}

.contact-pro-grid,
.form-grid.contact-pro-grid{
  position:relative !important;
  z-index:100 !important;
  overflow:visible !important;
}

.contact-pro-form .field-control{
  position:relative !important;
  overflow:visible !important;
  z-index:120 !important;
}

/* When any select is open, lift the whole grid above everything inside the form */
.contact-pro-form:has(.custom-select.is-open) .contact-pro-grid,
.contact-pro-form:has(.custom-select.is-open) .field-control:has(.custom-select.is-open){
  z-index:99990 !important;
}

.contact-pro-form .custom-select.is-open{
  position:relative !important;
  z-index:99999 !important;
}

.contact-pro-form .custom-select.is-open .custom-select-menu{
  z-index:100000 !important;
  pointer-events:auto !important;
}

/* Keep the form button visually behind the open dropdown */
.contact-pro-form:has(.custom-select.is-open) .contact-submit-btn{
  z-index:1 !important;
  pointer-events:none !important;
}

.contact-pro-form:has(.custom-select.is-open) .contact-submit-btn::before{
  display:none !important;
}

.contact-submit-btn{
  z-index:2 !important;
}

/* ================================
   Mobile Header + Hero Trust Row - V90
   Header links beside logo on mobile.
   Hero trust items stay in one row.
   Coverage Map files untouched.
================================ */
@media (max-width:720px){
  .site-header,
  .header,
  header{
    overflow:visible !important;
  }

  .nav-wrap,
  .header-inner,
  .navbar,
  .nav-shell{
    display:grid !important;
    grid-template-columns:1fr 92px 1fr !important;
    align-items:center !important;
    gap:8px !important;
    padding-inline:12px !important;
  }

  .brand-center,
  .brand,
  .site-logo{
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:center !important;
    width:92px !important;
    height:92px !important;
    margin:0 !important;
    transform:none !important;
  }

  .brand-center img,
  .brand img,
  .site-logo img{
    max-width:76px !important;
    height:auto !important;
  }

  .menu-left,
  .nav-left{
    grid-column:1 !important;
    grid-row:1 !important;
    justify-self:end !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-end !important;
    gap:7px !important;
    margin:0 !important;
    padding:0 !important;
  }

  .menu-right,
  .nav-right{
    grid-column:3 !important;
    grid-row:1 !important;
    justify-self:start !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    gap:7px !important;
    margin:0 !important;
    padding:0 !important;
  }

  .menu-left a,
  .menu-right a,
  .nav-left a,
  .nav-right a{
    font-size:12px !important;
    line-height:1.1 !important;
    white-space:nowrap !important;
    padding:0 !important;
  }

  .hero-trust,
  .hero-trust-list,
  .hero-badges,
  .hero-features,
  .trust-list,
  .trust-grid{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    gap:10px !important;
    width:100% !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding-bottom:8px !important;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }

  .hero-trust > *,
  .hero-trust-list > *,
  .hero-badges > *,
  .hero-features > *,
  .trust-list > *,
  .trust-grid > *{
    flex:0 0 auto !important;
    min-width:155px !important;
    max-width:170px !important;
    scroll-snap-align:start;
  }
}

@media (max-width:420px){
  .nav-wrap,
  .header-inner,
  .navbar,
  .nav-shell{
    grid-template-columns:1fr 84px 1fr !important;
    gap:6px !important;
    padding-inline:8px !important;
  }

  .brand-center,
  .brand,
  .site-logo{
    width:84px !important;
    height:84px !important;
  }

  .brand-center img,
  .brand img,
  .site-logo img{
    max-width:70px !important;
  }

  .menu-left a,
  .menu-right a,
  .nav-left a,
  .nav-right a{
    font-size:11px !important;
  }
}

/* ================================
   Contact ISO Centering - V100
   Scope: desktop + mobile as requested.
   Coverage map files remain untouched.
================================ */
.iso-banner-inner{
  align-items:center;
  text-align:center;
}

.iso-eyebrow{
  align-self:center;
}

.iso-seal{
  margin-left:auto;
  margin-right:auto;
}

.iso-standard-box{
  width:100%;
  align-items:center;
  text-align:center;
}

.iso-points{
  width:100%;
  justify-items:center;
  text-align:left;
}

.iso-points li{
  width:max-content;
  max-width:100%;
}

/* ================================
   Section Internal Spacing Fix - V117
   Replace external section margin gaps with internal padding.
   Keeps backgrounds continuous between sections.
   Coverage map files and pin positions untouched.
================================ */
main > section:not(#home){
  margin-top:0 !important;
  scroll-margin-top:var(--lp-header-clearance) !important;
}

main > section:not(#home).snap-section{
  padding-top:calc(var(--lp-section-inner-top, 54px) + var(--lp-section-gap, 26px)) !important;
}

.products.products-v12.snap-section{--lp-section-inner-top:44px;}
.about-section.snap-section{--lp-section-inner-top:54px;}
.services-section.snap-section{--lp-section-inner-top:54px;}
.coverage-section.snap-section{--lp-section-inner-top:54px;}
.partners.partners-v18.snap-section{--lp-section-inner-top:50px;}
.contact.snap-section{--lp-section-inner-top:58px;}

main > section:not(#home) > .container{
  padding-top:0 !important;
}

#home{
  margin-top:0 !important;
}


/* ================================
   Life Pillars Footer Navigation Final Grid - V5.3
   Scope: all site footers.
   Make Navigation links exactly two links per row.
================================ */
.footer-main .footer-nav-col ul{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, max-content)) !important;
  column-gap:34px !important;
  row-gap:16px !important;
  align-items:start !important;
}

.footer-main .footer-nav-col li{
  margin:0 !important;
  min-width:0 !important;
}

.footer-main .footer-nav-col a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  min-height:24px !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
}

@media (max-width:760px){
  .footer-main .footer-nav-col ul{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    column-gap:22px !important;
    row-gap:14px !important;
  }

  .footer-main .footer-nav-col a{
    white-space:normal !important;
  }
}


/* ================================
   Life Pillars Footer Navigation Paired Rows - V5.4
   Scope: all site footers.
   Hard layout: each footer Navigation row contains exactly two links.
================================ */
.footer-main .footer-nav-col .footer-nav-pairs{
  display:grid !important;
  grid-template-columns:1fr !important;
  row-gap:16px !important;
  column-gap:0 !important;
  align-items:start !important;
  width:max-content !important;
  max-width:100% !important;
}

.footer-main .footer-nav-col .footer-nav-row{
  display:grid !important;
  grid-template-columns:minmax(0, max-content) minmax(0, max-content) !important;
  column-gap:38px !important;
  row-gap:0 !important;
  align-items:center !important;
  margin:0 !important;
  min-width:0 !important;
}

.footer-main .footer-nav-col .footer-nav-row a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  min-height:24px !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
}

@media (max-width:760px){
  .footer-main .footer-nav-col .footer-nav-pairs{
    width:100% !important;
  }

  .footer-main .footer-nav-col .footer-nav-row{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    column-gap:24px !important;
    row-gap:0 !important;
  }

  .footer-main .footer-nav-col .footer-nav-row a{
    white-space:normal !important;
  }
}


/* ================================
   Life Pillars Subpages Footer Navigation Fix - V5.5
   Scope: subpage footer navigation only.
   Fix paired links spacing/row layout.
================================ */
body.subpage .footer-main .footer-nav-col .footer-nav-pairs{
  display:flex !important;
  flex-direction:column !important;
  gap:18px !important;
  width:100% !important;
  max-width:360px !important;
  margin:0 !important;
  padding:0 !important;
}

body.subpage .footer-main .footer-nav-col .footer-nav-row{
  display:grid !important;
  grid-template-columns:minmax(118px, 1fr) minmax(118px, 1fr) !important;
  gap:0 34px !important;
  align-items:center !important;
  margin:0 !important;
  padding:0 !important;
  width:100% !important;
  min-width:0 !important;
}

body.subpage .footer-main .footer-nav-col .footer-nav-row a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  width:max-content !important;
  max-width:100% !important;
  min-height:24px !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
  margin:0 !important;
  padding:0 !important;
  transform:none;
}

body.subpage .footer-main .footer-nav-col .footer-nav-row a:hover{
  transform:translateX(3px) !important;
}

@media (max-width:760px){
  body.subpage .footer-main .footer-nav-col .footer-nav-pairs{
    max-width:100% !important;
    gap:14px !important;
  }

  body.subpage .footer-main .footer-nav-col .footer-nav-row{
    grid-template-columns:1fr 1fr !important;
    column-gap:22px !important;
  }

  body.subpage .footer-main .footer-nav-col .footer-nav-row a{
    white-space:normal !important;
  }
}


/* ================================
   Life Pillars Partner Product Gallery Stable Layout - V5.6
   Scope: partner detail pages only.
   Fix: prevent side product cards/images from overlapping or being hidden under the sticky header.
================================ */
body.subpage.partner-detail-page .partner-products-gallery-section{
  padding-top:clamp(135px,15vh,190px) !important;
  overflow:visible !important;
}

body.subpage.partner-detail-page .partner-products-gallery-section .container{
  overflow:visible !important;
}

body.subpage.partner-detail-page .partner-products-gallery-section .subpage-section-head{
  position:relative !important;
  z-index:5 !important;
  margin-bottom:44px !important;
}

body.subpage.partner-detail-page .partner-gallery-layout{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:30px !important;
  align-items:stretch !important;
  overflow:visible !important;
  margin-bottom:34px !important;
}

body.subpage.partner-detail-page .partner-gallery-main,
body.subpage.partner-detail-page .partner-gallery-side,
body.subpage.partner-detail-page .partner-gallery-thumbs,
body.subpage.partner-detail-page .partner-gallery-thumb,
body.subpage.partner-detail-page .partner-product-tile{
  overflow:hidden !important;
  transform:none !important;
}

body.subpage.partner-detail-page .partner-gallery-main:hover,
body.subpage.partner-detail-page .partner-gallery-thumb:hover,
body.subpage.partner-detail-page .partner-product-tile:hover{
  transform:none !important;
}

/* Main featured card: stable, no crop/overlay */
body.subpage.partner-detail-page .partner-gallery-main{
  min-height:100% !important;
  border-radius:30px !important;
}

body.subpage.partner-detail-page .partner-gallery-main > img{
  width:100% !important;
  height:360px !important;
  max-height:360px !important;
  object-fit:contain !important;
  object-position:center !important;
  padding:22px !important;
  display:block !important;
  background:rgba(255,255,255,.025) !important;
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
}

/* Side list: no absolute/negative visual behavior, clean aligned cards */
body.subpage.partner-detail-page .partner-gallery-side{
  display:block !important;
  min-width:0 !important;
}

body.subpage.partner-detail-page .partner-gallery-thumbs{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:18px !important;
  width:100% !important;
  min-width:0 !important;
}

body.subpage.partner-detail-page .partner-gallery-thumb{
  display:grid !important;
  grid-template-columns:112px minmax(0,1fr) !important;
  align-items:center !important;
  gap:18px !important;
  min-height:124px !important;
  padding:18px !important;
  border-radius:26px !important;
  text-align:left !important;
  position:relative !important;
}

body.subpage.partner-detail-page .partner-gallery-thumb img{
  width:112px !important;
  height:88px !important;
  min-width:112px !important;
  object-fit:contain !important;
  object-position:center !important;
  padding:8px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.04) !important;
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
  position:relative !important;
  z-index:2 !important;
}

body.subpage.partner-detail-page .partner-gallery-thumb span{
  display:block !important;
  color:#f0d69e !important;
  font-weight:800 !important;
  line-height:1.45 !important;
  position:relative !important;
  z-index:2 !important;
  min-width:0 !important;
}

/* Bottom grid: keep cards clean and fully visible */
body.subpage.partner-detail-page .partner-product-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
  overflow:visible !important;
}

body.subpage.partner-detail-page .partner-product-tile{
  border-radius:26px !important;
}

body.subpage.partner-detail-page .partner-product-tile img{
  width:100% !important;
  height:190px !important;
  object-fit:contain !important;
  object-position:center !important;
  padding:14px !important;
  display:block !important;
  background:rgba(255,255,255,.035) !important;
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
}

/* Kill all gallery overlays/shines that caused visual disappearance */
body.subpage.partner-detail-page .partner-gallery-main::before,
body.subpage.partner-detail-page .partner-gallery-main::after,
body.subpage.partner-detail-page .partner-gallery-thumb::before,
body.subpage.partner-detail-page .partner-gallery-thumb::after,
body.subpage.partner-detail-page .partner-product-tile::before,
body.subpage.partner-detail-page .partner-product-tile::after{
  display:none !important;
  content:none !important;
  opacity:0 !important;
}

@media (max-width:1100px){
  body.subpage.partner-detail-page .partner-gallery-layout{
    grid-template-columns:1fr !important;
  }

  body.subpage.partner-detail-page .partner-product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:760px){
  body.subpage.partner-detail-page .partner-products-gallery-section{
    padding-top:96px !important;
  }

  body.subpage.partner-detail-page .partner-gallery-main > img{
    height:280px !important;
    max-height:280px !important;
  }

  body.subpage.partner-detail-page .partner-gallery-thumb{
    grid-template-columns:88px minmax(0,1fr) !important;
    gap:14px !important;
    padding:14px !important;
  }

  body.subpage.partner-detail-page .partner-gallery-thumb img{
    width:88px !important;
    height:70px !important;
    min-width:88px !important;
  }

  body.subpage.partner-detail-page .partner-product-grid{
    grid-template-columns:1fr !important;
  }
}


/* ================================
   Life Pillars Footer Navigation Grid Final - V5.7
   Scope: homepage + all subpages.
   Final stable layout: Navigation links are normal list items displayed 2 per row.
================================ */
.footer-main .footer-nav-col{
  min-width:260px !important;
}

.footer-main .footer-nav-col .footer-nav-grid{
  display:grid !important;
  grid-template-columns:minmax(96px,max-content) minmax(96px,max-content) !important;
  column-gap:34px !important;
  row-gap:16px !important;
  align-items:start !important;
  justify-content:start !important;
  width:100% !important;
  max-width:340px !important;
  margin:0 !important;
  padding:0 !important;
}

.footer-main .footer-nav-col .footer-nav-grid li{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  min-width:0 !important;
  width:auto !important;
}

.footer-main .footer-nav-col .footer-nav-grid a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  min-height:24px !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}

.footer-main .footer-nav-col .footer-nav-grid a:hover{
  transform:translateX(3px) !important;
}

@media (max-width:760px){
  .footer-main .footer-nav-col{
    min-width:0 !important;
  }

  .footer-main .footer-nav-col .footer-nav-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    column-gap:22px !important;
    row-gap:14px !important;
    max-width:100% !important;
  }

  .footer-main .footer-nav-col .footer-nav-grid a{
    white-space:normal !important;
  }
}

/* ================================
   Life Pillars Shared Footer Single Source - V6.2
   Scope: homepage + all subpages.
   Goal: one footer layout everywhere; no homepage-only footer clone rules.
   Header untouched. Coverage map untouched.
================================ */
.footer-premium{
  border-top:1px solid rgba(207,169,106,.16) !important;
}

.footer-main{
  grid-template-columns:minmax(220px,1.1fr) minmax(220px,.85fr) minmax(220px,.9fr) minmax(220px,.95fr) !important;
  column-gap:54px !important;
  row-gap:34px !important;
  align-items:start !important;
  padding:34px 0 30px !important;
}

.footer-main .footer-links-col,
.footer-main .footer-contact-col{
  min-width:0 !important;
}

.footer-main .footer-links-col h5,
.footer-main .footer-contact-col h5{
  margin-bottom:16px !important;
}

.footer-main .footer-nav-col{
  min-width:260px !important;
}

.footer-main .footer-nav-col .footer-nav-grid{
  display:grid !important;
  grid-template-columns:minmax(96px,max-content) minmax(96px,max-content) !important;
  column-gap:34px !important;
  row-gap:16px !important;
  align-items:start !important;
  justify-content:start !important;
  width:100% !important;
  max-width:340px !important;
  margin:0 !important;
  padding:0 !important;
}

.footer-main .footer-nav-col .footer-nav-grid li{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  min-width:0 !important;
  width:auto !important;
}

.footer-main .footer-nav-col .footer-nav-grid a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:7px !important;
  width:max-content !important;
  max-width:100% !important;
  min-height:24px !important;
  line-height:1.35 !important;
  white-space:nowrap !important;
  margin:0 !important;
  padding:0 !important;
  transform:none !important;
}

.footer-main .footer-nav-col .footer-nav-grid a:hover{
  transform:translateX(3px) !important;
}

.footer-contact-list{
  row-gap:10px !important;
}

.footer-cert{
  max-width:none !important;
}

@media (max-width:1100px){
  .footer-main{
    grid-template-columns:1.15fr 1fr !important;
    column-gap:42px !important;
  }
}

@media (max-width:820px){
  .footer-main{
    grid-template-columns:1fr !important;
    row-gap:30px !important;
  }

  .footer-main .footer-nav-col{
    min-width:0 !important;
  }

  .footer-main .footer-nav-col .footer-nav-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px 12px !important;
    max-width:100% !important;
  }

  .footer-main .footer-nav-col .footer-nav-grid a{
    white-space:normal !important;
  }
}

/* ================================
   Home Hero Dynamic Slider - V1.2
   Coverage Map untouched.
================================ */
.lp-hero-slider{
  position:relative;
  max-width:660px;
}
.lp-hero-slides{
  position:relative;
}
.lp-hero-slide{
  display:none;
  opacity:0;
  transform:translateY(18px);
}
.lp-hero-slide.is-active{
  display:block;
  opacity:1;
  transform:translateY(0);
  animation:lpHeroSlideIn .72s cubic-bezier(.16,1,.3,1) both;
}
.lp-hero-slide h1{
  max-width:720px;
}
.lp-hero-slider-controls{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:28px;
}
.lp-hero-arrow{
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid rgba(120,191,212,.35);
  background:rgba(2,12,24,.44);
  color:#f7fbff;
  font-size:28px;
  line-height:1;
  cursor:pointer;
  transition:transform .25s ease, border-color .25s ease, background .25s ease;
}
.lp-hero-arrow:hover,
.lp-hero-arrow:focus-visible{
  transform:translateY(-2px);
  border-color:rgba(74,212,209,.72);
  background:rgba(12,111,164,.32);
}
.lp-hero-dots{
  display:flex;
  align-items:center;
  gap:9px;
}
.lp-hero-dots button{
  width:9px;
  height:9px;
  padding:0;
  border-radius:999px;
  border:1px solid rgba(231,233,236,.48);
  background:transparent;
  cursor:pointer;
  transition:width .25s ease, background .25s ease, border-color .25s ease;
}
.lp-hero-dots button.is-active{
  width:28px;
  background:linear-gradient(90deg, var(--hospital-cyan), var(--gold-2));
  border-color:transparent;
}
@keyframes lpHeroSlideIn{
  from{opacity:0;transform:translateY(24px);filter:blur(8px)}
  to{opacity:1;transform:translateY(0);filter:blur(0)}
}
@media (max-width:720px){
  .lp-hero-slider-controls{
    margin-top:22px;
  }
  .lp-hero-arrow{
    width:38px;
    height:38px;
    font-size:24px;
  }
}

/* ================================
   Patch V1.4 - Home Hero Title Size
   Keep homepage hero title cleaner on desktop.
================================ */
@media (min-width: 821px){
  body.home .hero-copy{
    max-width: 760px;
  }

  body.home .hero-copy h1,
  body.home .lp-hero-slide h1{
    max-width: 760px;
    font-size: clamp(38px, 3.1vw, 50px);
    line-height: 1.12;
    letter-spacing: -0.6px;
  }
}

/* Patch V-2.8 — Home partners logo frame white background
   Scope: homepage partners slider only. */
.partners-v18 .partner-logo-frame{
  background:#ffffff;
  border-color:rgba(240,200,120,.28);
  box-shadow:inset 0 0 0 1px rgba(3,13,25,.04), 0 14px 34px rgba(0,0,0,.16);
}
.partners-v18 .partner-logo-frame img{
  filter:none;
  opacity:1;
}
.partners-v18 .partner-slide:hover .partner-logo-frame img{
  filter:none;
  opacity:1;
}

/* ================================
   Newsletter CF7 Integration - Patch V-3.2
   Coverage untouched.
================================ */
.footer-newsletter-cf7{
  display:block;
}

.footer-newsletter-cf7 .wpcf7-form{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  width:100%;
}

.footer-newsletter-cf7 .wpcf7-form p{
  margin:0;
  display:contents;
}

.footer-newsletter-form input[type="submit"],
.footer-newsletter-cf7 .wpcf7-submit{
  min-height:48px !important;
  border:0 !important;
  border-radius:13px !important;
  padding:0 20px !important;
  cursor:pointer !important;
  color:#ffffff !important;
  font-weight:900 !important;
  white-space:nowrap !important;
  background:linear-gradient(135deg, #1285b7, #1fb9b8) !important;
  box-shadow:0 14px 30px rgba(31,185,184,.22) !important;
  transition:transform .25s ease, box-shadow .25s ease, filter .25s ease !important;
}

.footer-newsletter-form input[type="submit"]:hover,
.footer-newsletter-cf7 .wpcf7-submit:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 18px 38px rgba(31,185,184,.32) !important;
  filter:saturate(1.08);
}

.footer-newsletter-cf7 .wpcf7-response-output{
  grid-column:1 / -1;
  margin:8px 0 0 !important;
  color:#f7fbff;
}

.footer-newsletter-cf7 .wpcf7-not-valid-tip{
  grid-column:1 / -1;
  margin-top:6px;
  font-size:12px;
}

.footer-newsletter-cf7 .wpcf7-spinner{
  display:none;
}

@media (max-width:900px){
  .footer-newsletter-cf7 .wpcf7-form{
    grid-template-columns:1fr;
  }

  .footer-newsletter-form input[type="submit"],
  .footer-newsletter-cf7 .wpcf7-submit{
    width:100%;
  }
}

/* ================================
   Contact ISO Card Compact Fit - V3.6
   Keeps the ISO block inside its current card size.
   Coverage remains untouched.
================================ */
.contact .iso-banner-card{
  min-width:0;
}

.contact .iso-banner-inner{
  gap:12px;
  padding:24px 22px;
}

.contact .iso-banner-card h3{
  font-size:clamp(22px, 1.75vw, 28px);
  line-height:1.14;
}

.contact .iso-banner-card p{
  font-size:13px;
  line-height:1.55;
}

.contact .iso-seal{
  width:104px;
  height:104px;
}

.contact .iso-seal-core{
  width:74px;
  height:74px;
}

.contact .iso-seal-core strong{
  font-size:24px;
}

.contact .iso-standard-box{
  padding:14px 16px;
}

.contact .iso-standard-box strong{
  font-size:clamp(20px, 1.55vw, 24px);
  overflow-wrap:anywhere;
}

.contact .iso-standard-box small{
  line-height:1.35;
}

.contact .iso-points{
  justify-items:stretch;
  gap:8px;
  width:100%;
  text-align:left;
}

.contact .iso-points li{
  width:100%;
  max-width:100%;
  line-height:1.42;
  white-space:normal;
  overflow-wrap:break-word;
}

@media (max-width:980px){
  .contact .iso-banner-inner{
    padding:22px 18px;
  }

  .contact .iso-banner-card h3{
    font-size:22px;
  }
}


/* ================================
   Footer Social Brand Colors - Patch V-4.1
   Coverage Map untouched.
================================ */
.footer-socials a[class*="footer-social--"]{
  background:rgba(255,255,255,.035) !important;
  transition:transform .28s ease, border-color .28s ease, background .28s ease, color .28s ease, box-shadow .28s ease !important;
}

.footer-socials a.footer-social--facebook,
.footer-socials a.footer-social--facebook span{ color:#1877F2 !important; }
.footer-socials a.footer-social--facebook{ border-color:rgba(24,119,242,.42) !important; }
.footer-socials a.footer-social--facebook:hover{ background:#1877F2 !important; border-color:#1877F2 !important; box-shadow:0 14px 30px rgba(24,119,242,.28) !important; }
.footer-socials a.footer-social--facebook:hover span{ color:#fff !important; }

.footer-socials a.footer-social--instagram,
.footer-socials a.footer-social--instagram span{ color:#E4405F !important; }
.footer-socials a.footer-social--instagram{ border-color:rgba(228,64,95,.42) !important; }
.footer-socials a.footer-social--instagram:hover{ background:linear-gradient(135deg,#833AB4,#E1306C,#FCAF45) !important; border-color:#E1306C !important; box-shadow:0 14px 30px rgba(225,48,108,.28) !important; }
.footer-socials a.footer-social--instagram:hover span{ color:#fff !important; }

.footer-socials a.footer-social--x,
.footer-socials a.footer-social--x span{ color:#fff !important; }
.footer-socials a.footer-social--x{ border-color:rgba(255,255,255,.42) !important; }
.footer-socials a.footer-social--x:hover{ background:#000 !important; border-color:#fff !important; box-shadow:0 14px 30px rgba(0,0,0,.35) !important; }
.footer-socials a.footer-social--x:hover span{ color:#fff !important; }

.footer-socials a.footer-social--linkedin,
.footer-socials a.footer-social--linkedin span{ color:#0A66C2 !important; }
.footer-socials a.footer-social--linkedin{ border-color:rgba(10,102,194,.45) !important; }
.footer-socials a.footer-social--linkedin:hover{ background:#0A66C2 !important; border-color:#0A66C2 !important; box-shadow:0 14px 30px rgba(10,102,194,.28) !important; }
.footer-socials a.footer-social--linkedin:hover span{ color:#fff !important; }

.footer-socials a.footer-social--youtube,
.footer-socials a.footer-social--youtube span{ color:#FF0000 !important; }
.footer-socials a.footer-social--youtube{ border-color:rgba(255,0,0,.42) !important; }
.footer-socials a.footer-social--youtube:hover{ background:#FF0000 !important; border-color:#FF0000 !important; box-shadow:0 14px 30px rgba(255,0,0,.28) !important; }
.footer-socials a.footer-social--youtube:hover span{ color:#fff !important; }

.footer-socials a.footer-social--tiktok,
.footer-socials a.footer-social--tiktok span{ color:#00F2EA !important; text-shadow:1px 0 0 #FF0050; }
.footer-socials a.footer-social--tiktok{ border-color:rgba(0,242,234,.42) !important; }
.footer-socials a.footer-social--tiktok:hover{ background:linear-gradient(135deg,#000,#FF0050,#00F2EA) !important; border-color:#00F2EA !important; box-shadow:0 14px 30px rgba(255,0,80,.28) !important; }
.footer-socials a.footer-social--tiktok:hover span{ color:#fff !important; text-shadow:none; }

.footer-socials a.footer-social--snapchat,
.footer-socials a.footer-social--snapchat span{ color:#FFFC00 !important; }
.footer-socials a.footer-social--snapchat{ border-color:rgba(255,252,0,.45) !important; }
.footer-socials a.footer-social--snapchat:hover{ background:#FFFC00 !important; border-color:#FFFC00 !important; box-shadow:0 14px 30px rgba(255,252,0,.24) !important; }
.footer-socials a.footer-social--snapchat:hover span{ color:#000 !important; }

.footer-socials a.footer-social--whatsapp,
.footer-socials a.footer-social--whatsapp span{ color:#25D366 !important; }
.footer-socials a.footer-social--whatsapp{ border-color:rgba(37,211,102,.45) !important; }
.footer-socials a.footer-social--whatsapp:hover{ background:#25D366 !important; border-color:#25D366 !important; box-shadow:0 14px 30px rgba(37,211,102,.26) !important; }
.footer-socials a.footer-social--whatsapp:hover span{ color:#fff !important; }

.footer-socials a.footer-social--email,
.footer-socials a.footer-social--email span{ color:#EA4335 !important; }
.footer-socials a.footer-social--email{ border-color:rgba(234,67,53,.42) !important; }
.footer-socials a.footer-social--email:hover{ background:#EA4335 !important; border-color:#EA4335 !important; box-shadow:0 14px 30px rgba(234,67,53,.24) !important; }
.footer-socials a.footer-social--email:hover span{ color:#fff !important; }

.footer-socials a.footer-social--website,
.footer-socials a.footer-social--website span{ color:#4AD4D1 !important; }
.footer-socials a.footer-social--website{ border-color:rgba(74,212,209,.45) !important; }
.footer-socials a.footer-social--website:hover{ background:#4AD4D1 !important; border-color:#4AD4D1 !important; box-shadow:0 14px 30px rgba(74,212,209,.24) !important; }
.footer-socials a.footer-social--website:hover span{ color:#020A14 !important; }


/* ===============================
   Footer YouTube Icon Color Fix - Patch V-4.2
   =============================== */
.footer-socials a.footer-social--youtube span{
  font-family: Arial, Helvetica, sans-serif !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  color:#FF0000 !important;
  text-shadow:none !important;
}
.footer-socials a.footer-social--youtube:hover span{
  color:#fff !important;
  text-shadow:none !important;
}

/* ================================
   CF7 Contact + Newsletter Layout Fix - Patch V-4.14.2
   Fixes Contact Form 7 automatic wrappers without changing header/footer/home/Coverage templates.
================================ */
.life-pillars-cf7-form .wpcf7,
.life-pillars-cf7-form .wpcf7-form{
  position:relative !important;
  z-index:2 !important;
  width:100% !important;
}

.life-pillars-cf7-form .wpcf7-form p{
  margin:0 !important;
}

.life-pillars-cf7-form .wpcf7-form br{
  display:none !important;
}

.life-pillars-cf7-form .contact-form-head + p,
.life-pillars-cf7-form .wpcf7-form > p:empty{
  display:none !important;
}

.life-pillars-cf7-form .contact-pro-grid > p,
.life-pillars-cf7-form .form-grid.contact-pro-grid > p{
  display:contents !important;
  margin:0 !important;
}

.life-pillars-cf7-form .field-control{
  width:100% !important;
}

.life-pillars-cf7-form .field-control > span:not(.wpcf7-form-control-wrap){
  color:#e6c47d !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

.life-pillars-cf7-form .field-control .wpcf7-form-control-wrap{
  display:block !important;
  width:100% !important;
  color:inherit !important;
  font-size:inherit !important;
  font-weight:inherit !important;
  letter-spacing:normal !important;
  text-transform:none !important;
}

.life-pillars-cf7-form .field-control .wpcf7-form-control{
  width:100% !important;
}

.life-pillars-cf7-form .wpcf7-not-valid-tip,
.life-pillars-cf7-form .wpcf7-response-output{
  position:relative !important;
  z-index:3 !important;
  grid-column:1 / -1 !important;
  width:100% !important;
}

.life-pillars-cf7-form .wpcf7-not-valid-tip{
  display:block !important;
  margin-top:6px !important;
  color:#ff6b7a !important;
  font-size:12px !important;
  line-height:1.45 !important;
  letter-spacing:normal !important;
  text-transform:none !important;
}

.life-pillars-cf7-form .wpcf7-response-output{
  margin:14px 0 0 !important;
  border-radius:14px !important;
  color:#f7fbff !important;
}

.life-pillars-cf7-form .wpcf7-spinner{
  display:none !important;
}

.life-pillars-cf7-form .wpcf7-form > p:has(.contact-submit-btn){
  position:relative !important;
  z-index:2 !important;
  display:block !important;
  margin-top:16px !important;
}

.life-pillars-cf7-form input[type="submit"].contact-submit-btn{
  width:100% !important;
  min-height:54px !important;
}

/* Keep CF7 newsletter compact and prevent the consent checkbox from inheriting text-field styles. */
.footer-newsletter-cf7 .wpcf7,
.footer-newsletter-cf7 .wpcf7-form{
  width:100% !important;
}

.footer-newsletter-cf7 .wpcf7-form{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  gap:10px !important;
  align-items:start !important;
}

.footer-newsletter-cf7 .wpcf7-form p{
  display:contents !important;
  margin:0 !important;
}

.footer-newsletter-cf7 .wpcf7-form br{
  display:none !important;
}

.footer-newsletter-cf7 label{
  display:block !important;
  color:#b9c8d6 !important;
  font-size:12px !important;
  line-height:1.5 !important;
}

.footer-newsletter-cf7 .wpcf7-form-control-wrap{
  display:block !important;
  width:100% !important;
}

.footer-newsletter-cf7 input[type="email"]{
  width:100% !important;
  min-height:48px !important;
}

.footer-newsletter-cf7 input[type="checkbox"]{
  appearance:auto !important;
  -webkit-appearance:checkbox !important;
  width:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  height:16px !important;
  min-height:16px !important;
  max-height:16px !important;
  padding:0 !important;
  margin:0 8px 0 0 !important;
  border-radius:3px !important;
  vertical-align:middle !important;
  background:#ffffff !important;
  box-shadow:none !important;
}

.footer-newsletter-cf7 .wpcf7-acceptance,
.footer-newsletter-cf7 .wpcf7-list-item,
.footer-newsletter-cf7 .wpcf7-list-item label{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  margin:0 !important;
}

.footer-newsletter-cf7 .wpcf7-form-control-wrap[data-name="newsletter-consent"],
.footer-newsletter-cf7 .wpcf7-acceptance,
.footer-newsletter-cf7 .wpcf7-not-valid-tip,
.footer-newsletter-cf7 .wpcf7-response-output{
  grid-column:1 / -1 !important;
}

.footer-newsletter-cf7 .wpcf7-list-item-label{
  color:#b9c8d6 !important;
  font-size:12px !important;
  line-height:1.5 !important;
}

.footer-newsletter-cf7 .wpcf7-submit{
  align-self:end !important;
}

@media (max-width:900px){
  .footer-newsletter-cf7 .wpcf7-form{
    grid-template-columns:1fr !important;
  }
}

/* ================================
   Footer Newsletter CF7 One-Row Layout - Patch V-4.14.3
   Keeps email input, consent checkbox, and submit button in one row.
================================ */
.footer-newsletter-cf7 .wpcf7-form{
  position:relative !important;
  display:grid !important;
  grid-template-columns:minmax(260px, 1fr) auto auto !important;
  gap:12px !important;
  align-items:center !important;
  padding-bottom:22px !important;
}

.footer-newsletter-cf7 .wpcf7-form p{
  display:contents !important;
  margin:0 !important;
}

.footer-newsletter-cf7 .lp-newsletter-form{
  display:grid !important;
  grid-template-columns:minmax(260px, 1fr) auto auto !important;
  gap:12px !important;
  align-items:center !important;
  width:100% !important;
}

.footer-newsletter-cf7 label{
  margin:0 !important;
}

.footer-newsletter-cf7 .wpcf7-form-control-wrap[data-name="newsletter-email"]{
  position:relative !important;
  display:block !important;
  width:100% !important;
  grid-column:auto !important;
}

.footer-newsletter-cf7 input[type="email"]{
  width:100% !important;
  min-height:48px !important;
  margin:0 !important;
}

.footer-newsletter-cf7 .wpcf7-form-control-wrap[data-name="newsletter-consent"]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:max-content !important;
  grid-column:auto !important;
  margin:0 !important;
}

.footer-newsletter-cf7 .wpcf7-acceptance,
.footer-newsletter-cf7 .wpcf7-list-item,
.footer-newsletter-cf7 .wpcf7-list-item label{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  width:auto !important;
  margin:0 !important;
  white-space:nowrap !important;
}

.footer-newsletter-cf7 input[type="checkbox"]{
  width:16px !important;
  min-width:16px !important;
  max-width:16px !important;
  height:16px !important;
  min-height:16px !important;
  max-height:16px !important;
  margin:0 !important;
  flex:0 0 16px !important;
}

.footer-newsletter-cf7 .wpcf7-list-item-label{
  white-space:nowrap !important;
  color:#b9c8d6 !important;
}

.footer-newsletter-cf7 .wpcf7-submit{
  grid-column:auto !important;
  width:auto !important;
  min-width:132px !important;
  align-self:center !important;
  margin:0 !important;
}

.footer-newsletter-cf7 .wpcf7-spinner{
  display:none !important;
}

.footer-newsletter-cf7 .wpcf7-not-valid-tip{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:calc(100% + 6px) !important;
  display:block !important;
  width:100% !important;
  margin:0 !important;
  color:#e6c47d !important;
  font-size:12px !important;
  line-height:1.45 !important;
  text-align:left !important;
}

.footer-newsletter-cf7 .wpcf7-response-output{
  grid-column:1 / -1 !important;
  margin:8px 0 0 !important;
  color:#e6c47d !important;
  border-color:rgba(230,196,125,.45) !important;
}

@media (max-width:980px){
  .footer-newsletter-cf7 .wpcf7-form,
  .footer-newsletter-cf7 .lp-newsletter-form{
    grid-template-columns:1fr !important;
    align-items:stretch !important;
    padding-bottom:0 !important;
  }

  .footer-newsletter-cf7 .wpcf7-form-control-wrap[data-name="newsletter-consent"]{
    justify-content:flex-start !important;
  }

  .footer-newsletter-cf7 .wpcf7-submit{
    width:100% !important;
  }

  .footer-newsletter-cf7 .wpcf7-not-valid-tip{
    position:static !important;
    margin-top:6px !important;
  }
}

/* ================================
   Footer Newsletter Consent Layout - Patch V-4.14.4
   Keeps Email + checkbox + Subscribe in one row, moves consent text below, and styles checkbox professionally.
================================ */
.footer-newsletter-cf7 .wpcf7-form,
.footer-newsletter-cf7 .lp-newsletter-form{
  position:relative !important;
  grid-template-columns:minmax(260px, 1fr) 22px auto !important;
  column-gap:14px !important;
  row-gap:8px !important;
  align-items:end !important;
  padding-bottom:34px !important;
}

.footer-newsletter-cf7 .wpcf7-form-control-wrap[data-name="newsletter-consent"]{
  align-self:end !important;
  justify-self:center !important;
  min-width:22px !important;
  width:22px !important;
  height:48px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  overflow:visible !important;
}

.footer-newsletter-cf7 .wpcf7-acceptance,
.footer-newsletter-cf7 .wpcf7-list-item,
.footer-newsletter-cf7 .wpcf7-list-item label{
  position:static !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:22px !important;
  height:22px !important;
  min-width:22px !important;
  margin:0 !important;
  padding:0 !important;
  gap:0 !important;
  overflow:visible !important;
}

.footer-newsletter-cf7 input[type="checkbox"]{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:20px !important;
  min-width:20px !important;
  max-width:20px !important;
  height:20px !important;
  min-height:20px !important;
  max-height:20px !important;
  border:1px solid rgba(230,196,125,.7) !important;
  border-radius:7px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.025)) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04), 0 8px 20px rgba(0,0,0,.2) !important;
  cursor:pointer !important;
  transition:border-color .22s ease, background .22s ease, box-shadow .22s ease, transform .22s ease !important;
}

.footer-newsletter-cf7 input[type="checkbox"]:hover,
.footer-newsletter-cf7 input[type="checkbox"]:focus-visible{
  border-color:#e6c47d !important;
  box-shadow:0 0 0 4px rgba(230,196,125,.14), inset 0 0 0 1px rgba(255,255,255,.08) !important;
  outline:none !important;
}

.footer-newsletter-cf7 input[type="checkbox"]:checked{
  border-color:#e6c47d !important;
  background:
    linear-gradient(135deg, rgba(230,196,125,.95), rgba(31,185,184,.82)),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.02)) !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23020a14' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M3.4 8.2l3 3.1 6.2-6.6'/%3E%3C/svg%3E"),
    linear-gradient(135deg, rgba(230,196,125,.95), rgba(31,185,184,.82)) !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:14px 14px, cover !important;
}

.footer-newsletter-cf7 .wpcf7-list-item-label{
  position:absolute !important;
  left:0 !important;
  right:0 !important;
  top:calc(100% + 8px) !important;
  width:100% !important;
  display:block !important;
  color:#e6c47d !important;
  font-size:12px !important;
  line-height:1.45 !important;
  white-space:normal !important;
  text-align:left !important;
  pointer-events:none !important;
}

.footer-newsletter-cf7 .wpcf7-not-valid-tip{
  top:calc(100% + 28px) !important;
  color:#e6c47d !important;
  text-align:left !important;
}

.footer-newsletter-cf7 .wpcf7-response-output{
  color:#e6c47d !important;
  border-color:rgba(230,196,125,.45) !important;
}

.footer-newsletter-cf7 .wpcf7-submit{
  align-self:end !important;
  min-height:48px !important;
}

@media (max-width:980px){
  .footer-newsletter-cf7 .wpcf7-form,
  .footer-newsletter-cf7 .lp-newsletter-form{
    grid-template-columns:1fr !important;
    align-items:stretch !important;
    padding-bottom:0 !important;
  }

  .footer-newsletter-cf7 .wpcf7-form-control-wrap[data-name="newsletter-consent"]{
    width:100% !important;
    height:auto !important;
    min-width:0 !important;
    justify-self:stretch !important;
    justify-content:flex-start !important;
  }

  .footer-newsletter-cf7 .wpcf7-acceptance,
  .footer-newsletter-cf7 .wpcf7-list-item,
  .footer-newsletter-cf7 .wpcf7-list-item label{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    justify-content:flex-start !important;
    gap:10px !important;
  }

  .footer-newsletter-cf7 .wpcf7-list-item-label{
    position:static !important;
    width:auto !important;
    pointer-events:auto !important;
  }

  .footer-newsletter-cf7 .wpcf7-not-valid-tip{
    position:static !important;
    margin-top:6px !important;
  }
}

/* ================================
   Footer Newsletter CF7 Structured Row Fix - Patch V-4.14.5
   Supports the updated CF7 markup:
   .lp-newsletter-form > .lp-newsletter-row + .lp-newsletter-consent-text
================================ */
.footer-newsletter-cf7 .wpcf7,
.footer-newsletter-cf7 .wpcf7 form,
.footer-newsletter-cf7 .wpcf7-form{
  width:100% !important;
}

.footer-newsletter-cf7 .wpcf7-form{
  display:block !important;
  padding:0 !important;
}

.footer-newsletter-cf7 .wpcf7-form p{
  margin:0 !important;
}

.footer-newsletter-cf7 .lp-newsletter-form{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:8px !important;
  width:100% !important;
  padding:0 !important;
  position:relative !important;
}

.footer-newsletter-cf7 .lp-newsletter-row{
  display:grid !important;
  grid-template-columns:minmax(220px, 1fr) 22px auto !important;
  gap:14px !important;
  align-items:center !important;
  width:100% !important;
}

.footer-newsletter-cf7 .lp-newsletter-row > p{
  display:contents !important;
}

.footer-newsletter-cf7 .lp-newsletter-email,
.footer-newsletter-cf7 .lp-newsletter-check{
  margin:0 !important;
}

.footer-newsletter-cf7 .lp-newsletter-email{
  display:block !important;
  min-width:0 !important;
}

.footer-newsletter-cf7 .lp-newsletter-email .wpcf7-form-control-wrap,
.footer-newsletter-cf7 .wpcf7-form-control-wrap[data-name="newsletter-email"]{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
}

.footer-newsletter-cf7 .lp-newsletter-email input[type="email"],
.footer-newsletter-cf7 input[name="newsletter-email"]{
  width:100% !important;
  min-width:0 !important;
  min-height:48px !important;
  margin:0 !important;
}

.footer-newsletter-cf7 .lp-newsletter-check{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:22px !important;
  min-width:22px !important;
  height:48px !important;
  overflow:visible !important;
}

.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-form-control-wrap,
.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-acceptance,
.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-list-item,
.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-list-item label{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:22px !important;
  min-width:22px !important;
  height:22px !important;
  margin:0 !important;
  padding:0 !important;
  gap:0 !important;
  overflow:visible !important;
}

.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-list-item-label{
  display:none !important;
}

.footer-newsletter-cf7 .lp-newsletter-check input[type="checkbox"]{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:20px !important;
  min-width:20px !important;
  max-width:20px !important;
  height:20px !important;
  min-height:20px !important;
  max-height:20px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(230,196,125,.75) !important;
  border-radius:7px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.025)) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05), 0 8px 20px rgba(0,0,0,.24) !important;
  cursor:pointer !important;
  transition:border-color .22s ease, box-shadow .22s ease, background .22s ease, transform .22s ease !important;
}

.footer-newsletter-cf7 .lp-newsletter-check input[type="checkbox"]:hover,
.footer-newsletter-cf7 .lp-newsletter-check input[type="checkbox"]:focus-visible{
  border-color:#e6c47d !important;
  box-shadow:0 0 0 4px rgba(230,196,125,.14), inset 0 0 0 1px rgba(255,255,255,.08) !important;
  outline:none !important;
}

.footer-newsletter-cf7 .lp-newsletter-check input[type="checkbox"]:checked{
  border-color:#e6c47d !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23020a14' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M3.4 8.2l3 3.1 6.2-6.6'/%3E%3C/svg%3E"),
    linear-gradient(135deg, rgba(230,196,125,.95), rgba(31,185,184,.82)) !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:14px 14px, cover !important;
}

.footer-newsletter-cf7 .lp-newsletter-row .wpcf7-submit{
  width:auto !important;
  min-width:132px !important;
  min-height:48px !important;
  margin:0 !important;
  align-self:center !important;
  justify-self:start !important;
}

.footer-newsletter-cf7 .lp-newsletter-consent-text{
  display:block !important;
  width:100% !important;
  margin:8px 0 0 !important;
  padding:0 !important;
  color:#e6c47d !important;
  font-size:12px !important;
  line-height:1.45 !important;
  text-align:left !important;
  grid-column:1 / -1 !important;
}

.footer-newsletter-cf7 .wpcf7-not-valid-tip,
.footer-newsletter-cf7 .wpcf7-response-output{
  position:static !important;
  display:block !important;
  width:100% !important;
  margin:7px 0 0 !important;
  color:#e6c47d !important;
  border-color:rgba(230,196,125,.45) !important;
  font-size:12px !important;
  line-height:1.45 !important;
  text-align:left !important;
}

.footer-newsletter-cf7 .wpcf7-spinner{
  display:none !important;
}

@media (max-width:980px){
  .footer-newsletter-cf7 .lp-newsletter-row{
    grid-template-columns:1fr !important;
    align-items:stretch !important;
  }

  .footer-newsletter-cf7 .lp-newsletter-check{
    justify-content:flex-start !important;
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
  }

  .footer-newsletter-cf7 .lp-newsletter-row .wpcf7-submit{
    width:100% !important;
    justify-self:stretch !important;
  }
}

/* ================================
   Footer Newsletter CF7 Final Cleanup - Patch V-4.14.6
   Keeps consent text clean and hides empty CF7 response output.
================================ */
.footer-newsletter-cf7 .lp-newsletter-form{
  overflow:visible !important;
}

.footer-newsletter-cf7 .lp-newsletter-row{
  align-items:center !important;
}

.footer-newsletter-cf7 .lp-newsletter-consent-text{
  display:block !important;
  margin:8px 0 0 !important;
  padding:0 !important;
  width:100% !important;
  color:#e6c47d !important;
  font-size:12px !important;
  line-height:1.55 !important;
  text-align:left !important;
  border:0 !important;
  box-shadow:none !important;
  white-space:normal !important;
}

.footer-newsletter-cf7 .wpcf7-response-output:empty{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  box-shadow:none !important;
}

.footer-newsletter-cf7 .wpcf7 form .wpcf7-response-output:not(:empty){
  display:block !important;
  width:100% !important;
  margin:8px 0 0 !important;
  padding:8px 10px !important;
  border:1px solid rgba(230,196,125,.38) !important;
  border-radius:12px !important;
  color:#e6c47d !important;
  background:rgba(230,196,125,.06) !important;
  font-size:12px !important;
  line-height:1.5 !important;
  text-align:left !important;
}

.footer-newsletter-cf7 .wpcf7-not-valid-tip{
  color:#e6c47d !important;
  border:0 !important;
  box-shadow:none !important;
}

/* ================================
   Footer Newsletter 3-Row Layout - Patch V-4.14.7
   Row 1: Email + Subscribe
   Row 2: Checkbox + consent text
   Row 3: validation/success message
================================ */
.footer-newsletter-cf7 .lp-newsletter-form{
  display:grid !important;
  grid-template-columns:24px minmax(0, 1fr) auto !important;
  grid-template-rows:auto auto auto !important;
  align-items:center !important;
  column-gap:12px !important;
  row-gap:8px !important;
  width:100% !important;
  max-width:100% !important;
  padding:0 !important;
  overflow:visible !important;
}

.footer-newsletter-cf7 .lp-newsletter-row{
  display:contents !important;
}

.footer-newsletter-cf7 .lp-newsletter-email,
.footer-newsletter-cf7 .lp-newsletter-email .wpcf7-form-control-wrap,
.footer-newsletter-cf7 .wpcf7-form-control-wrap[data-name="newsletter-email"]{
  display:contents !important;
}

.footer-newsletter-cf7 .lp-newsletter-email input[type="email"],
.footer-newsletter-cf7 input[name="newsletter-email"]{
  grid-column:1 / 3 !important;
  grid-row:1 !important;
  width:100% !important;
  min-width:0 !important;
  min-height:48px !important;
  margin:0 !important;
}

.footer-newsletter-cf7 .lp-newsletter-row .wpcf7-submit,
.footer-newsletter-cf7 .lp-newsletter-form .wpcf7-submit{
  grid-column:3 !important;
  grid-row:1 !important;
  width:auto !important;
  min-width:132px !important;
  min-height:48px !important;
  margin:0 !important;
  align-self:center !important;
  justify-self:end !important;
}

.footer-newsletter-cf7 .lp-newsletter-check{
  grid-column:1 !important;
  grid-row:2 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:24px !important;
  min-width:24px !important;
  height:24px !important;
  margin:0 !important;
  padding:0 !important;
}

.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-form-control-wrap,
.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-acceptance,
.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-list-item,
.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-list-item label{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:24px !important;
  min-width:24px !important;
  height:24px !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1 !important;
}

.footer-newsletter-cf7 .lp-newsletter-check .wpcf7-list-item-label{
  display:none !important;
}

.footer-newsletter-cf7 .lp-newsletter-check input[type="checkbox"]{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:block !important;
  width:20px !important;
  min-width:20px !important;
  max-width:20px !important;
  height:20px !important;
  min-height:20px !important;
  max-height:20px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(230,196,125,.75) !important;
  border-radius:7px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.025)) !important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05), 0 8px 20px rgba(0,0,0,.22) !important;
  cursor:pointer !important;
}

.footer-newsletter-cf7 .lp-newsletter-check input[type="checkbox"]:hover,
.footer-newsletter-cf7 .lp-newsletter-check input[type="checkbox"]:focus-visible{
  border-color:#e6c47d !important;
  box-shadow:0 0 0 4px rgba(230,196,125,.14), inset 0 0 0 1px rgba(255,255,255,.08) !important;
  outline:none !important;
}

.footer-newsletter-cf7 .lp-newsletter-check input[type="checkbox"]:checked{
  border-color:#e6c47d !important;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23020a14' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M3.4 8.2l3 3.1 6.2-6.6'/%3E%3C/svg%3E"),
    linear-gradient(135deg, rgba(230,196,125,.95), rgba(31,185,184,.82)) !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  background-size:14px 14px, cover !important;
}

.footer-newsletter-cf7 .lp-newsletter-consent-text{
  grid-column:2 / 4 !important;
  grid-row:2 !important;
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:#e6c47d !important;
  font-size:12px !important;
  line-height:1.45 !important;
  text-align:left !important;
  white-space:normal !important;
  border:0 !important;
  box-shadow:none !important;
}

.footer-newsletter-cf7 .wpcf7-not-valid-tip{
  grid-column:1 / -1 !important;
  grid-row:3 !important;
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:#e6c47d !important;
  border:0 !important;
  box-shadow:none !important;
  font-size:12px !important;
  line-height:1.45 !important;
  text-align:left !important;
}

.footer-newsletter-cf7 .wpcf7 form .wpcf7-response-output:not(:empty){
  width:100% !important;
  margin:8px 0 0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  color:#e6c47d !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:12px !important;
  line-height:1.45 !important;
  text-align:left !important;
}

@media (max-width:980px){
  .footer-newsletter-cf7 .lp-newsletter-form{
    grid-template-columns:24px minmax(0, 1fr) !important;
  }

  .footer-newsletter-cf7 .lp-newsletter-email input[type="email"],
  .footer-newsletter-cf7 input[name="newsletter-email"]{
    grid-column:1 / -1 !important;
  }

  .footer-newsletter-cf7 .lp-newsletter-row .wpcf7-submit,
  .footer-newsletter-cf7 .lp-newsletter-form .wpcf7-submit{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    width:100% !important;
    justify-self:stretch !important;
  }

  .footer-newsletter-cf7 .lp-newsletter-check{
    grid-row:3 !important;
  }

  .footer-newsletter-cf7 .lp-newsletter-consent-text{
    grid-row:3 !important;
    grid-column:2 / -1 !important;
  }

  .footer-newsletter-cf7 .wpcf7-not-valid-tip{
    grid-row:4 !important;
  }
}

/* Patch V-4.15.5 — Hero logo/text alternating loop */
.home .hero-video-logo-stage,
.hero-video-logo-stage{
  position:relative !important;
  width:min(620px, 100%) !important;
  min-height:clamp(340px, 42vw, 520px) !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding-inline-end:0 !important;
  margin-inline-start:auto !important;
  transform:translateX(clamp(12px, 3vw, 54px)) !important;
  overflow:visible !important;
}
.hero-logo-video,
.hero-logo-statement{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  max-width:100% !important;
  height:100% !important;
  margin:0 !important;
  transform:none !important;
}
.hero-logo-video{
  object-fit:contain !important;
  opacity:0 !important;
  mix-blend-mode:screen !important;
  filter:brightness(1.18) saturate(1.1) drop-shadow(0 18px 32px rgba(0,0,0,.25)) !important;
  transition:opacity .55s ease, filter .55s ease !important;
}
.hero-video-logo-stage.is-logo-visible .hero-logo-video{
  opacity:1 !important;
}
.hero-video-logo-stage.is-logo-fading .hero-logo-video{
  opacity:0 !important;
  filter:brightness(1.05) saturate(1) blur(3px) !important;
}
.hero-logo-statement{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:auto !important;
  padding:0 clamp(12px, 2vw, 28px) !important;
  font-family:var(--font-display) !important;
  font-size:clamp(25px, 2.7vw, 48px) !important;
  line-height:1.05 !important;
  font-weight:700 !important;
  letter-spacing:.01em !important;
  color:#fff !important;
  text-align:center !important;
  white-space:normal !important;
  text-shadow:0 14px 34px rgba(0,0,0,.72), 0 0 26px rgba(230,196,125,.22) !important;
  opacity:0 !important;
  pointer-events:none !important;
  transition:opacity .6s ease, transform .75s cubic-bezier(.18,.82,.2,1), filter .75s ease !important;
  filter:blur(9px) !important;
  transform:translateY(18px) scale(.96) !important;
}
.hero-logo-statement span{
  display:block !important;
  opacity:1 !important;
  filter:none !important;
  transform:none !important;
  animation:none !important;
}
.hero-video-logo-stage.is-statement-visible .hero-logo-statement{
  opacity:1 !important;
  filter:blur(0) !important;
  transform:translateY(0) scale(1) !important;
}
.hero-video-logo-stage.is-statement-fading .hero-logo-statement{
  opacity:0 !important;
  filter:blur(7px) !important;
  transform:translateY(-12px) scale(.98) !important;
}
@media (max-width:1100px){
  .home .hero-video-logo-stage,
  .hero-video-logo-stage{
    width:min(520px, 100%) !important;
    min-height:clamp(300px, 46vw, 460px) !important;
    transform:translateX(clamp(0px, 2vw, 24px)) !important;
  }
  .hero-logo-statement{
    font-size:clamp(22px, 3vw, 36px) !important;
  }
}
@media (max-width:820px){
  .hero-video-logo-stage{display:none !important;}
}


/* Homepage contact form lightweight motion - remove heavy shine sweep */
.contact-pro-form{
  transition:border-color .22s ease, box-shadow .22s ease, transform .22s ease !important;
}
.contact-pro-form::after{
  display:none !important;
  content:none !important;
  animation:none !important;
}
.contact-pro-form:hover{
  border-color:rgba(74,212,209,.38) !important;
  box-shadow:0 26px 68px rgba(0,0,0,.32),0 0 0 1px rgba(74,212,209,.08),inset 0 1px 0 rgba(255,255,255,.055) !important;
  transform:translateY(-2px);
}
@media (prefers-reduced-motion: reduce){
  .contact-pro-form{transition:none !important;}
  .contact-pro-form:hover{transform:none !important;}
}

/* ================================
   Home Products From Partners Slider - Rebuilt Proposal 2
   Full redesign: 40/60 balanced columns, white logo buttons, full-width progress bar.
================================ */
.partner-products-dashboard{
  position:relative;
  display:grid;
  grid-template-columns:minmax(320px,40%) minmax(0,60%);
  grid-template-rows:minmax(430px,auto) 4px;
  gap:22px 22px;
  width:min(100%,1180px);
  margin:0 auto;
  min-height:0;
  overflow:visible;
  align-items:stretch;
}
.partner-products-logo-slider{
  position:relative;
  grid-column:1;
  grid-row:1;
  display:flex;
  flex-direction:column;
  min-width:0;
  min-height:430px;
}
.partner-products-logo-viewport{
  position:relative;
  flex:1 1 auto;
  height:100%;
  min-height:430px;
  overflow:hidden;
  padding:18px;
  border:1px solid rgba(207,169,106,.28);
  border-radius:22px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.012)),
    rgba(4,17,31,.72);
  box-shadow:0 28px 80px rgba(0,0,0,.28);
  backdrop-filter:blur(14px);
}
.partner-products-logo-track{
  display:flex;
  flex-direction:column;
  gap:16px;
  height:auto;
  transition:transform .62s cubic-bezier(.2,.8,.2,1);
  will-change:transform;
}
.partner-product-logo-button{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 120px;
  width:100%;
  min-height:120px;
  padding:18px 28px;
  border:1px solid rgba(207,169,106,.22);
  border-radius:17px;
  background:#fff !important;
  cursor:pointer;
  overflow:hidden;
  box-shadow:0 18px 42px rgba(0,0,0,.23);
  transition:transform .35s cubic-bezier(.2,.8,.2,1), border-color .35s ease, box-shadow .35s ease, filter .35s ease;
}
.partner-product-logo-button::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  border:1px solid transparent;
  pointer-events:none;
  opacity:0;
  transition:opacity .35s ease, border-color .35s ease;
}
.partner-product-logo-button img{
  position:relative;
  z-index:1;
  display:block;
  width:auto;
  height:auto;
  max-width:88%;
  max-height:82px;
  object-fit:contain;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  filter:none;
  opacity:1;
}
.partner-product-logo-button:hover,
.partner-product-logo-button.is-active{
  transform:translateX(8px);
  border-color:rgba(240,200,120,.78);
  box-shadow:0 24px 60px rgba(0,0,0,.32), 0 0 0 1px rgba(240,200,120,.32);
}
.partner-product-logo-button:hover::before,
.partner-product-logo-button.is-active::before{
  opacity:1;
  border-color:rgba(240,200,120,.72);
}
.partner-products-detail-panel{
  position:relative;
  grid-column:2;
  grid-row:1;
  min-width:0;
  min-height:430px;
  border:1px solid rgba(207,169,106,.28);
  border-radius:22px;
  background:
    radial-gradient(circle at 84% 5%, rgba(240,200,120,.12), transparent 36%),
    linear-gradient(135deg,rgba(255,255,255,.055),rgba(255,255,255,.016)),
    rgba(4,17,31,.72);
  box-shadow:0 28px 86px rgba(0,0,0,.3);
  overflow:hidden;
}
.partner-products-detail-panel::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,transparent,rgba(25,187,181,.045));
  pointer-events:none;
}
.partner-product-detail{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:22px;
  padding:34px 40px 32px;
  opacity:0;
  pointer-events:none;
  transform:translateX(34px) scale(.985);
  filter:blur(10px);
  transition:opacity .55s ease, transform .55s cubic-bezier(.2,.8,.2,1), filter .55s ease;
}
.partner-product-detail.is-active{
  position:relative;
  opacity:1;
  pointer-events:auto;
  transform:translateX(0) scale(1);
  filter:blur(0);
}
.partner-product-detail-copy .product-category-label{
  display:block;
  margin:0 0 10px;
}
.partner-product-detail-copy h3{
  margin:0 0 10px;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:clamp(34px,2.65vw,46px);
  line-height:1.04;
  letter-spacing:-.035em;
}
.partner-product-detail-copy p{
  margin:0;
  max-width:760px;
  color:#d3dce6;
  font-size:16px;
  line-height:1.58;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.partner-product-gallery-wrap h4{
  margin:0 0 14px;
  color:var(--gold-2);
  font-family:var(--font-display);
  font-size:26px;
  line-height:1.1;
}
.partner-product-gallery{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.partner-product-gallery figure{
  position:relative;
  overflow:hidden;
  aspect-ratio:1.22 / .84;
  margin:0;
  border:1px solid rgba(207,169,106,.23);
  border-radius:15px;
  background:rgba(2,11,22,.56);
  box-shadow:0 16px 42px rgba(0,0,0,.2);
}
.partner-product-gallery figure::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(180deg,transparent 18%,rgba(2,10,20,.16) 58%,rgba(2,10,20,.52) 100%);
}
.partner-product-gallery img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1.03);
  filter:saturate(1.08) contrast(1.05) brightness(.92);
  transition:transform .9s cubic-bezier(.2,.8,.2,1), filter .9s ease;
}
.partner-product-gallery figure:hover img{
  transform:scale(1.12);
  filter:saturate(1.14) contrast(1.08) brightness(1);
}
.partner-products-mobile-actions{
  display:none;
  gap:10px;
  justify-content:center;
}

.partner-products-logo-head{
  display:none;
  align-items:center;
  justify-content:flex-start;
  min-height:18px;
  margin:0 0 12px;
}
.partner-products-logo-head span{
  color:var(--hospital-cyan);
  font-size:12px;
  font-weight:900;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.partner-product-arrow .partner-arrow-mobile{
  display:none;
}
.partner-product-arrow .partner-arrow-desktop{
  display:inline;
}
.partner-product-arrow{
  width:44px;
  height:44px;
  border-radius:50%;
  border:1px solid rgba(240,200,120,.5);
  background:rgba(2,11,22,.42);
  color:var(--gold-2);
  font-size:28px;
  line-height:1;
  cursor:pointer;
  transition:.3s ease;
}
.partner-product-arrow:hover{
  transform:translateY(-3px);
  background:rgba(207,169,106,.16);
  box-shadow:0 18px 40px rgba(0,0,0,.24);
}

@media (min-width:821px){
  .partner-products-logo-head{
    display:flex;
  }
  .partner-products-logo-slider .partner-products-controls{
    display:flex;
    position:absolute;
    right:-34px;
    top:50%;
    transform:translateY(-50%);
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:12px;
    margin:0;
    padding:0;
    z-index:9;
    pointer-events:none;
  }
  .partner-products-logo-slider .partner-products-controls .partner-product-arrow{
    pointer-events:auto;
    width:44px;
    height:44px;
    border-color:rgba(240,200,120,.58);
    background:rgba(4,17,31,.82);
    backdrop-filter:blur(12px);
    box-shadow:0 18px 46px rgba(0,0,0,.32), 0 0 0 1px rgba(25,187,181,.08);
    font-size:22px;
  }
  .partner-products-logo-slider .partner-products-controls .partner-product-arrow:hover{
    transform:scale(1.05);
    background:rgba(207,169,106,.2);
  }
}

.home-partner-progress{
  grid-column:1 / -1;
  grid-row:2;
  width:100%;
  height:4px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
  align-self:end;
}
.home-partner-progress span{
  display:block;
  width:100%;
  height:100%;
  transform-origin:left center;
  transform:scaleX(0);
  background:linear-gradient(90deg,var(--gold),var(--gold-2),var(--hospital-cyan));
}
.home-partner-progress span.is-running{
  animation:homePartnerProgressRun 5.2s linear both;
}
.partner-products-dashboard:hover .home-partner-progress span.is-running,
.partner-products-dashboard:focus-within .home-partner-progress span.is-running{
  animation-play-state:paused;
}
@keyframes homePartnerProgressRun{
  from{transform:scaleX(0)}
  to{transform:scaleX(1)}
}

@media (max-width:1180px){
  .partner-products-dashboard{
    grid-template-columns:minmax(290px,38%) minmax(0,62%);
    gap:18px;
  }
  .partner-product-logo-button{
    flex-basis:112px;
    min-height:112px;
  }
  .partner-products-logo-viewport,
  .partner-products-logo-slider,
  .partner-products-detail-panel{
    min-height:410px;
  }
  .partner-product-gallery{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (max-width:900px){
  .partner-products-dashboard{
    grid-template-columns:1fr;
    grid-template-rows:auto auto 4px;
    gap:16px;
    width:100%;
  }
  .partner-products-logo-slider{
    grid-column:1;
    grid-row:1;
    min-height:0;
  }
  .partner-products-detail-panel{
    grid-column:1;
    grid-row:2;
    min-height:0;
  }
  .home-partner-progress{
    grid-column:1;
    grid-row:3;
  }
  .partner-products-logo-viewport{
    min-height:0;
    height:auto;
    padding:14px;
  }
  .partner-products-logo-track{
    flex-direction:row;
    gap:12px;
  }
  .partner-product-logo-button{
    flex:0 0 200px;
    min-height:94px;
    padding:16px 20px;
  }
  .partner-product-logo-button:hover,
  .partner-product-logo-button.is-active{
    transform:translateY(-4px);
  }
  .partner-product-logo-button img{
    max-height:66px;
  }
  .partner-products-mobile-actions{
    display:flex;
    margin-top:12px;
  }
  .partner-product-detail{
    padding:28px 22px;
  }
  .partner-product-gallery{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:560px){
  .partner-product-logo-button{
    flex-basis:calc(100vw - 72px);
  }
  .partner-product-gallery{
    grid-template-columns:1fr;
  }
  .partner-product-gallery figure{
    aspect-ratio:1.45 / 1;
  }
}



/* =================================
   Partner products slider: show exactly 3 logos on desktop
   Corrective override after proposal 2 rebuild
================================ */
@media (min-width:901px){
  .partner-products-dashboard{
    grid-template-rows:428px 4px !important;
  }
  .partner-products-logo-slider,
  .partner-products-detail-panel{
    min-height:428px !important;
    height:428px !important;
  }
  .partner-products-logo-viewport{
    height:428px !important;
    min-height:428px !important;
    max-height:428px !important;
    overflow:hidden !important;
    padding:18px !important;
    box-sizing:border-box !important;
  }
  .partner-products-logo-track{
    gap:16px !important;
  }
  .partner-product-logo-button{
    flex:0 0 120px !important;
    height:120px !important;
    min-height:120px !important;
    max-height:120px !important;
    padding:0 28px !important;
    box-sizing:border-box !important;
  }
}

@media (min-width:901px) and (max-width:1180px){
  .partner-products-dashboard{
    grid-template-rows:404px 4px !important;
  }
  .partner-products-logo-slider,
  .partner-products-detail-panel{
    min-height:404px !important;
    height:404px !important;
  }
  .partner-products-logo-viewport{
    height:404px !important;
    min-height:404px !important;
    max-height:404px !important;
  }
  .partner-product-logo-button{
    flex-basis:112px !important;
    height:112px !important;
    min-height:112px !important;
    max-height:112px !important;
  }
}


/* Partners section rebuilt for the new lightweight Partners post type. */
.home-partners-simple-section .home-partners-simple-shell{
  max-width:1280px;
}
.home-partners-simple-slider{
  --simple-gap:16px;
  position:relative;
  margin-top:34px;
  padding:0 54px 34px;
  overflow:visible;
}
.home-partners-simple-viewport{
  overflow:hidden;
  width:100%;
  padding:14px 2px 18px;
  margin:-14px -2px -18px;
}
.home-partners-simple-track{
  display:flex;
  gap:var(--simple-gap);
  will-change:transform;
  transform:translate3d(0,0,0);
  transition:transform .55s cubic-bezier(.2,.75,.22,1);
}
.home-partner-simple-card{
  flex:0 0 calc((100% - (var(--simple-gap) * 4)) / 5);
  min-height:206px;
  padding:16px;
  border:1px solid rgba(207,169,106,.28);
  border-radius:22px;
  background:linear-gradient(145deg,rgba(23,38,50,.92),rgba(6,18,29,.96));
  box-shadow:0 18px 55px rgba(0,0,0,.18);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
  transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
}
.home-partner-simple-card:hover{
  transform:translateY(-4px);
  border-color:rgba(207,169,106,.62);
  box-shadow:0 22px 64px rgba(0,0,0,.26);
}
.home-partner-simple-image{
  min-height:112px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(207,169,106,.22);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  overflow:hidden;
}
.home-partner-simple-image img{
  display:block;
  width:100%;
  height:86px;
  object-fit:contain;
}
.home-partner-simple-card h3{
  margin:0;
  color:var(--gold);
  font-family:var(--display-font);
  font-size:clamp(20px,1.55vw,27px);
  line-height:1.08;
  text-align:center;
}
.home-partners-simple-nav{
  position:absolute;
  top:96px;
  z-index:5;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid rgba(207,169,106,.65);
  background:rgba(7,18,29,.82);
  color:var(--gold);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:30px;
  line-height:1;
  cursor:pointer;
  transition:background .22s ease,transform .22s ease,border-color .22s ease;
}
.home-partners-simple-nav:hover{
  background:rgba(207,169,106,.16);
  transform:translateY(-2px);
  border-color:rgba(207,169,106,.95);
}
.home-partners-simple-nav-prev{left:0;}
.home-partners-simple-nav-next{right:0;}
.home-partners-simple-nav.is-hidden{display:none;}
.home-partners-simple-progress{
  position:absolute;
  left:54px;
  right:54px;
  bottom:0;
  height:4px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.09);
}
.home-partners-simple-progress span{
  display:block;
  width:0;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--gold),var(--turquoise));
  transform-origin:left center;
}
.home-partners-simple-progress span.is-running{
  animation:homeSimplePartnerProgress linear forwards;
}
.home-partners-simple-slider:hover .home-partners-simple-progress span.is-running,
.home-partners-simple-slider:focus-within .home-partners-simple-progress span.is-running{
  animation-play-state:paused;
}
@keyframes homeSimplePartnerProgress{
  from{width:0;}
  to{width:100%;}
}
@media (max-width:1180px){
  .home-partners-simple-section .home-partners-simple-shell{max-width:1120px;}
  .home-partners-simple-slider{padding-inline:48px;}
  .home-partner-simple-card{flex-basis:calc((100% - (var(--simple-gap) * 3)) / 4);}
  .home-partners-simple-progress{left:48px;right:48px;}
}
@media (max-width:1024px){
  .home-partners-simple-slider{padding-inline:42px;}
  .home-partner-simple-card{flex-basis:calc((100% - (var(--simple-gap) * 2)) / 3);}
  .home-partners-simple-progress{left:42px;right:42px;}
}
@media (max-width:760px){
  .home-partners-simple-slider{--simple-gap:14px;padding:0 38px 28px;margin-top:26px;}
  .home-partner-simple-card{flex-basis:calc((100% - var(--simple-gap)) / 2);min-height:182px;padding:14px;border-radius:18px;}
  .home-partner-simple-image{min-height:102px;padding:14px;}
  .home-partner-simple-image img{height:76px;}
  .home-partners-simple-nav{top:88px;width:34px;height:34px;font-size:24px;}
  .home-partners-simple-progress{left:38px;right:38px;height:3px;}
}
@media (max-width:520px){
  .home-partners-simple-slider{padding-inline:34px;}
  .home-partner-simple-card{flex-basis:100%;}
  .home-partners-simple-progress{left:34px;right:34px;}
}

/* Partners Simple Slider polish - progress synced with Products slider, no controls, fixed title alignment */
.home-partners-simple-slider{
  padding:0 0 36px !important;
  overflow:visible !important;
}
.home-partners-simple-viewport{
  overflow:hidden !important;
  padding:18px 10px 22px !important;
  margin:-18px -10px -22px !important;
}
.home-partners-simple-nav{
  display:none !important;
}
.home-partner-simple-card{
  min-height:218px !important;
  justify-content:flex-start !important;
  gap:0 !important;
  overflow:visible !important;
}
.home-partner-simple-card:hover{
  transform:translateY(-3px) !important;
}
.home-partner-simple-image{
  flex:0 0 116px !important;
  height:116px !important;
  min-height:116px !important;
  width:100% !important;
}
.home-partner-simple-image img{
  height:84px !important;
  max-height:84px !important;
}
.home-partner-simple-card h3{
  width:100% !important;
  min-height:64px !important;
  margin:18px 0 0 !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  text-align:center !important;
  font-family:var(--font-display) !important;
  font-weight:500 !important;
  font-size:clamp(22px,1.55vw,30px) !important;
  line-height:1.05 !important;
  letter-spacing:-.025em !important;
}
.home-partners-simple-progress{
  left:0 !important;
  right:0 !important;
  bottom:0 !important;
  height:3px !important;
  background:rgba(255,255,255,.09) !important;
  overflow:hidden !important;
}
.home-partners-simple-progress span{
  width:100% !important;
  height:100% !important;
  display:block !important;
  border-radius:inherit !important;
  background:linear-gradient(90deg,var(--gold),var(--turquoise)) !important;
  transform:scaleX(0) !important;
  transform-origin:left center !important;
  transition:none !important;
}
.home-partners-simple-progress span.is-running,
.home-partners-simple-progress span.is-auto{
  animation:homeSimplePartnerAutoProgress var(--simple-progress-duration,5200ms) linear forwards !important;
}
.home-partners-simple-slider:hover .home-partners-simple-progress span.is-running,
.home-partners-simple-slider:focus-within .home-partners-simple-progress span.is-running,
.home-partners-simple-slider:hover .home-partners-simple-progress span.is-auto,
.home-partners-simple-slider:focus-within .home-partners-simple-progress span.is-auto{
  animation-play-state:paused !important;
}
@keyframes homeSimplePartnerAutoProgress{
  from{transform:scaleX(0)}
  to{transform:scaleX(1)}
}
@media (max-width:1180px){
  .home-partners-simple-slider{padding-inline:0 !important;}
  .home-partners-simple-progress{left:0 !important;right:0 !important;}
}
@media (max-width:760px){
  .home-partners-simple-slider{padding:0 0 30px !important;}
  .home-partner-simple-card{min-height:190px !important;}
  .home-partner-simple-card h3{min-height:56px !important;font-size:clamp(20px,7vw,28px) !important;}
  .home-partners-simple-progress{height:3px !important;left:0 !important;right:0 !important;}
}


/* Final Partners slider: autoplay only, no visible progress bar or controls. */
.home-partners-simple-nav,
.home-partners-simple-progress{
  display:none !important;
}
.home-partners-simple-slider{
  padding-bottom:18px !important;
}
.home-partners-simple-viewport{
  padding-bottom:24px !important;
  margin-bottom:-24px !important;
}
.home-partner-simple-card h3{
  font-family:var(--font-display) !important;
  min-height:64px !important;
  align-items:flex-start !important;
}


/* Partners slider controls restored - option 2 on desktop and mobile */
.home-partners-simple-slider{
  padding-bottom:0 !important;
}
.home-partners-simple-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  margin-top:20px;
}
.home-partners-simple-slider .home-partners-simple-nav{
  position:static !important;
  inset:auto !important;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:999px;
  border:1px solid rgba(207,169,106,.72);
  background:rgba(7,18,29,.88);
  color:var(--gold);
  cursor:pointer;
  flex:0 0 auto;
  z-index:2;
  font-size:24px;
  line-height:1;
  transform:none !important;
}
.home-partners-simple-slider .home-partners-simple-nav:hover,
.home-partners-simple-slider .home-partners-simple-nav:focus-visible{
  background:rgba(207,169,106,.14);
  border-color:rgba(207,169,106,.96);
}
.home-partners-simple-slider .home-partners-simple-nav:disabled{
  opacity:.45;
  cursor:default;
}
.home-partners-simple-slider .home-partners-simple-progress{
  position:static !important;
  left:auto !important;
  right:auto !important;
  bottom:auto !important;
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:104px;
  height:auto !important;
  background:none !important;
  overflow:visible !important;
}
.home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot{
  width:10px;
  height:10px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.20);
  cursor:pointer;
  transition:transform .2s ease, background .2s ease, opacity .2s ease;
}
.home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot:hover,
.home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot:focus-visible{
  transform:scale(1.1);
  background:rgba(207,169,106,.72);
}
.home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot.is-active{
  background:var(--turquoise);
}
@media (max-width:820px){
  .home-partners-simple-controls{
    gap:14px;
    margin-top:16px;
  }
  .home-partners-simple-slider .home-partners-simple-nav{
    width:38px;
    height:38px;
    font-size:22px;
  }
  .home-partners-simple-slider .home-partners-simple-progress{
    gap:8px;
    min-width:88px;
  }
  .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot{
    width:8px;
    height:8px;
  }
}


/* Partners pagination final fix: active dot color only, no size/shape change */
.home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot{
  width:9px !important;
  height:9px !important;
  background:rgba(255,255,255,.24) !important;
  box-shadow:none !important;
  opacity:1 !important;
}
.home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot.is-active,
.home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot[aria-current="true"]{
  width:9px !important;
  height:9px !important;
  background:linear-gradient(90deg,var(--gold),var(--turquoise)) !important;
  box-shadow:none !important;
}
@media (max-width:820px){
  .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot,
  .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot.is-active,
  .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot[aria-current="true"]{
    width:8px !important;
    height:8px !important;
  }
}


/* FINAL OVERRIDE: Partners active pagination dot must be a clear color only */
body.home #partners .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot,
body.home #partners .home-partners-simple-slider .home-partners-simple-progress button.home-partners-simple-dot{
  width:9px !important;
  height:9px !important;
  min-width:9px !important;
  max-width:9px !important;
  min-height:9px !important;
  max-height:9px !important;
  border-radius:50% !important;
  background:#46515b !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  opacity:1 !important;
}
body.home #partners .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot.is-active,
body.home #partners .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot[aria-current="true"],
body.home #partners .home-partners-simple-slider .home-partners-simple-progress button.home-partners-simple-dot.is-active,
body.home #partners .home-partners-simple-slider .home-partners-simple-progress button.home-partners-simple-dot[aria-current="true"]{
  width:9px !important;
  height:9px !important;
  min-width:9px !important;
  max-width:9px !important;
  min-height:9px !important;
  max-height:9px !important;
  border-radius:50% !important;
  background:#2be2da !important;
  background-image:none !important;
  border:0 !important;
  box-shadow:none !important;
  opacity:1 !important;
}
@media (max-width:820px){
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot,
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot.is-active,
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress .home-partners-simple-dot[aria-current="true"],
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress button.home-partners-simple-dot,
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress button.home-partners-simple-dot.is-active,
  body.home #partners .home-partners-simple-slider .home-partners-simple-progress button.home-partners-simple-dot[aria-current="true"]{
    width:8px !important;
    height:8px !important;
    min-width:8px !important;
    max-width:8px !important;
    min-height:8px !important;
    max-height:8px !important;
  }
}

/* Disable vertical section scroll snap on the homepage to remove keyboard-scroll jumping/stutter. */
html{
  scroll-snap-type:none !important;
}
.snap-section,
.hero.snap-section{
  scroll-snap-align:none !important;
  scroll-snap-stop:normal !important;
}


/* iOS-only homepage safety: no vertical snap, no WebM hero logo, lighter scroll rendering. */
@media (max-width:820px){
  html.is-ios{
    scroll-snap-type:none !important;
    scroll-behavior:auto !important;
  }
  html.is-ios .snap-section,
  html.is-ios .hero.snap-section,
  body.is-ios .snap-section,
  body.is-ios .hero.snap-section{
    scroll-snap-align:none !important;
    scroll-snap-stop:normal !important;
  }
  html.is-ios .hero-video-logo-stage,
  body.is-ios .hero-video-logo-stage{
    display:none !important;
  }
  html.is-ios .section-motion-item,
  html.is-ios .reveal,
  body.is-ios .section-motion-item,
  body.is-ios .reveal{
    transition:none !important;
    animation:none !important;
  }
}
