/* Institutional content update. Keeps the existing apoyaRSE visual identity. */
:root { --editorial-green: #236a35; }
html { scroll-padding-top: 120px; }
[id] { scroll-margin-top: 120px; }
main:focus { outline: none; }
.skip-link { position: fixed; left: 16px; top: -100px; z-index: 2000; background: white; color: #173f29; padding: 12px 20px; border: 2px solid #236a35; border-radius: 8px; }
.skip-link:focus { top: 12px; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid #1556a0; outline-offset: 4px; }
.btn-primary { background: #2e7d32; }
.btn-white { color: #236a35; }
.nav-links a.active { color: #236a35; }
.nav-links a.btn-primary { color: white; }
.editorial-section { background: white; }
.editorial-section .container { padding-left: 24px; padding-right: 24px; }
.editorial-tint { background: #f1f7f1; }
.editorial-section h2 { font-size: clamp(1.65rem, 3vw, 2.4rem); max-width: 850px; margin: 0 0 24px; color: #233d32; }
.editorial-section > .container > p { max-width: 940px; margin: 0 0 20px; }
.editorial-section h3 { margin: 28px 0 14px; font-size: 1.2rem; }
.editorial-lead { font-size: 1.15rem; line-height: 1.75; }
.editorial-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(100%,300px),1fr)); gap: 24px; margin: 30px 0; }
.editorial-card { background: #fff; padding: 30px; border: 1px solid #d9e6db; border-radius: 20px; min-width: 0; box-shadow: 0 5px 24px rgba(23,63,41,.035); }
.editorial-card h3 { margin: 0 0 16px; font-size: 1.28rem; color: #236a35; }
.editorial-card p + p { margin-top: 16px; }
.editorial-card .editorial-kicker { color: #52675b; font-size: .85rem; font-weight: 600; margin-bottom: 16px; }
.editorial-list { list-style: disc; padding-left: 22px; margin: 18px 0; }
.editorial-list li { padding-left: 3px; margin: 0 0 12px; }
.editorial-link { color: #236a35; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.editorial-card > .editorial-link { display: inline-block; margin-top: 20px; }
.editorial-note { font-size: .92rem; color: #536258; line-height: 1.7; margin-top: 20px !important; }
.editorial-callout { border-left: 4px solid #2e7d32; background: white; padding: 28px 32px; border-radius: 0 16px 16px 0; margin: 24px 0; }
.editorial-callout h3 { margin-top: 0; }
.editorial-callout p + p { margin-top: 18px; }
.editorial-line-logo { max-height: 75px; max-width: 100%; object-fit: contain; margin-bottom: 20px; }
.rating-table-wrap { overflow-x: auto; margin-top: 28px; }
.rating-table { width: 100%; border-collapse: collapse; background: white; text-align: left; }
.rating-table caption { text-align: left; font-weight: 600; margin-bottom: 14px; }
.rating-table th, .rating-table td { padding: 18px 22px; border-bottom: 1px solid #d9e6db; vertical-align: top; }
.rating-table thead { background: #236a35; color: white; }
.rating-table tbody th { color: #236a35; white-space: nowrap; }
.rating-table tbody tr:last-child { background: #f5f6f5; }
.editorial-cta { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.editorial-cta .btn { flex-shrink: 0; }
.editorial-cta p { margin-top: 14px; }
.hero { padding-bottom: 180px; min-height: 760px; }
.hero-content { padding: 0 20px; max-width: 940px; }
.hero h1 { font-size: clamp(2.15rem, 4.6vw, 3.8rem); }
.hero p { max-width: 730px; }
.hero-stat span { max-width: 190px; }
.contact-form-light label { display: block; font-weight: 600; margin-bottom: 8px; }
.contact-info a { overflow-wrap: anywhere; }
.form-status { margin-top: 18px; font-size: .95rem; }
.form-status[data-state="error"] { color: #9b2525; }
.form-status[data-state="success"] { color: #236a35; }
.contact-form-light button:disabled { cursor: wait; opacity: .7; }
.site-footer a[href="privacidad.html"] { text-decoration: underline; text-underline-offset: 3px; }
/* Progressive enhancement: content stays readable if scripts are unavailable. */
.reveal { opacity: 1; transform: none; }
.noticia-featured__highlights { list-style: none; }
.logos-track-wrapper { width: 100%; max-width: 100%; overflow: hidden; }
.clientes-areas-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.clientes-area-card { min-width: 0; }
.area-header { flex-wrap: wrap; }
@media (max-width: 920px) {
  .nav-container { margin-left: 16px; margin-right: 16px; }
  .nav-links { max-height: calc(100dvh - 130px); overflow-y: auto; }
  .hero { min-height: 740px; }
}
@media (max-width: 640px) {
  .editorial-section { padding: 48px 0; }
  .editorial-section .container { padding-left: 20px; padding-right: 20px; }
  .editorial-grid { gap: 16px; grid-template-columns: 1fr; }
  .editorial-card { padding: 24px; }
  .editorial-callout { padding: 22px; }
  .editorial-cta { flex-direction: column; align-items: flex-start; }
  .hero { margin-left: 10px; margin-right: 10px; min-height: 780px; padding-top: 145px; padding-bottom: 220px; }
  .hero p { font-size: 1rem; margin-bottom: 26px; }
  .hero-stats-bar { width: calc(100% - 24px); padding: 18px 10px; gap: 10px; }
  .hero-stat { flex: 1; min-width: 0; }
  .hero-stat strong { font-size: 1.3rem; }
  .hero-stat span { font-size: .64rem; line-height: 1.5; }
  .hero-stat-divider { flex-shrink: 0; }
  .contact-container { grid-template-columns: 1fr !important; }
  .rating-table th,.rating-table td { padding: 14px 12px; }
  .clientes-areas-grid { grid-template-columns: 1fr; }
  .clientes-area-card { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .logos-track { animation: none !important; width: auto; flex-wrap: wrap; justify-content: center; }
  .logos-track [aria-hidden="true"] { display: none; }
}

/* Securethra launch and additional contact locations */
.securethra-launch {background: #edf5fa;}
.securethra-layout {display:grid;grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr);gap:56px;align-items:center;}
.securethra-art-link {display:block;max-width:460px;}
.securethra-art-link img {display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 12px 40px #16395318;}
.securethra-copy {min-width:0;}
.securethra-copy h2 {font-size:clamp(1.8rem,3vw,2.8rem);margin-bottom:22px;color:#092b50;}
.securethra-copy p {margin-bottom:18px;}
.securethra-intro {font-size:1.18rem;font-weight:600;}
.securethra-actions {display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:26px;}
.contact-locations {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;text-align:center;padding:0 20px;}
.contact-locations h3 {margin-bottom:14px;}
.contact-locations p {margin-bottom:22px;}
.footer-contact a {overflow-wrap:anywhere;}
@media(max-width:760px){.securethra-layout{grid-template-columns:1fr;gap:30px;}.securethra-art-link{max-width:420px;margin:auto;}.contact-locations{grid-template-columns:1fr;}}

/* Securethra follows the RSE milestone inside Latest News. */
.home-protege-news {margin-top:40px;}
.home-protege-news p {margin-top:18px;}
.securethra-news-item {margin-top:40px;padding:32px;border-radius:24px;}
.securethra-news-item .securethra-copy h3 {font-size:clamp(1.6rem,3vw,2.4rem);margin-bottom:22px;color:#092b50;}
@media(max-width:640px){.securethra-news-item{padding:20px;}}
