/* Cuidado de Oro — v17/v18: botón Iniciar sesión, brillo dorado del titular,
   entrada coreografiada de la foto del héroe y scroll reveal */
/* Progresivo: sin JS o sin soporte, todo el contenido queda visible. */

/* --- Iniciar sesión (nav) --- */
.nav-login{border:1.5px solid var(--gold,#C9A86A);border-radius:999px;padding:8px 18px!important;color:var(--ink,#0A2540);font-weight:700;line-height:1.2;transition:background .25s ease,color .25s ease,border-color .25s ease}
.nav-login:hover{background:var(--gold,#C9A86A);color:#071a2a!important;text-decoration:none}

/* --- Brillo dorado del titular (v18) ---
   El barrido vive SOLO sobre el <em> («valen oro» / «their weight in gold»):
   el resto del titular conserva su color tinta y el em lleva un degradado
   dorado rico con una banda de luz cálida que lo recorre con fuerza.
   Coreografía v21 (corrección del dueño): el barrido corre UNA sola vez
   (0.2s → ~2.7s) y anim.js retira la clase .gold-shine al terminar
   (animationend + respaldo a los 3.6s): el titular queda en su estado
   sólido normal — dorado pleno sobre «valen oro» — 100% legible,
   sin degradado permanente ni ciclo repetitivo. */
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  h1.gold-shine em{
    background-image:linear-gradient(100deg,#9a7a34 0%,#C9A86A 34%,#e9d193 47%,#fff6d8 50%,#e9d193 53%,#C9A86A 66%,#9a7a34 100%);
    background-size:230% 100%;
    background-position:112% 0;
    -webkit-background-clip:text;
    background-clip:text;
    color:transparent;
    -webkit-text-fill-color:transparent;
    animation:goldShine 2.5s ease-in-out .2s 1;
  }
}
@keyframes goldShine{
  0%{background-position:112% 0}
  100%{background-position:-118% 0}
}

/* --- Entrada de la foto del héroe en el home (v18; foto real desde v23) ---
   La clase .photo-wait SOLO la añade anim.js con motion permitido: sin JS,
   la foto se ve normal. La foto entra cuando el brillo ya culminó (~3s) y su
   tarjeta está en pantalla, con fade + leve subida y escala. */
.photo-wait{opacity:0;transform:translateY(26px) scale(.985)}
.photo-wait.photo-in{opacity:1;transform:translateY(0) scale(1);transition:opacity .95s ease,transform .95s cubic-bezier(.22,.61,.21,1)}

/* --- Scroll reveal (la clase .rv solo la añade JS) --- */
.rv{opacity:0;transform:translateY(20px)}
.rv.rv-in{opacity:1;transform:translateY(0);transition:opacity .85s ease,transform .85s cubic-bezier(.22,.61,.21,1)}

@media (prefers-reduced-motion:reduce){
  h1.gold-shine em{animation:none;background:none;color:var(--gold);-webkit-text-fill-color:var(--gold)}
  .photo-wait{opacity:1;transform:none}
  .photo-wait.photo-in{transition:none}
  .rv{opacity:1;transform:none}
  .rv.rv-in{transition:none}
  .nav-login{transition:none}
}

/* ===== v21: reglas compartidas (también en site.css) ===== */
/* --- Tarjeta portal de familia, bloque independiente (v24) --- */
.portal-section{background:var(--cream)}
.portal-card{margin:0 auto;max-width:680px;background:var(--paper);border:1.5px solid var(--gold);border-radius:18px;padding:34px 38px;box-shadow:0 18px 44px rgba(10,37,64,.08)}
.portal-card h3{font-family:'Playfair Display',serif;font-size:1.45rem;color:var(--ink);margin:0 0 10px}
.portal-card p{color:var(--muted);margin:0 0 18px}
@media(max-width:860px){.portal-card{padding:28px 22px}}
/* --- Botón Iniciar sesión visible en móvil --- */
.login-btn-mobile{display:none}
@media(max-width:1350px){
  .login-btn-mobile{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 14px;margin-left:auto;background:var(--gold,#C9A86A);color:#0A2540!important;font-weight:800;font-size:.84rem;border-radius:999px;text-decoration:none;border:2px solid #fff;box-shadow:0 2px 10px rgba(0,0,0,.18);white-space:nowrap;flex:none}
  .login-btn-mobile:active{transform:scale(.96)}
}

/* --- Header de escritorio ajustado (v21): la fila completa debe caber sin desbordar --- */
@media(min-width:1201px){
  .site-header .shell{width:min(100% - 32px,1360px)}
  .brand-slogan{display:none}
  .nav{gap:12px}
  .nav-links{gap:11px}
  .nav-links a{font-size:.82rem}
  .nav-links a[href$="#cobertura"]{display:none}
  .lang-switch{padding:6px 11px!important;font-size:.85rem!important}
  .nav-login{padding:7px 13px!important}
  .nav-links .btn{padding:11px 17px}
}
/* --- Banda 1031-1200px: menú hamburguesa igual que en móvil (v21) --- */
@media(min-width:1031px) and (max-width:1350px){
  .utility{display:none}
  .brand-slogan{display:none}
  .nav{height:72px}
  .menu-btn{display:grid;place-items:center}
  .nav-links{position:fixed;inset:72px 0 auto 0;display:none;padding:22px 24px 30px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow)}
  .nav-links.open{display:grid}
  .nav-links a{font-size:1rem;padding:7px 0}
}

/* La píldora de idioma inyectada por el chat solo existe en móvil (v21) */
@media(min-width:1031px){.lang-btn-mobile{display:none!important}}
