@media(max-width:1100px){
  .r-page .r-how-rule{display:none}
  .r-how .r-how-detect::before{background:rgba(24,48,92,.48)}
  .r-home .r-home-experience>.r-scene-shade{background:rgba(22,40,55,.76)}
  .r-home .r-home-flightops>.r-scene-shade{background:linear-gradient(90deg,rgba(29,39,43,.8),rgba(29,39,43,.42))}
  .r-home .r-stats,.r-home .r-stat,.r-home .r-service-card h3{border:0}
  .r-home .r-stats{padding-left:0}
}

/* Ritmo móvil: cada separación se define una vez, sin sumar márgenes vacíos. */
@media(max-width:1100px){
  .r-page .r-section{padding-block:40px}
  .r-page>.r-light+.r-light{padding-top:8px}
  .r-page>.r-hero+.r-light{padding-top:28px}
  .r-page .r-section>.r-wrap>.r-heading,
  .r-page .r-section>.r-wrap>h2{margin-bottom:24px}
  .r-home .r-process-list{margin-bottom:0}
  .r-home .r-process-list li:last-child{margin-bottom:0}
  .r-home .r-home-dock{margin-top:0}
  .r-home .r-stats{padding-top:0;gap:24px}
  .r-home .r-stat{padding-bottom:0}
  .r-home .r-more{align-self:center}
  .r-home .r-service-card h3{padding-bottom:0}
  .r-home .r-home-cta .r-split{gap:20px;text-align:center}
  .r-home .r-home-cta .r-btn{margin-top:0}
  .r-how .r-how-operations-copy .r-list{margin-bottom:24px}
  .r-how .r-how-operations-copy .r-btn{margin-top:0}
  .r-solutions .r-solutions-gallery,
  .r-solutions .r-solutions-nature,
  .r-solutions .r-solutions-thermal,
  .r-solutions .r-solutions-progress{margin-top:24px}
  .r-solutions .r-solutions-benefits{text-align:center}
}
@media(max-width:600px){
  .r-page .r-grid,.r-page .r-split{gap:24px}
  .r-home .r-home-hero,.r-solutions .r-hero{min-height:500px;padding-block:56px 80px}
  .page-contact .contact-hero{min-height:460px;padding-block:48px 80px}
  .page-contact .contact-section{padding-top:24px}
  .page-contact .contact-intro{padding-top:0}
  .page-contact .contact-details{margin-top:24px;gap:20px}
  .page-contact .contact-panel{gap:28px}
  .r-solutions .r-solutions-nature{position:relative;display:block}
  .r-solutions .r-solutions-nature h3{padding-right:68px;min-height:56px}
  .r-solutions .r-solutions-bird{position:absolute;top:0;right:0;width:56px}
}

/* Contornos originales amplios: una textura, sin mosaico ni recorte en rail.
   La geometría permanece íntegra; el color se desvanece hacia el interior y
   los extremos verticales de la textura se funden con el fondo de la sección. */
@media(max-width:1100px){
  .r-home .r-home-solutions,
  .r-home .r-home-project,
  .r-home .r-home-services,
  .r-home .r-home-cta,
  .r-how .r-how-act{
    --wave-depth:clamp(200px,28vw,280px);
    --wave-rgb:24,48,92;
    --wave-direction:to left;
    --wave-position:right -84px bottom 0;
    background-image:none;
  }
  .r-home .r-home-solutions,
  .r-how .r-how-act{--wave-rgb:255,255,255}
  .r-home .r-home-services,
  .r-how .r-how-act{
    --wave-direction:to right;
    --wave-position:left -154px bottom 0;
  }
  .r-home .r-home-solutions::before,
  .r-home .r-home-project::before,
  .r-home .r-home-services::before,
  .r-home .r-home-cta::before,
  .r-how .r-how-act::before{
    content:"";
    position:absolute;
    inset:0;
    width:auto;
    height:auto;
    z-index:0;
    pointer-events:none;
    opacity:1;
    mix-blend-mode:normal;
    background-color:transparent;
    background-image:linear-gradient(
      var(--wave-direction),
      rgba(var(--wave-rgb),.14) 0,
      rgba(var(--wave-rgb),.12) calc(var(--wave-depth)*.22),
      rgba(var(--wave-rgb),.08) calc(var(--wave-depth)*.50),
      rgba(var(--wave-rgb),.025) calc(var(--wave-depth)*.80),
      transparent var(--wave-depth)
    );
    background-position:0 0;
    background-size:100% 100%;
    background-repeat:no-repeat;
    mask-image:url('assets/optimized/images/36d7b8c779adf9b967c96ddee488b705.webp'),linear-gradient(
      to bottom,
      transparent 0%,
      #000 16%,
      #000 82%,
      transparent 100%
    );
    mask-mode:luminance,alpha;
    /* 3200/1479: conserva la proporción del archivo original. */
    mask-size:840px 388.2375px,100% 388.2375px;
    mask-position:var(--wave-position),center bottom;
    mask-repeat:no-repeat,no-repeat;
    mask-composite:intersect;
  }
}
