/* ===========================================================
   PLUMA DORADA EDICIONES
   Tela oscura estampada en oro para la marca, papel crema
   para todo lo que hay que leer.
   =========================================================== */

:root{
  --tinta:#14110E;
  --tinta-2:#1E1913;
  --papel:#FAF6EE;
  --papel-2:#F1E9D9;
  --texto:#1A160F;
  --texto-suave:#3A332A;
  --oro:#C9A227;
  --oro-claro:#F0DFA8;
  --oro-apagado:#6B5421;

  --display:"Cinzel", Georgia, serif;
  --lectura:"Cormorant Garamond", Georgia, serif;
  --interfaz:"Inter", system-ui, -apple-system, sans-serif;

  --ancho:1140px;
  --ancho-lectura:660px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation:none!important;transition:none!important}
}

body{
  margin:0;
  background:var(--papel);
  color:var(--texto);
  font-family:var(--lectura);
  font-weight:500;
  font-size:22px;
  line-height:1.72;
  -webkit-font-smoothing:antialiased;
}

.envoltorio{max-width:var(--ancho);margin:0 auto;padding:0 26px}
.lectura{max-width:var(--ancho-lectura)}

h1,h2,h3{font-family:var(--display);font-weight:700;line-height:1.18;margin:0 0 .5em}
h1{font-size:clamp(2.1rem,5.2vw,3.7rem);letter-spacing:.01em}
h2{font-size:clamp(1.7rem,3.6vw,2.5rem)}
h3{font-size:1.25rem;letter-spacing:.02em}
p{margin:0 0 1.1em;max-width:66ch}

a{color:inherit}

/* --- rombo y filete, el motivo que viene de los carteles --- */
.filete{display:flex;align-items:center;gap:14px;margin:0 0 34px}
.filete::before,.filete::after{content:"";height:1px;background:var(--oro-apagado);flex:1;opacity:.5}
.filete span{width:9px;height:9px;background:var(--oro);transform:rotate(45deg);flex:none}
.filete.corto::before{display:none}
.filete.corto::after{max-width:120px}

/* --- botones --- */
.boton{
  display:inline-block;font-family:var(--interfaz);font-size:.95rem;font-weight:600;
  letter-spacing:.01em;text-decoration:none;padding:15px 30px;border-radius:2px;
  border:1px solid var(--oro);transition:background .18s,color .18s;
}
.boton.solido{background:var(--oro);color:#171308}
.boton.solido:hover{background:var(--oro-claro)}
.boton.hueco{color:var(--oro-claro)}
.boton.hueco:hover{background:rgba(201,162,39,.16)}
.boton.tinta{border-color:var(--tinta);background:var(--tinta);color:var(--oro-claro)}
.boton.tinta:hover{background:#2b2418}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:2px solid var(--oro);outline-offset:3px
}

/* --- barra superior --- */
.barra{
  position:sticky;top:0;z-index:60;background:rgba(20,17,14,.96);
  backdrop-filter:blur(6px);border-bottom:1px solid rgba(201,162,39,.28);
}
.barra .envoltorio{display:flex;align-items:center;gap:28px;height:74px}
.marca{display:flex;align-items:center;gap:12px;text-decoration:none;margin-right:auto}
.marca img{height:58px;width:auto;max-width:190px;border-radius:0;border:none}
.marca b{font-family:var(--display);color:var(--oro-claro);font-size:1rem;letter-spacing:.06em}
.menu{display:flex;gap:26px;font-family:var(--interfaz);font-size:.92rem}
.menu a{color:#D9CEB8;text-decoration:none;padding:6px 0;border-bottom:1px solid transparent}
.menu a:hover{color:var(--oro-claro);border-bottom-color:var(--oro)}
.barra .boton{padding:11px 20px}
@media(max-width:900px){.menu{display:none}.barra .envoltorio{height:64px}}

/* --- portada --- */
.portada{
  background:
    radial-gradient(115% 78% at 50% 0%, rgba(201,162,39,.14) 0%, transparent 62%),
    var(--tinta);
  color:#EFE6D2;text-align:center;padding:34px 0 38px;position:relative;
  border-bottom:1px solid rgba(201,162,39,.3);
}
.portada .emblema{width:198px;max-width:54vw;height:auto;border-radius:0;border:none;margin:0 auto 16px}
.portada h1{color:var(--oro-claro);max-width:22ch;line-height:1.12;margin:0 auto}
.portada .entradilla{font-size:1.14rem;line-height:1.55;color:#CFC3AB;max-width:60ch;margin:18px auto 30px}
.portada .acciones{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.portada .apunte{margin-top:34px;font-family:var(--interfaz);font-size:.83rem;color:#9C9079;letter-spacing:.04em}

/* --- secciones --- */
.seccion{padding:96px 0}
.seccion.papel-2{background:var(--papel-2)}
.seccion.tinta{background:var(--tinta);color:#E6DCC7}
.seccion.tinta h2{color:var(--oro-claro)}
.seccion.tinta p{color:#D2C7B2}
.seccion .titulo{max-width:34ch}
.entradilla-seccion{font-size:1.16rem;color:var(--texto-suave);max-width:60ch;margin-bottom:52px}
.seccion.tinta .entradilla-seccion{color:#C2B69E}

/* --- packs --- */
.packs{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:start}
@media(max-width:980px){.packs{grid-template-columns:1fr;max-width:520px;margin-inline:auto}}
.pack{
  background:var(--papel);border:1px solid rgba(42,36,28,.16);
  padding:38px 32px 34px;display:flex;flex-direction:column;height:100%;
}
.pack h3{font-size:1.05rem;letter-spacing:.14em;color:var(--oro-apagado);margin-bottom:14px}
.pack .frase{font-family:var(--lectura);font-size:1.06rem;color:var(--texto-suave);min-height:3.4em;margin-bottom:22px}
.pack .precio{font-family:var(--display);font-size:2.9rem;line-height:1;margin-bottom:6px}
.pack .plazos{font-family:var(--interfaz);font-size:.82rem;color:var(--texto-suave);margin-bottom:26px}
.pack ul{list-style:none;margin:0 0 30px;padding:0;font-size:1.02rem}
.pack li{padding:9px 0 9px 28px;position:relative;border-top:1px solid rgba(42,36,28,.1)}
.pack li:first-child{border-top:none}
.pack li::before{content:"";position:absolute;left:4px;top:1.02em;width:7px;height:7px;background:var(--oro);transform:rotate(45deg)}
.pack .boton{margin-top:auto;text-align:center}
/* el destacado se marca invirtiendo el material, no con una etiqueta */
.pack.destacado{background:var(--tinta);border-color:var(--oro);color:#E6DCC7}
.pack.destacado h3{color:var(--oro)}
.pack.destacado .frase,.pack.destacado .plazos{color:#C2B69E}
.pack.destacado .precio{color:var(--oro-claro)}
.pack.destacado li{border-top-color:rgba(201,162,39,.2)}
.anadido{
  margin-top:26px;border:1px dashed var(--oro-apagado);padding:22px 26px;
  background:rgba(201,162,39,.07);max-width:760px;
}
.anadido strong{font-family:var(--display)}

/* --- web de autor: la sección que rompe el ritmo --- */
.autor-web{background:var(--tinta-2);color:#E6DCC7;padding:104px 0}
.autor-web h2{color:var(--oro-claro);max-width:20ch}
.autor-web .destacado-frase{
  font-size:clamp(1.35rem,2.7vw,1.95rem);font-family:var(--lectura);font-style:italic;
  color:var(--oro-claro);border-left:2px solid var(--oro);padding-left:26px;margin:0 0 46px;max-width:30ch;
}
.ventajas{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:rgba(201,162,39,.22)}
@media(max-width:820px){.ventajas{grid-template-columns:1fr}}
.ventaja{background:var(--tinta-2);padding:30px 28px}
.ventaja h3{color:var(--oro);font-size:1rem;letter-spacing:.06em}
.ventaja p{margin:0;font-size:1.02rem;color:#C2B69E}

/* --- proceso: aquí la numeración sí es una secuencia real --- */
.proceso{counter-reset:paso;display:grid;gap:0;max-width:820px}
.paso{display:grid;grid-template-columns:74px 1fr;gap:22px;padding:30px 0;border-top:1px solid rgba(42,36,28,.14)}
.paso:last-child{border-bottom:1px solid rgba(42,36,28,.14)}
.paso::before{
  counter-increment:paso;content:counter(paso);
  font-family:var(--display);font-size:1.9rem;color:var(--oro-apagado);line-height:1;
}
.paso h3{margin-bottom:6px}
.paso p{margin:0;color:var(--texto-suave)}

/* --- trabajos --- */
.trabajos{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:900px){.trabajos{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.trabajos{grid-template-columns:1fr}}
.trabajo{border:1px solid rgba(201,162,39,.25);background:#0F0D0B}
.trabajo img{width:100%;height:auto;display:block;aspect-ratio:2/3;object-fit:contain;background:#0B0907}
.trabajo .pie{padding:16px 18px}
.trabajo .pie b{font-family:var(--display);font-size:.98rem;color:var(--oro-claro);display:block;letter-spacing:.03em}
.trabajo .pie span{font-family:var(--interfaz);font-size:.78rem;color:#8A8070}

/* --- tiendas --- */
.tiendas{display:flex;flex-wrap:wrap;gap:10px;max-width:900px;margin-bottom:34px}
.tiendas li{
  list-style:none;font-family:var(--interfaz);font-size:.86rem;
  border:1px solid rgba(42,36,28,.2);padding:8px 15px;background:var(--papel);
}
.dato-fuerte{display:flex;gap:44px;flex-wrap:wrap;margin-top:40px}
.dato-fuerte div{min-width:170px}
.dato-fuerte b{display:block;font-family:var(--display);font-size:2.5rem;color:var(--oro-apagado);line-height:1}
.dato-fuerte span{font-size:1.02rem;color:var(--texto-suave)}

/* --- preguntas --- */
.preguntas{max-width:820px}
.preguntas details{border-top:1px solid rgba(42,36,28,.16)}
.preguntas details:last-of-type{border-bottom:1px solid rgba(42,36,28,.16)}
.preguntas summary{
  cursor:pointer;padding:24px 44px 24px 0;position:relative;list-style:none;
  font-family:var(--display);font-size:1.22rem;font-weight:700;line-height:1.36;
  color:var(--tinta);
}
.preguntas summary:hover{color:var(--oro-apagado)}
.preguntas details[open] summary{color:var(--oro-apagado)}
.preguntas summary::-webkit-details-marker{display:none}
.preguntas summary::after{
  content:"";position:absolute;right:8px;top:34px;width:11px;height:11px;
  border-right:1.5px solid var(--oro-apagado);border-bottom:1.5px solid var(--oro-apagado);
  transform:rotate(45deg);transition:transform .2s;
}
.preguntas details[open] summary::after{transform:rotate(-135deg);top:38px}
.preguntas .respuesta{padding:8px 30px 28px 22px;border-left:3px solid rgba(201,162,39,.5);margin:0 0 4px}
.preguntas .respuesta p{font-family:var(--interfaz);font-size:1.03rem;line-height:1.76;font-weight:400;color:var(--texto);margin:0 0 15px}
.preguntas .respuesta strong{font-weight:700;color:var(--tinta)}
.preguntas .respuesta a{color:var(--oro-apagado);text-decoration:underline}
.preguntas .respuesta p:last-child{margin-bottom:0}

/* --- contacto --- */
.contacto{background:var(--tinta);color:#E6DCC7;padding:96px 0}
.contacto h2{color:var(--oro-claro)}
.contacto-cuadro{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
@media(max-width:900px){.contacto-cuadro{grid-template-columns:1fr;gap:44px}}
.contacto label{display:block;font-family:var(--interfaz);font-size:.82rem;letter-spacing:.05em;color:#C2B69E;margin-bottom:7px}
.contacto input,.contacto textarea,.contacto select{
  width:100%;background:#0F0D0B;border:1px solid rgba(201,162,39,.3);color:#EFE6D2;
  font-family:var(--lectura);font-size:1.02rem;padding:13px 15px;margin-bottom:20px;border-radius:2px;
}
.contacto textarea{min-height:130px;resize:vertical}
.datos-contacto{font-size:1.06rem}
.datos-contacto a{color:var(--oro-claro)}
.datos-contacto div{padding:15px 0;border-top:1px solid rgba(201,162,39,.2)}
.datos-contacto div:first-of-type{border-top:none}

/* --- pie --- */
.pie-web{background:#0D0B09;color:#8A8070;padding:52px 0;font-family:var(--interfaz);font-size:.87rem}
.pie-web .envoltorio{display:flex;justify-content:space-between;gap:26px;flex-wrap:wrap;align-items:center}
.pie-web a{color:#B0A48B;text-decoration:none}
.pie-web a:hover{color:var(--oro-claro)}

/* --- whatsapp flotante --- */
.wa{
  position:fixed;right:22px;bottom:22px;z-index:80;width:60px;height:60px;border-radius:50%;
  background:#25D366;display:grid;place-items:center;box-shadow:0 6px 20px rgba(0,0,0,.3);
}
.wa svg{width:32px;height:32px;fill:#fff}

/* --- blog --- */
.entradas{display:grid;gap:2px;background:rgba(42,36,28,.14);max-width:900px}
.entrada{background:var(--papel);padding:30px 32px;text-decoration:none;display:block}
.entrada:hover{background:var(--papel-2)}
.entrada b{font-family:var(--display);font-size:1.24rem;display:block;margin-bottom:8px}
.entrada span{color:var(--texto-suave);font-size:1.02rem}
.entrada em{display:block;font-family:var(--interfaz);font-size:.78rem;color:#4A4236;font-style:normal;margin-top:12px}
article.articulo{max-width:var(--ancho-lectura)}
article.articulo h2{margin-top:1.8em}
article.articulo ul{padding-left:1.1em}
article.articulo li{margin-bottom:.5em}

/* ===== ARREGLO DE LA CABECERA EN MÓVIL ===== */
@media(max-width:900px){
  .barra .envoltorio{gap:12px}
  .marca img{height:46px;width:auto}
  .marca b{font-size:.82rem;letter-spacing:.04em;white-space:nowrap}
  .barra .boton{padding:9px 14px;font-size:.8rem;white-space:nowrap}
}
@media(max-width:400px){
  .marca b{display:none}
}

/* ===== CONFIGURADOR DEL PACK ===== */
.anadido-pack{
  border-top:1px solid rgba(42,36,28,.14);
  margin:0 0 22px;padding:16px 0 0;
}
.pack.destacado .anadido-pack{border-top-color:rgba(201,162,39,.2)}
.anadido-pack label{
  display:flex;gap:12px;align-items:flex-start;cursor:pointer;
  font-size:.98rem;line-height:1.45;
}
.anadido-pack input{
  appearance:none;width:22px;height:22px;flex:none;margin-top:3px;
  border:1.5px solid var(--oro-apagado);background:transparent;border-radius:2px;cursor:pointer;
}
.pack.destacado .anadido-pack input{border-color:var(--oro)}
.anadido-pack input:checked{background:var(--oro);border-color:var(--oro)}
.anadido-pack input:checked::after{
  content:"";display:block;width:6px;height:11px;margin:2px auto 0;
  border-right:2px solid #171308;border-bottom:2px solid #171308;transform:rotate(45deg);
}
.anadido-pack .coste{font-family:var(--interfaz);font-size:.8rem;color:var(--texto-suave);display:block;margin-top:3px}
.pack.destacado .anadido-pack .coste{color:#C2B69E}

.total{
  display:flex;justify-content:space-between;align-items:baseline;
  border-top:2px solid var(--oro);padding-top:14px;margin-bottom:18px;
}
.total span{font-family:var(--interfaz);font-size:.82rem;letter-spacing:.05em;color:var(--texto-suave)}
.pack.destacado .total span{color:#C2B69E}
.total b{font-family:var(--display);font-size:2rem;line-height:1}
.pack.destacado .total b{color:var(--oro-claro)}

.acciones-pack{display:grid;gap:9px;margin-top:auto}
.acciones-pack button{
  font-family:var(--interfaz);font-size:.92rem;font-weight:600;padding:14px 18px;
  border-radius:2px;cursor:pointer;border:1px solid var(--tinta);
  background:var(--tinta);color:var(--oro-claro);transition:background .18s;
}
.acciones-pack button:hover{background:#2b2418}
.acciones-pack button.secundario{background:transparent;color:var(--texto);border-color:rgba(42,36,28,.35)}
.acciones-pack button.secundario:hover{background:rgba(42,36,28,.07)}
.pack.destacado .acciones-pack button{background:var(--oro);color:#171308;border-color:var(--oro)}
.pack.destacado .acciones-pack button:hover{background:var(--oro-claro)}
.pack.destacado .acciones-pack button.secundario{background:transparent;color:var(--oro-claro);border-color:rgba(201,162,39,.5)}
.pack.destacado .acciones-pack button.secundario:hover{background:rgba(201,162,39,.16)}

/* ===== VENTANA DE SOLICITUD ===== */
.velo{
  position:fixed;inset:0;z-index:90;background:rgba(10,8,6,.72);
  display:none;padding:24px;overflow-y:auto;
}
.velo.abierto{display:grid;place-items:start center}
.ficha{
  background:var(--papel);max-width:560px;width:100%;margin:auto 0;
  border-top:4px solid var(--oro);padding:34px 34px 38px;position:relative;
}
@media(max-width:560px){.ficha{padding:26px 20px 30px}.velo{padding:12px}}
.ficha .cerrar{
  position:absolute;top:14px;right:14px;width:38px;height:38px;border:none;background:transparent;
  font-size:1.6rem;line-height:1;color:var(--texto-suave);cursor:pointer;border-radius:50%;
}
.ficha .cerrar:hover{background:rgba(42,36,28,.08)}
.ficha h3{font-size:1.45rem;margin-bottom:6px;padding-right:40px}
.ficha .resumen{
  background:var(--papel-2);border-left:3px solid var(--oro);
  padding:14px 18px;margin:0 0 26px;font-size:1.02rem;
}
.ficha .resumen b{font-family:var(--display)}
.ficha label{display:block;font-family:var(--interfaz);font-size:.8rem;letter-spacing:.04em;color:var(--texto-suave);margin:0 0 6px}
.ficha input,.ficha textarea{
  width:100%;background:#fff;border:1px solid rgba(42,36,28,.28);color:var(--texto);
  font-family:var(--lectura);font-size:1.02rem;padding:12px 14px;margin-bottom:16px;border-radius:2px;
}
.ficha textarea{min-height:110px;resize:vertical}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:480px){.dos{grid-template-columns:1fr}}
.canal{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 24px}
.canal label{
  display:flex;align-items:center;gap:10px;margin:0;padding:14px 16px;cursor:pointer;
  border:1px solid rgba(42,36,28,.28);background:#fff;font-family:var(--interfaz);
  font-size:.92rem;letter-spacing:0;color:var(--texto);border-radius:2px;
}
.canal input{appearance:none;width:18px;height:18px;margin:0;border:1.5px solid var(--oro-apagado);border-radius:50%;flex:none}
.canal input:checked{border-width:5px;border-color:var(--oro)}
.canal label:has(input:checked){border-color:var(--oro);background:rgba(201,162,39,.1)}
.ficha .enviar{
  width:100%;font-family:var(--interfaz);font-size:1rem;font-weight:600;padding:16px;
  border:none;border-radius:2px;background:var(--tinta);color:var(--oro-claro);cursor:pointer;
}
.ficha .enviar:hover{background:#2b2418}
.ficha .nota{font-family:var(--interfaz);font-size:.76rem;color:var(--texto-suave);margin:14px 0 0;line-height:1.5}

/* ===== RESEÑAS ===== */
.nota-media{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:44px}
.nota-media b{font-family:var(--display);font-size:3.4rem;line-height:1;color:var(--oro-apagado)}
.nota-media .estrellas{font-size:1.5rem;letter-spacing:.12em;color:var(--oro)}
.nota-media span{font-family:var(--interfaz);font-size:.88rem;color:var(--texto-suave)}

.resenas{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
@media(max-width:860px){.resenas{grid-template-columns:1fr}}
.resena{
  background:var(--papel);border:1px solid rgba(42,36,28,.16);
  padding:28px 28px 24px;margin:0;
}
.resena .estrellas{color:var(--oro);letter-spacing:.1em;font-size:1.02rem;display:block;margin-bottom:12px}
.resena p{font-size:1.06rem;margin:0 0 18px;color:var(--texto)}
.resena footer{border-top:1px solid rgba(42,36,28,.14);padding-top:14px}
.resena footer b{font-family:var(--display);font-size:1rem;display:block;letter-spacing:.02em}
.resena footer span{font-family:var(--interfaz);font-size:.8rem;color:var(--texto-suave)}

/* ===== EXPLICACIONES DENTRO DE LOS PACKS ===== */
.pack li.tiene-info{padding-right:34px}
.ayuda{
  appearance:none;border:1px solid rgba(42,36,28,.4);background:transparent;color:var(--texto-suave);
  width:21px;height:21px;border-radius:50%;font-family:var(--interfaz);font-size:.74rem;font-weight:600;
  line-height:1;cursor:pointer;position:absolute;right:0;top:.72em;padding:0;
}
.ayuda:hover{background:var(--oro);border-color:var(--oro);color:#171308}
.pack.destacado .ayuda{border-color:rgba(201,162,39,.55);color:var(--oro)}
.pack.destacado .ayuda:hover{background:var(--oro);color:#171308}
.explica{
  display:none;font-size:.95rem;line-height:1.55;color:var(--texto-suave);
  padding:12px 14px;margin:10px 0 2px;background:rgba(42,36,28,.05);
  border-left:2px solid var(--oro);
}
.pack.destacado .explica{background:rgba(201,162,39,.09);color:#C0B39A}
.explica.visible{display:block}

/* ===== TABLA DE COSTES ===== */
.tabla-costes{width:100%;border-collapse:collapse;margin:16px 0 18px;font-size:1rem}
.tabla-costes th,.tabla-costes td{padding:9px 10px;text-align:left;border-bottom:1px solid rgba(42,36,28,.14)}
.tabla-costes th{font-family:var(--interfaz);font-size:.78rem;letter-spacing:.04em;color:var(--texto-suave);font-weight:600}
.tabla-costes td:first-child{font-family:var(--display)}
.tabla-costes tbody tr:last-child td{border-bottom:none}

/* ===== LOGOTIPO ===== */
.portada .emblema{width:210px;max-width:58vw;height:auto;border-radius:0;border:none;margin:0 auto 16px}
.marca img{height:58px;width:auto;max-width:190px;border-radius:0;border:none}
@media(max-width:900px){.marca img{height:48px;width:auto}}

/* desglose bajo el precio, solo aparece si hay añadidos */
.desglose{
  font-family:var(--interfaz);font-size:.78rem;line-height:1.45;
  color:var(--oro-apagado);margin:-2px 0 8px;min-height:0;
}
.pack.destacado .desglose{color:var(--oro)}
.desglose:empty{display:none}

/* ===== PASARELA DE TRABAJOS ===== */
.pasarela{position:relative}
.carrusel{
  display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;
  padding:4px 4px 18px;margin:0 -4px;
  scrollbar-width:thin;scrollbar-color:rgba(201,162,39,.5) transparent;
}
.carrusel::-webkit-scrollbar{height:6px}
.carrusel::-webkit-scrollbar-track{background:rgba(201,162,39,.12);border-radius:3px}
.carrusel::-webkit-scrollbar-thumb{background:rgba(201,162,39,.55);border-radius:3px}
.carrusel .trabajo{
  flex:0 0 min(300px,74vw);scroll-snap-align:center;margin:0;
  display:flex;flex-direction:column;transition:border-color .2s;
}
.carrusel .trabajo .pie{margin-top:auto}
.carrusel .trabajo:hover{border-color:rgba(201,162,39,.6)}
.flecha{
  position:absolute;top:38%;z-index:5;width:46px;height:46px;border-radius:50%;
  border:1px solid rgba(201,162,39,.5);background:rgba(12,10,9,.9);color:var(--oro-claro);
  font-size:1.2rem;line-height:1;cursor:pointer;display:grid;place-items:center;
}
.flecha:hover{background:var(--oro);color:#171308}
.flecha.izq{left:-14px}
.flecha.der{right:-14px}
@media(max-width:900px){.flecha{display:none}}
.pista{font-family:var(--interfaz);font-size:.8rem;color:#8A8070;margin-top:6px}

/* el precio va al final del pack, tras la lista de lo que incluye */
.pack .frase{margin-bottom:26px}
.bloque-precio{
  border-top:2px solid var(--oro);padding-top:18px;margin-top:auto;
}
.pack .bloque-precio .precio{margin-bottom:4px}
.pack .bloque-precio .plazos{margin-bottom:0}
.pack .acciones-pack{margin-top:20px}

/* ===== PAÍSES Y TIENDAS ===== */
.paises{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;background:rgba(42,36,28,.16)}
@media(max-width:760px){.paises{grid-template-columns:1fr}}
.pais{background:var(--papel);padding:18px 22px}
.pais b{font-family:var(--display);font-size:.98rem;display:block;margin-bottom:5px;letter-spacing:.03em}
.pais span{font-size:1rem;color:var(--texto-suave);line-height:1.5}

/* ===== CABECERA DE CADA PACK ===== */
.cab-pack{text-align:center;margin:0 0 22px}
.cab-pack .eyebrow{
  display:block;font-family:var(--interfaz);font-size:.68rem;font-weight:600;
  letter-spacing:.28em;text-transform:uppercase;color:var(--texto-suave);margin-bottom:8px;
}
.pack.destacado .cab-pack .eyebrow{color:#9C8F76}
.cab-pack h3{
  font-size:2.05rem;letter-spacing:.02em;margin:0;color:var(--texto);line-height:1.1;
}
.pack.destacado .cab-pack h3{color:var(--oro-claro)}
.cab-pack .rombo{
  display:block;width:9px;height:9px;background:var(--oro);
  transform:rotate(45deg);margin:16px auto 0;position:relative;
}
.cab-pack .rombo::before,.cab-pack .rombo::after{
  content:"";position:absolute;top:4px;width:52px;height:1px;background:var(--oro-apagado);opacity:.55;
  transform:rotate(-45deg);
}
.cab-pack .rombo::before{right:14px;transform-origin:right;transform:rotate(-45deg)}
.cab-pack .rombo::after{left:14px;transform-origin:left;transform:rotate(-45deg)}
.pack .frase{text-align:center}

/* ===== CATÁLOGO ===== */
.filtros{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:38px}
.filtro{
  font-family:var(--interfaz);font-size:.86rem;padding:9px 18px;cursor:pointer;border-radius:2px;
  border:1px solid rgba(42,36,28,.28);background:transparent;color:var(--texto-suave);
}
.filtro:hover{border-color:var(--oro-apagado);color:var(--texto)}
.filtro.activo{background:var(--tinta);border-color:var(--tinta);color:var(--oro-claro)}

.catalogo{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:900px){.catalogo{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.catalogo{grid-template-columns:1fr}}
.ficha .datos em{
  display:inline-block;margin-top:10px;font-style:normal;font-family:var(--interfaz);
  font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--oro-apagado);
}

/* ===== FICHA DE LIBRO ===== */
.libro-cab{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:start}
@media(max-width:820px){.libro-cab{grid-template-columns:1fr;gap:32px}}
.libro-cab img{width:100%;height:auto;border:1px solid rgba(201,162,39,.3)}
.compra{display:grid;gap:10px;margin:28px 0 0}
.compra a{
  display:flex;justify-content:space-between;align-items:center;text-decoration:none;
  border:1px solid rgba(201,162,39,.45);padding:15px 20px;color:var(--oro-claro);
  font-family:var(--interfaz);font-size:.95rem;border-radius:2px;
}
.compra a:hover{background:rgba(201,162,39,.15)}
.compra a span:last-child{font-size:.82rem;color:#B0A48B}

/* ===== CATÁLOGO: REJILLA DE LIBRERÍA ===== */
.biblioteca{display:grid;grid-template-columns:repeat(4,1fr);gap:56px 34px}
@media(max-width:1000px){.biblioteca{grid-template-columns:repeat(3,1fr);gap:46px 26px}}
@media(max-width:640px){.biblioteca{grid-template-columns:repeat(2,1fr);gap:38px 20px}}

.biblioteca .ficha{margin:0}
.biblioteca .ficha a{display:block;text-decoration:none}
.tomo{display:block;line-height:0}
.tomo img{
  width:100%;height:auto;display:block;aspect-ratio:auto;object-fit:contain;
  box-shadow:0 14px 28px rgba(20,14,6,.26), 0 2px 6px rgba(20,14,6,.18);
  transition:transform .25s, box-shadow .25s;
}
.biblioteca .ficha a:hover .tomo img{
  transform:translateY(-7px);
  box-shadow:0 22px 40px rgba(20,14,6,.34), 0 4px 10px rgba(20,14,6,.22);
}
.biblioteca .datos{padding:20px 2px 0;text-align:left}
.biblioteca .datos b{
  font-family:var(--display);font-size:.96rem;display:block;line-height:1.3;
  margin-bottom:3px;color:var(--texto);
}
.biblioteca .datos span{display:block;color:var(--texto-suave);font-size:.94rem;line-height:1.35}
.biblioteca .datos em{
  display:block;margin-top:9px;font-style:normal;font-family:var(--interfaz);
  font-size:.66rem;letter-spacing:.11em;text-transform:uppercase;color:var(--oro-apagado);
}

/* dos columnas para "qué necesitamos de ti" */
.dos-columnas{display:grid;grid-template-columns:1fr 1fr;gap:56px}
@media(max-width:860px){.dos-columnas{grid-template-columns:1fr;gap:44px}}
.lista-simple{list-style:none;margin:0;padding:0}
.lista-simple li{padding:14px 0 14px 26px;position:relative;border-top:1px solid rgba(42,36,28,.13);font-size:1.02rem}
.lista-simple li:first-child{border-top:none}
.lista-simple li::before{content:"";position:absolute;left:2px;top:1.5em;width:7px;height:7px;background:var(--oro);transform:rotate(45deg)}
.lista-simple b{font-family:var(--display);font-weight:700}

/* ===== INTERIORES DE MAQUETA ===== */
.interiores{display:grid;gap:34px}
.interiores figure{margin:0}
.interiores img{
  width:100%;height:auto;display:block;
  box-shadow:0 16px 34px rgba(0,0,0,.4);
}
.interiores figcaption{
  font-family:var(--interfaz);font-size:.84rem;color:#B0A48B;
  padding-top:14px;letter-spacing:.01em;
}
@media(min-width:900px){
  .interiores{grid-template-columns:1fr 1fr;gap:38px 30px}
  .interiores figure:first-child{grid-column:1 / -1}
}

/* ============================================================
   MEJORAS DE CONVERSIÓN, MÓVIL Y ACCESIBILIDAD
   ============================================================ */

/* --- saltar al contenido (teclado y lectores de pantalla) --- */
.saltar{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:var(--oro);color:#171308;padding:14px 22px;
  font-family:var(--interfaz);font-size:.9rem;font-weight:600;text-decoration:none;
}
.saltar:focus{left:0}

/* --- los anclajes no quedan tapados por la barra --- */
section[id], div[id]{scroll-margin-top:92px}

/* --- MENÚ MÓVIL --- */
.hamburguesa{
  display:none;width:44px;height:44px;border:none;background:transparent;
  cursor:pointer;padding:10px;flex:none;
}
.hamburguesa span{
  display:block;height:2px;background:var(--oro-claro);margin:5px 0;border-radius:2px;
  transition:transform .25s, opacity .2s;
}
.hamburguesa.activa span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburguesa.activa span:nth-child(2){opacity:0}
.hamburguesa.activa span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.menu-movil{
  display:none;flex-direction:column;background:var(--tinta);
  border-top:1px solid rgba(201,162,39,.28);
}
.menu-movil.abierto{display:flex}
.menu-movil a{
  color:#D9CEB8;text-decoration:none;font-family:var(--lectura);font-size:1.15rem;
  padding:17px 26px;border-bottom:1px solid rgba(201,162,39,.14);
}
.menu-movil a:active{background:rgba(201,162,39,.12)}

@media(max-width:900px){
  .hamburguesa{display:block}
  .cta-barra{display:none}
}

/* --- PRUEBA SOCIAL EN LA PORTADA --- */
.confianza-portada{
  display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;
  margin-top:34px;font-family:var(--interfaz);font-size:.86rem;color:#C2B69E;
}
.confianza-portada .estrellas{color:var(--oro);letter-spacing:.1em;font-size:1rem}

/* --- FRANJA DE GARANTÍAS --- */
.franja-garantias{background:var(--tinta-2);border-bottom:1px solid rgba(201,162,39,.2);padding:26px 0}
.franja-garantias .envoltorio{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;text-align:center}
@media(max-width:820px){.franja-garantias .envoltorio{grid-template-columns:repeat(2,1fr);gap:24px 16px;text-align:left}}
.franja-garantias b{
  display:block;font-family:var(--display);font-size:.95rem;color:var(--oro-claro);
  letter-spacing:.02em;margin-bottom:3px;
}
.franja-garantias span{font-family:var(--interfaz);font-size:.8rem;color:#9C8F76;line-height:1.4}

/* --- CITA JUNTO A LOS PACKS --- */
.cita-cerca{
  margin:44px 0 0;padding:26px 30px;background:var(--papel);
  border-left:3px solid var(--oro);max-width:760px;
}
.cita-cerca p{font-size:1.08rem;font-style:italic;margin-bottom:14px;color:var(--texto)}
.cita-cerca footer{font-family:var(--interfaz);font-size:.84rem;color:var(--texto-suave)}
.cita-cerca footer b{font-family:var(--display);font-style:normal}
.cita-cerca footer a{color:var(--oro-apagado)}

/* --- BARRA FIJA EN EL MÓVIL (zona del pulgar) --- */
.barra-movil{display:none}
@media(max-width:900px){
  .barra-movil{
    display:grid;grid-template-columns:1fr auto;gap:10px;
    position:fixed;left:0;right:0;bottom:0;z-index:85;
    padding:11px 14px calc(11px + env(safe-area-inset-bottom));
    background:rgba(20,17,14,.97);backdrop-filter:blur(8px);
    border-top:1px solid rgba(201,162,39,.3);
  }
  .barra-movil a{
    display:flex;align-items:center;justify-content:center;min-height:48px;
    font-family:var(--interfaz);font-size:.95rem;font-weight:600;
    text-decoration:none;border-radius:3px;
  }
  .bm-packs{background:var(--oro);color:#171308}
  .bm-wa{background:#25D366;color:#fff;padding:0 20px}
  .wa{display:none}                    /* el botón flotante estorba con la barra */
  body{padding-bottom:80px}
  .pie-web{padding-bottom:26px}
}

/* --- APARICIÓN SUAVE AL HACER SCROLL --- */
.aparece{opacity:0;transform:translateY(16px);transition:opacity .55s ease, transform .55s ease}
.aparece.visto{opacity:1;transform:none}
@media (prefers-reduced-motion: reduce){.aparece{opacity:1;transform:none}}

/* --- ZONAS TÁCTILES MÍNIMAS --- */
@media(max-width:900px){
  .boton, .acciones-pack button, .filtro, .ficha .enviar{min-height:48px}
  .ayuda{width:30px;height:30px;font-size:.85rem;top:.55em}
  .pack li.tiene-info{padding-right:42px}
  .preguntas summary{padding-top:22px;padding-bottom:22px}
}

/* resumen de dónde se vende */
.resumen-venta{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:rgba(42,36,28,.16)}
@media(max-width:760px){.resumen-venta{grid-template-columns:1fr}}
.resumen-venta > div{background:var(--papel);padding:30px 32px}
.resumen-venta b{display:block;font-family:var(--display);font-size:2.8rem;color:var(--oro-apagado);line-height:1}
.resumen-venta > div > span{display:block;font-family:var(--interfaz);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--texto-suave);margin:6px 0 14px}
.resumen-venta p{margin:0;font-size:1.02rem;color:var(--texto)}

/* ===== CALCULADORA ===== */
.calc{display:grid;grid-template-columns:1fr 1.15fr;gap:44px;align-items:start}
@media(max-width:820px){.calc{grid-template-columns:1fr;gap:32px}}
.calc-campos label{
  display:block;font-family:var(--interfaz);font-size:.8rem;letter-spacing:.05em;
  color:#C2B69E;margin:0 0 7px;
}
.calc-campos input{
  width:100%;background:#0F0D0B;border:1px solid rgba(201,162,39,.3);color:#EFE6D2;
  font-family:var(--display);font-size:1.5rem;padding:13px 16px;margin-bottom:20px;border-radius:2px;
}
.calc-campos input:focus{border-color:var(--oro);outline:none}
.con-euro{position:relative}
.con-euro span{
  position:absolute;right:16px;top:14px;font-family:var(--display);font-size:1.5rem;color:var(--oro);
}
.con-euro input{padding-right:44px}

.calc-resultado{border:1px solid rgba(201,162,39,.35);padding:8px 28px 24px;background:rgba(201,162,39,.05)}
.calc-fila{
  display:flex;justify-content:space-between;align-items:baseline;gap:18px;
  padding:20px 0;border-bottom:1px solid rgba(201,162,39,.16);
}
.calc-fila span{font-size:1.02rem;color:#D2C7B2;max-width:22ch}
.calc-fila b{font-family:var(--display);font-size:2rem;color:var(--oro-claro);line-height:1;white-space:nowrap}
.calc-fila.destacada{border-bottom:none}
.calc-fila.destacada b{color:var(--oro)}
.calc-nota{
  font-family:var(--interfaz);font-size:.82rem;color:#8A8070;
  margin:6px 0 0;line-height:1.5;border-top:1px solid rgba(201,162,39,.16);padding-top:16px;
}

/* ===== COMPARATIVA ===== */
.comparativa{overflow-x:auto;-webkit-overflow-scrolling:touch}
.comparativa table{width:100%;min-width:660px;border-collapse:collapse;background:var(--papel)}
.comparativa th,.comparativa td{
  padding:16px 18px;text-align:left;vertical-align:top;font-size:1rem;
  border-bottom:1px solid rgba(42,36,28,.13);
}
.comparativa thead th{
  font-family:var(--display);font-size:1rem;letter-spacing:.02em;color:var(--texto);
  border-bottom:2px solid var(--oro-apagado);
}
.comparativa tbody th{
  font-family:var(--interfaz);font-size:.82rem;font-weight:600;letter-spacing:.03em;
  color:var(--texto-suave);width:22%;
}
.comparativa td{color:var(--texto-suave)}
.comparativa .destaca{background:var(--tinta);color:#E6DCC7}
.comparativa thead .destaca{color:var(--oro-claro);border-bottom-color:var(--oro)}
.comparativa tbody .destaca{color:#E6DCC7}
.comparativa tbody tr:last-child th,.comparativa tbody tr:last-child td{border-bottom:none}
.comparativa tbody tr:last-child .destaca{padding-bottom:22px}
@media(max-width:760px){
  .comparativa{margin:0 -26px;padding:0 26px}
  .comparativa table{min-width:600px}
  .comparativa th,.comparativa td{padding:13px 13px;font-size:.94rem}
}

/* ===== QUIÉNES SOMOS ===== */
.equipo{display:grid;grid-template-columns:1fr 1fr;gap:52px}
@media(max-width:760px){.equipo{grid-template-columns:1fr;gap:44px}}
.equipo article{margin:0}
.equipo img{
  width:190px;height:190px;object-fit:cover;border-radius:50%;
  border:1px solid rgba(201,162,39,.4);margin-bottom:22px;display:block;
}
.equipo h3{font-size:1.4rem;color:var(--oro-claro);margin-bottom:4px}
.equipo .cargo{
  font-family:var(--interfaz);font-size:.78rem;letter-spacing:.09em;text-transform:uppercase;
  color:var(--oro-apagado);margin-bottom:18px;
}
.equipo p{color:#D2C7B2;font-size:1.04rem}

.cifra-grande{
  margin-top:58px;padding-top:34px;border-top:1px solid rgba(201,162,39,.22);
  display:flex;align-items:baseline;gap:22px;flex-wrap:wrap;
}
.cifra-grande b{font-family:var(--display);font-size:clamp(3.2rem,8vw,5rem);color:var(--oro);line-height:.9}
.cifra-grande span{font-size:1.15rem;color:#C2B69E;max-width:26ch}

/* el coste por ejemplar, que es lo que más preguntan */
.calc-destacado{
  border-bottom:2px solid var(--oro);padding:22px 0 24px;margin-bottom:4px;
}
.calc-destacado span{
  display:block;font-family:var(--interfaz);font-size:.8rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--oro);margin-bottom:8px;
}
.calc-destacado b{
  display:block;font-family:var(--display);font-size:clamp(2.8rem,8vw,3.8rem);
  color:var(--oro-claro);line-height:1;margin-bottom:12px;
}
.calc-destacado em{
  display:block;font-style:normal;font-family:var(--interfaz);font-size:.82rem;
  color:#8A8070;line-height:1.5;max-width:34ch;
}
.calc-sub{
  font-family:var(--interfaz);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;
  color:#8A8070;margin:18px 0 0;
}

/* selectores de formato y tinta en la calculadora */
.opciones{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:20px}
.op{
  font-family:var(--interfaz);font-size:.9rem;padding:13px 8px;cursor:pointer;border-radius:2px;
  border:1px solid rgba(201,162,39,.3);background:#0F0D0B;color:#C2B69E;min-height:46px;
  transition:background .15s, color .15s, border-color .15s;
}
.op:hover{border-color:var(--oro-apagado);color:#EFE6D2}
.op.activa{background:var(--oro);border-color:var(--oro);color:#171308;font-weight:600}

/* explicación de la impresión bajo demanda */
.explica-bajo-demanda{
  border-left:3px solid var(--oro);padding:4px 0 4px 26px;margin:8px 0 0;max-width:70ch;
}
.explica-bajo-demanda p{color:#D2C7B2;margin-bottom:16px}
.explica-bajo-demanda strong{color:var(--oro-claro);font-family:var(--display);font-weight:700}
@media(max-width:760px){.explica-bajo-demanda{padding-left:18px}}

/* los tres apuntes de la portada, que antes partían mal de línea */
.apunte-lista{
  list-style:none;margin:30px 0 0;padding:0;
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:10px 0;
}
.apunte-lista li{
  font-family:var(--interfaz);font-size:.84rem;color:#9C8F76;
  padding:0 20px;position:relative;white-space:nowrap;
}
.apunte-lista li + li::before{
  content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  width:4px;height:4px;background:var(--oro-apagado);border-radius:50%;opacity:.7;
}
@media(max-width:820px){
  .apunte-lista{flex-direction:column;align-items:center;gap:9px}
  .apunte-lista li{padding:0;white-space:normal;text-align:center;font-size:.86rem}
  .apunte-lista li + li::before{display:none}
}

/* --- línea que encabeza el bloque de opiniones --- */
.resenas-intro{max-width:52rem;margin:0 auto 2.2rem;text-align:center;font-family:var(--interfaz);font-size:.95rem;line-height:1.6;color:var(--texto-suave)}

/* --- consentimiento del formulario de contacto --- */
.consent{display:flex;align-items:flex-start;gap:10px;font-family:var(--interfaz);font-size:.88rem;line-height:1.45;color:#C2B69E;margin:6px 0 18px;cursor:pointer;text-align:left}
.consent input{width:17px;height:17px;margin:1px 0 0;flex:none;accent-color:var(--oro)}
.consent a{color:var(--oro-claro)}
.nota-form{font-family:var(--interfaz);font-size:.85rem;color:#A99E8C;margin:14px 0 0}

/* --- pantallas muy estrechas: nada debe desbordar a lo ancho --- */
p,li,dd,figcaption,.resena p,.datos-contacto div,.datos-contacto a,.aviso-legal a{overflow-wrap:break-word}
@media(max-width:400px){
  .tabla-costes{font-size:.92rem}
  .tabla-costes th,.tabla-costes td{padding:8px 6px}
}

/* --- imágenes cuyo alto lo decide el CSS, no el atributo del HTML --- */
.trabajo img,.libro-cab img,.tomo img,.interiores img,.ilus img,.cabecera img,
.pack img,.entrada img,.biblioteca img{height:auto}

/* ===================== IMPRESIÓN BAJO DEMANDA ===================== */
.pod{display:grid;grid-template-columns:1fr 1fr;gap:30px 40px;margin:38px 0 0}
@media(max-width:760px){.pod{grid-template-columns:1fr;gap:26px}}
.pod-b b{display:block;font-family:var(--display);font-size:1.28rem;color:var(--oro-claro);margin:0 0 9px}
.pod-b p{font-size:1.04rem;color:#D2C7B2;margin:0;line-height:1.62}
.pod-pie{margin:38px 0 0;font-family:var(--interfaz);font-size:.98rem;color:#B0A48B;border-top:1px solid rgba(201,162,39,.22);padding-top:24px}

/* ===================== CONFIGURADOR ===================== */
.paginas-caja{background:#E9DFC8;border:1px solid rgba(138,110,46,.28);border-radius:4px;padding:24px 26px;margin:34px 0 8px}
.paginas-caja label{display:block;font-family:var(--interfaz);font-size:.86rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--tinta);margin:0 0 10px}
.paginas-caja input{width:190px;max-width:100%;padding:13px 14px;font-family:var(--interfaz);font-size:1.15rem;font-weight:600;background:var(--papel);color:var(--texto);border:1px solid rgba(138,110,46,.4);border-radius:3px}
.paginas-caja input:focus{outline:2px solid var(--oro);outline-offset:1px}
.paginas-caja .cfg-ayuda{display:block;font-family:var(--interfaz);font-size:.9rem;color:var(--texto-suave);margin:12px 0 0;line-height:1.55}
.paginas-caja .cfg-ayuda a{color:var(--oro-apagado)}

.grupo-cfg{font-family:var(--display);font-size:1.5rem;color:var(--tinta);margin:44px 0 16px;padding-bottom:10px;border-bottom:1px solid rgba(138,110,46,.25)}
.servicios{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:start}
@media(max-width:820px){.servicios{grid-template-columns:1fr}}

.srv{background:var(--papel-2);border:1px solid rgba(42,36,28,.14);border-radius:4px;padding:0;transition:border-color .18s, background .18s}
.srv.marcado{border-color:var(--oro);background:#F6EEDC}
.srv-cab{display:flex;align-items:flex-start;gap:13px;padding:17px 18px 13px;cursor:pointer}
.srv-check{width:20px;height:20px;margin:1px 0 0;flex:none;accent-color:var(--oro);cursor:pointer}
.srv-n{flex:1;font-family:var(--display);font-size:1.13rem;font-weight:600;color:var(--tinta);line-height:1.3}
.srv-p{font-family:var(--interfaz);font-size:1rem;font-weight:600;color:var(--oro-apagado);white-space:nowrap;padding-top:2px}
.srv-mas{display:block;width:100%;text-align:left;background:none;border:none;border-top:1px solid rgba(42,36,28,.1);
  font-family:var(--interfaz);font-size:.84rem;letter-spacing:.04em;color:var(--texto-suave);
  padding:11px 18px;cursor:pointer}
.srv-mas:hover{color:var(--oro-apagado)}
.srv-detalle{padding:0 18px 17px}
.srv-detalle p{font-family:var(--interfaz);font-size:.95rem;line-height:1.62;color:var(--texto-suave);margin:0}

.resumen-cfg{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;margin:52px 0 0;
  background:var(--tinta);border-radius:4px;padding:34px 32px;color:#E6DCC7}
@media(max-width:820px){.resumen-cfg{grid-template-columns:1fr;gap:28px;padding:26px 20px}}
.resumen-lista h3{font-family:var(--display);font-size:1.4rem;color:var(--oro-claro);margin:0 0 16px}
#cfg-lista{list-style:none;margin:0;padding:0}
#cfg-lista li{display:flex;justify-content:space-between;gap:16px;font-family:var(--interfaz);font-size:.97rem;
  padding:9px 0;border-bottom:1px solid rgba(201,162,39,.18)}
#cfg-lista li:last-child{border-bottom:none}
#cfg-lista li b{white-space:nowrap;color:var(--oro-claro)}
#cfg-lista .vacio{color:#9C9079;display:block;font-style:italic}

.resumen-total .linea{display:flex;justify-content:space-between;align-items:baseline;gap:14px;
  font-family:var(--interfaz);font-size:1rem;padding:8px 0;color:#C2B69E}
.resumen-total .linea b{color:#E6DCC7;font-size:1.06rem}
.resumen-total .linea.dto b{color:#8FBF6F}
.resumen-total .linea.grande{border-top:1px solid rgba(201,162,39,.3);margin-top:8px;padding-top:16px}
.resumen-total .linea.grande span{font-family:var(--display);font-size:1.3rem;color:var(--oro-claro)}
.resumen-total .linea.grande b{font-family:var(--display);font-size:2.3rem;color:var(--oro-claro);line-height:1}
.nota-dto{font-family:var(--interfaz);font-size:.88rem;color:#A99E8C;margin:14px 0 20px;line-height:1.5}
#cfg-enviar{width:100%;text-align:center;cursor:pointer;font:inherit;font-family:var(--interfaz);font-weight:600;font-size:1.02rem;border:none}
.nota-cfg{font-family:var(--interfaz);font-size:.84rem;color:#9C9079;margin:12px 0 0;text-align:center}
#cfg-dudas{width:100%;text-align:center;cursor:pointer;font:inherit;font-family:var(--interfaz);font-weight:600;
  font-size:.96rem;margin-top:10px;border:1px solid rgba(201,162,39,.45);color:var(--oro-claro);background:none}
#cfg-dudas:hover{background:rgba(201,162,39,.1)}

@media(max-width:560px){
  .srv-cab{flex-wrap:wrap;padding:15px 15px 11px}
  .srv-n{flex:1 1 100%;font-size:1.06rem}
  .srv-p{white-space:normal;flex:1 1 100%;padding:6px 0 0 33px;font-size:.95rem}
  .srv-check{order:-1}
  .srv-mas,.srv-detalle{padding-left:15px;padding-right:15px}
  .grupo-cfg{font-size:1.32rem;margin:34px 0 14px}
  .paginas-caja{padding:20px 16px}
}

[hidden]{display:none !important}
.srv-p{display:flex;flex-direction:column;align-items:flex-end;line-height:1.25}
.srv-p small{font-weight:400;font-size:.78rem;color:var(--texto-suave);letter-spacing:.01em}
@media(max-width:560px){.srv-p{align-items:flex-start}}

.portada .sobretitulo{max-width:none;font-family:var(--interfaz);font-size:.82rem;letter-spacing:.24em;text-indent:.24em;text-transform:uppercase;
  color:var(--oro);margin:0 0 18px}

/* con seis entradas el menú necesita menos aire y letra algo menor */
@media(max-width:1180px){.menu{gap:18px;font-size:.87rem}}
@media(max-width:1020px){.menu{gap:14px;font-size:.83rem}.barra .boton{padding:10px 15px;font-size:.86rem}}
.entradilla-contacto{font-family:var(--interfaz);font-size:1rem;line-height:1.62;color:#C2B69E;max-width:62ch;margin:0 0 34px}

.modo-cfg{display:flex;gap:8px;margin:0 0 20px;flex-wrap:wrap}
.modo-cfg .modo{font-family:var(--interfaz);font-size:.9rem;padding:9px 16px;cursor:pointer;
  background:none;border:1px solid rgba(42,36,28,.28);border-radius:999px;color:var(--texto-suave)}
.modo-cfg .modo.activa{background:var(--tinta);border-color:var(--tinta);color:var(--oro-claro);font-weight:600}
.paginas-caja select{width:100%;max-width:440px;padding:12px 13px;font-family:var(--interfaz);font-size:1rem;
  background:var(--papel);color:var(--texto);border:1px solid rgba(138,110,46,.4);border-radius:3px}
.paginas-caja select:focus{outline:2px solid var(--oro);outline-offset:1px}
#cfg-estim{color:var(--oro-apagado);font-size:1.06rem}

#cfg-file{display:block;width:100%;max-width:440px;padding:14px;font-family:var(--interfaz);font-size:.95rem;
  background:var(--papel);border:1px dashed rgba(138,110,46,.55);border-radius:4px;cursor:pointer;color:var(--texto)}
#cfg-file:focus{outline:2px solid var(--oro);outline-offset:1px}
.aviso-privacidad{font-family:var(--interfaz);font-size:.92rem;line-height:1.62;color:var(--texto-suave);
  background:var(--papel);border-left:3px solid #4F6B3E;padding:15px 17px;margin:16px 0 0;border-radius:0 3px 3px 0;max-width:62ch}
.aviso-privacidad b{color:#3D5430}
.res-archivo{font-family:var(--interfaz);font-size:1rem;margin:16px 0 0;padding:13px 16px;border-radius:3px;
  background:var(--papel);border:1px solid rgba(138,110,46,.3)}
.res-archivo.bien{border-color:#4F6B3E;color:#3D5430}
.res-archivo.bien b{font-size:1.14rem}
.res-archivo.malo{border-color:#A8442C;color:#8C3A24}

/* --- el desplegable "Qué incluye", bien diferenciado --- */
.srv-mas{position:relative;padding-right:40px;font-weight:600;color:var(--oro-apagado);
  background:rgba(201,162,39,.09);border-top:1px solid rgba(138,110,46,.22);transition:background .16s}
.srv-mas:hover{background:rgba(201,162,39,.18);color:var(--tinta)}
.srv-mas::after{content:"+";position:absolute;right:16px;top:50%;transform:translateY(-50%);
  font-size:1.15rem;line-height:1;font-weight:400}
.srv-mas[aria-expanded="true"]{background:var(--tinta);color:var(--oro-claro);border-top-color:var(--tinta)}
.srv-mas[aria-expanded="true"]::after{content:"\2212"}
.srv-detalle{background:var(--tinta);padding:4px 18px 20px;border-radius:0 0 3px 3px}
.srv-detalle p{color:#D2C7B2;font-size:.96rem;line-height:1.68}
.srv.marcado .srv-mas{background:rgba(201,162,39,.2)}
.srv.marcado .srv-mas[aria-expanded="true"]{background:var(--tinta)}

/* --- el texto de las tablas, con más cuerpo --- */
.tabla-costes td{color:var(--texto)}
.tabla-costes th{color:var(--texto-suave)}
.tabla-p td,.tabla-ref td{color:var(--texto)}

/* --- imágenes del interior --- */
.srv-imgs .srv-cab.estatica{display:flex;align-items:flex-start;gap:13px;padding:17px 18px 13px;cursor:default}
.srv-imgs .srv-n{flex:1}
.img-campos{display:grid;grid-template-columns:1fr 1.4fr;gap:14px;padding:0 18px 16px}
@media(max-width:560px){.img-campos{grid-template-columns:1fr;padding:0 15px 14px}}
.img-c label{display:block;font-family:var(--interfaz);font-size:.78rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--texto-suave);margin:0 0 7px}
.img-c input,.img-c select{width:100%;padding:11px 12px;font-family:var(--interfaz);font-size:.98rem;
  background:var(--papel);color:var(--texto);border:1px solid rgba(138,110,46,.4);border-radius:3px}
.img-c input:focus,.img-c select:focus{outline:2px solid var(--oro);outline-offset:1px}

/* --- servicio que ya va incluido en otro --- */
.srv.incluido{opacity:.62}
.srv.incluido .srv-cab{cursor:not-allowed}
.ya-incluido{display:block;font-family:var(--interfaz);font-size:.78rem;font-weight:400;
  letter-spacing:.04em;color:var(--oro-apagado);margin-top:4px;text-transform:none}


/* --- iconos de cada servicio --- */
.srv-ico{width:24px;height:24px;flex:none;margin-top:1px;opacity:.9}
.srv.marcado .srv-ico{opacity:1}
.srv-logos{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;
  background:#fff;margin:2px 14px 14px;padding:14px 16px;border-radius:4px;
  border:1px solid rgba(42,36,28,.07)}
.srv-logos img{height:30px;width:auto}
@media(max-width:560px){.srv-logos{margin:2px 11px 12px;padding:11px 12px;gap:11px 15px}
  .srv-logos img{height:25px}}

/* --- cómo quieres tu libro --- */
.nota-grupo{font-family:var(--interfaz);font-size:.97rem;line-height:1.62;color:var(--texto-suave);
  max-width:66ch;margin:-6px 0 20px}
.config-libro{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:var(--papel-2);
  border-radius:4px;padding:24px 26px}
@media(max-width:760px){.config-libro{grid-template-columns:1fr;padding:20px 16px}}
.cl-c label{display:block;font-family:var(--interfaz);font-size:.78rem;letter-spacing:.07em;
  text-transform:uppercase;color:var(--texto-suave);margin:0 0 8px}
.cl-c select{width:100%;padding:12px 13px;font-family:var(--interfaz);font-size:.97rem;
  background:var(--papel);color:var(--texto);border:1px solid rgba(138,110,46,.4);border-radius:3px}
.cl-c select:focus{outline:2px solid var(--oro);outline-offset:1px}

/* --- cómo quiere el libro --- */
.nota-grupo{font-family:var(--interfaz);font-size:.97rem;line-height:1.62;color:var(--texto-suave);
  max-width:66ch;margin:-6px 0 22px}
.config-libro{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px;background:var(--papel-2);
  border-radius:4px;padding:24px 26px}
@media(max-width:700px){.config-libro{grid-template-columns:1fr;padding:20px 16px}}
.cl-c label{display:block;font-family:var(--interfaz);font-size:.78rem;letter-spacing:.07em;
  text-transform:uppercase;color:var(--texto-suave);margin:0 0 8px}
.cl-c select{width:100%;padding:12px 13px;font-family:var(--interfaz);font-size:1rem;
  background:var(--papel);color:var(--texto);border:1px solid rgba(138,110,46,.4);border-radius:3px}
.cl-c select:focus{outline:2px solid var(--oro);outline-offset:1px}
.aviso-tamano{background:var(--papel);border-left:3px solid var(--oro);padding:20px 24px;margin:18px 0 0;
  border-radius:0 3px 3px 0}
.aviso-tamano p{font-family:var(--interfaz);font-size:.97rem;line-height:1.66;color:var(--texto-suave);margin:0 0 12px}
.aviso-tamano p:last-child{margin-bottom:0}
.aviso-tamano strong{color:var(--texto)}

/* --- tamaño óptico de cada logo según su proporción --- */
.srv-logos img.l-ancho{height:22px}
.srv-logos img.l-medio{height:28px}
.srv-logos img.l-alto{height:36px}
@media(max-width:560px){
  .srv-logos img.l-ancho{height:18px}
  .srv-logos img.l-medio{height:23px}
  .srv-logos img.l-alto{height:30px}
}

.srv.regalado{border-color:rgba(79,107,62,.55);background:#F3F2E4}
.regalo{display:block;font-family:var(--interfaz);font-size:.79rem;font-weight:600;
  letter-spacing:.03em;color:#3D5430;margin-top:4px;text-transform:none}
.srv-detalle .reg{background:rgba(201,162,39,.14);border-left:3px solid var(--oro);
  padding:12px 14px;margin:14px 0 0;border-radius:0 3px 3px 0;color:#E6DCC7}
.srv-detalle .reg b{color:var(--oro-claro)}
.srv-detalle .reg a{color:var(--oro-claro);text-decoration:underline}

/* --- Cormorant es un serif fino: sube el trazo para que se lea bien --- */
p,li,dd,td,th,summary,figcaption,blockquote{font-weight:500}
.entradilla,.pod-b p,.aviso-tamano p,.nota-grupo,.srv-detalle p{font-weight:500}
strong,b{font-weight:700}

.iva-nota{font-family:var(--interfaz);font-size:.86rem;color:#B0A48B;margin:8px 0 16px;text-align:right}

/* --- un <p> centrado necesita márgenes automáticos: p{max-width:66ch} lo dejaba a la izquierda --- */
.portada p,.pod-pie,.nota-cfg,.iva-nota,.res-archivo,.entradilla-contacto,
.nota-grupo,.cfg-ayuda,.aviso-privacidad,.resenas-intro{max-width:66ch;margin-left:auto;margin-right:auto}
.pod-pie,.nota-grupo,.cfg-ayuda,.aviso-privacidad,.entradilla-contacto{margin-left:0;margin-right:0}
.caja-pregunta{font-family:var(--display);font-size:1.28rem;font-weight:700;color:var(--tinta);
  margin:0 0 16px;max-width:none}
.sr-solo{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.boton-valoracion{display:inline-block;margin-top:6px;font-family:var(--interfaz);font-weight:600;font-size:.98rem}
.preguntas .respuesta a.boton-valoracion{color:var(--tinta);text-decoration:none}

/* --- cierre de las preguntas frecuentes --- */
.cierre-faq{margin:52px 0 0;background:var(--tinta);border-radius:4px;padding:38px 34px;text-align:center}
.cierre-faq p{font-family:var(--interfaz);font-size:1.12rem;line-height:1.66;color:#E6DCC7;
  max-width:60ch;margin:0 auto 26px}
.cierre-botones{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.cierre-faq .boton.hueco{border-color:rgba(201,162,39,.5);color:var(--oro-claro)}
.cierre-faq .boton.hueco:hover{background:rgba(201,162,39,.12)}
.cierre-nota{font-size:.92rem !important;color:#A99E8C !important;margin:24px auto 0 !important}
@media(max-width:560px){.cierre-faq{padding:28px 18px}.cierre-botones{flex-direction:column}
  .cierre-faq .boton{width:100%;text-align:center}}

.pasos-contratar{background:rgba(201,162,39,.1);border-left:3px solid var(--oro);
  border-radius:0 3px 3px 0;padding:16px 18px;margin:20px 0 22px}
.pasos-contratar b{display:block;font-family:var(--interfaz);font-size:.92rem;color:var(--oro-claro);margin:0 0 10px}
.pasos-contratar ol{margin:0;padding-left:20px}
.pasos-contratar li{font-family:var(--interfaz);font-size:.92rem;line-height:1.6;color:#D2C7B2;margin:0 0 7px}
.pasos-contratar li:last-child{margin-bottom:0}
.ct .consent{color:var(--texto);font-size:.97rem;line-height:1.6;margin:14px 0 8px}
.ct .consent input{width:18px;height:18px}

/* --- los dos pasos del contrato --- */
.ct-dos-botones{margin:36px 0 0}
.ct-paso{display:flex;gap:16px;align-items:flex-start;background:var(--papel-2);
  border:1px solid rgba(138,110,46,.22);border-radius:4px;padding:22px 24px;margin:0 0 16px}
.ct-num{flex:none;width:34px;height:34px;border-radius:50%;background:var(--oro);color:var(--tinta);
  display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;font-size:1.1rem}
.ct-paso b{display:block;font-family:var(--display);font-size:1.22rem;color:var(--tinta);margin:3px 0 8px}
.ct-paso p{font-family:var(--interfaz);font-size:.98rem;line-height:1.66;color:var(--texto);margin:0 0 14px;max-width:62ch}
.ct-formas{margin:0 0 16px;padding-left:20px}
.ct-formas li{font-family:var(--interfaz);font-size:.97rem;line-height:1.62;color:var(--texto);margin:0 0 8px}
.ct-formas b{display:inline;font-family:var(--interfaz);font-size:inherit;margin:0}
.ct-paso .boton{cursor:pointer;font:inherit;font-family:var(--interfaz);font-weight:600}
.ct-paso button.boton{border:none}
.ct-paso .boton.hueco{background:none;border:1.5px solid var(--tinta);color:var(--tinta)}
.ct-paso .boton.hueco:hover{background:var(--tinta);color:var(--oro-claro)}
.ct-paso .boton[disabled]{opacity:.45;cursor:not-allowed}
.ct-bloqueo{font-size:.9rem !important;color:var(--texto-suave) !important;margin:10px 0 0 !important}
@media(max-width:560px){.ct-paso{padding:18px 15px;gap:12px}.ct-paso .boton{width:100%;text-align:center}}
#cfg-contrato{display:block;width:100%;text-align:center;font-family:var(--interfaz);font-weight:600;font-size:1.02rem}
.ct-lista-serv{display:block;margin:14px 0 0;border:1px solid rgba(138,110,46,.3);border-radius:4px;overflow:hidden}
.ct-serv-fijo{font-family:var(--interfaz);font-size:.98rem;color:var(--texto);padding:11px 16px;
  background:var(--papel-2);border-bottom:1px solid rgba(138,110,46,.18)}
.ct-serv-fijo:last-of-type{border-bottom:none}
.ct-serv-nota{font-family:var(--interfaz);font-size:.9rem;color:var(--texto-suave);margin:12px 0 0}
.ct-serv-nota a{color:var(--oro-apagado);text-decoration:underline}

.ct-h2{font-family:var(--display);font-size:1.5rem;color:var(--tinta);margin:46px 0 4px}
.ct-ayuda{font-family:var(--interfaz);font-size:.95rem;color:var(--texto-suave);margin:0 0 4px;max-width:62ch}
.ct-campos input[readonly]{background:var(--papel-2);color:var(--texto-suave)}
#ct-serv.ct-lista-serv{margin-top:14px}
.ct-paso{margin-top:34px}
.ct-paso .firma-caja{margin:6px 0 0}
.firma-pie span{font-family:var(--interfaz);font-size:.9rem;color:var(--texto-suave)}
.ct-paso .cierre-botones{margin:4px 0 0}

/* --- aviso al terminar el contrato --- */
.hecho-velo{position:fixed;inset:0;z-index:95;background:rgba(10,8,6,.8);overflow-y:auto;
  display:flex;align-items:flex-start;justify-content:center;padding:32px 18px}
.hecho-caja{position:relative;background:var(--papel);border-radius:5px;max-width:620px;width:100%;
  padding:40px 38px 34px;box-shadow:0 30px 70px rgba(0,0,0,.5)}
@media(max-width:560px){.hecho-caja{padding:32px 20px 26px}.hecho-velo{padding:16px 10px}}
.hecho-x{position:absolute;top:12px;right:14px;background:none;border:none;font-size:1.9rem;
  line-height:1;color:var(--texto-suave);cursor:pointer;padding:4px 8px}
.hecho-tick{display:flex;align-items:center;justify-content:center;width:54px;height:54px;
  border-radius:50%;background:#4F6B3E;color:#fff;font-size:1.7rem;margin:0 0 18px}
.hecho-caja h2{font-family:var(--display);font-size:1.8rem;color:var(--tinta);margin:0 0 10px}
.hecho-intro{font-family:var(--interfaz);font-size:1.04rem;line-height:1.66;color:var(--texto);margin:0 0 24px}
.hecho-paso{background:var(--papel-2);border-left:3px solid var(--oro);border-radius:0 3px 3px 0;
  padding:18px 20px;margin:0 0 16px}
.hecho-paso > b{display:block;font-family:var(--display);font-size:1.18rem;color:var(--tinta);margin:0 0 8px}
.hecho-paso li b,.hecho-paso p b{display:inline;font-family:inherit;font-size:inherit;font-weight:700;color:var(--tinta);margin:0}
.hecho-paso p{font-family:var(--interfaz);font-size:.98rem;line-height:1.66;color:var(--texto);margin:0}
.hecho-paso ul{margin:0;padding-left:20px}
.hecho-paso li{font-family:var(--interfaz);font-size:.98rem;line-height:1.6;color:var(--texto);margin:0 0 6px}
.hecho-nota{margin-top:12px !important;font-size:.92rem !important;color:var(--texto-suave) !important}
.hecho-botones{display:flex;gap:12px;flex-wrap:wrap;margin:24px 0 0}
.hecho-botones .boton.hueco{background:none;border:1.5px solid var(--tinta);color:var(--tinta);font-weight:600}
.hecho-botones .boton.hueco:hover{background:var(--tinta);color:var(--oro-claro)}
@media(max-width:560px){.hecho-botones{flex-direction:column}.hecho-botones .boton{width:100%;text-align:center}}
.hecho-tick.alerta{background:#A8442C;font-weight:700}
#cfg-contrato.apagado{opacity:.45;cursor:not-allowed}
.falta-ext{font-family:var(--interfaz);font-size:.92rem;color:#E0A88F;margin:10px 0 0;text-align:center}
.srv-p .sin-dato{font-family:var(--interfaz);font-size:.92rem;font-weight:400;color:var(--texto-suave)}
.total-falta{font-family:var(--interfaz);font-size:1.05rem;font-weight:600;color:#E0A88F;line-height:1.3;display:inline-block;max-width:9ch;text-align:right}
.tramo-aviso{font-family:var(--interfaz);font-size:.95rem;line-height:1.62;color:var(--texto);
  background:rgba(79,107,62,.12);border-left:3px solid #4F6B3E;padding:12px 15px;margin:14px 0 12px;
  border-radius:0 3px 3px 0;max-width:64ch}
.tramo-aviso b{color:#3D5430}
.srv-p small b{color:#8FBF6F;font-weight:600}

/* --- la opción de traer la portada --- */
.maq-opcion{padding:0 18px 14px;margin:-4px 0 0}
.maq-opcion label{display:flex;align-items:center;gap:9px;cursor:pointer;
  font-family:var(--interfaz);font-size:.97rem;color:var(--texto)}
.maq-opcion input{width:17px;height:17px;flex:none;accent-color:var(--oro)}
.maq-opcion p{font-family:var(--interfaz);font-size:.9rem;line-height:1.55;color:var(--texto-suave);
  margin:7px 0 0 26px;max-width:58ch}
.maq-opcion p b{color:var(--texto)}
@media(max-width:560px){.maq-opcion{padding:0 15px 12px}}
.apunte-corto{font-family:var(--interfaz);font-size:.93rem;color:var(--texto-suave);margin:12px 0 10px;max-width:60ch}
.apunte-corto a{color:var(--oro-apagado);text-decoration:underline}
.techo-aviso{font-family:var(--interfaz);font-size:.93rem;line-height:1.55;color:#8FBF6F;
  background:rgba(79,107,62,.18);border-radius:3px;padding:10px 13px;margin:12px 0 0;text-align:left}
.techo-aviso b{color:#A8D48A}

/* --- la flecha que señala el paso clave --- */
.caja-cabeza{display:flex;align-items:flex-start;gap:12px;margin:0 0 16px}
.flecha-clave{flex:none;margin-top:2px;animation:senala 1.6s ease-in-out infinite}
.flecha-clave svg{display:block;transform:rotate(180deg)}
@keyframes senala{0%,100%{transform:translateX(0)}50%{transform:translateX(-7px)}}
@media(prefers-reduced-motion:reduce){.flecha-clave{animation:none}}
.caja-clave{font-family:var(--interfaz);font-size:.93rem;line-height:1.5;color:#A8442C;
  font-weight:600;margin:4px 0 0;max-width:52ch}
@media(max-width:560px){
  .caja-cabeza{gap:9px}
  .flecha-clave svg{width:34px;height:25px}
  .caja-clave{font-size:.88rem}
}

/* --- guía de pasos del configurador --- */
.paso-guia{display:flex;align-items:flex-start;gap:13px;flex-wrap:wrap;
  background:var(--tinta);border-radius:4px;padding:15px 20px;margin:30px 0 0;position:relative}
.paso-guia::after{content:"";position:absolute;left:34px;bottom:-9px;width:0;height:0;
  border-left:9px solid transparent;border-right:9px solid transparent;border-top:9px solid var(--tinta)}
.paso-n{flex:none;width:28px;height:28px;border-radius:50%;background:var(--oro);color:var(--tinta);
  display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;font-size:1rem}
.paso-guia b{font-family:var(--display);font-size:1.18rem;color:var(--oro-claro);line-height:1.3;margin-top:1px}
.paso-guia > span:last-child{flex:1 1 100%;font-family:var(--interfaz);font-size:.94rem;line-height:1.55;
  color:#D2C7B2;margin-left:41px}
.paso-guia.hecho{background:rgba(79,107,62,.16);border:1px solid rgba(79,107,62,.4)}
.paso-guia.hecho::after{border-top-color:rgba(79,107,62,.16)}
.paso-guia.hecho .paso-n{background:#4F6B3E;color:#fff}
.paso-guia.hecho b{color:#3D5430}
.paso-guia.hecho > span:last-child{color:var(--texto-suave)}
@media(max-width:560px){
  .paso-guia{padding:13px 15px;gap:10px}
  .paso-guia > span:last-child{margin-left:0;flex-basis:100%}
  .paso-guia::after{left:24px}
}

/* --- texto más grande y legible para todas las edades --- */
.srv-n{font-size:1.32rem}
.srv-p{font-size:1.24rem}
.srv-p small{font-size:.92rem}
.srv-detalle p,.preguntas .respuesta p{font-size:1.08rem;line-height:1.78}
.preguntas summary{font-size:1.3rem}
.cfg-ayuda,.nota-grupo,.apunte-corto,.maq-opcion p,.img-c label,.cl-c label{font-size:1rem}
.caja-pregunta{font-size:1.45rem}
.modo-cfg .modo{font-size:1rem;padding:11px 18px}
.paginas-caja input,.paginas-caja select,.cl-c select,.img-c input,.img-c select{font-size:1.1rem;padding:14px 14px}
.boton{font-size:1.06rem}
.srv-check{width:24px;height:24px}
.maq-opcion input,.ct-serv input{width:21px;height:21px}
.maq-opcion label{font-size:1.06rem}
@media(max-width:560px){
  body{font-size:21px}
  .srv-n{font-size:1.2rem}
  .srv-p{font-size:1.14rem}
  .preguntas summary{font-size:1.18rem}
}
/* correos y direcciones largas no deben romper la página en móviles estrechos */
.articulo p,.articulo li,.articulo td,.pie-web span{word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}

/* en móviles muy estrechos, los títulos no pueden pasarse de ancho */
@media(max-width:400px){
  .articulo h1{font-size:1.65rem}
  .articulo h2{font-size:1.3rem}
  .titulo{font-size:1.75rem}
  .articulo h1,.articulo h2,.articulo h3,.titulo{word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}
}

/* --- el grupo que toca elegir ahora --- */
.grupo-cfg[data-grupo]{position:relative;transition:color .2s}
.grupo-cfg.activo{color:var(--oro-apagado)}


/* --- el rótulo que va saltando de sección, con su flecha --- */
.grupo-rotulo{display:block;position:relative;margin:14px 0 0;padding:14px 18px 16px;
  background:var(--tinta);border-radius:4px;letter-spacing:0;text-transform:none}
.grupo-rotulo::after{content:"";position:absolute;left:30px;bottom:-10px;width:0;height:0;opacity:.3;
  border-left:10px solid transparent;border-right:10px solid transparent;border-top:10px solid var(--tinta);
  transition:opacity .25s, transform .25s}
.grupo-rotulo.mirando::after{opacity:1;transform:translateY(3px)}
.grupo-rotulo.mirando{box-shadow:0 0 0 2px var(--oro)}
.grupo-rotulo b{display:block;font-family:var(--display);font-size:1.22rem;font-weight:700;
  color:var(--oro-claro);line-height:1.35}
.grupo-rotulo i{display:block;font-style:normal;font-family:var(--interfaz);font-size:.95rem;
  color:#C2B69E;margin-top:5px}
@media(max-width:560px){
  .grupo-rotulo{padding:12px 14px 14px}
  .grupo-rotulo b{font-size:1.1rem}
  .grupo-rotulo::after{left:22px}
}

/* --- las tarjetas del grupo que toca ahora --- */
.servicios.grupo-activo{position:relative;background:rgba(201,162,39,.09);
  border:2px solid rgba(201,162,39,.55);border-radius:5px;padding:14px;margin-top:14px}
.servicios.grupo-activo .srv{border-color:rgba(138,110,46,.45)}
@media(max-width:560px){.servicios.grupo-activo{padding:9px}}
.grupo-nota{font-family:var(--interfaz);font-size:1rem;line-height:1.6;color:var(--texto-suave);
  margin:-6px 0 16px;max-width:62ch}

.grupo-nota{display:none}
.servicios.grupo-activo{background:rgba(201,162,39,.07);border:1.5px solid rgba(201,162,39,.4)}
.grupo-rotulo{transition:box-shadow .25s}

/* --- lo que está marcado tiene que verse a la legua --- */
.srv.marcado{
  background:#F6EBC9 !important;
  border:2.5px solid var(--oro) !important;
  box-shadow:0 2px 0 rgba(138,110,46,.28);
}
.srv.marcado .srv-n{color:var(--tinta);font-weight:700}
.srv.marcado .srv-cab{background:rgba(201,162,39,.2)}
.srv.marcado .srv-mas{background:rgba(201,162,39,.26)}
.srv.marcado .srv-logos{background:#fff;border-color:rgba(138,110,46,.25)}
/* una marca de verificación bien visible */
.srv{position:relative}
.srv.marcado::before{
  content:"\2713";
  position:absolute;top:-13px;right:-11px;z-index:2;
  width:34px;height:34px;border-radius:50%;
  background:#4F6B3E;color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-size:1.15rem;font-weight:700;
  box-shadow:0 2px 6px rgba(0,0,0,.28);
}
.srv-check{accent-color:#4F6B3E}
@media(max-width:560px){
  .srv.marcado::before{width:29px;height:29px;font-size:1rem;top:-10px;right:-8px}
  .servicios.grupo-activo{padding:12px 11px}
}

/* --- "Cómo quieres tu libro", con el mismo aspecto que los servicios --- */
.config-libro.grupo-activo{background:rgba(201,162,39,.07);border:1.5px solid rgba(201,162,39,.4);
  border-radius:5px;padding:20px 22px}
@media(max-width:700px){.config-libro.grupo-activo{padding:16px 14px}}
.cl-c{position:relative;background:var(--papel);border:2px solid rgba(138,110,46,.22);
  border-radius:4px;padding:14px 16px;transition:border-color .2s, background .2s}
.cl-c.elegido{background:#F6EBC9;border-color:var(--oro);border-width:2.5px}
.cl-c.elegido label{color:var(--tinta);font-weight:700}
.cl-c.elegido::before{content:"\2713";position:absolute;top:-12px;right:-10px;z-index:2;
  width:30px;height:30px;border-radius:50%;background:#4F6B3E;color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;
  box-shadow:0 2px 6px rgba(0,0,0,.28)}
@media(max-width:560px){.cl-c.elegido::before{width:26px;height:26px;font-size:.9rem;top:-9px;right:-7px}}

/* --- la página del contrato, igual de clara --- */
.ct-campos.grupo-activo{background:rgba(201,162,39,.07);border:1.5px solid rgba(201,162,39,.4);
  border-radius:5px;padding:20px 22px;margin-top:16px}
@media(max-width:680px){.ct-campos.grupo-activo{padding:16px 13px}}
.ct-campos > div{position:relative;background:var(--papel);border:2px solid rgba(138,110,46,.22);
  border-radius:4px;padding:13px 15px;transition:border-color .2s, background .2s}
.ct-campos > div.relleno{background:#F6EBC9;border-color:var(--oro);border-width:2.5px}
.ct-campos > div.relleno label{color:var(--tinta);font-weight:700}
.ct-campos > div.relleno::before{content:"\2713";position:absolute;top:-12px;right:-10px;z-index:2;
  width:30px;height:30px;border-radius:50%;background:#4F6B3E;color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;
  box-shadow:0 2px 6px rgba(0,0,0,.28)}
.ct .grupo-rotulo{margin:14px 0 0}
@media(max-width:560px){.ct-campos > div.relleno::before{width:26px;height:26px;font-size:.9rem;top:-9px;right:-7px}}

/* --- la ventana de dudas, simple --- */
#ficha-form textarea{min-height:190px;font-size:1.06rem;line-height:1.6;padding:15px}
.envio-dos{display:flex;gap:11px;flex-wrap:wrap;margin-top:16px}
.envio-dos .enviar{flex:1 1 auto;margin:0}
.envio-dos .copiar{flex:0 0 auto;font-family:var(--interfaz);font-size:1rem;font-weight:600;
  padding:14px 20px;border-radius:3px;cursor:pointer;
  background:none;border:1.5px solid rgba(201,162,39,.55);color:var(--oro-claro)}
.envio-dos .copiar:hover{background:rgba(201,162,39,.14)}
#f-nota.copiado{color:#8FBF6F}
@media(max-width:520px){.envio-dos{flex-direction:column}.envio-dos .copiar{width:100%}}

/* --- lo que llega del presupuesto, ya resuelto --- */
.ct-lista-serv{background:var(--tinta);border:none;border-radius:4px;overflow:hidden}
.ct-serv-fijo{display:flex;align-items:center;gap:11px;
  font-family:var(--interfaz);font-size:1.04rem;color:#E6DCC7;
  padding:13px 18px;background:none;border-bottom:1px solid rgba(201,162,39,.2)}
.ct-serv-fijo:last-of-type{border-bottom:none}
.ct-tick{flex:none;width:25px;height:25px;border-radius:50%;background:#4F6B3E;color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700}
.ct-serv-nota{color:var(--texto-suave)}
.ct-campos > div.viene-del-presupuesto{background:var(--tinta);border-color:var(--oro);border-width:2.5px}
.ct-campos > div.viene-del-presupuesto label{color:var(--oro-claro);font-weight:700}
.ct-campos > div.viene-del-presupuesto input{background:rgba(255,255,255,.07);color:#E6DCC7;
  border-color:rgba(201,162,39,.4)}
.ct-campos > div.viene-del-presupuesto::before{content:"\2713";position:absolute;top:-12px;right:-10px;z-index:2;
  width:30px;height:30px;border-radius:50%;background:#4F6B3E;color:#fff;
  display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:700;
  box-shadow:0 2px 6px rgba(0,0,0,.28)}
@media(max-width:560px){
  .ct-serv-fijo{font-size:.98rem;padding:11px 14px}
  .ct-campos > div.viene-del-presupuesto::before{width:26px;height:26px;font-size:.9rem;top:-9px;right:-7px}
}

/* --- iconos dentro de los botones --- */
.ico-b{width:1.15em;height:1.15em;flex:none;margin-right:.5em;vertical-align:-.2em}
.boton .ico-b,.enviar .ico-b,.copiar .ico-b{display:inline-block}
.aviso-campo{display:block;font-family:var(--interfaz);font-size:.88rem;line-height:1.5;
  color:#8C3A24;margin:4px 0 6px;text-transform:none;letter-spacing:0;font-weight:400}
.ct-campos > div.viene-del-presupuesto .aviso-campo{color:#E0A88F}

/* --- valoración gratis, antes del presupuesto --- */
.valoracion-previa{display:flex;align-items:center;gap:20px;flex-wrap:wrap;justify-content:space-between;
  background:var(--papel-2);border:2px solid rgba(138,110,46,.35);border-radius:5px;
  padding:20px 24px;margin:34px 0 0}
.valoracion-previa p{font-family:var(--interfaz);font-size:1.08rem;line-height:1.6;
  color:var(--texto);margin:0;flex:1 1 380px;max-width:60ch}
.valoracion-previa b{color:var(--tinta)}

@media(max-width:620px){
  .valoracion-previa{padding:17px 15px;gap:14px}
  .valoracion-previa .boton{width:100%;text-align:center}
}

.valoracion-previa .vp-texto{flex:1 1 380px}
.valoracion-previa .vp-boton{flex:0 0 auto;font-family:var(--interfaz);font-weight:600;font-size:1rem;
  display:inline-flex;align-items:center}
.vp-correo{font-size:.95rem !important;color:var(--texto-suave) !important;margin:8px 0 0 !important}
.vp-correo b{color:var(--texto)}
@media(max-width:620px){.valoracion-previa .vp-boton{width:100%;justify-content:center}}
@media(max-width:400px){
  .vp-correo{word-wrap:break-word;overflow-wrap:break-word;word-break:break-word}
  .valoracion-previa{padding:15px 12px}
  .valoracion-previa .vp-boton{font-size:.95rem;padding:13px 10px}
}

/* ============ PACKS ============ */
/* alternativa para navegadores antiguos que no entienden grid */
.packs{display:flex;flex-wrap:wrap;gap:22px;margin:38px 0 0;align-items:stretch}
.packs > .pack{flex:1 1 262px}
@supports (display:grid){
  .packs{display:grid;grid-template-columns:repeat(auto-fit,minmax(262px,1fr));align-items:stretch}
  .packs > .pack{flex:none}
}
.pack{position:relative;display:flex;flex-direction:column;
  background:var(--papel-2);border:2px solid rgba(138,110,46,.3);border-radius:6px;
  padding:30px 26px 26px;transition:transform .22s, box-shadow .22s, border-color .22s}
.pack:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(42,36,28,.16);border-color:rgba(201,162,39,.65)}
.pack.destacado{background:var(--tinta);border-color:var(--oro);border-width:2.5px;
  box-shadow:0 12px 34px rgba(42,36,28,.28)}
.pack-cinta{position:absolute;top:-14px;left:50%;transform:translateX(-50%);
  background:var(--oro);color:var(--tinta);font-family:var(--interfaz);font-size:.82rem;font-weight:700;
  letter-spacing:.05em;text-transform:uppercase;padding:7px 18px;border-radius:99px;white-space:nowrap;
  box-shadow:0 3px 10px rgba(0,0,0,.2)}
.pack-eti{display:block;font-family:var(--interfaz);font-size:.78rem;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;color:var(--oro-apagado);margin:0 0 8px}
.pack.destacado .pack-eti{color:var(--oro)}
.pack h3{font-family:var(--display);font-size:2.1rem;color:var(--tinta);margin:0 0 6px;line-height:1.1}
.pack.destacado h3{color:var(--oro-claro)}
.pack-p{margin:0 0 6px}
.pack-p b{font-family:var(--display);font-size:2.9rem;font-weight:700;color:var(--tinta);line-height:1}
.pack.destacado .pack-p b{color:#fff}
.pack-sub{font-family:var(--interfaz);font-size:1rem;line-height:1.5;color:var(--texto-suave);
  margin:0 0 20px;padding:0 0 18px;border-bottom:1px solid rgba(138,110,46,.28)}
.pack.destacado .pack-sub{color:#C2B69E;border-bottom-color:rgba(201,162,39,.3)}
.pack ul{list-style:none;margin:0 0 20px;padding:0;flex:1}
.pack li{position:relative;font-family:var(--interfaz);font-size:1.02rem;line-height:1.55;
  color:var(--texto);padding:0 0 0 29px;margin:0 0 12px}
.pack li::before{content:"\2713";position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;
  background:#4F6B3E;color:#fff;display:flex;align-items:center;justify-content:center;
  font-size:.72rem;font-weight:700}
.pack.destacado li{color:#E6DCC7}
.pack-nota{font-family:var(--interfaz);font-size:.96rem;line-height:1.6;color:var(--texto-suave);
  font-style:italic;margin:0 0 22px}
.pack.destacado .pack-nota{color:#C2B69E}
.pack-cta{display:block;width:100%;text-align:center;font-family:var(--interfaz);
  font-weight:700;font-size:1.08rem;padding:16px 18px;margin-top:auto}
.pack.destacado .pack-cta{background:var(--oro);color:var(--tinta)}

/* --- pie de los packs --- */
.packs-pie{margin:44px 0 0;text-align:center}
.packs-pie p{font-family:var(--interfaz);font-size:1.08rem;line-height:1.68;color:var(--texto);
  max-width:66ch;margin:0 auto 22px}
.packs-pie-botones{display:flex;gap:13px;justify-content:center;flex-wrap:wrap}
.packs-pie-botones .boton{font-family:var(--interfaz);font-weight:600;font-size:1.04rem}
.packs-pie-botones .boton.hueco{color:var(--oro-apagado);border-color:rgba(201,162,39,.6);background:none}
.packs-pie-botones .boton.hueco:hover{background:rgba(201,162,39,.12);color:var(--texto)}

@media(max-width:760px){
  .packs{grid-template-columns:1fr;gap:30px}
  .pack{padding:26px 20px 22px}
  .pack h3{font-size:1.85rem}
  .pack-p b{font-size:2.5rem}
  .pack-visibilidad{padding:26px 18px}
  .pack-visibilidad .pack-cta{width:100%;text-align:center}
  .packs-pie-botones{flex-direction:column}
  .packs-pie-botones .boton{width:100%;text-align:center}
}

/* --- logos dentro de los packs --- */
.pack-logos{display:flex;flex-wrap:wrap;gap:7px;align-items:center;justify-content:center;
  background:#fff;border-radius:4px;padding:11px 12px;margin:0 0 18px;
  border:1px solid rgba(138,110,46,.2)}
.pack-logos img{height:20px;width:auto;max-width:100%;object-fit:contain;flex:none}
.pack-logos.muchos img{height:15px}
.pack-logos:not(.muchos) img{height:26px}
@media(max-width:760px){.pack-logos.muchos img{height:14px}}

/* ============ VISIBILIDAD, la banda destacada ============ */
.pack-visibilidad{position:relative;margin:56px 0 0;border-radius:8px;overflow:hidden;
  background:linear-gradient(135deg,#1A1610 0%,#2A2118 55%,#3A2E1C 100%);
  border:2.5px solid var(--oro);box-shadow:0 16px 40px rgba(42,36,28,.32);
  display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr}
.pv-cab{padding:40px 36px;background:rgba(201,162,39,.09);
  border-right:1px solid rgba(201,162,39,.25);display:flex;flex-direction:column;justify-content:center}
.pv-cab .pack-eti{color:var(--oro)}
.pack-visibilidad h3{font-family:var(--display);font-size:2.6rem;color:var(--oro-claro);margin:0 0 4px;line-height:1.05}
.pack-visibilidad .pack-p b{font-family:var(--display);font-size:3.4rem;font-weight:700;color:#fff;line-height:1}
.pv-lema{font-family:var(--interfaz);font-size:1.04rem;line-height:1.65;color:#D2C7B2;margin:16px 0 0}
.pv-cuerpo{padding:36px}
.pack-visibilidad ul{list-style:none;margin:0 0 20px;padding:0;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:9px 26px}
.pack-visibilidad li{position:relative;font-family:var(--interfaz);font-size:1.01rem;line-height:1.5;
  color:#E6DCC7;padding:0 0 0 28px}
.pack-visibilidad li::before{content:"\2713";position:absolute;left:0;top:2px;width:19px;height:19px;
  border-radius:50%;background:var(--oro);color:var(--tinta);display:flex;align-items:center;
  justify-content:center;font-size:.7rem;font-weight:700}
.pv-nota{font-family:var(--interfaz);font-size:.97rem;line-height:1.6;color:#B8AC94;
  font-style:italic;margin:0 0 22px}
.pack-visibilidad .pack-cta{display:inline-block;width:auto;background:var(--oro);color:var(--tinta);
  margin:0;font-size:1.1rem;padding:16px 34px}
.pack-visibilidad .pack-logos{background:rgba(255,255,255,.95);margin:0 0 20px}
@media(max-width:860px){
  .pack-visibilidad{display:block}
  .pv-cab{padding:28px 20px;border-right:none;border-bottom:1px solid rgba(201,162,39,.25)}
  .pv-cuerpo{padding:24px 20px}
  .pack-visibilidad h3{font-size:2.2rem}
  .pack-visibilidad .pack-p b{font-size:2.9rem}
  .pack-visibilidad .pack-cta{width:100%;text-align:center}
}

/* ============ packs más llamativos ============ */
.pack{background:linear-gradient(180deg,#FBF6EA 0%,var(--papel-2) 100%)}
.pack::after{content:"";position:absolute;inset:0;border-radius:6px;pointer-events:none;
  box-shadow:inset 0 2px 0 rgba(255,255,255,.7)}
.pack.destacado{background:linear-gradient(165deg,#241D14 0%,#332818 60%,#3E3019 100%);
  transform:scale(1.035);z-index:2}
.pack.destacado:hover{transform:scale(1.035) translateY(-4px)}
.pack.destacado::after{box-shadow:inset 0 2px 0 rgba(201,162,39,.35)}
.pack h3{letter-spacing:-.01em}
.pack-p{position:relative;display:flex;align-items:baseline;gap:8px}
.pack-p b{letter-spacing:-.02em}
.pack-cta{border-radius:4px;letter-spacing:.01em;
  box-shadow:0 4px 0 rgba(138,110,46,.35);transition:transform .12s, box-shadow .12s}
.pack-cta:hover{transform:translateY(2px);box-shadow:0 2px 0 rgba(138,110,46,.35)}
.pack.destacado .pack-cta{box-shadow:0 4px 0 #8A6E2E}
.pack.destacado .pack-cta:hover{box-shadow:0 2px 0 #8A6E2E}
@media(max-width:760px){.pack.destacado{transform:none}.pack.destacado:hover{transform:translateY(-4px)}}

/* ============ barra de confianza, encima de los packs ============ */
.confianza{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;
  margin:34px 0 0;padding:24px 26px;background:var(--tinta);border-radius:6px;
  border:1px solid rgba(201,162,39,.3)}
.conf-item{display:flex;gap:14px;align-items:flex-start}
.conf-item svg{width:34px;height:34px;flex:none;color:var(--oro);margin-top:2px}
.conf-item b{display:block;font-family:var(--interfaz);font-size:1.02rem;font-weight:700;
  color:var(--oro-claro);line-height:1.35;margin:0 0 4px}
.conf-item span{display:block;font-family:var(--interfaz);font-size:.93rem;line-height:1.5;color:#B8AC94}
@media(max-width:760px){.confianza{padding:20px 16px;gap:16px}}

/* iconos y sello de los packs */
.pack h3{display:flex;align-items:center;gap:10px}
.pack-ico{width:26px;height:26px;flex:none;color:var(--oro-apagado)}
.pack.destacado .pack-ico{color:var(--oro)}
.pack-sello{position:absolute;top:14px;right:14px;z-index:3;
  width:74px;height:74px;border-radius:50%;background:var(--oro);color:var(--tinta);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  font-family:var(--interfaz);font-size:.64rem;font-weight:700;line-height:1.15;text-align:center;
  letter-spacing:.02em;text-transform:uppercase;
  box-shadow:0 4px 12px rgba(0,0,0,.24);transform:rotate(-9deg)}
.pack-sello b{font-family:var(--display);font-size:1.32rem;font-weight:700;display:block;line-height:1}

/* ============ garantías, debajo de los packs ============ */
.garantias{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:20px;
  margin:44px 0 0;padding:28px 26px;background:var(--papel-2);border-radius:6px;
  border:1px solid rgba(138,110,46,.28);text-align:center}
.garantias > div{display:flex;flex-direction:column;align-items:center;gap:7px}
.garantias svg{width:32px;height:32px;color:var(--oro-apagado)}
.garantias b{font-family:var(--interfaz);font-size:1.01rem;font-weight:700;color:var(--tinta);line-height:1.35}
.garantias span{font-family:var(--interfaz);font-size:.91rem;line-height:1.5;color:var(--texto-suave);max-width:28ch}
@media(max-width:760px){.garantias{padding:22px 16px;gap:22px}}
@media(max-width:400px){
  .pack-cinta{font-size:.74rem;padding:6px 12px;max-width:calc(100% - 24px);white-space:normal;text-align:center}
  .pack-sello{width:62px;height:62px;font-size:.58rem;top:10px;right:10px}
  .pack-sello b{font-size:1.1rem}
}
.ct-pack-nombre{font-family:var(--display);font-size:1.7rem;font-weight:700;color:var(--oro-apagado);
  margin:6px 0 0;line-height:1.2}


/* --- botón de contratar, del mismo tamaño que el de WhatsApp pero en verde --- */
.pack-contrato{display:block;width:100%;text-align:center;box-sizing:border-box;
  margin:11px 0 0;padding:16px 18px;border-radius:4px;
  font-family:var(--interfaz);font-size:1.08rem;font-weight:700;letter-spacing:.01em;
  background:#4F6B3E;color:#fff;text-decoration:none;
  box-shadow:0 4px 0 #35492A;transition:transform .12s, box-shadow .12s, background .18s}
.pack-contrato:hover{background:#5B7A47;transform:translateY(2px);box-shadow:0 2px 0 #35492A;color:#fff}
.pack.destacado .pack-contrato{background:#5B7A47;box-shadow:0 4px 0 #3D5430}
.pack.destacado .pack-contrato:hover{background:#68894F;box-shadow:0 2px 0 #3D5430}
.pack-visibilidad .pack-contrato{display:inline-block;width:auto;margin:0 0 0 14px;
  padding:16px 34px;font-size:1.1rem;vertical-align:top}
@media(max-width:760px){
  .pack-visibilidad .pack-contrato{display:block;width:100%;margin:12px 0 0}
}

/* DESDE 2019, en la portada */
.portada .desde{display:block;max-width:none;width:auto;margin:0 auto 3px;text-align:center}
.portada .desde b{display:block;font-family:var(--display);font-weight:700;color:var(--oro);
  font-size:clamp(1.9rem,5vw,2.9rem);line-height:1;letter-spacing:.06em}
.portada .desde-sub{max-width:44ch;margin:0 auto;text-align:center;font-family:var(--interfaz);font-size:clamp(.82rem,2.4vw,.98rem);
  letter-spacing:.16em;text-transform:uppercase;color:#cfc4ae}

/* regalo por tiempo limitado dentro de los packs */
.pack li.regalo{position:relative;display:flex;align-items:center;gap:10px;padding:9px 12px;margin:6px 0;border-radius:4px;
  background:rgba(201,162,39,.13);border:1px solid rgba(201,162,39,.45)}
.pack li.regalo:before{content:none;
  background:var(--oro);transform:rotate(45deg)}
.pack li.regalo b{display:block;color:var(--tinta)}
.regalo-ico{width:44px;height:auto;flex:0 0 auto;border:none;border-radius:0}
.regalo-txt{display:block;flex:1 1 auto;min-width:0}
.pack li.regalo .regalo-txt span{display:block;margin-top:2px;font-family:var(--interfaz);font-size:.72rem;
  letter-spacing:.14em;text-transform:uppercase;color:#8A6B12;font-weight:700}
.pack.destacado li.regalo b{color:var(--oro-claro)}
.pack.destacado li.regalo .regalo-txt span{color:var(--oro)}

@media(max-width:620px){.portada h1{max-width:20ch;font-size:1.44rem}.portada .sobretitulo{font-size:.74rem;letter-spacing:.2em}.portada{padding:22px 0 26px}.portada .emblema{width:128px;max-width:38vw;margin:0 auto 8px}.portada .desde b{font-size:1.5rem}.portada .desde-sub{font-size:.82rem}.portada .acciones{margin-top:14px;gap:8px}.portada .acciones .boton{flex:1 1 46%;padding:12px 10px;font-size:.92rem}.portada .confianza-portada{margin-top:14px;gap:8px;font-size:.76rem;flex-wrap:nowrap;white-space:nowrap}.portada .confianza-portada .estrellas{font-size:.88rem;letter-spacing:.06em}.regalo-ico{width:40px}}

/* redes: mira nuestro trabajo */
.redes-trabajos{background:var(--papel-2)}
.redes-botones{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin:30px 0 22px}
.boton-red{display:flex;align-items:center;gap:14px;text-decoration:none;
  padding:16px 26px 16px 20px;border-radius:8px;border:1px solid rgba(138,110,46,.45);
  background:#fff;min-width:290px;transition:transform .15s ease,box-shadow .15s ease}
.boton-red:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(20,17,14,.13)}
.boton-red svg{width:34px;height:34px;flex:0 0 auto}
.boton-red.ig svg{color:#C13584}
.boton-red.fb svg{color:#1877F2}
.boton-red span{display:block;font-family:var(--interfaz);font-size:.82rem;color:var(--texto-suave);line-height:1.35;text-align:left}
.boton-red span b{display:block;font-size:1.06rem;color:var(--tinta);margin-bottom:2px}
.redes-pie{font-family:var(--interfaz);font-size:.9rem;color:var(--texto-suave);text-align:center;max-width:56ch;margin:0 auto}
@media(max-width:620px){.boton-red{min-width:0;width:100%;justify-content:flex-start}.redes-botones{gap:12px}}

/* aviso de redes dentro del catalogo */
.aviso-redes{grid-column:span 3;align-self:center;display:flex;flex-direction:column;
  justify-content:center;text-align:center;padding:34px 40px 26px;
  border:2px dashed rgba(138,110,46,.5);border-radius:8px;background:rgba(201,162,39,.07)}
.aviso-redes .ar-titulo{font-family:var(--display);font-weight:700;color:var(--oro-apagado);
  font-size:clamp(1.7rem,3.2vw,2.5rem);line-height:1.1;margin:0 0 14px}
.aviso-redes .ar-texto{font-family:var(--interfaz);font-size:clamp(1rem,1.5vw,1.2rem);
  line-height:1.5;color:var(--tinta);max-width:52ch;margin:0 auto 12px}
.aviso-redes .ar-texto b{color:var(--oro-apagado)}
.aviso-redes .ar-nota{font-family:var(--interfaz);font-size:.92rem;line-height:1.45;
  color:var(--texto-suave);max-width:48ch;margin:0 auto}
.ar-flechas{display:flex;gap:26px;justify-content:center;margin-top:18px;color:var(--oro)}
.ar-flechas .fl{width:26px;height:58px;animation:bajar 1.6s ease-in-out infinite}
.ar-flechas .fl:nth-child(2){animation-delay:.18s}
.ar-flechas .fl:nth-child(3){animation-delay:.36s}
@keyframes bajar{0%,100%{transform:translateY(0);opacity:.55}50%{transform:translateY(9px);opacity:1}}
@media(prefers-reduced-motion:reduce){.ar-flechas .fl{animation:none;opacity:.9}}
@media(max-width:1000px){.aviso-redes{grid-column:span 2}}
@media(max-width:640px){.aviso-redes{grid-column:span 2;padding:28px 22px 22px}}
@media(max-width:370px){
  .portada .confianza-portada{font-size:.66rem;gap:6px}
  .portada .confianza-portada .estrellas{font-size:.76rem}
}

/* casilla de desistimiento del contrato */
