
:root{--navy:#0b2b54;--gold:#c7890a;--gold2:#dda31f;--ink:#13223a;--muted:#5e6877;--line:#e7eaef;--bg:#f7f7f7;--white:#fff;--max:1380px;--shadow:0 10px 30px rgba(10,35,70,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.5}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}.container{width:min(calc(100% - 42px),var(--max));margin:auto}.header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid #eceff3}.nav{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;min-width:270px}.brand img{width:52px}.brand-text{font-weight:900;color:var(--navy);line-height:1.05}.brand-text small{display:block;font-size:.69rem;letter-spacing:.22em;margin-top:5px}.links{display:flex;align-items:center;gap:8px}.links a{font-weight:800;font-size:.86rem;padding:11px 10px;text-transform:uppercase}.links a:hover{color:var(--gold)}.nav-phone{background:var(--gold);color:#fff!important;border-radius:7px;padding:12px 16px!important}.menu{display:none;border:0;background:#eef2f7;width:44px;height:44px;border-radius:10px;font-size:1.2rem}.hero-exact{background:linear-gradient(90deg,#fff 0,#fbfaf7 54%,#efe9de 100%);overflow:hidden}.hero-wrap{display:grid;grid-template-columns:1.05fr .95fr;min-height:500px;align-items:stretch}.hero-left{padding:76px 34px 60px 0;display:flex;flex-direction:column;justify-content:center}.hero-left h1{font-size:clamp(3rem,5vw,5.15rem);line-height:.98;letter-spacing:-.045em;color:var(--navy);margin:0 0 24px;max-width:720px}.hero-left h1 span{display:block;color:var(--gold)}.hero-lead{font-size:1.2rem;max-width:720px;color:#222f42;margin-bottom:30px}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:700px;margin:4px 0 26px}.benefit{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:start}.benefit-icon{font-size:2rem;color:var(--navy);line-height:1}.benefit strong{display:block;font-size:.93rem;color:var(--navy)}.benefit span{font-size:.87rem;color:#243146}.actions{display:flex;gap:16px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border-radius:7px;font-weight:850}.btn-primary{background:var(--navy);color:#fff}.btn-gold{background:linear-gradient(135deg,var(--gold2),var(--gold));color:#fff}.hero-right{position:relative;min-height:500px;background:linear-gradient(120deg,#efe8db,#f6f2eb);overflow:hidden}.hero-right:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 55% 32%,rgba(255,255,255,.9),rgba(255,255,255,0) 46%)}.hero-right img{position:absolute;z-index:2;bottom:0;left:50%;transform:translateX(-52%);height:480px;width:auto;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(20,35,55,.15))}.desk-shape{position:absolute;z-index:1;right:4%;bottom:0;width:40%;height:26%;background:#d5c4aa;border-radius:18px 18px 0 0;opacity:.45}.program-exact{display:grid;grid-template-columns:1.08fr .92fr;min-height:425px;border-top:1px solid #e4e6e9}.program-img{overflow:hidden;background:#111}.program-img img{width:100%;height:100%;object-fit:cover}.program-copy{padding:48px 64px;background:#fff;display:flex;flex-direction:column;justify-content:center}.program-copy h2{font-size:clamp(2.25rem,3.7vw,3.65rem);line-height:1.02;color:var(--navy);margin:0 0 18px;letter-spacing:-.035em}.program-copy p{font-size:1.06rem;color:#2f3949;max-width:620px}.program-features{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin:24px 0}.program-feature{text-align:center;padding:0 16px;border-right:1px solid #dde1e7;font-size:.78rem;color:var(--navy);font-weight:800}.program-feature:last-child{border-right:0}.program-feature i{display:block;font-style:normal;font-size:2rem;color:var(--gold);margin-bottom:8px}section{padding:68px 0}.results-bar{padding:30px 0;background:#fff}.results-title{text-align:center;color:var(--navy);font-size:1.35rem;margin:0 0 22px}.result-grid{display:grid;grid-template-columns:repeat(4,1fr)}.result{text-align:center;padding:0 24px;border-right:1px solid #dfe3e7}.result:last-child{border:0}.result strong{font-size:2.5rem;color:var(--gold);display:block}.result span{font-weight:900;color:var(--navy);display:block}.result small{color:#5e6774}.soft{background:#f7f7f7}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial{background:#fff;border:1px solid #e5e8ec;border-radius:12px;padding:22px;box-shadow:var(--shadow)}.stars{float:right;color:#df9f09}.testimonial p{color:#384254}.testimonial small{display:block;color:#717988}.sample-note{text-align:center;font-size:.74rem;color:#777;margin-top:12px}.info-grid{display:grid;grid-template-columns:.75fr 1.25fr .6fr;gap:28px}.price-box{background:linear-gradient(160deg,var(--navy),#123e73);color:#fff;padding:28px;border-radius:10px}.price{font-size:2.6rem;font-weight:900;text-align:center}.price small{font-size:1rem;font-weight:500}.price-box .btn{width:100%;margin-top:10px}.faq details{background:#fff;border:1px solid #e1e4e8;border-radius:6px;padding:12px 14px;margin-bottom:9px}.faq summary{font-weight:800;color:var(--navy)}.contact-box{background:#f2f0ec;padding:24px;border-radius:10px}.contact-box a{display:block;background:var(--gold);color:#fff;border-radius:6px;padding:11px;text-align:center;font-weight:900;margin:14px 0}.final-cta{margin-top:20px;background:var(--navy);color:#fff;padding:18px 24px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;gap:20px}.footer{background:#061a36;color:#dbe5f2;padding:42px 0 20px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px}.footer h3{color:#fff}.footer a{display:block;margin:7px 0}.legal{border-top:1px solid rgba(255,255,255,.12);margin-top:24px;padding-top:18px;font-size:.8rem;display:flex;justify-content:space-between;gap:20px}.floating{position:fixed;right:16px;bottom:16px;background:#1c9b62;color:#fff;border-radius:999px;padding:12px 16px;font-weight:900;box-shadow:0 10px 26px rgba(0,0,0,.18);z-index:40}
.page-hero{background:linear-gradient(180deg,#f5f7fa,#fff);padding:55px 0}.page-hero h1{font-size:clamp(2.3rem,5vw,4rem);color:var(--navy)}.breadcrumbs{font-size:.85rem;color:#687384}.breadcrumbs a{color:var(--gold)}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid #e5e8ec;border-radius:14px;padding:24px;box-shadow:var(--shadow)}.split{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.statbox{background:linear-gradient(150deg,var(--navy),#154273);color:#fff;padding:34px;border-radius:16px}.checklist{display:grid;gap:12px}.check{display:flex;gap:10px}.check i{font-style:normal;color:var(--gold);font-weight:900}.eyebrow{display:inline-flex;background:#fff4d9;color:#8b6100;border:1px solid #ecd49b;border-radius:999px;padding:6px 10px;font-size:.77rem;font-weight:900;text-transform:uppercase}.lead{font-size:1.08rem;color:var(--muted)}
@media(max-width:980px){.menu{display:block}.links{display:none;position:absolute;top:86px;left:16px;right:16px;background:#fff;border:1px solid #e7e9ed;border-radius:12px;box-shadow:var(--shadow);padding:10px;flex-direction:column;align-items:stretch}.links.open{display:flex}.links a{text-align:left}.hero-wrap,.program-exact,.info-grid,.split{grid-template-columns:1fr}.hero-left{padding:54px 20px}.hero-right{min-height:420px}.hero-right img{height:410px}.benefits{grid-template-columns:1fr}.program-copy{padding:40px 24px}.program-features{grid-template-columns:1fr 1fr}.result-grid{grid-template-columns:1fr 1fr;gap:20px}.testimonial-grid,.grid3{grid-template-columns:1fr}}
@media(max-width:580px){.container{width:min(calc(100% - 24px),var(--max))}.brand{min-width:auto}.brand-text{font-size:.82rem}.brand img{width:42px}.hero-left h1{font-size:2.75rem}.hero-right{min-height:330px}.hero-right img{height:320px}.program-img{min-height:300px}.program-features{grid-template-columns:1fr 1fr}.result-grid{grid-template-columns:1fr}.result{border-right:0;border-bottom:1px solid #e0e4e8;padding:14px}.final-cta,.legal{flex-direction:column;align-items:flex-start}}

/* === HARDENED APPROVED HERO LAYOUT 2026-09-03 === */
.hero-exact,.program-exact{padding:0!important}
.hero-exact>.container.hero-wrap{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr)!important;align-items:stretch!important;width:min(calc(100% - 42px),1380px)!important;margin-inline:auto!important}
.hero-left{grid-column:1!important;min-width:0!important}
.hero-right{grid-column:2!important;display:block!important;min-width:430px!important;align-self:stretch!important}
.benefits{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}
.actions{display:flex!important;flex-direction:row!important;align-items:center!important}
.hero-right img{max-width:none!important}
.program-exact{display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)!important}
@media (min-width:981px){
  .hero-exact>.container.hero-wrap{min-height:500px!important}
  .hero-left{padding:68px 40px 58px 0!important}
  .hero-right{min-height:500px!important}
  .hero-right img{height:480px!important;bottom:0!important;left:50%!important;transform:translateX(-50%)!important}
}
@media (max-width:980px){
  .hero-exact>.container.hero-wrap{grid-template-columns:1fr!important;width:min(calc(100% - 24px),1380px)!important}
  .hero-left,.hero-right{grid-column:1!important}
  .hero-right{min-width:0!important}
  .benefits{grid-template-columns:1fr!important}
  .program-exact{grid-template-columns:1fr!important}
}


/* Hero final aprobado: fotografía integrada sin marco interior */
.hero-right{
  position:relative;
  overflow:hidden;
  background:#f4efe7;
}
.hero-right:before,
.hero-right:after,
.desk-shape{
  display:none !important;
}
.hero-right img{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  transform:none !important;
  filter:none !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
@media(max-width:980px){
  .hero-right img{
    object-position:center top !important;
  }
}


/* =========================================================
   AJUSTES FINALES APROBADOS — 2026-09-03
   ========================================================= */
:root{
  --navy:#0b2b54;
  --navy-deep:#061a36;
  --gold:#c7890a;
  --gold-2:#d99b14;
  --warm:#f3eee6;
  --warm-2:#eee6da;
  --warm-light:#f8f4ee;
  --ink:#10213d;
  --muted:#5d6775;
}

/* Tipografía de interfaz web: limpia, legible y disponible sin llamadas externas */
html,body,button,input,textarea,select{
  font-family: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}
body{
  color:var(--ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4,.brand-text,.links a,.btn,.result strong,.result span{
  font-family: "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif !important;
  letter-spacing:-.02em;
}
p,li,small,span{
  letter-spacing:0;
}

/* Logo final, más proporcionado como el borrador */
.brand{
  gap:10px !important;
  min-width:290px !important;
}
.brand img{
  width:58px !important;
  height:52px !important;
  object-fit:contain !important;
}
.brand-text{
  font-size:.98rem !important;
  line-height:1.04 !important;
  font-weight:800 !important;
  letter-spacing:0 !important;
}
.brand-text small{
  font-size:.68rem !important;
  letter-spacing:.19em !important;
  font-weight:700 !important;
}

/* CABECERA-HERO COMO UN TODO */
.hero-exact,
.hero-final{
  padding:0 !important;
  margin:0 !important;
  background:linear-gradient(90deg,var(--warm-light) 0%,var(--warm) 52%,var(--warm-2) 100%) !important;
  overflow:hidden !important;
}
.hero-wrap,
.hero-final-grid{
  min-height:520px !important;
  align-items:stretch !important;
  background:transparent !important;
  gap:0 !important;
}
.hero-left,
.hero-final-copy{
  background:transparent !important;
  padding-top:64px !important;
  padding-bottom:58px !important;
}

/* FOTO: ocupar TODO el panel derecho, sin recuadro, borde, margen ni fondo visible */
.hero-right,
.hero-final-photo{
  position:relative !important;
  min-height:520px !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  overflow:hidden !important;
}
.hero-right:before,.hero-right:after,
.hero-final-photo:before,.hero-final-photo:after,
.desk-shape,.hero-nameplate{
  display:none !important;
}
.hero-right img,
.hero-final-photo img{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  filter:none !important;
  transform:none !important;
}

/* SEGUNDA SECCIÓN: el lado de texto comparte el tono cálido de la imagen */
.program-exact,
.visual-program{
  background:var(--warm) !important;
  gap:0 !important;
  border-top:8px solid #fff !important;
}
.program-img,
.visual-program-image{
  background:var(--warm) !important;
}
.program-copy,
.visual-program-copy{
  background:linear-gradient(110deg,var(--warm-light),var(--warm)) !important;
  border:0 !important;
}
.program-copy h2,
.visual-program-copy h2{
  color:var(--navy) !important;
}

/* Navegación más elegante */
.header{
  background:rgba(255,255,255,.985) !important;
}
.links a{
  font-weight:700 !important;
  font-size:.84rem !important;
}
.nav-phone{
  background:linear-gradient(135deg,var(--gold-2),var(--gold)) !important;
}

/* Botones del borrador */
.btn{
  border-radius:7px !important;
  font-weight:750 !important;
}
.btn-primary{
  background:var(--navy) !important;
}
.btn-gold{
  background:linear-gradient(135deg,var(--gold-2),var(--gold)) !important;
}

/* Ajuste fino de escritorio */
@media (min-width:981px){
  .hero-wrap,.hero-final-grid{
    grid-template-columns:1.04fr .96fr !important;
  }
  .hero-left,.hero-final-copy{
    padding-right:48px !important;
  }
  .hero-right img,.hero-final-photo img{
    object-position:center center !important;
  }
}

/* En móvil se apila correctamente, manteniendo la foto a sangre */
@media (max-width:980px){
  .brand{min-width:auto !important}
  .hero-right,.hero-final-photo{min-height:390px !important}
  .hero-right img,.hero-final-photo img{
    position:absolute !important;
    object-position:center top !important;
  }
  .program-copy,.visual-program-copy{
    background:var(--warm-light) !important;
  }
}
@media (max-width:580px){
  .brand img{width:46px !important;height:42px !important}
  .brand-text{font-size:.82rem !important}
  .hero-right,.hero-final-photo{min-height:320px !important}
}


/* ==========================================================
   REVISIÓN GLOBAL FINAL 2026-09-03
   Cabecera única + logo exacto + hero a sangre
   ========================================================== */

.skip{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}
.topbar{display:none!important}

/* CABECERA ÚNICA PARA TODAS LAS PÁGINAS */
.header.site-header{
  position:sticky!important;
  top:0!important;
  z-index:1000!important;
  background:rgba(255,255,255,.985)!important;
  border-bottom:1px solid #e9edf2!important;
  box-shadow:0 3px 18px rgba(11,43,84,.045)!important;
}
.header.site-header .nav{
  min-height:88px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
}
.header.site-header .brand{
  display:flex!important;
  align-items:center!important;
  flex:0 0 auto!important;
  min-width:255px!important;
  padding:0!important;
}
.header.site-header .brand .brand-logo{
  display:block!important;
  width:255px!important;
  height:75px!important;
  max-width:255px!important;
  object-fit:contain!important;
  object-position:left center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
.header.site-header .links{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:4px!important;
  margin-left:auto!important;
}
.header.site-header .links>a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:44px!important;
  padding:10px 10px!important;
  border-radius:8px!important;
  font-size:.83rem!important;
  font-weight:750!important;
  letter-spacing:-.01em!important;
  text-transform:uppercase!important;
  color:#0b2b54!important;
  background:transparent!important;
  white-space:nowrap!important;
}
.header.site-header .links>a:hover,
.header.site-header .links>a[aria-current="page"]{
  color:#b97b00!important;
  background:#fbf4e8!important;
}
.header.site-header .links .nav-phone{
  margin-left:8px!important;
  padding:12px 15px!important;
  color:#fff!important;
  background:linear-gradient(135deg,#db9c12,#c7890a)!important;
  border-radius:8px!important;
  box-shadow:0 7px 18px rgba(199,137,10,.18)!important;
}
.header.site-header .menu{
  display:none!important;
}

/* Elimina completamente cualquier marca/cabecera antigua residual */
.brand-mark,.brand-text{display:none!important}

/* HERO SUPERIOR: UNA SOLA PIEZA, FOTO OCUPANDO EL 100% */
.hero-exact,.hero-final{
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  background:linear-gradient(90deg,#f8f4ee 0%,#f3eee6 51%,#eee6da 100%)!important;
}
.hero-wrap,.hero-final-grid{
  display:grid!important;
  grid-template-columns:1.04fr .96fr!important;
  gap:0!important;
  min-height:520px!important;
  align-items:stretch!important;
  overflow:hidden!important;
}
.hero-left,.hero-final-copy{
  min-width:0!important;
  padding:64px 48px 58px 0!important;
  background:transparent!important;
}
.hero-right,.hero-final-photo{
  position:relative!important;
  min-width:0!important;
  min-height:520px!important;
  height:520px!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  border:0!important;
  border-radius:0!important;
  background:#eee6da!important;
}
.hero-right:before,.hero-right:after,.hero-final-photo:before,.hero-final-photo:after,
.hero-nameplate,.desk-shape{
  display:none!important;
}
.hero-right>img,.hero-final-photo>img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:fill!important; /* imagen creada ya con la proporción exacta del panel */
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}

/* Segunda franja cálida, como en el borrador */
.program-exact,.visual-program{
  gap:0!important;
  border-top:8px solid #fff!important;
  background:#f3eee6!important;
}
.program-copy,.visual-program-copy{
  background:linear-gradient(115deg,#f8f4ee,#f0e9de)!important;
}

/* Compatibilidad visual de interiores */
.page-hero{
  background:linear-gradient(180deg,#f7f4ef,#fff)!important;
  border-bottom:1px solid #ece7df!important;
}
.page-hero h1,.section-head h2,.prose h2,.prose h3{
  color:#0b2b54!important;
}
.card{
  border:1px solid #e5e8ed!important;
  box-shadow:0 8px 24px rgba(11,43,84,.055)!important;
}
.btn-primary{background:#0b2b54!important;color:#fff!important}
.btn-gold{background:linear-gradient(135deg,#db9c12,#c7890a)!important;color:#fff!important}

/* MÓVIL / TABLET */
@media(max-width:1080px){
  .header.site-header .brand{min-width:210px!important}
  .header.site-header .brand .brand-logo{width:210px!important;height:auto!important}
  .header.site-header .menu{
    display:grid!important;
    place-items:center!important;
    flex:0 0 44px!important;
  }
  .header.site-header .links{
    display:none!important;
    position:absolute!important;
    top:88px!important;
    left:16px!important;
    right:16px!important;
    z-index:1100!important;
    padding:10px!important;
    border:1px solid #e5e9ef!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:0 18px 45px rgba(11,43,84,.14)!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .header.site-header .links.open{display:flex!important}
  .header.site-header .links>a{
    width:100%!important;
    justify-content:flex-start!important;
    padding:12px 14px!important;
  }
  .header.site-header .links .nav-phone{margin-left:0!important;margin-top:4px!important}
  .hero-wrap,.hero-final-grid{grid-template-columns:1fr!important}
  .hero-left,.hero-final-copy{padding:50px 22px!important}
  .hero-right,.hero-final-photo{height:420px!important;min-height:420px!important}
}
@media(max-width:580px){
  .header.site-header .nav{min-height:76px!important}
  .header.site-header .brand{min-width:175px!important}
  .header.site-header .brand .brand-logo{width:175px!important}
  .header.site-header .links{top:76px!important}
  .hero-right,.hero-final-photo{height:330px!important;min-height:330px!important}
}


/* ============================================================
   PRODUCCIÓN V3 — CABECERA ÚNICA EN TODO EL SITIO
   ============================================================ */

/* Nunca mostrar elementos heredados */
.topbar,
.skip,
.breadcrumbs,
.brand-mark,
.brand-text {
  display:none !important;
}

/* Cabecera universal */
.site-header {
  position:sticky !important;
  top:0 !important;
  z-index:9999 !important;
  width:100% !important;
  background:#fff !important;
  border-bottom:1px solid #e8edf2 !important;
  box-shadow:0 3px 18px rgba(11,43,84,.05) !important;
}
.site-header .nav {
  min-height:88px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:28px !important;
  width:min(calc(100% - 42px),1380px) !important;
  margin:0 auto !important;
}
.site-header .brand {
  flex:0 0 auto !important;
  display:flex !important;
  align-items:center !important;
  min-width:255px !important;
  margin:0 !important;
  padding:0 !important;
}
.site-header .brand-logo {
  display:block !important;
  width:255px !important;
  height:75px !important;
  object-fit:contain !important;
  object-position:left center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
.site-header .links {
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:nowrap !important;
  gap:3px !important;
  margin-left:auto !important;
}
.site-header .links > a {
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:44px !important;
  padding:10px 10px !important;
  color:#0b2b54 !important;
  background:transparent !important;
  border-radius:8px !important;
  font-family:Inter,"Segoe UI",Roboto,Helvetica,Arial,sans-serif !important;
  font-size:.83rem !important;
  font-weight:750 !important;
  line-height:1 !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
}
.site-header .links > a:hover,
.site-header .links > a[aria-current="page"] {
  color:#b87900 !important;
  background:#fbf4e8 !important;
}
.site-header .links > .nav-phone {
  color:#fff !important;
  background:linear-gradient(135deg,#dc9d13,#c7890a) !important;
  margin-left:8px !important;
  padding:12px 15px !important;
  box-shadow:0 7px 18px rgba(199,137,10,.18) !important;
}
.site-header .menu {
  display:none !important;
}

/* Las páginas interiores empiezan inmediatamente después de la cabecera */
.page-hero {
  margin-top:0 !important;
}

/* Hero home: foto ocupa el panel completo */
.hero-right {
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  overflow:hidden !important;
}
.hero-right > img {
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center center !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

/* Tablet/móvil */
@media(max-width:1080px) {
  .site-header .nav {
    min-height:80px !important;
  }
  .site-header .brand {
    min-width:205px !important;
  }
  .site-header .brand-logo {
    width:205px !important;
    height:auto !important;
  }
  .site-header .menu {
    display:grid !important;
    place-items:center !important;
    width:44px !important;
    height:44px !important;
    flex:0 0 44px !important;
    border:0 !important;
    border-radius:10px !important;
    background:#eef3f7 !important;
    color:#0b2b54 !important;
    font-size:1.25rem !important;
  }
  .site-header .links {
    display:none !important;
    position:absolute !important;
    top:80px !important;
    left:16px !important;
    right:16px !important;
    z-index:10000 !important;
    flex-direction:column !important;
    align-items:stretch !important;
    padding:10px !important;
    background:#fff !important;
    border:1px solid #e5e9ef !important;
    border-radius:12px !important;
    box-shadow:0 18px 45px rgba(11,43,84,.14) !important;
  }
  .site-header .links.open {
    display:flex !important;
  }
  .site-header .links > a {
    width:100% !important;
    justify-content:flex-start !important;
    padding:13px 14px !important;
  }
  .site-header .links > .nav-phone {
    margin-left:0 !important;
    margin-top:4px !important;
  }
}

/* V4: contenido SEO y legal */
.section-intro{max-width:900px;margin:0 auto 34px;text-align:center}
.section-intro h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.08;color:var(--navy);margin:10px 0 15px}
.section-intro p{font-size:1.05rem;color:#465266}
.eyebrow{display:inline-flex;padding:6px 11px;border-radius:999px;background:#fff2d4;color:#8c6000;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em}
.seo-content-section{background:#fff}
.seo-card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.seo-card{padding:24px;border:1px solid #e5e9ee;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(11,43,84,.05)}
.seo-card>span{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#f7edd9;color:var(--gold);font-weight:900}
.seo-card h3{color:var(--navy);margin:15px 0 8px}.seo-card p{color:#566173;font-size:.92rem}
.specialties-seo{background:#f7f5f1}
.specialty-seo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.specialty-seo-card{padding:27px;border-radius:14px;background:#fff;border-top:4px solid var(--gold);box-shadow:0 8px 25px rgba(11,43,84,.05)}
.specialty-seo-card h3{color:var(--navy);font-size:1.25rem}.specialty-seo-card p{color:#566173}.specialty-seo-card a{color:#9b6900;font-weight:800}
.why-section{background:#fff}
.facebook-band{padding:28px 0;background:#edf3fa}
.facebook-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.facebook-inner strong{display:block;color:var(--navy);font-size:1.15rem}.facebook-inner p{margin:4px 0 0;color:#536075}
.legal-prose{max-width:920px}.legal-prose h2{margin-top:34px;color:var(--navy)}.legal-prose h2:first-child{margin-top:0}.legal-prose li{margin:7px 0}.legal-prose a{color:#8f6200;text-decoration:underline}
@media(max-width:980px){.seo-card-grid{grid-template-columns:1fr 1fr}.specialty-seo-grid{grid-template-columns:1fr}.facebook-inner{flex-direction:column;align-items:flex-start}}
@media(max-width:580px){.seo-card-grid{grid-template-columns:1fr}}


/* =========================================================
   V5 — TIPOGRAFÍA Y PÁGINA PREPARADOR
   ========================================================= */

/* Tipografía de lectura */
html,body,button,input,textarea,select{
  font-family: Inter, "Segoe UI Variable Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

/* Títulos: más editoriales y atractivos, manteniendo máxima legibilidad */
h1,h2,h3,h4,
.section-intro h2,
.page-hero h1,
.preparer-hero-copy h1,
.cta h2,
.statbox h2{
  font-family: "Aptos Display", "Segoe UI Variable Display", "Trebuchet MS", "Segoe UI", Arial, sans-serif !important;
  color:#0b2b54;
  font-weight:750;
  letter-spacing:-.035em;
  text-wrap:balance;
}

h1{
  line-height:1.02 !important;
}
h2{
  line-height:1.08 !important;
}
h3{
  line-height:1.15 !important;
  letter-spacing:-.022em !important;
}

/* Un toque más elegante en los grandes títulos */
.hero-left h1,
.hero-final-copy h1,
.preparer-hero-copy h1{
  font-weight:780 !important;
  letter-spacing:-.048em !important;
}

/* Página Preparador integrada visualmente como la portada */
.preparer-hero{
  padding:0 !important;
  background:linear-gradient(90deg,#f8f4ee 0%,#f4efe7 48%,#eee6da 100%) !important;
  overflow:hidden;
  border-bottom:1px solid #e8e1d7;
}

.preparer-hero-grid{
  display:grid;
  grid-template-columns:minmax(390px,.84fr) minmax(0,1.16fr);
  min-height:610px;
  align-items:stretch;
  gap:0;
}

.preparer-hero-photo{
  position:relative;
  min-height:610px;
  overflow:hidden;
  background:#eee6da;
}

.preparer-hero-photo img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center top;
  border:0;
  border-radius:0;
  box-shadow:none;
}

.preparer-hero-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:68px 0 64px 68px;
  max-width:760px;
}

.preparer-hero-copy .eyebrow{
  align-self:flex-start;
  margin-bottom:14px;
}

.preparer-hero-copy h1{
  margin:0 0 20px;
  font-size:clamp(2.55rem,4.25vw,4.65rem);
  color:#0b2b54;
}

.preparer-hero-copy .lead{
  margin:0 0 18px;
  max-width:720px;
  font-size:1.16rem;
  line-height:1.58;
  color:#243750;
}

.preparer-hero-copy > p:not(.lead){
  margin:0;
  max-width:720px;
  line-height:1.7;
  color:#526071;
}

.preparer-highlights{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:27px 0 26px;
}

.preparer-highlight{
  min-height:82px;
  padding:15px 17px;
  border:1px solid rgba(11,43,84,.10);
  border-radius:12px;
  background:rgba(255,255,255,.64);
  backdrop-filter:blur(4px);
}

.preparer-highlight strong{
  display:block;
  color:#0b2b54;
  font-size:1.18rem;
  line-height:1.1;
  margin-bottom:5px;
}

.preparer-highlight span{
  display:block;
  color:#596574;
  font-size:.86rem;
}

.preparer-profile-section{
  background:#fff;
}

.preparer-details{
  align-items:start;
}

.preparer-details h2{
  font-size:clamp(2rem,3vw,2.8rem);
  margin-top:12px;
}

.preparer-details h3{
  margin-top:30px;
  color:#0b2b54;
  font-size:1.35rem;
}

.preparer-statbox{
  position:sticky;
  top:115px;
}

.preparer-statbox .eyebrow{
  margin-bottom:12px;
}

@media(max-width:980px){
  .preparer-hero-grid{
    grid-template-columns:1fr;
  }
  .preparer-hero-photo{
    min-height:520px;
  }
  .preparer-hero-copy{
    max-width:none;
    padding:48px 24px 52px;
  }
  .preparer-statbox{
    position:static;
  }
}

@media(max-width:580px){
  .preparer-hero-photo{
    min-height:430px;
  }
  .preparer-hero-copy h1{
    font-size:2.45rem;
  }
  .preparer-highlights{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   V6 — CONTRASTE EN FONDOS AZULES + METODOLOGÍA + PRECIO
   ========================================================= */

/* Corrección global: títulos y texto destacado sobre fondos oscuros */
.statbox h1,
.statbox h2,
.statbox h3,
.price-box h1,
.price-box h2,
.price-box h3,
.final-cta h1,
.final-cta h2,
.final-cta h3,
.cta.dark h1,
.cta.dark h2,
.cta.dark h3,
.dark-card h1,
.dark-card h2,
.dark-card h3,
.navy-card h1,
.navy-card h2,
.navy-card h3,
.footer h1,
.footer h2,
.footer h3,
.footer h4 {
  color:#fff !important;
}
.statbox p,
.statbox li,
.price-box p,
.price-box li,
.final-cta p,
.dark-card p,
.navy-card p{
  color:rgba(255,255,255,.88) !important;
}
.statbox .mini strong,
.statbox .mini{
  color:#fff !important;
}

/* Cabeceras de página algo más visuales */
.page-hero-rich{
  background:
    radial-gradient(circle at 82% 35%,rgba(199,137,10,.10),transparent 28%),
    linear-gradient(180deg,#f5f1ea,#fff) !important;
}
.page-hero-rich h1{
  max-width:980px;
  margin-bottom:18px;
}
.page-hero-rich .lead{
  max-width:850px;
  font-size:1.14rem;
  line-height:1.62;
}

/* Metodología */
.method-grid .method-card{
  position:relative;
  overflow:hidden;
  min-height:235px;
}
.method-grid .method-card:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:100%;
  height:4px;
  background:linear-gradient(90deg,#c7890a,#e5b448);
}
.method-card .icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#0b2b54;
  color:#fff;
  font-weight:900;
  margin-bottom:15px;
}

/* Bloques imagen + texto */
.visual-story{
  padding:0;
  background:#f5f1ea;
  border-top:1px solid #ebe3d8;
  border-bottom:1px solid #ebe3d8;
}
.visual-story-grid{
  display:grid;
  grid-template-columns:.82fr 1.18fr;
  min-height:520px;
  align-items:stretch;
}
.visual-story-grid.reverse{
  grid-template-columns:1.02fr .98fr;
}
.visual-story-grid.reverse .visual-story-image{
  order:2;
}
.visual-story-grid.reverse .visual-story-copy{
  order:1;
}
.visual-story-image{
  min-height:520px;
  overflow:hidden;
  background:#e9e0d2;
}
.visual-story-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
}
.visual-story-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:56px 68px;
}
.visual-story-copy blockquote{
  margin:16px 0 22px;
  max-width:720px;
  color:#0b2b54;
  font-family:"Aptos Display","Segoe UI Variable Display","Trebuchet MS","Segoe UI",Arial,sans-serif;
  font-size:clamp(2rem,3.2vw,3.15rem);
  line-height:1.08;
  font-weight:700;
  letter-spacing:-.035em;
}
.visual-story-copy p{
  max-width:720px;
  color:#4f5b6b;
  line-height:1.72;
}
.clean-list{
  display:grid;
  gap:8px;
  padding:0;
  margin:18px 0 0;
  list-style:none;
}
.clean-list li{
  position:relative;
  padding-left:26px;
  color:#2d3e54;
  font-weight:650;
}
.clean-list li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:#c7890a;
  font-weight:950;
}

/* Precio */
.price-focus-section{
  background:#fff;
}
.price-focus-grid{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:48px;
  align-items:stretch;
}
.price-card-main{
  position:relative;
  padding:38px;
  border-radius:18px;
  border:1px solid #e2e7ed;
  background:#fff;
  box-shadow:0 14px 40px rgba(11,43,84,.08);
}
.price-card-main .badge{
  display:inline-flex;
  margin-bottom:18px;
}
.price-card-main .price{
  text-align:left;
  color:#0b2b54;
  font-size:clamp(3.3rem,5vw,5.2rem);
  line-height:1;
  letter-spacing:-.05em;
}
.price-card-main .price small{
  color:#667181;
  font-size:1.05rem;
}
.price-lead{
  margin:18px 0 25px;
  max-width:650px;
  font-size:1.05rem;
  color:#526071;
}
.price-checklist{
  grid-template-columns:1fr 1fr;
  column-gap:24px;
  margin-bottom:28px;
}
.price-side-copy{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:28px 10px;
}
.price-side-copy h2{
  margin:14px 0 16px;
  font-size:clamp(2.2rem,3.5vw,3.4rem);
}
.price-side-copy>p{
  color:#566273;
  line-height:1.7;
}
.value-list{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
  margin-top:24px;
}
.value-list article{
  padding:18px;
  border-radius:12px;
  background:#f6f3ee;
  border:1px solid #ece5dc;
}
.value-list strong{
  display:block;
  color:#0b2b54;
  margin-bottom:5px;
}
.value-list span{
  color:#667181;
  font-size:.9rem;
}
.text-link{
  margin-top:18px;
  color:#9b6900;
  font-weight:850;
}
.faq-wide{
  max-width:920px;
  margin:0 auto;
}
.faq-wide details{
  padding:17px 20px;
}

/* CTA azul: forzar legibilidad */
.cta{
  background:linear-gradient(135deg,#0b2b54,#123e73);
  color:#fff;
}
.cta h1,.cta h2,.cta h3{
  color:#fff !important;
}
.cta p{
  color:rgba(255,255,255,.88) !important;
}

@media(max-width:980px){
  .visual-story-grid,
  .visual-story-grid.reverse,
  .price-focus-grid{
    grid-template-columns:1fr;
  }
  .visual-story-grid.reverse .visual-story-image,
  .visual-story-grid.reverse .visual-story-copy{
    order:initial;
  }
  .visual-story-image{
    min-height:430px;
  }
  .visual-story-copy{
    padding:44px 24px;
  }
  .price-checklist{
    grid-template-columns:1fr;
  }
}


/* =========================================================
   V7 — FORMULARIO DE CONTACTO
   ========================================================= */
.contact-section{background:#fff}
.contact-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:34px;align-items:start}
.contact-form-card{padding:34px;border:1px solid #e2e7ed;border-radius:18px;background:#fff;box-shadow:0 14px 40px rgba(11,43,84,.07)}
.contact-form-head h2{font-size:clamp(2rem,3.2vw,3rem);margin:12px 0 8px;color:#0b2b54}
.contact-form-head p{margin:0 0 25px;color:#697484}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px}
.field{display:flex;flex-direction:column;gap:7px}.field-full{grid-column:1/-1}
.field label{font-weight:750;color:#172b47;font-size:.92rem}.field label span,.privacy-check strong{color:#a56f00}.field label small{font-weight:500;color:#7a8492}
.field input,.field select,.field textarea,.captcha-box input{
  width:100%;border:1px solid #cfd7e1;border-radius:9px;background:#fff;color:#17253b;
  font:inherit;padding:12px 13px;outline:none;transition:border-color .15s,box-shadow .15s
}
.field textarea{resize:vertical;min-height:145px}
.field input:focus,.field select:focus,.field textarea:focus,.captcha-box input:focus{border-color:#c7890a;box-shadow:0 0 0 3px rgba(199,137,10,.12)}
.captcha-box{display:grid;grid-template-columns:42px 1fr 90px;gap:13px;align-items:center;margin:22px 0;padding:15px 17px;border-radius:12px;background:#f6f3ee;border:1px solid #ece5da}
.captcha-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#0b2b54;color:#fff;font-weight:900}
.captcha-copy{display:flex;flex-direction:column;gap:2px}.captcha-copy strong{color:#0b2b54}.captcha-copy span{font-size:.9rem;color:#5e6877}
.captcha-box input{text-align:center;font-weight:800}
.privacy-check{display:flex;gap:10px;align-items:flex-start;margin:4px 0 22px;color:#576373;font-size:.89rem;line-height:1.45}.privacy-check input{margin-top:3px;accent-color:#0b2b54}.privacy-check a{color:#8f6100;text-decoration:underline}
.form-submit-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.contact-submit{border:0;cursor:pointer}.form-security{font-size:.82rem;color:#77808d}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.form-alert{padding:16px 18px;border-radius:10px;margin-bottom:22px}.form-alert strong{display:block;margin-bottom:4px}.form-alert p{margin:0}
.form-alert-success{background:#edf8f1;border:1px solid #c8ead3;color:#215c36}.form-alert-error{background:#fff0ef;border:1px solid #f0cbc6;color:#852f27}
.contact-side{display:grid;gap:20px}.contact-side-card,.contact-note{padding:27px;border-radius:16px}
.contact-side-dark{background:linear-gradient(145deg,#0b2b54,#123e73);color:#fff;box-shadow:0 14px 35px rgba(11,43,84,.16)}
.contact-side-dark .eyebrow{background:rgba(255,255,255,.12);color:#f2c55e}.contact-side-dark h2{color:#fff!important;margin:14px 0 12px;font-size:1.85rem}.contact-side-dark>p{color:rgba(255,255,255,.84)}
.contact-methods{display:grid;gap:9px;margin-top:22px}.contact-methods a{display:flex;flex-direction:column;gap:2px;padding:13px 14px;border-radius:9px;background:rgba(255,255,255,.09);color:#fff;border:1px solid rgba(255,255,255,.11)}
.contact-methods a:hover{background:rgba(255,255,255,.14)}.contact-methods strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#efc257}.contact-methods span{font-size:.94rem;overflow-wrap:anywhere}
.contact-note{background:#f6f3ee;border:1px solid #ece5dc}.contact-note .clean-list{margin-top:17px}
@media(max-width:900px){.contact-layout{grid-template-columns:1fr}.contact-side{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.contact-form-card{padding:23px}.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}.captcha-box{grid-template-columns:38px 1fr}.captcha-box input{grid-column:1/-1}.contact-side{grid-template-columns:1fr}}


/* =========================================================
   V9 — MÁS CONTENIDO VISUAL SIN RECARGAR
   ========================================================= */
.visual-journey-section{
  padding:72px 0;
  background:
    radial-gradient(circle at 8% 14%,rgba(202,145,28,.10),transparent 28%),
    linear-gradient(180deg,#fbfaf8 0%,#ffffff 100%);
  border-top:1px solid #eee8de;
  border-bottom:1px solid #eee8de;
}
.visual-section-heading{max-width:760px;margin:0 auto 34px;text-align:center}
.visual-section-heading h2{margin:10px 0 10px;color:#0b2b54;font-size:clamp(2rem,3.2vw,3rem)}
.visual-section-heading p{margin:0;color:#697484;font-size:1.03rem}
.journey-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  position:relative;
}
.journey-grid:before{
  content:"";
  position:absolute;
  left:8%;
  right:8%;
  top:31px;
  height:2px;
  background:linear-gradient(90deg,#d8b66a,#0b2b54,#d8b66a);
  opacity:.55;
  z-index:0;
}
.journey-step{
  position:relative;
  z-index:1;
  min-height:188px;
  padding:0 18px 22px;
  border:1px solid #e2e7ed;
  border-radius:16px;
  background:rgba(255,255,255,.96);
  text-align:center;
  box-shadow:0 11px 28px rgba(11,43,84,.06);
}
.journey-number{
  width:62px;height:62px;border-radius:50%;
  margin:0 auto 17px;transform:translateY(-1px);
  display:grid;place-items:center;
  background:linear-gradient(145deg,#0b2b54,#174d86);
  color:#f2c55e;font-weight:900;font-size:1.05rem;
  border:5px solid #fff;
  box-shadow:0 8px 18px rgba(11,43,84,.16);
}
.journey-copy h3{margin:0 0 8px;color:#0b2b54;font-size:1.08rem}
.journey-copy p{margin:0;color:#687484;font-size:.92rem;line-height:1.55}
.journey-note{
  max-width:850px;margin:28px auto 0;padding:17px 22px;
  display:flex;gap:15px;align-items:center;
  border-radius:12px;background:#0b2b54;color:#fff;
}
.journey-note-mark{font-size:1.7rem;color:#f1bd4b;line-height:1}
.journey-note p{margin:0;color:rgba(255,255,255,.9)}

.career-timeline-section{
  padding:72px 0;
  background:linear-gradient(180deg,#ffffff,#f7f4ee);
}
.career-timeline{max-width:900px;margin:10px auto 0;position:relative}
.career-timeline:before{
  content:"";position:absolute;left:107px;top:15px;bottom:15px;width:2px;background:#d8c49b;
}
.career-item{
  display:grid;grid-template-columns:80px 26px 1fr;gap:14px;
  align-items:start;margin-bottom:20px;position:relative;
}
.career-year{
  font-family:"Aptos Display","Segoe UI Variable Display","Trebuchet MS","Segoe UI",Arial,sans-serif;
  color:#9a6904;font-weight:900;font-size:1.12rem;text-align:right;padding-top:19px;
}
.career-dot{
  width:18px;height:18px;border-radius:50%;background:#c98b0b;border:5px solid #fff;
  box-shadow:0 0 0 2px #d8c49b;margin:20px auto 0;z-index:2;
}
.career-card{
  background:#fff;border:1px solid #e3e7ec;border-radius:14px;padding:20px 22px;
  box-shadow:0 10px 26px rgba(11,43,84,.055);
}
.career-card h3{margin:0 0 6px;color:#0b2b54}.career-card p{margin:0;color:#657181}

.contact-trust-section{padding:0 0 68px;background:#fff}
.contact-trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.trust-mini-card{
  border:1px solid #e2e7ed;border-radius:14px;padding:22px;text-align:center;background:#fbfaf8;
}
.trust-mini-icon{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;margin:0 auto 13px;
  background:#0b2b54;color:#efbd52;font-weight:900;font-size:1.2rem;
}
.trust-mini-card h3{margin:0 0 7px;color:#0b2b54;font-size:1.05rem}
.trust-mini-card p{margin:0;color:#697484;font-size:.9rem;line-height:1.5}

@media(max-width:900px){
  .journey-grid{grid-template-columns:repeat(2,1fr);gap:20px}
  .journey-grid:before{display:none}
  .contact-trust-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
  .visual-journey-section,.career-timeline-section{padding:52px 0}
  .journey-grid{grid-template-columns:1fr}
  .journey-step{min-height:auto}
  .career-timeline:before{left:11px}
  .career-item{grid-template-columns:26px 1fr;gap:12px}
  .career-year{grid-column:2;text-align:left;padding:0 0 2px;font-size:1rem}
  .career-dot{grid-column:1;grid-row:1 / span 2;margin:2px auto 0}
  .career-card{grid-column:2}
}


/* =========================================================
   V10 — CORRECCIÓN DEFINITIVA DEL MENÚ MÓVIL
   ========================================================= */
@media (max-width:1080px){
  .site-header{position:relative!important;z-index:9999!important;overflow:visible!important}
  .site-header .nav{position:relative!important;overflow:visible!important}
  .site-header .menu{
    display:grid!important;
    place-items:center!important;
    position:relative!important;
    z-index:10002!important;
    cursor:pointer!important;
  }
  .site-header .links{
    display:none!important;
    position:absolute!important;
    top:calc(100% + 8px)!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-height:calc(100vh - 105px)!important;
    overflow-y:auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:3px!important;
    margin:0!important;
    padding:10px!important;
    background:#fff!important;
    border:1px solid #e2e7ed!important;
    border-radius:13px!important;
    box-shadow:0 20px 50px rgba(11,43,84,.20)!important;
    z-index:10001!important;
  }
  .site-header .links.open{display:flex!important}
  .site-header .links > a{
    display:flex!important;
    width:100%!important;
    min-height:45px!important;
    justify-content:flex-start!important;
    padding:12px 14px!important;
    border-radius:8px!important;
  }
  .site-header .links > .nav-phone{
    margin:5px 0 0!important;
    justify-content:center!important;
  }
  body.mobile-menu-open{overflow:hidden}
}


/* =========================================================
   V11 — MENÚ MÓVIL ROBUSTO (JS EXTERNO + FALLBACK INLINE)
   ========================================================= */
@media (max-width:1080px){
  html.mobile-menu-open,
  body.mobile-menu-open{overflow:hidden!important}

  .site-header{
    overflow:visible!important;
    position:relative!important;
    z-index:2147483000!important;
  }

  .site-header .nav{
    overflow:visible!important;
    position:relative!important;
  }

  .site-header .menu{
    display:grid!important;
    place-items:center!important;
    cursor:pointer!important;
    user-select:none!important;
    touch-action:manipulation!important;
    position:relative!important;
    z-index:2147483002!important;
  }

  .site-header .links{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
  }

  .site-header .links.open,
  .site-header.menu-open .links{
    display:flex!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:absolute!important;
    top:calc(100% + 8px)!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-height:calc(100vh - 110px)!important;
    overflow-y:auto!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:3px!important;
    padding:10px!important;
    margin:0!important;
    background:#fff!important;
    border:1px solid #e2e7ed!important;
    border-radius:13px!important;
    box-shadow:0 20px 50px rgba(11,43,84,.22)!important;
    z-index:2147483001!important;
  }

  .site-header .links.open > a,
  .site-header.menu-open .links > a{
    display:flex!important;
    width:100%!important;
    justify-content:flex-start!important;
    padding:13px 14px!important;
    min-height:45px!important;
  }

  .site-header .links.open > .nav-phone,
  .site-header.menu-open .links > .nav-phone{
    justify-content:center!important;
    margin:5px 0 0!important;
  }
}

/* V13 — Arquitectura SEO por CCAA */
.ccaa-hero{background:linear-gradient(135deg,#f7f2e8 0%,#fff 60%);padding:64px 0 48px}
.ccaa-hero .eyebrow{color:#b87900;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.82rem}
.ccaa-hero h1{max-width:900px;margin:10px 0 16px;color:#0b2b54}
.ccaa-hero .lead{max-width:850px;font-size:1.12rem;color:#44566c}
.ccaa-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.ccaa-fact{background:#fff;border:1px solid #e6e9ed;border-radius:14px;padding:18px;box-shadow:0 10px 28px rgba(11,43,84,.06)}
.ccaa-fact strong{display:block;color:#0b2b54;margin-bottom:5px}
.ccaa-section{padding:58px 0}.ccaa-section.alt{background:#f7f8fa}
.ccaa-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.ccaa-card{background:#fff;border:1px solid #e5e9ef;border-radius:16px;padding:24px;box-shadow:0 10px 28px rgba(11,43,84,.06)}
.ccaa-card h3{color:#0b2b54;margin-top:0}.ccaa-card .num{display:inline-grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#f4e5bf;color:#8a5a00;font-weight:900;margin-bottom:12px}
.ccaa-specialties{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:25px}
.ccaa-specialties a{display:block;background:#0b2b54;color:#fff!important;border-radius:16px;padding:24px;text-decoration:none}
.ccaa-specialties a strong{display:block;font-size:1.15rem;margin-bottom:7px}.ccaa-specialties a span{color:#dce6f1}
.ccaa-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.ccaa-list a{display:block;background:#fff;border:1px solid #e4e8ed;border-radius:12px;padding:16px;color:#0b2b54!important;text-decoration:none;font-weight:800}
.ccaa-list a:hover{border-color:#c68a12;background:#fffaf0}
.ccaa-note{border-left:4px solid #c68a12;background:#fff8e8;padding:18px 20px;border-radius:0 12px 12px 0;margin-top:24px}
.ccaa-cta{background:#0b2b54;color:#fff;padding:50px 0}.ccaa-cta h2{color:#fff}.ccaa-cta p{color:#dbe5ef;max-width:760px}
@media(max-width:900px){.ccaa-facts,.ccaa-grid,.ccaa-specialties,.ccaa-list{grid-template-columns:1fr}.ccaa-hero{padding-top:42px}}

/* V16 — Bloques SEO por CCAA en páginas de especialidad */
.autonomia-opos{padding:64px 0;background:#f7f8fa}
.autonomia-opos .intro{max-width:900px;margin:0 auto 30px;text-align:center}
.autonomia-opos .intro p{color:#536477}
.autonomia-index{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin:26px 0 42px}
.autonomia-index a{background:#fff;border:1px solid #dde4eb;border-radius:999px;padding:8px 12px;text-decoration:none;color:#0b2b54;font-weight:750;font-size:.88rem}
.autonomia-index a:hover{background:#fff8e8;border-color:#c58a12}
.autonomia-block{scroll-margin-top:105px;background:#fff;border:1px solid #e1e6eb;border-radius:18px;padding:28px;margin:0 auto 20px;max-width:1050px;box-shadow:0 10px 30px rgba(11,43,84,.055)}
.autonomia-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}
.autonomia-head h3{margin:0;color:#0b2b54;font-size:1.55rem}
.autonomia-status{display:inline-block;background:#fff4d8;color:#795100;border:1px solid #ecd597;border-radius:999px;padding:7px 11px;font-weight:800;font-size:.79rem;line-height:1.25}
.autonomia-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:18px}
.autonomia-panel{background:#f7f9fb;border-radius:13px;padding:18px}
.autonomia-panel strong{display:block;color:#0b2b54;margin-bottom:6px}
.autonomia-count{font-size:1.13rem;font-weight:850;color:#b87900;margin:12px 0}
.autonomia-source{margin-top:16px;font-size:.9rem}
.autonomia-source a{font-weight:800}
.autonomia-warning{max-width:1050px;margin:0 auto 26px;background:#fff9e9;border-left:4px solid #c58a12;padding:17px 19px;border-radius:0 12px 12px 0}
@media(max-width:760px){.autonomia-head{display:block}.autonomia-status{margin-top:10px}.autonomia-grid{grid-template-columns:1fr}.autonomia-block{padding:20px}}

/* V18 — Opiniones / experiencia de opositores */
.student-opinions{padding:70px 0;background:#f8f5ee}
.opinions-intro{text-align:center;max-width:800px;margin:0 auto 32px}
.opinions-intro h2{color:#0b2b54}
.opinions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.opinion-card{background:#fff;border:1px solid #e6e3dc;border-radius:18px;padding:27px;box-shadow:0 12px 34px rgba(11,43,84,.07)}
.opinion-card p{font-size:1.02rem;line-height:1.72;color:#3e4d5e}
.opinion-card strong{display:block;color:#0b2b54;margin-top:18px}
.stars{color:#b87900;letter-spacing:.08em;font-size:1.08rem}
.opinions-note{text-align:center;color:#6c7885;font-size:.84rem;margin:20px auto 0;max-width:760px}
@media(max-width:850px){.opinions-grid{grid-template-columns:1fr}}
