/* Defensa y Litigio — tema dyl. Tokens y componentes (spec §3, §4, §7). */
:root{
  --papel:#F5F5F4;--blanco:#FFFFFF;--niebla:#E4E4E2;--plomo:#808080;--plomo-texto:#666666;
  --carbon:#333333;--tinta:#1A1A1A;--ceniza:#BDBDBB;--borde-campo:#8C8C8A;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --interfaz:Montserrat,system-ui,-apple-system,"Segoe UI",sans-serif;
  --margen-lat:clamp(20px,5vw,64px);
  --medianil:24px;
  --entre-secciones:clamp(96px,12vw,192px);
  color-scheme:light;
}
@media (min-width:1200px){:root{--medianil:32px}}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:auto}
body{margin:0;background:var(--papel);color:var(--tinta);font-family:var(--serif);font-size:1.125rem;line-height:1.65;
  font-variant-numeric:oldstyle-nums;font-optical-sizing:auto;hanging-punctuation:first;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px;transition:text-decoration-thickness 120ms}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--tinta);outline-offset:3px}
p{margin:0 0 1.1em;text-wrap:pretty}
h1,h2,h3{margin:0;font-weight:400;text-wrap:balance}
ul,ol,dl,dd{margin:0}
[hidden]{display:none!important}
.sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:12px;top:-100px;z-index:100;background:var(--tinta);color:#fff;padding:12px 20px;font:500 .9375rem/1.2 var(--interfaz);text-decoration:none}
.skip:focus{top:12px}

/* Escala tipográfica */
.display{font-size:clamp(2.75rem,1.4rem + 5.6vw,6.25rem);line-height:1.02;letter-spacing:-.025em;font-weight:400}
h1,.h1{font-size:clamp(2.25rem,1.5rem + 3vw,4rem);line-height:1.06;letter-spacing:-.02em}
h2,.h2{font-size:clamp(1.75rem,1.3rem + 1.8vw,2.75rem);line-height:1.15;letter-spacing:-.015em}
h3,.h3{font-size:1.375rem;line-height:1.3;font-weight:600}
.entrada{font-size:clamp(1.1875rem,1rem + .6vw,1.4375rem);line-height:1.5}
.meta{font:500 .8125rem/1.4 var(--interfaz);color:var(--plomo-texto);font-variant-numeric:lining-nums}
.margen{font-style:italic;font-size:.9375rem;line-height:1.5;color:var(--plomo-texto)}
.ui{font:500 .9375rem/1.2 var(--interfaz);letter-spacing:.01em}

/* Retícula */
.wrap{width:100%;max-width:calc(1320px + 2*var(--margen-lat));margin-inline:auto;padding-inline:var(--margen-lat)}
.cols{display:block}
.sec{padding-block:calc(var(--entre-secciones)/2)}
.sec--oscura{background:var(--carbon);color:#fff}
.sec--oscura .margen,.sec--oscura .meta,.sec--oscura p{color:var(--ceniza)}
.sec--oscura h1,.sec--oscura h2,.sec--oscura h3{color:#fff}
@media (min-width:900px){
  .cols{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--medianil)}
  .c-margen{grid-column:1/4}
  .c-texto{grid-column:4/11}
  .c-titular{grid-column:1/12}
  .c-texto-ancho{grid-column:4/10}
}
.lectura>*{max-width:66ch}
.lectura h2,.lectura h3{margin-top:1.6em;margin-bottom:.5em}
.lectura>h2:first-child{margin-top:0}
.lectura ul,.lectura ol{padding-left:1.1em;margin:0 0 1.2em}
.lectura li{margin-bottom:.45em;padding-left:.2em}
.lectura li::marker{color:var(--plomo-texto)}

/* Página con margen: columna de notas + columna de texto */
.pagina{display:block}
.pagina>*{max-width:66ch}
@media (min-width:900px){
  .pagina{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--medianil);align-items:start}
  .pagina>*{grid-column:4/11;max-width:none}
  .pagina>.nota-margen{grid-column:1/4;max-width:none}
  .pagina>.ancho,.pagina>.niveles{grid-column:1/12}
  .pagina>.art-meta{grid-column:1/4;max-width:none}
  .pagina>*>*:last-child{margin-bottom:0}
}
.pagina h2{margin-top:1.4em;margin-bottom:.4em}
.pagina h2:first-child,.pagina>.entrada+h2{margin-top:1.4em}
.pagina ul{padding-left:1.1em;margin:0 0 1.2em;max-width:66ch}
.pagina li{margin-bottom:.45em}
.pagina li::marker{color:var(--plomo-texto)}

/* Nota al margen */
.nota-margen{margin:0 0 1.1em;font-style:italic;font-size:.9375rem;line-height:1.5;color:var(--plomo-texto);padding-left:16px;border-left:2px solid var(--niebla)}
.nota-margen a{color:inherit}
@media (min-width:900px){.nota-margen{padding-left:0;border-left:0;padding-top:.45em;margin-bottom:0}}
.sec--oscura .nota-margen{border-color:#555}

/* Botones y enlaces */
.btn{display:inline-block;background:var(--tinta);color:#fff;font:500 .9375rem/1.2 var(--interfaz);letter-spacing:.01em;padding:16px 28px;border:0;border-radius:2px;text-decoration:none;cursor:pointer;min-height:48px;transition:background-color 120ms}
.btn:hover{background:var(--carbon);text-decoration:none}
.btn:active{background:#000}
.btn--inv{background:#fff;color:var(--tinta)}
.btn--inv:hover{background:var(--niebla)}
.btn--inv:focus-visible,.sec--oscura :focus-visible{outline-color:#fff}
.enlace{font:500 .9375rem/1.2 var(--interfaz)}
.acciones{display:flex;flex-wrap:wrap;gap:20px 32px;align-items:center;margin-top:32px}

/* Cabecera */
.cab{position:sticky;top:0;z-index:50;background:var(--papel);border-bottom:1px solid transparent}
.cab.es-scroll{border-bottom-color:var(--niebla)}
.cab__in{height:64px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:inline-flex;align-items:center;gap:12px;color:var(--tinta);text-decoration:none;font:300 15px/1 var(--interfaz)}
.logo:hover{text-decoration:none}
.logo b{font-weight:700}
.logo .mono{height:32px;width:auto}
.mono-l{fill:var(--plomo)}.mono-d{fill:var(--carbon)}
.sec--oscura .mono-d,.pie .mono-d{fill:#fff}
.cab__btn{font:500 .9375rem/1.2 var(--interfaz);background:none;border:0;color:var(--tinta);padding:12px 0;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.cab__nav{display:none}
.cab__nav.abierto{display:flex;flex-direction:column;position:fixed;inset:64px 0 0 0;background:var(--papel);padding:32px var(--margen-lat) 48px;overflow:auto;z-index:49;animation:aparece 160ms both}
.cab__nav ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:12px}
.cab__nav a{text-decoration:none}
.cab__nav .l1>a{font-size:clamp(1.75rem,1.3rem + 1.8vw,2.75rem);line-height:1.15;letter-spacing:-.015em;display:inline-block;padding:4px 0}
.cab__nav .sub{margin:4px 0 8px;gap:2px;padding-left:0}
.cab__nav .sub a{font-size:1.1875rem;color:var(--plomo-texto);display:inline-block;padding:6px 0}
.cab__nav .btn{align-self:flex-start;margin-top:32px;font-family:var(--interfaz);font-size:.9375rem}
.cab__nav .urg{font:500 .9375rem/1.2 var(--interfaz);margin-top:24px;color:var(--tinta);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.cab__nav a[aria-current="page"],.cab__nav a[aria-current="true"]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}
@keyframes aparece{from{opacity:0}to{opacity:1}}
@media (min-width:900px){
  .cab__in{height:88px}
}
@media (min-width:1200px){
  .cab__btn{display:none}
  .cab__nav,.cab__nav.abierto{display:flex;flex-direction:row;align-items:center;position:static;inset:auto;padding:0;overflow:visible;background:none;animation:none;gap:40px;flex:1;justify-content:flex-end}
  .cab__nav ul{flex-direction:row;gap:32px;align-items:center}
  .cab__nav .l1>a{font:500 .9375rem/1.2 var(--interfaz);letter-spacing:.01em;padding:8px 0}
  .cab__nav .l1>a:hover,.cab__nav .l1>a[aria-current]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}
  .cab__nav .btn{margin:0;align-self:auto}
  .cab__nav .urg{display:none}
  .has-sub{position:relative}
  .cab__nav .sub{position:absolute;left:-20px;top:100%;min-width:260px;background:var(--papel);border:1px solid var(--niebla);padding:16px 20px;display:none;flex-direction:column;gap:2px}
  .cab__nav .has-sub:hover .sub,.cab__nav .has-sub:focus-within .sub{display:flex}
  .cab__nav .sub a{font:500 .9375rem/1.2 var(--interfaz);color:var(--tinta);padding:10px 0}
  .cab__nav .sub a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}
}
@media (min-width:900px) and (max-width:1199px){
  .cab__nav .btn{display:inline-block}
}
.cab--landing .cab__in{height:72px}
.cab--landing .cab__tel{font:500 .9375rem/1.2 var(--interfaz);color:var(--tinta);text-decoration:none}

/* Hero */
.hero{min-height:88svh;display:flex;align-items:flex-end;padding-top:64px;padding-bottom:12vh}
.hero .display{margin-bottom:48px}
.hero .display span{display:block}
.hero .cols>*{margin-bottom:0}
.hero .acciones{margin-top:32px}
@media (min-width:900px){
  .hero .c-entrada{grid-column:4/10}
}
.hero--pagina{min-height:0;padding-top:clamp(64px,10vw,140px);padding-bottom:clamp(32px,5vw,64px)}
@keyframes sube{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes fundido{from{opacity:0}to{opacity:1}}
.hero .display span{animation:sube 700ms cubic-bezier(.2,.7,.2,1) both}
.hero .display span+span{animation-delay:140ms}
.hero .anim-tarde{animation:fundido 500ms 300ms both}

/* Página: encabezado */
.enc{padding-top:clamp(56px,9vw,128px);padding-bottom:calc(var(--entre-secciones)/4)}
.enc h1{margin-bottom:40px}
.enc .entrada{max-width:60ch}

/* Filas */
.fila{position:relative;border-top:1px solid var(--niebla);padding-block:32px}
.fila:last-child{border-bottom:1px solid var(--niebla)}
.fila__meta{margin-bottom:12px}
.fila__t{font-size:1.75rem;line-height:1.2;font-weight:400;letter-spacing:-.01em;margin-bottom:.5em;text-wrap:balance}
.fila__t--h3{font-size:1.375rem;line-height:1.3}
.fila p{max-width:60ch}
.fila a.fila__a{text-decoration:none}
.fila a.fila__a::after{content:"";position:absolute;inset:0}
.fila:hover .fila__t a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.fila__enlace{margin-top:20px;display:inline-block}
.fila .enlace-falso{font:500 .9375rem/1.2 var(--interfaz);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
@media (min-width:900px){
  .fila{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--medianil)}
  .fila__meta{grid-column:1/4;margin-bottom:0;padding-top:.7em}
  .fila__cuerpo{grid-column:4/11}
}
.fila--analisis .autor{margin-top:8px}

/* El modelo / declaraciones */
.declaraciones>div+div{margin-top:48px}
.declaraciones h3{margin-bottom:.35em}
.declaraciones p{margin:0}

/* Método: etapas */
.etapa .num{font-size:clamp(1.75rem,1.3rem + 1.8vw,2.75rem);line-height:1;color:var(--plomo-texto);font-variant-numeric:lining-nums}
.etapa .recibe{margin-top:14px}
.etapa p{margin-bottom:0}
.etapa .fila__meta{padding-top:0}

/* Sección Folio */
.folio-sec .cols{row-gap:48px}
@media (min-width:900px){
  .folio-sec .f-texto{grid-column:1/5}
  .folio-sec .f-folio{grid-column:6/13}
}

/* Folio */
.folio{max-width:640px}
.folio__tabs{display:flex;flex-wrap:wrap;gap:4px 24px;margin-bottom:32px}
.folio__tab{font:500 .9375rem/1.2 var(--interfaz);background:none;border:0;border-bottom:1px solid transparent;padding:12px 0;min-height:44px;color:var(--plomo-texto);cursor:pointer}
.folio__tab[aria-selected="true"]{color:var(--tinta);border-bottom-color:var(--tinta)}
.folio__paneles{position:relative;margin:0 16px 16px 0}
.js .folio__panel[hidden]{display:none!important}
.folio__panel{position:relative}
.folio__panel+.folio__panel{margin-top:48px}
.js .folio__panel+.folio__panel{margin-top:0}
.js .folio__panel.sale{animation:fundido 200ms reverse both}
.js .folio__panel.entra{animation:fundido 200ms both}
.hoja{position:relative;background:var(--blanco);border:1px solid var(--niebla);padding:24px;font-size:15px;line-height:1.55;font-variant-numeric:lining-nums;z-index:1}
.hoja::before,.hoja::after{content:"";position:absolute;border:1px solid var(--niebla);z-index:-1;inset:0}
.hoja::before{transform:translate(8px,-8px)}
.hoja::after{transform:translate(16px,-16px)}
@media (min-width:600px){.hoja{padding:48px}}
.hoja__cab{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}
.hoja__cab .mono{height:20px;width:auto}
.hoja h3{font-size:1.375rem;font-weight:400;margin-bottom:12px;letter-spacing:-.01em}
.hoja hr{border:0;border-top:1px solid var(--niebla);margin:0 0 20px}
.hoja h4{font-size:15px;font-weight:600;margin:20px 0 6px;line-height:1.4}
.hoja p{margin:0 0 6px;font-size:15px;line-height:1.7}
.hoja .pie-hoja{text-align:right;margin:24px 0 0}
.tachado{display:inline-block;background:var(--tinta);height:.9em;vertical-align:-.1em;border-radius:0}
.tachado{max-width:100%}
.hoja table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.4;margin:6px 0}
.hoja th{font-family:var(--interfaz);font-weight:500;font-size:12px;text-align:left;color:var(--plomo-texto);padding:8px 8px 8px 0;border-bottom:1px solid var(--niebla);font-variant-numeric:lining-nums}
.hoja td{padding:9px 8px 9px 0;border-bottom:1px solid var(--niebla);vertical-align:middle;font-variant-numeric:lining-nums tabular-nums}
.hoja tr:last-child td{border-bottom:0}
.hoja .tabla-scroll{overflow-x:auto}
.folio__nota{margin-top:32px;max-width:48ch}

/* Socios */
.socios{display:grid;grid-template-columns:1fr;gap:48px var(--medianil);list-style:none;padding:0;margin:0}
@media (min-width:600px){.socios{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1200px){.socios{grid-template-columns:repeat(4,minmax(0,1fr))}}
.socio{position:relative}
.socio a{text-decoration:none;display:block}
.socio__foto{aspect-ratio:4/5;background:var(--niebla);overflow:hidden;position:relative}
.socio__foto img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.socio__ini{position:absolute;left:24px;bottom:24px;font-size:48px;line-height:1;color:var(--plomo-texto);letter-spacing:-.01em;font-variant-numeric:lining-nums}
.socio__nombre{font-size:1.375rem;line-height:1.3;font-weight:400;margin:16px 0 4px}
.socio a:hover .socio__nombre{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.socio .meta{display:block}
.socios--sin-enlace .socio a{cursor:default}

/* Niveles */
.niveles{display:grid;grid-template-columns:1fr;margin:48px 0 0}
.nivel{padding:32px 0;border-top:1px solid var(--niebla)}
.nivel h3{font-size:clamp(1.75rem,1.3rem + 1.8vw,2.75rem);line-height:1.15;font-weight:400;letter-spacing:-.015em;margin:6px 0 12px}
.nivel .frase{font-size:1.1875rem;margin-bottom:20px}
.nivel ul{list-style:none;padding:0;margin:0}
.nivel li{padding:10px 0;border-top:1px solid var(--niebla);font-size:1rem;line-height:1.5}
@media (min-width:900px){
  .niveles{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nivel{border-top:0;padding:0 var(--medianil)}
  .nivel:first-child{padding-left:0}
  .nivel+.nivel{border-left:1px solid var(--niebla)}
  .nivel:last-child{padding-right:0}
}

/* Ficha de providencia */
.ficha{border-top:1px solid var(--niebla);border-bottom:1px solid var(--niebla);padding:20px 0;margin:0 0 32px;display:grid;gap:12px 24px;grid-template-columns:1fr}
@media (min-width:600px){.ficha{grid-template-columns:1fr 1fr}}
.ficha dt{font:500 .8125rem/1.4 var(--interfaz);color:var(--plomo-texto)}
.ficha dd{font-size:1rem}
.defs dt{font-weight:600;font-size:1.1875rem;margin-top:24px}
.defs dd{margin:0}
.defs dt:first-child{margin-top:0}

/* Entrada de análisis */
.art-meta{display:flex;flex-direction:column;gap:6px;margin-bottom:32px}
.art-pie{margin-top:48px;display:flex;flex-direction:column;gap:12px}
.paginacion{display:flex;justify-content:space-between;margin-top:48px;font:500 .9375rem/1.2 var(--interfaz)}
.filtros{display:flex;flex-wrap:wrap;gap:12px 28px;margin-bottom:40px;font:500 .9375rem/1.2 var(--interfaz)}
.filtros a[aria-current]{text-decoration-thickness:2px}

/* Perfil de socio */
.perfil{padding-top:clamp(48px,8vw,112px)}
.perfil__foto{aspect-ratio:4/5;background:var(--niebla);overflow:hidden;position:relative;max-width:480px;margin-bottom:40px}
.perfil__foto img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}
.perfil h1{margin-bottom:16px}
.perfil .meta{display:block}
.perfil .bio{margin-top:40px}
.perfil .lineas{margin-top:40px}
.perfil .lineas ul{padding-left:1.1em}
@media (min-width:900px){
  .perfil__col-foto{grid-column:1/5}
  .perfil__col-texto{grid-column:6/12}
  .perfil__foto{margin-bottom:0}
}

/* Formulario */
.form{max-width:640px}
.form fieldset{border:0;padding:0;margin:0 0 32px;min-width:0}
.form legend{font:500 .9375rem/1.2 var(--interfaz);padding:0;margin-bottom:12px}
.form .paso-n{display:block;margin-bottom:24px}
.campo{margin-bottom:24px}
.campo label{display:block;font:500 .9375rem/1.2 var(--interfaz);margin-bottom:8px}
.campo .ayuda{display:block;margin-top:8px;font-size:.9375rem;line-height:1.5;color:var(--plomo-texto)}
.campo input[type=text],.campo input[type=tel],.campo input[type=email],.campo select,.campo textarea{width:100%;background:var(--blanco);border:1px solid var(--borde-campo);border-radius:2px;height:52px;padding:0 16px;font:400 18px/1.4 var(--serif);color:var(--tinta);appearance:none}
.campo select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231A1A1A' stroke-width='1.5'/%3E%3C/svg%3E");background-position:calc(100% - 18px) 50%;background-repeat:no-repeat;padding-right:44px}
.campo textarea{height:auto;min-height:168px;padding:14px 16px;resize:vertical}
.campo input:focus,.campo select:focus,.campo textarea:focus{border:2px solid var(--tinta);padding-left:15px;outline:0}
.campo textarea:focus{padding:13px 15px}
.campo [aria-invalid="true"]{border:2px solid var(--tinta)}
.campo .error{display:block;margin-top:8px;font-size:.9375rem;line-height:1.5}
.contador{display:block;margin-top:6px;text-align:right}
.opciones{border-bottom:1px solid var(--niebla)}
.opcion{position:relative;display:flex;align-items:center;gap:16px;padding:18px 0;border-top:1px solid var(--niebla);cursor:pointer;min-height:56px}
.opcion input{position:absolute;opacity:0}
.opcion .punto{flex:none;width:20px;height:20px;border:1px solid var(--tinta);border-radius:50%;background:var(--blanco);display:grid;place-items:center}
.opcion .punto::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--tinta);opacity:0}
.opcion input:checked+.punto::after{opacity:1}
.opcion input:focus-visible+.punto{outline:2px solid var(--tinta);outline-offset:3px}
.opcion span.t{font-size:1.1875rem}
.check{display:flex;gap:14px;align-items:flex-start;margin-bottom:20px}
.check input{flex:none;width:22px;height:22px;margin:3px 0 0;accent-color:var(--tinta)}
.check label{font-size:1rem;line-height:1.5;margin:0;font-weight:400;font-family:var(--serif);letter-spacing:0}
.resumen-errores{border:2px solid var(--tinta);padding:20px 24px;margin-bottom:32px}
.resumen-errores h2{font-size:1.25rem;font-weight:600;margin-bottom:8px;letter-spacing:0}
.resumen-errores ul{padding-left:1.1em}
.resumen-errores:focus{outline:0}
.trampa{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.js .paso[hidden]{display:none}
.volver{background:none;border:0;padding:0;margin-left:24px;font:500 .9375rem/1.2 var(--interfaz);text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px;cursor:pointer;color:var(--tinta);min-height:44px}
.exito:focus{outline:0}
.msg-general{border:2px solid var(--tinta);padding:16px 20px;margin-bottom:24px}

/* Contacto */
@media (min-width:900px){
  .contacto .c-form{grid-column:1/8}
  .contacto .c-lado{grid-column:9/13}
}
.contacto .c-lado{margin-top:64px}
@media (min-width:900px){.contacto .c-lado{margin-top:0;padding-top:8px}}
.lado h3{margin:0 0 .4em}
.lado section+section{margin-top:40px}
.lado ol{padding-left:1.2em}
.lado li{margin-bottom:.4em}

/* Cierre */
.cierre h2{max-width:20ch;margin-bottom:28px}
.cierre p{max-width:52ch}

/* Pie */
.pie{background:var(--carbon);color:#fff;padding-bottom:40px;font-size:1rem;line-height:1.6}
.pie a{color:#fff}
.pie .ceniza,.pie .meta{color:var(--ceniza)}
.pie__top{padding-top:clamp(48px,6vw,96px);padding-bottom:48px}
.pie__col{margin-top:40px}
.pie__col h2{font:500 .8125rem/1.4 var(--interfaz);color:var(--ceniza);margin-bottom:12px;letter-spacing:.01em}
.pie__col ul{list-style:none;padding:0}
.pie__col li{margin-bottom:6px}
.pie__col a{text-decoration:none}
.pie__col a:hover{text-decoration:underline}
.pie .logo{color:#fff}
.pie address{font-style:normal}
.pie__fin{border-top:1px solid #555;padding-top:24px;display:flex;flex-direction:column;gap:12px;font:500 .8125rem/1.5 var(--interfaz);color:var(--ceniza)}
.pie__fin ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px 24px}
.pie__fin a{color:var(--ceniza)}
.pie__aviso{font-family:var(--serif);font-weight:400;font-size:.9375rem}
@media (min-width:900px){
  .pie__col{margin-top:0}
  .pie__dir{grid-column:1/6}
  .pie__nav1{grid-column:7/10}
  .pie__nav2{grid-column:10/13}
  .pie__fin{flex-direction:row;flex-wrap:wrap;justify-content:space-between;align-items:baseline}
  .pie__aviso{flex-basis:100%}
}
.pie--landing .pie__fin{border-top:1px solid #555}
.pend{background:#fff;color:var(--tinta);padding:0 4px;font-style:normal}

/* Aviso de privacidad */
.aviso{position:fixed;left:0;right:0;bottom:0;z-index:60;background:var(--tinta);color:#fff;font-size:14px;line-height:1.5;padding:12px var(--margen-lat);display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;justify-content:space-between}
.aviso p{margin:0;max-width:none}
.aviso a{color:#fff}
.aviso button{font:500 14px/1.2 var(--interfaz);background:#fff;color:var(--tinta);border:0;border-radius:2px;padding:10px 18px;min-height:44px;cursor:pointer}
.aviso button:hover{background:var(--niebla)}
.aviso[hidden]{display:none}

/* Landing */
@media (min-width:900px){
  .landing-hero .l-texto{grid-column:1/7}
  .landing-hero .l-form{grid-column:8/13}
}
.landing-hero{padding-top:clamp(48px,7vw,96px);padding-bottom:calc(var(--entre-secciones)/3)}
.landing-hero h1{font-size:clamp(2.25rem,1.5rem + 3vw,4rem);margin-bottom:32px}
.landing-hero .l-form{margin-top:48px}
@media (min-width:900px){.landing-hero .l-form{margin-top:8px}}

/* 404 / búsqueda */
.vacio{padding-top:clamp(64px,10vw,160px);padding-bottom:var(--entre-secciones)}

/* Contenido por defecto de WordPress */
.alignwide{max-width:1320px}
.wp-site-blocks>*{margin-block:0}
.cab,.pie{margin-block:0}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-delay:0s!important;transition-duration:.001ms!important}
}
@media print{.cab,.aviso,.pie{display:none}}

/* ================= Capa visual v1.1: íconos, marca y ritmo =================
   Decisión del cliente (octubre 2026): más identidad y experiencia visual, sin recargar.
   Sustituye las prohibiciones de íconos y fotos de la especificación original. */
.ico{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
.ico-c{display:grid;place-items:center;width:56px;height:56px;border:1px solid var(--ceniza);border-radius:50%;background:transparent;color:var(--carbon);flex:none;transition:background-color 240ms,color 240ms,border-color 240ms}
.ico-c .ico{width:26px;height:26px}
.ico-c--s{width:44px;height:44px}
.ico-c--s .ico{width:22px;height:22px}
.sec--oscura .ico-c,.hero .ico-c{border-color:#666;color:#fff}

/* Filete de marca: gris (contexto) + carbón (argumento), como la L y la D del monograma */
.fil-marca::before,.sec>.wrap>h2:not(.sin-fil)::before,.f-texto h2::before{content:"";display:block;width:64px;height:4px;margin-bottom:28px;background:linear-gradient(90deg,var(--plomo) 0 50%,var(--carbon) 50% 100%)}
.sec--oscura h2::before,.sec--oscura .fil-marca::before{background:linear-gradient(90deg,var(--plomo) 0 50%,#fff 50% 100%)}
.sec>.wrap>.cols>h2.c-titular::before{content:"";display:block;width:64px;height:4px;margin-bottom:28px;background:linear-gradient(90deg,var(--plomo) 0 50%,var(--carbon) 50% 100%)}
.sec--oscura .cols>h2.c-titular::before{background:linear-gradient(90deg,var(--plomo) 0 50%,#fff 50% 100%)}
.cierre h2::before{content:"";display:block;width:64px;height:4px;margin-bottom:28px}

/* Hero oscuro con retrato y monograma */
.hero{background:var(--carbon);color:#fff;position:relative;overflow:hidden;min-height:92svh;padding-top:clamp(56px,9vh,104px);padding-bottom:clamp(48px,9vh,104px);align-items:center}
.hero__marca{position:absolute;right:-6%;top:50%;transform:translateY(-50%);width:min(70vw,860px);opacity:.06;pointer-events:none}
.hero__marca .mono{width:100%;height:auto}
.hero__marca .mono-l,.hero__marca .mono-d{fill:#fff}
.hero .wrap{position:relative;z-index:1}
.hero__grid{display:grid;gap:56px;align-items:center}
.hero .display{color:#fff;font-size:clamp(2.5rem,1.2rem + 5vw,5.5rem);margin-bottom:36px}
.hero .margen{color:var(--ceniza);margin:0 0 20px;font-size:.9375rem}
.hero .entrada{color:var(--ceniza);max-width:46ch;margin-bottom:0}
.hero .acciones{margin-top:36px}
.hero .enlace{color:#fff}
.hero__foto{margin:0;max-width:440px;position:relative}
.hero__img{aspect-ratio:4/5;overflow:hidden;background:#444;position:relative;z-index:1}
.hero__img img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.04)}
.hero__foto::before{content:"";position:absolute;top:0;left:0;width:100%;aspect-ratio:4/5;border:1px solid #777;transform:translate(16px,16px)}
.hero__foto figcaption{margin-top:32px;color:var(--ceniza);font:500 .8125rem/1.5 var(--interfaz)}
.hero__foto figcaption b{color:#fff;font-weight:600;display:block}
@media (min-width:900px){
  .hero__grid{grid-template-columns:minmax(0,7fr) minmax(0,4.2fr);column-gap:var(--medianil);gap:64px}
  .hero__foto{justify-self:end;width:100%}
}
.hero--pagina{background:var(--papel);color:inherit}

/* El modelo: tres columnas con ícono */
.modelo{display:grid;gap:0;margin-top:56px}
.m-item{padding:36px 0;border-top:1px solid var(--niebla)}
.m-item .ico-c{margin-bottom:28px}
.m-item h3{margin-bottom:.5em;font-size:1.5rem;font-weight:500;line-height:1.25;letter-spacing:-.01em}
.m-item p{margin:0;max-width:34ch}
.m-item:hover .ico-c{background:var(--tinta);border-color:var(--tinta);color:#fff}
@media (min-width:900px){
  .modelo{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:var(--medianil)}
  .m-item{padding:40px 0 0}
}
.sec .c-titular + .modelo{grid-column:1/-1}

/* Práctica: ícono, flecha y respuesta al pasar */
.fila__meta{display:flex;align-items:center;gap:14px}
.fila__flecha{position:absolute;right:0;top:50%;transform:translateY(-50%);width:48px;height:48px;border:1px solid var(--ceniza);border-radius:50%;display:none;place-items:center;color:var(--carbon);transition:background-color 240ms,color 240ms,border-color 240ms,transform 240ms}
.fila:hover .fila__flecha{background:var(--tinta);border-color:var(--tinta);color:#fff;transform:translate(-6px,-50%)}
.fila:hover .ico-c{background:var(--tinta);border-color:var(--tinta);color:#fff}
@media (min-width:900px){
  .fila__meta{flex-direction:row;align-items:center}
  .fila--practica .fila__cuerpo{padding-right:64px}
  .fila__flecha{display:grid}
}

/* Sección del Folio sobre banda tenue */
.folio-sec{background:#ECECEA}

/* Socios: foto con respuesta suave */
.socio__foto img{transition:transform 700ms cubic-bezier(.2,.7,.2,1)}
.socio a:hover .socio__foto img{transform:scale(1.035)}
.socio__foto{position:relative}
.socio__foto::after{content:"";position:absolute;left:0;bottom:0;height:4px;width:0;background:var(--tinta);transition:width 400ms cubic-bezier(.2,.7,.2,1)}
.socio a:hover .socio__foto::after{width:100%}

/* Método: ícono + número, con hilo vertical */
.etapa .fila__meta{gap:16px}
.etapa .num{font-size:1.25rem;color:var(--plomo-texto)}

/* Principios de La firma */
.defs dt{display:flex;align-items:center;gap:14px}
.defs dt .ico{color:var(--carbon)}
.defs dd{padding-left:38px}

/* Cierre con monograma */
.cierre{position:relative;overflow:hidden}
.cierre__marca{position:absolute;right:-4%;top:50%;transform:translateY(-50%);width:min(52vw,520px);opacity:.045;pointer-events:none}
.cierre__marca .mono{width:100%;height:auto}
.cierre__marca .mono-l,.cierre__marca .mono-d{fill:#fff}
.cierre .wrap{position:relative;z-index:1}

/* Listas de contacto con ícono (pie y contacto) */
.dato{display:flex;gap:12px;align-items:flex-start;margin:0 0 10px}
.dato .ico{width:20px;height:20px;margin-top:4px;color:var(--ceniza)}
.dato a{text-decoration:none}
.dato a:hover{text-decoration:underline}
.lado-seccion h3{display:flex;align-items:center;gap:12px}
.lado-seccion h3::before{content:"";width:22px;height:22px;flex:none;background:var(--tinta);-webkit-mask:var(--m) center/contain no-repeat;mask:var(--m) center/contain no-repeat}
.lado-seccion:nth-of-type(1) h3{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h7l4 4v14H7z'/%3E%3Cpath d='M14 3v4h4M9.5 12h6M9.5 15.5h6'/%3E%3C/svg%3E")}
.lado-seccion:nth-of-type(2) h3{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-6.5-5.6-6.5-11a6.5 6.5 0 0 1 13 0c0 5.4-6.5 11-6.5 11z'/%3E%3Ccircle cx='12' cy='10' r='2.3'/%3E%3C/svg%3E")}
.lado-seccion:nth-of-type(3) h3{--m:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 4h3l1.5 4-2 1.5a11 11 0 0 0 6.5 6.5L16 14l4 1.5v3a2 2 0 0 1-2 2C10.8 20.5 3.5 13.2 3.5 6a2 2 0 0 1 2-2z'/%3E%3C/svg%3E")}

/* Aparición suave al hacer scroll (solo con JS y sin reducción de movimiento) */
.js .rv{opacity:0;transform:translateY(18px);transition:opacity 700ms cubic-bezier(.2,.7,.2,1),transform 700ms cubic-bezier(.2,.7,.2,1)}
.js .rv.visto{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transform:none;transition:none}}
.fila__meta{align-self:start}
@media (min-width:900px){.fila--practica .fila__meta,.etapa .fila__meta{padding-top:4px}}

/* Ajuste de proporciones v1.2: portada y secciones más contenidas */
:root{--entre-secciones:clamp(72px,9vw,136px)}
.hero{min-height:0;padding-top:clamp(48px,7vh,80px);padding-bottom:clamp(48px,8vh,88px)}
.hero .display{font-size:clamp(2.25rem,1rem + 4vw,4.25rem);line-height:1.04;margin-bottom:28px}
.hero .entrada{font-size:clamp(1.125rem,1rem + .35vw,1.3125rem);max-width:44ch}
.hero .acciones{margin-top:28px}
.hero__marca{width:min(54vw,620px);right:-3%}
.hero__foto{max-width:360px}
.hero__foto figcaption{margin-top:28px}
@media (min-width:900px){.hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,360px);gap:clamp(40px,6vw,96px)}}
h1,.h1{font-size:clamp(2rem,1.3rem + 2.6vw,3.5rem)}
h2,.h2{font-size:clamp(1.625rem,1.2rem + 1.5vw,2.375rem)}
.m-item h3{font-size:1.3125rem}
.m-item{padding-top:32px}
.m-item .ico-c{margin-bottom:22px}
.ico-c{width:52px;height:52px}

/* ================= Páginas interiores v1.3 ================= */
/* Banda de encabezado */
.banda{background:var(--carbon);color:#fff;position:relative;overflow:hidden;padding-block:clamp(56px,8vw,112px)}
.banda__marca{position:absolute;right:-4%;top:50%;transform:translateY(-50%);width:min(46vw,460px);opacity:.06;pointer-events:none}
.banda__marca .mono{width:100%;height:auto}
.banda__marca .mono-l,.banda__marca .mono-d{fill:#fff}
.banda .wrap{position:relative;z-index:1}
.banda__txt{max-width:780px}
.banda .ico-c{margin-bottom:28px;border-color:#6a6a6a;color:#fff}
.banda h1{color:#fff;margin-bottom:24px;font-size:clamp(2rem,1.2rem + 3vw,3.5rem)}
.banda .entrada{color:var(--ceniza);max-width:60ch;margin:0}
.banda__nota{color:var(--ceniza);margin:24px 0 0;padding-left:16px;border-left:2px solid var(--plomo);font-size:.9375rem}
.banda+.sec{padding-top:clamp(56px,7vw,104px)}
.banda .ico-c::after{display:none}

/* Viñetas con ícono en listas de lectura */
.pagina ul:not(.iconos) li,.lectura ul:not(.iconos) li{list-style:none;position:relative;padding-left:36px;margin-bottom:.7em}
.pagina ul:not(.iconos),.lectura ul:not(.iconos){padding-left:0}
.pagina ul:not(.iconos) li::before{content:"";position:absolute;left:0;top:.28em;width:22px;height:22px;background:var(--carbon);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12.3l2.7 2.7L16 9.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12.3l2.7 2.7L16 9.5'/%3E%3C/svg%3E") center/contain no-repeat}
.pagina h2{margin-top:1.8em}

/* Rejilla de íconos (qué recibe, frentes) */
.iconos{list-style:none;padding:0;margin:8px 0 28px;display:grid;gap:0}
.pagina ul.iconos{max-width:none;padding-left:0;margin:8px 0 28px}
.pagina>.iconos{max-width:none}
.iconos li{display:flex;align-items:center;gap:16px;padding:18px 0;border-top:1px solid var(--niebla);margin:0;padding-left:0}
.iconos li:last-child{border-bottom:1px solid var(--niebla)}
.iconos li::before{display:none}
.iconos li span{font-size:1.0625rem;line-height:1.4}
.iconos li:hover .ico-c{background:var(--tinta);border-color:var(--tinta);color:#fff}
@media (min-width:700px){
  .iconos{grid-template-columns:1fr 1fr;column-gap:32px}
  .iconos li:nth-last-child(2):nth-child(odd){border-bottom:1px solid var(--niebla)}
  .iconos--frentes{grid-template-columns:repeat(4,1fr);column-gap:16px}
  .iconos--frentes li{flex-direction:column;align-items:flex-start;gap:14px;border-bottom:1px solid var(--niebla)}
}
@media (min-width:900px){.pagina>.iconos{grid-column:4/12}}

/* Niveles con ícono */
.nivel__cab{display:flex;align-items:center;gap:14px;margin-bottom:6px}
.nivel li::before{display:none}
.nivel li{padding-left:0}

/* Principios de La firma en rejilla */
.defs{display:grid;gap:0}
.defs>div{border-top:1px solid var(--niebla);padding:20px 0}
.defs dt{margin-top:0}
.defs dd{padding-left:38px;margin-top:6px}
@media (min-width:700px){.defs{grid-template-columns:1fr 1fr;column-gap:40px}}
.pagina>.defs{max-width:none}
@media (min-width:900px){.pagina>.defs{grid-column:4/12}}

/* Método: hilo vertical entre etapas */
.etapas{position:relative}
@media (min-width:900px){
  .etapa .fila__meta{position:relative}
  .etapa:not(:last-child) .fila__meta::after{content:"";position:absolute;left:21px;top:56px;bottom:-34px;width:1px;background:var(--niebla)}
}

/* Formulario sobre panel */
.panel{background:var(--blanco);border:1px solid var(--niebla);padding:clamp(24px,4vw,48px)}
.panel .form{max-width:none}
.contacto .c-lado .lado-seccion{padding-bottom:28px;border-bottom:1px solid var(--niebla)}
.contacto .c-lado .lado-seccion:last-child{border-bottom:0}
.lado section+section,.lado .lado-seccion+.lado-seccion{margin-top:28px}

/* Perfil: banda oscura detrás del encabezado */
@media (min-width:900px){
  .perfil{position:relative;padding-top:0}
  .perfil::before{content:"";position:absolute;left:0;right:0;top:0;height:clamp(300px,30vw,380px);background:var(--carbon)}
  .perfil>.wrap{position:relative;padding-top:clamp(64px,7vw,104px)}
  .perfil h1{color:#fff}
  .perfil .perfil__col-texto>.meta{color:var(--ceniza)}
  .perfil .bio{margin-top:72px}
  .perfil__foto{box-shadow:none;border:0}
}
.perfil .lineas h2{display:flex;align-items:center;gap:10px}

/* Landing: hero oscuro con el formulario en panel */
.landing-hero{background:var(--carbon);color:#fff;position:relative;overflow:hidden}
.landing-hero .l-texto h1{color:#fff}
.landing-hero .entrada{color:var(--ceniza)}
.landing-hero .l-form{background:var(--blanco);color:var(--tinta);padding:clamp(24px,3.5vw,40px);position:relative;z-index:1}
.landing-hero .form{max-width:none}
.landing-hero .l-form :focus-visible{outline-color:var(--tinta)}

/* Logo de la firma en la portada (reemplaza el retrato) */
.hero__logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(20px,2.4vw,32px);padding:clamp(40px,5vw,72px) clamp(24px,3vw,48px);border:1px solid #6a6a6a;position:relative;width:100%;max-width:420px;aspect-ratio:1/1.02;text-align:center}
.hero__logo::before{content:"";position:absolute;inset:0;border:1px solid #4a4a4a;transform:translate(16px,16px);pointer-events:none}
.hero__logo-mono .mono{height:clamp(140px,15vw,210px);width:auto}
.hero .mono-d{fill:#fff}
.hero__logo-txt{font:300 clamp(1.25rem,1rem + 1vw,1.75rem)/1 var(--interfaz);color:#fff;white-space:nowrap}
.hero__logo-txt b{font-weight:700}
.hero__logo-sub{font:300 .8125rem/1 var(--interfaz);letter-spacing:.55em;color:var(--ceniza);padding-left:.55em}
@media (min-width:900px){
  .hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,420px)}
  .hero__logo{justify-self:end}
}
@media (max-width:899px){.hero__logo{max-width:340px;aspect-ratio:auto;padding-block:40px}}

/* Preguntas frecuentes */
.faq details{border-top:1px solid var(--niebla)}
.faq details:last-child{border-bottom:1px solid var(--niebla)}
.faq summary{display:flex;justify-content:space-between;align-items:center;gap:24px;cursor:pointer;list-style:none;padding:22px 0;font-size:1.1875rem;line-height:1.35;font-weight:500}
.faq summary::-webkit-details-marker{display:none}
.faq summary .ico{transition:transform 240ms;transform:rotate(90deg);color:var(--carbon)}
.faq details[open] summary .ico{transform:rotate(-90deg)}
.faq summary:hover span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.faq details p{margin:0 0 24px;max-width:58ch;color:var(--tinta)}
.cols>h2.c-titular{margin-bottom:clamp(32px,4vw,56px)}

/* Perfil: la banda oscura mide exactamente el bloque de nombre y cargos */
@media (min-width:900px){
  .perfil{--pt:clamp(64px,7vw,104px);--cab:clamp(270px,24vw,300px)}
  .perfil::before{height:calc(var(--pt) + var(--cab))}
  .perfil>.wrap{padding-top:var(--pt)}
  .perfil__cab{min-height:var(--cab)}
  .perfil .bio{margin-top:56px}
  .perfil .bio,.perfil .bio p{color:var(--tinta)}
}
@media (min-width:900px){.perfil__cab .meta{color:var(--ceniza)}}

/* Redes sociales */
.redes{list-style:none;display:flex;gap:12px;padding:0;margin:24px 0 0}
.redes a{display:grid;place-items:center;width:44px;height:44px;border:1px solid #6a6a6a;border-radius:50%;color:#fff;text-decoration:none;transition:background-color 200ms,color 200ms,border-color 200ms}
.redes a:hover{background:#fff;color:var(--tinta);border-color:#fff}
.redes .ico{width:20px;height:20px}
.redes--claro a{border-color:var(--ceniza);color:var(--carbon)}
.redes--claro a:hover{background:var(--tinta);color:#fff;border-color:var(--tinta)}

/* Bloque «Detalles» de WordPress con el estilo de las preguntas frecuentes */
.wp-block-details{border-top:1px solid var(--niebla);margin:0}
.wp-block-details:last-of-type{border-bottom:1px solid var(--niebla)}
.wp-block-details summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 0;font-size:1.1875rem;line-height:1.35;font-weight:500}
.wp-block-details summary::-webkit-details-marker{display:none}
.wp-block-details summary::after{content:"";width:22px;height:22px;flex:none;background:var(--carbon);transition:transform 240ms;transform:rotate(90deg);-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat}
.wp-block-details[open] summary::after{transform:rotate(-90deg)}
.wp-block-details summary:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.wp-block-details p{margin:0 0 24px;max-width:58ch}
.pagina>.wp-block-details{max-width:none}
.pagina h2+.wp-block-details,.pagina h2+.iconos{margin-top:0}

/* Logo de la portada con movimiento: entrada escalonada + latido suave + paralaje del puntero */
.hero__logo.anim-tarde{animation:none}
.hero__logo-mono{display:block;will-change:transform;transition:transform 300ms cubic-bezier(.2,.7,.2,1);transform:translate(calc(var(--px,0) * 10px),calc(var(--py,0) * 8px))}
.hero__logo-mono .mono{overflow:visible}
.hero__logo .mono-l,.hero__logo .mono-d{transform-box:fill-box;transform-origin:center}
.hero__logo .mono-l{animation:logo-l 1000ms cubic-bezier(.2,.7,.2,1) 250ms both,logo-brillo 6s ease-in-out 2.4s infinite}
.hero__logo .mono-d{animation:logo-d 1000ms cubic-bezier(.2,.7,.2,1) 550ms both}
.hero__logo-txt{animation:logo-txt 800ms cubic-bezier(.2,.7,.2,1) 1050ms both}
.hero__logo-sub{animation:logo-sub 1300ms cubic-bezier(.2,.7,.2,1) 1350ms both}
.hero__logo{animation:logo-caja 900ms ease-out 100ms both}
.hero__logo::before{animation:logo-marco 1000ms cubic-bezier(.2,.7,.2,1) 800ms both,logo-respira 7s ease-in-out 2.4s infinite alternate}
@keyframes logo-caja{from{opacity:0}to{opacity:1}}
@keyframes logo-l{from{opacity:0;transform:translateY(26%)}to{opacity:1;transform:none}}
@keyframes logo-d{from{opacity:0;transform:translateX(-18%) scale(.96)}to{opacity:1;transform:none}}
@keyframes logo-brillo{0%,100%{fill:#808080}50%{fill:#a2a2a2}}
@keyframes logo-txt{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes logo-sub{from{opacity:0;letter-spacing:.15em}to{opacity:1;letter-spacing:.55em}}
@keyframes logo-marco{from{opacity:0;transform:translate(0,0)}to{opacity:1;transform:translate(16px,16px)}}
@keyframes logo-respira{from{transform:translate(16px,16px)}to{transform:translate(9px,9px)}}
@media (prefers-reduced-motion:reduce){
  .hero__logo,.hero__logo *,.hero__logo::before{animation:none!important}
  .hero__logo-mono{transform:none;transition:none}
}
