.site-header{
  position:sticky;
  top:0;
  z-index:50;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:14px 20px;
  background:rgba(255,253,249,.92);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(158,63,86,.08);
  min-height:78px;
}

.site-header.is-scrolled{
  box-shadow:0 16px 34px rgba(36,23,27,.08);
}

.site-header .brand{
  display:inline-flex;
  align-items:center;
}

.site-header .brand img{height:50px}
.site-header .nav{
  margin-left:auto;
  min-width:0;
}

.nav ul{
  display:flex;
  gap:10px;
  align-items:center;
  list-style:none;
  margin:0;
  padding:0;
}

.nav li{position:relative}

.nav-search{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:220px;
  padding:6px;
  background:#fff;
  border:1px solid rgba(158,63,86,.14);
  border-radius:8px;
}

.nav-search input{
  flex:1;
  min-width:0;
  border:0;
  background:transparent;
  font:inherit;
  color:var(--ink);
}

.nav-search input:focus{outline:none}

.nav-search button{
  min-width:40px;
  height:40px;
  border:0;
  border-radius:8px;
  background:var(--brand-soft);
  color:var(--brand-dark);
  font:inherit;
  font-weight:700;
  cursor:pointer;
}

.nav > ul > li > a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:44px;
  padding:10px 12px;
  color:var(--ink);
  font-weight:600;
  border-radius:8px;
  line-height:1.1;
  transition:color .2s ease,background .2s ease,border-color .2s ease;
  border:1px solid transparent;
  text-align:center;
}

.nav > ul > li > a.active,
.nav > ul > li > a:hover{
  color:var(--brand);
  background:#fff;
  border-color:rgba(158,63,86,.12);
}

.nav .btn-primary{
  padding:10px 16px;
  min-height:44px;
}

.nav .btn-outline{
  padding:10px 16px;
  min-height:44px;
}

.has-dd > a::after{
  content:"";
  width:6px;
  height:6px;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  display:inline-flex;
  margin-left:6px;
  transition:transform .2s ease;
}

.has-dd:hover > a::after{
  transform:rotate(225deg);
  margin-top:2px;
}

.has-dd .dd{
  position:absolute;
  left:0;
  top:calc(100% + 10px);
  background:#fff;
  border:1px solid rgba(158,63,86,.12);
  border-radius:8px;
  min-width:240px;
  box-shadow:var(--shadow-md);
  padding:10px;
  display:flex;
  flex-direction:column;
  gap:4px;
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px);
  transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s;
}

.has-dd:hover .dd{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  transition-delay:0s;
}

.has-dd .dd a{
  padding:10px 12px;
  border-radius:8px;
  color:var(--ink);
  font-weight:500;
  white-space:nowrap;
}

.has-dd .dd a:hover{
  background:var(--surface-soft);
  color:var(--brand);
}

.nav-toggle{display:none}
.site-header .nav-toggle{margin-left:auto}

.site-footer{
  background:#f7f1ec;
  color:var(--ink);
  padding:56px 20px 30px;
  margin-top:80px;
  border-top:1px solid rgba(158,63,86,.08);
}

.site-footer a{color:inherit}

.footer-grid{
  max-width:var(--max);
  margin:auto;
  display:grid;
  gap:26px;
  grid-template-columns:1.3fr .9fr .9fr .95fr;
  align-items:start;
}

.footer-brand{
  display:flex;
  flex-direction:column;
  gap:18px;
  max-width:360px;
}

.footer-logo{
  height:58px;
  margin:0;
  display:block;
  padding:10px 16px;
  background:#fff;
  border-radius:8px;
  width:max-content;
}

.footer-brand p{margin:0;color:var(--muted)}

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

.footer-kpis span{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 12px;
  border:1px solid rgba(158,63,86,.12);
  border-radius:8px;
  font-size:.92rem;
  color:var(--ink);
  background:#fff;
}

.contact-mini{
  display:flex;
  flex-direction:column;
  gap:10px;
}

.contact-mini a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-weight:600;
  color:var(--ink);
}

.contact-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--brand-soft);
  border-radius:8px;
  font-size:.75rem;
  font-weight:700;
  padding:6px 10px;
  color:var(--brand-dark);
}

.footer-links h4{
  margin:0 0 14px;
  font-size:1rem;
  font-weight:700;
  color:var(--ink);
}

.footer-links p{margin:0 0 16px;color:var(--muted)}

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

.footer-menu a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:var(--ink);
}

.footer-menu a:hover{
  color:var(--brand-dark);
}

.footer-menu a::before{
  content:"";
  width:5px;
  height:5px;
  border-radius:50%;
  background:rgba(132,193,101,.9);
  flex:none;
}

.btn-footer{
  width:max-content;
  background:#fff;
  color:var(--brand);
  border:1px solid #fff;
}

.btn-footer:hover{
  background:var(--brand);
  color:#fff;
  border-color:var(--brand);
}

.socials{
  display:flex;
  gap:10px;
  margin-top:18px;
}

.socials a{
  width:40px;
  height:40px;
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  font-weight:700;
  color:var(--brand);
  border:1px solid rgba(158,63,86,.12);
}

.socials a:hover{
  background:var(--brand);
  color:#fff;
  border-color:var(--brand);
}

.copy{
  text-align:center;
  margin-top:36px;
  color:var(--muted);
  font-size:.92rem;
}

.copy span{font-weight:700}

.hero{
  max-width:var(--max);
  margin:32px auto 0;
  padding:70px 20px 30px;
}

.hero__inner{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
  gap:34px;
  align-items:center;
}

.hero__content{
  display:flex;
  flex-direction:column;
  gap:18px;
  min-width:0;
}

.hero__content p{
  margin:0;
  font-size:1.08rem;
  color:#4c3b40;
  max-width:620px;
}

.hero__cta{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
}

.hero__stats{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:8px 0 0;
  padding:0;
  list-style:none;
}

.hero__stats li{
  min-height:112px;
  padding:18px;
  border-radius:8px;
  background:#fff;
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-sm);
  color:#4d3c40;
}

.hero__stats strong{
  display:block;
  margin-bottom:8px;
  font-size:1.65rem;
  color:var(--brand);
}

.hero__media{
  display:grid;
  gap:14px;
  min-width:0;
}

.hero__media-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 132px;
  gap:14px;
  align-items:stretch;
}

.hero__card{
  border-radius:8px;
  overflow:hidden;
  border:1px solid rgba(158,63,86,.12);
  box-shadow:var(--shadow-md);
  background:#fff;
}

.hero__card img{
  width:100%;
  aspect-ratio:5/4;
  object-fit:cover;
}

.hero__stack{
  display:grid;
  gap:14px;
}

.hero__stack .hero__card img{
  aspect-ratio:1/1;
}

.hero__badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:8px 12px;
  border-radius:8px;
  background:var(--accent-soft);
  color:#2f4923;
  font-weight:700;
  width:max-content;
}

.hero__pillars{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}

.hero__pillars li{
  padding:14px 16px;
  border-radius:8px;
  background:#fff;
  border:1px solid rgba(84,124,66,.14);
  color:#42523e;
  font-weight:600;
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:.82rem;
  font-weight:700;
  text-transform:uppercase;
  color:var(--brand);
  background:var(--brand-soft);
  padding:7px 11px;
  border-radius:8px;
  width:max-content;
}

.eyebrow--light{
  background:rgba(255,255,255,.14);
  color:#fff;
}

.eyebrow--soft{
  background:rgba(255,255,255,.2);
  color:#fff;
}

.hero-trust{
  max-width:var(--max);
  margin:8px auto 0;
  padding:0 20px;
  display:grid;
  grid-template-columns:1.4fr 1fr;
  gap:20px;
}

.trust-band,
.brand-band{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-items:center;
  padding:16px;
  background:#fff;
  border-radius:8px;
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-sm);
}

.trust-badge,
.brand-chip{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:8px 12px;
  border-radius:8px;
  background:var(--surface-soft);
  color:var(--ink);
  font-weight:700;
}

.brand-chip{
  background:var(--surface-alt);
  color:#524346;
}

.assurance-strip{
  max-width:var(--max);
  margin:48px auto 0;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  padding:0 20px;
}

.assurance-strip article{
  background:#fff;
  border-radius:8px;
  padding:22px;
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-sm);
  display:flex;
  flex-direction:column;
  gap:12px;
}

.assurance-icon{font-size:24px}

.section--surface{
  background:linear-gradient(180deg,#fff6f1 0%,#fff 100%);
  border-radius:8px;
  margin:72px auto 0;
  padding:64px 20px;
  max-width:var(--max);
  border:1px solid rgba(158,63,86,.08);
}

.media-strip{
  max-width:var(--max);
  margin:40px auto 0;
  padding:0 20px;
}

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

.media-card{
  background:#fff;
  border:1px solid rgba(158,63,86,.1);
  border-radius:8px;
  overflow:hidden;
  box-shadow:var(--shadow-sm);
  min-width:0;
}

.media-card img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}

.media-card__body{
  display:grid;
  gap:6px;
  padding:16px;
}

.media-card__body h3,
.media-card__body p{
  margin:0;
}

.media-card__body p{
  color:var(--muted);
}

.care-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:18px;
  margin-top:28px;
}

.care-card{
  background:#fff;
  border-radius:8px;
  padding:24px;
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-sm);
  display:flex;
  flex-direction:column;
  gap:14px;
  color:inherit;
  min-height:220px;
}

.care-card:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow-md);
}

.care-card__icon{font-size:28px}

.approach{
  max-width:var(--max);
  margin:80px auto 0;
  padding:58px 20px;
  border-radius:8px;
  background:#fff;
  color:var(--ink);
  display:grid;
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:28px;
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-sm);
}

.approach__intro{
  display:flex;
  flex-direction:column;
  gap:18px;
}

.approach__intro p{margin:0;color:var(--muted)}

.approach__steps{
  margin:0;
  list-style:none;
  padding:0;
  display:grid;
  gap:14px;
  counter-reset:step;
}

.approach__steps li{
  background:var(--surface-soft);
  border:1px solid rgba(158,63,86,.1);
  padding:22px 22px 20px 66px;
  border-radius:8px;
  position:relative;
}

.approach__steps li::before{
  counter-increment:step;
  content:counter(step);
  position:absolute;
  top:20px;
  left:20px;
  width:30px;
  height:30px;
  border-radius:8px;
  background:#fff;
  color:var(--brand);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:700;
}

.approach__steps h3{margin:0 0 6px;color:var(--ink)}
.approach__steps p{margin:0;color:var(--muted)}

.approach .btn-outline{
  background:#fff;
}

.banner{
  max-width:var(--max);
  margin:80px auto 0;
  padding:42px 32px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:20px;
  align-items:center;
  border-radius:8px;
  background:linear-gradient(180deg,#fff6f1 0%,#f7f1ec 100%);
  color:var(--ink);
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-sm);
}

.banner h2,
.banner p{margin:0}

.banner__copy{
  display:flex;
  flex-direction:column;
  gap:14px;
}

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

.banner__highlights li{
  min-height:44px;
  padding:12px 14px;
  border-radius:8px;
  background:#fff;
  font-weight:600;
  border:1px solid rgba(158,63,86,.1);
}

.banner__actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
}

.section--stories{
  max-width:var(--max);
  margin:80px auto 0;
  padding:0 20px;
}

.section--stories .section-head{
  padding:0;
}

.testimonial-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:18px;
}

.testimonial{
  background:#fff;
  border-radius:8px;
  padding:24px;
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-sm);
  display:flex;
  flex-direction:column;
  gap:16px;
  min-width:0;
}

.testimonial p{
  margin:0;
  font-size:1.02rem;
  color:#403337;
}

.testimonial__meta{
  font-weight:700;
  color:var(--brand);
}

.stories-cta{
  margin-top:26px;
  display:inline-flex;
}

.info-grid{
  max-width:var(--max);
  margin:auto;
  display:grid;
  gap:18px;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  padding:0 20px 40px;
}

.info-grid--cta{
  padding:0 20px;
  margin-top:80px;
}

.info{
  background:#fff;
  padding:26px;
  border-radius:8px;
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-sm);
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
}

.info h3,
.info p{margin:0}

.info-list{
  margin:0;
  padding-left:18px;
  color:#5a4d53;
  display:grid;
  gap:6px;
}

.info .btn-primary,
.info-cta{width:max-content}

.cta-strip{
  max-width:var(--max);
  margin:80px auto 110px;
  padding:36px 32px;
  border-radius:8px;
  background:#fff;
  border:1px solid rgba(84,124,66,.18);
  box-shadow:var(--shadow-sm);
  display:flex;
  gap:28px;
  align-items:center;
  justify-content:space-between;
}

.cta-strip h2{
  margin:0 0 10px;
  font-size:clamp(1.7rem,2.6vw,2.5rem);
}

.cta-strip p{
  margin:0;
  max-width:560px;
  color:#54464a;
}

.page-hero{
  max-width:var(--max);
  margin:26px auto 0;
  padding:52px 20px 24px;
}

.page-hero .page{
  background:linear-gradient(180deg,#fff7f1 0%,#fff 100%);
  border:1px solid rgba(158,63,86,.08);
  border-radius:8px;
  box-shadow:var(--shadow-sm);
  display:flex;
  flex-direction:column;
  gap:14px;
  position:relative;
  overflow:hidden;
}

.page-hero--media .page{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(260px,.72fr);
  gap:22px;
  align-items:center;
}

.page-hero__content{
  display:grid;
  gap:14px;
  min-width:0;
}

.page-hero__media{
  position:relative;
  z-index:1;
}

.page-hero__media img{
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
  border-radius:8px;
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-md);
}

.page-hero .page::after{
  content:"";
  width:180px;
  height:180px;
  position:absolute;
  top:-70px;
  right:-40px;
  border-radius:8px;
  background:linear-gradient(180deg,rgba(84,124,66,.12),rgba(84,124,66,0));
  transform:rotate(20deg);
}

.page-hero h1{
  margin:0;
  max-width:760px;
  font-size:clamp(2.2rem,4vw,3.7rem);
}

.page-hero p{
  margin:0;
  max-width:680px;
  font-size:1.05rem;
  color:#54464a;
}

.subnav{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  max-width:var(--max);
  margin:0 auto;
  padding:0 20px 10px;
}

.subnav .pill{
  margin:0;
}

.service{
  padding:30px 0;
  border-bottom:1px solid #f1e4e1;
}

.split{
  max-width:var(--max);
  margin:auto;
  padding:30px 20px;
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:26px;
  align-items:center;
}

.split__content{
  display:grid;
  gap:14px;
}

.split__content p,
.split__content h2,
.split__content h3{
  margin:0;
}

.proof-card{
  background:#fff;
  border-radius:8px;
  border:1px solid rgba(158,63,86,.1);
  box-shadow:var(--shadow-sm);
  padding:22px;
}

.proof-card h3,
.proof-card p{margin:0}

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

.proof-list li{
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:12px 0;
  border-bottom:1px solid rgba(158,63,86,.08);
}

.proof-list li:last-child{border-bottom:0}

.product-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:18px;
}

.product-card{
  background:#fff;
  border:1px solid rgba(158,63,86,.1);
  border-radius:8px;
  box-shadow:var(--shadow-sm);
  padding:22px;
  display:flex;
  flex-direction:column;
  gap:14px;
  min-height:220px;
}

.product-card__media{
  background:linear-gradient(180deg,#fffaf6 0%,#fff2ea 100%);
  border-radius:8px;
  border:1px solid rgba(158,63,86,.08);
  overflow:hidden;
  padding:14px;
}

.product-card__media img{
  width:100%;
  aspect-ratio:1/1;
  object-fit:contain;
}

.product-card .btn-primary{
  margin-top:auto;
  width:100%;
}

.product-card p{
  margin:0;
  color:var(--muted);
}

.contact-cluster{
  display:grid;
  gap:18px;
}

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

.contact-priority .card{
  min-width:0;
}

.contact-priority .btn-whatsapp,
.contact-priority .btn-outline{
  width:100%;
}

@media (max-width:1024px){
  .site-header{
    padding:12px 18px;
  }

  .footer-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .hero__inner,
  .hero-trust,
  .approach,
  .split{
    grid-template-columns:1fr;
  }

  .hero{
    padding-top:56px;
  }

  .hero__media{
    order:2;
  }

  .page-hero--media .page{
    grid-template-columns:1fr;
  }
}

@media (max-width:900px){
  .nav-toggle{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:42px;
    height:42px;
    background:#fff;
    border:1px solid rgba(158,63,86,.12);
    border-radius:8px;
  }

  .nav-toggle::before{
    content:"☰";
    font-size:20px;
    color:var(--ink);
  }

  .nav-toggle.is-open::before{
    content:"✕";
  }

  .site-header{
    flex-wrap:wrap;
    gap:12px;
  }

  .nav{
    display:none;
    width:100%;
    margin-top:8px;
  }

  .nav.open{display:block}

  .nav ul{
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    background:#fff;
    border:1px solid rgba(158,63,86,.1);
    border-radius:8px;
    padding:12px;
    box-shadow:var(--shadow-md);
  }

  .nav > ul > li > a{
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .has-dd > a::after{
    margin-top:0;
    transform:rotate(45deg);
  }

  .has-dd .dd{
    position:static;
    border:none;
    box-shadow:none;
    padding:6px 0 0 12px;
    opacity:1;
    visibility:visible;
    transform:none;
    transition:none;
    min-width:0;
  }

  .section{
    padding:56px 20px;
  }

  .page{
    padding:28px 20px;
  }

  .hero{
    margin-top:18px;
    padding:34px 20px 18px;
  }

  .hero__inner{
    gap:22px;
  }

  .hero__content{
    gap:14px;
  }

  .hero__content p{
    max-width:none;
    font-size:1rem;
  }

  .hero__media-grid{
    grid-template-columns:1fr;
  }

  .hero__stack{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .hero__stats{
    grid-template-columns:1fr;
  }

  .hero__stats li{
    min-height:0;
    padding:16px;
  }

  .hero__badge{
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .proof-card{
    padding:18px;
  }

  .proof-list li{
    flex-direction:column;
    align-items:flex-start;
    gap:4px;
    padding:10px 0;
  }

  .hero-trust{
    grid-template-columns:1fr;
    gap:12px;
  }

  .trust-band,
  .brand-band{
    padding:14px;
  }

  .assurance-strip,
  .testimonial-grid,
  .info-grid,
  .media-strip__grid,
  .contact-priority{
    grid-template-columns:1fr;
  }

  .care-grid,
  .product-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .care-card,
  .product-card{
    min-height:0;
    padding:18px;
  }

  .approach,
  .banner,
  .cta-strip{
    margin-top:56px;
  }

  .approach{
    padding:28px 18px;
    gap:20px;
  }

  .approach__steps li{
    padding:18px 18px 18px 58px;
  }

  .approach__steps li::before{
    top:16px;
    left:16px;
  }

  .banner{
    grid-template-columns:1fr;
    padding:28px 20px;
  }

  .banner__actions{
    flex-direction:column;
  }

  .banner__actions .btn-primary,
  .banner__actions .btn-outline{
    width:100%;
  }

  .section--stories,
  .info-grid--cta{
    margin-top:56px;
  }

  .info{
    padding:20px;
  }

  .cta-strip{
    flex-direction:column;
    align-items:flex-start;
    gap:18px;
    padding:28px 20px;
    margin-bottom:88px;
  }

  .cta-strip .btn-primary{
    width:100%;
  }

  .page-hero{
    margin-top:14px;
    padding:28px 20px 12px;
  }

  .page-hero .page{
    padding:24px 18px;
  }

  .page-hero .page::after{
    width:120px;
    height:120px;
    top:-50px;
    right:-32px;
  }

  .page-hero p{
    max-width:none;
    font-size:1rem;
  }

  .subnav{
    gap:8px;
    padding:0 20px 4px;
  }

  .split{
    padding:20px;
    gap:18px;
  }

  .contact-cluster{
    gap:14px;
  }

  .footer-grid{
    gap:20px;
  }

  .footer-brand,
  .footer-links{
    max-width:none;
  }

  .footer-kpis{
    gap:8px;
  }

  .contact-mini a{
    flex-wrap:wrap;
  }
}

@media (max-width:760px){
  .section-head{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
    margin-bottom:14px;
  }

  .section-head .link{
    align-self:flex-start;
  }

  .hero__cta{
    flex-direction:column;
  }

  .hero__cta .btn-primary,
  .hero__cta .btn-whatsapp,
  .hero__cta .btn-outline{
    width:100%;
  }

  .trust-badge,
  .brand-chip{
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .approach__intro .btn-outline,
  .banner .btn-primary,
  .banner .btn-outline,
  .stories-cta,
  .info .btn-primary,
  .info .btn-outline{
    width:100%;
  }

  .testimonial,
  .box,
  .card{
    padding:20px;
  }

  .grid-2{
    padding:0;
  }
}

@media (max-width:640px){
  .site-header{
    padding:10px 14px;
    min-height:68px;
  }

  .site-header .brand img{
    height:44px;
  }

  .section{
    padding:44px 16px;
  }

  .page{
    padding:24px 16px;
  }

  .hero{
    margin-top:12px;
    padding:28px 16px 14px;
  }

  .hero-trust,
  .assurance-strip,
  .info-grid,
  .subnav,
  .media-strip,
  .section-head{
    padding-left:16px;
    padding-right:16px;
  }

  .section--surface{
    margin:44px 16px 0;
    padding:34px 16px;
  }

  .care-grid,
  .product-grid{
    grid-template-columns:1fr;
  }

  .approach,
  .banner,
  .cta-strip{
    margin-left:16px;
    margin-right:16px;
  }

  .page-hero{
    padding:20px 16px 8px;
  }

  .page-hero--media .page{
    gap:16px;
  }

  .page-hero h1,
  .hero__content h1{
    overflow-wrap:anywhere;
    font-size:clamp(1.95rem,8vw,2.5rem);
  }

  .hero__content p,
  .page-hero p,
  .cta-strip p,
  .banner p{
    font-size:.96rem;
  }

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

  .footer-logo{
    height:52px;
    padding:8px 14px;
  }

  .footer-kpis span,
  .contact-mini a,
  .btn-footer{
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .socials{
    flex-wrap:wrap;
  }

  .socials a{
    flex:1 1 calc(33.333% - 10px);
  }
}

@media (max-width:420px){
  .nav ul{
    padding:10px;
  }

  .nav > ul > li > a,
  .nav .btn-primary{
    min-height:42px;
    padding:10px 12px;
  }

  .hero__badge,
  .trust-band,
  .brand-band,
  .info,
  .card,
  .box,
  .testimonial,
  .product-card,
  .media-card__body{
    padding-left:16px;
    padding-right:16px;
  }

  .hero__stack{
    grid-template-columns:1fr;
  }

  .cta-strip h2,
  .banner h2{
    font-size:1.5rem;
  }
}
