/* Etapa 2 NEXPOS: refinamiento visual y móvil, sin modificar contenidos. */
:root { --focus-ring:#f0ab29; }
html { scroll-padding-top:105px; }
body { overflow-x:clip; }
img,svg,video { max-width:100%; }
.container { max-width:1540px; padding-left:clamp(20px,4vw,76px); padding-right:clamp(20px,4vw,76px); }
.header .nav { min-height:82px; height:auto; }
.header .menu a { transition:color .18s ease; }
.header .menu a:focus-visible, .header .hamburger:focus-visible,
.header .btn:focus-visible, .editorial-home-footer-links a:focus-visible,
.whatsapp-contact:focus-visible { outline:3px solid var(--focus-ring);outline-offset:4px; }
.hero-carousel .hero-slide { isolation:isolate; }
.hero-carousel .hero-copy h1 { text-wrap:balance; }
.hero-carousel .hero-copy .lead { font-size:clamp(19px,1.55vw,23px);line-height:1.6; }
.editorial-feature-list a,.editorial-case,.editorial-faq-list details,
.industry-card,.value-grid article { transition:transform .18s ease, box-shadow .18s ease,border-color .18s ease; }
@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .editorial-feature-list a:hover,.editorial-case:hover,.industry-card:hover,
  .value-grid article:hover { transform:translateY(-3px);box-shadow:0 12px 32px #0c4b3520; }
}
.editorial-case-body p,.value-grid p { overflow-wrap:break-word; }
.editorial-feature-list a { align-items:center;min-height:76px; }
.editorial-home-footer-links { padding:22px clamp(20px,4vw,76px);line-height:1.5; }
.editorial-home-footer-links a { padding:7px 4px; }

/* Tablets: separar el mensaje y la fotografía y evitar navegación comprimida. */
@media (max-width:1024px) {
  .header .nav { min-height:76px; }
  .header .hamburger { display:inline-flex;align-items:center;justify-content:center;
    width:48px;height:48px;border:1px solid #c9ddce;border-radius:12px;background:#fff;flex-shrink:0; }
  .header .menu { display:none;position:absolute;left:0;right:0;top:100%;padding:18px clamp(20px,4vw,46px) 25px;
    background:#fff;box-shadow:0 15px 30px #093e291a;flex-direction:column;align-items:stretch;gap:0;
    font-size:18px;max-height:calc(100dvh - 90px);overflow-y:auto; }
  .header .menu.open { display:flex; }
  .header .menu a { display:block;padding:14px 10px;border-bottom:1px solid #e8efe8;white-space:normal; }
  .header .nav>.btn { display:none; }
  .hero-carousel .hero-grid { display:flex;flex-direction:column;min-height:0;gap:18px; }
  .hero-carousel .hero-copy { width:100%;padding:clamp(35px,5vw,62px) 0 0; }
  .hero-carousel .hero-copy h1 { max-width:890px;font-size:clamp(42px,6vw,66px); }
  .hero-carousel .hero-copy .lead { max-width:820px; }
  .hero-carousel .hero-art { position:relative;width:100%;aspect-ratio:16/9!important;height:auto!important;
    min-height:0!important;border-radius:24px;overflow:hidden;background:#e7eee5; }
  .hero-carousel .hero-art .photo { inset:0!important;border-radius:24px!important;
    background-size:contain!important;background-repeat:no-repeat!important;
    background-position:center!important;box-shadow:none!important; }
  .hero-carousel .hero-art .blob { display:none; }
  .hero-carousel .hero-art .float-card { right:18px;top:18px;left:auto;bottom:auto; }
  .hero-carousel-controls { justify-content:center;margin-top:16px; }
  .editorial-feature-grid,.editorial-trust-grid { grid-template-columns:1fr;gap:30px; }
  .editorial-feature-grid>*,.editorial-trust-grid>* { min-width:0; }
  .editorial-feature-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .editorial-cases-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .header .nav { min-height:72px; }
  .hero-carousel .hero-copy { padding-top:27px; }
  .hero-carousel .hero-copy h1 { font-size:clamp(34px,8.4vw,49px);line-height:1.13;letter-spacing:-.045em; }
  .hero-carousel .hero-copy .lead { font-size:19px;line-height:1.55; }
  .hero-carousel .hero-art { aspect-ratio:3/2!important;border-radius:18px; }
  .hero-carousel .hero-art .photo { border-radius:18px!important; }
  .hero-carousel .hero-art .float-card { display:none!important; }
  .hero-carousel .hero-actions { flex-direction:column;align-items:stretch; }
  .hero-carousel .hero-actions .btn { width:100%;font-size:17px;min-height:52px; }
  .hero-carousel-controls { gap:10px; }
  .editorial-feature,.editorial-cases,.editorial-faq,.editorial-trust { padding-top:65px;padding-bottom:65px; }
  .editorial-feature-list,.editorial-cases-grid { grid-template-columns:1fr; }
  .editorial-feature-list a { min-height:69px;font-size:19px; }
  .editorial-case h3 { font-size:27px; }
  .editorial-case p,.editorial-faq-list p { font-size:18px; }
  .editorial-faq-list summary { font-size:19px; }
  .editorial-faq-list details { padding:19px; }
  .editorial-home-footer-links { justify-content:flex-start;gap:9px 18px; }
  .editorial-home-footer-links a { min-height:42px;display:inline-flex;align-items:center; }
  .whatsapp-contact { bottom:calc(12px + env(safe-area-inset-bottom,0px)); }
}
@media (max-width:390px) {
  .hero-carousel .hero-copy h1 { font-size:33px; }
  .hero-carousel .hero-art { aspect-ratio:3/2!important; }
  .editorial-feature h2,.editorial-cases h2,.editorial-faq h2,.editorial-trust h2 { font-size:34px; }
  .hero-carousel .hero-dots button { width:40px;height:40px; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important;transition:none!important;animation-duration:.01ms!important; }
}
