/*
Theme Name: DF Abogados — Mercantil
Theme URI: https://abogadomercantil.com
Description: Tema hijo de Twenty Twenty-Five para DF Abogados (abogadomercantil.com). Sistema de diseño Hallmark: macroestructura Marquee Hero, paleta marino/dorado, Source Serif 4 + Instrument Sans.
Author: DF Abogados
Version: 1.1.2
Template: twentytwentyfive
Text Domain: dfabogados
*/

/* ============================================================
   TOKENS
   ============================================================ */
:root{
  --df-paper:        oklch(98.5% 0.004 85);
  --df-paper-2:      oklch(96.2% 0.006 85);
  --df-paper-3:      oklch(93.5% 0.008 85);
  --df-navy:         oklch(26% 0.055 258);
  --df-navy-deep:    oklch(19% 0.045 258);
  --df-navy-soft:    oklch(34% 0.05 258);
  --df-ink:          oklch(24% 0.02 258);
  --df-muted:        oklch(48% 0.014 258);
  --df-accent:       oklch(70% 0.075 72);
  --df-accent-deep:  oklch(58% 0.085 66);
  --df-rule:         oklch(88% 0.008 85);
  --df-rule-dark:    oklch(38% 0.035 258);
  --df-on-navy:      oklch(96% 0.006 85);
  --df-on-navy-mute: oklch(76% 0.015 258);

  --df-display: "Source Serif 4", Georgia, "Times New Roman", serif;
  --df-body: "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;

  --df-shell: 74rem;
  --df-measure: 34rem;
}

/* ============================================================
   BASE
   ============================================================ */
html,body{overflow-x:clip;}

body{
  background:var(--df-paper);
  color:var(--df-ink);
  font-family:var(--df-body);
  font-size:1rem;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4,h5,h6,
.wp-block-heading{
  font-family:var(--df-display);
  font-style:normal;          /* nunca cursiva en encabezados */
  font-weight:600;
  line-height:1.12;
  letter-spacing:-.014em;
  overflow-wrap:anywhere;
  min-width:0;
}

:focus-visible{outline:2px solid var(--df-accent);outline-offset:3px;}

/* ============================================================
   UTILIDADES DE BLOQUE
   Se aplican añadiendo la clase en "Avanzado > Clases CSS adicionales"
   ============================================================ */

.df-shell{
  width:100%;
  max-width:var(--df-shell);
  margin-inline:auto;
  padding-inline:1.5rem;
}

.df-eyebrow{
  font-size:.7rem;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--df-accent-deep);
  margin:0 0 1rem;
}
.df-eyebrow--light{color:var(--df-accent);}

.df-rule{
  width:3.5rem;
  height:2px;
  background:var(--df-accent);
  margin-bottom:1.5rem;
}

.df-measure{max-width:var(--df-measure);}

/* --- Botones --- */
.df-btn a,
a.df-btn,
.df-btn .wp-block-button__link{
  display:inline-block;
  font-family:var(--df-body);
  font-size:.86rem;
  font-weight:600;
  letter-spacing:.05em;
  text-transform:uppercase;
  text-decoration:none;
  padding:.95rem 1.6rem;
  border:1px solid transparent;
  border-radius:0;
  white-space:nowrap;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
.df-btn--gold .wp-block-button__link{background:var(--df-accent);color:var(--df-navy-deep);}
.df-btn--gold .wp-block-button__link:hover,
.df-btn--gold .wp-block-button__link:focus-visible{background:var(--df-accent-deep);color:var(--df-paper);}

.df-btn--ghost-light .wp-block-button__link{
  background:transparent;border-color:var(--df-on-navy-mute);color:var(--df-on-navy);
}
.df-btn--ghost-light .wp-block-button__link:hover,
.df-btn--ghost-light .wp-block-button__link:focus-visible{border-color:var(--df-accent);color:var(--df-accent);}

.df-btn--ghost-dark .wp-block-button__link{
  background:transparent;border-color:var(--df-navy);color:var(--df-navy);
}
.df-btn--ghost-dark .wp-block-button__link:hover,
.df-btn--ghost-dark .wp-block-button__link:focus-visible{background:var(--df-navy);color:var(--df-on-navy);}

/* --- Enlace con subrayado trazado (primitiva de movimiento 1) --- */
.df-ulink a,
a.df-ulink{
  display:inline-block;
  text-decoration:none;
  font-weight:600;
  font-size:.82rem;
  letter-spacing:.07em;
  text-transform:uppercase;
  color:var(--df-navy);
  padding-bottom:2px;
  background-image:linear-gradient(var(--df-accent),var(--df-accent));
  background-size:0% 1px;
  background-position:0 100%;
  background-repeat:no-repeat;
  transition:background-size .28s ease,color .18s ease;
  white-space:nowrap;
}
.df-ulink a:hover,a.df-ulink:hover,
.df-ulink a:focus-visible,a.df-ulink:focus-visible{
  background-size:100% 1px;color:var(--df-accent-deep);
}
.df-ulink--light a,a.df-ulink--light{color:var(--df-on-navy);}

/* --- Tarjeta de área (primitiva de movimiento 2: elevación) --- */
.df-card{
  background:var(--df-paper);
  border:1px solid var(--df-rule);
  border-top:3px solid var(--df-navy);
  padding:2rem 1.5rem;
  height:100%;
  transition:transform .2s ease,box-shadow .2s ease,border-top-color .2s ease;
}
.df-card:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 28px -18px var(--df-navy);
  border-top-color:var(--df-accent);
}
.df-card--vertical{border-top-color:var(--df-accent);}

.df-card__tag{
  font-size:.63rem;letter-spacing:.15em;text-transform:uppercase;color:var(--df-muted);
}
.df-card__law{
  font-size:.78rem;
  color:var(--df-navy-soft);
  border-left:2px solid var(--df-accent);
  padding-left:.75rem;
  line-height:1.5;
}

/* --- Lista del hub de contratación --- */
.df-hublist{list-style:none;padding:0;margin:0;}
@media (min-width:520px){
  .df-hublist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1.5rem;}
}
.df-hublist li{border-bottom:1px solid var(--df-rule-dark);}
.df-hublist a{
  display:block;text-decoration:none;padding:.85rem 0;
  font-size:.95rem;color:var(--df-on-navy);
  transition:color .18s ease,padding-left .18s ease;
}
.df-hublist a:hover,.df-hublist a:focus-visible{color:var(--df-accent);padding-left:.4rem;}

/* --- Botón sobre fondo dorado --- */
.df-btn--onGold .wp-block-button__link{background:var(--df-navy-deep);color:var(--df-accent);}
.df-btn--onGold .wp-block-button__link:hover,
.df-btn--onGold .wp-block-button__link:focus-visible{background:var(--df-navy);color:var(--df-paper);}

/* --- Preguntas frecuentes --- */
.wp-block-details{
  border-bottom:1px solid var(--df-rule);
  padding:1.1rem 0;
}
.wp-block-details summary{
  font-family:var(--df-display);
  font-size:1.08rem;
  font-weight:600;
  cursor:pointer;
  list-style:none;
  position:relative;
  padding-right:2rem;
  line-height:1.3;
}
.wp-block-details summary::-webkit-details-marker{display:none;}
.wp-block-details summary::after{
  content:"+";
  position:absolute;right:0;top:0;
  font-family:var(--df-body);
  font-weight:400;
  color:var(--df-accent-deep);
  font-size:1.3rem;line-height:1.1;
}
.wp-block-details[open] summary::after{content:"−";}
.wp-block-details p{
  margin-top:.9rem;
  font-size:.95rem;
  color:var(--df-muted);
  max-width:var(--df-measure);
}

/* --- Ficha de datos --- */
.df-data{border-top:1px solid var(--df-rule);}
.df-data__row{
  display:grid;grid-template-columns:1fr;gap:.25rem;
  padding:1rem 0;border-bottom:1px solid var(--df-rule);
}
@media (min-width:520px){
  .df-data__row{grid-template-columns:minmax(0,10rem) minmax(0,1fr);gap:1rem;align-items:baseline;}
}
.df-data__k{font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--df-accent-deep);}
.df-data__v{font-size:.94rem;color:var(--df-ink);}

/* --- Cabecera de sección --- */
.df-sectionhead{
  padding-bottom:1.5rem;
  border-bottom:1px solid var(--df-rule);
  margin-bottom:3rem;
}

/* ============================================================
   SECCIONES OSCURAS
   ============================================================ */
.df-navy{background:var(--df-navy);color:var(--df-on-navy);}
.df-navy h1,.df-navy h2,.df-navy h3,.df-navy .wp-block-heading{color:var(--df-on-navy);}
.df-navy p{color:var(--df-on-navy-mute);}
.df-navy-deep{background:var(--df-navy-deep);color:var(--df-on-navy);}

.df-tint{background:var(--df-paper-2);}

.df-gold{background:var(--df-accent);color:var(--df-navy-deep);}
.df-gold h2,.df-gold .wp-block-heading{color:var(--df-navy-deep);}
.df-gold p{color:var(--df-navy);}

/* ============================================================
   RESPONSIVE — verificado a 320 / 375 / 414 / 768
   ============================================================ */
@media (max-width:781px){
  .df-sectionhead{margin-bottom:2rem;}
  .df-card{padding:1.5rem 1.25rem;}
}

/* Ninguna pista de imagen puede desbordar en rejilla */
.wp-block-columns,.wp-block-column{min-width:0;}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;}
}

/* ============================================================
   CABECERA — N6 masthead (barra de datos + wordmark + nav + CTA)
   El menú de móvil es <details>: sin JavaScript, sin dependencias.
   ============================================================ */
/* Estos bloques son HTML plano: el tema no les aplica border-box */
.df-topbar,.df-topbar *,
.df-masthead,.df-masthead *,
.df-foot,.df-foot *{box-sizing:border-box;}

.df-skip{
  position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--df-accent);color:var(--df-navy-deep);
  padding:.75rem 1.25rem;font-size:.8rem;font-weight:600;text-decoration:none;
}
.df-skip:focus{left:0;}

.df-topbar{
  background:var(--df-navy-deep);
  color:var(--df-on-navy-mute);
  font-size:.78rem;
  letter-spacing:.02em;
}
.df-topbar__inner{
  display:flex;flex-wrap:wrap;
  gap:.35rem 1.5rem;
  align-items:center;justify-content:flex-end;
  min-height:2.4rem;padding-block:.45rem;
}
@media (max-width:640px){
  .df-topbar__inner{justify-content:center;text-align:center;font-size:.74rem;}
}
.df-topbar a{color:inherit;text-decoration:none;white-space:nowrap;}
.df-topbar a:hover,.df-topbar a:focus-visible{color:var(--df-accent);}

.df-masthead{
  background:var(--df-navy);
  border-bottom:1px solid var(--df-rule-dark);
}
.df-masthead__inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:1.5rem;min-height:5rem;padding-block:1rem;
}

.df-wordmark{
  display:flex;align-items:baseline;gap:.6rem;
  text-decoration:none;color:var(--df-on-navy);
}
.df-wordmark__df{
  font-family:var(--df-display);
  font-size:1.9rem;font-weight:700;letter-spacing:.02em;line-height:1;
}
.df-wordmark__rest{display:flex;flex-direction:column;gap:.1rem;}
.df-wordmark__name{
  font-size:.8rem;font-weight:600;letter-spacing:.22em;
  text-transform:uppercase;line-height:1;
}
.df-wordmark__sub{
  font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--df-accent);line-height:1;
}

.df-mainnav{display:none;}
.df-mainnav a{
  text-decoration:none;color:var(--df-on-navy);
  font-size:.78rem;font-weight:500;letter-spacing:.11em;
  text-transform:uppercase;white-space:nowrap;
  padding-bottom:3px;border-bottom:1px solid transparent;
  transition:border-color .18s ease,color .18s ease;
}
.df-mainnav a:hover,.df-mainnav a:focus-visible{
  color:var(--df-accent);border-bottom-color:var(--df-accent);
}

.df-headcta{
  display:none;
  background:var(--df-accent);color:var(--df-navy-deep);
  text-decoration:none;white-space:nowrap;
  padding:.7rem 1.15rem;
  font-size:.75rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;
  transition:background .18s ease,color .18s ease;
}
.df-headcta:hover,.df-headcta:focus-visible{
  background:var(--df-accent-deep);color:var(--df-paper);
}

@media (min-width:1000px){
  .df-mainnav{display:flex;align-items:center;gap:2rem;}
  .df-headcta{display:inline-block;}
  .df-mob{display:none;}
}

/* ---- Menú de móvil ---- */
.df-mob{position:relative;}
.df-mob summary{
  list-style:none;cursor:pointer;
  display:flex;align-items:center;gap:.55rem;
  color:var(--df-on-navy);
  font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  padding:.6rem .2rem;
}
.df-mob summary::-webkit-details-marker{display:none;}
.df-mob summary:focus-visible{outline:2px solid var(--df-accent);outline-offset:3px;}
.df-mob__bars{
  position:relative;display:block;width:22px;height:2px;
  background:var(--df-accent);
}
.df-mob__bars::before,.df-mob__bars::after{
  content:"";position:absolute;left:0;width:22px;height:2px;background:var(--df-accent);
}
.df-mob__bars::before{top:-7px;}
.df-mob__bars::after{top:7px;}
.df-mob[open] .df-mob__bars{background:transparent;}
.df-mob[open] .df-mob__bars::before{top:0;transform:rotate(45deg);}
.df-mob[open] .df-mob__bars::after{top:0;transform:rotate(-45deg);}

.df-mob__panel{
  position:absolute;right:0;top:calc(100% + .75rem);
  z-index:60;
  width:min(20rem,calc(100vw - 3rem));
  display:flex;flex-direction:column;
  background:var(--df-navy-deep);
  border:1px solid var(--df-rule-dark);
  box-shadow:0 18px 40px oklch(12% 0.03 258 / .45);
}
.df-mob__panel a{
  color:var(--df-on-navy);text-decoration:none;
  font-size:.92rem;padding:.85rem 1.25rem;
  border-bottom:1px solid var(--df-rule-dark);
}
.df-mob__panel a:hover,.df-mob__panel a:focus-visible{
  color:var(--df-accent);background:var(--df-navy);
}
.df-mob__cta{
  background:var(--df-accent);color:var(--df-navy-deep) !important;
  font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:.78rem !important;
}
.df-mob__cta:hover,.df-mob__cta:focus-visible{background:var(--df-accent-deep);color:var(--df-paper) !important;}
.df-mob__tel{border-bottom:0 !important;color:var(--df-on-navy-mute) !important;font-size:.82rem !important;}

/* ============================================================
   CABECERA DE PÁGINA INTERIOR
   ============================================================ */
.df-pagehead{background:var(--df-navy);color:var(--df-on-navy);}
.df-pagehead h1,.df-pagehead .wp-block-heading,.df-pagehead .wp-block-post-title{
  color:var(--df-on-navy);
  font-size:clamp(2rem,4.6vw,3.1rem);
  max-width:34ch;margin:0;
}
.df-pagehead .wp-block-query-title{color:var(--df-on-navy);}
.df-byline{
  margin-top:1.5rem;
  gap:.25rem 1.25rem;align-items:baseline;
}
.df-byline p,.df-byline time,.df-byline .wp-block-post-date{
  margin:0;font-size:.78rem;letter-spacing:.02em;color:var(--df-on-navy-mute);
}
.df-byline p:first-child{color:var(--df-accent);}

/* ============================================================
   PIE — declaración + datos del prestador (art. 10 LSSI-CE)
   ============================================================ */
.df-foot{
  background:var(--df-navy-deep);color:var(--df-on-navy-mute);
  padding-block:4rem 2rem;
}
.df-foot__statement{
  font-family:var(--df-display);font-style:normal;
  font-size:clamp(1.35rem,3.4vw,2.05rem);line-height:1.24;
  color:var(--df-on-navy);
  max-width:44rem;margin:0;
  padding-bottom:2rem;border-bottom:1px solid var(--df-rule-dark);
  overflow-wrap:anywhere;
}
.df-foot__legal{
  padding-block:2rem;font-size:.82rem;line-height:1.7;
  border-bottom:1px solid var(--df-rule-dark);max-width:52rem;
}
.df-foot__legal p{margin:0 0 .5rem;}
.df-foot__legal p:last-child{margin-bottom:0;}
.df-foot__legal strong{color:var(--df-on-navy);font-weight:600;}
.df-foot__legal a{color:inherit;}
.df-foot__links{
  display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;
  padding-block:1.5rem;border-bottom:1px solid var(--df-rule-dark);
}
.df-foot__links a{
  color:inherit;text-decoration:none;font-size:.82rem;white-space:nowrap;
  transition:color .18s ease;
}
.df-foot__links a:hover,.df-foot__links a:focus-visible{color:var(--df-accent);}
.df-foot__base{
  display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;
  padding-top:1.5rem;font-size:.75rem;
}
.df-foot__base a{color:inherit;text-decoration:none;white-space:nowrap;}
.df-foot__base a:hover,.df-foot__base a:focus-visible{color:var(--df-accent);}

/* La plantilla de bloques no debe añadir su propio margen al pie */
.df-foot .df-shell{margin-inline:auto;}

/* ============================================================
   FORMULARIO DE CONTACTO (Contact Form 7)
   ============================================================ */
.wpcf7 p{margin:0 0 1rem;}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 textarea{
  box-sizing:border-box;
  width:100%;
  font-family:var(--df-body);
  font-size:.95rem;
  color:var(--df-ink);
  background:var(--df-paper);
  border:1px solid var(--df-rule);
  border-radius:0;
  padding:.85rem 1rem;
  transition:border-color .18s ease;
}
.wpcf7 textarea{min-height:9rem;resize:vertical;}
.wpcf7 input:focus-visible,
.wpcf7 textarea:focus-visible{
  outline:2px solid var(--df-accent);
  outline-offset:1px;
  border-color:var(--df-accent-deep);
}
.wpcf7 ::placeholder{color:var(--df-muted);opacity:1;}

.df-form__aviso{
  font-size:.82rem;
  line-height:1.6;
  color:var(--df-muted);
  border-left:2px solid var(--df-accent);
  padding-left:.9rem;
}

.wpcf7 .wpcf7-acceptance .wpcf7-list-item{margin:0;}
.wpcf7 .wpcf7-acceptance label{
  display:flex;
  align-items:flex-start;
  gap:.6rem;
  font-size:.85rem;
  line-height:1.55;
  color:var(--df-ink);
}
.wpcf7 .wpcf7-acceptance input[type="checkbox"]{
  margin-top:.2rem;
  width:1.05rem;height:1.05rem;
  accent-color:var(--df-accent-deep);
  flex:0 0 auto;
}

.wpcf7 input[type="submit"]{
  font-family:var(--df-body);
  background:var(--df-accent);
  color:var(--df-navy-deep);
  border:0;
  padding:.95rem 1.6rem;
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.09em;
  text-transform:uppercase;
  cursor:pointer;
  transition:background .18s ease,color .18s ease;
}
.wpcf7 input[type="submit"]:hover,
.wpcf7 input[type="submit"]:focus-visible{
  background:var(--df-accent-deep);
  color:var(--df-paper);
}

.wpcf7 .wpcf7-not-valid-tip{
  color:oklch(48% 0.16 27);
  font-size:.8rem;
  margin-top:.35rem;
}
.wpcf7 .wpcf7-response-output{
  border:1px solid var(--df-rule);
  border-left:3px solid var(--df-accent);
  padding:.9rem 1rem;
  font-size:.88rem;
  margin:1.25rem 0 0;
}

/* La cabecera de página interior se alinea a la izquierda, como el hero */
.df-pagehead > .df-rule,
.df-pagehead .wp-block-post-title,
.df-pagehead .wp-block-query-title,
.df-pagehead .df-byline{margin-inline:0;}

/* ============================================================
   POLÍTICA DE COOKIES (Complianz)
   El documento que genera el plugin trae rejillas propias que
   desbordan por debajo de 360 px. Se contienen aquí.
   ============================================================ */
.cmplz-document,
.cmplz-document *{box-sizing:border-box;max-width:100%;}
.cmplz-document .cmplz-service-header,
.cmplz-document .cmplz-dropdown{
  display:block;
  overflow-x:auto;
}
.cmplz-document table{display:block;width:100%;overflow-x:auto;}
@media (max-width:420px){
  .cmplz-document .cmplz-service-header > *,
  .cmplz-document .name,
  .cmplz-document .purpose,
  .cmplz-document .retention{
    display:block;
    width:100%;
    word-break:break-word;
  }
}

/* ============================================================
   PLANO DE SITUACIÓN Y PLACA DEL LOGOTIPO
   El plano es un SVG propio: sin terceros, sin cookies y sin
   consentimiento previo. Ver la sección de localización de la home.
   ============================================================ */
.df-plano-wrap{
  margin:0;
  border:1px solid var(--df-rule);
  background:var(--df-paper-2);
}
.df-plano{display:block;width:100%;height:auto;background:var(--df-paper-2);}
.df-plano .pl-bg{fill:var(--df-paper-2);}
.df-plano .pl-manzana rect{fill:var(--df-paper-3);}
.df-plano .pl-via line{stroke:var(--df-rule);stroke-width:9;stroke-linecap:square;}
.df-plano .pl-via--eje line{stroke:var(--df-rule);stroke-width:22;}
.df-plano .pl-via--nuestra line{stroke:var(--df-navy-soft);stroke-width:12;}
.df-plano .pl-rot text{font-family:var(--df-body);font-size:13px;letter-spacing:.11em;fill:var(--df-muted);}

.df-plano .pl-rot--nuestra{fill:var(--df-navy);font-weight:600;letter-spacing:.09em;}
.df-plano .pl-metro circle{fill:none;stroke:var(--df-muted);stroke-width:2;}
.df-plano .pl-metro__m{font-family:var(--df-display);font-size:15px;font-weight:700;fill:var(--df-muted);}
.df-plano .pl-metro__n{font-family:var(--df-body);font-size:14px;fill:var(--df-ink);}
.df-plano .pl-metro__l{font-family:var(--df-body);font-size:12px;fill:var(--df-muted);}
.df-plano .pl-marca__halo{fill:var(--df-accent);opacity:.20;}
.df-plano .pl-marca__aro{fill:none;stroke:var(--df-accent-deep);stroke-width:1.5;}
.df-plano .pl-marca__punto{fill:var(--df-accent-deep);}
.df-plano .pl-marca__guia{stroke:var(--df-accent-deep);stroke-width:1.5;stroke-dasharray:3 4;}
.df-plano .pl-mov{display:none;}
.df-plano .pl-marca__t1{font-family:var(--df-body);font-size:14px;font-weight:600;letter-spacing:.14em;fill:var(--df-navy);}
.df-plano .pl-marca__t2{font-family:var(--df-body);font-size:13.5px;fill:var(--df-muted);}
.df-plano .pl-norte line{stroke:var(--df-muted);stroke-width:1.5;}
.df-plano .pl-norte path{fill:var(--df-muted);}
.df-plano .pl-norte text{font-family:var(--df-body);font-size:12px;letter-spacing:.1em;fill:var(--df-muted);}

/* El SVG escala con el contenedor: en pantallas estrechas hay que
   agrandar el texto y retirar las referencias secundarias. */
@media (max-width:781px){
  .df-plano .pl-sec{display:none;}
  .df-plano .pl-rot text{font-size:26px;letter-spacing:.06em;}
  .df-plano .pl-rot--nuestra{font-size:30px;}
  .df-plano .pl-metro circle{r:22px;stroke-width:3;}
  .df-plano .pl-metro__m{font-size:26px;}
  /* Los nombres de las bocas de metro ya constan en la ficha de datos
     contigua: en el plano se deja solo su posición. */
  .df-plano .pl-metro__n,
  .df-plano .pl-metro__l{display:none;}
  .df-plano .pl-marca__halo{r:34px;}
  .df-plano .pl-marca__aro{r:20px;stroke-width:2.5;}
  .df-plano .pl-marca__punto{r:11px;}
  .df-plano .pl-marca__t1{font-size:31px;}
  .df-plano .pl-marca__t2{font-size:27px;}
  .df-plano .pl-via line{stroke-width:12;}
  .df-plano .pl-via--eje line{stroke-width:28;}
  .df-plano .pl-via--nuestra line{stroke-width:16;}
  .df-plano .pl-marca__t2{font-size:25px;}
  .df-plano .pl-desk{display:none;}
  .df-plano .pl-mov{display:block;}
}

.df-plano__pie{
  margin:0;
  padding:.85rem 1.1rem;
  border-top:1px solid var(--df-rule);
  font-size:.78rem;line-height:1.5;color:var(--df-muted);
}
.df-plano__pie a{color:var(--df-accent-deep);text-decoration:none;border-bottom:1px solid currentColor;}
.df-plano__pie a:hover,.df-plano__pie a:focus-visible{color:var(--df-navy);}

/* La placa del logotipo no lleva marco ni sombra: el logo ya trae el suyo */
.df-logoplaca{margin:0;}
.df-logoplaca img{
  display:block;
  width:100%;
  height:auto;
}
