/* ===== Puerta 14 — Liquid Glass para el sitio principal ===== */
.lh-header{
  position:relative;
  z-index:50;
  -webkit-backdrop-filter:blur(22px) saturate(170%);
  backdrop-filter:blur(22px) saturate(170%);
  background:rgba(253,248,241,.62);
  border-bottom:1px solid rgba(14,47,86,.08);
  transition:background .35s ease, box-shadow .35s ease;
}
/* dropdown móvil en cristal */
.lh-header.is-open .lh-nav{
  background:rgba(253,248,241,.96) !important;
  -webkit-backdrop-filter:blur(24px) saturate(170%);
  backdrop-filter:blur(24px) saturate(170%);
  border-bottom:1px solid rgba(14,47,86,.10);
  box-shadow:0 24px 60px rgba(14,47,86,.16);
  animation:navdrop .35s cubic-bezier(.22,1,.36,1);
}
@keyframes navdrop{ from{ opacity:0; transform:translateY(-12px);} to{ opacity:1; transform:none;} }
/* hamburguesa -> X */
.lh-menu-btn span{ transition:transform .3s ease, opacity .3s ease; }
.lh-header.is-open .lh-menu-btn span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.lh-header.is-open .lh-menu-btn span:nth-child(2){ opacity:0; }
.lh-header.is-open .lh-menu-btn span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
.lh-header.is-scrolled{
  background:rgba(253,248,241,.88);
  box-shadow:0 12px 40px rgba(14,47,86,.12);
}
.lh-nav-link{ border-radius:999px; transition:background .25s ease; }
.lh-nav-link:hover{ background:rgba(14,47,86,.07); }
.lh-btn{ position:relative; overflow:hidden; }
.lh-btn::after{
  content:''; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(180deg, rgba(255,255,255,.38), rgba(255,255,255,0) 46%);
  pointer-events:none;
}
.lh-btn-primary{
  box-shadow:0 10px 30px rgba(14,47,86,.28), inset 0 1px 0 rgba(255,255,255,.35);
}
.lh-btn-secondary{
  -webkit-backdrop-filter:blur(10px); backdrop-filter:blur(10px);
  background:rgba(255,255,255,.55);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 8px 24px rgba(14,47,86,.10);
}
.lh-card{
  border:1px solid rgba(255,255,255,.65);
  box-shadow:0 18px 50px rgba(14,47,86,.10);
}
/* --- Apple-style reveal on scroll --- */
.reveal{ opacity:0; transform:translateY(30px); transition:opacity .9s ease, transform .9s cubic-bezier(.22,1,.36,1); }
.reveal.in{ opacity:1; transform:none; }
/* --- DRAFT badge --- */
.draft-badge{
  position:fixed; top:84px; right:16px; z-index:9999;
  background:rgba(192,39,26,.92); color:#fff;
  font:600 11px/1 system-ui,-apple-system,sans-serif; letter-spacing:.14em;
  padding:9px 16px; border-radius:999px;
  box-shadow:0 8px 24px rgba(192,39,26,.35);
  -webkit-backdrop-filter:blur(8px); backdrop-filter:blur(8px);
}
/* --- Steps / FAQ / services --- */
.pg-grid2{ display:grid; grid-template-columns:repeat(2,1fr); gap:24px; margin-top:44px; }
.step-card{
  background:rgba(255,255,255,.6);
  -webkit-backdrop-filter:blur(14px); backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.7); border-radius:20px;
  padding:28px; box-shadow:0 14px 40px rgba(14,47,86,.08);
}
.step-num{
  width:56px; height:56px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font:700 22px/1 Georgia,serif; color:#fff;
  background:linear-gradient(135deg,#0e2f56,#1d5a8a);
  box-shadow:0 10px 24px rgba(14,47,86,.3), inset 0 1px 0 rgba(255,255,255,.4);
  margin-bottom:16px;
}
.faq-item{
  background:rgba(255,255,255,.55); border:1px solid rgba(255,255,255,.7);
  border-radius:16px; padding:22px 26px; margin-bottom:16px;
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
}
.svc-list{ margin:18px 0 0; padding-left:22px; }
.svc-list li{ margin-bottom:10px; }
.pg-narrow{ max-width:760px; }
.article-body p.lh-card-text{ margin-bottom:16px; }
[data-parallax]{ will-change:transform; }
.lh-footer-legal a{ color:inherit; text-decoration:underline; text-underline-offset:3px; }
@media (max-width:900px){
  .pg-grid2{ grid-template-columns:1fr; }
  .draft-badge{ top:76px; font-size:10px; padding:7px 13px; }
}
@media (prefers-reduced-motion: reduce){
  .reveal{ opacity:1 !important; transform:none !important; transition:none !important; }
}

/* stagger: los reveals hermanos entran en cascada */
.reveal[data-stagger]{ transition-delay:calc(var(--stg,0)*90ms); }

/* anclas suaves estilo Apple */
html{ scroll-behavior:smooth; }
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }

/* ===== Puerta 16 — red de seguridad contra desborde horizontal ===== */
html,body{ overflow-x:clip; }

/* ===== Puerta 16 — skip link: visible solo al foco ===== */
.lh-skip{
  position:absolute; left:12px; top:-60px; z-index:10001;
  background:#0e2f56; color:#fff; font:700 14px/1.2 var(--font-sans);
  padding:12px 18px; border-radius:12px; text-decoration:none;
  box-shadow:0 10px 30px rgba(14,47,86,.30);
  transition:top .2s ease;
}
.lh-skip:focus{ top:12px; color:#fff; outline:2px solid #fff; outline-offset:-4px; }

/* ===== Puerta 16 — header compacto en pantallas chicas (fix desborde 390px) ===== */
@media (max-width:720px){
  .lh-header{ padding:10px 12px; gap:8px; }
  .lh-header .lh-logo-art{ height:32px; width:auto; }
  .lh-header-end{ gap:8px; }
  .lh-lang{ padding:2px; }
  .lh-lang-opt{ padding:6px 7px; font-size:11px; letter-spacing:.03em; }
  .lh-menu-btn{ width:44px; height:44px; }
}
