/* SEI · Identidad corporativa B3 + B2 · escala tipográfica aprobada el 10/11/2026 (mínimo 16 px de lectura; excepciones E1–E8) */
:root{--b-g:#212829;--b-gw:#26221C;--b-g2:#3A4245;--b-tx:#2B3336;--b-tx2:#4B5356;--b-tx3:#626A6E;--b-bd:#D9DCDD;--b-arena:#F1EBE1;--b-acc:#A0723C;--b-logo:#CA9E72;
  --navy:#212829;--navy-d:#26221C;--cobalt:#3A4245;--cobalt-lt:#6B7275;--sage:#212829;--sage-lt:#000;--ochre:#A0723C;--ochre-lt:#CA9E72;
  --fog:#F1EBE1;--fog-md:#EAE2D5;--tx:#2B3336;--tx-lt:#4B5356;--tx-xlt:#626A6E;--border:#D9DCDD;--border-lt:#E4E6E7;--white:#FFFFFF;
  /* Escala acordada (apartado 10 de la auditoría responsive) */
  --f-h1:clamp(34px,1.6vw + 24px,56px);--f-h2:clamp(26px,1.1vw + 22px,38px);--f-h3:clamp(19px,.45vw + 14.5px,24px);--f-h4:clamp(16px,.2vw + 15px,18px);
  --f-body:17px;--f-lead:clamp(18px,.2vw + 17px,20px);--f-lab:12.5px;--f-btn:16px;--f-nav:15px}
html,body{font-family:IBM Plex Sans,Segoe UI,Arial,sans-serif}
body{background:#fff;font-size:var(--f-body)}
::selection{background:#CA9E72;color:#212829}

/* ─── Tipografía ─── */
h1,h2,h3,h4{font-weight:600!important;letter-spacing:-.015em;font-style:normal;text-wrap:balance}
h1 *,h2 *,h3 *{font-style:normal!important}
h1{font-size:var(--f-h1)!important;line-height:1.08!important}
.pl-h2{font-size:var(--f-h2)!important;line-height:1.12!important}
.pl-h2l{font-size:clamp(21px,.4vw + 18px,24px)!important;line-height:1.2!important;margin-top:1.6em}
.pl-h3{font-size:var(--f-h3)!important;line-height:1.2!important}
.pl-h4{font-size:var(--f-h4)!important;line-height:1.3!important}
.pl-lab{font-family:IBM Plex Mono,Consolas,monospace!important;font-size:var(--f-lab)!important;letter-spacing:.06em!important;font-weight:500!important;line-height:1.4!important}
main p,section p,article p{line-height:1.65;text-wrap:pretty}
.art-wrap :is(p,li):not(:is([class*="card"],[class*="rel"],nav,aside,[class*="meta"],[class*="sumario"],table) *){font-size:var(--f-body)!important;line-height:1.7!important}
.pl-min{font-size:16px!important;line-height:1.5}
:is(button,[class*="btn"]).pl-lab,:is(button,[class*="btn"]) .pl-lab{letter-spacing:.05em!important}
[class*="hero"] [class*="lead"],[class*="hero"] [class*="sub"],[class*="hero"] [class*="intro"],.art-hero__lead,.art-hero__sub{font-size:var(--f-lead)!important;line-height:1.55!important}
h1 :is(span,em,i,strong){font-weight:400!important}
:is(h1,h2) :is(span,em,i):not([class*="__r"]){font-weight:400}
main :is(h1,h2) span[style*="color"],.sei-ride__claim span{color:inherit!important}
[class*="hero"] :is(h1,h2) :is(span,em,i,strong){color:rgba(255,255,255,.86)!important}


/* ─── Menú: grafito cálido, 15 px (E1) ─── */
.sei-nav,#sei-nav{background:rgba(38,34,28,.98)!important}
.sei-nav a,.sei-footer a{text-decoration:none!important}
/* Textos de cabecera interior: medida contenida para no invadir la parte clara de la foto */
:is(.pt-hero,.es-hero,.cp-hero,.ps-hero,.ns-hero,.cnt-hero,.rd-hero,.art-hero) :is(p,ul){max-width:min(54ch,100%)}
:is(.pt-hero,.es-hero,.cp-hero,.ps-hero,.ns-hero) h1{max-width:15ch}
.sei-nav__links a{font-size:var(--f-nav)!important;font-weight:500!important;letter-spacing:0!important;text-transform:none!important}
.sei-nav__cta,.sei-nav__mob-cta,.nav-cta{background:#fff!important;color:#212829!important;border-radius:2px!important;font-size:var(--f-nav)!important;font-weight:500!important;text-transform:none!important;letter-spacing:0!important}
.sei-nav__cta:hover,.sei-nav__mob-cta:hover{background:#E9EAEA!important}
.sei-nav__mob a{font-size:16px!important;min-height:44px}
.sei-nav__mob-sub a{font-size:16px!important;color:rgba(255,255,255,.84)!important}
#sei-burger,.sei-nav__burger{background:transparent!important;border:0!important;min-width:44px;min-height:44px;-webkit-appearance:none;appearance:none}
.sei-lang__btn{border-radius:2px!important;font-size:15px!important}

/* ─── Antetítulos y etiquetas: monoespaciada, gris técnico ─── */
.sei-ey,.art-hero__cat,.art-sumario__title,.eyebrow,.sei-pcard__num,.sei-pivot__card-label,.sei-uso__num,.art-card__cat,.sei-art__cat,.sei-ecard__num,.sei-svc__num,.cnt-fsec-label,.cnt-contact-label,.rd-num,.pt-sec__col-num{font-family:IBM Plex Mono,Consolas,monospace!important;color:#626A6E!important;letter-spacing:.06em!important;font-size:var(--f-lab)!important;font-weight:500!important}
.sei-ey::before,.sei-ey::after{background:#A0723C!important}
:is([class*="hero"],.act-cierre,.pt-cta,.es-enfoque,.rd-final,.ps-cta,.ns-vision):not(.pl-light) :is(.sei-ey,.art-hero__cat,.pl-lab),.sei-hero .sei-ey{color:#CA9E72!important}
.art-hero__cat{background:transparent!important;border-color:rgba(202,158,114,.45)!important}

/* ─── Botones: un solo sistema, 16 px ─── */
.sei-btn,.btn,.cbtn,.btn-p,.btn-g,.tab-btn,.modal__btn,.pt-dossier__btn,.es-como__dossier-btn,button[type=submit]{border-radius:2px!important;text-transform:none!important;letter-spacing:0!important;font-family:IBM Plex Sans,Arial,sans-serif!important;font-weight:500!important;font-size:var(--f-btn)!important;min-height:48px}
.sei-btn--primary,.sei-btn--sage,.sei-btn--navy,.btn--sage,.btn--navy,.cbtn--main,.btn-p,.btn-sage,.tab-btn--sage,.modal__btn,.pt-dossier__btn,button[type=submit],#sei-submit-btn{background:#212829!important;border-color:#212829!important;color:#fff!important}
.sei-btn--primary:hover,.sei-btn--sage:hover,.btn--sage:hover,.cbtn--main:hover,button[type=submit]:hover{background:#000!important}
.sei-btn--outline,.btn--line,.cbtn--line,.pl-light :is(.sei-btn--ghost,.btn--outline,.cbtn--light,.btn-g){background:transparent!important;color:#212829!important;border:1.5px solid #212829!important}
/* sobre oscuro (solo cabeceras): blanco */
:is([class*="hero"],.act-cierre,.pt-cta,.es-enfoque,.rd-final,.ps-cta,.ns-vision):not(.pl-light) :is(.sei-btn--primary,.sei-btn--sage,.sei-btn--navy,.btn--sage,.btn--navy,.cbtn--main,.btn-p,.btn-sage,.sei-btn){background:#fff!important;border-color:#fff!important;color:#212829!important}
:is([class*="hero"],.act-cierre,.pt-cta,.es-enfoque,.rd-final,.ps-cta,.ns-vision):not(.pl-light) :is(.sei-btn--ghost,.btn--outline,.cbtn--light,.btn-g){background:transparent!important;color:#fff!important;border:1.5px solid rgba(255,255,255,.7)!important}

/* ─── Formularios: campos de 48 px y texto de 16 px ─── */
input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]),select{min-height:48px!important;font-size:16px!important}
textarea{font-size:16px!important}
label{font-size:16px}

/* ─── Enlaces y recuadros ─── */
.art-wrap a:not([class]),.art-wrap p a,.art-wrap li a,main p a:not([class]){color:#212829!important;text-decoration:underline!important;text-decoration-color:#A0723C!important;text-decoration-thickness:2px!important;text-underline-offset:4px}
.rel-card__cta,.sei-art__read,.sei-pivot__card-cta{color:#212829!important;border-color:#A0723C!important}
.art-callout{background:#F1EBE1!important;border-color:#E4D8C6!important;border-left:2px solid #A0723C!important}
.art-callout--red{background:rgba(192,57,43,.06)!important;border-left-color:#C0392B!important}
.art-callout__txt strong{color:#212829!important}

/* ─── Fondos: blanco base, arena en bandas ─── */
.art-body,.art-main,main.art,.art-wrap{background:transparent}
body:has(.art-wrap){background:#fff!important}
.sei-usos,.sei-ride,#servicios,.sei-services{background:#fff!important}

/* ─── Bandas que eran oscuras -> claras (el grafito queda en cabecera y pie) ─── */
.pl-light{background-color:#F1EBE1!important;background-image:none!important;color:#4B5356!important}
.pl-light::before,.pl-light::after{background-image:none!important}
.sei-what.pl-light,.ns-vision.pl-light,.pt-exec.pl-light,.blog-cta.pl-light,.cta-s.pl-light{background-color:#fff!important}
.pl-light .pl-ink,.pl-light :is(h1,h2,h3,h4){color:#212829!important}
.pl-light .pl-tx{color:#4B5356!important}
.pl-light .pl-mute{color:#626A6E!important}
.pl-light :is(hr,[class*="line"],[class*="sep"],[class*="divider"]){border-color:#D9DCDD!important}
.pl-light [class*="card"],.pl-light [class*="item"]{border-color:#D9DCDD!important}
.pl-light :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:#fff!important;color:#212829!important;border:1px solid #C9CDCF!important;border-radius:2px!important}
.pl-light :is(input,textarea)::placeholder{color:#626A6E!important}
.pl-light label,.pl-light legend{color:#2B3336!important}
.pl-light :is(.sei-pcard,.sei-ecard,.sei-svc,[class*="__card"]){background:#fff!important}

/* ─── Portada: cabecera B3 ─── */
.sei-hero__claim{font-weight:600!important;letter-spacing:-.02em}
.sei-hero__claim em{font-style:normal!important;font-weight:400!important;color:rgba(255,255,255,.86)!important}
.sei-hero__technical,.sei-hero__para-list li{color:rgba(255,255,255,.88)!important}
.sei-hero__technical{font-size:var(--f-lead)!important;line-height:1.55!important;max-width:60ch}
.sei-hero__para-list li{font-size:16px!important}
.sei-hero__para-list li::before{color:#CA9E72!important;background:#CA9E72!important}
.sei-hero__forks{border-radius:0!important;border:0!important;background:transparent!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;gap:2px!important}
.sei-hero__fork{background:rgba(38,34,28,.80)!important;border:0!important;border-top:2px solid #CA9E72!important}
.sei-hero__fork:hover{background:rgba(38,34,28,.92)!important}
.sei-hero__fork-title{text-transform:none!important;letter-spacing:0!important;font-size:17px!important;font-weight:600!important;color:#fff!important}
.sei-hero__fork-desc{color:rgba(255,255,255,.86)!important;font-size:16px!important}
.sei-hero__fork-cta{filter:none!important;color:#fff!important;text-decoration:underline;text-decoration-color:#CA9E72;text-decoration-thickness:2px;text-underline-offset:5px;font-size:16px!important}
.sei-hero__credit{font:400 14px IBM Plex Sans,Arial,sans-serif!important;color:rgba(255,255,255,.9)!important;background:rgba(38,34,28,.86);padding:6px 10px}
.sei-hero__dot{width:12px!important;height:12px!important;margin:6px!important}.sei-hero__dot.active{background:#CA9E72!important}
/* Composición B3.1: ≥1440 bloques superpuestos a la derecha · 1024–1439 fila de 4 bajo el texto · <1024 rejilla 2 · <640 una columna */
@media (min-width:1440px){
  .sei-hero{min-height:clamp(716px,44vw,860px)!important}
  .sei-hero__inner{padding:96px var(--pad,56px) 150px!important}
  .sei-hero__text{max-width:none!important;width:clamp(500px,34vw,600px)!important}
  .sei-hero__forks{left:auto!important;right:56px!important;bottom:72px!important;width:clamp(780px,47vw,880px)!important}
}
@media (max-width:1439px){
  .sei-hero{min-height:auto!important;display:flex;flex-direction:column}
  .sei-hero__inner{padding-bottom:40px!important}
  .sei-hero__text{max-width:min(640px,100%)!important}
  .sei-hero__forks{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;top:auto!important;transform:none!important;width:auto!important;margin:0 var(--pad,32px) 48px!important;display:grid!important;grid-template-columns:repeat(4,1fr);z-index:3}
  .sei-hero__fork{max-width:none!important;flex:none!important}
}
@media (max-width:1023px){.sei-hero__forks{grid-template-columns:1fr 1fr}}
h1.sei-hero__claim{font-size:clamp(34px,3vw,56px)!important}
.sei-hero__fork-cta{white-space:nowrap!important;display:inline-flex!important;gap:8px!important;justify-content:flex-start!important;width:auto!important}
@media (min-width:1024px) and (max-width:1439px){
  .sei-hero__text{max-width:min(600px,50%)!important}
  .sei-hero__overlay{background:linear-gradient(90deg,rgba(38,34,28,.96) 0,rgba(38,34,28,.92) 38%,rgba(38,34,28,.6) 56%,rgba(38,34,28,.25) 74%,rgba(38,34,28,.12) 100%),linear-gradient(0deg,rgba(38,34,28,.85) 0,rgba(38,34,28,0) 45%)!important}
}
@media (max-width:640px){.sei-hero__forks{grid-template-columns:1fr;margin:0!important}.sei-hero__fork{border-top:1px solid rgba(255,255,255,.18)!important}}

/* ─── Pie: grafito ─── */
.sei-footer,footer.sei-footer{background:#212829!important;border-top:0!important}
.sei-footer,.sei-footer p,.sei-footer__brand{color:#D4D7D8!important;font-size:16px}
.sei-footer a,.sei-footer__nav a,.sei-footer__brand a{color:#E6E8E9!important;font-size:15px!important}
.sei-footer a:hover{color:#CA9E72!important}
.sei-footer__col-title{color:#B9BEC0!important;font-family:'IBM Plex Mono',monospace!important;font-size:12.5px!important;letter-spacing:.06em!important}
.sei-footer__brand strong{color:#fff!important}
.sei-footer__copy{color:#B9BEC0!important;font-size:13px!important}
.sei-footer__logo{content:url(/assets/photos/logo-sei-transparent.png);mix-blend-mode:normal!important}
.sei-footer__bottom{border-color:#3A4245!important}
.sei-footer__nav a{display:inline-block;padding:4px 0}

/* Foco visible */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid #A0723C!important;outline-offset:2px}
/* Cierres fotográficos oscuros: sin palabras resaltadas en arena dentro del titular */
:is(.act-cierre,.pt-cta,.es-enfoque,.rd-final,.ps-cta,.ns-vision) :is(h1,h2) :is(span,em,i,strong){color:rgba(255,255,255,.86)!important}
/* Índice de artículo: interlineado propio (no hereda el del texto corrido) */
.art-sumario__list li{font-size:16px!important;line-height:1.45!important;margin:0 0 10px!important}
.art-sumario__list li a{font-size:16px!important;text-underline-offset:3px!important}
/* Casilla de privacidad del formulario: texto en una sola columna */
.cnt-privacy{display:block!important;line-height:1.5!important;font-size:16px!important}
.cnt-privacy input{margin:0 8px 0 0!important;vertical-align:-2px;width:18px;height:18px}
/* Móvil y tableta estrecha: cabecera de portada con velo grafito suficiente; flechas fuera del texto */
@media (max-width:1023px){
  .sei-hero__overlay{background:linear-gradient(180deg,rgba(38,34,28,.70) 0,rgba(38,34,28,.82) 45%,rgba(38,34,28,.94) 100%)!important}
}
@media (max-width:640px){.sei-hero__arrow{display:none!important}}
.cnt-privacy label{display:block!important}
.sei-lang__btn{font-size:15px!important}
.sei-footer a{text-transform:none!important;letter-spacing:0!important}
/* Red de seguridad de contraste (asignada al cargar) */
.pl-inv{color:rgba(255,255,255,.9)!important;text-decoration-color:#CA9E72!important}
.pl-mute2{color:#626A6E!important}
.pl-g0{color:#4B5356!important}.pl-g1{color:#2B3336!important}.pl-g2{color:#212829!important}
/* Etiquetas y números pequeños: gris técnico (el tierra #A0723C queda para filetes y tamaños grandes) */
/* Página de agradecimiento: pie y botón con el sistema común */
/* prioridad de la red de contraste sobre reglas de sección */
body .pl-g0.pl-g0{color:#4B5356!important}body .pl-g1.pl-g1{color:#2B3336!important}body .pl-g2.pl-g2{color:#212829!important}body .pl-inv.pl-inv{color:rgba(255,255,255,.9)!important}
/* Tarjetas fotográficas de usos (portada): velo grafito bajo el texto y textos claros */
.sei-uso__body{background:linear-gradient(0deg,rgba(38,34,28,.94) 0,rgba(38,34,28,.86) 55%,rgba(38,34,28,.55) 80%,rgba(38,34,28,0) 100%)!important;padding-top:44px!important}
body .sei-uso__num.sei-uso__num{color:rgba(255,255,255,.86)!important}
body .sei-uso__cta.sei-uso__cta{color:#fff!important;text-decoration:underline!important;text-decoration-color:#CA9E72!important;text-decoration-thickness:2px!important;text-underline-offset:4px}
/* Carrusel de aplicaciones (pavimentos terrizos) */
.pt-app__slide-info{background:linear-gradient(0deg,rgba(38,34,28,.92) 0,rgba(38,34,28,.7) 60%,rgba(38,34,28,0) 100%)!important;padding-top:56px!important}
body .pt-app__slide-num.pt-app__slide-num{color:rgba(255,255,255,.86)!important}
body .pt-app__slide-desc.pt-app__slide-desc{color:rgba(255,255,255,.92)!important}
/* Móvil: velos algo más densos donde la etiqueta queda sobre zonas claras de la foto */
@media (max-width:640px){
  .sei-hero__overlay{background:linear-gradient(180deg,rgba(38,34,28,.82) 0,rgba(38,34,28,.86) 45%,rgba(38,34,28,.95) 100%)!important}
  .act-cierre__overlay{background:rgba(38,34,28,.86)!important}
  .sei-uso__body{background:linear-gradient(0deg,rgba(38,34,28,.95) 0,rgba(38,34,28,.9) 60%,rgba(38,34,28,.6) 85%,rgba(38,34,28,0) 100%)!important}
}
/* Comparador antes/después: etiquetas sobre la foto siempre claras sobre chip grafito */
body .sei-slider__tag.sei-slider__tag{color:#fff!important;background:rgba(38,34,28,.88)!important}
body .sei-slider__tag--after.sei-slider__tag--after{background:#212829!important}
/* Lema de RIDE sin palabra resaltada en color */
.rd-hero__tag span{color:inherit!important}

/* ─── Escala aprobada 10/11/2026: excepciones cerradas ─── */
.sei-nav a{font-size:var(--f-nav)}                                   /* E1 menú y submenú de escritorio 15 px */
.sei-footer__brand a{font-size:16px!important}                       /* datos de contacto del pie 16 px */
.pl-meta{font-size:14px!important;line-height:1.45!important}        /* E3 metadatos */
.pl-kw{font-size:14px!important;line-height:1.5!important}           /* E5 palabras clave */
.pl-flab{font-size:14px!important;letter-spacing:.04em!important}     /* E6 etiqueta de campo */
.pl-num{font-size:clamp(40px,3.5vw,64px)!important;line-height:1!important}  /* E8 cifras destacadas */
/* Numeraciones y cifras (E4 y E8) · tierra solo en tamaño grande; en pequeño, gris técnico o arena sobre oscuro */
.proy__num,.sei-wcard__num,.sei-svc__num{font-family:IBM Plex Mono,Consolas,monospace!important;font-size:12.5px!important;letter-spacing:.06em!important}
.proy__num{color:rgba(255,255,255,.86)!important}
.sei-wcard__num{color:#626A6E!important}
.pt-evol__cnum,.pt-ctrl__node-num{color:#4B5356!important}
.sei-mega__ey,.proy__tipo{color:#CA9E72!important}
.art-dato__num{font-size:clamp(40px,3.5vw,64px)!important;line-height:1!important}
main :is(h2,h3) > span:not([class]){color:inherit!important}
/* ─── Ajuste 10/11/2026 · Portada: las 4 tarjetas en una sola fila centrada en la parte inferior de la cabecera ─── */
@media (min-width:1024px){
  .sei-hero:not(.sei-hero--compact){display:flex!important;flex-direction:column!important}
  .sei-hero:not(.sei-hero--compact) .sei-hero__cnt{flex:1 1 auto!important}
  .sei-hero__forks{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;transform:none!important;
    width:min(1240px,calc(100% - 2 * var(--pad,40px)))!important;margin:0 auto 64px!important;
    display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:2px!important;z-index:4}
  .sei-hero__fork{max-width:none!important;flex:none!important}
}
@media (min-width:1440px){
  .sei-hero:not(.sei-hero--compact) .sei-hero__inner{padding-bottom:48px!important}
}
@media (min-width:641px) and (max-width:1023px){
  .sei-hero__forks{width:calc(100% - 2 * var(--pad,32px))!important;margin:0 auto 48px!important}
}
@media (max-width:640px){
  .sei-hero__forks{margin:0 0 56px!important}   /* deja sitio al pie de foto y a los puntos del carrusel */
}
