
/* v31 final tuning fixes */
html{scroll-behavior:smooth;scroll-padding-top:96px}
.nav-links a{cursor:pointer}
.industry-num{display:none!important}

/* Make product cards visually consistent and larger */
.pgrid{gap:22px!important;background:transparent!important}
.pc{border:1px solid var(--border)!important;background:#fff!important;box-shadow:0 14px 34px rgba(26,32,37,.055)!important;overflow:hidden!important}
.pc:hover{background:#fff!important;box-shadow:0 20px 48px rgba(26,32,37,.10)!important}
.pc-img,.prod-card-img{
  height:310px!important;
  min-height:310px!important;
  padding:22px!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.pc-img img,.prod-card-img img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  display:block!important;
  background:#fff!important;
  filter:grayscale(100%) contrast(1.03)!important;
  mix-blend-mode:normal!important;
  transform:scale(1)!important;
  transition:transform .45s ease, filter .45s ease!important;
}
.pc:hover .pc-img img,.prod-card:hover .prod-card-img img{transform:scale(1.12)!important;filter:grayscale(100%) contrast(1.08) brightness(1.02)!important}
@media(max-width:900px){.pc-img,.prod-card-img{height:270px!important;min-height:270px!important}}
@media(max-width:600px){.pc-img,.prod-card-img{height:245px!important;min-height:245px!important}}

/* Product detail page image consistency */
.prod-img-box{
  height:520px!important;
  min-height:520px!important;
  background:#fff!important;
  padding:42px 70px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
.prod-img-box img{
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  background:#fff!important;
  filter:none!important;
}
@media(max-width:900px){.prod-img-box{height:430px!important;min-height:430px!important;padding:34px 48px!important}}

/* Clearer feature boxes on solution and product pages */
.feat-grid,.features-grid,.key-features-grid,.spec-grid{gap:1.25rem!important}
.feat-item,.feature-box,.key-feature,.spec-card{
  background:#fff!important;
  border:1px solid var(--border)!important;
  box-shadow:0 12px 30px rgba(26,32,37,.055)!important;
  padding:1.15rem 1.2rem!important;
  min-height:96px!important;
}
.feat-item:hover,.feature-box:hover,.key-feature:hover,.spec-card:hover{box-shadow:0 18px 42px rgba(26,32,37,.10)!important;transform:translateY(-1px)}
.feat-item strong,.feature-box strong,.key-feature strong,.spec-card strong{font-weight:650!important;color:var(--ink)!important}
.feat-dot{width:7px!important;height:7px!important;margin-top:9px!important}

/* Gallery and installation cards */
.gallery-grid,.install-gallery,.installation-grid,.built-gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important}
.gallery-item,.install-card,.installation-card,.built-card,.gi{
  border:1px solid var(--border)!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(26,32,37,.065)!important;
  overflow:hidden!important;
}
.gallery-item img,.install-card img,.installation-card img,.built-card img,.gi img{
  width:100%!important;
  height:310px!important;
  object-fit:cover!important;
  display:block!important;
  transition:transform .45s ease!important;
}
.gallery-item:hover img,.install-card:hover img,.installation-card:hover img,.built-card:hover img,.gi:hover img{transform:scale(1.055)!important}
@media(max-width:760px){.gallery-grid,.install-gallery,.installation-grid,.built-gallery{grid-template-columns:1fr!important}.gallery-item img,.install-card img,.installation-card img,.built-card img,.gi img{height:260px!important}}

/* Solution next/previous navigation */
.solution-next-nav{max-width:1280px;margin:0 auto 64px;padding:0 3rem;display:flex;justify-content:space-between;gap:1rem}
.solution-next-nav a{flex:1;text-decoration:none;border:1px solid var(--border);background:#fff;padding:1.1rem 1.25rem;color:var(--slate);box-shadow:0 12px 28px rgba(26,32,37,.055);transition:all .2s ease;font-size:13px;letter-spacing:.4px;text-transform:uppercase;font-weight:600}
.solution-next-nav a:hover{background:var(--slate);color:#fff;transform:translateY(-1px)}
.solution-next-nav .next{text-align:right}
@media(max-width:700px){.solution-next-nav{padding:0 2rem;flex-direction:column}.solution-next-nav .next{text-align:left}}

/* Contact modal fallback */
.contact-modal{position:fixed;inset:0;background:rgba(26,32,37,.62);z-index:2000;display:none;align-items:center;justify-content:center;padding:24px}
.contact-modal.open{display:flex!important}
.contact-modal-card{width:min(720px,100%);max-height:92vh;overflow:auto;background:#fff;border:1px solid var(--border);box-shadow:0 30px 90px rgba(0,0,0,.25);padding:2rem;position:relative}
.contact-close{position:absolute;top:14px;right:14px;border:0;background:transparent;font-size:28px;cursor:pointer;color:var(--slate)}
.contact-modal-form{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.25rem}
.contact-modal-form label{font-size:12px;text-transform:uppercase;letter-spacing:.8px;color:var(--slate);font-weight:600}
.contact-modal-form input,.contact-modal-form textarea,.contact-modal-form select{width:100%;border:1px solid var(--border);padding:.85rem;margin-top:.35rem;font:inherit;background:#fff;color:var(--ink)}
.contact-modal-form .full{grid-column:1 / -1}
.contact-modal-form button{grid-column:1 / -1;background:var(--slate);color:#fff;border:0;padding:1rem 1.2rem;text-transform:uppercase;letter-spacing:.8px;font-weight:650;cursor:pointer}
@media(max-width:640px){.contact-modal-form{grid-template-columns:1fr}}

/* v33 mandatory corrections: obvious product hover, hide industry numbers, and solution arrows */
.case-num,.industry-num{display:none!important;visibility:hidden!important;width:0!important;height:0!important;overflow:hidden!important;margin:0!important;padding:0!important}
.pgrid{gap:26px!important;background:transparent!important;align-items:stretch!important}
.pc{position:relative!important;overflow:visible!important;background:#fff!important;border:1px solid var(--border,#dde4e0)!important;box-shadow:0 14px 34px rgba(26,32,37,.055)!important;transition:box-shadow .28s ease,transform .28s ease!important}
.pc:hover,.pc:focus-within{z-index:20!important;box-shadow:0 28px 70px rgba(26,32,37,.16)!important;transform:translateY(-3px)!important}
.pc-img,.prod-card-img{height:340px!important;min-height:340px!important;padding:24px!important;background:#fff!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;border-bottom:1px solid var(--border,#dde4e0)!important;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease!important;transform-origin:center center!important}
.pc-img img,.prod-card-img img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center center!important;display:block!important;background:#fff!important;filter:grayscale(100%) contrast(1.04)!important;mix-blend-mode:normal!important;transform:scale(1)!important;transition:transform .45s ease,filter .45s ease!important;will-change:transform!important}
.pc:hover .pc-img,.pc:focus-within .pc-img,.prod-card:hover .prod-card-img,.prod-card:focus-within .prod-card-img{transform:scale(1.035)!important;box-shadow:0 22px 60px rgba(26,32,37,.14)!important;border-color:#c9d3ce!important}
.pc:hover .pc-img img,.pc:focus-within .pc-img img,.prod-card:hover .prod-card-img img,.prod-card:focus-within .prod-card-img img{transform:scale(1.22)!important;filter:grayscale(100%) contrast(1.08) brightness(1.03)!important}
@media(max-width:900px){.pc-img,.prod-card-img{height:290px!important;min-height:290px!important}}
@media(max-width:600px){.pc-img,.prod-card-img{height:255px!important;min-height:255px!important}.pc:hover .pc-img img,.pc:focus-within .pc-img img{transform:scale(1.12)!important}}
.solution-side-nav{position:fixed;top:50%;transform:translateY(-50%);z-index:1200;width:54px;height:78px;border:1px solid rgba(92,105,112,.28);background:rgba(255,255,255,.94);backdrop-filter:blur(6px);display:flex!important;align-items:center;justify-content:center;text-decoration:none!important;color:var(--slate,#5c6970)!important;font-size:42px!important;line-height:1!important;font-family:Arial,sans-serif!important;box-shadow:0 18px 44px rgba(26,32,37,.12);transition:all .22s ease!important}
.solution-side-nav:hover{background:var(--slate,#5c6970)!important;color:#fff!important;border-color:var(--slate,#5c6970)!important;transform:translateY(-50%) scale(1.04)!important}
.solution-side-prev{left:18px!important}.solution-side-next{right:18px!important}
.solution-side-nav span{position:absolute;white-space:nowrap;font-size:11px!important;letter-spacing:1.8px;text-transform:uppercase;font-weight:700;top:86px;color:inherit;opacity:.82;background:rgba(255,255,255,.88);padding:3px 7px;border:1px solid rgba(92,105,112,.18)}
.solution-side-next span{right:0}.solution-side-prev span{left:0}
.solution-next-nav{display:flex!important;max-width:1280px!important;margin:0 auto 64px!important;padding:0 3rem!important;gap:1rem!important;justify-content:space-between!important}
.solution-next-nav a{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:.75rem!important;min-height:72px!important;border:1px solid var(--border,#dde4e0)!important;background:#fff!important;text-decoration:none!important;color:var(--slate,#5c6970)!important;box-shadow:0 12px 28px rgba(26,32,37,.055)!important;transition:all .22s ease!important;padding:1rem 1.2rem!important}
.solution-next-nav a:hover{background:var(--slate,#5c6970)!important;color:#fff!important;transform:translateY(-2px)!important}.solution-next-nav .next{text-align:right!important}
@media(max-width:900px){.solution-side-nav{width:44px;height:62px;font-size:32px!important}.solution-side-prev{left:8px!important}.solution-side-next{right:8px!important}.solution-side-nav span{display:none!important}}
@media(max-width:700px){.solution-next-nav{padding:0 1.5rem!important;flex-direction:column!important}.solution-next-nav .next{text-align:left!important}}


/* v35 final design tuning */
/* Landing page video */
.hero-media.hero-video-frame{
  height:min(520px,58vh)!important;
  min-height:380px!important;
  background:#0f1418!important;
  border:1px solid var(--border,#dde4e0)!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  box-shadow:0 24px 70px rgba(26,32,37,.12)!important;
}
.hero-video{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  display:block!important;
  background:#0f1418!important;
}

/* Solution hero layout: overview text in hero and buttons under photo */
.sol-hero .sol-hero-desc.solution-overview-inline,
.sol-hero .sol-hero-desc{
  font-size:15.5px!important;
  line-height:1.85!important;
  color:var(--muted,#5a6a72)!important;
  max-width:560px!important;
  margin-bottom:0!important;
}
.sol-hero .hero-photo{
  aspect-ratio:auto!important;
  overflow:visible!important;
  border:0!important;
  background:transparent!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
}
.sol-hero .hero-photo > img{
  width:100%!important;
  height:auto!important;
  aspect-ratio:4/3!important;
  object-fit:contain!important;
  object-position:center!important;
  display:block!important;
  border:1px solid var(--border,#dde4e0)!important;
  background:#fff!important;
  box-shadow:0 16px 38px rgba(26,32,37,.07)!important;
}
.hero-photo-actions{
  margin-top:1rem!important;
  display:flex!important;
  gap:.65rem!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
}
.hero-photo-actions .btn-primary,
.hero-photo-actions .btn-secondary{
  padding:10px 18px!important;
  font-size:11px!important;
  letter-spacing:.45px!important;
  min-width:0!important;
}
@media(max-width:900px){
  .hero-photo-actions{justify-content:flex-start!important}
}

/* Key feature boxes: clearer separation */
.feat-grid{
  gap:1.15rem!important;
  background:transparent!important;
}
.feat-item{
  background:#fff!important;
  border:1px solid #d8e0dc!important;
  border-radius:0!important;
  box-shadow:0 12px 28px rgba(26,32,37,.055)!important;
  padding:1.2rem 1.15rem!important;
  min-height:126px!important;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease!important;
}
.feat-item:hover{
  transform:translateY(-2px)!important;
  border-color:#c5d0cb!important;
  box-shadow:0 20px 44px rgba(26,32,37,.10)!important;
}
.feat-dot{display:none!important}
.feat-item strong{font-size:13.5px!important;line-height:1.35!important;margin-bottom:.45rem!important;color:var(--ink,#1a2025)!important}
.feat-item p{font-size:12.6px!important;line-height:1.62!important;margin:0!important;color:var(--muted,#5a6a72)!important}
.product-info-frame .feature-box-grid{gap:1.15rem!important;background:transparent!important}
.product-info-frame .feature-box{
  border:1px solid #d8e0dc!important;
  box-shadow:0 12px 28px rgba(26,32,37,.055)!important;
  min-height:126px!important;
}

/* Gallery and Built for Real Environments: consistent, clear frame */
.gal-grid.install-only,
.gallery-install-grid,
.real-env-gallery,
.install-gallery,
.built-gallery{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:1.25rem!important;
  align-items:stretch!important;
}
.gal-grid.install-only .gi,
.gallery-install-card,
.real-env-card,
.install-card,
.built-card{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:360px!important;
  min-height:360px!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  background:#10161b!important;
  border:1px solid var(--border,#dde4e0)!important;
  box-shadow:0 16px 40px rgba(26,32,37,.08)!important;
  text-decoration:none!important;
  color:inherit!important;
  cursor:pointer!important;
}
.gal-grid.install-only .gi img,
.gallery-install-card img,
.real-env-card img,
.install-card img,
.built-card img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
  transition:transform .45s ease,filter .45s ease!important;
}
.gal-grid.install-only .gi:hover img,
.gallery-install-card:hover img,
.real-env-card:hover img,
.install-card:hover img,
.built-card:hover img{
  transform:scale(1.045)!important;
  filter:contrast(1.04)!important;
}
@media(max-width:900px){
  .gal-grid.install-only,.gallery-install-grid,.real-env-gallery,.install-gallery,.built-gallery{grid-template-columns:1fr!important}
  .gal-grid.install-only .gi,.gallery-install-card,.real-env-card,.install-card,.built-card{height:300px!important;min-height:300px!important}
}
@media(max-width:560px){
  .gal-grid.install-only .gi,.gallery-install-card,.real-env-card,.install-card,.built-card{height:260px!important;min-height:260px!important}
}

/* Friendly contact modal and contact form */
.contact-modal{
  background:rgba(16,22,27,.68)!important;
  backdrop-filter:blur(7px)!important;
  padding:1.25rem!important;
}
.contact-modal-card{
  width:min(920px,100%)!important;
  max-height:92vh!important;
  overflow:auto!important;
  background:#fff!important;
  border:1px solid #dbe3df!important;
  box-shadow:0 30px 90px rgba(0,0,0,.28)!important;
  padding:0!important;
}
.contact-modal-head{
  padding:1.65rem 1.85rem!important;
  margin:0!important;
  background:linear-gradient(135deg,#f4f7f5,#ffffff)!important;
  border-bottom:1px solid #dbe3df!important;
  display:flex!important;
  justify-content:space-between!important;
  gap:1.25rem!important;
}
.contact-modal-head h3{
  font-size:2.05rem!important;
  font-weight:500!important;
  letter-spacing:-.2px!important;
}
.contact-modal-head p{
  max-width:600px!important;
  font-size:14px!important;
  line-height:1.65!important;
}
.contact-close{
  position:static!important;
  width:42px!important;
  height:42px!important;
  border:1px solid #dbe3df!important;
  background:#fff!important;
  color:var(--slate,#5c6970)!important;
  flex:0 0 auto!important;
  font-size:24px!important;
}
.contact-modal-form{
  padding:1.75rem 1.85rem 1.95rem!important;
  display:grid!important;
  gap:1rem!important;
}
.contact-row{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:1rem!important;
}
.contact-modal-form label,
.cform label{
  display:block!important;
  font-size:10.5px!important;
  letter-spacing:1.5px!important;
  text-transform:uppercase!important;
  color:var(--slate,#5c6970)!important;
  font-weight:700!important;
  margin-bottom:.38rem!important;
}
.contact-modal-form input,
.contact-modal-form select,
.contact-modal-form textarea,
.cform input,
.cform select,
.cform textarea{
  width:100%!important;
  border:1px solid #d8e0dc!important;
  background:#fbfcfb!important;
  padding:.9rem 1rem!important;
  font-family:'Outfit',sans-serif!important;
  font-size:14px!important;
  color:var(--ink,#1a2025)!important;
  outline:none!important;
  transition:border-color .2s ease,box-shadow .2s ease,background .2s ease!important;
}
.contact-modal-form textarea,
.cform textarea{min-height:135px!important;resize:vertical!important}
.contact-modal-form input:focus,
.contact-modal-form select:focus,
.contact-modal-form textarea:focus,
.cform input:focus,
.cform select:focus,
.cform textarea:focus{
  border-color:var(--slate,#5c6970)!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(92,105,112,.10)!important;
}
.contact-submit,
.btn-send{
  justify-self:start!important;
  background:var(--slate,#5c6970)!important;
  color:#fff!important;
  border:0!important;
  padding:13px 28px!important;
  font-size:12px!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  letter-spacing:.7px!important;
  cursor:pointer!important;
  box-shadow:0 12px 30px rgba(92,105,112,.22)!important;
}
.contact-submit:hover,
.btn-send:hover{background:var(--slate-d,#3d5060)!important}
.contact-sec .cform{
  background:#fff!important;
  border:1px solid #d8e0dc!important;
  box-shadow:0 18px 46px rgba(26,32,37,.075)!important;
  padding:1.65rem!important;
}
@media(max-width:720px){
  .contact-row,.contact-modal-form{grid-template-columns:1fr!important}
  .contact-modal-head{padding:1.35rem!important}
  .contact-modal-form{padding:1.35rem!important}
}

/* v39 landing hero video centre layout and About read-more */
.hero{
  padding:70px 3rem 90px!important;
}
.hero-in{
  max-width:1320px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2rem!important;
}
.hero-media.hero-video-frame{
  order:1!important;
  width:min(1180px,100%)!important;
  max-width:none!important;
  height:clamp(520px,68vh,760px)!important;
  min-height:520px!important;
  margin:0 auto!important;
  border-radius:0!important;
  background:#0f1418!important;
  box-shadow:0 28px 80px rgba(26,32,37,.16)!important;
}
.hero-video{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
}
.hero-copy{
  order:2!important;
  width:min(980px,100%)!important;
  text-align:center!important;
  align-items:center!important;
  justify-content:center!important;
  display:flex!important;
  flex-direction:column!important;
  margin:0 auto!important;
}
.hero h1{
  margin:0 auto .85rem!important;
  max-width:980px!important;
  text-align:center!important;
}
.hero-tagline{
  max-width:850px!important;
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.hero-note{
  max-width:880px!important;
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.hero-btns{
  justify-content:center!important;
  display:flex!important;
  margin-top:.5rem!important;
}
@media(max-width:900px){
  .hero{padding:48px 1.5rem 70px!important;}
  .hero-media.hero-video-frame{height:clamp(300px,52vh,520px)!important;min-height:300px!important;}
  .hero-copy{width:100%!important;}
}
@media(max-width:560px){
  .hero-media.hero-video-frame{height:300px!important;min-height:300px!important;}
  .hero h1{font-size:2.25rem!important;}
}

.about-sec .tl{
  max-height:0!important;
  opacity:0!important;
  overflow:hidden!important;
  transition:max-height .45s ease,opacity .35s ease,margin-top .35s ease!important;
  margin-top:0!important;
}
.about-sec.about-expanded .tl{
  max-height:1800px!important;
  opacity:1!important;
  margin-top:2rem!important;
}
.about-read-more{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-top:1.5rem!important;
  padding:11px 24px!important;
  border:1px solid rgba(255,255,255,.35)!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff!important;
  font-family:'Outfit',sans-serif!important;
  font-size:12.5px!important;
  font-weight:500!important;
  letter-spacing:.5px!important;
  text-transform:uppercase!important;
  cursor:pointer!important;
  transition:background .2s ease,border-color .2s ease,transform .2s ease!important;
}
.about-read-more:hover{
  background:rgba(255,255,255,.14)!important;
  border-color:rgba(255,255,255,.6)!important;
  transform:translateY(-1px)!important;
}
.about-grid{
  align-items:start!important;
}
@media(max-width:900px){
  .about-sec .tl{grid-column:1!important;}
}


/* v40 annotation fixes */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');

html, body, button, input, select, textarea,
h1, h2, h3, h4, h5, h6,
.nav-links a, .btn-primary, .btn-secondary, .btn-w, .contact-submit {
  font-family: 'Montserrat', sans-serif !important;
}

h1, h2, .sec-title, .sol-hero h1, .hero-title {
  letter-spacing: -0.035em !important;
  font-weight: 600 !important;
}

.sol-card p {
  min-height: 7.5em;
}

.cases-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1px !important;
  background: var(--border, #dde4e0) !important;
  border: 1px solid var(--border, #dde4e0) !important;
}

.case-card {
  background: #fff !important;
  padding: 1.6rem !important;
  min-height: 180px !important;
  border: 0 !important;
}

.case-card h3 {
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  margin-bottom: .7rem !important;
}

.case-card p {
  font-size: 12.5px !important;
  line-height: 1.7 !important;
}

.contact-modal {
  padding: 28px !important;
  background: rgba(26,32,37,.58) !important;
  backdrop-filter: blur(6px) !important;
}

.contact-modal-card {
  width: min(920px, calc(100vw - 36px)) !important;
  max-height: calc(100vh - 56px) !important;
  overflow-y: auto !important;
  border-radius: 18px !important;
  box-shadow: 0 28px 80px rgba(0,0,0,.20) !important;
  border: 1px solid rgba(92,105,112,.16) !important;
  padding: 0 !important;
}

.contact-modal-head {
  padding: 28px 32px 22px !important;
  background: linear-gradient(135deg, #f8faf9 0%, #edf0ee 100%) !important;
  border-bottom: 1px solid #dde4e0 !important;
  align-items: flex-start !important;
}

.contact-modal-head h3 {
  font-size: 30px !important;
  font-weight: 600 !important;
  letter-spacing: -0.03em !important;
  margin: 0 0 6px !important;
}

.contact-modal-head p {
  font-size: 14px !important;
  color: #5c6970 !important;
  max-width: 720px !important;
}

.contact-close {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  background: #fff !important;
  border: 1px solid #dde4e0 !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.06) !important;
  font-size: 24px !important;
  line-height: 1 !important;
}

.contact-modal-form {
  padding: 30px 32px 34px !important;
  display: grid !important;
  grid-template-columns: repeat(12, 1fr) !important;
  gap: 18px !important;
}

.contact-modal-form > div,
.sse-contact-wide {
  grid-column: span 12 !important;
}

.contact-modal-form .sse-contact-grid,
.contact-modal-form .contact-row {
  grid-column: span 12 !important;
  display: grid !important;
  grid-template-columns: repeat(12, 1fr) !important;
  gap: 16px !important;
}

.contact-modal-form .sse-contact-grid > div,
.contact-modal-form .contact-row > div {
  grid-column: span 6 !important;
}

.contact-modal-form .sse-contact-grid.contact-three > div {
  grid-column: span 4 !important;
}

.contact-modal-form label {
  display: block !important;
  font-size: 10.5px !important;
  letter-spacing: .15em !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
  color: #5c6970 !important;
  margin-bottom: 8px !important;
}

.contact-modal-form input,
.contact-modal-form select,
.contact-modal-form textarea {
  width: 100% !important;
  min-height: 52px !important;
  border: 1px solid #d7dfdc !important;
  border-radius: 12px !important;
  background: #fff !important;
  padding: 0 16px !important;
  color: #1a2025 !important;
  font-size: 14px !important;
  outline: none !important;
  transition: border-color .18s ease, box-shadow .18s ease !important;
}

.contact-modal-form textarea {
  min-height: 130px !important;
  padding: 15px 16px !important;
  resize: vertical !important;
}

.contact-modal-form input:focus,
.contact-modal-form select:focus,
.contact-modal-form textarea:focus {
  border-color: #5c6970 !important;
  box-shadow: 0 0 0 4px rgba(92,105,112,.12) !important;
}

.contact-modal-form .email-wide {
  grid-column: span 8 !important;
}

.contact-submit {
  grid-column: span 12 !important;
  min-height: 54px !important;
  border-radius: 12px !important;
  background: #5c6970 !important;
  color: #fff !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  border: 0 !important;
  cursor: pointer !important;
  transition: transform .18s ease, background .18s ease !important;
}

.contact-submit:hover {
  background: #3d5060 !important;
  transform: translateY(-1px) !important;
}

@media(max-width: 820px) {
  .cases-grid { grid-template-columns: 1fr !important; }
  .contact-modal-form,
  .contact-modal-form .sse-contact-grid,
  .contact-modal-form .contact-row {
    grid-template-columns: 1fr !important;
  }
  .contact-modal-form .sse-contact-grid > div,
  .contact-modal-form .contact-row > div,
  .contact-modal-form .sse-contact-grid.contact-three > div,
  .contact-modal-form .email-wide {
    grid-column: span 1 !important;
  }
}



/* v41 fix: normalize Industries We Serve icons across all solution pages */
.cases-grid .case-card > i,
.cases-grid .case-card .case-icon,
.cases-grid .case-card .industry-icon,
.cases-grid .case-card svg,
.cases-grid .case-card [class*="icon"] {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  max-width: 28px !important;
  min-height: 28px !important;
  max-height: 28px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 0 1rem 0 !important;
  padding: 0 !important;
  font-size: 13px !important;
  line-height: 1 !important;
  color: #5c6970 !important;
  background: #f7f9f8 !important;
  border: 1px solid #dde4e0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

.cases-grid .case-card > i::before,
.cases-grid .case-card .case-icon::before,
.cases-grid .case-card .industry-icon::before,
.cases-grid .case-card [class*="icon"]::before {
  font-size: 13px !important;
  color: #5c6970 !important;
  line-height: 1 !important;
}

.cases-grid .case-card svg {
  padding: 6px !important;
  fill: none !important;
  stroke: #5c6970 !important;
  stroke-width: 1.5 !important;
}

.cases-grid .case-card .case-num,
.cases-grid .case-card .industry-num {
  display: none !important;
}

