/* ======================================================================
   DIFUSOR V120 · Lectura de fichas
   Objetivo: reducir fatiga visual y corregir contraste en las fichas que
   se abren desde Servicios, Difusor e Infraestructura.
   Mantiene intacta la estética cinematográfica general y el Portafolio V119.
   ====================================================================== */

/* ----------------------------------------------------------------------
   1. SERVICIOS + DIFUSOR · diálogos claros de lectura
   ---------------------------------------------------------------------- */
body.v73-home .service-detail,
body.v73-home .origin-detail,
body.v73-home .timeline-detail{
  border:1px solid rgba(13,86,120,.22)!important;
  background:#f6f9fb!important;
  color:#102a39!important;
  box-shadow:0 34px 105px rgba(3,18,27,.34),0 0 0 1px rgba(255,255,255,.76)!important;
}

body.v73-home .service-detail::backdrop,
body.v73-home .origin-detail::backdrop,
body.v73-home .timeline-detail::backdrop{
  background:rgba(4,17,24,.64)!important;
  -webkit-backdrop-filter:blur(9px)!important;
  backdrop-filter:blur(9px)!important;
}

body.v73-home .service-detail-inner,
body.v73-home .origin-detail-inner,
body.v73-home .timeline-detail-inner{
  background:linear-gradient(180deg,#fbfdfe 0%,#f2f7f9 100%)!important;
  border-color:rgba(13,86,120,.12)!important;
  box-shadow:none!important;
  color:#102a39!important;
}

body.v73-home .service-detail-inner:after,
body.v73-home .origin-detail-inner:after,
body.v73-home .timeline-detail-inner:after{
  opacity:.035!important;
  filter:none!important;
}

body.v73-home .service-detail-close,
body.v73-home .origin-close,
body.v73-home .timeline-detail-close{
  border:1px solid #d2e0e6!important;
  background:#fff!important;
  color:#173746!important;
  box-shadow:0 5px 16px rgba(4,23,34,.08)!important;
}
body.v73-home .service-detail-close:hover,
body.v73-home .origin-close:hover,
body.v73-home .timeline-detail-close:hover{
  border-color:#0d5678!important;
  color:#0d5678!important;
  background:#f4fafc!important;
}

body.v73-home .service-detail-kicker,
body.v73-home .origin-kicker,
body.v73-home .timeline-detail-kicker{
  background:#e7f2f6!important;
  border:1px solid #cfe0e7!important;
  color:#0a516f!important;
}

body.v73-home .service-detail h3,
body.v73-home .origin-detail h3,
body.v73-home .timeline-detail h3{
  color:#0d2633!important;
  font-size:clamp(34px,4.6vw,54px)!important;
  line-height:1.02!important;
  letter-spacing:-.04em!important;
  text-wrap:balance!important;
}

body.v73-home .service-detail-lead,
body.v73-home .origin-lead,
body.v73-home .timeline-detail-lead{
  color:#35515e!important;
  font-size:17px!important;
  line-height:1.66!important;
  max-width:68ch!important;
}

body.v73-home .service-detail-subtitle{
  color:#0d5678!important;
}

body.v73-home .service-detail-list li{
  border:1px solid #d7e3e8!important;
  background:#fff!important;
  color:#294955!important;
  font-size:14px!important;
  line-height:1.5!important;
  box-shadow:0 5px 16px rgba(4,23,34,.035)!important;
}
body.v73-home .service-detail-list li:before{
  background:#0d5678!important;
  box-shadow:0 0 0 4px rgba(13,86,120,.10)!important;
}

body.v73-home .service-detail-ideal,
body.v73-home .origin-quote,
body.v73-home .timeline-detail-highlight{
  border-left-color:#0d5678!important;
  background:linear-gradient(90deg,#e8f2f6 0%,#f6fafb 100%)!important;
  color:#24424f!important;
  box-shadow:inset 0 0 0 1px rgba(13,86,120,.06)!important;
}

body.v73-home .origin-story,
body.v73-home .timeline-detail-story{
  max-width:70ch!important;
}
body.v73-home .origin-story p,
body.v73-home .timeline-detail-story p{
  color:#415d69!important;
  font-size:15.5px!important;
  line-height:1.78!important;
}
body.v73-home .origin-story strong,
body.v73-home .timeline-detail-story strong{
  color:#163746!important;
}

body.v73-home .service-detail-actions .cta-blue,
body.v73-home .origin-actions .cta-blue,
body.v73-home .timeline-detail-actions .cta-blue{
  border:1px solid #0d5678!important;
  background:#0d5678!important;
  color:#fff!important;
  box-shadow:0 8px 20px rgba(13,86,120,.18)!important;
}
body.v73-home .service-detail-actions .cta-blue:hover,
body.v73-home .origin-actions .cta-blue:hover,
body.v73-home .timeline-detail-actions .cta-blue:hover{
  background:#0a4967!important;
}
body.v73-home .service-detail-actions .cta-secondary,
body.v73-home .origin-actions .cta-secondary,
body.v73-home .timeline-detail-actions .cta-secondary{
  border:1px solid #cbdbe2!important;
  background:#fff!important;
  color:#173746!important;
}
body.v73-home .service-detail-actions .cta-secondary:hover,
body.v73-home .origin-actions .cta-secondary:hover,
body.v73-home .timeline-detail-actions .cta-secondary:hover{
  border-color:#8fb8c9!important;
  background:#f5fafc!important;
  color:#0d5678!important;
}

/* ----------------------------------------------------------------------
   2. INFRAESTRUCTURA · fichas técnicas nuevamente claras
   ---------------------------------------------------------------------- */
body.v73-internal .infra-main-section .infra-grid .infra-card,
body.v73-internal .infra-main-section .infra-detail{
  background:linear-gradient(180deg,#ffffff 0%,#f7fafb 100%)!important;
  border:1px solid #d7e3e8!important;
  color:#173746!important;
  box-shadow:0 12px 28px rgba(4,23,34,.07)!important;
  -webkit-backdrop-filter:none!important;
  backdrop-filter:none!important;
}
body.v73-internal .infra-main-section .infra-grid .infra-card:hover,
body.v73-internal .infra-main-section .infra-detail:hover{
  background:#fff!important;
  border-color:#86b5c8!important;
  box-shadow:0 18px 38px rgba(13,86,120,.13),0 6px 16px rgba(4,23,34,.07)!important;
}
body.v73-internal .infra-main-section .infra-card .num{
  color:#0d5678!important;
}
body.v73-internal .infra-main-section .infra-card h3,
body.v73-internal .infra-main-section .infra-detail h3{
  color:#0b4058!important;
}
body.v73-internal .infra-main-section .infra-card>p,
body.v73-internal .infra-main-section .infra-card p,
body.v73-internal .infra-main-section .infra-detail p{
  color:#405d69!important;
  font-size:13px!important;
  line-height:1.62!important;
}
body.v73-internal .infra-main-section .capability-line{
  background:#eaf3f6!important;
  border:1px solid #d6e5ea!important;
  color:#2c5261!important;
  line-height:1.48!important;
}
body.v73-internal .infra-main-section .equipment-label{
  color:#5e7884!important;
}
body.v73-internal .infra-main-section .tags2 span{
  background:#fff!important;
  border-color:#d6e2e7!important;
  color:#345663!important;
}
body.v73-internal .infra-main-section .infra-card:hover .tags2 span{
  border-color:#bcd3dd!important;
  background:#f8fbfc!important;
}

/* La introducción de Infraestructura también debe descansar sobre texto oscuro. */
body.v73-internal .infra-main-section .compact-page-intro p,
body.v73-internal .infra-main-section .head p{
  color:#435f6c!important;
}

/* ----------------------------------------------------------------------
   3. Accesibilidad y lectura móvil
   ---------------------------------------------------------------------- */
body.v73-home .service-detail :focus-visible,
body.v73-home .origin-detail :focus-visible,
body.v73-home .timeline-detail :focus-visible,
body.v73-internal .infra-main-section .infra-card:focus-within{
  outline:3px solid rgba(13,86,120,.28)!important;
  outline-offset:3px!important;
}

@media(max-width:620px){
  body.v73-home .service-detail-inner,
  body.v73-home .origin-detail-inner,
  body.v73-home .timeline-detail-inner{
    padding:28px 19px 24px!important;
  }
  body.v73-home .service-detail h3,
  body.v73-home .origin-detail h3,
  body.v73-home .timeline-detail h3{
    font-size:clamp(31px,10vw,42px)!important;
    margin-right:42px!important;
  }
  body.v73-home .service-detail-lead,
  body.v73-home .origin-lead,
  body.v73-home .timeline-detail-lead{
    font-size:16px!important;
    line-height:1.64!important;
  }
  body.v73-home .origin-story p,
  body.v73-home .timeline-detail-story p{
    font-size:15px!important;
    line-height:1.72!important;
  }
  body.v73-internal .infra-main-section .infra-grid .infra-card{
    padding:20px!important;
  }
}
