/* === NULOOP final cleanup polish 2026-07-14 === */

/* Keep shared header stable and make long translations less likely to wrap. */
.nav-links a{white-space:nowrap}
.navbar .nav-cta{white-space:nowrap}

/* Home: calm down oversized blocks without changing composition. */
.home-cycle-v2 .cycle-card-v2{max-width:1220px;margin-inline:auto}
.home-cycle-v2 .cycle-card-head{gap:20px}
.home-cycle-v2 .cycle-stage{box-shadow:inset 0 1px 0 rgba(255,255,255,.68)}
.home-about-card{max-width:1220px;margin-inline:auto}

/* About: carousel should feel like a clean image stage, not a huge white card. */
.facility-carousel{
  max-width:1220px;
  margin-inline:auto;
  padding:0!important;
  overflow:hidden!important;
  border-radius:30px!important;
  background:transparent!important;
}
.facility-viewport{
  border-radius:30px!important;
  overflow:hidden!important;
  background:transparent!important;
}
.facility-slide{
  height:clamp(420px,44vw,560px)!important;
  min-height:0!important;
  background:transparent!important;
}
.facility-slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}
.facility-slide figcaption{
  bottom:28px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  width:auto!important;
  max-width:min(620px,calc(100% - 56px))!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  color:#fff!important;
  background:rgba(5,28,62,.46)!important;
  backdrop-filter:blur(8px)!important;
  text-align:center!important;
}
.carousel-dots{
  bottom:10px!important;
  z-index:8!important;
  padding:7px 10px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.28)!important;
  backdrop-filter:blur(8px)!important;
}
.carousel-dots button{background:rgba(255,255,255,.74)!important}
.carousel-dots button.active{background:#fff!important;width:28px!important}

/* About partners: equal, calmer logo wall. */
.partner-logo-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:18px!important;
}
.partner-logo-card{
  height:132px!important;
  padding:18px 22px!important;
  border-radius:24px!important;
  display:grid!important;
  place-items:center!important;
}
.partner-logo-card img{
  width:auto!important;
  height:auto!important;
  max-width:86%!important;
  max-height:76%!important;
  object-fit:contain!important;
}
.partner-logo-card img[src*="ecosen"]{max-width:74%!important;max-height:70%!important}
.partner-logo-card img[src*="botree"]{max-height:88%!important}
.partner-logo-card img[src*="yandex"],
.partner-logo-card img[src*="kazwaste"],
.partner-logo-card img[src*="qaz"],
.partner-logo-card img[src*="cnd"],
.partner-logo-card img[src*="aghi"],
.partner-logo-card img[src*="promtech"],
.partner-logo-card img[src*="gl"],
.partner-logo-card img[src*="hz"]{max-width:78%!important;max-height:74%!important}

/* Team: keep every portrait visually consistent. */
.team-card img,
.team-photo img{
  object-fit:cover!important;
  object-position:center top!important;
}

/* Technology: final softer scale. */
.tech-bg-hero{max-width:1100px!important;margin-inline:auto!important}
.tech-stats{max-width:880px!important}
.tech-stats .stat-card{min-height:96px!important}

/* Process: 3x2 balanced stage cards with less aggressive sizing. */
.process-step-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
.process-step-card{
  min-height:0!important;
  padding:18px!important;
  border-radius:24px!important;
}
.process-step-card .step-media,
.process-step-card .process-step-image,
.process-step-card .process-img{
  height:clamp(135px,13vw,170px)!important;
  border-radius:18px!important;
  overflow:hidden!important;
}
.process-step-card img,
.process-step img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
}
.process-step-card h3{font-size:clamp(18px,1.35vw,23px)!important}
.process-step-card p{font-size:clamp(13px,1vw,15px)!important}

/* News: magazine cards less giant; vertical photos stay controlled in list. */
.news-list{gap:20px!important}
.news-card{
  min-height:0!important;
  padding:18px!important;
  border-radius:26px!important;
  grid-template-columns:minmax(300px,420px) 1fr!important;
  gap:24px!important;
}
.news-card img{
  width:100%!important;
  height:236px!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:20px!important;
}
.news-card img[src*="forum"]{object-position:center 42%!important}
.news-card h2{font-size:clamp(24px,2.25vw,36px)!important;line-height:1.12!important}
.news-card p{font-size:clamp(14px,1.05vw,16px)!important;line-height:1.55!important}
.news-card time,.news-date{font-size:13px!important}

/* Contact: compact form rhythm and aligned upload actions. */
.contact-clean{padding-top:118px!important}
.request-form-card{max-width:1180px!important;margin-inline:auto!important}
.request-form-card h1,.contact-clean h1{font-size:clamp(34px,4vw,58px)!important}
.file-upload-row,.contact-file-actions,.form-actions{
  align-items:center!important;
  gap:14px!important;
}
.file-upload-display{display:flex!important;align-items:center!important;min-height:46px!important}
.file-name{margin:0!important;align-self:center!important}

/* Footer: one-line bottom text where possible. */
.copyright{align-items:center!important;gap:24px!important}
.copyright span{white-space:nowrap!important}

@media(max-width:980px){
  .partner-logo-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .process-step-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .news-card{grid-template-columns:1fr!important}
  .news-card img{height:260px!important}
  .facility-slide{height:clamp(340px,58vw,470px)!important}
}
@media(max-width:640px){
  .partner-logo-grid,.process-step-grid{grid-template-columns:1fr!important}
  .partner-logo-card{height:118px!important}
  .news-card img{height:230px!important}
  .facility-slide{height:330px!important}
  .copyright span{white-space:normal!important}
}

/* === final specificity corrections 2026-07-14 === */
body[data-page="about"] .facility-carousel{
  max-width:1220px!important;
  margin-inline:auto!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:30px!important;
  background:transparent!important;
}
body[data-page="about"] .facility-viewport{
  border-radius:30px!important;
  overflow:hidden!important;
  background:transparent!important;
}
body[data-page="about"] .facility-slide{
  height:clamp(410px,40vw,520px)!important;
  min-height:0!important;
  background:transparent!important;
  border-radius:30px!important;
}
body[data-page="about"] .facility-slide img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:30px!important;
  background:transparent!important;
}
body[data-page="about"] .facility-slide figcaption{
  bottom:28px!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  width:auto!important;
  max-width:min(620px,calc(100% - 56px))!important;
  padding:10px 18px!important;
  border-radius:999px!important;
  color:#fff!important;
  background:rgba(5,28,62,.46)!important;
  backdrop-filter:blur(8px)!important;
  text-align:center!important;
}
body[data-page="about"] .facility-carousel .carousel-dots{
  position:absolute!important;
  left:50%!important;
  bottom:10px!important;
  transform:translateX(-50%)!important;
  z-index:8!important;
}

/* === NULOOP layout polish 2026-07-15 === */
:root{--nuloop-content-wide:min(100% - 64px,1480px)}

/* Home: make the NULOOP Cycle and company-about cards the same visual width as the rest. */
body .home-cycle-v2 .container,
body .feature-grid.container,
body section:has(.home-about-card).container{
  width:var(--nuloop-content-wide)!important;
}
body .home-cycle-v2 .cycle-card-v2,
body .home-about-card{
  width:100%!important;
  max-width:none!important;
  min-height:clamp(500px,38vw,650px)!important;
  margin-inline:0!important;
}
body .home-cycle-v2 .cycle-card-head h2{font-size:clamp(34px,3.7vw,58px)!important}
body .home-cycle-v2 .cycle-card-head .lead{max-width:620px!important}
body .home-cycle-v2 .cycle-stage{
  min-height:clamp(480px,36vw,620px)!important;
}
body .home-cycle-v2 .cycle-stage-art{
  width:min(760px,54vw)!important;
  max-width:72%!important;
}

/* Technology: first visual card + three stat cards use the same page rhythm. */
body[data-page="tech"] .inner-hero>.container,
body[data-page="tech"] .tech-stats{
  width:var(--nuloop-content-wide)!important;
  max-width:1480px!important;
}
body[data-page="tech"] .tech-bg-hero{
  width:100%!important;
  max-width:none!important;
  min-height:clamp(440px,33vw,610px)!important;
}
body[data-page="tech"] .tech-bg-hero .one-card-content{
  max-width:560px!important;
  padding:clamp(26px,3vw,42px)!important;
}
body[data-page="tech"] .tech-bg-hero h1{
  font-size:clamp(34px,4vw,62px)!important;
}
body[data-page="tech"] .tech-stats{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
body[data-page="tech"] .tech-stats .stat-card{
  min-height:118px!important;
  padding:22px!important;
}
body[data-page="tech"] .tech-stats .stat-card strong{
  font-size:clamp(34px,3.8vw,56px)!important;
}

/* Process: six stage cards in one neat line on desktop, then responsive rows. */
body[data-page="process"] .process-step-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
}
body[data-page="process"] .process-step-card{
  padding:12px!important;
  border-radius:22px!important;
  min-height:0!important;
}
body[data-page="process"] .process-step-card img{
  width:100%!important;
  height:118px!important;
  object-fit:cover!important;
  object-position:center center!important;
  border-radius:16px!important;
  background:transparent!important;
}
body[data-page="process"] .process-step-card span{
  width:40px!important;
  height:40px!important;
  margin:10px 0 7px!important;
  border-radius:13px!important;
  font-size:14px!important;
}
body[data-page="process"] .process-step-card h3{
  font-size:clamp(15px,1.05vw,18px)!important;
  line-height:1.15!important;
  margin:0 0 6px!important;
}
body[data-page="process"] .process-step-card p{
  font-size:12.5px!important;
  line-height:1.38!important;
}

/* Impact: first two sections should feel aligned and not oversized. */
body[data-page="impact"] .inner-hero>.container,
body[data-page="impact"] .impact-metrics{
  width:var(--nuloop-content-wide)!important;
  max-width:1480px!important;
}
body[data-page="impact"] .impact-bg-card{
  width:100%!important;
  max-width:none!important;
  min-height:clamp(430px,32vw,590px)!important;
}
body[data-page="impact"] .impact-bg-card .one-card-content{
  max-width:620px!important;
  padding:clamp(26px,3vw,42px)!important;
}
body[data-page="impact"] .impact-bg-card h1{
  font-size:clamp(34px,4vw,60px)!important;
}
body[data-page="impact"] .impact-metrics{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
}
body[data-page="impact"] .impact-metrics .metric-card{
  min-height:118px!important;
  padding:22px!important;
}
body[data-page="impact"] .impact-metrics .metric-card strong{
  font-size:clamp(34px,3.8vw,56px)!important;
}

/* Contact: request form card same width as top block, fields fit cleanly. */
body[data-page="contact"] .contact-clean-grid,
body[data-page="contact"] .request-form-card{
  width:var(--nuloop-content-wide)!important;
  max-width:1480px!important;
}
body[data-page="contact"] .request-form-card{
  grid-template-columns:minmax(300px,.42fr) minmax(0,1fr)!important;
  gap:clamp(28px,4vw,56px)!important;
  padding:clamp(28px,4vw,54px)!important;
}
body[data-page="contact"] .request-form-copy{
  align-self:center!important;
  max-width:420px!important;
}
body[data-page="contact"] .request-form-copy h2{
  font-size:clamp(32px,3.6vw,54px)!important;
}
body[data-page="contact"] .request-form{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px 18px!important;
  align-content:start!important;
}
body[data-page="contact"] .request-form input,
body[data-page="contact"] .request-form select{
  height:54px!important;
}
body[data-page="contact"] .request-form textarea{
  min-height:116px!important;
}
body[data-page="contact"] .request-form label.file-upload-field.full{
  grid-column:1/2!important;
}
body[data-page="contact"] .request-form .file-upload-control{
  height:54px!important;
  min-height:54px!important;
  display:grid!important;
  grid-template-columns:160px minmax(0,1fr)!important;
  align-items:center!important;
  gap:12px!important;
  padding:6px!important;
}
body[data-page="contact"] .request-form .file-upload-button{
  height:42px!important;
  min-width:0!important;
  padding:0 16px!important;
  border-radius:15px!important;
  font-size:14px!important;
}
body[data-page="contact"] .request-form .file-upload-name{
  display:flex!important;
  align-items:center!important;
  height:42px!important;
  margin:0!important;
  min-width:0!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}
body[data-page="contact"] .request-form button[type=submit]{
  grid-column:2/3!important;
  align-self:end!important;
  justify-self:start!important;
  width:190px!important;
  height:54px!important;
  min-height:54px!important;
  border-radius:16px!important;
  padding:0 20px!important;
}

/* Static news: keep four restored cards compact and sorted by newest date. */
body[data-page="news"] .news-index{
  padding-top:clamp(118px,12vw,172px)!important;
}
body[data-page="news"] .news-card{
  grid-template-columns:minmax(300px,390px) 1fr!important;
}
body[data-page="news"] .news-card img{
  height:224px!important;
}

@media(max-width:1280px){
  body[data-page="process"] .process-step-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  body[data-page="process"] .process-step-card img{height:150px!important}
}
@media(max-width:980px){
  :root{--nuloop-content-wide:min(100% - 32px,1480px)}
  body[data-page="contact"] .request-form-card{grid-template-columns:1fr!important}
  body[data-page="contact"] .request-form-copy{max-width:none!important}
  body[data-page="tech"] .tech-stats,
  body[data-page="impact"] .impact-metrics{grid-template-columns:1fr!important}
  body[data-page="news"] .news-card{grid-template-columns:1fr!important}
}
@media(max-width:720px){
  :root{--nuloop-content-wide:min(100% - 28px,1480px)}
  body .home-cycle-v2 .cycle-stage-art{width:600px!important;max-width:112vw!important}
  body[data-page="process"] .process-step-grid{grid-template-columns:1fr!important}
  body[data-page="process"] .process-step-card img{height:210px!important}
  body[data-page="contact"] .request-form{grid-template-columns:1fr!important}
  body[data-page="contact"] .request-form label.file-upload-field.full,
  body[data-page="contact"] .request-form button[type=submit]{
    grid-column:1/-1!important;
    width:100%!important;
  }
  body[data-page="contact"] .request-form .file-upload-control{
    grid-template-columns:132px minmax(0,1fr)!important;
  }
}

/* === NULOOP calm layout after screenshots 2026-07-15 === */
:root{--nuloop-content-calm:min(100% - 92px,1380px)}

/* Home: the company-about image card was too tall after the last equal-width pass. */
body .feature-grid.container,
body section:has(.home-about-card).container{
  width:var(--nuloop-content-calm)!important;
}
body .home-about-card{
  min-height:clamp(405px,31vw,535px)!important;
  border-radius:32px!important;
  padding:clamp(24px,3vw,38px)!important;
  margin-top:clamp(14px,1.8vw,26px)!important;
}
body .home-about-card .home-about-content{
  max-width:min(640px,52%)!important;
}
body .home-about-card h2{
  font-size:clamp(38px,4.2vw,64px)!important;
  line-height:1.02!important;
}
body .home-about-card .lead{
  font-size:clamp(16px,1.25vw,20px)!important;
  line-height:1.55!important;
}
body .home-about-card .feature-pills{
  gap:12px!important;
}
body .home-about-card .feature-pills span{
  min-height:62px!important;
  padding:12px 14px!important;
  font-size:clamp(14px,1vw,17px)!important;
}

/* Technology: reduce the aggressive hero/text scale and keep translations inside. */
body[data-page="tech"] .inner-hero>.container,
body[data-page="tech"] .tech-stats{
  width:var(--nuloop-content-calm)!important;
  max-width:1380px!important;
}
body[data-page="tech"] .tech-bg-hero{
  min-height:clamp(430px,30vw,540px)!important;
  border-radius:32px!important;
  padding:clamp(22px,2.6vw,34px)!important;
}
body[data-page="tech"] .tech-bg-hero .one-card-content{
  width:min(520px,44%)!important;
  max-width:520px!important;
  padding:clamp(22px,2.4vw,34px)!important;
}
body[data-page="tech"] .tech-bg-hero h1{
  font-size:clamp(32px,3.15vw,50px)!important;
  line-height:1.04!important;
  letter-spacing:-.045em!important;
  max-width:100%!important;
}
body[data-page="tech"] .tech-bg-hero .lead{
  font-size:clamp(14px,1.05vw,17px)!important;
  line-height:1.45!important;
}
body[data-page="tech"] .tech-bg-hero .hero-pills{
  gap:10px!important;
}
body[data-page="tech"] .tech-bg-hero .hero-pills span{
  min-height:44px!important;
  padding:9px 12px!important;
  font-size:14px!important;
}
body[data-page="tech"] .tech-stats .stat-card{
  min-height:100px!important;
  padding:18px 20px!important;
  border-radius:24px!important;
}
body[data-page="tech"] .tech-stats .stat-card strong{
  font-size:clamp(30px,3vw,46px)!important;
}
body[data-page="tech"] .tech-stats .stat-card span{
  font-size:14px!important;
}

/* Contact: lift the price-request copy and keep form fields away from edges. */
body[data-page="contact"] .contact-clean{
  padding-top:clamp(78px,7vw,104px)!important;
  padding-bottom:clamp(22px,3vw,36px)!important;
}
body[data-page="contact"] .contact-clean-grid,
body[data-page="contact"] .request-form-card{
  width:var(--nuloop-content-calm)!important;
  max-width:1380px!important;
}
body[data-page="contact"] .contact-clean-grid{
  grid-template-columns:.72fr 1.28fr!important;
  gap:22px!important;
}
body[data-page="contact"] .contact-panel{
  padding:clamp(26px,2.5vw,34px)!important;
  border-radius:30px!important;
}
body[data-page="contact"] .contact-panel h1{
  font-size:clamp(32px,3.2vw,50px)!important;
  line-height:1.06!important;
}
body[data-page="contact"] .contact-panel .lead{
  font-size:clamp(15px,1.08vw,18px)!important;
  line-height:1.5!important;
}
body[data-page="contact"] .map-card iframe{
  height:clamp(360px,31vw,460px)!important;
}
body[data-page="contact"] .request-form-section{
  padding-top:clamp(14px,1.8vw,24px)!important;
}
body[data-page="contact"] .request-form-card{
  grid-template-columns:minmax(270px,.38fr) minmax(0,.62fr)!important;
  gap:clamp(24px,3vw,38px)!important;
  padding:clamp(26px,3vw,40px)!important;
  overflow:hidden!important;
}
body[data-page="contact"] .request-form-copy{
  align-self:start!important;
  margin-top:0!important;
  max-width:390px!important;
  padding:clamp(20px,2vw,28px)!important;
}
body[data-page="contact"] .request-form-copy h2{
  font-size:clamp(30px,3vw,46px)!important;
  line-height:1.07!important;
}
body[data-page="contact"] .request-form-copy .lead{
  font-size:clamp(15px,1.15vw,18px)!important;
}
body[data-page="contact"] .request-form{
  width:100%!important;
  transform:none!important;
  margin:0!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px 16px!important;
}
body[data-page="contact"] .request-form label{
  min-width:0!important;
}
body[data-page="contact"] .request-form input,
body[data-page="contact"] .request-form select{
  width:100%!important;
  height:48px!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body[data-page="contact"] .request-form textarea{
  width:100%!important;
  min-height:104px!important;
  box-sizing:border-box!important;
}
body[data-page="contact"] .request-form label.full{
  grid-column:1/-1!important;
}
body[data-page="contact"] .request-form label.file-upload-field.full{
  grid-column:1/2!important;
}
body[data-page="contact"] .request-form .file-upload-control{
  width:100%!important;
  grid-template-columns:132px minmax(0,1fr)!important;
}
body[data-page="contact"] .request-form button[type=submit]{
  grid-column:2/3!important;
  align-self:end!important;
  justify-self:start!important;
}

/* News: remove the empty air above the list. */
body[data-page="news"] .news-index{
  padding-top:clamp(34px,4vw,58px)!important;
}
body[data-page="news"] .news-index .section-head{
  margin-bottom:18px!important;
}
body[data-page="news"] .news-index .section-head h1{
  font-size:clamp(34px,3.8vw,56px)!important;
}

/* Impact: calm the first hero so it does not dominate the first viewport. */
body[data-page="impact"] .inner-hero>.container,
body[data-page="impact"] .impact-metrics{
  width:var(--nuloop-content-calm)!important;
  max-width:1380px!important;
}
body[data-page="impact"] .impact-bg-card{
  min-height:clamp(420px,30vw,545px)!important;
  padding:clamp(22px,2.6vw,34px)!important;
  border-radius:32px!important;
}
body[data-page="impact"] .impact-bg-card .one-card-content{
  width:min(560px,46%)!important;
  max-width:560px!important;
  padding:clamp(22px,2.5vw,34px)!important;
}
body[data-page="impact"] .impact-bg-card h1{
  font-size:clamp(32px,3.35vw,52px)!important;
  line-height:1.06!important;
}
body[data-page="impact"] .impact-bg-card .lead{
  font-size:clamp(15px,1.12vw,18px)!important;
  line-height:1.52!important;
}
body[data-page="impact"] .impact-metrics .metric-card{
  min-height:100px!important;
  padding:18px 20px!important;
  border-radius:24px!important;
}
body[data-page="impact"] .impact-metrics .metric-card strong{
  font-size:clamp(30px,3vw,46px)!important;
}

@media(max-width:1180px){
  :root{--nuloop-content-calm:min(100% - 46px,1380px)}
  body[data-page="tech"] .tech-bg-hero .one-card-content,
  body[data-page="impact"] .impact-bg-card .one-card-content{
    width:min(560px,58%)!important;
  }
  body[data-page="contact"] .contact-clean-grid,
  body[data-page="contact"] .request-form-card{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:760px){
  :root{--nuloop-content-calm:min(100% - 28px,1380px)}
  body .home-about-card .home-about-content,
  body[data-page="tech"] .tech-bg-hero .one-card-content,
  body[data-page="impact"] .impact-bg-card .one-card-content{
    width:100%!important;
    max-width:none!important;
  }
  body[data-page="contact"] .request-form{
    grid-template-columns:1fr!important;
  }
  body[data-page="contact"] .request-form label.file-upload-field.full,
  body[data-page="contact"] .request-form button[type=submit]{
    grid-column:1/-1!important;
    width:100%!important;
  }
}

/* === NULOOP contact top polish 2026-07-15 === */
body[data-page="contact"] .contact-clean{
  padding-top:clamp(52px,5vw,76px)!important;
  padding-bottom:clamp(22px,3vw,36px)!important;
}
body[data-page="contact"] .contact-clean-grid{
  width:min(100% - 72px,1460px)!important;
  max-width:1460px!important;
  grid-template-columns:minmax(430px,.82fr) minmax(0,1.18fr)!important;
  gap:clamp(26px,3vw,42px)!important;
  align-items:stretch!important;
}
body[data-page="contact"] .contact-panel{
  padding:clamp(34px,3.4vw,52px)!important;
  border-radius:34px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-height:clamp(430px,31vw,540px)!important;
}
body[data-page="contact"] .contact-panel h1{
  font-size:clamp(42px,4.35vw,68px)!important;
  line-height:1.03!important;
  letter-spacing:-.045em!important;
  max-width:620px!important;
}
body[data-page="contact"] .contact-panel .lead{
  font-size:clamp(17px,1.25vw,21px)!important;
  line-height:1.55!important;
  max-width:620px!important;
}
body[data-page="contact"] .contact-mini{
  grid-template-columns:1fr!important;
  gap:10px!important;
  max-width:620px!important;
}
body[data-page="contact"] .contact-mini a,
body[data-page="contact"] .contact-mini span{
  padding:13px 16px!important;
  border-radius:16px!important;
  font-size:clamp(14px,1vw,17px)!important;
}
body[data-page="contact"] .social-links{
  margin-top:18px!important;
  gap:10px!important;
}
body[data-page="contact"] .map-card{
  padding:14px!important;
  border-radius:34px!important;
  align-content:start!important;
}
body[data-page="contact"] .map-card iframe{
  height:clamp(430px,31vw,540px)!important;
  border-radius:26px!important;
}
body[data-page="contact"] .map-card .btn,
body[data-page="contact"] .map-card a.btn{
  width:max-content!important;
  min-width:0!important;
  justify-self:start!important;
  min-height:46px!important;
  height:46px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  font-size:14px!important;
  line-height:1!important;
  box-shadow:0 12px 26px rgba(0,86,190,.18)!important;
}
body[data-page="contact"] .request-form-card{
  width:min(100% - 72px,1460px)!important;
  max-width:1460px!important;
}
@media(max-width:1180px){
  body[data-page="contact"] .contact-clean-grid{
    width:min(100% - 42px,1460px)!important;
    grid-template-columns:1fr!important;
  }
  body[data-page="contact"] .contact-panel{
    min-height:0!important;
  }
}
@media(max-width:760px){
  body[data-page="contact"] .contact-clean{
    padding-top:34px!important;
  }
  body[data-page="contact"] .contact-clean-grid,
  body[data-page="contact"] .request-form-card{
    width:min(100% - 28px,1460px)!important;
  }
  body[data-page="contact"] .map-card iframe{
    height:360px!important;
  }
}

/* === NULOOP contact map restore 2026-07-15 === */
body[data-page="contact"] .map-card{
  border-radius:34px!important;
  padding:16px!important;
  display:grid!important;
  gap:14px!important;
  align-content:stretch!important;
}
body[data-page="contact"] .map-card iframe{
  width:100%!important;
  height:520px!important;
  border:0!important;
  border-radius:26px!important;
  background:#eaf4ff!important;
}
body[data-page="contact"] .map-card .btn,
body[data-page="contact"] .map-card a.btn{
  justify-self:start!important;
  width:auto!important;
  min-width:0!important;
  min-height:46px!important;
  height:46px!important;
  padding:0 18px!important;
  border-radius:999px!important;
  font-size:14px!important;
}
@media(max-width:760px){
  body[data-page="contact"] .map-card iframe{
    height:360px!important;
  }
}

/* === NULOOP contact map full button 2026-07-15 === */
body[data-page="contact"] .contact-clean{
  padding-top:clamp(34px,3.8vw,54px)!important;
  padding-bottom:clamp(20px,2.6vw,34px)!important;
}
body[data-page="contact"] .contact-clean-grid{
  width:min(100% - 96px,1600px)!important;
  max-width:1600px!important;
  grid-template-columns:minmax(430px,.74fr) minmax(620px,1.08fr)!important;
  gap:clamp(26px,2.8vw,34px)!important;
  align-items:stretch!important;
}
body[data-page="contact"] .contact-panel{
  min-height:clamp(560px,38vw,730px)!important;
  padding:clamp(32px,3vw,48px)!important;
  border-radius:34px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
body[data-page="contact"] .contact-panel h1{
  font-size:clamp(42px,4.1vw,66px)!important;
  line-height:1.03!important;
  letter-spacing:-.045em!important;
  max-width:650px!important;
}
body[data-page="contact"] .contact-panel .lead{
  font-size:clamp(17px,1.22vw,21px)!important;
  line-height:1.55!important;
  max-width:620px!important;
}
body[data-page="contact"] .contact-mini{
  gap:10px!important;
  margin-top:24px!important;
}
body[data-page="contact"] .contact-mini a,
body[data-page="contact"] .contact-mini span{
  padding:15px 18px!important;
  border-radius:16px!important;
  font-size:clamp(15px,1.05vw,18px)!important;
}
body[data-page="contact"] .social-links{
  gap:12px!important;
  margin-top:18px!important;
}
body[data-page="contact"] .social-btn{
  min-height:60px!important;
  padding:0 22px!important;
  border-radius:18px!important;
}
body[data-page="contact"] .map-card{
  padding:18px!important;
  border-radius:34px!important;
  display:grid!important;
  grid-template-rows:1fr auto!important;
  gap:18px!important;
  align-content:stretch!important;
  overflow:hidden!important;
}
body[data-page="contact"] .map-card iframe{
  width:100%!important;
  height:100%!important;
  min-height:clamp(500px,34vw,650px)!important;
  border:0!important;
  border-radius:24px!important;
  background:#eaf4ff!important;
  display:block!important;
}
body[data-page="contact"] .map-card .btn,
body[data-page="contact"] .map-card a.btn{
  width:100%!important;
  max-width:none!important;
  justify-self:stretch!important;
  min-height:70px!important;
  height:70px!important;
  padding:0 26px!important;
  border-radius:18px!important;
  font-size:18px!important;
  font-weight:950!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 18px 36px rgba(0,86,190,.22)!important;
}
body[data-page="contact"] .request-form-card{
  width:min(100% - 96px,1600px)!important;
  max-width:1600px!important;
}
@media(max-width:1180px){
  body[data-page="contact"] .contact-clean-grid{
    width:min(100% - 42px,1600px)!important;
    grid-template-columns:1fr!important;
  }
  body[data-page="contact"] .contact-panel{
    min-height:0!important;
  }
  body[data-page="contact"] .map-card iframe{
    height:520px!important;
    min-height:520px!important;
  }
}
@media(max-width:760px){
  body[data-page="contact"] .contact-clean{
    padding-top:30px!important;
  }
  body[data-page="contact"] .contact-clean-grid,
  body[data-page="contact"] .request-form-card{
    width:min(100% - 28px,1600px)!important;
  }
  body[data-page="contact"] .map-card iframe{
    height:360px!important;
    min-height:360px!important;
  }
  body[data-page="contact"] .map-card .btn,
  body[data-page="contact"] .map-card a.btn{
    min-height:58px!important;
    height:58px!important;
    font-size:16px!important;
  }
}

/* === NULOOP contact first block match Netlify 2026-07-15 === */
body[data-page="contact"] .contact-clean{
  padding:24px 0 34px!important;
}
body[data-page="contact"] .contact-clean-grid{
  width:min(1420px,calc(100% - 44px))!important;
  max-width:1420px!important;
  margin-inline:auto!important;
  display:grid!important;
  grid-template-columns:.8fr 1.2fr!important;
  gap:26px!important;
  align-items:stretch!important;
}
body[data-page="contact"] .contact-panel{
  border-radius:34px!important;
  padding:30px!important;
  min-height:0!important;
  display:block!important;
}
body[data-page="contact"] .contact-panel h1{
  margin:0!important;
  max-width:600px!important;
  font-size:clamp(32px,3.7vw,54px)!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  color:var(--blue)!important;
}
body[data-page="contact"] .contact-panel .lead{
  max-width:620px!important;
  font-size:16px!important;
  line-height:1.68!important;
}
body[data-page="contact"] .contact-mini{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:12px!important;
  margin-top:28px!important;
  max-width:none!important;
}
body[data-page="contact"] .contact-mini a,
body[data-page="contact"] .contact-mini span{
  display:block!important;
  padding:16px 18px!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.68)!important;
  border:0!important;
  font-weight:850!important;
  font-size:15px!important;
  line-height:1.2!important;
  color:var(--blue)!important;
}
body[data-page="contact"] .social-links{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  margin-top:18px!important;
}
body[data-page="contact"] .social-btn{
  min-height:54px!important;
  padding:0 18px!important;
  border-radius:18px!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:10px!important;
  font-weight:900!important;
}
body[data-page="contact"] .map-card{
  border-radius:34px!important;
  padding:16px!important;
  display:grid!important;
  grid-template-rows:auto auto!important;
  gap:34px!important;
  align-content:start!important;
  overflow:hidden!important;
}
body[data-page="contact"] .map-card iframe{
  width:100%!important;
  height:520px!important;
  min-height:0!important;
  border:0!important;
  border-radius:26px!important;
  background:#eaf4ff!important;
  display:block!important;
}
body[data-page="contact"] .map-card .btn,
body[data-page="contact"] .map-card a.btn{
  width:100%!important;
  max-width:none!important;
  justify-self:stretch!important;
  min-height:66px!important;
  height:66px!important;
  padding:0 26px!important;
  border-radius:18px!important;
  font-size:16px!important;
  line-height:1!important;
  font-weight:950!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-shadow:0 18px 36px rgba(0,86,190,.22)!important;
}
@media(max-width:980px){
  body[data-page="contact"] .contact-clean-grid{
    width:min(100% - 42px,1420px)!important;
    grid-template-columns:1fr!important;
  }
  body[data-page="contact"] .map-card iframe{
    height:440px!important;
  }
}
@media(max-width:760px){
  body[data-page="contact"] .contact-clean{
    padding:30px 0!important;
  }
  body[data-page="contact"] .contact-clean-grid{
    width:min(100% - 28px,1420px)!important;
  }
  body[data-page="contact"] .contact-panel{
    padding:26px!important;
  }
  body[data-page="contact"] .map-card iframe{
    height:360px!important;
  }
  body[data-page="contact"] .map-card .btn,
  body[data-page="contact"] .map-card a.btn{
    min-height:58px!important;
    height:58px!important;
    font-size:16px!important;
  }
}

/* === 2026-07-17 final forced team portrait frame === */
body[data-page="about"] .team-card .team-photo{
  width:126px!important;
  height:156px!important;
  object-fit:cover!important;
  object-position:center top!important;
  border-radius:22px!important;
  border:2px solid rgba(0,74,173,.38)!important;
  outline:5px solid rgba(255,255,255,.78)!important;
  background:linear-gradient(145deg,#fff,#eef7ff)!important;
  box-shadow:0 18px 34px rgba(7,40,95,.22)!important;
}
@media(max-width:640px){
  body[data-page="about"] .team-card .team-photo{
    width:92px!important;
    height:118px!important;
    border-radius:18px!important;
  }
}

/* === 2026-07-17 accepted batteries real-photo refresh === */
body[data-page="accept"] .battery-type-card img,
body[data-page="accept"] .condition-card img{
  height:174px!important;
  object-fit:cover!important;
  object-position:center!important;
  background:#eef7ff!important;
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.9)!important;
  box-shadow:0 14px 28px rgba(7,40,95,.10)!important;
}
body[data-page="accept"] .battery-hero-card>img{
  object-position:center!important;
}
@media(max-width:760px){
  body[data-page="accept"] .battery-type-card img,
  body[data-page="accept"] .condition-card img{
    height:205px!important;
  }
}

/* === 2026-07-17 guide based accepted-batteries visuals === */
body[data-page="accept"] .battery-hero-card>img{
  object-fit:contain!important;
  object-position:center!important;
  background:linear-gradient(145deg,#f8fcff,#eef8ff)!important;
  padding:10px!important;
}
body[data-page="accept"] .battery-type-card img,
body[data-page="accept"] .condition-card img{
  height:176px!important;
  object-fit:cover!important;
  object-position:center!important;
  background:#f7fbff!important;
  border-radius:20px!important;
  padding:0!important;
  border:1px solid rgba(0,74,173,.10)!important;
  box-shadow:0 12px 24px rgba(7,40,95,.09)!important;
}
body[data-page="accept"] .battery-type-card,
body[data-page="accept"] .condition-card{
  overflow:hidden!important;
}
@media(max-width:760px){
  body[data-page="accept"] .battery-type-card img,
  body[data-page="accept"] .condition-card img{height:205px!important;}
}

/* real battery acceptance photos — 20260717-real-accept-v2 */
body[data-page="accept"] .battery-type-card img,
body[data-page="accept"] .condition-card img {
  height: 184px !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  border-radius: 22px !important;
  box-shadow: 0 16px 34px rgba(7,40,95,.10) !important;
}

body[data-page="accept"] .battery-hero-card > img {
  object-fit: cover !important;
  object-position: center !important;
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
}

@media (max-width: 760px) {
  body[data-page="accept"] .battery-type-card img,
  body[data-page="accept"] .condition-card img {
    height: 205px !important;
  }
}
