/* ============================================================
   SELLO ALCÁNTARA (2026-09-28). Se carga la última en todas las
   páginas y manda sobre styles.css y los <style> de cada página.
   · Fondo arcilla en vez del crema de plantilla
   · Cabecera con franja rubí y doble filete oro
   · Rótulos en Cormorant cursiva, sin "//" ni estrellitas
   · Las páginas enlazan sello.css, styles.css y fonts/fuentes.css con
     ?v=<hash>: si cambias uno, actualiza ese ?v= en todas las páginas.
   · Fuera: ventana de navegador falsa, chips flotantes, brillos,
     cinta inclinada, números en contorno, contadores y esquinas
   ============================================================ */
:root{
  /* styles.css */
  --paper:#F2E6E3; --paper-2:#EADAD6; --paper-3:#FAF3F1;
  --muted:#6B5A57; --muted-2:#6B5A57;
  --paper-dark:#F2E6E3;
  --mono:var(--grot);
  /* <style> de la portada */
  --marfil:#F2E6E3; --marfil-2:#EADAD6; --blanco:#FCF6F4;
  --tinta-suave:#4F3F3C;
  --oro-linea:rgba(176,138,71,.45);
}

/* ---------- Fondo liso: fuera la cuadrícula y la viñeta con ruido ---------- */
body::before,body::after{content:none!important;display:none!important}

/* ---------- Cabecera: franja rubí + filete oro ---------- */
#prog{display:none}
header{background:var(--paper)!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  border-top:3px solid var(--rubi);border-bottom:1px solid var(--oro)!important}
header::after{display:none!important}
.brand:hover img{transform:none}
.brand .wm span,.brand .wordmark span{font-family:var(--serif);font-style:italic;font-weight:500;text-transform:none;letter-spacing:.02em;font-size:.86rem;margin-top:2px}
.menu{gap:16px!important;flex-wrap:nowrap!important}
.menu a{font-family:var(--serif);font-size:1rem;font-weight:600;opacity:1;color:var(--tinta);white-space:nowrap}
@media(max-width:1180px){.menu{flex-wrap:wrap!important}}
.menu a:not(.btn):hover{color:var(--rubi)}

/* ---------- Botones ---------- */
.btn{font-family:var(--serif)!important;font-size:1.08rem!important;font-weight:600;letter-spacing:.01em!important;
  text-transform:none!important;border-radius:2px!important}
.btn::after{display:none!important}
.btn.sm{font-size:1rem!important;padding:8px 18px!important}
header .btn,header .btn.sm{background:var(--rubi);border-color:var(--rubi);color:#FCF6F4}
header .btn:hover{background:var(--tinta);border-color:var(--tinta);color:#FCF6F4}

/* ---------- Rótulos ---------- */
.k,.kicker,.hero .kicker{font-family:var(--serif)!important;font-style:italic;font-weight:600;font-size:1.1rem!important;
  letter-spacing:.01em!important;text-transform:none!important}
.k::before,.kicker::before,.hero .kicker::before{content:none!important}
.orn{gap:0!important}
.orn i,.orn::after{display:none!important}
.orn::before{max-width:56px;background:var(--oro)!important}

/* ---------- Portada: fuera adornos de plantilla ---------- */
.hero .glow,.final .glow,.hero .ghost,.final .ghost{display:none!important}
.chip{display:none!important}
.shot .bar{display:none}
.shot,.shot:hover{transform:none!important;backdrop-filter:none!important;background:var(--blanco)!important;
  border:1px solid var(--oro)!important;outline:1px solid var(--oro-linea);outline-offset:6px;box-shadow:none!important}
.seal svg{animation:none!important}
/* viñeta: rombo rubí pequeño, eco de la cruz */
.firma li::before,.checks li::before{content:""!important;width:6px;height:6px;background:var(--rubi)!important;transform:rotate(45deg);top:.62em!important;left:3px!important}
.vs .badge::before{content:none!important}
.mq-band,.hero-marquee,.marquee,.stripes,.sheet .barcode{display:none!important}

/* ---------- Tarjetas ---------- */
.feat::before,.feat::after{display:none!important}
.feat .num,.svc-num{color:var(--rubi)!important;-webkit-text-stroke:0!important;font-family:var(--serif)!important;
  font-style:italic;font-weight:600!important;font-size:1.7rem!important;margin-bottom:8px}
.feat .plus,.tag-cloud{gap:4px 6px!important}
.feat .plus i,.tag-cloud i{border:0!important;border-radius:0!important;padding:0!important;background:none!important;
  font-family:var(--serif)!important;font-style:italic;text-transform:none!important;letter-spacing:0!important;
  font-size:1rem!important;color:var(--tinta-suave)!important}
.feat .plus i::before,.tag-cloud i::before{content:none!important}
.feat .plus i+i::before,.tag-cloud i+i::before{content:"· "!important;color:var(--oro);font-style:normal}
.feat.her{background:var(--blanco)!important}
.num-card::before{content:none!important}
.hero-bg .glass{backdrop-filter:none!important;-webkit-backdrop-filter:none!important;background:var(--paper-3)!important}

/* títulos de sección siempre en la serif de la casa */
section h2{font-family:var(--serif)}

/* aviso de cookies: mismo peso para aceptar y rechazar (AEPD), en la piel de la casa */
#al-cookies{background:var(--paper-3,#FAF3F1)!important;border-radius:2px!important;border-top:3px solid var(--rubi,#8E1F2F)!important;box-shadow:0 10px 30px rgba(23,16,9,.16)!important}
#al-cookies button{border-radius:2px!important;font-family:"Cormorant Garamond",Georgia,serif!important;font-size:1.05rem!important;background:transparent!important}
#al-cookies button:hover{background:var(--tinta,#171009)!important;color:#FCF6F4!important}

/* palabra ALCÁNTARA igual en todas las páginas */
.brand .wordmark strong{font-family:var(--serif);font-weight:700;letter-spacing:.24em;font-size:1.18rem}

/* ============================================================
   MOVIMIENTO DE LA CASA
   El estado por defecto es el final (quien pide menos movimiento
   ve la página quieta y completa). Las animaciones solo parten
   de un estado inicial cuando el sistema permite movimiento.
   ============================================================ */
/* fuera el «aparecer al hacer scroll» genérico */
.rv,.reveal{opacity:1!important;transform:none!important;transition:none!important}

/* ruta Lima → Madrid detrás de la portada */
.hero{isolation:isolate}
.hero .wrap{position:relative;z-index:1}
.ruta{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
.ruta-traza{fill:none;stroke:var(--oro);stroke-width:1.4;stroke-dasharray:1;stroke-dashoffset:0;opacity:.75}
.ruta-punto{position:absolute;z-index:0;font-family:var(--serif);font-style:italic;font-size:1.3rem;color:var(--tinta-suave);pointer-events:none;line-height:1}
.ruta-punto::before{content:"";position:absolute;width:10px;height:10px;border-radius:50%;background:var(--rubi)}
.ruta-lima{left:calc(4.17% + 18px);top:calc(95.8% - 26px)}
.ruta-lima::before{left:-23px;top:21px}
.ruta-madrid{right:calc(4.17% + 18px);top:calc(13.3% - 30px)}
.ruta-madrid::before{right:-23px;top:25px}

@media (prefers-reduced-motion:no-preference){
  .ruta-traza{animation:fs-traza 2.8s cubic-bezier(.65,0,.25,1) .4s both}
  .ruta-lima{animation:fs-aparece .6s ease .3s both}
  .ruta-madrid{animation:fs-aparece .7s ease 3s both}

  /* subrayado a pluma bajo «quien ya hizo tu camino» */
  .hero h1 em::after{transform-origin:left center;animation:fs-pluma 1.1s cubic-bezier(.6,0,.2,1) 1s both}

  /* el sello cae sobre la credencial */
  .seal{animation:fs-estampa .75s cubic-bezier(.3,1.5,.5,1) 2.2s both}
  .shot-wrap{animation:fs-golpe .35s ease-out 2.62s both}

  /* cabecera que se compacta al bajar */
  @supports (animation-timeline:scroll()){
    header .nav{animation:fs-compacta linear both;animation-timeline:scroll(root);animation-range:0 180px}
    header .brand img{animation:fs-cruz linear both;animation-timeline:scroll(root);animation-range:0 180px}
  }
  /* los filetes oro de los títulos se trazan al llegar */
  @supports (animation-timeline:view()){
    .orn::before,.k::after{transform-origin:left center;animation:fs-filete linear both;animation-timeline:view();animation-range:entry 20% cover 35%}
  }
}
@keyframes fs-traza{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes fs-aparece{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes fs-pluma{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes fs-estampa{0%{opacity:0;transform:scale(1.7) rotate(-16deg)}55%{opacity:1;transform:scale(.93) rotate(2deg)}100%{opacity:1;transform:none}}
@keyframes fs-golpe{0%{transform:none}35%{transform:translateY(2px)}100%{transform:none}}
@keyframes fs-compacta{to{padding-top:5px;padding-bottom:5px}}
@keyframes fs-cruz{to{height:36px}}
@keyframes fs-filete{from{transform:scaleX(0)}to{transform:scaleX(1)}}

/* en móvil la ruta se queda en la parte baja para no cruzar el titular */
@media(max-width:760px){.ruta{opacity:.55}.ruta-punto{font-size:1.05rem}}

/* tablas anchas en móvil: se desplazan de lado en vez de quedar cortadas */
@media(max-width:760px){
  table.tarifa{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  table.tarifa th,table.tarifa td{white-space:normal;min-width:7.5rem}
}

/* accesibilidad (Lighthouse): contraste, tamaño de toque y enlaces reconocibles */
.all-grid .all em{color:#7A5B26!important}
.foot-bottom,.foot-bottom span{color:#A39488!important}
.foot-bottom a{text-decoration:underline;text-underline-offset:3px}
footer .foot-grid p a{display:inline-block;padding:3px 0;min-height:24px}
.solo-lector{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* la cruz lleva width/height intrínsecos (evita saltos al cargar); su ancho real lo da la altura */
img[src*="alcantara-cross"]{width:auto}
.seal .core img{width:44px;height:auto}
footer h3,.vs .col h3{margin-top:0}
