/* ARCHIVO GENERADO por scripts/blindar-css.mjs desde preview/home/assets/css/home.css.
   No editar aquí: editar el preview y volver a generar. La primera clase de cada
   selector va duplicada a propósito para ganar al kit de Elementor. */

/* =========================================================================
   Home — Grupo Dov  (será assets/css/page-home.css en el child theme)
   =========================================================================

   Estructura aprobada el 2026-10-01 (strategy/roadmap.md, etapa 1).
   Versión 1: hero. Las demás secciones llegan en las siguientes versiones.
   ========================================================================= */

/* ---- Hero ------------------------------------------------------------
   Imagen de AMBIENTE a pantalla completa (brand-guide, ley 4): se permite de
   IA, con velo marino encima. El fondo marino es el respaldo: si la imagen no
   carga, el hero se ve completo igual. */

.gd-hero.gd-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  flex-direction: column;
  min-height: clamp(600px, calc(100svh - 76px), 820px);
  background: var(--gd-marino);
  color: var(--gd-acero-200);
  overflow: hidden;
}

.gd-hero__imagen.gd-hero__imagen {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 62% center;
}

/* El velo es funcional, no decorativo: garantiza el contraste del texto
   sobre cualquier imagen. Marino de marca, nunca negro. */
.gd-hero.gd-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg,
      rgba(33, 45, 69, 0.96) 0%,
      rgba(33, 45, 69, 0.88) 34%,
      rgba(33, 45, 69, 0.45) 64%,
      rgba(33, 45, 69, 0.20) 100%),
    linear-gradient(0deg, rgba(33, 45, 69, 0.92) 0%, rgba(33, 45, 69, 0) 34%);
}

.gd-hero__cuerpo.gd-hero__cuerpo {
  flex: 1;
  display: flex;
  align-items: center;
  padding-block: var(--gd-e-8) var(--gd-e-7);
}

.gd-hero__contenido.gd-hero__contenido { max-width: 680px; }

.gd-hero.gd-hero .gd-antetitulo { color: var(--gd-acero-200); margin-bottom: var(--gd-e-5); }

/* Titular de portada: un escalón por encima del H1 del sistema (50px).
   El hero es el único sitio donde se usa. */
.gd-hero__titulo.gd-hero__titulo {
  font-size: clamp(2.375rem, 1.5rem + 3.6vw, 4.125rem);   /* 38 → 66 */
  line-height: 1.04;
  letter-spacing: -0.025em;
  color: var(--gd-blanco);
}
.gd-hero__titulo.gd-hero__titulo em { font-style: normal; color: var(--gd-amarillo); }

.gd-hero__entrada.gd-hero__entrada {
  margin: var(--gd-e-5) 0 0;
  max-width: 56ch;
  font-size: clamp(1.0625rem, 1rem + 0.35vw, 1.25rem);   /* 17 → 20 */
  line-height: 1.55;
  color: var(--gd-acero-200);
}

.gd-hero__acciones.gd-hero__acciones {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gd-e-4);
  margin-top: var(--gd-e-6);
}
.gd-hero__acciones.gd-hero__acciones .gd-boton {
  font-size: var(--gd-t-base);
  padding: var(--gd-e-4) var(--gd-e-6);
}
.gd-hero__acciones.gd-hero__acciones svg { width: 18px; height: 18px; flex: none; }
.gd-hero.gd-hero .gd-boton.gd-boton--secundario {
  color: var(--gd-blanco);
  border-color: rgba(255, 255, 255, 0.55);
}
.gd-hero.gd-hero .gd-boton.gd-boton--secundario:hover {
  border-color: var(--gd-blanco);
  background: rgba(255, 255, 255, 0.08);
  color: var(--gd-blanco);
}

/* ---- Pruebas: solo hechos comprobables (brand-guide: «parecer grandes») --- */

.gd-hero__pruebas.gd-hero__pruebas {
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  padding-block: var(--gd-e-6);
}

.gd-pruebas.gd-pruebas {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--gd-e-5);
  margin: 0;
  padding: 0;
  list-style: none;
}

.gd-prueba.gd-prueba {
  display: flex;
  align-items: flex-start;
  gap: var(--gd-e-3);
}
.gd-prueba.gd-prueba svg {
  flex: none;
  width: 34px;
  height: 34px;
  color: var(--gd-amarillo);       /* icono sin texto: el amarillo sí puede ir aquí */
}
.gd-prueba__dato.gd-prueba__dato {
  display: block;
  font-family: var(--gd-fuente-titular);
  font-weight: 700;
  font-size: var(--gd-t-h4);
  line-height: 1.2;
  color: var(--gd-blanco);
}
.gd-prueba__detalle.gd-prueba__detalle {
  display: block;
  margin-top: 2px;
  font-size: var(--gd-t-menor);
  line-height: 1.4;
  color: var(--gd-acero-300);
}

@media (max-width: 960px) {
  .gd-pruebas.gd-pruebas { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: var(--gd-e-5); }
}

/* En móvil chico, una prueba por fila: en dos columnas «Fabricación propia»
   no cabe y empuja la página fuera de la pantalla. */
@media (max-width: 480px) {
  .gd-pruebas.gd-pruebas { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 640px) {
  .gd-hero.gd-hero { min-height: 0; }
  .gd-hero__imagen.gd-hero__imagen { object-position: 78% center; }
  .gd-hero.gd-hero::before {
    background: linear-gradient(180deg,
      rgba(33, 45, 69, 0.80) 0%,
      rgba(33, 45, 69, 0.90) 55%,
      rgba(33, 45, 69, 0.97) 100%);
  }
  .gd-hero__cuerpo.gd-hero__cuerpo { padding-block: var(--gd-e-7) var(--gd-e-6); }
  .gd-hero__acciones.gd-hero__acciones { flex-direction: column; }
  .gd-hero__acciones.gd-hero__acciones .gd-boton { width: 100%; }
  .gd-pruebas.gd-pruebas { gap: var(--gd-e-4); }
  .gd-prueba.gd-prueba svg { width: 28px; height: 28px; }
}

/* ---- 2 · Categorías ---------------------------------------------------
   Las 6 destacadas de la decisión 1.1 (roadmap), en su orden, cada una
   enlazada a su URL real. Las fotos son de PRODUCTO: solo reales (ley 4). */

.gd-cabeza-seccion.gd-cabeza-seccion {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--gd-e-6);
  margin-bottom: var(--gd-e-7);
}
.gd-cabeza-seccion.gd-cabeza-seccion .gd-texto { margin-top: var(--gd-e-4); }

.gd-categorias.gd-categorias {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--gd-e-5);
  margin: 0;
  padding: 0;
  list-style: none;
}

.gd-categoria.gd-categoria {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--gd-blanco);
  border: 1px solid var(--gd-acero-200);
  border-radius: var(--gd-radio-md);
  overflow: hidden;
  text-decoration: none;
  transition: border-color var(--gd-transicion), box-shadow var(--gd-transicion),
              transform var(--gd-transicion);
}
.gd-categoria.gd-categoria:hover {
  border-color: var(--gd-acero-300);
  box-shadow: var(--gd-sombra-elevada);
  transform: translateY(-2px);
}

.gd-categoria__foto.gd-categoria__foto {
  position: relative;
  aspect-ratio: 4 / 3;
  background: var(--gd-acero-100);
  overflow: hidden;
}
.gd-categoria__foto.gd-categoria__foto img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 400ms ease;
}
.gd-categoria.gd-categoria:hover .gd-categoria__foto img { transform: scale(1.03); }

.gd-categoria__cuerpo.gd-categoria__cuerpo {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: var(--gd-e-2);
  padding: var(--gd-e-5);
  border-top: 3px solid transparent;
  transition: border-color var(--gd-transicion);
}
.gd-categoria.gd-categoria:hover .gd-categoria__cuerpo { border-top-color: var(--gd-amarillo); }

.gd-categoria__nombre.gd-categoria__nombre { margin: 0; }
.gd-categoria__desc.gd-categoria__desc {
  margin: 0;
  font-size: var(--gd-t-menor);
  line-height: 1.5;
  color: var(--gd-texto-suave);
}
.gd-categoria__ir.gd-categoria__ir {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: auto;
  padding-top: var(--gd-e-3);
  font-family: var(--gd-fuente-titular);
  font-weight: 700;
  font-size: var(--gd-t-menor);
  color: var(--gd-enlace);
}
.gd-categoria__ir.gd-categoria__ir svg { width: 16px; height: 16px; transition: transform var(--gd-transicion); }
.gd-categoria.gd-categoria:hover .gd-categoria__ir svg { transform: translateX(3px); }

/* Secundarias: enlaces de texto, no tarjetas (decisión 1.1). */
.gd-secundarias.gd-secundarias {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--gd-e-3) var(--gd-e-5);
  margin-top: var(--gd-e-6);
  padding-top: var(--gd-e-5);
  border-top: 1px solid var(--gd-acero-200);
}
.gd-secundarias__titulo.gd-secundarias__titulo {
  font-family: var(--gd-fuente-titular);
  font-weight: 700;
  font-size: var(--gd-t-menor);
  color: var(--gd-marino);
}
.gd-secundarias.gd-secundarias ul {
  display: flex;
  flex-wrap: wrap;
  gap: var(--gd-e-2) var(--gd-e-5);
  margin: 0;
  padding: 0;
  list-style: none;
}
.gd-secundarias.gd-secundarias a {
  font-size: var(--gd-t-menor);
  color: var(--gd-enlace);
  text-decoration: underline;
  text-decoration-color: var(--gd-acero-300);
  text-underline-offset: 3px;
}
.gd-secundarias.gd-secundarias a:hover { color: var(--gd-enlace-hover); text-decoration-color: currentColor; }

@media (max-width: 960px) {
  .gd-categorias.gd-categorias { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gd-cabeza-seccion.gd-cabeza-seccion { flex-direction: column; align-items: flex-start; }
}
@media (max-width: 600px) {
  .gd-categorias.gd-categorias { grid-template-columns: minmax(0, 1fr); gap: var(--gd-e-4); }
  .gd-categoria.gd-categoria { flex-direction: row; }
  .gd-categoria__foto.gd-categoria__foto { flex: 0 0 38%; aspect-ratio: auto; min-height: 132px; }
  .gd-categoria__cuerpo.gd-categoria__cuerpo { padding: var(--gd-e-4); border-top: 0; }
  .gd-categoria__desc.gd-categoria__desc { font-size: var(--gd-t-micro); }
}

@media (prefers-reduced-motion: reduce) {
  .gd-categoria.gd-categoria, .gd-categoria__foto.gd-categoria__foto img, .gd-categoria__ir.gd-categoria__ir svg { transition: none; }
  .gd-categoria.gd-categoria:hover { transform: none; }
}

/* ---- 3 · Fabricación a la medida ---------------------------------------
   El diferencial frente a una tienda. Bloque marino: rompe el ritmo blanco
   después de las categorías y da peso a la sección. La foto es de TRABAJO
   (taller), así que solo real (ley 4). */

.gd-medida.gd-medida {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: var(--gd-e-8);
  align-items: center;
}

.gd-medida__foto.gd-medida__foto {
  position: relative;
  aspect-ratio: 4 / 3;
  border-radius: var(--gd-radio-md);
  background: var(--gd-marino-claro);
  overflow: hidden;
}
.gd-medida__foto.gd-medida__foto img { width: 100%; height: 100%; object-fit: cover; }

.gd-medida__titulo.gd-medida__titulo em { font-style: normal; color: var(--gd-amarillo); }

.gd-medida__entrada.gd-medida__entrada {
  margin: var(--gd-e-5) 0 0;
  font-size: clamp(1.0625rem, 1rem + 0.25vw, 1.1875rem);
  color: var(--gd-acero-200);
}

.gd-medida__lista.gd-medida__lista {
  display: grid;
  gap: var(--gd-e-4);
  margin: var(--gd-e-6) 0 0;
  padding: 0;
  list-style: none;
}
.gd-medida__lista.gd-medida__lista li {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: var(--gd-e-3);
  align-items: start;
}
.gd-medida__lista.gd-medida__lista svg { width: 24px; height: 24px; color: var(--gd-amarillo); margin-top: 2px; }
.gd-medida__lista.gd-medida__lista strong {
  display: block;
  font-family: var(--gd-fuente-titular);
  color: var(--gd-blanco);
}
.gd-medida__lista.gd-medida__lista span:not(.gd-por-confirmar) { display: block; color: var(--gd-acero-300); font-size: var(--gd-t-menor); }
.gd-medida__lista.gd-medida__lista .gd-por-confirmar { margin: 6px 0 0; }

.gd-medida__acciones.gd-medida__acciones { display: flex; flex-wrap: wrap; gap: var(--gd-e-4); margin-top: var(--gd-e-7); }
.gd-medida__acciones.gd-medida__acciones .gd-boton { font-size: var(--gd-t-base); padding: var(--gd-e-4) var(--gd-e-6); }
.gd-medida__acciones.gd-medida__acciones svg { width: 18px; height: 18px; }

@media (max-width: 960px) {
  .gd-medida.gd-medida { grid-template-columns: minmax(0, 1fr); gap: var(--gd-e-6); }
  .gd-medida__foto.gd-medida__foto { order: 2; }
}
@media (max-width: 600px) {
  .gd-medida__acciones.gd-medida__acciones .gd-boton { width: 100%; }
}

/* ---- 5 · Trabajos realizados ---------------------------------------------
   Fotos REALES de equipos fabricados por Grupo Dov (galería del sitio, abril
   2025). No son instalaciones en clientes y no se presentan como tales. La
   foto grande es la del taller: es la prueba de «fabricación propia».
   Fotos de celular de 600-800 px: la rejilla no las agranda más de eso. */

.gd-trabajos.gd-trabajos {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 230px;
  gap: var(--gd-e-4);
  margin: 0;
  padding: 0;
  list-style: none;
}

.gd-trabajo.gd-trabajo {
  position: relative;
  margin: 0;
  border-radius: var(--gd-radio-md);
  overflow: hidden;
  background: var(--gd-acero-100);
}
.gd-trabajo--grande.gd-trabajo--grande { grid-column: span 2; grid-row: span 2; }
.gd-trabajo.gd-trabajo figure { margin: 0; height: 100%; }

.gd-trabajo.gd-trabajo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 500ms ease;
}
.gd-trabajo.gd-trabajo:hover img { transform: scale(1.04); }

.gd-trabajo.gd-trabajo figcaption {
  position: absolute;
  left: var(--gd-e-3);
  bottom: var(--gd-e-3);
  max-width: calc(100% - var(--gd-e-6));
  padding: 6px 10px;
  border-radius: var(--gd-radio-xs);
  background: rgba(33, 45, 69, 0.9);
  color: var(--gd-blanco);
  font-family: var(--gd-fuente-titular);
  font-size: var(--gd-t-micro);
  font-weight: 700;
  line-height: 1.3;
}
.gd-trabajo--grande.gd-trabajo--grande figcaption { font-size: var(--gd-t-menor); padding: 8px 12px; }
.gd-trabajo.gd-trabajo figcaption::before {        /* filete de marca delante del texto */
  content: "";
  display: inline-block;
  width: 14px;
  height: 3px;
  margin-right: 8px;
  vertical-align: middle;
  background: var(--gd-amarillo);
}

@media (max-width: 960px) {
  .gd-trabajos.gd-trabajos { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: 190px; }
  .gd-trabajo--grande.gd-trabajo--grande { grid-row: span 2; }
}
@media (max-width: 560px) {
  .gd-trabajos.gd-trabajos { grid-auto-rows: 150px; gap: var(--gd-e-3); }
  .gd-trabajo--grande.gd-trabajo--grande { grid-row: span 2; }
  .gd-trabajo.gd-trabajo figcaption { font-size: 11px; padding: 4px 8px; left: 8px; bottom: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .gd-trabajo.gd-trabajo img { transition: none; }
}

/* ---- 6 · Por qué Grupo Dov ---------------------------------------------
   «Parecer grandes y confiables» (brand-guide): cifras, sectores y razones
   comprobables. Las cifras vienen del home actual del cliente. */

.gd-cifras.gd-cifras {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: var(--gd-e-7) 0 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  border-bottom: 1px solid rgba(255, 255, 255, 0.14);
}
.gd-cifra.gd-cifra {
  padding: var(--gd-e-6) var(--gd-e-5);
  border-left: 1px solid rgba(255, 255, 255, 0.14);
}
.gd-cifra.gd-cifra:first-child { border-left: 0; padding-left: 0; }
.gd-cifra__numero.gd-cifra__numero {
  display: block;
  font-family: var(--gd-fuente-titular);
  font-weight: 700;
  font-size: clamp(2.25rem, 1.6rem + 2.2vw, 3.5rem);
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--gd-blanco);
  font-variant-numeric: tabular-nums;
}
.gd-cifra__numero.gd-cifra__numero span { color: var(--gd-amarillo); }
.gd-cifra__texto.gd-cifra__texto {
  display: block;
  margin-top: var(--gd-e-3);
  font-size: var(--gd-t-menor);
  line-height: 1.4;
  color: var(--gd-acero-300);
}

.gd-confian.gd-confian {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--gd-e-3) var(--gd-e-5);
  margin-top: var(--gd-e-6);
}
.gd-confian__titulo.gd-confian__titulo {
  font-family: var(--gd-fuente-titular);
  font-weight: 700;
  color: var(--gd-blanco);
}
.gd-confian.gd-confian ul { display: flex; flex-wrap: wrap; gap: var(--gd-e-3); margin: 0; padding: 0; list-style: none; }
.gd-confian.gd-confian li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: var(--gd-radio-sm);
  font-size: var(--gd-t-menor);
  font-weight: 600;
  color: var(--gd-acero-200);
}
.gd-confian.gd-confian svg { width: 18px; height: 18px; color: var(--gd-amarillo); }

.gd-razones.gd-razones {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--gd-e-5);
  margin: var(--gd-e-8) 0 0;
  padding: 0;
  list-style: none;
}
.gd-razon.gd-razon {
  padding: var(--gd-e-5);
  border-radius: var(--gd-radio-md);
  background: var(--gd-marino-claro);
  border: 1px solid rgba(255, 255, 255, 0.06);
}
.gd-razon.gd-razon svg { width: 32px; height: 32px; color: var(--gd-amarillo); }
.gd-razon.gd-razon h3 { margin: var(--gd-e-4) 0 var(--gd-e-2); color: var(--gd-blanco); font-size: var(--gd-t-h4); }
.gd-razon.gd-razon p { margin: 0; font-size: var(--gd-t-menor); line-height: 1.5; color: var(--gd-acero-300); }

/* Reseñas reales de Google, estáticas y literales (research/resenas-google.md).
   Sin aggregateRating ni schema Review del propio negocio. */
.gd-resenas.gd-resenas {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--gd-e-5);
  margin: 0;
  padding: 0;
  list-style: none;
}
.gd-resena.gd-resena {
  display: flex;
  flex-direction: column;
  height: 100%;
  margin: 0;
  padding: var(--gd-e-6);
  background: var(--gd-blanco);
  border: 1px solid var(--gd-acero-200);
  border-radius: var(--gd-radio-md);
}
.gd-resena__estrellas.gd-resena__estrellas { display: flex; gap: 2px; color: #E8A400; }   /* estrella: gráfico, no texto */
.gd-resena__estrellas.gd-resena__estrellas svg { width: 18px; height: 18px; }
.gd-resena.gd-resena blockquote {
  margin: var(--gd-e-4) 0 var(--gd-e-5);
  font-size: var(--gd-t-base);
  line-height: 1.6;
  color: var(--gd-texto);
}
.gd-resena.gd-resena figcaption {
  display: flex;
  align-items: center;
  gap: var(--gd-e-3);
  margin-top: auto;
  padding-top: var(--gd-e-4);
  border-top: 1px solid var(--gd-acero-200);
}
.gd-resena__inicial.gd-resena__inicial {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  flex: none;
  border-radius: 50%;
  background: var(--gd-marino);
  color: var(--gd-blanco);
  font-family: var(--gd-fuente-titular);
  font-weight: 700;
}
.gd-resena__autor.gd-resena__autor { display: block; font-family: var(--gd-fuente-titular); font-weight: 700; color: var(--gd-marino); }
.gd-resena__dato.gd-resena__dato { display: block; font-size: var(--gd-t-micro); color: var(--gd-texto-suave); }
.gd-resenas-pie.gd-resenas-pie { display: flex; align-items: center; gap: var(--gd-e-3); margin-top: var(--gd-e-6); font-size: var(--gd-t-menor); color: var(--gd-texto-suave); }

@media (max-width: 960px) {
  .gd-cifras.gd-cifras { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gd-cifra.gd-cifra:nth-child(3) { border-left: 0; padding-left: 0; }
  .gd-cifra.gd-cifra:nth-child(-n+2) { border-bottom: 1px solid rgba(255, 255, 255, 0.14); }
  .gd-razones.gd-razones { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .gd-resenas.gd-resenas { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
  .gd-cifra.gd-cifra { padding: var(--gd-e-5) var(--gd-e-3); }
  .gd-razones.gd-razones { grid-template-columns: minmax(0, 1fr); gap: var(--gd-e-3); }
  .gd-resena.gd-resena { padding: var(--gd-e-5); }
}

/* ---- 7 · Proceso y cobertura ----------------------------------------------
   Cuatro pasos numerados unidos por una línea de acero, y los tres países.
   Todo el texto sale del sitio actual (FAQ, fichas y bloque de envíos). */

.gd-pasos.gd-pasos {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--gd-e-6);
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: paso;
}
.gd-pasos.gd-pasos::before {                     /* la línea que une los pasos */
  content: "";
  position: absolute;
  top: 28px;
  left: 28px;
  right: 28px;
  height: 2px;
  background: var(--gd-acero-300);
}
.gd-paso.gd-paso { position: relative; counter-increment: paso; }
.gd-paso__numero.gd-paso__numero {
  position: relative;
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: var(--gd-marino);
  color: var(--gd-amarillo);
  font-family: var(--gd-fuente-titular);
  font-weight: 700;
  font-size: var(--gd-t-h3);
  box-shadow: 0 0 0 6px var(--gd-acero-50);   /* corta la línea alrededor del círculo */
}
.gd-paso__numero.gd-paso__numero::before { content: counter(paso); }
.gd-paso.gd-paso h3 { margin: var(--gd-e-5) 0 var(--gd-e-2); font-size: var(--gd-t-h4); }
.gd-paso.gd-paso p { margin: 0; font-size: var(--gd-t-menor); line-height: 1.55; color: var(--gd-texto-suave); }

/* Cobertura: un solo bloque marino, pegado a los pasos, con un único CTA. */
.gd-cobertura.gd-cobertura {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr);
  gap: var(--gd-e-7);
  align-items: center;
  margin-top: var(--gd-e-8);
  padding: var(--gd-e-7);
  border-radius: var(--gd-radio-md);
  background: var(--gd-marino);
  color: var(--gd-acero-200);
}
.gd-cobertura.gd-cobertura .gd-antetitulo { color: var(--gd-acero-200); }
.gd-cobertura.gd-cobertura .gd-titulo { color: var(--gd-blanco); }
.gd-cobertura__entrada.gd-cobertura__entrada { margin: var(--gd-e-4) 0 0; color: var(--gd-acero-300); }

.gd-cobertura__datos.gd-cobertura__datos { margin: var(--gd-e-5) 0 0; padding: 0; list-style: none; display: grid; gap: var(--gd-e-3); }
.gd-cobertura__datos.gd-cobertura__datos li { display: flex; gap: var(--gd-e-3); font-size: var(--gd-t-menor); color: var(--gd-acero-200); }
.gd-cobertura__datos.gd-cobertura__datos svg { width: 20px; height: 20px; flex: none; color: var(--gd-amarillo); margin-top: 1px; }
.gd-cobertura__datos.gd-cobertura__datos a { color: var(--gd-blanco); font-weight: 600; text-decoration: none; }
.gd-cobertura__datos.gd-cobertura__datos a:hover { text-decoration: underline; }

.gd-paises.gd-paises {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--gd-e-4);
  margin: 0;
  padding: 0;
  list-style: none;
}
.gd-pais.gd-pais {
  position: relative;
  padding: var(--gd-e-5);
  border-radius: var(--gd-radio-md);
  background: var(--gd-marino-claro);
  border: 1px solid rgba(255, 255, 255, 0.08);
  overflow: hidden;
}
.gd-pais.gd-pais::before {                      /* franja amarilla: el canto de la pieza */
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: var(--gd-amarillo);
}
.gd-pais__bandera.gd-pais__bandera {
  display: block;
  width: 42px;
  height: 28px;
  border-radius: 3px;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.25), 0 2px 6px rgba(0, 0, 0, 0.25);
}

.gd-pais.gd-pais h3 { margin: var(--gd-e-3) 0 var(--gd-e-1); font-size: var(--gd-t-h3); color: var(--gd-blanco); }
.gd-pais.gd-pais p { margin: 0; font-size: var(--gd-t-menor); line-height: 1.45; color: var(--gd-acero-300); }
/* La casa matriz se distingue sin competir con el CTA: mismo fondo que las
   demás, borde amarillo tenue y la etiqueta. El amarillo fuerte del bloque es
   solo del botón «Solicitar cotización» (pedido del director, 2026-10-02). */
.gd-pais--sede.gd-pais--sede { border-color: rgba(255, 192, 61, 0.45); }
.gd-pais__sede.gd-pais__sede { white-space: nowrap; }

.gd-pais__sede.gd-pais__sede {
  display: inline-block;
  justify-self: start;
  margin-top: var(--gd-e-3);
  padding: 3px 8px;
  border-radius: var(--gd-radio-xs);
  background: var(--gd-amarillo);
  color: var(--gd-marino);
  font-family: var(--gd-fuente-titular);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.gd-cobertura__accion.gd-cobertura__accion {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--gd-e-4);
  margin-top: var(--gd-e-5);
}
.gd-cobertura__accion.gd-cobertura__accion .gd-boton { font-size: var(--gd-t-base); padding: var(--gd-e-4) var(--gd-e-6); }
.gd-cobertura__accion.gd-cobertura__accion svg { width: 18px; height: 18px; }
.gd-cobertura__accion.gd-cobertura__accion span { font-size: var(--gd-t-menor); color: var(--gd-acero-300); }

@media (max-width: 960px) {
  .gd-pasos.gd-pasos { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: var(--gd-e-7); }
  .gd-pasos.gd-pasos::before { display: none; }
}
@media (max-width: 560px) {
  .gd-pasos.gd-pasos { grid-template-columns: minmax(0, 1fr); gap: var(--gd-e-5); }
  .gd-paso.gd-paso { display: grid; grid-template-columns: 56px minmax(0, 1fr); column-gap: var(--gd-e-4); }
  .gd-paso__numero.gd-paso__numero { grid-row: span 2; }
  .gd-paso.gd-paso h3 { margin-top: var(--gd-e-2); }
  .gd-paises.gd-paises { grid-template-columns: minmax(0, 1fr); gap: var(--gd-e-3); }
  .gd-pais.gd-pais { display: grid; grid-template-columns: 42px minmax(0, 1fr); column-gap: var(--gd-e-4); padding: var(--gd-e-4); }
  .gd-pais__bandera.gd-pais__bandera { grid-row: span 3; margin-top: 4px; }
  .gd-pais.gd-pais h3 { margin-top: 0; }
  .gd-cobertura.gd-cobertura { padding: var(--gd-e-5); }
  .gd-cobertura__accion.gd-cobertura__accion .gd-boton { width: 100%; }
}

/* ---- 8 · Preguntas frecuentes ----------------------------------------------
   Caja de contacto fija a la izquierda y acordeón a la derecha. El acordeón
   es <details>/<summary> nativo: accesible por teclado y sin JavaScript.
   Respuestas de 40-60 palabras con enlaces internos; FAQPage con el mismo
   texto visible. */

.gd-faq.gd-faq {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.6fr);
  gap: var(--gd-e-8);
  align-items: start;
}

.gd-faq__caja.gd-faq__caja {
  position: sticky;
  top: calc(76px + var(--gd-e-5));      /* debajo de la cabecera fija */
  padding: var(--gd-e-7) var(--gd-e-6);
  border-radius: var(--gd-radio-md);
  background: var(--gd-marino);
  color: var(--gd-acero-200);
  overflow: hidden;
}
.gd-faq__caja.gd-faq__caja::before {                 /* canto amarillo, como las tarjetas de país */
  content: "";
  position: absolute;
  inset: 0 0 auto 0;
  height: 4px;
  background: var(--gd-amarillo);
}
.gd-faq__caja.gd-faq__caja .gd-antetitulo { color: var(--gd-acero-200); }
.gd-faq__caja.gd-faq__caja .gd-titulo { color: var(--gd-blanco); }
.gd-faq__caja.gd-faq__caja p { margin: var(--gd-e-4) 0 0; color: var(--gd-acero-300); }
.gd-faq__caja.gd-faq__caja .gd-boton { width: 100%; margin-top: var(--gd-e-6); font-size: var(--gd-t-base); padding: var(--gd-e-4) var(--gd-e-5); }
.gd-faq__caja.gd-faq__caja .gd-boton svg { width: 18px; height: 18px; }
.gd-faq__otros.gd-faq__otros {
  display: grid;
  gap: var(--gd-e-3);
  margin: var(--gd-e-5) 0 0;
  padding: var(--gd-e-5) 0 0;
  list-style: none;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  font-size: var(--gd-t-menor);
}
.gd-faq__otros.gd-faq__otros li { display: flex; align-items: center; gap: var(--gd-e-3); }
.gd-faq__otros.gd-faq__otros svg { width: 20px; height: 20px; flex: none; color: var(--gd-amarillo); }
.gd-faq__otros.gd-faq__otros a { color: var(--gd-blanco); font-weight: 600; text-decoration: none; }
.gd-faq__otros.gd-faq__otros a:hover { text-decoration: underline; }

.gd-faq__lista.gd-faq__lista { border-top: 1px solid var(--gd-acero-200); }
.gd-pregunta.gd-pregunta { border-bottom: 1px solid var(--gd-acero-200); }
.gd-pregunta.gd-pregunta summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--gd-e-5);
  padding: var(--gd-e-5) 0;
  cursor: pointer;
  list-style: none;
  font-family: var(--gd-fuente-titular);
  font-weight: 700;
  font-size: var(--gd-t-h4);
  line-height: 1.35;
  color: var(--gd-marino);
  transition: color var(--gd-transicion);
}
.gd-pregunta.gd-pregunta summary::-webkit-details-marker { display: none; }
.gd-pregunta.gd-pregunta summary:hover { color: var(--gd-enlace); }
.gd-pregunta.gd-pregunta summary:focus-visible { outline: 3px solid var(--gd-enlace); outline-offset: 4px; border-radius: var(--gd-radio-xs); }

.gd-pregunta__icono.gd-pregunta__icono {                   /* «+» que se convierte en «−» */
  position: relative;
  flex: none;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  border: 1px solid var(--gd-acero-300);
  transition: background var(--gd-transicion), border-color var(--gd-transicion);
}
.gd-pregunta__icono.gd-pregunta__icono::before,
.gd-pregunta__icono.gd-pregunta__icono::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 12px;
  height: 2px;
  margin: -1px 0 0 -6px;
  background: var(--gd-marino);
  transition: transform var(--gd-transicion);
}
.gd-pregunta__icono.gd-pregunta__icono::after { transform: rotate(90deg); }
.gd-pregunta.gd-pregunta[open] .gd-pregunta__icono { background: var(--gd-amarillo); border-color: var(--gd-amarillo); }
.gd-pregunta.gd-pregunta[open] .gd-pregunta__icono::after { transform: rotate(0deg); }

.gd-pregunta__respuesta.gd-pregunta__respuesta { padding: 0 var(--gd-e-8) var(--gd-e-5) 0; }
.gd-pregunta__respuesta.gd-pregunta__respuesta p { margin: 0; color: var(--gd-texto); line-height: 1.65; }
.gd-pregunta__respuesta.gd-pregunta__respuesta a { color: var(--gd-enlace); }

@media (max-width: 960px) {
  .gd-faq.gd-faq { grid-template-columns: minmax(0, 1fr); gap: var(--gd-e-6); }
  .gd-faq__caja.gd-faq__caja { position: static; }   /* arriba: lleva el H2 de la sección */
  .gd-pregunta__respuesta.gd-pregunta__respuesta { padding-right: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .gd-pregunta.gd-pregunta summary, .gd-pregunta__icono.gd-pregunta__icono, .gd-pregunta__icono.gd-pregunta__icono::after { transition: none; }
}

/* Marca del preview: texto pendiente de confirmar con el cliente. No va al sitio. */

/* ---- Huecos de imagen del preview ----------------------------------------
   Regla de Clientes: la imagen no decide el diseño. Hasta que el director elija
   la foto real, el hueco va vacío y marcado. No va al sitio. */

/* ---- Aviso del preview: no va al sitio ------------------------------- */
