
:root{
  --bg:#f8f6f2;
  --bg-soft:#fdfbf8;
  --surface:#ffffff;
  --surface-alt:#f3f2ef;
  --text:#21344d;
  --text-soft:#506178;
  --heading:#183a67;
  --accent:#254d7a;
  --accent-2:#d1b063;
  --accent-3:#90a2b8;
  --border:#dbe0e8;
  --shadow:0 16px 38px rgba(29,48,75,.08);
  --radius:22px;
  --radius-sm:14px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at top left, rgba(209,176,99,.12), transparent 20%),
    radial-gradient(circle at bottom right, rgba(144,162,184,.10), transparent 25%),
    var(--bg);
  line-height:1.65;
}
h1,h2,h3,h4{font-family: Georgia, "Times New Roman", serif; color:var(--heading); line-height:1.15; margin:0 0 .6rem}
h1{font-size:clamp(2rem, 3.2vw, 3.2rem)}
h2{font-size:clamp(1.85rem, 3vw, 2.8rem)}
h3{font-size:1.35rem}
p{margin:.3rem 0 1rem}
a{color:var(--accent); text-decoration:none}
a:hover{text-decoration:none}
img{max-width:100%; display:block}
.container{width:min(calc(100% - 2rem), var(--max)); margin:0 auto}
.section{padding:4.5rem 0}
.section.compact{padding:3rem 0}
.section-head{max-width:780px; margin-bottom:2rem}
.section-head.center{text-align:center; margin-inline:auto}
.muted{color:var(--text-soft)}
.lead{font-size:1.08rem; color:var(--text-soft)}
.tag,.eyebrow{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.45rem .9rem; border-radius:999px; background:rgba(209,176,99,.12);
  color:var(--heading); font-size:.9rem; margin-bottom:1rem; font-weight:600;
}
.skip-link{position:absolute; left:-9999px; top:auto}
.skip-link:focus{left:1rem; top:1rem; background:#000; color:#fff; padding:.5rem .8rem; border-radius:8px; z-index:999}

.site-header{
  position:sticky; top:0; z-index:40; backdrop-filter:blur(12px);
  background:rgba(248,246,242,.84); border-bottom:1px solid rgba(33,52,77,.08);
}
.nav{
  width:min(calc(100% - 2rem), var(--max)); margin:0 auto; padding:.9rem 0;
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
}
.logo{display:flex; align-items:center; gap:.85rem; min-width:0}
.logo img{width:54px; height:54px; border-radius:50%; object-fit:cover; box-shadow:0 4px 18px rgba(24,58,103,.08)}
.logo-text{display:flex; flex-direction:column; min-width:0}
.logo-title{font-family: Georgia, serif; letter-spacing:.09em; color:var(--heading); font-size:1.2rem; text-transform:uppercase}
.logo-subtitle{font-size:.84rem; color:var(--text-soft)}
.nav-links{display:flex; align-items:center; gap:1rem; list-style:none; padding:0; margin:0}
.nav-link{padding:.55rem .75rem; color:var(--text); font-weight:500; border-radius:999px}
.nav-link.active,.nav-link:hover{background:#fff; box-shadow:0 4px 18px rgba(24,58,103,.06)}
.cta-nav{background:var(--heading); color:#fff !important; box-shadow:var(--shadow)}
.cta-nav:hover{background:var(--accent); box-shadow:var(--shadow)}
.dropdown{position:relative}
.dropdown-menu{
  position:absolute; top:calc(100% + .5rem); left:0; min-width:280px; background:#fff;
  border:1px solid var(--border); border-radius:18px; box-shadow:var(--shadow);
  padding:.7rem; display:none;
}
.dropdown:hover .dropdown-menu,
.dropdown:focus-within .dropdown-menu{display:grid; gap:.3rem}
.dropdown-menu a{padding:.7rem .8rem; border-radius:12px; color:var(--text)}
.dropdown-menu a:hover{background:var(--surface-alt)}
.menu-toggle{display:none; border:0; background:#fff; border-radius:12px; padding:.7rem 1rem; color:var(--heading); font-weight:700; box-shadow:0 4px 18px rgba(24,58,103,.08)}

.hero{padding:3rem 0 2.5rem}
.hero-grid{display:grid; grid-template-columns:1.2fr .85fr; gap:2rem; align-items:center}
.hero-panel{
  background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.92));
  border:1px solid rgba(219,224,232,.9); border-radius:32px; padding:2.3rem; box-shadow:var(--shadow)
}
.hero p.lead{max-width:63ch}
.actions{display:flex; gap:1rem; flex-wrap:wrap; margin:1.7rem 0 1.2rem}
.button{
  display:inline-flex; align-items:center; justify-content:center; gap:.55rem;
  min-height:48px; padding:.9rem 1.25rem; border-radius:999px; border:1px solid transparent;
  font-weight:700; transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.button:hover{transform:translateY(-1px); box-shadow:0 10px 22px rgba(24,58,103,.10)}
.button.primary{background:var(--heading); color:#fff}
.button.secondary{background:#fff; color:var(--heading); border-color:var(--border)}
.button.light{background:rgba(255,255,255,.8); color:var(--heading); border-color:rgba(255,255,255,.8)}
.trust-row{display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.1rem}
.trust-row span{background:#fff; border:1px solid var(--border); color:var(--text-soft); border-radius:999px; padding:.55rem .85rem; font-size:.92rem}
.hero-card,.card,.quote-card,.callout,.panel{
  background:rgba(255,255,255,.92); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow)
}
.hero-card{padding:2rem}
.soft-list{display:grid; gap:1rem}
.soft-list div{display:flex; gap:.9rem; align-items:flex-start; color:var(--text-soft)}
.icon-dot{width:32px; height:32px; border-radius:50%; display:grid; place-items:center; background:rgba(209,176,99,.18); color:var(--heading); font-weight:700; flex:0 0 auto}

.split{display:grid; grid-template-columns:1fr 1fr; gap:2rem; align-items:start}
.grid-2{display:grid; grid-template-columns:1fr 1fr; gap:1.6rem}
.grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem}
.card{padding:1.6rem; position:relative; overflow:hidden}
.card::after{content:""; position:absolute; right:-18px; top:-18px; width:110px; height:110px; background:radial-gradient(circle, rgba(209,176,99,.15), transparent 70%); border-radius:50%}
.card-link{font-weight:700; display:inline-flex; margin-top:.6rem}
.list-check{margin:0; padding-left:1.2rem}
.list-check li{margin-bottom:.5rem}

.panel{padding:2rem 2.2rem}
.pillars{display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; margin-top:1.2rem}
.pillar{padding:1.2rem; border-radius:18px; background:linear-gradient(180deg, rgba(209,176,99,.10), rgba(144,162,184,.10))}
.pillar span{display:block; color:var(--text-soft); margin-top:.35rem}
.callout,.quote-card{padding:1.8rem}
.faq{display:grid; gap:1rem}
.faq details{background:#fff; border:1px solid var(--border); border-radius:18px; padding:1rem 1.1rem; box-shadow:0 8px 22px rgba(24,58,103,.05)}
.faq summary{font-weight:700; cursor:pointer; color:var(--heading)}
.cta-band{
  display:flex; justify-content:space-between; align-items:center; gap:1.5rem;
  padding:2rem; background:linear-gradient(135deg, rgba(24,58,103,.96), rgba(37,77,122,.92)); border-radius:32px; color:#fff; box-shadow:var(--shadow)
}
.cta-band h2,.cta-band p{color:#fff; margin:0 0 .4rem}

.profile-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:1.5rem}
.profile-card{padding:1.8rem}
.profile-card .role{font-size:.95rem; color:var(--text-soft); font-weight:700; text-transform:uppercase; letter-spacing:.04em}

.pricing-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1.4rem}
.price-card{padding:1.8rem}
.price-card .price{font-size:2rem; font-family:Georgia, serif; color:var(--heading)}
.price-card.featured{background:linear-gradient(180deg, #fff, rgba(209,176,99,.12)); transform:translateY(-3px)}
.note-box{padding:1.3rem 1.4rem; background:rgba(144,162,184,.10); border-radius:18px; border:1px solid var(--border)}

.contact-grid{display:grid; grid-template-columns:.95fr 1.05fr; gap:1.6rem}
.contact-card,.form-card{padding:1.8rem}
.form-card form{display:grid; gap:1rem}
label{display:block; font-weight:600; margin-bottom:.35rem; color:var(--heading)}
input,select,textarea{
  width:100%; padding:.95rem 1rem; border-radius:14px; border:1px solid var(--border);
  background:#fff; font:inherit; color:var(--text)
}
textarea{min-height:150px; resize:vertical}

.blog-list{display:grid; gap:1.2rem}
.blog-item{padding:1.5rem}
.blog-meta{font-size:.92rem; color:var(--text-soft); margin-bottom:.5rem}

.site-footer{padding:3rem 0 2rem; border-top:1px solid rgba(33,52,77,.09); margin-top:2rem}
.footer-grid{width:min(calc(100% - 2rem), var(--max)); margin:0 auto; display:grid; grid-template-columns:1.15fr 1fr 1fr 1fr; gap:1.3rem}
.site-footer h4{font-size:1.05rem; margin-bottom:.7rem}
.site-footer a{display:block; margin:.35rem 0; color:var(--text-soft)}
.footer-note{width:min(calc(100% - 2rem), var(--max)); margin:1.2rem auto 0; color:var(--text-soft); font-size:.92rem}

.page-hero{padding:2.4rem 0 1rem}
.page-hero-card{padding:2rem 2.2rem; background:rgba(255,255,255,.94); border:1px solid var(--border); border-radius:32px; box-shadow:var(--shadow)}
.breadcrumbs{font-size:.95rem; color:var(--text-soft); margin-bottom:.8rem}
.inline-list{display:flex; gap:.7rem; flex-wrap:wrap; margin-top:1rem}
.inline-list span{padding:.5rem .8rem; border-radius:999px; background:#fff; border:1px solid var(--border); color:var(--text-soft)}

@media (max-width: 980px){
  .hero-grid,.split,.grid-2,.contact-grid,.footer-grid,.profile-grid,.pricing-grid{grid-template-columns:1fr}
  .grid-3{grid-template-columns:1fr 1fr}
  .pillars{grid-template-columns:1fr}
  .cta-band{flex-direction:column; align-items:flex-start}
  .nav{flex-wrap:wrap}
  .menu-toggle{display:inline-flex}
  .nav-links{display:none; width:100%; flex-direction:column; align-items:stretch; background:rgba(255,255,255,.92); padding:1rem; border-radius:20px; border:1px solid var(--border); box-shadow:var(--shadow)}
  .nav-links.open{display:flex}
  .dropdown-menu{position:static; display:grid; box-shadow:none; border:0; padding:.5rem 0 0; background:transparent}
}
@media (max-width: 720px){
  .hero-panel,.hero-card,.panel,.callout,.quote-card,.card,.contact-card,.form-card,.price-card,.profile-card,.page-hero-card{padding:1.45rem}
  .section{padding:3.5rem 0}
  .grid-3{grid-template-columns:1fr}
  .logo-title{font-size:1.02rem}
  .logo-subtitle{font-size:.8rem}
}


/* --- Refinamiento visual Psiconexum --- */
body{
  background:
    radial-gradient(circle at 10% 8%, rgba(209,176,99,.13), transparent 22rem),
    radial-gradient(circle at 88% 12%, rgba(37,77,122,.10), transparent 24rem),
    radial-gradient(circle at 80% 86%, rgba(144,162,184,.13), transparent 25rem),
    linear-gradient(180deg, #fbfaf7 0%, #f7f4ee 46%, #fbfaf7 100%);
  position:relative;
}

body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.32;
  background-image:
    linear-gradient(rgba(24,58,103,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(24,58,103,.035) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.45), transparent 75%);
  z-index:-2;
}

body::after{
  content:"Ψ";
  position:fixed;
  right:-5rem;
  bottom:-8rem;
  font-family:Georgia, "Times New Roman", serif;
  font-size:26rem;
  color:rgba(24,58,103,.035);
  line-height:1;
  pointer-events:none;
  z-index:-1;
}

.site-header{
  box-shadow:0 8px 30px rgba(24,58,103,.045);
}

.hero{
  padding:3.8rem 0 3.2rem;
  position:relative;
  overflow:hidden;
}

.hero::before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  border:1px solid rgba(209,176,99,.35);
  border-radius:50%;
  right:-170px;
  top:-230px;
  pointer-events:none;
}

.hero::after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  border:1px solid rgba(24,58,103,.18);
  border-radius:50%;
  left:-90px;
  bottom:-130px;
  pointer-events:none;
}

.hero-panel{
  position:relative;
  overflow:hidden;
  padding:2.1rem 2.25rem;
}

.hero-panel::before{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-60px;
  top:-70px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(209,176,99,.16), transparent 68%);
}

.hero-panel h1{
  font-size:clamp(1.85rem, 2.65vw, 3rem);
  max-width:16ch;
  letter-spacing:-.02em;
}

.hero-panel .lead{
  font-size:1.02rem;
  max-width:62ch;
}

.hero-card{
  position:relative;
  overflow:hidden;
}

.hero-card::before{
  content:"";
  position:absolute;
  inset:1rem;
  border:1px solid rgba(209,176,99,.18);
  border-radius:calc(var(--radius) - 4px);
  pointer-events:none;
}

.section{
  position:relative;
}

.section:nth-of-type(even)::before{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  border-radius:50%;
  background:rgba(144,162,184,.10);
  left:4%;
  top:12%;
  z-index:-1;
}

.card,
.panel,
.callout,
.quote-card,
.page-hero-card{
  backdrop-filter:blur(6px);
}

.card{
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.card:hover{
  transform:translateY(-3px);
  box-shadow:0 20px 42px rgba(24,58,103,.10);
  border-color:rgba(209,176,99,.45);
}

.card h3::after,
.panel h2::after,
.callout h2::after,
.quote-card h3::after{
  content:"";
  display:block;
  width:44px;
  height:2px;
  margin:.7rem 0 .2rem;
  background:linear-gradient(90deg, rgba(209,176,99,.9), rgba(209,176,99,0));
}

.section-head.center h2::after,
.cta-band h2::after{
  display:none;
}

.logo img{
  background:#fff;
  padding:2px;
}

.trust-row span{
  box-shadow:0 6px 16px rgba(24,58,103,.045);
}

.button.primary{
  background:linear-gradient(135deg, #183a67, #254d7a);
}

.button.secondary{
  background:rgba(255,255,255,.78);
}

@media (max-width: 720px){
  .hero{
    padding:2.4rem 0 2rem;
  }

  .hero-panel h1{
    font-size:clamp(1.75rem, 9vw, 2.35rem);
    max-width:100%;
  }

  body::after{
    font-size:16rem;
    right:-5rem;
    bottom:-4rem;
  }
}

/* --- Equipo con fotos Psiconexum --- */
.team-photo{
  width:100%;
  aspect-ratio:4/5;
  border-radius:22px;
  object-fit:cover;
  object-position:center;
  margin-bottom:1.25rem;
  box-shadow:0 18px 34px rgba(24,58,103,.13);
  border:1px solid rgba(219,224,232,.9);
  background:#f8f6f2;
}

.profile-card{
  display:flex;
  flex-direction:column;
}

.profile-card .role{
  margin-top:.15rem;
}

.profile-card h2{
  font-size:clamp(1.55rem, 2.2vw, 2rem);
}

.profile-card .inline-list{
  margin-top:auto;
  padding-top:.7rem;
}



/* --- Toque clínico profesional Psiconexum v4 --- */
:root{
  --clinic-teal:#0f8f8a;
  --clinic-teal-soft:rgba(15,143,138,.10);
}

.site-header{
  background:rgba(255,255,255,.88);
}

.nav{
  padding:.75rem 0;
}

.logo-title{
  letter-spacing:.13em;
}

.hero-panel{
  border-left:5px solid rgba(15,143,138,.72);
}

.eyebrow{
  background:linear-gradient(90deg, rgba(15,143,138,.12), rgba(209,176,99,.13));
}

.cta-nav,
.button.primary{
  background:linear-gradient(135deg, #0f5f72, #183a67);
}

.clinic-strip-section{
  padding-top:0;
}

.clinic-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:1rem;
  padding:1.1rem;
  background:rgba(255,255,255,.88);
  border:1px solid var(--border);
  border-radius:26px;
  box-shadow:var(--shadow);
}

.clinic-strip div{
  padding:1rem;
  border-radius:18px;
  background:linear-gradient(180deg, rgba(15,143,138,.07), rgba(255,255,255,.72));
  border:1px solid rgba(15,143,138,.10);
}

.clinic-strip strong{
  display:block;
  color:var(--heading);
  font-family:Georgia, "Times New Roman", serif;
  font-size:1.15rem;
  margin-bottom:.25rem;
}

.clinic-strip span{
  display:block;
  color:var(--text-soft);
  font-size:.95rem;
}

.price-card .price{
  font-size:2.45rem;
}

.price-card.featured{
  border-color:rgba(15,143,138,.28);
  background:
    radial-gradient(circle at 90% 10%, rgba(209,176,99,.17), transparent 9rem),
    linear-gradient(180deg, #fff, rgba(15,143,138,.08));
}

.price-card.featured .tag{
  background:rgba(15,143,138,.12);
}

.mini-pricing{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:.75rem;
  margin-top:1.2rem;
}

.mini-pricing div{
  padding:.9rem;
  border-radius:16px;
  background:#fff;
  border:1px solid var(--border);
  box-shadow:0 8px 18px rgba(24,58,103,.05);
}

.mini-pricing strong{
  display:block;
  color:var(--heading);
  font-size:1.45rem;
  font-family:Georgia, "Times New Roman", serif;
}

.mini-pricing span{
  display:block;
  color:var(--text-soft);
  font-size:.9rem;
}

.card .tag{
  background:linear-gradient(90deg, rgba(15,143,138,.10), rgba(209,176,99,.12));
}

@media (max-width: 980px){
  .clinic-strip{
    grid-template-columns:repeat(2,1fr);
  }
}

@media (max-width: 720px){
  .clinic-strip,
  .mini-pricing{
    grid-template-columns:1fr;
  }
}



/* --- Fondo más cálido y logo Psiconexum v5 --- */
body{
  background:
    radial-gradient(circle at 8% 10%, rgba(209,176,99,.20), transparent 20rem),
    radial-gradient(circle at 92% 12%, rgba(15,143,138,.15), transparent 24rem),
    radial-gradient(circle at 18% 78%, rgba(37,77,122,.12), transparent 24rem),
    radial-gradient(circle at 82% 84%, rgba(144,162,184,.18), transparent 26rem),
    linear-gradient(180deg, #fbfaf7 0%, #f3f0e8 44%, #f7f3ea 100%);
}

body::before{
  opacity:.24;
  background-image:
    linear-gradient(rgba(24,58,103,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(24,58,103,.035) 1px, transparent 1px);
  background-size:76px 76px;
}

body::after{
  content:"";
  position:fixed;
  right:1.4rem;
  bottom:1.2rem;
  width:min(260px, 34vw);
  height:min(260px, 34vw);
  background-image:url("logo-psiconexum.jpg");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  opacity:.075;
  pointer-events:none;
  z-index:-1;
  filter:saturate(.95);
}

.hero::before{
  border-color:rgba(209,176,99,.48);
}

.hero::after{
  border-color:rgba(15,143,138,.26);
}

.hero-panel{
  background:
    radial-gradient(circle at 100% 0%, rgba(209,176,99,.16), transparent 12rem),
    radial-gradient(circle at 0% 100%, rgba(15,143,138,.09), transparent 14rem),
    rgba(255,255,255,.88);
}

.hero-card{
  background:
    radial-gradient(circle at 100% 0%, rgba(15,143,138,.10), transparent 12rem),
    rgba(255,255,255,.90);
}

.section:nth-of-type(even)::before{
  background:linear-gradient(135deg, rgba(15,143,138,.11), rgba(209,176,99,.10));
}

.card,
.panel,
.callout,
.quote-card,
.page-hero-card{
  background:
    radial-gradient(circle at 100% 0%, rgba(209,176,99,.055), transparent 10rem),
    rgba(255,255,255,.90);
}

.clinic-strip{
  background:
    linear-gradient(135deg, rgba(255,255,255,.90), rgba(250,247,239,.88));
}

.cta-band{
  background:
    radial-gradient(circle at 100% 0%, rgba(209,176,99,.28), transparent 14rem),
    linear-gradient(135deg, rgba(15,95,114,.97), rgba(24,58,103,.96));
}

@media (max-width: 720px){
  body::after{
    width:170px;
    height:170px;
    right:.6rem;
    bottom:.5rem;
    opacity:.055;
  }
}



/* --- Fondo con más profundidad y logo visible Psiconexum v6 --- */
body{
  background:
    radial-gradient(circle at 6% 6%, rgba(209,176,99,.26), transparent 21rem),
    radial-gradient(circle at 92% 10%, rgba(15,143,138,.22), transparent 25rem),
    radial-gradient(circle at 18% 52%, rgba(37,77,122,.15), transparent 23rem),
    radial-gradient(circle at 84% 74%, rgba(144,162,184,.24), transparent 28rem),
    radial-gradient(circle at 50% 112%, rgba(209,176,99,.15), transparent 30rem),
    linear-gradient(135deg, #fbfaf7 0%, #f2efe6 44%, #eef3f1 72%, #fbfaf7 100%);
}

/* Patrón más suave y más premium */
body::before{
  opacity:.18;
  background-image:
    linear-gradient(rgba(24,58,103,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(24,58,103,.035) 1px, transparent 1px),
    radial-gradient(circle, rgba(209,176,99,.15) 1px, transparent 1px);
  background-size:82px 82px, 82px 82px, 36px 36px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.55), transparent 80%);
}

/* Logo Psiconexum más visible abajo a la derecha */
body::after{
  content:"";
  position:fixed;
  right:1.8rem;
  bottom:1.4rem;
  width:min(380px, 38vw);
  height:min(380px, 38vw);
  background-image:url("logo-psiconexum.jpg");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
  opacity:.16;
  pointer-events:none;
  z-index:-1;
  filter:saturate(1.05) contrast(1.02);
}

/* Capas orgánicas para que el fondo no quede plano */
main{
  position:relative;
  isolation:isolate;
}

main::before,
main::after{
  content:"";
  position:fixed;
  pointer-events:none;
  z-index:-2;
  filter:blur(2px);
  opacity:.9;
}

main::before{
  width:34rem;
  height:34rem;
  left:-13rem;
  top:15rem;
  border-radius:42% 58% 55% 45% / 50% 42% 58% 50%;
  background:
    radial-gradient(circle at 35% 35%, rgba(15,143,138,.13), transparent 52%),
    radial-gradient(circle at 68% 62%, rgba(209,176,99,.13), transparent 55%);
  transform:rotate(-12deg);
}

main::after{
  width:38rem;
  height:38rem;
  right:-15rem;
  top:26rem;
  border-radius:55% 45% 40% 60% / 42% 58% 52% 48%;
  background:
    radial-gradient(circle at 35% 35%, rgba(37,77,122,.12), transparent 52%),
    radial-gradient(circle at 70% 70%, rgba(144,162,184,.16), transparent 58%);
  transform:rotate(18deg);
}

.hero{
  background:
    linear-gradient(180deg, rgba(255,255,255,.16), transparent 80%);
}

.hero-panel{
  background:
    radial-gradient(circle at 100% 0%, rgba(209,176,99,.20), transparent 14rem),
    radial-gradient(circle at 0% 100%, rgba(15,143,138,.13), transparent 16rem),
    linear-gradient(135deg, rgba(255,255,255,.94), rgba(250,247,239,.86));
  box-shadow:
    0 22px 55px rgba(24,58,103,.11),
    inset 0 1px 0 rgba(255,255,255,.75);
}

.hero-card{
  background:
    radial-gradient(circle at 100% 0%, rgba(15,143,138,.14), transparent 12rem),
    radial-gradient(circle at 0% 100%, rgba(209,176,99,.10), transparent 13rem),
    rgba(255,255,255,.92);
  box-shadow:
    0 22px 55px rgba(24,58,103,.10),
    inset 0 1px 0 rgba(255,255,255,.75);
}

.card,
.panel,
.callout,
.quote-card,
.page-hero-card{
  background:
    radial-gradient(circle at 100% 0%, rgba(209,176,99,.075), transparent 10rem),
    radial-gradient(circle at 0% 100%, rgba(15,143,138,.045), transparent 12rem),
    rgba(255,255,255,.91);
  box-shadow:
    0 18px 42px rgba(24,58,103,.085),
    inset 0 1px 0 rgba(255,255,255,.78);
}

.clinic-strip{
  background:
    radial-gradient(circle at 6% 50%, rgba(15,143,138,.10), transparent 15rem),
    radial-gradient(circle at 94% 50%, rgba(209,176,99,.13), transparent 15rem),
    rgba(255,255,255,.90);
}

.clinic-strip div{
  background:
    linear-gradient(180deg, rgba(255,255,255,.82), rgba(250,247,239,.72)),
    radial-gradient(circle at 100% 0%, rgba(15,143,138,.10), transparent 8rem);
}

.section:nth-of-type(even)::before{
  width:260px;
  height:260px;
  opacity:.9;
  background:
    radial-gradient(circle at 40% 40%, rgba(15,143,138,.13), transparent 52%),
    radial-gradient(circle at 70% 70%, rgba(209,176,99,.12), transparent 56%);
}

.cta-band{
  position:relative;
  overflow:hidden;
}

.cta-band::after{
  content:"";
  position:absolute;
  right:-4rem;
  bottom:-6rem;
  width:18rem;
  height:18rem;
  background:url("logo-psiconexum.jpg") center/contain no-repeat;
  opacity:.12;
  pointer-events:none;
}

@media (max-width: 720px){
  body::after{
    width:210px;
    height:210px;
    right:.7rem;
    bottom:.5rem;
    opacity:.12;
  }

  main::before{
    width:24rem;
    height:24rem;
    left:-12rem;
    top:9rem;
  }

  main::after{
    width:26rem;
    height:26rem;
    right:-13rem;
    top:34rem;
  }
}



/* --- Ajustes logo transparente y frecuencia v7 --- */
body::after{
  background-image:url("assets/img/logo-psiconexum-watermark.png") !important;
  width:min(420px, 40vw) !important;
  height:min(420px, 40vw) !important;
  opacity:.18 !important;
  right:1.6rem !important;
  bottom:1.2rem !important;
  filter:saturate(1.08) contrast(1.04) !important;
}

.cta-band::after{
  background-image:url("assets/img/logo-psiconexum-watermark.png") !important;
  background-size:contain !important;
  background-repeat:no-repeat !important;
  background-position:center !important;
  opacity:.18 !important;
  right:-3.5rem !important;
  bottom:-4.5rem !important;
  width:19rem !important;
  height:19rem !important;
}

@media (max-width: 720px){
  body::after{
    width:220px !important;
    height:220px !important;
    opacity:.13 !important;
    right:.5rem !important;
    bottom:.3rem !important;
  }
}



/* --- Psiconexum v8: fondo vivo y cabecera orgánica --- */

/* Fondo con más vida: color suave, profundidad y movimiento visual sin perder limpieza */
body{
  background:
    radial-gradient(circle at 4% 9%, rgba(209,176,99,.30), transparent 22rem),
    radial-gradient(circle at 94% 7%, rgba(15,143,138,.26), transparent 27rem),
    radial-gradient(circle at 15% 44%, rgba(37,77,122,.18), transparent 24rem),
    radial-gradient(circle at 86% 58%, rgba(144,162,184,.24), transparent 28rem),
    radial-gradient(circle at 52% 102%, rgba(209,176,99,.20), transparent 31rem),
    linear-gradient(135deg, #fcfaf6 0%, #f3eee2 36%, #eaf2f0 68%, #fbf7ef 100%);
}

/* Textura menos plana y más elegante */
body::before{
  opacity:.22;
  background-image:
    linear-gradient(rgba(24,58,103,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(24,58,103,.035) 1px, transparent 1px),
    radial-gradient(circle, rgba(209,176,99,.18) 1px, transparent 1.2px);
  background-size:86px 86px, 86px 86px, 34px 34px;
  mask-image:linear-gradient(to bottom, rgba(0,0,0,.48), transparent 82%);
}

/* Cabecera más orgánica: sin corte recto, con curva y difuminado inferior */
.site-header{
  position:sticky;
  top:0;
  border-bottom:0;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(255,255,255,.82));
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  box-shadow:0 14px 34px rgba(24,58,103,.055);
  overflow:visible;
}

.site-header::before{
  content:"";
  position:absolute;
  inset:0 0 -20px 0;
  pointer-events:none;
  background:
    radial-gradient(90% 120% at 18% 0%, rgba(209,176,99,.18), transparent 58%),
    radial-gradient(90% 120% at 82% 0%, rgba(15,143,138,.14), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.66), rgba(255,255,255,0));
  clip-path:ellipse(78% 100% at 50% 0%);
  z-index:-1;
}

.site-header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-34px;
  height:42px;
  pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.38), rgba(255,255,255,0));
  filter:blur(8px);
  z-index:-2;
}

/* La navegación queda como una pastilla limpia dentro de la cabecera curva */
.nav{
  position:relative;
  width:min(calc(100% - 2rem), var(--max));
  margin:.55rem auto .65rem;
  padding:.65rem .8rem;
  border-radius:999px;
  background:rgba(255,255,255,.66);
  border:1px solid rgba(219,224,232,.82);
  box-shadow:
    0 12px 28px rgba(24,58,103,.055),
    inset 0 1px 0 rgba(255,255,255,.85);
}

.nav-link.active,
.nav-link:hover{
  background:rgba(255,255,255,.92);
}

/* Quitamos el logo decorativo del bloque inferior de reserva */
.cta-band::after{
  display:none !important;
  content:none !important;
}

/* En su lugar, damos vida al bloque con una forma de color integrada */
.cta-band{
  background:
    radial-gradient(circle at 8% 18%, rgba(209,176,99,.30), transparent 13rem),
    radial-gradient(circle at 92% 60%, rgba(15,143,138,.28), transparent 14rem),
    linear-gradient(135deg, rgba(15,95,114,.98), rgba(24,58,103,.96));
}

.cta-band::before{
  content:"";
  position:absolute;
  right:-5rem;
  bottom:-7rem;
  width:20rem;
  height:20rem;
  border-radius:48% 52% 45% 55% / 52% 44% 56% 48%;
  background:
    radial-gradient(circle at 42% 38%, rgba(255,255,255,.16), transparent 58%),
    radial-gradient(circle at 70% 70%, rgba(209,176,99,.18), transparent 60%);
  pointer-events:none;
}

/* Más contraste suave en los bloques para evitar sensación plana */
.hero-panel,
.hero-card,
.card,
.panel,
.callout,
.quote-card,
.page-hero-card,
.clinic-strip{
  border-color:rgba(219,224,232,.78);
  box-shadow:
    0 22px 48px rgba(24,58,103,.095),
    inset 0 1px 0 rgba(255,255,255,.76);
}

.hero-panel{
  border-left:5px solid rgba(15,143,138,.82);
}

@media (max-width: 980px){
  .nav{
    border-radius:28px;
  }

  .site-header::before{
    clip-path:ellipse(95% 100% at 50% 0%);
  }
}

@media (max-width: 720px){
  .nav{
    margin:.45rem auto .55rem;
    padding:.55rem;
  }

  .site-header::after{
    bottom:-24px;
    height:32px;
  }
}



/* --- Psiconexum v9: estrellas, hover y fondos más vivos --- */

/* Quitar los brillos amarillo-rotos de la esquina superior derecha */
.card::after,
.hero-panel::before,
.hero-card::before{
  display:none !important;
  content:none !important;
}

/* Fondos más ricos y menos planos */
body{
  background:
    radial-gradient(circle at 7% 10%, rgba(15,143,138,.20), transparent 22rem),
    radial-gradient(circle at 92% 8%, rgba(74,113,164,.15), transparent 24rem),
    radial-gradient(circle at 15% 78%, rgba(209,176,99,.16), transparent 24rem),
    radial-gradient(circle at 87% 82%, rgba(144,162,184,.18), transparent 28rem),
    linear-gradient(135deg, #fbfaf7 0%, #eef4f3 36%, #f4eee1 70%, #f8f5ee 100%);
}

/* Capas tipo bruma/mesh */
main::before{
  width:36rem !important;
  height:36rem !important;
  left:-12rem !important;
  top:13rem !important;
  background:
    radial-gradient(circle at 32% 30%, rgba(15,143,138,.15), transparent 55%),
    radial-gradient(circle at 70% 70%, rgba(74,113,164,.12), transparent 58%) !important;
  opacity:.9;
}

main::after{
  width:40rem !important;
  height:40rem !important;
  right:-15rem !important;
  top:26rem !important;
  background:
    radial-gradient(circle at 36% 36%, rgba(209,176,99,.15), transparent 54%),
    radial-gradient(circle at 70% 66%, rgba(144,162,184,.15), transparent 58%) !important;
  opacity:.95;
}

/* Recuadros: ya no blancos puros, ahora con tinte elegante */
.hero-panel,
.hero-card,
.card,
.panel,
.callout,
.quote-card,
.page-hero-card,
.clinic-strip,
.price-card,
.contact-card,
.form-card,
.profile-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.83), rgba(247,249,250,.78)) !important;
  border:1px solid rgba(213,223,233,.92) !important;
  box-shadow:
    0 18px 40px rgba(24,58,103,.08),
    inset 0 1px 0 rgba(255,255,255,.72) !important;
}

/* Fondos con imagen muy difuminada para determinadas cajas */
.hero-panel,
.page-hero-card,
.clinic-strip{
  background-image:linear-gradient(180deg, rgba(255,255,255,.83), rgba(247,249,250,.78)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

.quote-card,
.callout,
.panel{
  background-image:linear-gradient(180deg, rgba(255,255,255,.84), rgba(247,249,250,.80)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

/* Estados hover más evidentes y agradables */
.card,
.price-card,
.profile-card,
.contact-card,
.form-card,
.quote-card,
.callout,
.panel{
  transition:
    transform .26s ease,
    box-shadow .26s ease,
    border-color .26s ease,
    background .26s ease;
}

.card:hover,
.price-card:hover,
.profile-card:hover,
.contact-card:hover,
.form-card:hover,
.quote-card:hover,
.callout:hover,
.panel:hover{
  transform:translateY(-5px);
  border-color:rgba(15,143,138,.34) !important;
  box-shadow:
    0 26px 52px rgba(24,58,103,.13),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.90), rgba(242,248,247,.86)) !important;
}

/* También un pequeño realce en los enlaces del menú */
.nav-link{
  transition:background .24s ease, transform .18s ease, color .24s ease;
}
.nav-link:hover{
  transform:translateY(-1px);
}

/* Estrellas brillando en zonas vacías */
.ambient-stars{
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  overflow:hidden;
}

.star{
  position:absolute;
  width:6px;
  height:6px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,.15) 72%, transparent 74%);
  box-shadow:
    0 0 10px rgba(255,255,255,.8),
    0 0 18px rgba(209,176,99,.35);
  opacity:.55;
  animation:twinkle 4.2s ease-in-out infinite;
}

.star::before,
.star::after{
  content:"";
  position:absolute;
  inset:50% auto auto 50%;
  transform:translate(-50%, -50%);
  background:rgba(255,255,255,.65);
  border-radius:999px;
}

.star::before{
  width:1px;
  height:16px;
}

.star::after{
  width:16px;
  height:1px;
}

.star.s1{ left:6%; top:9%; animation-delay:.2s; transform:scale(1.15);}
.star.s2{ left:14%; top:15%; animation-delay:1.2s; transform:scale(.85);}
.star.s3{ left:22%; top:7%; animation-delay:2.4s; transform:scale(1.05);}
.star.s4{ right:9%; top:22%; animation-delay:.9s; transform:scale(.9);}
.star.s5{ right:15%; top:58%; animation-delay:2.8s; transform:scale(1.1);}
.star.s6{ left:10%; top:62%; animation-delay:1.8s; transform:scale(.8);}
.star.s7{ right:24%; bottom:19%; animation-delay:3.2s; transform:scale(1.2);}
.star.s8{ left:33%; bottom:12%; animation-delay:.5s; transform:scale(.72);}

@keyframes twinkle{
  0%, 100%{ opacity:.28; transform:scale(.85); filter:brightness(1); }
  25%{ opacity:.72; transform:scale(1.02); filter:brightness(1.1);}
  50%{ opacity:1; transform:scale(1.15); filter:brightness(1.25);}
  75%{ opacity:.55; transform:scale(.96); filter:brightness(1.05);}
}

/* Reducimos un poco la presencia del logo para que las estrellas también respiren */
body::after{
  opacity:.12 !important;
}

/* En móviles, menos elementos para no recargar */
@media (max-width: 720px){
  .star.s5, .star.s6, .star.s7, .star.s8{
    display:none;
  }

  .hero-panel,
  .page-hero-card,
  .clinic-strip,
  .quote-card,
  .callout,
  .panel{
    background-size:cover, 320px auto !important;
    background-position:center, right -80px bottom -20px !important;
  }
}



/* --- Psiconexum v10: más estrellas y más visibles --- */
.ambient-stars{
  opacity:1 !important;
}

.star{
  width:8px !important;
  height:8px !important;
  opacity:.82 !important;
  box-shadow:
    0 0 12px rgba(255,255,255,.95),
    0 0 24px rgba(255,255,255,.62),
    0 0 30px rgba(209,176,99,.44) !important;
  animation:twinkle 3.6s ease-in-out infinite !important;
}

.star::before{
  width:1.5px !important;
  height:22px !important;
  background:rgba(255,255,255,.78) !important;
}

.star::after{
  width:22px !important;
  height:1.5px !important;
  background:rgba(255,255,255,.78) !important;
}

/* Estrellas existentes más visibles */
.star.s1{ left:4%; top:7%; transform:scale(1.25) !important; animation-delay:.2s !important;}
.star.s2{ left:11%; top:14%; transform:scale(.95) !important; animation-delay:1.0s !important;}
.star.s3{ left:20%; top:6%; transform:scale(1.10) !important; animation-delay:2.2s !important;}
.star.s4{ right:8%; top:18%; transform:scale(1.00) !important; animation-delay:.8s !important;}
.star.s5{ right:13%; top:52%; transform:scale(1.15) !important; animation-delay:2.8s !important;}
.star.s6{ left:8%; top:57%; transform:scale(.92) !important; animation-delay:1.7s !important;}
.star.s7{ right:22%; bottom:16%; transform:scale(1.22) !important; animation-delay:3.1s !important;}
.star.s8{ left:30%; bottom:10%; transform:scale(.82) !important; animation-delay:.5s !important;}

/* Nuevas estrellas */
.star.s9{ left:28%; top:17%; transform:scale(.88) !important; animation-delay:1.4s !important;}
.star.s10{ left:38%; top:10%; transform:scale(1.04) !important; animation-delay:2.1s !important;}
.star.s11{ right:28%; top:10%; transform:scale(.90) !important; animation-delay:.6s !important;}
.star.s12{ right:18%; top:34%; transform:scale(1.30) !important; animation-delay:2.5s !important;}
.star.s13{ left:17%; top:38%; transform:scale(.86) !important; animation-delay:3.0s !important;}
.star.s14{ left:42%; top:56%; transform:scale(1.05) !important; animation-delay:1.2s !important;}
.star.s15{ right:34%; top:62%; transform:scale(.95) !important; animation-delay:2.7s !important;}
.star.s16{ left:26%; bottom:28%; transform:scale(1.18) !important; animation-delay:1.9s !important;}
.star.s17{ right:11%; bottom:28%; transform:scale(.86) !important; animation-delay:3.4s !important;}
.star.s18{ left:44%; bottom:7%; transform:scale(1.06) !important; animation-delay:.9s !important;}
.star.s19{ right:42%; bottom:20%; transform:scale(.92) !important; animation-delay:2.3s !important;}
.star.s20{ left:6%; bottom:22%; transform:scale(.84) !important; animation-delay:1.5s !important;}

@keyframes twinkle{
  0%,100%{ opacity:.42; transform:scale(.92); filter:brightness(1); }
  20%{ opacity:.8; transform:scale(1.03); filter:brightness(1.12); }
  50%{ opacity:1; transform:scale(1.22); filter:brightness(1.35); }
  75%{ opacity:.7; transform:scale(1.05); filter:brightness(1.08); }
}

@media (max-width: 720px){
  .star{
    width:7px !important;
    height:7px !important;
  }
  .star::before{
    height:18px !important;
  }
  .star::after{
    width:18px !important;
  }
}



/* --- Psiconexum v11: estrellas puntuales brillantes --- */
.ambient-stars{
  opacity:1 !important;
  mix-blend-mode:screen;
}

.star{
  width:4px !important;
  height:4px !important;
  border-radius:50% !important;
  background:radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,.92) 35%, rgba(255,255,255,.38) 65%, transparent 100%) !important;
  opacity:.92 !important;
  box-shadow:
    0 0 6px rgba(255,255,255,.95),
    0 0 12px rgba(255,255,255,.80),
    0 0 18px rgba(255,255,255,.45),
    0 0 24px rgba(209,176,99,.30) !important;
  animation:softBlink 2.4s ease-in-out infinite !important;
}

/* Quitamos completamente las cruces */
.star::before,
.star::after{
  display:none !important;
  content:none !important;
}

/* Variaciones de tamaño */
.star.tiny{ width:3px !important; height:3px !important; }
.star.small{ width:4px !important; height:4px !important; }
.star.medium{ width:5px !important; height:5px !important; }
.star.big{ width:6px !important; height:6px !important; }

/* Posiciones agrupadas para que se noten más */
.star.s1{ left:5%; top:8%; animation-delay:.2s !important; }
.star.s2{ left:8%; top:11%; animation-delay:.9s !important; }
.star.s3{ left:11%; top:7%; animation-delay:1.6s !important; }
.star.s4{ left:14%; top:12%; animation-delay:2.1s !important; }
.star.s5{ left:18%; top:9%; animation-delay:1.2s !important; }

.star.s6{ right:8%; top:10%; animation-delay:.6s !important; }
.star.s7{ right:12%; top:14%; animation-delay:1.8s !important; }
.star.s8{ right:15%; top:8%; animation-delay:2.5s !important; }
.star.s9{ right:20%; top:12%; animation-delay:1.4s !important; }
.star.s10{ right:24%; top:9%; animation-delay:.4s !important; }

.star.s11{ left:8%; top:46%; animation-delay:2.2s !important; }
.star.s12{ left:12%; top:52%; animation-delay:1.1s !important; }
.star.s13{ left:16%; top:57%; animation-delay:2.8s !important; }
.star.s14{ left:20%; top:49%; animation-delay:.7s !important; }
.star.s15{ left:24%; top:55%; animation-delay:1.9s !important; }

.star.s16{ right:9%; top:50%; animation-delay:1.3s !important; }
.star.s17{ right:13%; top:57%; animation-delay:2.0s !important; }
.star.s18{ right:18%; top:62%; animation-delay:.5s !important; }
.star.s19{ right:22%; top:54%; animation-delay:2.6s !important; }
.star.s20{ right:27%; top:60%; animation-delay:1.7s !important; }

.star.s21{ left:26%; bottom:18%; animation-delay:2.9s !important; }
.star.s22{ left:31%; bottom:14%; animation-delay:1.5s !important; }
.star.s23{ left:36%; bottom:9%; animation-delay:.8s !important; }
.star.s24{ left:40%; bottom:15%; animation-delay:2.4s !important; }
.star.s25{ left:45%; bottom:11%; animation-delay:1.0s !important; }

.star.s26{ right:26%; bottom:16%; animation-delay:1.6s !important; }
.star.s27{ right:21%; bottom:11%; animation-delay:2.7s !important; }
.star.s28{ right:17%; bottom:18%; animation-delay:.3s !important; }
.star.s29{ right:12%; bottom:13%; animation-delay:1.8s !important; }
.star.s30{ right:8%; bottom:9%; animation-delay:2.2s !important; }

@keyframes softBlink{
  0%,100%{
    opacity:.35;
    filter:brightness(1);
    transform:scale(.92);
  }
  25%{
    opacity:.68;
    filter:brightness(1.1);
    transform:scale(1);
  }
  50%{
    opacity:1;
    filter:brightness(1.45);
    transform:scale(1.18);
  }
  75%{
    opacity:.72;
    filter:brightness(1.15);
    transform:scale(1.03);
  }
}

@media (max-width: 720px){
  .star{
    box-shadow:
      0 0 5px rgba(255,255,255,.92),
      0 0 10px rgba(255,255,255,.75),
      0 0 14px rgba(255,255,255,.42) !important;
  }
  .star.s21, .star.s22, .star.s23, .star.s24, .star.s25,
  .star.s26, .star.s27, .star.s28, .star.s29, .star.s30{
    display:none;
  }
}



/* --- Psiconexum v14: estrellas, menú y desplegable --- */

/* Más estrellas y parpadeo un poco más frecuente */
.ambient-stars{
  opacity:1 !important;
}

.star{
  animation:softBlinkV14 1.85s ease-in-out infinite !important;
}

/* Un poco más de brillo general */
.star,
.star.tiny,
.star.small,
.star.medium,
.star.big{
  box-shadow:
    0 0 7px rgba(255,255,255,.98),
    0 0 14px rgba(255,255,255,.84),
    0 0 22px rgba(255,255,255,.52),
    0 0 30px rgba(209,176,99,.35) !important;
}

@keyframes softBlinkV14{
  0%,100%{
    opacity:.30;
    filter:brightness(1);
    transform:scale(.88);
  }
  20%{
    opacity:.68;
    filter:brightness(1.14);
    transform:scale(.98);
  }
  45%{
    opacity:1;
    filter:brightness(1.55);
    transform:scale(1.18);
  }
  70%{
    opacity:.78;
    filter:brightness(1.18);
    transform:scale(1.02);
  }
}

/* Nuevas estrellas adicionales */
.star.s31{ left:7%; top:23%; animation-delay:.7s !important; }
.star.s32{ left:12%; top:27%; animation-delay:1.3s !important; }
.star.s33{ left:17%; top:22%; animation-delay:2.0s !important; }
.star.s34{ left:24%; top:29%; animation-delay:.4s !important; }
.star.s35{ right:7%; top:25%; animation-delay:1.8s !important; }
.star.s36{ right:14%; top:28%; animation-delay:2.2s !important; }
.star.s37{ right:20%; top:23%; animation-delay:.9s !important; }
.star.s38{ right:27%; top:30%; animation-delay:1.5s !important; }
.star.s39{ left:33%; top:39%; animation-delay:2.4s !important; }
.star.s40{ right:34%; top:41%; animation-delay:1.1s !important; }
.star.s41{ left:39%; top:68%; animation-delay:2.8s !important; }
.star.s42{ right:39%; top:72%; animation-delay:.8s !important; }
.star.s43{ left:14%; bottom:28%; animation-delay:1.6s !important; }
.star.s44{ right:15%; bottom:32%; animation-delay:2.1s !important; }
.star.s45{ left:48%; bottom:22%; animation-delay:.6s !important; }

/* Botón/ítem del menú contacto y reserva: que no se ponga blanco */
.nav-link.cta-nav,
.nav-link.cta-nav:hover,
.nav-link.cta-nav:focus,
.nav-link.cta-nav.active{
  background:linear-gradient(135deg, #183a67, #254d7a) !important;
  color:#ffffff !important;
  border:1px solid rgba(24,58,103,.12);
  box-shadow:0 10px 24px rgba(24,58,103,.16);
}

.nav-link.cta-nav:hover{
  transform:translateY(-1px);
}

/* Desplegable de especialidades: corregimos el cierre al bajar el ratón */
.dropdown{
  position:relative;
  padding-bottom:.35rem;
  margin-bottom:-.35rem;
}

.dropdown::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:100%;
  height:16px;
}

.dropdown-menu{
  top:calc(100% - 2px) !important;
  margin-top:0 !important;
  padding-top:.95rem !important;
  min-width:300px;
}

.dropdown:hover .dropdown-menu,
.dropdown:focus-within .dropdown-menu{
  display:grid;
}

/* Pequeña mejora visual del menú desplegable */
.dropdown-menu{
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}

@media (max-width: 720px){
  .star.s31, .star.s32, .star.s33, .star.s34, .star.s35,
  .star.s36, .star.s37, .star.s38, .star.s39, .star.s40,
  .star.s41, .star.s42, .star.s43, .star.s44, .star.s45{
    display:none;
  }
}



/* --- Psiconexum v15: imagen de fondo hero home --- */
.hero-panel{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}

.hero-panel > *{
  position:relative;
  z-index:2;
}

.hero-panel::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:
    linear-gradient(90deg, rgba(251,250,246,.94) 0%, rgba(251,250,246,.90) 34%, rgba(251,250,246,.78) 52%, rgba(251,250,246,.68) 100%),
    url("assets/img/hero-psiconexum-fondo.png");
  background-size:cover, cover;
  background-position:center, center right;
  background-repeat:no-repeat;
  opacity:1;
}

.hero-panel::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  background:
    radial-gradient(circle at 82% 72%, rgba(37,77,122,.10), transparent 20rem),
    radial-gradient(circle at 88% 18%, rgba(209,176,99,.12), transparent 13rem);
  pointer-events:none;
}

@media (max-width: 980px){
  .hero-panel::after{
    background:
      linear-gradient(180deg, rgba(251,250,246,.93) 0%, rgba(251,250,246,.86) 42%, rgba(251,250,246,.76) 100%),
      url("assets/img/hero-psiconexum-fondo.png");
    background-size:cover, cover;
    background-position:center, 68% center;
  }
}



/* --- Psiconexum v16: estrellas potentes y estrella fugaz hover --- */

/* Más cantidad y más brillo */
.ambient-stars{
  opacity:1 !important;
  mix-blend-mode:screen;
}

.star{
  width:4px !important;
  height:4px !important;
  opacity:.98 !important;
  background:radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,.95) 38%, rgba(255,255,255,.48) 68%, transparent 100%) !important;
  box-shadow:
    0 0 9px rgba(255,255,255,1),
    0 0 18px rgba(255,255,255,.94),
    0 0 28px rgba(255,255,255,.62),
    0 0 38px rgba(209,176,99,.46),
    0 0 54px rgba(209,176,99,.24) !important;
  animation:softBlinkV16 1.55s ease-in-out infinite !important;
}

.star.tiny{ width:3px !important; height:3px !important; }
.star.small{ width:4px !important; height:4px !important; }
.star.medium{ width:5px !important; height:5px !important; }
.star.big{ width:6px !important; height:6px !important; }

@keyframes softBlinkV16{
  0%,100%{
    opacity:.36;
    filter:brightness(1);
    transform:scale(.86);
  }
  25%{
    opacity:.78;
    filter:brightness(1.22);
    transform:scale(1.02);
  }
  50%{
    opacity:1;
    filter:brightness(1.72);
    transform:scale(1.24);
  }
  75%{
    opacity:.82;
    filter:brightness(1.26);
    transform:scale(1.05);
  }
}

/* Estrellas adicionales repartidas */
.star.s46{ left:4%; top:18%; animation-delay:.4s !important; }
.star.s47{ left:9%; top:21%; animation-delay:1.1s !important; }
.star.s48{ left:28%; top:24%; animation-delay:1.8s !important; }
.star.s49{ left:41%; top:8%; animation-delay:.7s !important; }
.star.s50{ left:48%; top:14%; animation-delay:2.2s !important; }
.star.s51{ left:56%; top:11%; animation-delay:1.5s !important; }
.star.s52{ right:31%; top:16%; animation-delay:.6s !important; }
.star.s53{ right:24%; top:20%; animation-delay:2.1s !important; }
.star.s54{ right:17%; top:24%; animation-delay:1.2s !important; }
.star.s55{ right:4%; top:34%; animation-delay:2.7s !important; }

.star.s56{ left:29%; top:48%; animation-delay:.9s !important; }
.star.s57{ left:37%; top:58%; animation-delay:2.4s !important; }
.star.s58{ left:46%; top:64%; animation-delay:1.7s !important; }
.star.s59{ right:45%; top:49%; animation-delay:.5s !important; }
.star.s60{ right:30%; top:46%; animation-delay:1.9s !important; }
.star.s61{ right:4%; top:71%; animation-delay:1.3s !important; }
.star.s62{ left:4%; bottom:12%; animation-delay:2.5s !important; }
.star.s63{ left:18%; bottom:8%; animation-delay:1.4s !important; }
.star.s64{ right:18%; bottom:7%; animation-delay:.8s !important; }
.star.s65{ right:32%; bottom:9%; animation-delay:2.0s !important; }

/* Elementos clicables un poco más "reactivos" */
a, button, summary, .button, .nav-link, .card-link{
  position:relative;
}

/* Estrella fugaz al pasar el ratón */
.shooting-star{
  position:fixed;
  width:92px;
  height:2px;
  border-radius:999px;
  pointer-events:none;
  z-index:9999;
  background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.95) 32%, rgba(255,247,203,1) 55%, rgba(255,219,120,.85) 72%, rgba(255,219,120,0) 100%);
  box-shadow:
    0 0 8px rgba(255,255,255,.90),
    0 0 16px rgba(255,239,173,.78),
    0 0 24px rgba(255,219,120,.42);
  transform:rotate(-18deg);
  opacity:0;
  animation:shootingStarPass .9s ease-out forwards;
}

.shooting-star::before{
  content:"";
  position:absolute;
  right:-1px;
  top:50%;
  width:7px;
  height:7px;
  transform:translateY(-50%);
  border-radius:50%;
  background:radial-gradient(circle, #fff 0%, rgba(255,245,190,.95) 48%, rgba(255,219,120,.52) 72%, rgba(255,219,120,0) 100%);
  box-shadow:
    0 0 10px rgba(255,255,255,1),
    0 0 18px rgba(255,239,173,.86),
    0 0 26px rgba(255,219,120,.50);
}

@keyframes shootingStarPass{
  0%{
    opacity:0;
    transform:translate3d(-8px, 10px, 0) rotate(-18deg) scale(.86);
  }
  18%{
    opacity:1;
  }
  100%{
    opacity:0;
    transform:translate3d(92px, -28px, 0) rotate(-18deg) scale(1.04);
  }
}

@media (max-width: 720px){
  .star.s46, .star.s47, .star.s48, .star.s49, .star.s50,
  .star.s51, .star.s52, .star.s53, .star.s54, .star.s55,
  .star.s56, .star.s57, .star.s58, .star.s59, .star.s60,
  .star.s61, .star.s62, .star.s63, .star.s64, .star.s65{
    display:none;
  }
}



/* --- Psiconexum v18: fondo estrellado en cómo trabajamos --- */
.hero-process-card{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(250,247,239,.90)) !important;
}

.hero-process-card > *{
  position:relative;
  z-index:2;
}

.hero-process-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:
    linear-gradient(180deg, rgba(18,38,65,.10) 0%, rgba(18,38,65,.28) 48%, rgba(18,38,65,.62) 100%),
    url("assets/img/como-trabajamos-cielo-estrellado.png");
  background-size:cover;
  background-position:center;
  opacity:.72;
  filter:saturate(.95) contrast(.96);
}

.hero-process-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  background:
    linear-gradient(180deg, rgba(255,255,255,.40) 0%, rgba(255,255,255,.22) 35%, rgba(12,29,51,.58) 100%),
    radial-gradient(circle at 80% 12%, rgba(209,176,99,.22), transparent 10rem);
  pointer-events:none;
}

.hero-process-card .tag{
  background:rgba(255,255,255,.82) !important;
  color:#183a67 !important;
  border:1px solid rgba(255,255,255,.45);
  backdrop-filter:blur(6px);
}

.hero-process-card h3,
.hero-process-card .soft-list div{
  color:#ffffff !important;
  text-shadow:0 2px 12px rgba(0,0,0,.34);
}

.hero-process-card .icon-dot{
  background:rgba(255,255,255,.86) !important;
  color:#183a67 !important;
  box-shadow:0 0 18px rgba(255,255,255,.35);
}

@media (max-width: 980px){
  .hero-process-card{
    min-height:360px;
  }
}

@media (max-width: 720px){
  .hero-process-card{
    min-height:330px;
  }
}



/* --- Psiconexum v19: estrella fugaz solo azul oscuro --- */
.button.primary,
.nav-link.cta-nav{
  position:relative;
}



/* --- Psiconexum v20: fondo en espacio seguro --- */
.working-space-panel{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:360px;
}

.working-space-panel > *{
  position:relative;
  z-index:2;
}

.working-space-panel::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:
    linear-gradient(90deg, rgba(251,250,246,.96) 0%, rgba(251,250,246,.92) 26%, rgba(251,250,246,.78) 48%, rgba(251,250,246,.68) 64%, rgba(251,250,246,.58) 100%),
    url("assets/img/espacio-seguro-fondo.png");
  background-size:cover, cover;
  background-position:center, center right;
  background-repeat:no-repeat;
  opacity:1;
}

.working-space-panel::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  background:
    radial-gradient(circle at 87% 26%, rgba(209,176,99,.20), transparent 11rem),
    radial-gradient(circle at 80% 76%, rgba(116,153,188,.16), transparent 14rem);
  pointer-events:none;
}

.working-space-panel .tag{
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(6px);
}

.working-space-panel .lead,
.working-space-panel h2,
.working-space-panel p{
  max-width:60ch;
}

/* Los pilares conservan su aspecto limpio, sin usar la imagen de fondo */
.working-space-panel .pillars{
  position:relative;
  z-index:3;
}

.working-space-panel .pillar{
  background:rgba(255,255,255,.92) !important;
  backdrop-filter:blur(6px);
  border:1px solid rgba(219,224,232,.94);
  box-shadow:
    0 14px 26px rgba(24,58,103,.08),
    inset 0 1px 0 rgba(255,255,255,.85);
}

@media (max-width: 980px){
  .working-space-panel{
    min-height:330px;
  }
  .working-space-panel::before{
    background:
      linear-gradient(180deg, rgba(251,250,246,.95) 0%, rgba(251,250,246,.88) 42%, rgba(251,250,246,.74) 100%),
      url("assets/img/espacio-seguro-fondo.png");
    background-size:cover, cover;
    background-position:center, 68% center;
  }
}

@media (max-width: 720px){
  .working-space-panel{
    min-height:300px;
  }
}



/* --- Psiconexum v21: fondo en estés donde estés --- */
.online-anywhere-panel{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:320px;
}

.online-anywhere-panel > *{
  position:relative;
  z-index:2;
}

.online-anywhere-panel::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:
    linear-gradient(90deg, rgba(251,250,246,.97) 0%, rgba(251,250,246,.93) 24%, rgba(251,250,246,.84) 42%, rgba(251,250,246,.72) 58%, rgba(251,250,246,.60) 100%),
    url("assets/img/estes-donde-estes-fondo.png");
  background-size:cover, cover;
  background-position:center, center right;
  background-repeat:no-repeat;
  opacity:1;
}

.online-anywhere-panel::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  background:
    radial-gradient(circle at 78% 26%, rgba(209,176,99,.18), transparent 12rem),
    radial-gradient(circle at 72% 78%, rgba(113,154,193,.16), transparent 14rem);
  pointer-events:none;
}

.online-anywhere-panel .tag{
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(6px);
}

.online-anywhere-panel h2,
.online-anywhere-panel p,
.online-anywhere-panel .lead{
  max-width:54ch;
}

@media (max-width: 980px){
  .online-anywhere-panel{
    min-height:300px;
  }
  .online-anywhere-panel::before{
    background:
      linear-gradient(180deg, rgba(251,250,246,.95) 0%, rgba(251,250,246,.88) 40%, rgba(251,250,246,.74) 100%),
      url("assets/img/estes-donde-estes-fondo.png");
    background-size:cover, cover;
    background-position:center, 62% center;
  }
}

@media (max-width: 720px){
  .online-anywhere-panel{
    min-height:280px;
  }
}



/* --- Psiconexum v23: manos en quienes somos --- */
.team-hero-hands{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:340px;
}

.team-hero-hands > *{
  position:relative;
  z-index:2;
}

.team-hero-hands::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:
    linear-gradient(90deg, rgba(251,250,246,.97) 0%, rgba(251,250,246,.93) 30%, rgba(251,250,246,.82) 48%, rgba(251,250,246,.68) 64%, rgba(251,250,246,.56) 100%),
    url("assets/img/quienes-somos-manos-apoyo.png");
  background-size:cover, cover;
  background-position:center, center right;
  background-repeat:no-repeat;
  opacity:1;
}

.team-hero-hands::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  background:
    radial-gradient(circle at 82% 22%, rgba(209,176,99,.17), transparent 10rem),
    radial-gradient(circle at 74% 78%, rgba(113,154,193,.15), transparent 13rem);
  pointer-events:none;
}

.team-hero-hands .tag,
.team-hero-hands .breadcrumbs{
  background:rgba(255,255,255,.72);
  width:max-content;
  padding:.25rem .6rem;
  border-radius:999px;
  backdrop-filter:blur(6px);
}

.team-hero-hands h1,
.team-hero-hands .lead{
  max-width:62ch;
}

@media (max-width: 980px){
  .team-hero-hands{
    min-height:310px;
  }
  .team-hero-hands::before{
    background:
      linear-gradient(180deg, rgba(251,250,246,.95) 0%, rgba(251,250,246,.88) 40%, rgba(251,250,246,.72) 100%),
      url("assets/img/quienes-somos-manos-apoyo.png");
    background-size:cover, cover;
    background-position:center, 65% center;
  }
}

@media (max-width: 720px){
  .team-hero-hands{
    min-height:280px;
  }
}



/* --- Psiconexum v24: hero especialidades con logo --- */
.specialties-hero-logo{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:340px;
}

.specialties-hero-logo > *{
  position:relative;
  z-index:2;
}

.specialties-hero-logo::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:
    linear-gradient(90deg, rgba(251,250,246,.96) 0%, rgba(251,250,246,.91) 18%, rgba(251,250,246,.80) 36%, rgba(251,250,246,.64) 55%, rgba(251,250,246,.52) 100%),
    url("assets/img/especialidades-hero-psiconexum.png");
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat;
  opacity:1;
}

.specialties-hero-logo::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  background:
    radial-gradient(circle at 82% 22%, rgba(209,176,99,.18), transparent 12rem),
    radial-gradient(circle at 74% 78%, rgba(113,154,193,.14), transparent 14rem);
  pointer-events:none;
}

.specialties-hero-logo .breadcrumbs,
.specialties-hero-logo .tag{
  background:rgba(255,255,255,.74);
  width:max-content;
  padding:.25rem .6rem;
  border-radius:999px;
  backdrop-filter:blur(6px);
}

.specialties-hero-logo h1,
.specialties-hero-logo .lead{
  max-width:60ch;
}

@media (max-width: 980px){
  .specialties-hero-logo{
    min-height:310px;
  }
  .specialties-hero-logo::before{
    background:
      linear-gradient(180deg, rgba(251,250,246,.95) 0%, rgba(251,250,246,.88) 38%, rgba(251,250,246,.72) 100%),
      url("assets/img/especialidades-hero-psiconexum.png");
    background-size:cover, cover;
    background-position:center, center;
  }
}

@media (max-width: 720px){
  .specialties-hero-logo{
    min-height:280px;
  }
}



/* --- Psiconexum v25: hero genérico para especialidades --- */
.specialty-hero-generic{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:300px;
}

.specialty-hero-generic > *{
  position:relative;
  z-index:2;
}

.specialty-hero-generic::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:
    linear-gradient(90deg, rgba(251,250,246,.97) 0%, rgba(251,250,246,.92) 18%, rgba(251,250,246,.84) 36%, rgba(251,250,246,.66) 56%, rgba(251,250,246,.54) 100%),
    url("../assets/img/specialty-hero-generic.png");
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat;
  opacity:1;
}

.specialty-hero-generic::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  background:
    radial-gradient(circle at 86% 18%, rgba(209,176,99,.18), transparent 10rem),
    radial-gradient(circle at 74% 74%, rgba(113,154,193,.15), transparent 13rem);
  pointer-events:none;
}

.specialty-hero-generic .breadcrumbs,
.specialty-hero-generic .tag{
  background:rgba(255,255,255,.76);
  width:max-content;
  padding:.25rem .6rem;
  border-radius:999px;
  backdrop-filter:blur(6px);
}

.specialty-hero-generic h1,
.specialty-hero-generic .lead{
  max-width:58ch;
}

@media (max-width: 980px){
  .specialty-hero-generic{
    min-height:280px;
  }
  .specialty-hero-generic::before{
    background:
      linear-gradient(180deg, rgba(251,250,246,.95) 0%, rgba(251,250,246,.88) 38%, rgba(251,250,246,.72) 100%),
      url("../assets/img/specialty-hero-generic.png");
    background-size:cover, cover;
    background-position:center, center;
  }
}

@media (max-width: 720px){
  .specialty-hero-generic{
    min-height:250px;
  }
}



/* --- Psiconexum v26: hero tarifas con sendero --- */
.pricing-hero-path{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  min-height:330px;
}

.pricing-hero-path > *{
  position:relative;
  z-index:2;
}

.pricing-hero-path::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  border-radius:inherit;
  background:
    linear-gradient(90deg, rgba(251,250,246,.97) 0%, rgba(251,250,246,.93) 22%, rgba(251,250,246,.82) 40%, rgba(251,250,246,.64) 58%, rgba(251,250,246,.52) 100%),
    url("assets/img/tarifas-hero-sendero.png");
  background-size:cover, cover;
  background-position:center, center;
  background-repeat:no-repeat;
  opacity:1;
}

.pricing-hero-path::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  background:
    radial-gradient(circle at 84% 20%, rgba(209,176,99,.18), transparent 11rem),
    radial-gradient(circle at 72% 76%, rgba(113,154,193,.14), transparent 13rem);
  pointer-events:none;
}

.pricing-hero-path .breadcrumbs,
.pricing-hero-path .tag{
  background:rgba(255,255,255,.76);
  width:max-content;
  padding:.25rem .6rem;
  border-radius:999px;
  backdrop-filter:blur(6px);
}

.pricing-hero-path h1,
.pricing-hero-path .lead{
  max-width:60ch;
}

@media (max-width: 980px){
  .pricing-hero-path{
    min-height:300px;
  }
  .pricing-hero-path::before{
    background:
      linear-gradient(180deg, rgba(251,250,246,.95) 0%, rgba(251,250,246,.88) 38%, rgba(251,250,246,.72) 100%),
      url("assets/img/tarifas-hero-sendero.png");
    background-size:cover, cover;
    background-position:center, center;
  }
}

@media (max-width: 720px){
  .pricing-hero-path{
    min-height:270px;
  }
}



/* --- Psiconexum v28: blog y artículo --- */
.no-pad{padding:0 !important; width:100% !important}

.blog-hero-card{
  position:relative;
  overflow:hidden;
}
.blog-hero-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 85% 22%, rgba(209,176,99,.15), transparent 12rem),
    radial-gradient(circle at 75% 78%, rgba(113,154,193,.13), transparent 14rem);
  pointer-events:none;
}

.section-heading{margin-bottom:1.1rem}
.section-heading h2{margin:.45rem 0 .4rem}

.featured-post{
  display:grid;
  grid-template-columns: minmax(300px, 1.02fr) 1.15fr;
  gap:1.35rem;
  align-items:stretch;
  padding:1rem;
  overflow:hidden;
}
.featured-post-media{
  display:block;
  min-height:100%;
}
.featured-post-media img{
  width:100%;
  height:100%;
  min-height:320px;
  object-fit:cover;
  border-radius:24px;
  box-shadow:0 12px 28px rgba(24,58,103,.10);
}
.featured-post-content{
  padding:.6rem .4rem .6rem 0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.featured-post-content h2{
  margin:.3rem 0 .8rem;
  font-size:clamp(1.7rem, 2vw, 2.2rem);
}
.featured-post-content h2 a{color:var(--heading)}
.featured-post-actions{
  margin-top:1rem;
  display:flex;
  align-items:center;
  gap:1rem;
  flex-wrap:wrap;
}
.article-author{
  color:var(--text-soft);
  font-size:.95rem;
}

.article-hero-card{
  position:relative;
  overflow:hidden;
}
.article-hero-card::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 85% 22%, rgba(209,176,99,.15), transparent 12rem),
    radial-gradient(circle at 75% 78%, rgba(113,154,193,.13), transparent 14rem);
  pointer-events:none;
}
.article-meta-row{
  display:flex;
  gap:1rem;
  flex-wrap:wrap;
  margin-top:.9rem;
  color:var(--text-soft);
  font-size:.95rem;
}

.article-layout{
  display:grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(280px, .72fr);
  gap:1.35rem;
  align-items:start;
}
.article-main{
  padding:1rem;
}
.article-cover{
  width:100%;
  max-height:420px;
  object-fit:cover;
  border-radius:24px;
  display:block;
  margin-bottom:1rem;
}
.article-body{
  padding:.2rem .35rem .4rem;
}
.article-body h2{
  margin-top:1.65rem;
  margin-bottom:.75rem;
  font-size:1.55rem;
}
.article-body p{
  margin:.85rem 0;
}
.article-sidebar{
  position:sticky;
  top:92px;
  display:grid;
  gap:1rem;
}
.sidebar-card{
  padding:1.35rem;
}
.toc-list{
  margin:.8rem 0 0;
  padding-left:1.1rem;
}
.toc-list li{
  margin:.55rem 0;
}
.toc-list a{
  color:var(--text-soft);
}
.soft-cta{
  margin-top:1.7rem;
  background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(249,246,240,.96));
  border-radius:28px;
}
.article-disclaimer{
  font-size:.95rem;
  color:var(--text-soft);
  margin-top:1.2rem;
  padding-top:1rem;
  border-top:1px solid var(--border);
}

@media (max-width: 980px){
  .featured-post,
  .article-layout{
    grid-template-columns:1fr;
  }
  .featured-post-content{
    padding:.25rem .2rem .2rem;
  }
  .article-sidebar{
    position:static;
  }
}



/* --- Logo isotipo cabecera Psiconexum --- */
.logo.logo-icon-only{
  display:flex;
  align-items:center;
  gap:0;
}

.logo.logo-icon-only img{
  width:82px;
  height:82px;
  object-fit:contain;
  display:block;
  border-radius:50%;
  box-shadow:0 8px 24px rgba(10, 29, 49, 0.12);
}

.logo.logo-icon-only .logo-text{
  display:none !important;
}

@media (max-width: 768px){
  .logo.logo-icon-only img{
    width:68px;
    height:68px;
  }
}



/* --- Contraste reforzado header y footer (v32) --- */

/* Cabecera azul marino con mejor lectura */
.site-header{
  background: linear-gradient(180deg, #0c2d4b 0%, #123a5f 100%) !important;
  border-bottom: 1px solid rgba(214, 184, 110, 0.40) !important;
  box-shadow: 0 14px 34px rgba(6, 20, 35, 0.24);
}

.site-header .nav-link,
.site-header .cta-nav,
.site-header .logo,
.site-header .logo-text{
  text-shadow: 0 1px 2px rgba(0,0,0,0.28);
}

.nav-link{
  color: #fdfcf8 !important;
  font-weight: 500;
}

.nav-link:hover,
.nav-link.active{
  color: #ffffff !important;
  background: rgba(255,255,255,0.14) !important;
  box-shadow: 0 8px 18px rgba(0,0,0,0.10);
}

.dropdown-toggle{
  color: #fdfcf8 !important;
}

.dropdown-toggle:hover{
  color: #ffffff !important;
}

.cta-nav{
  background: #e1bf7a !important;
  color: #0c243d !important;
  border: 1px solid rgba(255,255,255,0.16);
  font-weight: 600;
  box-shadow: 0 10px 22px rgba(0,0,0,0.12);
}

.cta-nav:hover{
  background: #f0d399 !important;
  color: #0b2135 !important;
}

/* Footer más contrastado y legible */
.site-footer{
  background: linear-gradient(180deg, #0d253d 0%, #081726 100%) !important;
  border-top: 1px solid rgba(214, 184, 110, 0.38) !important;
  box-shadow: 0 -14px 34px rgba(6, 20, 35, 0.20);
  color: #fdfcf8 !important;
}

.site-footer,
.site-footer p,
.site-footer li,
.site-footer span,
.site-footer a,
.site-footer h3,
.site-footer h4,
.footer-note,
.footer-bottom{
  color: #fdfcf8 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.24);
}

.site-footer a{
  text-decoration: none;
}

.site-footer a:hover{
  color: #f0d399 !important;
}

/* Títulos y bloques informativos dentro de header/footer */
.site-header .muted,
.site-footer .muted{
  color: rgba(253, 252, 248, 0.88) !important;
}

/* Separadores con más presencia */
.site-header::after,
.site-footer::before{
  opacity: 0.85;
}



/* --- Ajustes finos menú superior y logo (v33) --- */

/* Logo: mismo círculo, símbolo un poco más grande y centrado */
.logo.logo-icon-only{
  display:flex;
  align-items:center;
  gap:0;
}

.logo.logo-icon-only img{
  width:82px;
  height:82px;
  object-fit:contain;
  object-position:center;
  display:block;
  border-radius:50%;
  box-shadow:0 8px 24px rgba(10, 29, 49, 0.12);
}

.logo.logo-icon-only .logo-text{
  display:none !important;
}

/* Más contraste en el menú superior */
.site-header nav,
.site-header .nav-wrapper,
.site-header .main-nav{
  position:relative;
}

.site-header .nav-list,
.site-header ul{
  gap: .35rem;
}

.site-header .nav-link,
.site-header .dropdown-toggle{
  color:#fffefb !important;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.10);
  border-radius:14px;
  padding:.62rem .95rem;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  text-shadow:0 1px 2px rgba(0,0,0,0.35);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.site-header .nav-link:hover,
.site-header .nav-link.active,
.site-header .dropdown-toggle:hover,
.site-header .dropdown-toggle.active{
  color:#ffffff !important;
  background:rgba(255,255,255,0.16) !important;
  border-color:rgba(225,191,122,0.44) !important;
  box-shadow:0 10px 24px rgba(0,0,0,0.14);
}

.site-header .cta-nav{
  text-shadow:none;
}

.dropdown-menu{
  box-shadow:0 18px 40px rgba(10,29,49,0.16);
}

@media (max-width: 768px){
  .logo.logo-icon-only img{
    width:82px;
    height:82px;
  }
}



/* --- Ajuste óptico logo centrado (v34) --- */
.logo.logo-icon-only img{
  width:82px;
  height:82px;
  object-fit:contain;
  object-position:center center;
  border-radius:50%;
}



/* --- Ajuste isotipo concéntrico (v35) --- */
.logo.logo-icon-only img{
  width:82px;
  height:82px;
  object-fit:contain;
  object-position:center center;
  border-radius:50%;
  display:block;
}



/* --- Menú superior tipo bocadillo redondeado (v36) --- */

/* Bocadillos del menú más redondeados, como en la v30 */
.site-header .nav-link,
.site-header .dropdown > .nav-link{
  background:rgba(255,255,255,0.92) !important;
  color:#0c2d4b !important;
  border:1px solid rgba(255,255,255,0.72) !important;
  border-radius:999px !important;
  padding:.58rem .95rem !important;
  font-weight:600;
  text-shadow:none !important;
  box-shadow:0 8px 18px rgba(3,18,32,0.12);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

/* Hover y activo: mantiene letras azul marino y mejora contraste */
.site-header .nav-link:hover,
.site-header .nav-link.active,
.site-header .dropdown > .nav-link:hover,
.site-header .dropdown > .nav-link.active{
  background:#fffdf8 !important;
  color:#0c2d4b !important;
  border-color:rgba(225,191,122,0.70) !important;
  box-shadow:0 10px 24px rgba(3,18,32,0.18);
}

/* Contacto y reserva: se queda azul marino siempre */
.site-header .cta-nav{
  background:#0c2d4b !important;
  color:#fffdf8 !important;
  border:1px solid rgba(225,191,122,0.55) !important;
  border-radius:999px !important;
  font-weight:700;
  text-shadow:none !important;
  box-shadow:0 10px 24px rgba(3,18,32,0.22);
}

/* Al pasar el ratón por contacto, NO cambia a otro color */
.site-header .cta-nav:hover,
.site-header .cta-nav.active,
.site-header .cta-nav:focus{
  background:#0c2d4b !important;
  color:#fffdf8 !important;
  border-color:rgba(225,191,122,0.85) !important;
  box-shadow:0 12px 28px rgba(3,18,32,0.26);
}

/* Desplegable de especialidades: más limpio y contrastado */
.site-header .dropdown-menu{
  background:rgba(255,255,255,0.98) !important;
  border:1px solid rgba(12,45,75,0.14) !important;
  border-radius:22px !important;
  box-shadow:0 18px 42px rgba(3,18,32,0.18) !important;
}

.site-header .dropdown-menu a{
  color:#0c2d4b !important;
  border-radius:999px;
  font-weight:500;
}

.site-header .dropdown-menu a:hover{
  background:rgba(225,191,122,0.18) !important;
  color:#0c2d4b !important;
}



/* --- Fondo montaña real bloque Estés donde estés (v37) --- */
.estes-donde-estes{
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.estes-donde-estes::before{
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  background:
    linear-gradient(90deg, rgba(248,245,238,0.96) 0%, rgba(248,245,238,0.88) 38%, rgba(248,245,238,0.58) 62%, rgba(248,245,238,0.28) 100%),
    linear-gradient(180deg, rgba(13,37,61,0.10) 0%, rgba(13,37,61,0.06) 100%),
    url("assets/img/estes-donde-estes-montana.jpg");
  background-size: cover, cover, cover;
  background-position: center center, center center, center center;
  background-repeat: no-repeat, no-repeat, no-repeat;
  filter: saturate(0.98) contrast(1.02);
}

.estes-donde-estes > *{
  position: relative;
  z-index: 1;
}

.estes-donde-estes h2,
.estes-donde-estes p,
.estes-donde-estes li,
.estes-donde-estes .tag{
  text-shadow: 0 1px 2px rgba(255,255,255,0.32);
}

/* En móvil, un poco más de overlay para mantener legibilidad */
@media (max-width: 768px){
  .estes-donde-estes::before{
    background:
      linear-gradient(180deg, rgba(248,245,238,0.94) 0%, rgba(248,245,238,0.88) 44%, rgba(248,245,238,0.68) 100%),
      linear-gradient(180deg, rgba(13,37,61,0.10) 0%, rgba(13,37,61,0.06) 100%),
      url("assets/img/estes-donde-estes-montana.jpg");
    background-size: cover, cover, cover;
    background-position: center center, center center, center center;
    background-repeat: no-repeat, no-repeat, no-repeat;
  }
}



/* --- Ajustes v38: logo header y contraste terapia online --- */

/* Nuevo logotipo del header (solo arriba a la izquierda) */
.logo.logo-icon-only img{
  width:82px;
  height:82px;
  object-fit:contain;
  object-position:center center;
  display:block;
  border-radius:0;
  box-shadow:none;
}

/* Más contraste para el bloque "Estés donde estés" */
.estes-donde-estes::before{
  background:
    linear-gradient(90deg, rgba(248,245,238,0.985) 0%, rgba(248,245,238,0.94) 36%, rgba(248,245,238,0.68) 62%, rgba(248,245,238,0.26) 100%),
    linear-gradient(180deg, rgba(8,28,46,0.12) 0%, rgba(8,28,46,0.08) 100%),
    url("assets/img/estes-donde-estes-montana.jpg") !important;
  background-size: cover, cover, cover !important;
  background-position: center center, center center, center center !important;
  background-repeat: no-repeat, no-repeat, no-repeat !important;
}

.estes-donde-estes h2{
  color:#0b2238 !important;
  text-shadow:0 1px 0 rgba(255,255,255,0.85), 0 6px 18px rgba(255,255,255,0.35);
}

.estes-donde-estes p,
.estes-donde-estes li{
  color:#24384b !important;
  text-shadow:0 1px 0 rgba(255,255,255,0.78);
}

.estes-donde-estes .tag{
  color:#0b2238 !important;
  background:rgba(255,255,255,0.78) !important;
  border-color:rgba(209,176,99,0.34) !important;
  text-shadow:none !important;
}

/* Un poco más de refuerzo en móvil */
@media (max-width: 768px){
  .logo.logo-icon-only img{
    width:76px;
    height:76px;
  }

  .estes-donde-estes::before{
    background:
      linear-gradient(180deg, rgba(248,245,238,0.97) 0%, rgba(248,245,238,0.92) 46%, rgba(248,245,238,0.78) 100%),
      linear-gradient(180deg, rgba(8,28,46,0.10) 0%, rgba(8,28,46,0.06) 100%),
      url("assets/img/estes-donde-estes-montana.jpg") !important;
    background-size: cover, cover, cover !important;
    background-position: center center, center center, center center !important;
    background-repeat: no-repeat, no-repeat, no-repeat !important;
  }
}



/* --- Ajustes v39: texto terapia online y logo crema circular --- */

/* Texto bajo "Estés donde estés": más contraste SOLO en el contenido inferior */
.estes-donde-estes p,
.estes-donde-estes li{
  color:#1f3244 !important;
  font-weight:500;
  text-shadow:
    0 1px 0 rgba(255,255,255,0.92),
    0 0 10px rgba(255,255,255,0.38);
}

.estes-donde-estes .section-text,
.estes-donde-estes .copy,
.estes-donde-estes .content,
.estes-donde-estes .text-content{
  color:#1f3244 !important;
}

/* mantener el título como está, pero asegurar legibilidad */
.estes-donde-estes h2{
  color:#0b2238 !important;
}

.estes-donde-estes .tag{
  color:#0b2238 !important;
}

/* Logo superior izquierdo: círculo crema */
.logo.logo-icon-only{
  display:flex;
  align-items:center;
  justify-content:center;
}

.logo.logo-icon-only img{
  width:84px;
  height:84px;
  object-fit:contain;
  object-position:center center;
  display:block;
  border-radius:50%;
  background:#f5efe4;
  box-shadow:0 8px 24px rgba(10, 29, 49, 0.10);
  padding:0;
}

.logo.logo-icon-only .logo-text{
  display:none !important;
}

@media (max-width: 768px){
  .logo.logo-icon-only img{
    width:76px;
    height:76px;
  }

  .estes-donde-estes p,
  .estes-donde-estes li{
    color:#203244 !important;
    text-shadow:
      0 1px 0 rgba(255,255,255,0.95),
      0 0 8px rgba(255,255,255,0.32);
  }
}



/* --- Ajuste v40: zoom interno del logo header --- */
.logo.logo-icon-only img{
  width:84px;
  height:84px;
  object-fit:contain;
  object-position:center center;
  display:block;
  border-radius:50%;
  background:#f5efe4;
}



/* --- Ajustes v42: botones en perfiles --- */
.profile-card{
  display:flex;
  flex-direction:column;
}

.profile-actions{
  margin-top:auto;
  padding-top:1.25rem;
  display:flex;
  align-items:center;
}

.profile-contact-button{
  width:100%;
  justify-content:center;
  text-align:center;
  border-radius:999px;
  padding:.85rem 1.1rem;
  font-weight:700;
}



/* --- Ajustes v43: recuperar texto Psiconexum en cabecera --- */
.logo.logo-with-text{
  display:flex;
  align-items:center;
  gap:.85rem;
  min-width:0;
}

.logo.logo-with-text img{
  width:84px;
  height:84px;
  object-fit:contain;
  object-position:center center;
  display:block;
  border-radius:50%;
  background:#f5efe4;
  box-shadow:0 8px 24px rgba(10, 29, 49, 0.10);
}

.logo.logo-with-text .logo-text{
  display:flex !important;
  flex-direction:column;
  min-width:0;
}

.logo.logo-with-text .logo-title{
  font-family: Georgia, serif;
  letter-spacing:.09em;
  color:#fffdf8 !important;
  font-size:1.16rem;
  text-transform:uppercase;
  font-weight:600;
  text-shadow:0 1px 2px rgba(0,0,0,0.32);
}

.logo.logo-with-text .logo-subtitle{
  font-size:.82rem;
  color:rgba(255,253,248,.86) !important;
  text-shadow:0 1px 2px rgba(0,0,0,0.24);
}

@media (max-width: 900px){
  .logo.logo-with-text .logo-title{
    font-size:1rem;
  }

  .logo.logo-with-text .logo-subtitle{
    font-size:.76rem;
  }
}

@media (max-width: 720px){
  .logo.logo-with-text img{
    width:76px;
    height:76px;
  }
}



/* --- Ajustes v44: Psiconexum cabecera más visible --- */
.logo.logo-with-text{
  gap:1rem;
}

.logo.logo-with-text .logo-text{
  display:flex !important;
  flex-direction:column;
  min-width:0;
  background:rgba(255,253,248,0.92);
  border:1px solid rgba(225,191,122,0.46);
  border-radius:999px;
  padding:.42rem 1rem .46rem;
  box-shadow:0 8px 22px rgba(3,18,32,0.14);
}

.logo.logo-with-text .logo-title{
  font-family:Georgia, serif;
  letter-spacing:.10em;
  color:#0c2d4b !important;
  font-size:1.34rem !important;
  line-height:1.05;
  text-transform:uppercase;
  font-weight:700;
  text-shadow:none !important;
}

.logo.logo-with-text .logo-subtitle{
  color:#294967 !important;
  font-size:.86rem !important;
  line-height:1.05;
  margin-top:.18rem;
  text-shadow:none !important;
}

@media (max-width: 980px){
  .logo.logo-with-text .logo-title{
    font-size:1.18rem !important;
  }

  .logo.logo-with-text .logo-subtitle{
    font-size:.78rem !important;
  }

  .logo.logo-with-text .logo-text{
    padding:.38rem .82rem .42rem;
  }
}

@media (max-width: 720px){
  .logo.logo-with-text{
    gap:.7rem;
  }

  .logo.logo-with-text .logo-title{
    font-size:1.02rem !important;
  }

  .logo.logo-with-text .logo-subtitle{
    display:none;
  }
}



/* --- Ajustes v45: textos hero inicio --- */
.hero-card h3{
  font-size:clamp(1.65rem, 2.2vw, 2.25rem);
  line-height:1.15;
  margin-bottom:.55rem;
}

.hero-card .hero-list{
  gap:.75rem;
}

.hero-card .hero-list li{
  align-items:flex-start;
}

.hero-card .hero-list span{
  line-height:1.45;
}



/* --- Ajustes v46: trust row inicio --- */
.trust-row{
  margin-top: 1.35rem;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  background: #0c2d4b;
  border-radius: 28px;
  padding: 1rem;
  box-shadow: 0 16px 34px rgba(8, 22, 38, 0.18);
}

.trust-row .trust-item{
  background: rgba(255, 253, 248, 0.98);
  border: 1px solid rgba(219, 191, 130, 0.34);
  border-radius: 22px;
  padding: 1rem 1rem 0.95rem;
  min-height: 104px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  box-shadow: 0 10px 22px rgba(2, 14, 26, 0.10);
}

.trust-row .trust-item strong{
  display: block;
  color: #0c2d4b;
  font-size: 1rem;
  line-height: 1.22;
  margin-bottom: 0.38rem;
  font-weight: 700;
}

.trust-row .trust-item span{
  display: block;
  color: #45627d;
  font-size: 0.94rem;
  line-height: 1.35;
}

@media (max-width: 900px){
  .trust-row{
    grid-template-columns: 1fr;
  }

  .trust-row .trust-item{
    min-height: auto;
  }
}



/* --- Ajustes v48: primera sesión, cuadrados y quienes somos inicio --- */

/* Bocadillos de la primera sesión */
.session-tag-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:.75rem;
  flex-wrap:wrap;
  margin-bottom:.95rem;
}

.session-tag-row .tag{
  margin:0;
}

.session-duration-tag{
  background:#0c2d4b !important;
  color:#fffdf8 !important;
  border-color:rgba(225,191,122,0.55) !important;
  box-shadow:0 8px 18px rgba(3,18,32,0.14);
}

/* Cuadrados informativos justo debajo del inicio */
.clinic-strip-section{
  background:#0c2d4b;
  padding-top:1.25rem;
  padding-bottom:1.25rem;
}

.clinic-strip.clinic-strip-three{
  grid-template-columns:repeat(3, minmax(0, 1fr));
  background:#0c2d4b;
  border-radius:30px;
  padding:1rem;
  box-shadow:0 16px 34px rgba(8,22,38,.18);
}

.clinic-strip.clinic-strip-three > div{
  background:rgba(255,253,248,.98);
  border:1px solid rgba(219,191,130,.34);
  border-radius:22px;
  padding:1rem 1.1rem;
  min-height:104px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  box-shadow:0 10px 22px rgba(2,14,26,.10);
}

.clinic-strip.clinic-strip-three strong{
  color:#0c2d4b;
  font-size:1rem;
  line-height:1.22;
  margin-bottom:.35rem;
}

.clinic-strip.clinic-strip-three span{
  color:#45627d;
  font-size:.94rem;
  line-height:1.35;
}

@media (max-width:900px){
  .clinic-strip.clinic-strip-three{
    grid-template-columns:1fr;
  }
}



/* --- Ajustes v49: hero inicio más limpio --- */
.hero-panel h1{
  font-size:clamp(2.05rem, 4.2vw, 3.45rem) !important;
  line-height:1.08;
  max-width:920px;
}

.hero-panel .actions{
  margin-top:1.45rem;
}



/* --- Ajustes v50: titular principal más pequeño --- */
.hero h1,
.hero-panel h1,
.hero-copy h1,
.hero-grid h1,
.hero-content h1{
  font-size: clamp(1.7rem, 3.1vw, 2.65rem) !important;
  line-height: 1.12 !important;
  max-width: 760px;
  letter-spacing: -0.01em;
}

@media (max-width: 720px){
  .hero h1,
  .hero-panel h1,
  .hero-copy h1,
  .hero-grid h1,
  .hero-content h1{
    font-size: clamp(1.55rem, 6.2vw, 2.05rem) !important;
    line-height: 1.14 !important;
    max-width: 100%;
  }
}



/* --- Ajustes v51: azul solo en recuadro grande --- */

/* La sección vuelve al fondo claro de la página */
.clinic-strip-section{
  background:transparent !important;
  padding-top:1.35rem;
  padding-bottom:1.35rem;
}

/* Este es el recuadro grande que envuelve los tres recuadros */
.clinic-strip.clinic-strip-three{
  background:#0c2d4b !important;
  border-radius:32px;
  padding:1.05rem;
  box-shadow:0 18px 40px rgba(8,22,38,.18);
  border:1px solid rgba(225,191,122,.20);
}

/* Recuadros interiores */
.clinic-strip.clinic-strip-three > div{
  background:rgba(255,253,248,.98) !important;
  border:1px solid rgba(225,191,122,.34);
  border-radius:22px;
  box-shadow:0 10px 22px rgba(2,14,26,.10);
}

.clinic-strip.clinic-strip-three strong{
  color:#0c2d4b !important;
}

.clinic-strip.clinic-strip-three span{
  color:#45627d !important;
}



/* --- Ajustes v52: degradado recuadro informativo y pregunta cómo trabajamos --- */
.clinic-strip.clinic-strip-three{
  background:
    radial-gradient(circle at 12% 18%, rgba(225,191,122,0.20) 0%, rgba(225,191,122,0.08) 24%, transparent 48%),
    radial-gradient(circle at 86% 78%, rgba(126,162,176,0.28) 0%, rgba(126,162,176,0.10) 30%, transparent 58%),
    linear-gradient(135deg, #071d31 0%, #0c2d4b 42%, #123f61 100%) !important;
  border:1px solid rgba(225,191,122,.26);
  box-shadow:
    0 18px 42px rgba(8,22,38,.20),
    inset 0 1px 0 rgba(255,255,255,.08);
}

.clinic-strip.clinic-strip-three > div{
  background:rgba(255,253,248,.97) !important;
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}



/* --- Ajustes v54: degradado reforzado y primera sesión sin silueta --- */

/* Más degradado en el recuadro grande que envuelve los tres recuadros */
.clinic-strip.clinic-strip-three{
  background:
    radial-gradient(circle at 8% 16%, rgba(225,191,122,0.38) 0%, rgba(225,191,122,0.18) 18%, rgba(225,191,122,0.07) 32%, transparent 50%),
    radial-gradient(circle at 88% 80%, rgba(126,162,176,0.38) 0%, rgba(126,162,176,0.18) 22%, rgba(126,162,176,0.08) 38%, transparent 60%),
    radial-gradient(circle at 54% 8%, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.04) 22%, transparent 42%),
    linear-gradient(135deg, #05182a 0%, #0a2843 28%, #123b59 62%, #1b5375 100%) !important;
  border:1px solid rgba(225,191,122,.30);
  box-shadow:
    0 20px 48px rgba(8,22,38,.22),
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -20px 40px rgba(0,0,0,.08);
}

/* Mantener el bocadillo de Duración 30 min */
.session-tag-row{
  display:flex !important;
}

/* Recuadro "¿Cómo es la primera sesión?": sin silueta/imagen de fondo en reposo ni hover */
.quote-card{
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(247,249,250,.88)) !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(247,249,250,.88)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

.quote-card:hover{
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(242,248,247,.90)) !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(242,248,247,.90)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

.quote-card::before,
.quote-card::after{
  display:none !important;
  content:none !important;
}



/* --- Ajustes v56: sin silueta en paneles de quienes somos --- */
.no-silhouette-panel,
.nuestra-vision-panel,
.como-trabajamos-panel{
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,249,250,.90)) !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,249,250,.90)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  overflow:hidden;
}

.no-silhouette-panel:hover,
.nuestra-vision-panel:hover,
.como-trabajamos-panel:hover{
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(242,248,247,.92)) !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(242,248,247,.92)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

.no-silhouette-panel::before,
.no-silhouette-panel::after,
.nuestra-vision-panel::before,
.nuestra-vision-panel::after,
.como-trabajamos-panel::before,
.como-trabajamos-panel::after{
  display:none !important;
  content:none !important;
  background:none !important;
  opacity:0 !important;
}



/* --- Ajustes v58: sin silueta en especialidades y blog --- */
.especialidades-orientacion-panel,
.blog-intro-panel{
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,249,250,.90)) !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,249,250,.90)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  overflow:hidden;
}

.especialidades-orientacion-panel:hover,
.blog-intro-panel:hover{
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(242,248,247,.92)) !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(242,248,247,.92)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

.especialidades-orientacion-panel::before,
.especialidades-orientacion-panel::after,
.blog-intro-panel::before,
.blog-intro-panel::after{
  display:none !important;
  content:none !important;
  background:none !important;
  opacity:0 !important;
}



/* --- Ajustes v59: sin silueta en tarifas y contacto --- */
.tarifas-importante-panel,
.contacto-hero-panel{
  background:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,249,250,.90)) !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,249,250,.90)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  overflow:hidden;
}

.tarifas-importante-panel:hover,
.contacto-hero-panel:hover{
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(242,248,247,.92)) !important;
  background-image:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(242,248,247,.92)) !important;
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
}

.tarifas-importante-panel::before,
.tarifas-importante-panel::after,
.contacto-hero-panel::before,
.contacto-hero-panel::after{
  display:none !important;
  content:none !important;
  background:none !important;
  opacity:0 !important;
}


/* v67: legibilidad del texto de presentación del equipo */
.team-hero-hands .team-intro-paragraph{
  max-width:74ch;
  line-height:1.65;
  margin:.75rem 0;
  color:var(--text);
}


/* --- v68: tarjetas y navegación de las especialidades revisadas --- */
.specialty-overview-grid .specialty-overview-card{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:.15rem;
}
.specialty-overview-grid .specialty-overview-card h3{
  line-height:1.22;
  margin-bottom:.65rem;
}
.specialty-overview-grid .specialty-overview-card p{
  margin-bottom:1.1rem;
}
.specialty-overview-grid .specialty-overview-card .card-link{
  margin-top:auto;
  padding-top:.25rem;
}
@media (min-width:981px){
  .site-header .dropdown-menu{
    max-height:calc(100vh - 120px);
    overflow-y:auto;
  }
}


/* --- v69: reserva al final de la página de especialidades --- */
.specialties-booking-section{
  padding-top:1.1rem;
  padding-bottom:1.5rem;
}
.specialties-booking-band{
  background:
    radial-gradient(circle at 8% 10%,rgba(225,191,122,.18),transparent 36%),
    linear-gradient(125deg,#092238 0%,#0c2d4b 52%,#205375 100%);
  border:1px solid rgba(225,191,122,.30);
  box-shadow:0 18px 42px rgba(6,30,50,.17);
}
.specialties-booking-band h2{
  font-size:clamp(1.45rem,2.3vw,2.05rem);
  line-height:1.2;
}
.specialties-booking-band p{
  max-width:54ch;
  line-height:1.55;
  color:rgba(255,253,248,.90);
}
.specialties-booking-button{
  flex-shrink:0;
  text-align:center;
  white-space:nowrap;
}
@media(max-width:720px){
  .specialties-booking-band{padding:1.55rem;}
  .specialties-booking-button{white-space:normal;width:100%;justify-content:center;}
}


/* --- Ajustes v71: tarifas actualizadas --- */
.pricing-grid.pricing-grid-two{
  grid-template-columns:repeat(2,minmax(0,1fr));
  max-width:960px;
  margin-inline:auto;
}
.mini-pricing.mini-pricing-two{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media (max-width:980px){
  .pricing-grid.pricing-grid-two{grid-template-columns:1fr;}
}
@media (max-width:720px){
  .mini-pricing.mini-pricing-two{grid-template-columns:1fr;}
}


/* --- v72 · Contacto directo por WhatsApp, sin formulario --- */
.contact-page-hero .contacto-hero-panel { max-width:var(--max); }
.whatsapp-contact-section .section-head { margin-inline:auto; }
.whatsapp-professional-grid { display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); gap:1.45rem; }
.whatsapp-professional-card { padding:1.7rem !important; display:flex; flex-direction:column; gap:1rem; isolation:isolate; }
.whatsapp-professional-card::before, .whatsapp-professional-card::after { content:none !important; display:none !important; }
.whatsapp-profile-head { display:flex; align-items:center; gap:1.1rem; }
.whatsapp-profile-photo { width:112px; height:130px; border-radius:19px; flex:0 0 112px; object-fit:cover; object-position:center 25%; box-shadow:0 9px 25px rgba(12,45,75,.12); }
.whatsapp-profile-kicker { font-size:.77rem; color:#547087; letter-spacing:.08em; text-transform:uppercase; font-weight:750; }
.whatsapp-profile-head h3 { font-size:clamp(1.35rem, 2vw, 1.65rem); margin:.25rem 0 .4rem; }
.whatsapp-profile-head p { font-size:.9rem; line-height:1.45; margin:0; color:#405971; }
.whatsapp-profile-invite { color:#344960; margin:.1rem 0 .4rem; }
.whatsapp-direct-button { width:100%; text-align:center; margin-top:auto; gap:.65rem; border:1px solid rgba(225,191,122,.5) !important; }
.whatsapp-direct-button span { font-size:1.18em; }
.whatsapp-send-hint { text-align:center; max-width:850px; margin:1.5rem auto .8rem; color:#38516a; font-size:.95rem; }
.whatsapp-config-status { font-size:.88rem; color:#5a4b29; background:#fffaf0; border:1px solid rgba(195,156,85,.42); border-radius:14px; padding:.85rem 1rem; max-width:820px; margin:1rem auto 0; }
.whatsapp-config-status[hidden]{ display:none !important; }
.whatsapp-info-shell { padding:1.65rem 1.85rem; background:linear-gradient(126deg,#0b263f 0%, #103551 52%,#235778 100%); border-radius:28px; color:#fffdf8; box-shadow:0 18px 38px rgba(11,38,63,.16); }
.whatsapp-info-heading .tag { background:rgba(245,239,228,.16); color:#fffdf8; border:1px solid rgba(255,255,255,.22); }
.whatsapp-info-heading h2, .whatsapp-info-heading p { color:#fffdf8; }
.whatsapp-info-heading p { opacity:.9; }
.whatsapp-info-prices { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; margin:1.3rem 0 1.4rem; }
.whatsapp-info-prices > div { display:flex; flex-direction:column; padding:1.2rem 1.3rem; border-radius:19px; background:rgba(255,253,248,.96); color:#0c2d4b; }
.whatsapp-info-prices strong { font:700 2rem Georgia,serif; line-height:1.15; }
.whatsapp-info-prices span { font-weight:700; }
.whatsapp-info-prices small { color:#486279; margin-top:.2rem; }
.whatsapp-general-email { margin:0; font-size:.95rem; }
.whatsapp-general-email a { color:#fffdf8; font-weight:650; text-decoration:underline; text-underline-offset:3px; }
.whatsapp-professional-card:target { outline:3px solid rgba(209,176,99,.76); outline-offset:4px; }
.whatsapp-professional-card { scroll-margin-top:150px; }
@media (max-width:820px) { .whatsapp-professional-grid{grid-template-columns:1fr;} .whatsapp-info-prices{grid-template-columns:1fr;} }
@media (max-width:460px) { .whatsapp-profile-head{align-items:flex-start; gap:.8rem;} .whatsapp-profile-photo{width:88px;height:110px;flex-basis:88px;} .whatsapp-info-shell{padding:1.3rem;} }


/* --- v73: Eholo para citas y cobros; WhatsApp solo informativo --- */
.booking-contact-section .section-head { max-width:880px; }
.booking-professional-card { background:linear-gradient(180deg,rgba(255,253,248,.97),rgba(248,249,249,.97)) !important; }
.professional-contact-options { display:flex; flex-direction:column; gap:1.1rem; margin-top:auto; }
.professional-contact-option { padding:1rem; border-radius:18px; border:1px solid rgba(12,45,75,.09); display:flex; flex-direction:column; gap:.48rem; }
.booking-option { background:linear-gradient(135deg,rgba(235,242,244,.85),rgba(244,247,248,.88)); }
.question-option { background:rgba(249,245,237,.8); }
.contact-option-label { font-size:.82rem; line-height:1.3; color:#34526c; font-weight:750; }
.professional-contact-option .button { width:100%; margin:0; justify-content:center; min-height:48px; }
.booking-professional-card .whatsapp-direct-button { background:rgba(255,253,248,.98) !important; border:1px solid rgba(12,45,75,.24) !important; color:#0c2d4b !important; box-shadow:none; }
.booking-professional-card .whatsapp-direct-button:hover { background:#f1e9db !important; color:#0c2d4b !important; border-color:rgba(225,191,122,.7) !important; }
.contact-option-description { font-size:.84rem; line-height:1.4; color:#53677a; }
.eholo-reserve-button[aria-disabled="true"] { background:#dfe7ea !important; color:#586c78 !important; border:1px solid #c0ccd3 !important; box-shadow:none !important; cursor:not-allowed; opacity:1; pointer-events:none; }
.eholo-config-status { color:#4f472c; background:#fff9eb; border:1px solid rgba(195,156,85,.42); border-radius:14px; padding:.92rem 1.15rem; max-width:940px; margin:1.5rem auto 0; font-size:.93rem; text-align:center; }
.eholo-config-status[hidden] {display:none !important;}
.booking-professional-card:target { outline:3px solid rgba(209,176,99,.76); outline-offset:4px; }
.booking-professional-card { scroll-margin-top:150px; }
@media(max-width:460px) { .professional-contact-option {padding:.82rem;} .professional-contact-option .button {font-size:.86rem; padding:.73rem .6rem;} }


/* --- v74 · Solicitud de primera sesión vía WhatsApp --- */
.contact-hero-note { margin:.9rem 0 0; color:#31516c; font-weight:600; }
.whatsapp-booking-section { scroll-margin-top:130px; }
.whatsapp-booking-layout { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(250px,.88fr); align-items:start; gap:1.5rem; }
.whatsapp-booking-form { padding:2rem 2.2rem; background:linear-gradient(160deg,rgba(255,253,248,.99),rgba(246,249,248,.97)) !important; overflow:visible; }
.whatsapp-booking-form::before,.whatsapp-booking-form::after{ content:none !important;display:none !important; }
.whatsapp-booking-form h2 { margin:.7rem 0 .55rem; line-height:1.22; }
.booking-form-intro { color:#4b6072; margin-bottom:1.55rem; }
.booking-field-group { margin:0 0 1.5rem; }
.booking-field-group label, .booking-field-group legend { font-weight:700; color:#0c2d4b; display:flex; align-items:center; gap:.55rem; margin-bottom:.62rem; line-height:1.4; }
.booking-field-number { flex:0 0 29px; width:29px; height:29px; border-radius:50%; background:#0c2d4b; color:#fffdf8; display:inline-flex; align-items:center; justify-content:center; font-size:.82rem; font-weight:700; }
.whatsapp-booking-form textarea, .whatsapp-booking-form select { width:100%; background:#fffdfa; border:1px solid #becdd3; border-radius:14px; box-shadow:0 2px 8px rgba(7,34,50,.03); }
.whatsapp-booking-form textarea { min-height:118px; resize:vertical; }
.whatsapp-booking-form textarea:focus-visible, .whatsapp-booking-form select:focus-visible { outline:2px solid #2a5f83; outline-offset:2px; }
.booking-field-help { font-size:.84rem; line-height:1.48; color:#526579; margin:.55rem 0 0; }
.booking-professional-select { border:0; padding:0; min-width:0; }
.booking-professional-choices { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; }
.booking-professional-choice { cursor:pointer; display:flex !important; gap:.6rem; align-items:center; min-width:0; padding:.76rem !important; border-radius:17px; background:#fff; border:1.5px solid #cfdae0; margin:0 !important; position:relative; transition:border-color .15s, background .15s; }
.booking-professional-choice:has(input:checked) { border-color:#0c2d4b; background:#eff4f5; box-shadow:0 0 0 2px rgba(12,45,75,.10); }
.booking-professional-choice:focus-within { outline:2px solid #2a5f83; outline-offset:2px; }
.booking-professional-choice input { accent-color:#0c2d4b; flex:0 0 auto; width:18px; height:18px; padding:0; margin:0; }
.booking-professional-choice img { width:42px; height:48px; flex:0 0 42px; object-fit:cover; border-radius:9px; }
.booking-professional-choice span:not(.booking-choice-check) { min-width:0; display:flex; flex-direction:column; line-height:1.15; }
.booking-professional-choice strong { font-size:.99rem; }
.booking-professional-choice small { font-weight:500; font-size:.77rem; color:#567083; margin-top:.24rem; }
.booking-choice-check { display:none; }
.booking-understanding-check { display:flex !important; align-items:flex-start; gap:.7rem; background:rgba(230,239,239,.6); border:1px solid rgba(12,45,75,.13); border-radius:13px; padding:1rem; cursor:pointer; margin:.25rem 0 1.2rem; font-size:.89rem; line-height:1.45; font-weight:500; color:#384e63; }
.booking-understanding-check input { width:18px; height:18px; flex:0 0 18px; accent-color:#0c2d4b; padding:0; margin:.12rem 0 0; }
.booking-submit { width:100%; font-size:1rem; cursor:pointer; }
.booking-submit-note { font-size:.87rem; line-height:1.5; text-align:center; color:#566b7a; margin: .8rem 0 0; }
.booking-side-panel { display:grid; gap:1rem; }
.booking-side-card { padding:1.45rem; color:#fffdf8; background:linear-gradient(145deg,#091e34,#123c5a 62%,#1c526f); border:1px solid rgba(225,191,122,.30); border-radius:25px; box-shadow:0 14px 34px rgba(8,22,38,.13); }
.booking-side-card .tag { color:#fff8ea; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.26); }
.booking-side-card h3 { color:#fffdf8; margin:1rem 0; font-size:1.48rem; }
.booking-how-list { list-style:none; margin:1rem 0 0; padding:0; display:grid; gap:1rem; }
.booking-how-list li { display:flex; gap:.75rem; align-items:flex-start; }
.booking-how-list li>span { font-size:.8rem; font-weight:800; color:#e7d29d; padding-top:.17rem; }
.booking-how-list p { color:#f6f6f3; opacity:.92; margin:0; font-size:.95rem; line-height:1.48; }
.booking-side-privacy { background:rgba(247,245,239,.9); border:1px solid rgba(12,45,75,.12); border-radius:20px; padding:1.22rem 1.3rem; }
.booking-side-privacy strong { color:#0c2d4b; }
.booking-side-privacy p { color:#4d6371; line-height:1.52; margin:.5rem 0 0; font-size:.89rem; }
.booking-inline-request { font-weight:700; color:#0c2d4b; font-size:.89rem; text-decoration:underline; text-underline-offset:3px; text-align:center; }
.booking-inline-request:hover { color:#1a5a7a; }
.whatsapp-contact-section .section-head { max-width:800px; }
.booking-professional-card .whatsapp-direct-button { min-height:50px; }
@media(max-width:960px) { .whatsapp-booking-layout { grid-template-columns:1fr; } .booking-side-panel{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:680px) { .whatsapp-booking-form{padding:1.3rem;} .booking-side-panel{grid-template-columns:1fr;} .booking-professional-choices { grid-template-columns:1fr; } .whatsapp-booking-form h2{font-size:1.55rem;} }


/* --- v75: contacto sin fotos y nueva especialidad infantojuvenil --- */
/* Un aspecto más limpio: nombres protagonistas en la reserva y en las consultas informativas */
.booking-professional-choice { min-height:80px; padding:1rem 1.08rem !important; gap:.8rem; }
.booking-professional-choice strong { font-size:1.08rem; }
.booking-professional-choice small { font-size:.83rem; }
.whatsapp-profile-head { align-items:flex-start; }
.whatsapp-professional-card .whatsapp-profile-head h3 { font-size:clamp(1.4rem,2vw,1.72rem); }
.whatsapp-professional-card .whatsapp-profile-head p { font-size:.94rem; line-height:1.55; }
/* Fichas de psicología infantojuvenil, integradas en el estilo de Especialidades */
.child-specialty-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; }
.child-specialty-grid .child-specialty-card { padding:1.45rem 1.55rem; }
.child-specialty-card h3 { font-size:clamp(1.12rem,1.65vw,1.34rem); margin:.1rem 0 .6rem; color:#0c2d4b; }
.child-specialty-card p { margin:0; line-height:1.55; }
.child-specialty-grid .child-specialty-card:last-child { grid-column:1/-1; background:linear-gradient(115deg,#fcfaf6,#f0f5f4) !important; }
.child-specialty-intro, .child-family-panel { background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,249,248,.95)) !important; }
.child-specialty-intro::before, .child-specialty-intro::after,
.child-family-panel::before, .child-family-panel::after { content:none !important; display:none !important; }
.child-specialty-approach::before, .child-specialty-approach::after,
.child-family-note::before, .child-family-note::after { content:none !important; display:none !important; }
@media(max-width:720px){
  .child-specialty-grid { grid-template-columns:1fr; gap:1rem; }
  .child-specialty-grid .child-specialty-card:last-child { grid-column:auto; }
  .booking-professional-choice { min-height:70px; }
}


/* --- v76: sin siluetas ni marcas de agua en todos los recuadros blancos --- */
/* No se eliminan las fotos de portada ni los fondos especiales. */
.card::before,
.card::after,
.panel:not(.working-space-panel)::before,
.panel:not(.working-space-panel)::after,
.quote-card::before,
.quote-card::after,
.callout:not(.online-anywhere-panel):not(.estes-donde-estes)::before,
.callout:not(.online-anywhere-panel):not(.estes-donde-estes)::after,
.page-hero-card:not(.team-hero-hands):not(.specialties-hero-logo):not(.specialty-hero-generic):not(.pricing-hero-path)::before,
.page-hero-card:not(.team-hero-hands):not(.specialties-hero-logo):not(.specialty-hero-generic):not(.pricing-hero-path)::after{
  content:none !important;
  display:none !important;
}


/* --- v77: teléfono directo al final de Contacto y reserva --- */
.contact-phone-section { padding-top:1.25rem; }
.contact-phone-shell {
  padding:2rem 2.15rem;
  border-radius:28px;
  background:linear-gradient(125deg,rgba(245,239,228,.92),rgba(241,247,246,.96));
  border:1px solid rgba(12,45,75,.10);
  box-shadow:0 14px 32px rgba(12,45,75,.08);
}
.contact-phone-shell .section-head { margin:0 auto 1.4rem; }
.contact-phone-shell .section-head p { color:#405b70; margin-bottom:0; }
.contact-phone-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.2rem; }
.contact-phone-card {
  padding:1.35rem 1.55rem;
  display:flex;
  flex-direction:column;
  gap:.6rem;
  border-radius:20px;
  border:1px solid rgba(12,45,75,.12);
  background:rgba(255,253,248,.98);
  box-shadow:0 8px 20px rgba(12,45,75,.07);
}
.contact-phone-role { color:#547087; font-size:.76rem; font-weight:750; text-transform:uppercase; letter-spacing:.08em; }
.contact-phone-card h3 { color:#0c2d4b; font-size:clamp(1.18rem,1.8vw,1.45rem); margin:0; }
.contact-phone-number { color:#0c2d4b; font-size:clamp(1.4rem,2.35vw,1.9rem); line-height:1.3; font-weight:750; text-decoration:none; font-variant-numeric:tabular-nums; }
.contact-phone-number:hover, .contact-phone-number:focus-visible { text-decoration:underline; text-underline-offset:3px; }
.contact-phone-button { align-self:flex-start; margin-top:.4rem; min-height:45px; }
.contact-phone-hint { font-size:.89rem; color:#536b7d; text-align:center; margin:1.2rem 0 0; }
@media(max-width:720px) {
  .contact-phone-shell { padding:1.4rem 1.15rem; }
  .contact-phone-grid { grid-template-columns:1fr; }
  .contact-phone-card { padding:1.3rem; }
  .contact-phone-button { width:100%; justify-content:center; }
}

/* v78 · Páginas legales y privacidad del cuestionario */
.legal-document { padding: clamp(1.5rem, 4vw, 3rem); max-width: 1050px; }
.legal-document h2 { font-size: clamp(1.2rem, 2.1vw, 1.55rem); color:#0c2d4b; margin: 2rem 0 .8rem; line-height: 1.3; }
.legal-document h2:first-child { margin-top: 0; }
.legal-document p { margin: 0 0 1rem; line-height:1.75; overflow-wrap:anywhere; }
.legal-document li { margin-bottom: .55rem; line-height: 1.65; }
.legal-document ul { margin:0 0 1.2rem; padding-left: 1.5rem; }
.legal-hero-card .lead { margin-bottom: 0; }
.booking-privacy-summary { font-size:.87rem; line-height:1.6; color:#36516c; margin: .2rem 0 1rem; }
.booking-privacy-summary a { color:#0c2d4b; text-decoration:underline; text-underline-offset:2px; font-weight:600; }


/* ===============================================================
   v79 — Maquetación móvil dedicada; sin cambios al escritorio.
   =============================================================== */

@media (max-width:980px){
  .site-header{backdrop-filter:none; -webkit-backdrop-filter:none}
  .site-header .nav{
    width:calc(100% - 1.5rem); padding:.5rem 0; gap:.5rem;
    flex-wrap:wrap;
  }
  .site-header .nav .logo{gap:.55rem; min-width:0}
  .site-header .logo.logo-with-text img{width:60px;height:60px;flex-shrink:0}
  .site-header .logo.logo-with-text .logo-text{padding:.42rem .75rem .44rem; max-width:calc(100vw - 169px)}
  .site-header .logo.logo-with-text .logo-title{font-size:clamp(.84rem,3.45vw,1.03rem)!important;letter-spacing:.055em;white-space:nowrap}
  .site-header .logo.logo-with-text .logo-subtitle{display:none}
  .site-header .menu-toggle{
    display:inline-flex; align-items:center; justify-content:center;
    margin-left:auto; min-height:43px; padding:.5rem .8rem;
    color:#0c2d4b; border:1px solid rgba(225,191,122,.44);
    border-radius:14px; background:#fffdf8; font-size:.91rem;
  }
  .site-header .nav-links{
    margin:0; width:100%; padding:.65rem; gap:.35rem;
    background:#f8f7f3; border-radius:19px;
    max-height:min(72svh,640px); overflow-y:auto; overscroll-behavior:contain;
    box-shadow:0 15px 30px rgba(3,18,32,.24);
  }
  .site-header .nav-links > li{width:100%}
  .site-header .nav-links > li > a.nav-link{display:block; padding:.72rem .95rem!important; border-radius:14px!important}
  .site-header .nav-links > li > a.cta-nav{text-align:center;margin-top:.35rem}
  /* En móvil, Especialidades es un enlace directo a la página general. */
  .site-header .nav-links .dropdown{display:block;padding:0;margin:0}
  .site-header .nav-links .dropdown .dropdown-menu{display:none!important}
  .site-header .nav-links .desktop-dropdown-indicator{display:none!important}
}
@media (max-width:720px){
  html{-webkit-text-size-adjust:100%}
  body{overflow-x:clip; line-height:1.57}
  body::after{display:none!important}
  .container,.footer-grid,.footer-note{width:calc(100% - 1.4rem)}
  .section{padding:2.25rem 0}
  .section.compact{padding:1.8rem 0}
  .section-head{margin-bottom:1.25rem}
  .section-head h2{font-size:clamp(1.55rem,6.7vw,2rem);line-height:1.19}
  .section-head .lead,.lead{font-size:1rem;line-height:1.62}
  h2{font-size:clamp(1.56rem,6.7vw,2rem);line-height:1.19}
  h3{font-size:1.24rem;line-height:1.27}
  .tag,.eyebrow{font-size:.8rem;line-height:1.42;padding:.43rem .7rem;margin-bottom:.75rem}
  .hero{padding:1.15rem 0 1rem}
  .hero-grid,.split,.grid-2,.grid-3,.profile-grid,.pricing-grid,.contact-grid{gap:1rem}
  .hero-panel,.hero-card,.panel,.callout,.quote-card,.card,.contact-card,.form-card,.price-card,.profile-card,.page-hero-card{
    padding:1.25rem!important; border-radius:23px;
  }
  .hero-panel{border-left-width:3px}
  .hero-panel h1{font-size:clamp(1.7rem,7vw,2rem)!important;line-height:1.16!important;letter-spacing:-.025em!important}
  .hero-panel p.lead{font-size:.985rem;line-height:1.58;margin:.5rem 0 .8rem}
  .hero-panel .actions{margin:1.1rem 0 .2rem;gap:.6rem;display:grid;grid-template-columns:1fr}
  .hero-panel .actions .button{width:100%;max-width:100%}
  .hero-card h3{font-size:1.42rem}
  .button{min-height:46px;padding:.76rem 1rem;text-align:center}
  .actions{gap:.7rem;margin:1.1rem 0}
  .card-link{margin-top:.4rem}
  .page-hero{padding:1.1rem 0 .2rem}
  .page-hero-card .breadcrumbs{font-size:.83rem}
  .page-hero-card h1{font-size:clamp(1.8rem,7.2vw,2.3rem);line-height:1.16}
  .inline-list{gap:.45rem;margin-top:.7rem}
  .inline-list span{padding:.38rem .65rem;font-size:.87rem}
  /* The three trust markers become one accessible swipeable row. */
  .clinic-strip-section{padding:1.2rem 0!important}
  .clinic-strip.clinic-strip-three{
    display:grid; grid-auto-flow:column; grid-auto-columns:minmax(215px,82%);
    grid-template-columns:none!important; overflow-x:auto;
    scroll-snap-type:x mandatory;overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;gap:.65rem;
    padding:.75rem!important;border-radius:21px;
  }
  .clinic-strip.clinic-strip-three > div{
    scroll-snap-align:start;min-height:104px;padding:1rem!important;
    border-radius:16px;
  }
  .clinic-strip.clinic-strip-three strong{font-size:.97rem}
  .clinic-strip.clinic-strip-three span{font-size:.88rem}
  .soft-list,.faq{gap:.75rem}
  .pillars{gap:.7rem}
  .pillar{padding:1rem}
  .list-check li{margin-bottom:.35rem}
  .card,.profile-card{gap:.4rem}
  .specialty-overview-grid{gap:.85rem}
  .specialty-overview-grid .specialty-overview-card{padding:1.2rem!important}
  .specialty-overview-grid .specialty-overview-card p{margin-bottom:.5rem}
  .child-specialty-grid{gap:.75rem}
  .child-specialty-grid .child-specialty-card{padding:1.15rem!important}
  .whatsapp-booking-layout{gap:1rem}
  .whatsapp-booking-form,.whatsapp-professional-card{padding:1.25rem!important}
  .booking-field-group{margin-bottom:1.15rem}
  .booking-form-intro{margin-bottom:1.15rem}
  .booking-professional-choices{gap:.6rem}
  .booking-professional-choice{min-height:66px;padding:.8rem!important}
  .booking-side-card{padding:1.22rem;border-radius:20px}
  .booking-how-list{gap:.7rem}
  .whatsapp-contact-section .section-head{margin-bottom:1rem}
  .whatsapp-professional-grid{gap:.8rem}
  .contact-phone-shell{padding:1.2rem!important;border-radius:21px}
  .contact-phone-grid{gap:.75rem}
  .contact-phone-card{padding:1rem!important}
  .contact-phone-number{font-size:1.48rem}
  .cta-band{padding:1.4rem!important;border-radius:22px;gap:.85rem}
  .cta-band .button{width:100%}
  .session-tag-row{justify-content:flex-start;gap:.5rem}
  .session-tag-row .tag{margin:0;font-size:.78rem}
  .team-photo{max-height:410px;object-fit:cover;aspect-ratio:5/4}
  .site-footer{padding:2.2rem 0 1.5rem;margin-top:1.2rem}
  .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.35rem 1rem}
  .footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}
  .site-footer h4{margin-bottom:.45rem}
  .site-footer a{margin:.22rem 0;overflow-wrap:anywhere;font-size:.94rem}
  .site-footer p{margin:.2rem 0 .4rem}
  .footer-note{margin:1.35rem auto 0;font-size:.79rem}
  .legal-document{padding:1.3rem!important}
  .legal-document h2{margin:1.3rem 0 .5rem}
}
@media (max-width:360px){
  .site-header .logo.logo-with-text img{width:52px;height:52px}
  .site-header .logo.logo-with-text .logo-text{padding:.38rem .55rem}
  .site-header .logo.logo-with-text .logo-title{font-size:.8rem!important}
  .site-header .menu-toggle{padding:.43rem .65rem}
}
