@import url('https://fonts.googleapis.com/css2?family=Allura&family=Pinyon+Script&family=Parisienne&family=Great+Vibes&display=swap');
:root{
  --cream:#F8F5F0; --cream-2:#efe9e0;
  --gold:#aeb4bb!important; --gold-lt:#edf0f2!important;
  --dark:#0d0d0d; --mid:#2a2a2a; --gray:#6f6c66; --light:#e8e4df; --white:#fff;
  --serif:"Cormorant Garamond", Georgia, serif;
  --sans:"DM Sans", system-ui, sans-serif;
  --ease:cubic-bezier(.25,.46,.45,.94);
  --pad:clamp(1.4rem,5vw,5rem);
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;font-size:85%}
body{background:var(--cream);color:var(--dark);font-family:var(--sans);font-weight:400;font-size:1rem;line-height:1.62;overflow-x:hidden}img{display:block;max-width:100%}
/* Titulares: cortes de línea limpios y sin topes que fuercen el salto */
.hero__title,.phero__title,.chapter__h,.book__info h3,.split__body h2,.shead h2,.rwall__head h2,.ctaband h2{text-wrap:balance}
.shead h2,.rwall__head h2{max-width:34ch}
a{color:inherit;text-decoration:none}
::selection{background:var(--gold);color:var(--cream)}
.serif{font-family:var(--serif)}
.eyebrow{font-size:.72rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);display:inline-flex;align-items:center;gap:.9rem}
.eyebrow::before{content:"";width:34px;height:1px;background:var(--gold);display:inline-block}
@media (hover:hover){body,a,button{cursor:none}}

/* CURSOR */
.cur,.cur-dot{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;border-radius:50%;will-change:transform}
.cur{width:50px;height:50px;margin:-25px 0 0 -25px;border:1px solid rgba(174,180,187,.7);background:rgba(13,13,13,.78) url("img/logo.png") center/84% no-repeat;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);display:grid;place-items:center;transition:width .45s var(--ease),height .45s var(--ease),background-size .45s var(--ease)}
.cur span{display:none}
.cur-dot{width:5px;height:5px;margin:-2.5px 0 0 -2.5px;background:var(--gold);transition:opacity .3s}
.cur.on{width:74px;height:74px;margin:-37px 0 0 -37px;background-color:rgba(13,13,13,.88);background-size:72%}
.cur.on span{opacity:1;transform:scale(1)}
.cur.on ~ .cur-dot{opacity:0}
@media (hover:none){.cur,.cur-dot{display:none!important}}

/* PROGRESS */
.prog{position:fixed;top:0;left:0;height:2px;width:100%;z-index:850;background:var(--gold);transform:scaleX(0);transform-origin:left;pointer-events:none}

/* PRELOADER */
.load{position:fixed;inset:0;z-index:9000;background:var(--dark);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1.6rem}
.load img{width:74px;opacity:0}
.load__line{width:0;height:1px;background:var(--gold)}
.load__n{font-family:var(--serif);font-size:1.4rem;color:var(--cream);font-style:italic}

/* NAV */
.nav{position:fixed;top:0;left:0;width:100%;z-index:800;display:flex;align-items:center;justify-content:space-between;padding:1.5rem var(--pad);mix-blend-mode:difference;color:#fff}
.nav__logo{height:40px;width:40px;object-fit:contain}
.nav__links{display:flex;gap:2.2rem}
.nav__links a{font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;opacity:.8;transition:opacity .3s}
.nav__links a:hover{opacity:1}
.nav__cta{font-size:.74rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;border:1px solid rgba(255,255,255,.5);border-radius:40px;padding:.55rem 1.1rem}
@media(max-width:900px){.nav__links{display:none}}

/* HERO (fullscreen slider) */
.hero{position:relative;height:100svh;min-height:600px;overflow:hidden;background:var(--dark);color:var(--cream);display:flex;flex-direction:column;justify-content:flex-end}
.hero__bg{position:absolute;inset:0;z-index:0;will-change:transform}
.hero__slide{position:absolute;inset:0;overflow:hidden;opacity:0}
.hero__slide img{width:100%;height:100%;object-fit:cover;object-position:center;will-change:transform}
.hero__scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(13,13,13,.5),rgba(13,13,13,.12) 42%,rgba(13,13,13,.88))}
.hero__top{position:absolute;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:13vh var(--pad) 0;z-index:3}
.hero__top .meta{font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:rgba(248,245,240,.72)}
.hero__inner{position:relative;z-index:3;padding:0 var(--pad) 11vh;max-width:1500px;width:100%}
.hero__title{font-family:var(--serif);font-weight:300;font-size:clamp(2.4rem,5.2vw,4.9rem);line-height:1.07;letter-spacing:-.01em;margin-bottom:2rem;text-shadow:0 2px 40px rgba(0,0,0,.4);max-width:34ch}
.hero__title .ln{display:block;overflow:hidden;padding-bottom:.06em}
.hero__title em{font-style:italic;color:var(--gold-lt)}
.hero__title .w{display:inline-block}
.hero__sub{max-width:48ch;color:rgba(248,245,240,.88);font-size:clamp(1.12rem,1.4vw,1.4rem);line-height:1.6;margin-bottom:2.4rem}
.hero__actions{display:flex;gap:1.1rem;align-items:center;flex-wrap:wrap}
.btn{font-family:var(--sans);font-size:.76rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;padding:1rem 2rem;border-radius:40px;display:inline-flex;align-items:center;gap:.7rem;transition:.4s var(--ease)}
.btn-gold{background:var(--gold);color:var(--dark)}
.btn-gold:hover{background:var(--gold-lt)}
.btn-line{border:1px solid rgba(255,255,255,.4);color:var(--cream)}
.btn-line:hover{background:rgba(255,255,255,.08)}
.hero__count{position:absolute;right:var(--pad);bottom:5vh;z-index:4;color:var(--cream);font-family:var(--serif);font-size:1rem;letter-spacing:.05em}
.hero__scroll{position:absolute;left:var(--pad);bottom:5vh;z-index:4;display:flex;align-items:center;gap:.8rem;font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(248,245,240,.75)}
.hero__scroll .t{width:46px;height:1px;background:rgba(255,255,255,.3);position:relative;overflow:hidden}
.hero__scroll .t i{position:absolute;left:-50%;top:0;width:50%;height:100%;background:var(--gold)}
@media(max-width:700px){.hero__count{display:none}.hero__scroll{display:none}}

/* MARQUEE */
.marq{background:var(--dark);color:var(--cream);padding:1.5rem 0;overflow:hidden;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.marq__t{display:flex;gap:3rem;white-space:nowrap;width:max-content;will-change:transform}
.marq__t span{font-family:var(--serif);font-style:italic;font-size:clamp(1.4rem,3vw,2.4rem);color:var(--cream);display:flex;align-items:center;gap:3rem}
.marq__t span::before{content:"✦";color:var(--gold);font-size:.6em;font-style:normal}

/* MANIFESTO (scrub) */
.mani{background:var(--cream);padding:8vh var(--pad);display:flex;align-items:center}
.mani__in{max-width:1100px}
.mani__txt{font-family:var(--serif);font-weight:300;font-size:clamp(1.7rem,3.9vw,3.4rem);line-height:1.22;letter-spacing:-.01em}
.mani__txt .w{display:inline-block;opacity:.14;transition:opacity .1s}
.mani__txt em{font-style:italic;color:var(--gold)}

/* SECTION HEAD */
.shead{padding:9vh var(--pad) 3vh;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1.4rem}
.shead h2{font-family:var(--serif);font-weight:300;font-size:clamp(1.85rem,3.8vw,3.2rem);line-height:1.1;letter-spacing:-.01em;max-width:32ch}
.shead h2 em{font-style:italic;color:var(--gold)}

/* STAGE — tratamientos (imagen crece + fondo cambia) */
.stage{position:relative;height:100svh;background:var(--dark);overflow:hidden;color:var(--cream)}
.stage__bg{position:absolute;inset:0}
.stage__bg .b{position:absolute;inset:0;opacity:0}
.stage__bg .b img{width:100%;height:100%;object-fit:cover;opacity:.22;transform:scale(1.08)}
.stage__bg::after{content:"";position:absolute;inset:0;background:rgba(13,13,13,.5)}
.stage__frame{position:absolute;top:50%;left:var(--pad);transform:translateY(-50%);width:40vw;height:64vh;overflow:hidden;z-index:2}
.stage__frame .f{position:absolute;inset:0;opacity:0}
.stage__frame .f img{width:100%;height:100%;object-fit:cover;will-change:transform}
.stage__panel{position:absolute;right:var(--pad);top:50%;transform:translateY(-50%);width:34vw;z-index:3}
.stage__slot{position:relative;min-height:54vh}
.stage__p{position:absolute;inset:0;opacity:0}
.stage__p .num{font-family:var(--serif);font-size:1rem;color:var(--gold);margin-bottom:1rem}
.stage__p h3{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.6vw,3.1rem);line-height:1.08;margin-bottom:1.2rem}
.stage__p h3 em{font-style:italic;color:var(--gold-lt)}
.stage__p p{color:rgba(248,245,240,.78);line-height:1.7;margin-bottom:1.5rem;max-width:40ch}
.stage__p ul{list-style:none;border-top:1px solid rgba(255,255,255,.16)}
.stage__p li{padding:.8rem 0;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;font-family:var(--serif);font-size:1.2rem}
.stage__p li span{font-family:var(--sans);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;opacity:.5;align-self:center}
.stage__bar{position:absolute;left:var(--pad);bottom:5vh;width:40vw;height:1px;background:rgba(255,255,255,.16);z-index:4}
.stage__bar i{display:block;height:100%;width:0;background:var(--gold)}
.stage__idx{position:absolute;right:var(--pad);top:14vh;z-index:4;font-family:var(--serif);color:var(--gold)}
@media(max-width:900px){.stage{display:none}}
/* fallback móvil tratamientos */
.tcards{display:none}
@media(max-width:900px){.tcards{display:block;background:var(--dark);color:var(--cream);padding:10vh var(--pad)}
  .tcard{margin-bottom:6vh}.tcard img{width:100%;height:48vh;object-fit:cover;margin-bottom:1.2rem}
  .tcard h3{font-family:var(--serif);font-weight:300;font-size:2rem;font-style:italic}.tcard p{color:rgba(248,245,240,.75);margin-top:.6rem}}

/* SPLIT MEDIA */
.split{display:grid;grid-template-columns:1fr 1fr;min-height:90vh}
.split.cream{background:var(--cream)}
.split.dark{background:var(--dark);color:var(--cream)}
.split__media{position:relative;overflow:hidden}
.split__media img{width:100%;height:100%;object-fit:cover}
.split__body{display:flex;flex-direction:column;justify-content:center;padding:9vh 6vw}
.split__body h2{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.8vw,3.4rem);line-height:1.08;margin:1.5rem 0}
.split__body h2 em{font-style:italic;color:var(--gold)}
.split__body p{color:var(--gray);font-size:clamp(1.1rem,1.4vw,1.35rem);line-height:1.75;max-width:48ch;margin-bottom:1.2rem}
.split.dark .split__body p{color:rgba(248,245,240,.72)}
.creds{margin-top:2rem;display:flex;flex-direction:column;gap:1rem}
.cred{display:flex;align-items:center;gap:1rem;font-size:.95rem}
.cred::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--gold)}
@media(max-width:900px){.split{grid-template-columns:1fr}.split__media{height:60vh;order:-1}}

/* FEATURED / STATS */
.feat{background:var(--dark);color:var(--cream);padding:11vh var(--pad)}
.feat__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2.5rem;margin-top:6vh;border-top:1px solid rgba(255,255,255,.12);padding-top:5vh}
.feat b{display:block;font-family:var(--serif);font-weight:300;font-size:clamp(2.4rem,4.4vw,3.9rem);line-height:1.05;color:var(--gold-lt)}
.feat span{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(248,245,240,.6);margin-top:.8rem;display:block}
@media(max-width:760px){.feat__grid{grid-template-columns:1fr 1fr;gap:3rem}}

/* TEAM */
.team{background:var(--cream);padding:6vh var(--pad) 16vh}
.team__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:2vh}
.tm figure{height:54vh;overflow:hidden;margin-bottom:1.1rem}
.tm img{width:100%;height:110%;object-fit:cover}
.tm h4{font-family:var(--serif);font-weight:400;font-size:1.5rem}
.tm span{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);display:block;margin-top:.3rem}
@media(max-width:760px){.team__grid{grid-template-columns:1fr;gap:3rem}}

/* GALLERY horizontal */
.gal{position:relative;background:var(--dark);overflow:hidden}
.gal__track{display:flex;align-items:center;height:100svh;gap:3vw;padding:0 var(--pad);width:max-content}
.gal__intro{flex:0 0 auto;width:min(70vw,360px);color:var(--cream)}
.gal__intro h2{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,4vw,3.2rem);line-height:1.05}
.gal__intro h2 em{font-style:italic;color:var(--gold)}
.gal__intro p{margin-top:1.2rem;color:rgba(248,245,240,.7);max-width:32ch}
.gfig{flex:0 0 auto;position:relative;overflow:hidden}
.gfig img{width:100%;height:100%;object-fit:cover}
.gfig.t{width:min(60vw,320px);height:62vh}
.gfig.w{width:min(78vw,520px);height:50vh}
.gfig cap,.gfig figcaption{position:absolute;left:1rem;bottom:1rem;color:var(--cream);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:900px){.gal__track{flex-direction:column;height:auto;width:auto;padding:10vh var(--pad);gap:4vh}.gal__intro,.gfig{width:100%!important}.gfig{height:56vh!important}}

/* TESTIMONIALS */
.test{position:relative;height:100svh;background:var(--cream);overflow:hidden}
.test__it{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;padding:0 8vw;opacity:0}
.test__it q{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(1.8rem,4vw,3.4rem);line-height:1.3;max-width:24ch}
.test__it q::before{content:"“";color:var(--gold)}.test__it q::after{content:"”";color:var(--gold)}
.test__it .by{margin-top:2.5rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.test__big{position:absolute;right:6vw;bottom:2vh;font-family:var(--serif);font-size:clamp(7rem,22vw,20rem);color:rgba(169,143,99,.1);pointer-events:none;line-height:.7}

/* FAQ */
.faq{background:var(--dark);color:var(--cream);padding:10vh var(--pad)}
.faq h2{font-family:var(--serif);font-weight:300;font-size:clamp(2.3rem,4.6vw,4rem);margin-bottom:7vh;text-align:center}
.faq h2 em{font-style:italic;color:var(--gold)}
.faq__list{border-top:1px solid rgba(255,255,255,.12);max-width:1000px;margin:0 auto}
.faq__it{border-bottom:1px solid rgba(255,255,255,.12)}
.faq__q{width:100%;background:none;border:none;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:2rem .2rem;text-align:left;color:var(--cream);font-family:var(--serif);font-weight:400;font-size:clamp(1.2rem,2.4vw,1.8rem)}
.faq__ic{flex:0 0 auto;width:26px;height:26px;position:relative}
.faq__ic::before,.faq__ic::after{content:"";position:absolute;top:50%;left:50%;width:15px;height:1px;background:var(--gold);transform:translate(-50%,-50%)}
.faq__ic::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .4s var(--ease)}
.faq__it.open .faq__ic::after{transform:translate(-50%,-50%) rotate(0)}
.faq__a{overflow:hidden;height:0}
.faq__a p{padding:0 .2rem 2.2rem;max-width:70ch;color:rgba(248,245,240,.68);line-height:1.75;font-size:clamp(1.05rem,1.25vw,1.25rem)}
.faq h2{margin-bottom:2.4vh}
.faq__intro{max-width:66ch;color:rgba(248,245,240,.62);line-height:1.7;margin:0 auto 6vh;font-size:clamp(1.12rem,1.35vw,1.35rem);text-align:center}
.rwall__head p{max-width:44ch;color:rgba(248,245,240,.65);line-height:1.65;font-size:clamp(1.05rem,1.25vw,1.25rem)}

/* ===== Lista de tratamientos con imagen flotante en hover ===== */
.trx{position:relative;background:var(--dark);color:var(--cream);padding:2vh var(--pad) 14vh}
.trx__list{max-width:1200px;margin:0 auto}
.trx__it{display:flex;align-items:center;gap:2.4rem;padding:2.6rem .4rem;text-decoration:none;color:var(--cream);position:relative;transition:opacity .45s var(--ease),padding-left .55s var(--ease)}
.trx__name{flex:0 0 auto;font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,3.4vw,2.7rem);line-height:1.1;transition:color .5s var(--ease);min-width:0}
.trx__d{flex:1 1 auto;color:rgba(248,245,240,.55);line-height:1.6;font-size:.98rem;max-width:42ch;transition:opacity .45s var(--ease)}
.trx__go{flex:0 0 auto;font-size:.74rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);opacity:.65;transform:none;white-space:nowrap;transition:opacity .45s var(--ease),transform .45s var(--ease)}
.trx.hovering .trx__it{opacity:.34}
.trx.hovering .trx__it.act{opacity:1;padding-left:1.4rem}
.trx__it.act .trx__name{color:var(--gold-lt)}
.trx__it.act .trx__go{opacity:1;transform:translateX(0)}
.trx__float{position:fixed;left:0;top:0;width:300px;height:380px;pointer-events:none;z-index:55;opacity:0;overflow:hidden;will-change:transform,opacity;transition:opacity .4s var(--ease);box-shadow:0 30px 80px rgba(0,0,0,.45)}
.trx__float img{width:100%;height:100%;object-fit:cover;object-position:50% 22%}
.trx__float.on{opacity:1}
.trx__cta{display:flex;justify-content:center;margin-top:8vh}

/* ===== Pilares (home): paneles de imagen que se expanden ===== */
.pillars{display:flex;gap:.7rem;padding:2vh var(--pad);height:62vh;min-height:500px}
.pillars__p{position:relative;flex:1;overflow:hidden;border-radius:4px;cursor:pointer;display:flex;align-items:flex-end;transition:flex .65s cubic-bezier(.76,0,.24,1)}
.pillars__p:hover{flex:2.8}
.pillars__p>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 28%;filter:brightness(.58) saturate(.92);transition:transform 1.1s var(--ease),filter .6s var(--ease)}
.pillars__p:hover>img{transform:scale(1.06);filter:brightness(.82) saturate(1)}
.pillars__p::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 34%,rgba(11,10,9,.9));z-index:1}
.pillars__in{position:relative;z-index:2;padding:2.4rem 2.1rem;color:var(--cream);width:100%}
.pillars__in .eyebrow{display:none}
.pillars__in h3{font-family:var(--serif);font-weight:300;font-size:clamp(1.5rem,2.1vw,2.5rem);line-height:1.12;margin:0}
.pillars__in h3::before{content:"✦";color:var(--gold);font-size:.5em;margin-right:.6rem;vertical-align:middle}
.pillars__in p{color:rgba(248,245,240,.86);font-size:clamp(1.02rem,1.2vw,1.28rem);line-height:1.62;max-width:46ch;margin-top:1.1rem;opacity:0;transform:translateY(12px);max-height:0;overflow:hidden;transition:opacity .5s var(--ease) .12s,transform .5s var(--ease) .12s,max-height .6s var(--ease)}
.pillars__p:hover .pillars__in p{opacity:1;transform:none;max-height:280px}
@media(max-width:860px){
  .pillars{flex-direction:column;height:auto;gap:1rem;padding:2vh var(--pad)}
  .pillars__p{flex:none;min-height:52vh}
  .pillars__p:hover{flex:none}
  .pillars__p>img{filter:brightness(.74)}
  .pillars__p::after{background:linear-gradient(180deg,transparent 44%,rgba(11,10,9,.92))}
  .pillars__in p{opacity:1;transform:none;max-height:none}
}

/* ===== Ocultar contador del hero ===== */
.hero__count{display:none}

/* ===== Móvil: que el texto no tape tanto las fotos del hero ===== */
@media(max-width:760px){
  .hero__title{font-size:clamp(1.7rem,6.4vw,2.4rem);line-height:1.12;margin-bottom:1rem}
  .hero__sub{font-size:1rem;max-width:38ch;margin-bottom:1.4rem}
  .hero__top{padding-top:17vh}
  .hero__inner{padding:0 var(--pad) 5vh}
  .hero__scrim{background:linear-gradient(180deg,rgba(13,13,13,.12),transparent 32%,transparent 54%,rgba(13,13,13,.84))}
  .phero__title{font-size:clamp(1.7rem,6vw,2.3rem);line-height:1.12}
  .phero__sub{font-size:1rem;max-width:36ch}
  .phero__inner{padding:0 var(--pad) 5vh}
  .phero__scrim{background:linear-gradient(180deg,rgba(13,13,13,.12),transparent 34%,transparent 56%,rgba(13,13,13,.82))}
}

/* ===== Grano de textura (todo el sitio) ===== */
.grain{position:fixed;inset:0;z-index:9000;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:200px 200px}

/* ===== Zoom suave en tarjetas con figura ===== */
.tm figure{overflow:hidden}
.tm figure img{transition:transform 1.2s var(--ease)}
.tm:hover figure img{transform:scale(1.06)}

/* ===== Franja de fotos en movimiento (ambiente) ===== */
.photomarq{background:var(--dark);overflow:hidden;padding:1.2rem 0;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}
.photomarq__t{display:flex;gap:1rem;width:max-content;will-change:transform}
.photomarq__t img{height:44vh;width:auto;aspect-ratio:4/5;flex:0 0 auto;object-fit:cover;object-position:50% 25%;border-radius:3px;filter:saturate(.96)}
@media(max-width:760px){.photomarq__t img{height:28vh}}

/* ===== CTA por sección ===== */
.seccta{display:flex;justify-content:center;padding:0 var(--pad)}
.split .seccta{justify-content:flex-start;padding:0;margin-top:2.4rem}
.vals .seccta,.faq .seccta{padding-top:6vh}
.rwall .seccta{padding-top:7vh}

/* ===== Formulario de contacto rápido (home) ===== */
.qform{background:var(--dark);color:var(--cream);padding:10vh var(--pad)}
.qform__in{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start}
.qform__intro .eyebrow{display:inline-block;margin-bottom:1.6rem}
.qform__intro h2{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,4vw,3.4rem);line-height:1.1}
.qform__intro h2 em{color:var(--gold)}
.qform__intro p{color:rgba(248,245,240,.65);line-height:1.8;margin-top:1.8rem;max-width:42ch}
.qform__alt{display:flex;flex-direction:column;gap:.5rem;margin-top:2.6rem}
.qform__alt a,.qform__alt span{font-family:var(--serif);font-size:1.2rem;color:var(--cream)}
.qform__alt a{color:var(--gold-lt)}
.qform__form{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem 1.4rem}
.qfield{display:flex;flex-direction:column;gap:.5rem}
.qfield--full{grid-column:1/-1}
.qfield label{font-size:.72rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:rgba(248,245,240,.6)}
.qfield input,.qfield select,.qfield textarea{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.16);color:var(--cream);padding:.95rem 1rem;font-family:var(--sans);font-size:.98rem;border-radius:4px;transition:border-color .3s}
.qfield input::placeholder,.qfield textarea::placeholder{color:rgba(248,245,240,.4)}
.qfield input:focus,.qfield select:focus,.qfield textarea:focus{outline:none;border-color:var(--gold)}
.qfield textarea{resize:vertical}
.qfield select{appearance:none}
.qform__form .btn{grid-column:1/-1;justify-content:center;margin-top:.4rem}
.qform__legal{grid-column:1/-1;font-size:.74rem;color:rgba(248,245,240,.45);line-height:1.6;margin:0}
@media(max-width:860px){.qform__in{grid-template-columns:1fr;gap:3rem}.qform__form{grid-template-columns:1fr}}

/* ===== Libro: scroll fijado, lados alternos + dinamismo ===== */
.book{position:relative;background:var(--dark);color:var(--cream)}
.book__sticky{height:100vh;position:relative;overflow:hidden}
.book__page{position:absolute;inset:0;display:grid;grid-template-columns:1fr 1fr;align-items:stretch;opacity:0;visibility:hidden;transition:opacity .55s var(--ease),visibility .55s}
.book__page.on{opacity:1;visibility:visible}
.book__page--rev .book__media{order:2}
.book__page--rev .book__info{order:1}
.book__media{position:relative;overflow:hidden}
.book__media img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transform:scale(1.16);clip-path:inset(0 0 24% 0);transition:transform 1.7s var(--ease),clip-path 1.25s var(--ease)}
.book__page--rev .book__media img{clip-path:inset(0 24% 0 0)}
.book__page.on .book__media img{transform:scale(1);clip-path:inset(0 0 0 0)}
.book__info{display:flex;flex-direction:column;justify-content:center;padding:0 clamp(2rem,6vw,7rem)}
.book__info .eyebrow{display:inline-block;color:rgba(248,245,240,.6);margin-bottom:1.2rem}
.book__info h3{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.6vw,3.2rem);line-height:1.1;margin-bottom:1.4rem}
.book__info h3 em{color:var(--gold-lt)}
.book__info p{color:rgba(248,245,240,.82);font-size:clamp(1.02rem,1.45vw,1.3rem);line-height:1.6;margin-bottom:1.8rem;max-width:44ch}
.book__pts{list-style:none;padding:0;margin:0 0 2.2rem;display:flex;flex-wrap:wrap;gap:.6rem}
.book__pts li{font-size:.78rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--gold-lt);border:1px solid rgba(174,180,187,.4);padding:.55rem 1rem;border-radius:40px}
.book__info > *{opacity:0;transform:translateY(34px);transition:opacity .7s var(--ease),transform .8s var(--ease)}
.book__page.on .book__info > *{opacity:1;transform:none}
.book__page.on .book__info > *:nth-child(1){transition-delay:.12s}
.book__page.on .book__info > *:nth-child(2){transition-delay:.22s}
.book__page.on .book__info > *:nth-child(3){transition-delay:.32s}
.book__page.on .book__info > *:nth-child(4){transition-delay:.42s}
.book__page.on .book__info > *:nth-child(5){transition-delay:.52s}
@media(max-width:860px){
  .book__head{display:none}
  .book{padding:1vh var(--pad) 3vh}
  .book__sticky{height:auto;display:block;overflow:visible}
  .book__page{position:relative;inset:auto;opacity:1;visibility:visible;display:block;border-radius:12px;overflow:hidden;background:#141312;margin-bottom:1.5rem;box-shadow:0 16px 40px rgba(0,0,0,.25)}
  .book__page--rev .book__media,.book__page--rev .book__info{order:0}
  .book__media{position:relative;height:auto;aspect-ratio:4/3}
  .book__media img{position:absolute;inset:0;width:100%;height:100%;clip-path:none}
  .book__info{padding:2.4rem 1.8rem 2.8rem}
  .book__info > *{opacity:1;transform:none}
}
@media(max-width:760px){
  .trx__it{flex-wrap:wrap;gap:.5rem;padding:2rem .2rem;border-bottom:1px solid rgba(255,255,255,.1)}
  .trx__d{flex-basis:100%;max-width:none}
  .trx__float{display:none}
  .trx.hovering .trx__it{opacity:1}
}

/* CONTACT */
.contact{background:var(--cream);padding:11vh var(--pad)}
.contact__big{font-family:var(--serif);font-weight:300;font-size:clamp(2.2rem,4.6vw,4.2rem);line-height:1.05;letter-spacing:-.01em;max-width:16ch}
.contact__big .ln{display:block;overflow:hidden;padding-bottom:.05em}
.contact__big em{font-style:italic;color:var(--gold)}
.contact__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:8vh;border-top:1px solid var(--light);padding-top:4vh}
.contact__grid h4{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);margin-bottom:1rem}
.contact__grid a,.contact__grid p{font-family:var(--serif);font-size:1.4rem;font-weight:400;line-height:1.4}
.contact__cta{margin-top:6vh}
@media(max-width:900px){.contact__grid{grid-template-columns:1fr;gap:2.2rem}}

/* FOOTER */
.footer{background:#080808;color:var(--cream);padding:0 0 3vh}
.footer__marq{border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1);padding:1.4rem 0;overflow:hidden}
.footer__bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:5vh var(--pad) 0;font-size:.76rem;letter-spacing:.04em;opacity:.6}
.footer__disc{padding:2.5vh var(--pad) 0;max-width:62ch;font-size:.76rem;line-height:1.6;opacity:.4}
/* ===== CURTAIN ===== */
.curtain{position:fixed;inset:0;z-index:9000;background:var(--dark);display:grid;place-items:center;transform:translateY(0)}
.curtain img{width:68px;opacity:0}

/* ===== PHERO (page hero) ===== */
.phero{position:relative;height:74svh;min-height:480px;overflow:hidden;background:var(--dark);color:var(--cream);display:flex;flex-direction:column;justify-content:flex-end}
.phero__bg{position:absolute;inset:0;z-index:0;overflow:hidden}
.phero__bg img{width:100%;height:100%;object-fit:cover;object-position:center;will-change:transform}
.phero__scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(13,13,13,.45),rgba(13,13,13,.1) 45%,rgba(13,13,13,.85))}
.phero__inner{position:relative;z-index:3;padding:0 var(--pad) 9vh;max-width:1500px}
.phero__ey{display:inline-block;margin-bottom:1.4rem}
.phero__title{font-family:var(--serif);font-weight:300;font-size:clamp(2.2rem,4.8vw,4.3rem);line-height:1.08;letter-spacing:-.01em;text-shadow:0 2px 40px rgba(0,0,0,.4);max-width:30ch}
.phero__title .ln{display:block;overflow:hidden;padding-bottom:.06em}
.phero__title em{font-style:italic;color:var(--gold-lt)}
.phero__title .w{display:inline-block}
.phero__sub{max-width:50ch;color:rgba(248,245,240,.88);font-size:clamp(1.2rem,1.45vw,1.45rem);line-height:1.6;margin-top:1.8rem}

/* ===== MODAL / POP-UP ===== */
.modal{position:fixed;inset:0;z-index:9500;display:none;clip-path:circle(0px at 50% 50%)}
.modal__bg{position:absolute;inset:0;background:rgba(13,13,13,.9)}
.modal__inner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:8vh var(--pad)}
.modal__card{position:relative;background:var(--cream);color:var(--dark);max-width:920px;width:100%;display:grid;grid-template-columns:1fr 1.1fr;overflow:hidden}
.modal__card img{width:100%;height:100%;object-fit:cover;min-height:440px}
.modal__txt{padding:clamp(2rem,3.5vw,3.4rem)}
.modal__txt .role{font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);display:block;margin-bottom:1rem}
.modal__txt h3{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.5vw,3rem);line-height:1;margin-bottom:1.2rem}
.modal__txt p{color:var(--gray);line-height:1.75;margin-bottom:1rem}
.modal__txt ul{list-style:none;border-top:1px solid var(--light);margin-top:1.4rem}
.modal__txt li{padding:.7rem 0;border-bottom:1px solid var(--light);display:flex;justify-content:space-between;font-family:var(--serif);font-size:1.1rem}
.modal__txt li span{font-family:var(--sans);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);align-self:center}
.modal__close{position:absolute;top:4vh;right:var(--pad);z-index:5;background:none;border:1px solid var(--cream);color:var(--cream);border-radius:40px;padding:.6rem 1.2rem;font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;gap:.5rem;align-items:center}
@media(max-width:760px){.modal__card{grid-template-columns:1fr}.modal__card img{min-height:240px;max-height:34vh}}

/* ===== VALUES ===== */
.vals{display:grid;grid-template-columns:1fr 1fr;gap:4vh 5rem;padding:6vh var(--pad) 9vh}
.vrow{display:block;grid-template-columns:none;position:relative;padding:.3rem 0 .5rem 2rem}
.vrow::before{content:"";position:absolute;left:0;top:.5rem;bottom:.5rem;width:2px;background:rgba(174,180,187,.5);transition:background .45s var(--ease),width .45s var(--ease)}
.vrow:hover::before{background:var(--gold);width:3px}
.vrow .vi{display:none}
.vrow h3{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,2.8vw,2.3rem);margin-bottom:.7rem;transition:color .4s var(--ease)}
.vrow:hover h3{color:var(--gold)}
.vrow p{color:var(--gray);line-height:1.75;max-width:46ch}
.vals .seccta{grid-column:1/-1}
.vals.dark{background:var(--dark);color:var(--cream)}
.vals.dark .vrow:hover h3{color:var(--gold-lt)}
.vals.dark .vrow p{color:rgba(248,245,240,.66)}
/* ===== Marquesina de valores (equipo) ===== */
.vmarq{background:var(--dark);color:var(--cream);padding:9vh 0;overflow:hidden}
.vmarq__t{display:flex;width:max-content;will-change:transform}
.vmarq .vrow{flex:0 0 auto;width:clamp(300px,30vw,440px);padding:.6rem 3vw;display:block}
.vmarq .vrow h3{color:var(--cream);margin-bottom:.8rem}
.vmarq .vrow p{color:rgba(248,245,240,.66);max-width:none}
@media(max-width:760px){.vmarq .vrow{width:80vw;padding:.6rem 6vw}}
/* ===== Estancias de la clínica (rejilla de fotos) ===== */
.rooms{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem;padding:2vh var(--pad) 9vh}
.room__img{overflow:hidden;border-radius:6px;aspect-ratio:4/5;margin-bottom:1.5rem}
.room__img img{width:100%;height:100%;object-fit:cover;object-position:50% 28%;transition:transform 1.2s var(--ease)}
.room:hover .room__img img{transform:scale(1.06)}
.room__n{font-family:var(--serif);color:var(--gold);font-size:1.05rem;letter-spacing:.05em}
.room h3{font-family:var(--serif);font-weight:300;font-size:clamp(1.5rem,2.1vw,2rem);line-height:1.1;margin:.5rem 0 .9rem}
.room p{color:var(--gray);line-height:1.7;font-size:1.02rem}
@media(max-width:820px){.rooms{grid-template-columns:1fr;gap:3.5rem;padding:2vh var(--pad) 7vh}.room__img{aspect-ratio:16/10}}
@media(max-width:760px){.vals{grid-template-columns:1fr;gap:3.6vh;padding:7vh var(--pad) 10vh}}
@media(max-width:760px){.vrow{grid-template-columns:1fr;gap:.4rem}}

/* ===== STICKY GALLERY ===== */
.sticky{position:relative;background:var(--cream);display:grid;grid-template-columns:1fr 1fr}
.sticky__pin{position:sticky;top:0;height:100svh;overflow:hidden}
.sticky__img{position:absolute;inset:0}
.sticky__img img{width:100%;height:100%;object-fit:cover}
.sticky__right{padding:0 var(--pad)}
.sticky__cap{min-height:100svh;display:flex;flex-direction:column;justify-content:center}
.sticky__cap .n{font-family:var(--serif);color:var(--gold);font-size:1.2rem;margin-bottom:1rem}
.sticky__cap h3{font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.05;margin-bottom:1.2rem}
.sticky__cap p{color:var(--gray);line-height:1.8;max-width:42ch}
@media(max-width:900px){.sticky{grid-template-columns:1fr}.sticky__pin{height:58svh;position:relative}.sticky__cap{min-height:auto;padding:8vh 0}}

/* ===== QUOTE LINES ===== */
.qlines{padding:11vh var(--pad);background:var(--cream);text-align:center}
.qline{font-family:var(--serif);font-weight:300;font-size:clamp(1.6rem,3.4vw,3rem);line-height:1.25;padding:1.8rem 0;border:none}
.qline em{font-style:italic;color:var(--gold)}
.qline .x{display:none}

/* ===== INFO CARDS ===== */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:5vh var(--pad) 14vh}
.cardi{background:var(--dark);color:var(--cream);padding:3rem 2rem;min-height:42vh;display:flex;flex-direction:column;justify-content:space-between}
.cardi .num{font-family:var(--serif);color:var(--gold);font-size:1.4rem}
.cardi h3{font-family:var(--serif);font-weight:300;font-size:1.8rem;margin:2rem 0 1rem}
.cardi p{color:rgba(248,245,240,.66);line-height:1.7;font-size:.95rem}
@media(max-width:820px){.cards{grid-template-columns:1fr}}

/* ===== CONTACT FORM ===== */
.split-2{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:start;padding:12vh var(--pad)}
.cform{display:grid;grid-template-columns:1fr;gap:1.2rem;max-width:560px;margin-top:3vh}
.cform input,.cform textarea{background:transparent;border:none;border-bottom:1px solid var(--light);padding:1rem .2rem;font-family:var(--sans);font-size:1rem;color:var(--dark)}
.cform textarea{min-height:90px;resize:vertical}
.cform input:focus,.cform textarea:focus{outline:none;border-color:var(--gold)}
.team__pop{margin-top:1rem;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
@media(max-width:900px){.split-2{grid-template-columns:1fr;gap:3rem}}
/* ===== STEPS (proceso) ===== */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;padding:6vh var(--pad) 14vh}
.step{border-top:1px solid rgba(13,13,13,.16);padding-top:1.5rem}
.step .num{font-family:var(--serif);color:var(--gold);font-size:2rem}
.step h4{font-family:var(--serif);font-weight:400;font-size:1.4rem;margin:1rem 0 .6rem}
.step p{color:var(--gray);font-size:.95rem;line-height:1.65}
.steps.dark{background:var(--dark);color:var(--cream)}
.steps.dark .step{border-color:rgba(255,255,255,.16)}
.steps.dark .step p{color:rgba(248,245,240,.66)}
@media(max-width:820px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.steps{grid-template-columns:1fr}}

/* tiles clicables (tratamientos/equipo) */
.tm[data-modal]{cursor:none}
.tm__more{display:inline-block;margin-top:.6rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
@media(max-width:900px){.sticky__img{position:relative}.sticky__img:not(:first-child){display:none}}
.nav__links a.active{opacity:1}
/* ===== hover zoom + util ===== */
.tm figure{overflow:hidden}
.tm img{transition:transform .8s var(--ease)}
.tm:hover img{transform:scale(1.06)}
.split__media{overflow:hidden}
.split__media img{transition:transform .9s var(--ease)}
.gfig img{transition:transform .9s var(--ease)}
.gfig:hover img{transform:scale(1.05)}
.reveal-img{overflow:hidden}
/* teaser tratamientos en home: banda 4-up */
.tease{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;padding:4vh var(--pad) 13vh}
.tease a{position:relative;overflow:hidden;height:48vh;display:block}
.tease img{width:100%;height:100%;object-fit:cover;transition:transform .9s var(--ease)}
.tease a:hover img{transform:scale(1.06)}
.tease__t{position:absolute;left:1.2rem;bottom:1.2rem;z-index:2;color:var(--cream);font-family:var(--serif);font-size:1.5rem;font-style:italic}
.tease a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(13,13,13,.6))}
@media(max-width:900px){.tease{grid-template-columns:1fr 1fr;gap:.8rem}.tease a{height:38vh}}
@media(max-width:520px){.tease{grid-template-columns:1fr}}
.team__grid.g4{grid-template-columns:repeat(4,1fr)}
.team__grid.g4 .tm figure{height:38vh}
@media(max-width:900px){.team__grid.g4{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.team__grid.g4{grid-template-columns:1fr}}
/* ===== INDEX HERO (menú creativo con reveal de imagen) ===== */
.idxhero{position:relative;height:100svh;min-height:620px;overflow:hidden;background:var(--dark);color:var(--cream)}
.idxhero__bg{position:absolute;inset:0;z-index:0}
.idxhero__bg .im{position:absolute;inset:0;overflow:hidden;opacity:0;will-change:opacity}
.idxhero__bg .im img{width:100%;height:100%;object-fit:cover;object-position:center}
.idxhero__veil{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(13,13,13,.85),rgba(13,13,13,.45))}
.idxhero__top{position:absolute;top:0;left:0;width:100%;display:flex;justify-content:space-between;gap:1rem;padding:13vh var(--pad) 0;z-index:3;font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgba(248,245,240,.82)}
.idxmenu{position:relative;z-index:3;height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 var(--pad)}
.idxmenu__lead{max-width:40ch;color:rgba(248,245,240,.82);margin-bottom:3.2vh;font-size:1.05rem}
.idxitem{display:flex;align-items:baseline;gap:1.4rem;padding:.3rem 0;color:var(--cream);opacity:.5;transition:opacity .4s var(--ease),transform .55s var(--ease)}
.idxitem .n{font-size:.78rem;font-weight:500;letter-spacing:.1em;color:var(--gold)}
.idxitem h2{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(1.9rem,4.6vw,3.8rem);line-height:1.1}
.idxmenu:hover .idxitem{opacity:.3}
.idxitem:hover{opacity:1;transform:translateX(20px)}
.idxhint{position:absolute;bottom:5vh;left:var(--pad);z-index:3;display:flex;align-items:center;gap:.8rem;font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgba(248,245,240,.72)}
.idxhint .ln{width:40px;height:1px;background:var(--gold)}
@media(max-width:700px){.idxmenu__lead{display:none}.idxitem h2{font-size:2rem}}
/* ===== JOURNEY (scroll horizontal cinematográfico) ===== */
.journey{position:relative;height:100svh;overflow:hidden;background:var(--dark)}
.jtrack{display:flex;height:100svh;width:max-content;will-change:transform}
.panel{flex:0 0 auto;width:100vw;height:100svh;position:relative;display:flex;flex-direction:column;justify-content:center;padding:0 var(--pad);overflow:hidden}
.panel.cream{background:var(--cream);color:var(--dark)}
.panel.dark{background:var(--dark);color:var(--cream)}
.panel__n{position:absolute;top:13vh;left:var(--pad);font-size:.72rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.panel__eye{margin-bottom:1.6rem}
.panel__h{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,4.4vw,4rem);line-height:1.08;max-width:15ch}
.panel__h em{font-style:italic;color:var(--gold)}
.panel.dark .panel__h em{color:var(--gold-lt)}
.panel__sub{max-width:42ch;margin-top:1.6rem;font-size:1.05rem;color:var(--gray)}
.panel.dark .panel__sub{color:rgba(248,245,240,.74)}
.panel__link{margin-top:2.6rem;display:inline-flex;align-items:center;gap:.7rem;font-size:.74rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.panel__link .ln{width:30px;height:1px;background:var(--gold);transition:width .4s var(--ease)}
.panel__link:hover .ln{width:54px}
/* panel imagen a sangre */
.panel.img{padding:0;justify-content:flex-end}
.pimg{position:absolute;inset:0;overflow:hidden}
.pimg img{width:112%;height:100%;object-fit:cover;object-position:center;will-change:transform}
.panel.img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,13,13,.25),rgba(13,13,13,.72))}
.pcap{position:relative;z-index:3;color:var(--cream);padding:0 var(--pad) 12vh;max-width:22ch}
.pcap h2{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,4.5vw,4rem);line-height:1.05}
.pcap h2 em{font-style:italic;color:var(--gold-lt)}
/* panel split (imagen + texto) */
.panel.split2{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:4vw;width:88vw}
.panel.split2 .pm{height:70vh;overflow:hidden}
.panel.split2 .pm img{width:100%;height:112%;object-fit:cover}
/* panel tratamientos (fila) */
.panel.treat{width:auto;flex-direction:row;align-items:center;gap:1.5rem;padding-right:6vw}
.treat__intro{flex:0 0 auto;width:30vw;min-width:280px}
.ptile{flex:0 0 auto;width:24vw;min-width:260px;height:62vh;position:relative;overflow:hidden}
.ptile img{width:100%;height:112%;object-fit:cover}
.ptile span{position:absolute;left:1rem;bottom:1rem;color:var(--cream);font-family:var(--serif);font-style:italic;font-size:1.6rem;z-index:2}
.ptile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(13,13,13,.6))}
.jprog{position:fixed;bottom:0;left:0;height:3px;background:var(--gold);width:100%;transform:scaleX(0);transform-origin:left;z-index:851;pointer-events:none}
.jcue{position:absolute;bottom:5vh;right:var(--pad);z-index:6;color:rgba(248,245,240,.72);font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase}
.panel.cream .jcue{color:var(--gray)}
@media(max-width:900px){
  .journey{height:auto;overflow:visible}
  .jtrack{flex-direction:column;width:auto;height:auto}
  .panel,.panel.split2,.panel.treat{width:100%!important;height:auto;min-height:88vh;flex-direction:column;align-items:flex-start;justify-content:center;gap:2rem;padding:12vh var(--pad)}
  .panel.split2 .pm,.treat__intro{width:100%}
  .ptile{width:100%;height:46vh}
  .panel.treat{flex-direction:column}
  .jprog,.jcue{display:none}
  .pcap{padding:0 var(--pad) 8vh}
}
/* ===== LOOKBOOK (capítulos a pantalla completa) ===== */
.sideindex{position:fixed;right:var(--pad);top:50%;transform:translateY(-50%);z-index:700;display:flex;flex-direction:column;gap:1.1rem;mix-blend-mode:difference;color:#fff}
.sideindex a{display:flex;align-items:center;gap:.7rem;font-size:.7rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;opacity:.45;transition:opacity .4s var(--ease)}
.sideindex a .dot{width:7px;height:7px;border-radius:50%;border:1px solid #fff;transition:background .4s}
.sideindex a.active{opacity:1}
.sideindex a.active .dot{background:#fff}
@media(max-width:820px){.sideindex{display:none}}

.chapter{position:relative;height:100svh;min-height:600px;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end;color:var(--cream)}
.chapter.intro{justify-content:center}
.chapter.cream{background:var(--cream);color:var(--dark)}
.chapter__bg{position:absolute;inset:0;z-index:0;overflow:hidden}
.chapter__bg img{width:100%;height:118%;object-fit:cover;object-position:center;will-change:transform}
.chapter::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(13,13,13,.4),rgba(13,13,13,.12) 38%,rgba(13,13,13,.82))}
.chapter.cream::after{display:none}
.chapter.intro::after{background:linear-gradient(180deg,rgba(13,13,13,.55),rgba(13,13,13,.4))}
.chapter__in{position:relative;z-index:3;padding:0 var(--pad) 12vh;max-width:1300px;width:100%}
.chapter.intro .chapter__in{padding:0 var(--pad)}
.chapter__n{font-size:.74rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1.4rem;display:block}
.chapter__eye{margin-bottom:1.4rem}
.chapter__h{font-family:var(--serif);font-weight:300;font-size:clamp(2.2rem,4.8vw,4.4rem);line-height:1.08;max-width:17ch;text-shadow:0 2px 40px rgba(0,0,0,.4)}
.chapter.intro .chapter__h{font-size:clamp(2.4rem,5.2vw,4.9rem);max-width:16ch}
.chapter.cream .chapter__h{text-shadow:none}
.chapter__h em{font-style:italic;color:var(--gold-lt)}
.chapter.cream .chapter__h em{color:var(--gold)}
.chapter__sub{max-width:46ch;margin-top:1.6rem;font-size:1.05rem;color:rgba(248,245,240,.88)}
.chapter.cream .chapter__sub{color:var(--gray)}
.chapter__link{margin-top:2.2rem;display:inline-flex;gap:.7rem;align-items:center;font-size:.74rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.chapter__link .ln{width:30px;height:1px;background:var(--gold);transition:width .4s var(--ease)}
.chapter__link:hover .ln{width:54px}
.chapter__cue{position:absolute;left:var(--pad);bottom:5vh;z-index:4;display:flex;align-items:center;gap:.8rem;font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgba(248,245,240,.72)}
.chapter__cue .t{width:1px;height:42px;background:rgba(255,255,255,.3);position:relative;overflow:hidden}
.chapter__cue .t i{position:absolute;left:0;top:-50%;width:100%;height:50%;background:var(--gold)}
.chapter__info{display:flex;gap:3rem;flex-wrap:wrap;margin-top:2rem;font-family:var(--serif);font-size:1.3rem}
.chapter__info a{color:var(--gold-lt)}
/* ===== LOOKBOOK PINNED (bloques que aparecen sin scroll visible) ===== */
.lookbook{position:relative;height:100svh;overflow:hidden;background:var(--dark)}
.lookbook .chapter{position:absolute;inset:0;height:100svh;min-height:0}
.lookbook .chapter__bg img{height:120%}
/* contraste capítulos (frases legibles sobre la imagen) */
.chapter::after{background:linear-gradient(180deg,rgba(13,13,13,.55),rgba(13,13,13,.32) 36%,rgba(13,13,13,.9))}
.chapter__h,.chapter__sub{text-shadow:0 2px 30px rgba(0,0,0,.5)}
.chapter__h .w{display:inline-block}

/* ===== TESTIMONIOS (marquee de tarjetas) ===== */
.tmarq{background:var(--cream);padding:13vh 0;overflow:hidden}
.tmarq__head{padding:0 var(--pad) 5vh;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1rem}
.tmarq__head h2{font-family:var(--serif);font-weight:300;font-size:clamp(1.8rem,3.6vw,3rem);line-height:1.06;max-width:20ch}
.tmarq__head h2 em{font-style:italic;color:var(--gold)}
.tmarq__track{display:flex;gap:1.5rem;width:max-content;will-change:transform;padding:0 .75rem}
.tcardq{flex:0 0 auto;width:min(82vw,440px);background:var(--white);border:1px solid var(--light);padding:2.6rem 2.4rem;display:flex;flex-direction:column;justify-content:space-between}
.tcardq q{font-family:var(--serif);font-style:italic;font-weight:300;font-size:1.42rem;line-height:1.38;color:var(--dark)}
.tcardq q::before{content:"“";color:var(--gold)}.tcardq q::after{content:"”";color:var(--gold)}
.tcardq .by{margin-top:1.8rem;font-size:.72rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
/* ===== HEADER con fondo + logo más grande ===== */
.nav{mix-blend-mode:normal;color:var(--cream);background:rgba(14,13,12,.55);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav__logo{height:56px;width:56px}
.nav__links a{color:var(--cream)}
.nav__links a::after{background:var(--gold)}
.nav__cta{border-color:rgba(255,255,255,.45);color:var(--cream)}
.nav__cta:hover{background:var(--gold);border-color:var(--gold);color:var(--dark)}
.curtain img{width:92px}

/* ===== TESTIMONIOS (cita grande rotativa) ===== */
.tquotes{position:relative;background:var(--dark);color:var(--cream);padding:18vh var(--pad);overflow:hidden}
.tquotes .eyebrow{display:inline-block;margin-bottom:6vh}
.tquotes__stage{position:relative;min-height:42vh;z-index:2}
.tq{position:absolute;left:0;top:0;width:100%;opacity:0}
.tq q{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.8rem,4vw,3.4rem);line-height:1.3;max-width:24ch;display:block;color:var(--cream)}
.tq q .w{display:block;overflow:hidden;padding-bottom:.04em}
.tq q::before{content:"“";color:var(--gold)}.tq q::after{content:"”";color:var(--gold)}
.tq .by{margin-top:2.6rem;font-size:.76rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.tquotes__nav{display:flex;gap:.8rem;margin-top:5vh;position:relative;z-index:2}
.tquotes__dot{width:42px;height:2px;background:rgba(255,255,255,.22);border:none;padding:0;transition:background .4s var(--ease)}
.tquotes__dot.active{background:var(--gold)}
.tquotes__big{position:absolute;right:4vw;top:10vh;font-family:var(--serif);font-size:clamp(8rem,20vw,18rem);color:rgba(255,255,255,.045);pointer-events:none;line-height:.7;z-index:1}
/* ===== TESTIMONIOS v2 (limpio, crema, pestañas) ===== */
.tquotes{background:var(--cream);color:var(--dark);padding:16vh var(--pad)}
.tquotes .eyebrow{display:inline-block;margin-bottom:5vh}
.tquotes__big{display:none}
.tquotes__stage{position:relative;min-height:36vh;max-width:26ch}
.tq{position:absolute;left:0;top:0;width:100%;opacity:0}
.tq q{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.6rem,3.6vw,3rem);line-height:1.3;color:var(--dark)}
.tq q::before{content:"“";color:var(--gold)}.tq q::after{content:"”";color:var(--gold)}
.tq .by{margin-top:2.2rem;font-size:.74rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.tquotes__nav{display:flex;gap:2rem;flex-wrap:wrap;margin-top:6vh;border-top:1px solid var(--light);padding-top:3vh}
.tquotes__dot{background:none;border:none;padding:0;font-family:var(--sans);font-size:.76rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--gray);opacity:.6;display:flex;align-items:center;gap:.7rem;transition:opacity .35s,color .35s}
.tquotes__dot::before{content:"";width:16px;height:1px;background:var(--gray);transition:width .4s var(--ease),background .4s}
.tquotes__dot.active{opacity:1;color:var(--dark)}
.tquotes__dot.active::before{width:36px;background:var(--gold)}
/* ===== Fuente de acento tipo firma (como el logo) ===== */
em{font-family:"Great Vibes","Pinyon Script",cursive!important;font-style:normal!important;font-weight:400;font-size:1.5em;letter-spacing:.01em;line-height:1}
.hero__title em,.phero__title em,.chapter__h em,.panel__h em,.contact__big em,.pcap h2 em{font-size:1.55em}
/* aire extra para que el script no se recorte en titulares con clip */
.hero__title .ln,.phero__title .ln,.contact__big .ln{padding-bottom:.22em;overflow:visible}
.chapter__h,.hero__title,.phero__title{line-height:1.08}
.hero__title .ln,.phero__title .ln,.contact__big .ln{overflow:hidden;padding:.16em 0 .24em}
/* ===== MARQUESINAS: script blanco, bucle ===== */
.marq__t span{font-family:"Great Vibes","Pinyon Script",cursive;color:#fff;font-style:normal;font-weight:400;font-size:clamp(1.9rem,4.2vw,3.4rem);letter-spacing:.01em}
.marq__t span::before{content:"·";font-family:var(--sans);color:var(--gold);font-size:.45em;margin:0 .5em;vertical-align:middle}

/* ===== MURO DE RESEÑAS (dos columnas en bucle, sentidos opuestos) ===== */
.rwall{position:relative;background:var(--dark);color:var(--cream);padding:10vh var(--pad);overflow:hidden}
.rwall__head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1rem;margin-bottom:5vh}
.rwall__head h2{font-family:var(--serif);font-weight:300;font-size:clamp(2.1rem,4.2vw,3.6rem);line-height:1.06;max-width:26ch}
.rwall__head h2 em{color:var(--gold-lt)}
.rwall__cols{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;height:68vh;overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(180deg,transparent,#000 12%,#000 86%,transparent);mask-image:linear-gradient(180deg,transparent,#000 12%,#000 86%,transparent)}
.rcol{display:flex;flex-direction:column;gap:1.4rem;will-change:transform}
.rcard{border:none;background:transparent;padding:.6rem 0}
.rcard q{font-family:var(--serif);font-style:italic;font-weight:300;font-size:clamp(1.3rem,1.7vw,1.6rem);line-height:1.45;display:block;color:var(--cream)}
.rcard q::before{content:"“";color:var(--gold)}.rcard q::after{content:"”";color:var(--gold)}
.rcard .by{margin-top:1.3rem;font-size:.8rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
@media(max-width:760px){.rwall__cols{grid-template-columns:1fr;height:62vh}.rcol.r2{display:none}}
/* ===== Fotos: encuadre hacia arriba para no cortar cabezas ===== */
.ph,.hero__bg img,.phero__bg img,.tm img,.gfig img,.stage__frame .f img,.stage__bg .b img,.chapter__bg img,.split__media img,.modal__card img,.sticky__img img,.pimg img,.pm img,.ptile img,.media2 .m img,.expand__frame img,.tcard img{object-position:50% 20%}
.tm img,.gfig img{object-position:50% 14%}
.modal__card img{object-position:50% 16%}

/* ===== Banda CTA ===== */
.ctaband{background:var(--cream);color:var(--dark);padding:11vh var(--pad);text-align:center}
.ctaband .eyebrow{display:flex;justify-content:center;margin-bottom:2.4rem}
.ctaband h2{font-family:var(--serif);font-weight:300;font-size:clamp(2.2rem,5.5vw,4.4rem);line-height:1.04;margin-bottom:3.4rem;max-width:18ch;margin-left:auto;margin-right:auto}
.ctaband h2 em{color:var(--gold)}
.ctaband.dark{background:var(--dark);color:var(--cream)}
/* ===== NAV menos "cortante" + encuadre heroes ===== */
.nav{background:linear-gradient(180deg,rgba(13,13,13,.72),rgba(13,13,13,0))!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border-bottom:none!important}
.phero__bg img,.chapter__bg img,.hero__bg img{object-position:50% 9%}
@media(max-width:900px){.nav__cta{display:none}}

/* ===== DESPLEGABLE TRATAMIENTOS ===== */
.nav__has{position:relative;display:inline-flex;align-items:center}
.nav__drop{position:absolute;top:100%;left:50%;transform:translate(-50%,10px);background:rgba(12,11,10,.96);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.1);padding:.5rem 0;min-width:215px;opacity:0;visibility:hidden;transition:.3s var(--ease);display:flex;flex-direction:column}
.nav__has:hover .nav__drop{opacity:1;visibility:visible;transform:translate(-50%,0)}
.nav__drop a{padding:.66rem 1.5rem;font-size:.8rem;font-weight:500;letter-spacing:.02em;text-transform:none;color:var(--cream);opacity:.84;white-space:nowrap}
.nav__drop a::after{display:none!important}
.nav__drop a:hover{opacity:1;color:var(--gold-lt);background:rgba(255,255,255,.05)}

/* ===== MENÚ MÓVIL ===== */
.nav__burger{display:none}
@media(max-width:900px){
  .nav__burger{display:flex;flex-direction:column;justify-content:center;gap:6px;width:36px;height:36px;background:none;border:none;cursor:pointer;position:fixed;top:1.5rem;right:var(--pad);z-index:8200;mix-blend-mode:difference}
  .nav__burger span{display:block;height:1.8px;width:100%;background:#fff;transition:.35s var(--ease)}
  .nav__burger.x span:nth-child(1){transform:translateY(4px) rotate(45deg)}
  .nav__burger.x span:nth-child(2){transform:translateY(-4px) rotate(-45deg)}
}
.mnav{position:fixed;inset:0;z-index:8000;background:var(--dark);color:var(--cream);display:flex;flex-direction:column;justify-content:center;padding:16vh var(--pad) 8vh;transform:translateY(-100%);visibility:hidden;overflow-y:auto;transition:transform .55s cubic-bezier(.76,0,.24,1),visibility .55s}
.mnav.open{visibility:visible;transform:translateY(0)}
.mnav>a{font-family:var(--serif);font-weight:300;font-size:clamp(1.9rem,8vw,2.6rem);color:var(--cream);padding:.3rem 0;line-height:1.12}
.mnav .msub{display:flex;flex-direction:column;padding:.5rem 0 1rem 1.3rem;border-left:1px solid rgba(255,255,255,.16);margin:.5rem 0 1rem}
.mnav .msub a{font-family:var(--sans);font-size:1.05rem;color:rgba(248,245,240,.72);padding:.32rem 0;letter-spacing:.02em}
.mnav__cta{margin-top:3vh;align-self:flex-start;font-size:.8rem!important}

/* ===== CTA FLOTANTE (marketing) ===== */
.fab{position:fixed;right:clamp(.9rem,2.5vw,1.8rem);bottom:clamp(.9rem,2.5vw,1.8rem);z-index:760;display:flex;align-items:center;gap:.7rem}
.fab__main{background:var(--gold);color:var(--dark);padding:.95rem 1.5rem;border-radius:50px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;font-size:.74rem;box-shadow:0 14px 34px rgba(0,0,0,.3);display:inline-flex;gap:.55rem;align-items:center;white-space:nowrap;transition:background .3s}
.fab__main:hover{background:var(--gold-lt)}
.fab__main::after{content:"→";transition:transform .4s var(--ease)}
.fab__main:hover::after{transform:translateX(5px)}
.fab__wa{width:56px;height:56px;border-radius:50%;background:#25D366;display:grid;place-items:center;box-shadow:0 14px 34px rgba(37,211,102,.4);animation:fabpulse 2.6s infinite;flex:0 0 auto}
.fab__wa svg{width:30px;height:30px;fill:#fff}
@keyframes fabpulse{0%,100%{box-shadow:0 14px 34px rgba(37,211,102,.4)}50%{box-shadow:0 14px 34px rgba(37,211,102,.4),0 0 0 14px rgba(37,211,102,.08)}}
@media(max-width:600px){.fab__main{padding:.85rem 1.2rem;font-size:.7rem}}
/* ===== NAV sticky oscura al hacer scroll ===== */
.nav{transition:background .45s var(--ease),padding .45s var(--ease),box-shadow .45s var(--ease)}
.nav.scrolled{background:rgba(10,10,9,.92)!important;-webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important;padding-top:1rem;padding-bottom:1rem;box-shadow:0 1px 0 rgba(255,255,255,.07)}
/* ===== FIX: page-hero no choca con la cabecera + script más comedido ===== */
.phero{height:100svh;min-height:620px}
.phero__inner{padding:0 var(--pad) 9vh}
.phero__title{font-size:clamp(2rem,4.4vw,3.8rem);line-height:1.14;max-width:30ch}
.phero__sub{margin-top:1.4rem}
.hero__title{font-size:clamp(2rem,4.6vw,4rem);line-height:1.12}
.contact__big{font-size:clamp(2.2rem,5vw,4.4rem)}
/* caligrafía de acento: elegante pero sin pasarse */
em{font-size:1.3em!important}
.phero__title em,.hero__title em,.chapter__h em,.contact__big em,.panel__h em,.pcap h2 em,.mani__txt em{font-size:1.3em!important}
.chapter__h{font-size:clamp(2.2rem,5vw,4.4rem);line-height:1.12}
/* Acento caligrafico estilo logo (Allura) */
em,.phero__title em,.hero__title em,.chapter__h em,.contact__big em,.panel__h em,.pcap h2 em,.mani__txt em,.rwall__head h2 em,.tq q em{font-family:'Allura','Pinyon Script',cursive!important;font-style:normal!important;font-size:1.5em!important;letter-spacing:.02em}
/* ===== Acento: dorado champan calido ===== */
:root{--gold:#aeb4bb!important;--gold-lt:#edf0f2!important;line-height:1!important;margin:0 .06em!important}
.ctaband h2,.chapter__h,.phero__title,.hero__title,.contact__big,.mani__txt,.qline,.shead h2,.rwall__head h2,.split__body h2,.gal__intro h2,.stage__p h3{line-height:1.32!important}
.ctaband h2{max-width:22ch}
/* ===== HOVER de botones (shine + lift) ===== */
.btn{position:relative;overflow:hidden;transition:transform .35s var(--ease),background .35s var(--ease),color .35s var(--ease),box-shadow .35s var(--ease)}
.btn::before{content:"";position:absolute;top:0;left:-130%;width:55%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.42),transparent);transform:skewX(-22deg);transition:left .65s var(--ease);pointer-events:none}
.btn:hover::before{left:150%}
.btn>*{position:relative;z-index:1}
.btn:hover{transform:translateY(-2px)}
.btn-gold:hover{box-shadow:0 14px 34px rgba(174,180,187,.45)}
.btn-line:hover{box-shadow:0 14px 34px rgba(0,0,0,.18)}
.fab__main{position:relative;overflow:hidden}
.fab__main::before{content:"";position:absolute;top:0;left:-130%;width:55%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.55),transparent);transform:skewX(-22deg);transition:left .65s var(--ease);pointer-events:none}
.fab__main:hover::before{left:150%}
.fab__main:hover{transform:translateY(-2px)}
.fab__wa{transition:transform .3s var(--ease)}
.fab__wa:hover{transform:scale(1.08)}
.nav__cta{position:relative;overflow:hidden;transition:background .4s var(--ease),color .4s var(--ease),transform .35s var(--ease)}
.nav__cta:hover{transform:translateY(-1px)}
/* ===== Lookbook: sin parpadeo inicial (evita el "bug") ===== */
.lookbook .chapter{opacity:0}
.lookbook .chapter:first-child{opacity:1}
/* ===== Pretitulos fuera ===== */
.eyebrow,.chapter__n,.panel__n,.show__top,.stage__top{display:none!important}
/* ===== Logo del header con más protagonismo ===== */
.nav__logo{height:76px;width:76px;transition:height .4s var(--ease),width .4s var(--ease)}
.nav.scrolled .nav__logo{height:58px;width:58px}
@media(max-width:600px){.nav__logo{height:60px;width:60px}}
/* ===== Logo de la cortina de transición más grande ===== */
.curtain img{width:150px!important}
@media(max-width:600px){.curtain img{width:110px!important}}
/* ===== Accesibilidad: foco visible ===== */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:2px}
/* ===== Lookbook en móvil: sin pin, apilado natural ===== */
@media(max-width:900px){
  .lookbook{height:auto;overflow:visible}
  .lookbook .chapter{position:relative;inset:auto;opacity:1!important;height:100svh}
}
/* ===== Fallback si GSAP no carga ===== */
.nogsap .curtain{display:none!important}
.nogsap .lookbook,.nogsap .stage{height:auto!important}
.nogsap .lookbook .chapter,.nogsap .stage__frame .f,.nogsap .stage__p,.nogsap .stage__bg .b,.nogsap .test__it,.nogsap .tq,.nogsap .hero__slide{position:relative!important;inset:auto!important;opacity:1!important;visibility:visible!important;clip-path:none!important}
.nogsap #smooth-wrapper,.nogsap #smooth-content{transform:none!important}
.nogsap .cur,.nogsap .cur-dot{display:none!important}
.nogsap body{cursor:auto!important}
/* ===== Acentos dorados y botones planos ===== */
/* Se recupera el dorado original y se eliminan degradados, brillos y relieves metálicos. */
em,.metal{
  background:none!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-fill-color:var(--gold)!important;
  color:var(--gold)!important;
  text-shadow:none!important;
  display:inline!important;
  transform:none!important;
  will-change:auto!important;
}
.btn-gold,.btn-wa,.fab__main{
  background:var(--gold)!important;
  color:var(--dark)!important;
  border:1px solid var(--gold)!important;
  box-shadow:none!important;
}
.btn-gold:hover,.btn-wa:hover,.fab__main:hover{
  background:var(--gold-lt)!important;
  color:var(--dark)!important;
  box-shadow:none!important;
  transform:none!important;
}
.btn::before,.fab__main::before{content:none!important;display:none!important;}
.nav__cta:hover{
  background:rgba(174,180,187,.16)!important;
  color:var(--cream)!important;
  border-color:var(--gold)!important;
  box-shadow:none!important;
}

/* ===== Adaptación móvil (consolidado) ===== */
@media(max-width:760px){
  .book__info{padding:2.2rem 1.7rem 2.6rem}
  .book__info h3{font-size:clamp(1.65rem,6.4vw,2.2rem);margin-bottom:.9rem}
  .book__info p{font-size:.96rem;line-height:1.58;margin-bottom:1.3rem}
  .book__pts li{font-size:.72rem}
  .mani__txt{font-size:clamp(1.5rem,6.4vw,2.1rem);line-height:1.3}
  .feat b{font-size:2.6rem}
  .feat__grid{gap:2.2rem;padding-top:4vh;margin-top:4vh}
  .split__body{padding:8vh var(--pad)}
  .shead{padding:7vh var(--pad) 2vh}
  .pillars__in h3{font-size:clamp(1.5rem,6vw,2rem)}
  .pillars__in p{font-size:1.02rem}
  .qform__intro h2{font-size:clamp(1.7rem,6.5vw,2.3rem)}
  .qform__form{gap:1.2rem}
  .rwall__head h2{font-size:clamp(1.8rem,6.5vw,2.4rem)}
  .rcard q{font-size:clamp(1.15rem,4.6vw,1.4rem)}
}

/* ===== Red de seguridad responsive (todo el sitio) ===== */
html,body{max-width:100%}
*{min-width:0}
.marq__t,.vmarq__t,.photomarq__t{min-width:max-content}
@media(max-width:560px){
  :root{--pad:1.15rem}
  .feat__grid{grid-template-columns:1fr;gap:2.4rem}
  .mani__txt{font-size:clamp(1.4rem,6.6vw,1.95rem);line-height:1.32}
  .book__info h3{font-size:clamp(1.55rem,6.6vw,1.95rem)}
  .room__img{aspect-ratio:16/11}
  .btn{padding:.92rem 1.6rem}
  .steps{padding:5vh var(--pad) 8vh}
  .qform__intro h2,.split__body h2,.faq h2,.shead h2{font-size:clamp(1.6rem,7vw,2.1rem)}
}

/* =====================================================================
   BIDOT — MÓVIL NATIVO v1.3
   Mismo carácter visual que desktop, sin espacios vacíos ni GSAP.
   ===================================================================== */
@media (max-width:900px){
  html.bidot-mobile,
  html.bidot-mobile body{overflow-x:clip;overscroll-behavior-x:none}
  html.bidot-mobile body.bidot-menu-open,
  html.bidot-mobile body.bidot-modal-open{overflow:hidden}
  html.bidot-mobile #smooth-wrapper,
  html.bidot-mobile #smooth-content{transform:none!important;will-change:auto!important}

  html.bidot-mobile .curtain{transition:transform .58s cubic-bezier(.76,0,.24,1);z-index:9000}
  html.bidot-mobile .curtain.mobile-out{transform:translateY(-100%)}
  html.bidot-mobile .curtain img{opacity:1!important}

  html.bidot-mobile .nav{
    min-height:70px;padding:calc(env(safe-area-inset-top,0px) + .55rem) var(--pad) .55rem;
    background:linear-gradient(180deg,rgba(8,8,8,.82),rgba(8,8,8,.04))!important;
    mix-blend-mode:normal;color:#fff;
  }
  html.bidot-mobile .nav.scrolled{background:rgba(10,10,10,.93)!important;padding:calc(env(safe-area-inset-top,0px) + .48rem) var(--pad) .48rem;box-shadow:0 1px 0 rgba(255,255,255,.08)}
  html.bidot-mobile .nav__logo{width:52px;height:52px}
  html.bidot-mobile .nav__burger{top:calc(env(safe-area-inset-top,0px) + .82rem);right:var(--pad);width:42px;height:42px;padding:8px;mix-blend-mode:normal}
  html.bidot-mobile .mnav{min-height:100dvh;padding:calc(env(safe-area-inset-top,0px) + 6.2rem) var(--pad) calc(env(safe-area-inset-bottom,0px) + 2rem)}
  html.bidot-mobile .mnav>a{font-size:clamp(1.65rem,8.4vw,2.35rem);padding:.34rem 0}
  html.bidot-mobile .mnav .msub{padding-left:1rem;margin:.55rem 0 .8rem}
  html.bidot-mobile .mnav .msub a{font-size:.96rem;padding:.36rem 0}

  /* HERO: la fotografía ocupa la mayor parte de la pantalla y el texto vive en la zona baja. */
  html.bidot-mobile .hero{height:100svh;min-height:600px;isolation:isolate}
  html.bidot-mobile .phero{height:min(78svh,690px);min-height:510px;isolation:isolate}
  html.bidot-mobile .hero__bg,
  html.bidot-mobile .phero__bg{
    transform:translate3d(0,var(--mobile-bg-shift,0px),0) scale(var(--mobile-bg-scale,1.04))!important;
    transform-origin:50% 30%;transition:transform .08s linear;will-change:transform;
  }
  html.bidot-mobile .hero__slide{opacity:0!important;visibility:visible!important;clip-path:none!important;z-index:0;transition:opacity 1.1s var(--ease)}
  html.bidot-mobile .hero__slide.is-active{opacity:1!important;z-index:1}
  html.bidot-mobile .hero__slide img,
  html.bidot-mobile .phero__bg img{transform:scale(1.035)!important;object-position:50% 13%!important;transition:transform 1.2s var(--ease)}
  html.bidot-mobile .hero__slide.is-active img{transform:scale(1.075)!important}
  html.bidot-mobile .hero__scrim{background:linear-gradient(180deg,rgba(9,9,9,.10) 0%,rgba(9,9,9,.01) 42%,rgba(9,9,9,.26) 57%,rgba(9,9,9,.92) 100%)!important}
  html.bidot-mobile .phero__scrim{background:linear-gradient(180deg,rgba(9,9,9,.14),rgba(9,9,9,.02) 43%,rgba(9,9,9,.86) 100%)!important}
  html.bidot-mobile .hero__top{padding-top:calc(env(safe-area-inset-top,0px) + 6.2rem)}
  html.bidot-mobile .hero__inner,
  html.bidot-mobile .phero__inner{
    transform:translate3d(0,calc(var(--mobile-progress,0) * -24px),0)!important;
    opacity:calc(1 - (var(--mobile-progress,0) * .34))!important;
    padding:0 var(--pad) calc(env(safe-area-inset-bottom,0px) + 1.8rem)!important;
    max-width:31rem;transition:opacity .08s linear,transform .08s linear;
  }
  html.bidot-mobile .hero__title,
  html.bidot-mobile .phero__title{max-width:15ch;font-size:clamp(2.05rem,9vw,3.05rem)!important;line-height:1.06!important;margin-bottom:.85rem!important}
  html.bidot-mobile .hero__sub,
  html.bidot-mobile .phero__sub{font-size:.94rem!important;line-height:1.48!important;max-width:32ch!important;margin-bottom:1.15rem!important;color:rgba(248,245,240,.92)}
  html.bidot-mobile .hero__sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:5;overflow:hidden}
  html.bidot-mobile .phero__sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
  html.bidot-mobile .hero__actions{display:flex;flex-wrap:wrap;width:100%;gap:.65rem}
  html.bidot-mobile .hero__actions .btn{justify-content:center;padding:.82rem 1.1rem;font-size:.65rem}
  html.bidot-mobile .hero__scroll,
  html.bidot-mobile .hero__count{display:none!important}

  /* Ritmo vertical contenido: se eliminan los huecos excesivos. */
  html.bidot-mobile .mani{padding:6.5vh var(--pad)}
  html.bidot-mobile .mani__txt{font-size:clamp(1.55rem,7.3vw,2.25rem);line-height:1.28!important}
  html.bidot-mobile .shead{padding:7vh var(--pad) 2.5vh;gap:.8rem}
  html.bidot-mobile .shead h2{font-size:clamp(1.95rem,8vw,2.55rem);line-height:1.15!important}
  html.bidot-mobile .split{min-height:0}
  html.bidot-mobile .split__media{height:42svh;min-height:270px;max-height:440px;order:-1}
  html.bidot-mobile .split__body{padding:6.8vh var(--pad) 7.4vh}
  html.bidot-mobile .split__body h2{font-size:clamp(1.95rem,7.8vw,2.55rem);line-height:1.16!important;margin:1rem 0!important}
  html.bidot-mobile .split__body p{font-size:1rem;line-height:1.68;margin-bottom:1rem}
  html.bidot-mobile .feat{padding:7vh var(--pad)}
  html.bidot-mobile .feat__grid{grid-template-columns:1fr 1fr;gap:1.7rem 1rem;margin-top:3.4vh;padding-top:3.4vh}
  html.bidot-mobile .feat b{font-size:clamp(2.25rem,10vw,3.05rem)}

  /* Pilares: selección táctil con una tarjeta destacada, sin paredes de espacio. */
  html.bidot-mobile .pillars{padding:1.5vh var(--pad);gap:.72rem}
  html.bidot-mobile .pillars__p,
  html.bidot-mobile .pillars.mobile-pillars-ready .pillars__p{min-height:190px;transition:min-height .52s var(--ease),transform .45s var(--ease),filter .45s var(--ease)}
  html.bidot-mobile .pillars.mobile-pillars-ready .pillars__p.is-active{min-height:350px}
  html.bidot-mobile .pillars__p>img{filter:brightness(.56) saturate(.9)}
  html.bidot-mobile .pillars__p.is-active>img{transform:scale(1.055);filter:brightness(.8) saturate(1)}
  html.bidot-mobile .pillars__in{padding:1.25rem 1.2rem}
  html.bidot-mobile .pillars__in h3{font-size:clamp(1.35rem,6.5vw,1.85rem)}
  html.bidot-mobile .pillars.mobile-pillars-ready .pillars__in p{opacity:0;transform:translateY(12px);max-height:0;margin-top:0;overflow:hidden;transition:opacity .38s var(--ease),transform .45s var(--ease),max-height .5s var(--ease),margin .45s var(--ease)}
  html.bidot-mobile .pillars.mobile-pillars-ready .pillars__p.is-active .pillars__in p{opacity:1;transform:none;max-height:250px;margin-top:.8rem}
  html.bidot-mobile .pillars + .seccta{padding:3vh var(--pad) 7vh!important}

  /* Libro de tratamientos en flujo natural, sin pin ni transparencias. */
  html.bidot-mobile .book{padding:1vh var(--pad) 6vh}
  html.bidot-mobile .book__page{margin-bottom:1rem;border-radius:10px;box-shadow:0 10px 28px rgba(0,0,0,.21)}
  html.bidot-mobile .book__media{aspect-ratio:4/3}
  html.bidot-mobile .book__media img{transform:scale(1.02)!important;clip-path:none!important}
  html.bidot-mobile .book__info{padding:1.85rem 1.3rem 2rem}
  html.bidot-mobile .book__info h3{font-size:clamp(1.6rem,6.6vw,2.05rem);line-height:1.12!important;margin-bottom:.8rem}
  html.bidot-mobile .book__info p{font-size:.9rem;line-height:1.58;margin-bottom:1.1rem}
  html.bidot-mobile .book__info>*{opacity:1!important;transform:none!important}

  /* Galería de tecnología con swipe real y una tarjeta activa. */
  html.bidot-mobile .gal{overflow:visible}
  html.bidot-mobile .gal__track{flex-direction:row;height:auto;width:100%;overflow-x:auto;overflow-y:hidden;padding:6vh var(--pad) 7vh;gap:.9rem;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  html.bidot-mobile .gal__track::-webkit-scrollbar,
  html.bidot-mobile .vmarq__t::-webkit-scrollbar,
  html.bidot-mobile .tmarq__track::-webkit-scrollbar{display:none}
  html.bidot-mobile .gal__intro,
  html.bidot-mobile .gfig{flex:0 0 84vw!important;width:84vw!important;scroll-snap-align:center}
  html.bidot-mobile .gal__intro{padding:.3rem .15rem 1rem}
  html.bidot-mobile .gfig{height:min(50svh,430px)!important;opacity:.55!important;transform:scale(.95)!important;transition:opacity .38s var(--ease),transform .42s var(--ease)}
  html.bidot-mobile .gfig.is-active{opacity:1!important;transform:scale(1)!important}
  html.bidot-mobile .gfig figcaption{font-size:.64rem;left:.9rem;right:.9rem;bottom:.85rem}
  html.bidot-mobile .vmarq.mobile-swipe-ready{padding:6vh 0}
  html.bidot-mobile .vmarq.mobile-swipe-ready .vmarq__t,
  html.bidot-mobile .tmarq.mobile-swipe-ready .tmarq__track{transform:none!important;width:100%;overflow-x:auto;overflow-y:hidden;display:flex;gap:.85rem;padding:0 var(--pad) .5rem;scroll-snap-type:x mandatory;scroll-padding-inline:var(--pad);-webkit-overflow-scrolling:touch;scrollbar-width:none}
  html.bidot-mobile .vmarq.mobile-swipe-ready .vrow,
  html.bidot-mobile .tmarq.mobile-swipe-ready .tcardq{flex:0 0 min(80vw,350px);scroll-snap-align:start}
  html.bidot-mobile .vmarq.mobile-swipe-ready .vrow{padding:.85rem .3rem .85rem 0}

  /* Lista de tratamientos: abre la foto del tratamiento activo al tocar. */
  html.bidot-mobile .trx{padding:1vh var(--pad) 7vh}
  html.bidot-mobile .trx__it{display:grid;grid-template-columns:1fr auto;gap:.55rem .85rem;padding:1.1rem 0;border-bottom:1px solid rgba(255,255,255,.12)}
  html.bidot-mobile .trx__name{font-size:clamp(1.45rem,7vw,2.05rem)}
  html.bidot-mobile .trx__d{grid-column:1/-1;max-width:none;font-size:.94rem;line-height:1.58}
  html.bidot-mobile .trx__go{align-self:end;font-size:.6rem}
  html.bidot-mobile .trx__mobile-media{display:block;grid-column:1/-1;max-height:0;overflow:hidden;opacity:0;margin:0;transition:max-height .58s var(--ease),opacity .38s var(--ease),margin .42s var(--ease)}
  html.bidot-mobile .trx__mobile-media img{width:100%;height:27svh;min-height:190px;max-height:280px;object-fit:cover;object-position:50% 20%;transform:scale(1.06);transition:transform .7s var(--ease)}
  html.bidot-mobile .trx__it.is-active .trx__mobile-media{max-height:290px;opacity:1;margin:.45rem 0 .2rem}
  html.bidot-mobile .trx__it.is-active .trx__mobile-media img{transform:scale(1)}
  html.bidot-mobile .trx__it.is-active .trx__name{color:var(--gold-lt)}
  html.bidot-mobile .trx__float{display:none!important}

  html.bidot-mobile .steps{grid-template-columns:1fr;gap:1.5rem;padding:6vh var(--pad) 7vh}
  html.bidot-mobile .step{padding:1rem 0 0}
  html.bidot-mobile .vals{grid-template-columns:1fr;padding:6vh var(--pad) 7vh;gap:1.45rem}
  html.bidot-mobile .vrow{padding-left:1rem}
  html.bidot-mobile .cards{grid-template-columns:1fr;padding:4vh var(--pad) 7vh;gap:.85rem}
  html.bidot-mobile .cardi{min-height:0;padding:1.9rem 1.3rem}
  html.bidot-mobile .team{padding:4vh var(--pad) 7vh}
  html.bidot-mobile .team__grid.g4{grid-template-columns:1fr 1fr;gap:1rem}
  html.bidot-mobile .tm figure{height:39svh;min-height:260px}
  html.bidot-mobile .rooms{gap:2rem;padding:2vh var(--pad) 7vh}
  html.bidot-mobile .room__img{aspect-ratio:5/4}
  html.bidot-mobile .qlines{padding:6vh var(--pad)}
  html.bidot-mobile .qline{font-size:clamp(1.55rem,6.8vw,2.2rem);padding:1rem 0;text-align:left}

  /* Testimonios sin huecos: una cita visible y pestañas táctiles. */
  html.bidot-mobile .test{height:auto;overflow:visible;padding:6vh var(--pad)}
  html.bidot-mobile .test__it{position:relative;inset:auto;display:none;padding:0;opacity:1!important}
  html.bidot-mobile .test__it:first-child{display:flex}
  html.bidot-mobile .tquotes{padding:7vh var(--pad)}
  html.bidot-mobile .tquotes__stage{min-height:0;max-width:100%}
  html.bidot-mobile .tq{position:relative;display:none;opacity:1!important;visibility:visible!important}
  html.bidot-mobile .tq.is-active{display:block}
  html.bidot-mobile .tquotes__nav{gap:1rem;margin-top:3vh;padding-top:2vh}
  html.bidot-mobile .rwall{padding:7vh var(--pad)}
  html.bidot-mobile .rwall__cols{display:grid;grid-template-columns:1fr;height:auto;overflow:visible;mask-image:none;-webkit-mask-image:none;gap:1.15rem}
  html.bidot-mobile .rcol{display:flex!important;transform:none!important;gap:1.15rem}
  html.bidot-mobile .rcol.r2{display:none!important}
  html.bidot-mobile .rcard{padding:.15rem 0 1rem;border-bottom:1px solid rgba(255,255,255,.12)}
  html.bidot-mobile .rcard q{font-size:clamp(1.22rem,5.7vw,1.58rem)}

  html.bidot-mobile .contact{padding:7vh var(--pad)}
  html.bidot-mobile .contact__big{font-size:clamp(2.1rem,9vw,3.15rem);line-height:1.16!important}
  html.bidot-mobile .split-2{padding:7vh var(--pad)}
  html.bidot-mobile .qform{padding:7vh var(--pad)}
  html.bidot-mobile .qform__in{gap:2.25rem}
  html.bidot-mobile .qform__intro p{margin-top:1.15rem;line-height:1.68}
  html.bidot-mobile .qform__form{gap:1rem}
  html.bidot-mobile .qform__form .btn{width:100%}
  html.bidot-mobile .faq{padding:7vh var(--pad)}
  html.bidot-mobile .faq__intro{margin-bottom:4vh;font-size:1rem;text-align:left}
  html.bidot-mobile .faq__q{padding:1.1rem 0;font-size:clamp(1.22rem,5.7vw,1.65rem);gap:.8rem}
  html.bidot-mobile .faq__a p{font-size:.98rem;padding-bottom:1.35rem;line-height:1.65}
  html.bidot-mobile .ctaband{padding:7vh var(--pad)}
  html.bidot-mobile .ctaband h2{font-size:clamp(2.05rem,9.3vw,3.1rem);line-height:1.16!important;margin-bottom:2rem}
  html.bidot-mobile .footer__bottom{display:grid;gap:.45rem;padding-top:3vh}
  html.bidot-mobile .footer__disc{font-size:.7rem}

  html.bidot-mobile .modal{display:none!important;opacity:0;transition:opacity .22s var(--ease)}
  html.bidot-mobile .modal.open{display:block!important;opacity:1}
  html.bidot-mobile .modal__inner{padding:4.5rem var(--pad) 2rem;overflow-y:auto;max-height:100dvh}
  html.bidot-mobile .modal__card{grid-template-columns:1fr;max-height:none}
  html.bidot-mobile .modal__card img{min-height:220px;max-height:34svh}

  html.bidot-mobile .fab{right:max(.8rem,env(safe-area-inset-right,0px));bottom:max(.8rem,env(safe-area-inset-bottom,0px));gap:.5rem}
  html.bidot-mobile .fab__main{padding:.75rem .95rem;font-size:.62rem}
  html.bidot-mobile .fab__wa{width:48px;height:48px}
  html.bidot-mobile .fab__wa svg{width:25px;height:25px}

  /* Apariciones puntuales: nunca se aplica a contenedores que puedan dejar áreas vacías. */
  html.bidot-mobile .mobile-reveal{opacity:0;transform:translate3d(0,20px,0);transition:opacity .58s var(--ease),transform .62s var(--ease)}
  html.bidot-mobile .mobile-reveal.is-visible{opacity:1;transform:none}
}

@media (max-width:560px){
  :root{--pad:1.05rem}
  html.bidot-mobile .hero{min-height:590px}
  html.bidot-mobile .phero{min-height:490px;height:76svh}
  html.bidot-mobile .hero__title,
  html.bidot-mobile .phero__title{font-size:clamp(1.92rem,8.8vw,2.65rem)!important}
  html.bidot-mobile .hero__sub{-webkit-line-clamp:4}
  html.bidot-mobile .hero__actions .btn{padding:.78rem .85rem}
  html.bidot-mobile .feat__grid{grid-template-columns:1fr;gap:1.3rem}
  html.bidot-mobile .split__media{height:38svh;min-height:235px}
  html.bidot-mobile .pillars.mobile-pillars-ready .pillars__p{min-height:175px}
  html.bidot-mobile .pillars.mobile-pillars-ready .pillars__p.is-active{min-height:330px}
  html.bidot-mobile .gfig,
  html.bidot-mobile .gal__intro{flex-basis:86vw!important;width:86vw!important}
  html.bidot-mobile .gfig{height:45svh!important}
  html.bidot-mobile .team__grid.g4{grid-template-columns:1fr}
  html.bidot-mobile .tm figure{height:42svh}
  html.bidot-mobile .fab__main{display:none}
}

@media (prefers-reduced-motion:reduce){
  html.bidot-mobile *,
  html.bidot-mobile *::before,
  html.bidot-mobile *::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}


/* =====================================================================
   BIDOT — MÓVIL FINAL v2.0
   Un solo criterio visual: textos centrados, bloque clínica centrado y
   un acordeón sencillo de Tratamientos con flecha estándar.
   ===================================================================== */
@media (max-width:900px){
  /* Logo real en cabecera móvil. */
  html.bidot-mobile .nav__brand{
    display:flex!important;
    align-items:center!important;
    width:64px!important;
    height:64px!important;
    min-height:64px!important;
  }
  html.bidot-mobile .nav__brand .nav__logo{
    display:block!important;
    width:58px!important;
    height:58px!important;
    max-width:none!important;
    object-fit:contain!important;
  }
  html.bidot-mobile .nav.scrolled .nav__brand .nav__logo{
    width:50px!important;
    height:50px!important;
  }
  html.bidot-mobile .nav__brand::after{content:none!important;display:none!important;}

  /* Centrado real de los bloques de lectura. Los campos de formulario
     mantienen alineación funcional a la izquierda. */
  html.bidot-mobile main :is(h1,h2,h3,h4,p,q,.eyebrow,.by,.chapter__n,.panel__n),
  html.bidot-mobile .footer :is(p,span){
    text-align:center!important;
  }
  html.bidot-mobile .hero__inner,
  html.bidot-mobile .phero__inner,
  html.bidot-mobile .chapter__in,
  html.bidot-mobile .split__body,
  html.bidot-mobile .book__info,
  html.bidot-mobile .shead,
  html.bidot-mobile .contact,
  html.bidot-mobile .qform__intro,
  html.bidot-mobile .faq,
  html.bidot-mobile .ctaband{
    text-align:center!important;
  }
  html.bidot-mobile .hero__inner,
  html.bidot-mobile .phero__inner,
  html.bidot-mobile .chapter__in,
  html.bidot-mobile .split__body,
  html.bidot-mobile .book__info,
  html.bidot-mobile .contact,
  html.bidot-mobile .qform__intro,
  html.bidot-mobile .ctaband{
    align-items:center!important;
  }
  html.bidot-mobile .hero__title,
  html.bidot-mobile .phero__title,
  html.bidot-mobile .hero__sub,
  html.bidot-mobile .phero__sub,
  html.bidot-mobile .chapter__h,
  html.bidot-mobile .chapter__sub,
  html.bidot-mobile .panel__h,
  html.bidot-mobile .panel__sub,
  html.bidot-mobile .split__body h2,
  html.bidot-mobile .split__body p,
  html.bidot-mobile .book__info h3,
  html.bidot-mobile .book__info p,
  html.bidot-mobile .qform__intro h2,
  html.bidot-mobile .qform__intro p,
  html.bidot-mobile .contact__big,
  html.bidot-mobile .faq__intro,
  html.bidot-mobile .footer__disc{
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
  html.bidot-mobile .hero__title .ln,
  html.bidot-mobile .phero__title .ln{
    display:block!important;
    text-align:center!important;
  }
  html.bidot-mobile .hero__actions,
  html.bidot-mobile .contact__cta,
  html.bidot-mobile .chapter__link,
  html.bidot-mobile .panel__link,
  html.bidot-mobile .qform__alt,
  html.bidot-mobile .faq .seccta{
    justify-content:center!important;
    align-items:center!important;
  }
  html.bidot-mobile .eyebrow,
  html.bidot-mobile .shead,
  html.bidot-mobile .book__pts,
  html.bidot-mobile .tquotes__nav{
    justify-content:center!important;
  }
  html.bidot-mobile .feat__grid > div,
  html.bidot-mobile .step,
  html.bidot-mobile .vrow,
  html.bidot-mobile .cardi,
  html.bidot-mobile .team__grid .tm,
  html.bidot-mobile .qline,
  html.bidot-mobile .test__it,
  html.bidot-mobile .tq,
  html.bidot-mobile .rcol,
  html.bidot-mobile .rcard{
    text-align:center!important;
  }
  html.bidot-mobile .team__grid .tm figcaption{justify-content:center!important;text-align:center!important;}
  html.bidot-mobile .footer__bottom{justify-items:center!important;text-align:center!important;}
  html.bidot-mobile .footer__disc{max-width:42ch!important;}
  html.bidot-mobile .qform__form,
  html.bidot-mobile .qform__form .qfield,
  html.bidot-mobile .qform__form label,
  html.bidot-mobile .faq__list,
  html.bidot-mobile .faq__q,
  html.bidot-mobile .faq__a{text-align:left!important;}

  /* Bloque de clínica de la Home: se centra como una sección propia,
     no solo como texto dentro del grid. */
  html.bidot-mobile .home-clinic .split__body{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    padding-top:7vh!important;
    padding-bottom:7vh!important;
  }
  html.bidot-mobile .home-clinic .split__body > *{
    width:auto!important;
    max-width:min(100%,34rem)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
  html.bidot-mobile .home-clinic .split__body .eyebrow{display:inline-flex!important;}

  /* Hero: misma escala en Inicio y páginas internas. */
  html.bidot-mobile .hero__title,
  html.bidot-mobile .phero__title{
    max-width:15ch!important;
    font-size:clamp(2.85rem,12vw,3.45rem)!important;
    line-height:1.08!important;
    margin-bottom:1rem!important;
  }
  html.bidot-mobile .hero__sub,
  html.bidot-mobile .phero__sub{
    max-width:32ch!important;
    font-size:clamp(1.12rem,4.9vw,1.26rem)!important;
    line-height:1.52!important;
    margin-top:0!important;
    margin-bottom:1.3rem!important;
  }
  html.bidot-mobile .hero__actions .btn{
    min-height:3.3rem!important;
    padding:.92rem 1.1rem!important;
    font-size:.7rem!important;
  }

  /* Menú: Tratamientos es una única pestaña. La flecha abre/cierra el
     submenú; no hay círculos, guiones, sangrías ni estilos distintos. */
  html.bidot-mobile .mnav{
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    padding:calc(env(safe-area-inset-top,0px) + 5.35rem) var(--pad) calc(env(safe-area-inset-bottom,0px) + 1.6rem)!important;
    text-align:center!important;
  }
  html.bidot-mobile .mnav > .mnav__link,
  html.bidot-mobile .mnav__toggle{
    position:relative!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:3.6rem!important;
    margin:0!important;
    padding:.42rem 2.7rem!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.16)!important;
    border-radius:0!important;
    outline:0!important;
    background:transparent!important;
    color:var(--cream)!important;
    font-family:var(--serif)!important;
    font-size:clamp(1.92rem,8.2vw,2.42rem)!important;
    font-weight:300!important;
    font-style:normal!important;
    line-height:1.1!important;
    letter-spacing:0!important;
    text-align:center!important;
    text-transform:none!important;
  }
  html.bidot-mobile .mnav__treatments{
    width:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }
  html.bidot-mobile .mnav__toggle{cursor:pointer!important;}
  html.bidot-mobile .mnav__toggle::after{
    content:'⌄'!important;
    position:absolute!important;
    right:.65rem!important;
    top:50%!important;
    display:block!important;
    margin:0!important;
    color:currentColor!important;
    font-family:Arial,sans-serif!important;
    font-size:1.35rem!important;
    font-weight:300!important;
    line-height:1!important;
    transform:translateY(-58%)!important;
    transition:transform .18s ease!important;
  }
  html.bidot-mobile .mnav__toggle.is-open::after{
    transform:translateY(-46%) rotate(180deg)!important;
  }
  html.bidot-mobile .mnav__toggle-label{
    display:block!important;
    width:100%!important;
    font:inherit!important;
    line-height:inherit!important;
    text-align:center!important;
  }
  html.bidot-mobile .mnav__toggle-icon{display:none!important;}
  html.bidot-mobile .mnav .msub{
    width:100%!important;
    margin:0!important;
    padding:.45rem 0 .65rem!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.16)!important;
    background:transparent!important;
    text-align:center!important;
  }
  html.bidot-mobile .mnav .msub[hidden]{display:none!important;}
  html.bidot-mobile .mnav .msub a,
  html.bidot-mobile .mnav .msub a.mnav__sub-link{
    display:block!important;
    width:100%!important;
    min-height:0!important;
    margin:0!important;
    padding:.34rem .4rem!important;
    border:0!important;
    background:transparent!important;
    color:rgba(248,245,240,.92)!important;
    font-family:var(--serif)!important;
    font-size:clamp(1.16rem,5vw,1.4rem)!important;
    font-weight:300!important;
    font-style:normal!important;
    line-height:1.22!important;
    letter-spacing:0!important;
    text-align:center!important;
    text-transform:none!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
  }
  html.bidot-mobile .mnav .msub a::before,
  html.bidot-mobile .mnav .msub a::after{content:none!important;display:none!important;}
  html.bidot-mobile .mnav__details{
    align-items:center!important;
    margin-top:1.15rem!important;
    padding-top:1rem!important;
    text-align:center!important;
  }
  html.bidot-mobile .mnav__details a,
  html.bidot-mobile .mnav__label{width:100%!important;text-align:center!important;}
  html.bidot-mobile .mnav__cta{width:100%!important;margin-top:1.2rem!important;justify-content:center!important;text-align:center!important;}
}
@media (max-width:430px){
  html.bidot-mobile .hero__title,
  html.bidot-mobile .phero__title{font-size:2.95rem!important;}
  html.bidot-mobile .hero__sub,
  html.bidot-mobile .phero__sub{font-size:1.12rem!important;}
  html.bidot-mobile .mnav > .mnav__link,
  html.bidot-mobile .mnav__toggle{font-size:1.9rem!important;min-height:3.55rem!important;}
  html.bidot-mobile .mnav .msub a,
  html.bidot-mobile .mnav .msub a.mnav__sub-link{font-size:1.12rem!important;}
}


/* =====================================================================
   BIDOT — CORRECCIÓN PALETA v1.3.1
   Dorado plano en todos los resaltes y acciones. Sin acabado metálico.
   ===================================================================== */
:root{--gold:#aeb4bb!important;--gold-lt:#edf0f2!important;
  background-image:none!important;
  -webkit-background-clip:border-box!important;
  background-clip:border-box!important;
  -webkit-text-fill-color:var(--gold)!important;
  color:var(--gold)!important;
  text-shadow:none!important;
}
.btn-gold,.btn-wa,.fab__main{
  background:var(--gold)!important;
  color:var(--dark)!important;
  border-color:var(--gold)!important;
  box-shadow:none!important;
}
.btn-gold:hover,.btn-wa:hover,.fab__main:hover{
  background:var(--gold-lt)!important;
  color:var(--dark)!important;
  box-shadow:none!important;
  transform:none!important;
}
.btn::before,.fab__main::before{content:none!important;display:none!important;}


/* =====================================================================
   BIDOT — ACENTOS CONTENIDOS v1.3.2
   El dorado queda reservado a detalles de interfaz y a una palabra clave
   por portada. El resto de énfasis mantiene la tipografía editorial.
   ===================================================================== */
/* Revertir el cambio global de tipografía/caligráfica en todos los <em>. */
em:not(.accent-script):not(.accent-gold){
  font-family:inherit!important;
  font-style:italic!important;
  font-weight:inherit!important;
  font-size:1em!important;
  letter-spacing:inherit!important;
  line-height:inherit!important;
  margin:0!important;
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
  text-shadow:none!important;
}
/* Una sola palabra protagonista por hero interno: caligrafía y dorado. */
.accent-script{
  display:inline!important;
  font-family:'Allura','Pinyon Script',cursive!important;
  font-style:normal!important;
  font-weight:400!important;
  font-size:1.28em!important;
  line-height:1!important;
  letter-spacing:.015em!important;
  margin:0 .035em!important;
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
  text-shadow:none!important;
}
/* Los detalles dorados permanecen discretos: líneas, números, iconos,
   comillas, estados activos y acciones principales; no titulares enteros. */
.eyebrow,.chapter__n,.panel__n,.stage__p .num,.stage__idx,
.test__it .by,.tq .by,.rcard .by,.faq__ic::before,.faq__ic::after,
.tquotes__dot.active::before,.pillars__in h3::before,.cred::before{
  color:var(--gold)!important;
}
.hero__title .accent-script,.phero__title .accent-script{
  overflow:visible!important;
  vertical-align:baseline;
}
/* En móvil, la palabra destacada conserva presencia sin alterar el ritmo del título. */
@media(max-width:900px){
  .accent-script{font-size:1.22em!important;}
}


/* =====================================================================
   BIDOT — PALETA DEFINITIVA v1.3.3
   Plata en todos los botones. Dorado solo como acento: comillas,
   pequeñas líneas/números y una palabra de firma en cada hero interno.
   ===================================================================== */
:root{
  --gold:#aeb4bb!important;
  --gold-lt:#edf0f2!important;
  --silver:#b4b7ba;
  --silver-lt:#cdd0d2;
  --silver-border:#c6c9cb;
}

/* Botones planos en plata: sin degradado, brillo, textura ni efecto metálico. */
.btn-gold,.btn-wa,.btn-silver,.fab__main,.mnav__cta{
  background:var(--silver)!important;
  color:#1b1b1b!important;
  border:1px solid var(--silver-border)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.btn-gold:hover,.btn-wa:hover,.btn-silver:hover,.fab__main:hover,.mnav__cta:hover{
  background:var(--silver-lt)!important;
  color:#1b1b1b!important;
  border-color:var(--silver-border)!important;
  box-shadow:none!important;
  transform:none!important;
}
.btn::before,.fab__main::before{content:none!important;display:none!important;}

/* La llamada de la cabecera conserva el mismo acabado plateado al interactuar. */
.nav__cta:hover{
  background:var(--silver)!important;
  color:#1b1b1b!important;
  border-color:var(--silver-border)!important;
  box-shadow:none!important;
}

/* Se elimina el cambio de tipografía y color generalizado de los <em>. */
em:not(.accent-script):not(.accent-gold){
  font-family:inherit!important;
  font-style:italic!important;
  font-weight:inherit!important;
  font-size:1em!important;
  line-height:inherit!important;
  letter-spacing:inherit!important;
  margin:0!important;
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
  background:none!important;
  text-shadow:none!important;
}

/* Solo una palabra, ya marcada en cada hero interno, utiliza estilo firma y dorado. */
.accent-script{
  display:inline!important;
  font-family:'Allura','Pinyon Script',cursive!important;
  font-style:normal!important;
  font-weight:400!important;
  font-size:1.24em!important;
  line-height:1!important;
  letter-spacing:.01em!important;
  margin:0 .035em!important;
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
  background:none!important;
  text-shadow:none!important;
}
@media(max-width:900px){.accent-script{font-size:1.18em!important;}}

/* Dorado contenido: comillas y detalles pequeños de lectura, nunca botones ni texto completo. */
.test__it q::before,.test__it q::after,
.tcardq q::before,.tcardq q::after,
.tq q::before,.tq q::after,
.rcard q::before,.rcard q::after{
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}


/* =====================================================================
   BIDOT — MÓVIL v1.3.4
   Cintas activas y coherencia visual global: plata en acciones,
   dorado solo en pequeños acentos y firma puntual.
   ===================================================================== */
/* En móvil las marquesinas continúan en movimiento; no se convierten en filas estáticas. */
html.bidot-mobile .mobile-autoscroll-container{
  overflow:hidden!important;
  overscroll-behavior-x:contain;
}
html.bidot-mobile .mobile-autoscroll-track{
  display:flex!important;
  width:max-content!important;
  min-width:max-content!important;
  overflow:visible!important;
  transform:translate3d(var(--bidot-loop-x, 0px),0,0)!important;
  will-change:transform!important;
  animation:none!important;
  scroll-snap-type:none!important;
  -webkit-overflow-scrolling:auto!important;
}
html.bidot-mobile .vmarq.mobile-motion-ready .vmarq__t,
html.bidot-mobile .tmarq.mobile-motion-ready .tmarq__track{
  width:max-content!important;
  overflow:visible!important;
  padding-left:var(--pad)!important;
  padding-right:var(--pad)!important;
  gap:.85rem!important;
}
html.bidot-mobile .vmarq.mobile-motion-ready .vrow,
html.bidot-mobile .tmarq.mobile-motion-ready .tcardq{
  flex:0 0 min(80vw,350px)!important;
}
html.bidot-mobile .igmarq__wrap.mobile-autoscroll-container{
  width:100%!important;
  overflow:hidden!important;
  touch-action:pan-y;
}
html.bidot-mobile .igmarq.mobile-autoscroll-track{
  gap:.9rem!important;
  padding:0 var(--pad)!important;
}
html.bidot-mobile .igmarq.mobile-autoscroll-track .igcard{
  width:70vw!important;
  max-width:310px!important;
}
/* El resto de la web mantiene el mismo criterio de acentos y botones. */
.btn,.btn-gold,.btn-wa,.btn-silver,.fab__main,.mnav__cta{
  background:var(--silver)!important;
  color:#1b1b1b!important;
  border-color:var(--silver-border)!important;
  box-shadow:none!important;
  text-shadow:none!important;
}
.btn:hover,.btn-gold:hover,.btn-wa:hover,.btn-silver:hover,.fab__main:hover,.mnav__cta:hover{
  background:var(--silver-lt)!important;
  color:#1b1b1b!important;
  border-color:var(--silver-border)!important;
  box-shadow:none!important;
  transform:none!important;
}
em:not(.accent-script):not(.accent-gold){
  font-family:inherit!important;
  font-style:italic!important;
  font-size:1em!important;
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
  background:none!important;
}
.accent-script{
  font-family:'Allura','Pinyon Script',cursive!important;
  font-style:normal!important;
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
}


/* =====================================================================
   BIDOT — CTA FINAL CENTRADA v1.3.5
   El último bloque de llamada a la acción queda centrado de verdad en
   todas las páginas, especialmente en móvil.
   ===================================================================== */
.ctaband{
  text-align:center!important;
}
.ctaband > .btn{
  display:inline-flex!important;
  justify-content:center!important;
  align-items:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
  vertical-align:middle;
}
.ctaband .cta-micro{
  display:block!important;
  width:100%!important;
  margin-top:.9rem!important;
  text-align:center!important;
}
@media(max-width:900px){
  html.bidot-mobile .ctaband > .btn,
  html.bidot-mobile .ctaband > a.btn{
    display:inline-flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html.bidot-mobile .ctaband .cta-micro{
    display:block!important;
    width:100%!important;
    margin-top:.95rem!important;
    text-align:center!important;
  }
}


/* =====================================================================
   BIDOT — BOTONES HOME / TRATAMIENTOS v1.4.0
   Dos acciones iguales en estructura, altura y tipografía.
   Solo cambia el tono de plata: ver tratamiento claro / información oscuro.
   ===================================================================== */
.book-treatment-actions{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  width:min(100%,430px)!important;
  gap:.65rem!important;
  margin-top:.35rem!important;
}
.book-treatment-action{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-height:54px!important;
  margin:0!important;
  padding:.8rem .65rem!important;
  border-radius:999px!important;
  font-family:var(--sans)!important;
  font-size:.60rem!important;
  font-style:normal!important;
  font-weight:600!important;
  line-height:1!important;
  letter-spacing:.065em!important;
  text-align:center!important;
  text-decoration:none!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
  box-shadow:none!important;
  text-shadow:none!important;
  transform:none!important;
  transition:background-color .2s ease,border-color .2s ease,color .2s ease!important;
  cursor:pointer!important;
}
.book-treatment-action--view{
  background:#d8dade!important;
  border:1px solid #d8dade!important;
  color:#242629!important;
}
.book-treatment-action--info{
  background:#9ba0a6!important;
  border:1px solid #9ba0a6!important;
  color:#1f2124!important;
}
.book-treatment-action--view:hover,.book-treatment-action--view:focus{
  background:#e4e6e8!important;
  border-color:#e4e6e8!important;
  color:#242629!important;
}
.book-treatment-action--info:hover,.book-treatment-action--info:focus{
  background:#afb3b8!important;
  border-color:#afb3b8!important;
  color:#1f2124!important;
}
/* El enlace antiguo dentro del texto nunca debe verse en las tarjetas de Inicio. */
.book__info p .svc-link{display:none!important;}
@media(max-width:900px){
  html.bidot-mobile .book-treatment-actions{
    width:100%!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:.55rem!important;
    margin-top:.45rem!important;
  }
  html.bidot-mobile .book-treatment-action{
    min-height:52px!important;
    padding:.72rem .35rem!important;
    font-size:.52rem!important;
    letter-spacing:.045em!important;
  }
}


/* =====================================================================
   BIDOT — BOTONES HOME / TRATAMIENTOS v1.4.1
   Dos acciones apiladas y con una lectura más clara.
   ===================================================================== */
.book-treatment-actions{
  grid-template-columns:1fr!important;
  width:min(100%,330px)!important;
  gap:.7rem!important;
  margin-top:.7rem!important;
}
.book-treatment-action{
  min-height:56px!important;
  padding:.9rem 1rem!important;
  font-size:.68rem!important;
  letter-spacing:.07em!important;
}
@media(max-width:900px){
  html.bidot-mobile .book-treatment-actions{
    grid-template-columns:1fr!important;
    width:min(100%,330px)!important;
    gap:.65rem!important;
    margin: .75rem auto 0!important;
  }
  html.bidot-mobile .book-treatment-action{
    min-height:55px!important;
    padding:.88rem 1rem!important;
    font-size:.63rem!important;
    letter-spacing:.06em!important;
  }
}


/* =====================================================================
   BIDOT — HOME TRATAMIENTOS MÓVIL v1.4.2
   Tarjetas visuales solo en móvil: imagen de fondo, texto sobre imagen
   y botones transparentes tipo cristal. Escritorio intacto.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile body.home .book{
    padding:4vh var(--pad) 7vh!important;
    background:var(--cream)!important;
  }
  html.bidot-mobile body.home .book__page{
    position:relative!important;
    display:block!important;
    min-height:560px!important;
    height:min(72svh,640px)!important;
    margin:0 0 1.35rem!important;
    border-radius:26px!important;
    overflow:hidden!important;
    background:#101010!important;
    color:#fff!important;
    box-shadow:0 18px 46px rgba(0,0,0,.18)!important;
    border:0!important;
  }
  html.bidot-mobile body.home .book__media{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    aspect-ratio:auto!important;
    z-index:0!important;
    overflow:hidden!important;
  }
  html.bidot-mobile body.home .book__media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
    transform:none!important;
    clip-path:none!important;
    filter:brightness(.66) saturate(.95)!important;
  }
  html.bidot-mobile body.home .book__page::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:
      linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.10) 32%,rgba(0,0,0,.68) 100%),
      radial-gradient(circle at 50% 85%,rgba(0,0,0,.42),transparent 54%)!important;
  }
  html.bidot-mobile body.home .book__info{
    position:relative!important;
    z-index:2!important;
    min-height:100%!important;
    height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:center!important;
    padding:2rem 1.25rem 2.1rem!important;
    text-align:center!important;
    color:#fff!important;
    background:transparent!important;
  }
  html.bidot-mobile body.home .book__info .eyebrow,
  html.bidot-mobile body.home .book__pts{
    display:none!important;
  }
  html.bidot-mobile body.home .book__info h3{
    max-width:11ch!important;
    margin:0 auto .8rem!important;
    color:#fff!important;
    font-size:clamp(2rem,9.2vw,3.05rem)!important;
    line-height:1.02!important;
    text-align:center!important;
    text-shadow:0 2px 22px rgba(0,0,0,.36)!important;
  }
  html.bidot-mobile body.home .book__info p{
    max-width:29ch!important;
    margin:0 auto 1.4rem!important;
    color:rgba(255,255,255,.92)!important;
    font-size:1rem!important;
    line-height:1.5!important;
    text-align:center!important;
    text-shadow:0 1px 18px rgba(0,0,0,.34)!important;
  }
  html.bidot-mobile body.home .book__info .home-treatment-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:.72rem!important;
    width:min(100%,310px)!important;
    margin:0 auto!important;
  }
  html.bidot-mobile body.home .book__info .home-treatment-action,
  html.bidot-mobile body.home .book__info .btn{
    width:100%!important;
    min-height:56px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:0!important;
    padding:.9rem 1.15rem!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.10)!important;
    border:1.4px solid rgba(255,255,255,.78)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    font-family:var(--sans)!important;
    font-size:.74rem!important;
    font-weight:600!important;
    line-height:1!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
    text-align:center!important;
    text-decoration:none!important;
    box-shadow:0 10px 26px rgba(0,0,0,.14)!important;
    text-shadow:0 1px 12px rgba(0,0,0,.25)!important;
    backdrop-filter:blur(9px)!important;
    -webkit-backdrop-filter:blur(9px)!important;
    transform:none!important;
  }
  html.bidot-mobile body.home .book__info .home-treatment-action--info{
    background:rgba(255,255,255,.18)!important;
  }
  html.bidot-mobile body.home .book__info .home-treatment-action:active,
  html.bidot-mobile body.home .book__info .btn:active{
    background:rgba(255,255,255,.28)!important;
  }
}


/* =====================================================================
   BIDOT — HOME TRATAMIENTOS MÓVIL v1.4.3
   En escritorio se mantienen los botones plateados existentes.
   En móvil se usan esos mismos botones como botones transparentes tipo cristal.
   No se crean botones duplicados.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile body.home .book__info .home-treatment-actions{
    display:none!important;
  }

  html.bidot-mobile body.home .book__info .book-treatment-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:.72rem!important;
    width:min(100%,310px)!important;
    margin:0 auto!important;
  }

  html.bidot-mobile body.home .book__info .book-treatment-action{
    width:100%!important;
    min-height:56px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:0!important;
    padding:.9rem 1.15rem!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.10)!important;
    border:1.4px solid rgba(255,255,255,.78)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    font-family:var(--sans)!important;
    font-size:.74rem!important;
    font-weight:600!important;
    line-height:1!important;
    letter-spacing:.09em!important;
    text-transform:uppercase!important;
    text-align:center!important;
    text-decoration:none!important;
    box-shadow:0 10px 26px rgba(0,0,0,.14)!important;
    text-shadow:0 1px 12px rgba(0,0,0,.25)!important;
    backdrop-filter:blur(9px)!important;
    -webkit-backdrop-filter:blur(9px)!important;
    transform:none!important;
  }

  html.bidot-mobile body.home .book__info .book-treatment-action--info{
    background:rgba(255,255,255,.18)!important;
  }

  html.bidot-mobile body.home .book__info .book-treatment-action:active{
    background:rgba(255,255,255,.28)!important;
  }
}


/* =====================================================================
   BIDOT — CENTRADO REAL TARJETAS HOME MÓVIL v1.4.4
   Fuerza el centrado de todos los textos y botones dentro de las tarjetas
   de tratamientos de la Home, incluida la primera tarjeta.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile body.home .book__page,
  html.bidot-mobile body.home .book__page--rev{
    text-align:center!important;
  }

  html.bidot-mobile body.home .book__page .book__info,
  html.bidot-mobile body.home .book__page--rev .book__info{
    width:100%!important;
    max-width:none!important;
    left:auto!important;
    right:auto!important;
    margin:0!important;
    text-align:center!important;
    align-items:center!important;
    justify-content:flex-end!important;
    justify-items:center!important;
    place-items:center!important;
  }

  html.bidot-mobile body.home .book__page .book__info > *,
  html.bidot-mobile body.home .book__page--rev .book__info > *{
    align-self:center!important;
    justify-self:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .book__info h3,
  html.bidot-mobile body.home .book__info p{
    display:block!important;
    width:100%!important;
    max-width:30ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    text-wrap:balance;
  }

  html.bidot-mobile body.home .book__info h3{
    max-width:12ch!important;
  }

  html.bidot-mobile body.home .book__info p{
    max-width:29ch!important;
  }

  html.bidot-mobile body.home .book__info .home-treatment-actions{
    width:min(100%,310px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    align-self:center!important;
    justify-self:center!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .book__info .home-treatment-action{
    text-align:center!important;
    justify-content:center!important;
    align-items:center!important;
  }
}


/* =====================================================================
   BIDOT — NEUROMODULADORES CENTRADO MÓVIL v1.4.5
   Ajuste específico para que el título largo de la primera tarjeta no
   quede desplazado ni forzado por el ancho reducido.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile body.home .book__page:first-child .book__info h3{
    width:100%!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    align-self:center!important;
    justify-self:center!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:none!important;
    white-space:normal!important;
    font-size:clamp(1.82rem,8vw,2.55rem)!important;
    letter-spacing:0!important;
  }
}


/* =====================================================================
   BIDOT — AJUSTES HOME MÓVIL v1.4.6
   Hero, segunda sección, tarjetas de tratamientos, clínica slider y FAQ.
   Escritorio se mantiene sin cambios relevantes.
   ===================================================================== */
@media(max-width:900px){

  /* 1. Hero: texto y botones más altos para no pisarse con WhatsApp. */
  html.bidot-mobile body.home .hero__inner{
    padding-bottom:18svh!important;
    transform:translateY(-2.8vh)!important;
    align-items:center!important;
    text-align:center!important;
  }
  html.bidot-mobile body.home .hero__title{
    max-width:100%!important;
    font-size:clamp(1.95rem,8.2vw,2.72rem)!important;
    line-height:1.03!important;
    margin-bottom:.9rem!important;
    text-align:center!important;
  }
  html.bidot-mobile body.home .hero__title .ln{
    display:block!important;
    text-align:center!important;
  }
  html.bidot-mobile body.home .hero__sub{
    max-width:29ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    margin-bottom:1.1rem!important;
    font-size:.98rem!important;
    line-height:1.45!important;
    text-align:center!important;
  }
  html.bidot-mobile body.home .hero__actions{
    justify-content:center!important;
    gap:.6rem!important;
    max-width:96%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html.bidot-mobile body.home .hero__actions .btn{
    min-height:48px!important;
    padding:.78rem .85rem!important;
    font-size:.58rem!important;
  }

  /* 2. Intro y forma de trabajar: quitar título, subir tarjetas. */
  html.bidot-mobile body.home .mani{
    padding:5.2vh var(--pad) 3.2vh!important;
  }
  html.bidot-mobile body.home .mani__txt{
    font-size:clamp(1.38rem,6.4vw,1.9rem)!important;
    line-height:1.32!important;
    max-width:31ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
  html.bidot-mobile body.home .mani + .shead{
    display:none!important;
  }
  html.bidot-mobile body.home .pillars{
    padding:0 var(--pad) 1.8vh!important;
    gap:.72rem!important;
  }
  html.bidot-mobile body.home .pillars__p{
    min-height:150px!important;
    border-radius:10px!important;
  }
  html.bidot-mobile body.home .pillars.mobile-pillars-ready .pillars__p.is-active{
    min-height:230px!important;
  }
  html.bidot-mobile body.home .pillars__in{
    padding:1rem .9rem!important;
    align-items:center!important;
    text-align:center!important;
  }
  html.bidot-mobile body.home .pillars__in .eyebrow{
    margin-bottom:.35rem!important;
  }
  html.bidot-mobile body.home .pillars__in h3{
    max-width:100%!important;
    text-align:center!important;
    font-size:clamp(1.08rem,5vw,1.36rem)!important;
    line-height:1.08!important;
  }
  html.bidot-mobile body.home .pillars__p:nth-child(2) .pillars__in h3{
    white-space:nowrap!important;
    font-size:clamp(1rem,4.65vw,1.26rem)!important;
    letter-spacing:0!important;
  }

  /* 3. Menos espacio entre CTA y tratamientos. */
  html.bidot-mobile body.home .pillars + .seccta,
  html.bidot-mobile body.home .pillars + div.seccta{
    padding:1.6vh var(--pad) 3vh!important;
  }
  html.bidot-mobile body.home .pillars + .seccta .btn{
    min-height:42px!important;
    padding:.7rem 1.1rem!important;
    font-size:.56rem!important;
  }
  html.bidot-mobile body.home .pillars + .seccta + .shead{
    padding:3.8vh var(--pad) 1.8vh!important;
  }

  /* 4. Tratamientos Home: títulos en una línea y tarjetas con menos aire. */
  html.bidot-mobile body.home .book{
    padding:2vh var(--pad) 4vh!important;
  }
  html.bidot-mobile body.home .book__page{
    min-height:520px!important;
    height:min(67svh,610px)!important;
    margin-bottom:1rem!important;
  }
  html.bidot-mobile body.home .book__info{
    justify-content:flex-end!important;
    padding:1.8rem 1.1rem 2rem!important;
    text-align:center!important;
    align-items:center!important;
  }
  html.bidot-mobile body.home .book__info h3{
    white-space:nowrap!important;
    max-width:100%!important;
    width:auto!important;
    font-size:clamp(1.42rem,5.9vw,2rem)!important;
    line-height:1.04!important;
    letter-spacing:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
  html.bidot-mobile body.home .book__page:first-child .book__info h3{
    white-space:nowrap!important;
    max-width:100%!important;
    font-size:clamp(1.45rem,6vw,2.05rem)!important;
  }
  html.bidot-mobile body.home .book__info p{
    max-width:29ch!important;
    font-size:.94rem!important;
    line-height:1.46!important;
    margin-bottom:1.2rem!important;
    text-align:center!important;
  }
  html.bidot-mobile body.home .book__info .home-treatment-actions,
  html.bidot-mobile body.home .book__info .book-treatment-actions{
    width:min(100%,310px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html.bidot-mobile body.home .book__info .home-treatment-action,
  html.bidot-mobile body.home .book__info .book-treatment-action{
    min-height:50px!important;
    font-size:.65rem!important;
  }

  /* 5. CTA "Ver todos los tratamientos" dentro del fondo blanco. */
  html.bidot-mobile body.home .book + section{
    background:var(--cream)!important;
    padding:0 var(--pad) 4.8vh!important;
    margin-top:-.2rem!important;
    display:flex!important;
    justify-content:center!important;
  }
  html.bidot-mobile body.home .book + section .btn{
    min-height:44px!important;
    padding:.72rem 1.15rem!important;
    font-size:.55rem!important;
  }

  /* 6. Clínica: slider móvil con texto y CTA encima de la imagen. */
  html.bidot-mobile body.home .home-clinic{
    position:relative!important;
    display:block!important;
    min-height:70svh!important;
    overflow:hidden!important;
    background:#0d0d0d!important;
    color:#fff!important;
  }
  html.bidot-mobile body.home .home-clinic .split__media{
    position:absolute!important;
    inset:0!important;
    z-index:0!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    width:100%!important;
    overflow:hidden!important;
  }
  html.bidot-mobile body.home .home-clinic .split__media img,
  html.bidot-mobile body.home .home-clinic .clinic-mobile-slide{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
    opacity:0!important;
    transform:scale(1.03)!important;
    transition:opacity 1s ease, transform 4s ease!important;
    filter:brightness(.63) saturate(.94)!important;
  }
  html.bidot-mobile body.home .home-clinic .split__media img:first-child,
  html.bidot-mobile body.home .home-clinic .clinic-mobile-slide.is-active{
    opacity:1!important;
    transform:scale(1)!important;
  }
  html.bidot-mobile body.home .home-clinic::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.22) 32%,rgba(0,0,0,.78) 100%)!important;
  }
  html.bidot-mobile body.home .home-clinic .split__body{
    position:relative!important;
    z-index:2!important;
    min-height:70svh!important;
    padding:0 var(--pad) 8vh!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:center!important;
    text-align:center!important;
    background:transparent!important;
    color:#fff!important;
  }
  html.bidot-mobile body.home .home-clinic .split__body h2{
    max-width:12ch!important;
    color:#fff!important;
    font-size:clamp(1.65rem,7.3vw,2.35rem)!important;
    line-height:1.08!important;
    margin:0 auto .9rem!important;
    text-align:center!important;
    text-shadow:0 2px 24px rgba(0,0,0,.42)!important;
  }
  html.bidot-mobile body.home .home-clinic .split__body p{
    max-width:29ch!important;
    margin:0 auto 1.25rem!important;
    color:rgba(255,255,255,.9)!important;
    font-size:.88rem!important;
    line-height:1.46!important;
    text-align:center!important;
    text-shadow:0 1px 20px rgba(0,0,0,.36)!important;
  }
  html.bidot-mobile body.home .home-clinic .seccta{
    display:flex!important;
    width:100%!important;
    justify-content:center!important;
    padding:0!important;
  }
  html.bidot-mobile body.home .home-clinic .seccta .btn{
    background:rgba(255,255,255,.12)!important;
    border:1.4px solid rgba(255,255,255,.78)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    backdrop-filter:blur(9px)!important;
    -webkit-backdrop-filter:blur(9px)!important;
    min-height:50px!important;
    width:min(100%,280px)!important;
  }

  /* 7. FAQ directo: quitar intro larga y mostrar título correcto. */
  html.bidot-mobile body.home .faq{
    padding-top:7vh!important;
  }
  html.bidot-mobile body.home .faq h2{
    font-size:clamp(2rem,8.2vw,2.8rem)!important;
    margin-bottom:2rem!important;
    text-align:center!important;
  }
  html.bidot-mobile body.home .faq__intro{
    display:none!important;
  }

  /* 8. Reseñas: quitar el texto largo del encabezado en móvil. */
  html.bidot-mobile body.home .rwall__head p{
    display:none!important;
  }
  html.bidot-mobile body.home .rwall__head{
    justify-content:center!important;
    text-align:center!important;
    margin-bottom:3vh!important;
  }
  html.bidot-mobile body.home .rwall__head h2{
    max-width:12ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    font-size:clamp(1.9rem,7.5vw,2.5rem)!important;
  }
}


/* =====================================================================
   BIDOT — HOME MÓVIL CORRECCIÓN REAL v1.4.7
   Hero en una línea, sin texto introductorio largo, slider visible y
   títulos móviles con ancho correcto.
   ===================================================================== */
@media(max-width:900px){

  /* Hero: título en una sola línea real. */
  html.bidot-mobile body.home .hero__title{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    white-space:nowrap!important;
    text-align:center!important;
    font-size:clamp(1.42rem,5.15vw,1.82rem)!important;
    line-height:1.08!important;
    letter-spacing:-.01em!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html.bidot-mobile body.home .hero__title .ln{
    display:inline!important;
  }

  /* El texto largo de introducción queda eliminado también si algún cache lo mantiene. */
  html.bidot-mobile body.home .mani{
    display:none!important;
  }

  /* Al quitar la intro, las tarjetas suben y pasan a ser la segunda sección real. */
  html.bidot-mobile body.home .shead + .pillars,
  html.bidot-mobile body.home .pillars{
    margin-top:0!important;
    padding-top:3.5vh!important;
  }

  /* Clínica: slider visible sin depender de JS. */
  html.bidot-mobile body.home .home-clinic .home-clinic-slider{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    z-index:0!important;
    background:#0d0d0d!important;
  }
  html.bidot-mobile body.home .home-clinic .home-clinic-slider .clinic-slide{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
    opacity:0!important;
    visibility:visible!important;
    transform:scale(1.035)!important;
    filter:brightness(.62) saturate(.95)!important;
    animation:bidotClinicSlider 16s infinite!important;
  }
  html.bidot-mobile body.home .home-clinic .home-clinic-slider .clinic-slide:nth-child(1){animation-delay:0s!important;}
  html.bidot-mobile body.home .home-clinic .home-clinic-slider .clinic-slide:nth-child(2){animation-delay:4s!important;}
  html.bidot-mobile body.home .home-clinic .home-clinic-slider .clinic-slide:nth-child(3){animation-delay:8s!important;}
  html.bidot-mobile body.home .home-clinic .home-clinic-slider .clinic-slide:nth-child(4){animation-delay:12s!important;}

  @keyframes bidotClinicSlider{
    0%{opacity:0;transform:scale(1.04);}
    6%{opacity:1;transform:scale(1.02);}
    25%{opacity:1;transform:scale(1);}
    31%{opacity:0;transform:scale(1);}
    100%{opacity:0;transform:scale(1.04);}
  }

  /* Título de clínica más limpio y máximo dos líneas. */
  html.bidot-mobile body.home .home-clinic .split__body h2{
    max-width:19ch!important;
    font-size:clamp(1.55rem,6.2vw,2.08rem)!important;
    line-height:1.08!important;
    text-wrap:balance!important;
  }

  /* Reseñas: título en máximo dos líneas, no columna estrecha. */
  html.bidot-mobile body.home .rwall__head h2{
    max-width:24ch!important;
    font-size:clamp(1.6rem,6.1vw,2.15rem)!important;
    line-height:1.08!important;
    text-wrap:balance!important;
  }
}


/* =====================================================================
   BIDOT — SLIDER CLÍNICA VISIBLE MÓVIL v1.4.8
   Slider de clínica con fondos CSS directos. No depende de <img> ni de JS.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile body.home .home-clinic{
    position:relative!important;
    display:block!important;
    min-height:70svh!important;
    overflow:hidden!important;
    background:#0d0d0d!important;
    color:#fff!important;
  }

  html.bidot-mobile body.home .home-clinic .home-clinic-slider{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    min-height:100%!important;
    max-height:none!important;
    z-index:0!important;
    overflow:hidden!important;
    background-image:url("img/hero-clinica.jpg")!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
  }

  html.bidot-mobile body.home .home-clinic .home-clinic-slider img,
  html.bidot-mobile body.home .home-clinic .home-clinic-slider .clinic-slide{
    display:none!important;
  }

  html.bidot-mobile body.home .home-clinic .clinic-bg-slide{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
    opacity:0!important;
    visibility:visible!important;
    filter:brightness(.62) saturate(.95)!important;
    transform:scale(1.04)!important;
    animation:bidotClinicBgSlider 18s infinite!important;
    will-change:opacity,transform!important;
  }

  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--1{
    background-image:url("img/hero-clinica.jpg")!important;
    animation-delay:0s!important;
  }
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--2{
    background-image:url("img/clinic-1.jpg")!important;
    animation-delay:4.5s!important;
  }
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--3{
    background-image:url("img/clinic-2.jpg")!important;
    animation-delay:9s!important;
  }
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--4{
    background-image:url("img/equipo-1.jpg")!important;
    animation-delay:13.5s!important;
  }

  @keyframes bidotClinicBgSlider{
    0%{opacity:0;transform:scale(1.045);}
    5%{opacity:1;transform:scale(1.025);}
    26%{opacity:1;transform:scale(1);}
    32%{opacity:0;transform:scale(1);}
    100%{opacity:0;transform:scale(1.045);}
  }

  html.bidot-mobile body.home .home-clinic::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:linear-gradient(180deg,rgba(0,0,0,.18),rgba(0,0,0,.22) 32%,rgba(0,0,0,.78) 100%)!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body{
    position:relative!important;
    z-index:2!important;
    min-height:70svh!important;
    padding:0 var(--pad) 8vh!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:center!important;
    text-align:center!important;
    background:transparent!important;
    color:#fff!important;
  }
}


/* =====================================================================
   BIDOT — SLIDER CLÍNICA RUTAS CORREGIDAS v1.4.9
   Desde assets/site.css las imágenes deben cargarse como img/archivo.jpg.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile body.home .home-clinic{
    background:#0d0d0d!important;
    position:relative!important;
    overflow:hidden!important;
  }

  html.bidot-mobile body.home .home-clinic .home-clinic-slider,
  html.bidot-mobile body.home .home-clinic .split__media.home-clinic-slider{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    z-index:0!important;
    overflow:hidden!important;
    background:#0d0d0d url("img/hero-clinica.jpg") center/cover no-repeat!important;
  }

  html.bidot-mobile body.home .home-clinic .clinic-bg-slide{
    display:block!important;
    opacity:0!important;
    visibility:visible!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
    filter:brightness(.62) saturate(.95)!important;
    transform:scale(1.04)!important;
    animation:bidotClinicBgSliderFixed 18s infinite!important;
  }

  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--1{
    background-image:url("img/hero-clinica.jpg")!important;
    animation-delay:0s!important;
  }
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--2{
    background-image:url("img/clinic-1.jpg")!important;
    animation-delay:4.5s!important;
  }
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--3{
    background-image:url("img/clinic-2.jpg")!important;
    animation-delay:9s!important;
  }
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--4{
    background-image:url("img/equipo-1.jpg")!important;
    animation-delay:13.5s!important;
  }

  @keyframes bidotClinicBgSliderFixed{
    0%{opacity:0;transform:scale(1.04);}
    5%{opacity:1;transform:scale(1.025);}
    26%{opacity:1;transform:scale(1);}
    32%{opacity:0;transform:scale(1);}
    100%{opacity:0;transform:scale(1.04);}
  }

  html.bidot-mobile body.home .home-clinic .split__body{
    position:relative!important;
    z-index:2!important;
  }
}


/* =====================================================================
   BIDOT — CLÍNICA MÓVIL TEXTO Y SLIDER v1.5.0
   Texto más pequeño, título en una línea y slider automático real.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide{
    opacity:0!important;
    animation:bidotClinicAutoFade150 18s infinite!important;
    will-change:opacity,transform!important;
  }

  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--1{
    background-image:url("img/hero-clinica.jpg")!important;
    animation-delay:0s!important;
  }
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--2{
    background-image:url("img/clinic-1.jpg")!important;
    animation-delay:4.5s!important;
  }
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--3{
    background-image:url("img/clinic-2.jpg")!important;
    animation-delay:9s!important;
  }
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide--4{
    background-image:url("img/equipo-1.jpg")!important;
    animation-delay:13.5s!important;
  }

  @keyframes bidotClinicAutoFade150{
    0%{opacity:0;transform:scale(1.045);}
    4%{opacity:1;transform:scale(1.025);}
    24%{opacity:1;transform:scale(1);}
    30%{opacity:0;transform:scale(1);}
    100%{opacity:0;transform:scale(1.045);}
  }

  html.bidot-mobile body.home .home-clinic .split__body{
    padding-bottom:7vh!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body h2{
    width:100%!important;
    max-width:100%!important;
    white-space:nowrap!important;
    font-size:clamp(1rem,4.05vw,1.38rem)!important;
    line-height:1.08!important;
    letter-spacing:-.015em!important;
    margin-bottom:.75rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body p{
    max-width:31ch!important;
    font-size:.76rem!important;
    line-height:1.36!important;
    margin-bottom:1rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-clinic .seccta .btn{
    min-height:44px!important;
    width:min(100%,245px)!important;
    font-size:.54rem!important;
    padding:.7rem 1rem!important;
  }
}


/* =====================================================================
   BIDOT — CLÍNICA MÓVIL FINAL v1.5.1
   Título/texto reducidos y fondo de clínica controlado por JS para que
   las imágenes cambien realmente en móvil.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile body.home .home-clinic{
    min-height:68svh!important;
  }

  html.bidot-mobile body.home .home-clinic .home-clinic-slider,
  html.bidot-mobile body.home .home-clinic .split__media.home-clinic-slider{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    z-index:0!important;
    background:#0d0d0d url("img/hero-clinica.jpg") center/cover no-repeat!important;
  }

  /* Ocultamos los spans del intento anterior: el fondo lo cambia el JS. */
  html.bidot-mobile body.home .home-clinic .clinic-bg-slide,
  html.bidot-mobile body.home .home-clinic .clinic-slide,
  html.bidot-mobile body.home .home-clinic .home-clinic-slider img{
    display:none!important;
    opacity:0!important;
    animation:none!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body{
    min-height:68svh!important;
    padding:0 var(--pad) 6.4vh!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body h2{
    width:100%!important;
    max-width:100%!important;
    white-space:nowrap!important;
    font-size:clamp(1.28rem,5vw,1.68rem)!important;
    line-height:1.05!important;
    letter-spacing:-.01em!important;
    margin:0 auto .65rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body p{
    max-width:27ch!important;
    font-size:.72rem!important;
    line-height:1.32!important;
    margin:0 auto .95rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-clinic .seccta .btn{
    min-height:42px!important;
    width:min(100%,230px)!important;
    font-size:.52rem!important;
    padding:.66rem .9rem!important;
  }
}


/* =====================================================================
   BIDOT — TEXTO BOTONES CENTRADO v1.5.2
   Fuerza el centrado real del texto en botones móviles, incluido el CTA
   del bloque de clínica.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile .btn,
  html.bidot-mobile .btn-gold,
  html.bidot-mobile .btn-wa,
  html.bidot-mobile .btn-line,
  html.bidot-mobile .fab__main,
  html.bidot-mobile .mnav__cta,
  html.bidot-mobile .home-treatment-action,
  html.bidot-mobile .book-treatment-action{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    line-height:1.1!important;
  }

  html.bidot-mobile .btn *,
  html.bidot-mobile .btn-gold *,
  html.bidot-mobile .btn-wa *,
  html.bidot-mobile .btn-line *{
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-clinic .seccta,
  html.bidot-mobile body.home .home-clinic .seccta .btn{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-clinic .seccta .btn{
    padding-left:.9rem!important;
    padding-right:.9rem!important;
    white-space:nowrap!important;
  }
}


/* =====================================================================
   BIDOT — HOME TRATAMIENTOS PC EN TARJETAS v1.5.3
   En escritorio, las tarjetas de tratamientos de la Home adoptan el
   lenguaje visual móvil: imagen de fondo, texto encima y botones
   transparentes tipo cristal, adaptado a grid desktop.
   ===================================================================== */
@media(min-width:901px){
  body.home .book{
    background:var(--cream)!important;
    color:var(--dark)!important;
    padding:2vh var(--pad) 10vh!important;
  }

  body.home .book__sticky{
    height:auto!important;
    min-height:0!important;
    position:relative!important;
    overflow:visible!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:1.35rem!important;
    max-width:1380px!important;
    margin:0 auto!important;
  }

  body.home .book__page,
  body.home .book__page.on,
  body.home .book__page--rev{
    position:relative!important;
    inset:auto!important;
    display:block!important;
    height:clamp(520px,64vh,720px)!important;
    min-height:520px!important;
    opacity:1!important;
    visibility:visible!important;
    overflow:hidden!important;
    border-radius:30px!important;
    background:#111!important;
    color:#fff!important;
    box-shadow:0 24px 60px rgba(0,0,0,.16)!important;
    transform:none!important;
  }

  body.home .book__media,
  body.home .book__page--rev .book__media{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    order:initial!important;
    overflow:hidden!important;
    z-index:0!important;
  }

  body.home .book__media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center!important;
    transform:scale(1.02)!important;
    clip-path:none!important;
    filter:brightness(.62) saturate(.96)!important;
    transition:transform .8s ease, filter .8s ease!important;
  }

  body.home .book__page:hover .book__media img{
    transform:scale(1.07)!important;
    filter:brightness(.7) saturate(1)!important;
  }

  body.home .book__page::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:
      linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.18) 36%,rgba(0,0,0,.78) 100%),
      radial-gradient(circle at 50% 88%,rgba(0,0,0,.42),transparent 55%)!important;
  }

  body.home .book__info,
  body.home .book__page--rev .book__info{
    position:relative!important;
    z-index:2!important;
    width:100%!important;
    min-height:100%!important;
    height:100%!important;
    order:initial!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:center!important;
    padding:2.25rem 1.65rem 2.35rem!important;
    text-align:center!important;
    color:#fff!important;
    background:transparent!important;
  }

  body.home .book__info > *{
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }

  body.home .book__info .eyebrow,
  body.home .book__pts{
    display:none!important;
  }

  body.home .book__info h3{
    width:100%!important;
    max-width:100%!important;
    margin:0 auto .85rem!important;
    color:#fff!important;
    font-size:clamp(1.45rem,2.05vw,2.2rem)!important;
    line-height:1.04!important;
    font-weight:300!important;
    text-align:center!important;
    white-space:nowrap!important;
    letter-spacing:-.01em!important;
    text-shadow:0 2px 26px rgba(0,0,0,.38)!important;
  }

  body.home .book__info p{
    max-width:31ch!important;
    margin:0 auto 1.35rem!important;
    color:rgba(255,255,255,.9)!important;
    font-size:.96rem!important;
    line-height:1.5!important;
    text-align:center!important;
    text-shadow:0 1px 18px rgba(0,0,0,.32)!important;
  }

  body.home .book__info .home-treatment-actions,
  body.home .book__info .book-treatment-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:.72rem!important;
    width:min(100%,300px)!important;
    margin:0 auto!important;
  }

  body.home .book__info .home-treatment-action,
  body.home .book__info .book-treatment-action,
  body.home .book__info .btn{
    width:100%!important;
    min-height:52px!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    margin:0!important;
    padding:.85rem 1.1rem!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.11)!important;
    border:1.4px solid rgba(255,255,255,.78)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    font-family:var(--sans)!important;
    font-size:.68rem!important;
    font-weight:600!important;
    line-height:1!important;
    letter-spacing:.085em!important;
    text-transform:uppercase!important;
    text-align:center!important;
    text-decoration:none!important;
    box-shadow:0 12px 28px rgba(0,0,0,.14)!important;
    text-shadow:0 1px 12px rgba(0,0,0,.25)!important;
    backdrop-filter:blur(9px)!important;
    -webkit-backdrop-filter:blur(9px)!important;
    transform:none!important;
  }

  body.home .book__info .home-treatment-action--info,
  body.home .book__info .book-treatment-action--info{
    background:rgba(255,255,255,.19)!important;
  }

  body.home .book__info .home-treatment-action:hover,
  body.home .book__info .book-treatment-action:hover,
  body.home .book__info .btn:hover{
    background:rgba(255,255,255,.28)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
  }

  body.home .book + section{
    background:var(--cream)!important;
    padding:0 var(--pad) 9vh!important;
    display:flex!important;
    justify-content:center!important;
  }
}

@media(min-width:901px) and (max-width:1180px){
  body.home .book__sticky{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.home .book__page{
    height:560px!important;
  }
}


/* =====================================================================
   BIDOT — CLÍNICA PC CENTRADA + CARRUSEL v1.5.4
   En escritorio, el bloque de clínica se centra y usa carrusel de fondo
   como en móvil, manteniendo el texto y CTA sobre la imagen.
   ===================================================================== */
@media(min-width:901px){
  body.home .home-clinic{
    position:relative!important;
    display:block!important;
    min-height:72vh!important;
    overflow:hidden!important;
    background:#0d0d0d!important;
    color:#fff!important;
  }

  body.home .home-clinic .split__media.home-clinic-slider{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    z-index:0!important;
    overflow:hidden!important;
    background:#0d0d0d url("img/hero-clinica.jpg") center/cover no-repeat!important;
  }

  body.home .home-clinic .clinic-bg-slide{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
    opacity:0!important;
    visibility:visible!important;
    filter:brightness(.62) saturate(.96)!important;
    transform:scale(1.04)!important;
    animation:bidotClinicDesktopSlider154 18s infinite!important;
    will-change:opacity,transform!important;
  }

  body.home .home-clinic .clinic-bg-slide--1{
    background-image:url("img/hero-clinica.jpg")!important;
    animation-delay:0s!important;
  }
  body.home .home-clinic .clinic-bg-slide--2{
    background-image:url("img/clinic-1.jpg")!important;
    animation-delay:4.5s!important;
  }
  body.home .home-clinic .clinic-bg-slide--3{
    background-image:url("img/clinic-2.jpg")!important;
    animation-delay:9s!important;
  }
  body.home .home-clinic .clinic-bg-slide--4{
    background-image:url("img/equipo-1.jpg")!important;
    animation-delay:13.5s!important;
  }

  @keyframes bidotClinicDesktopSlider154{
    0%{opacity:0;transform:scale(1.045);}
    4%{opacity:1;transform:scale(1.025);}
    24%{opacity:1;transform:scale(1);}
    30%{opacity:0;transform:scale(1);}
    100%{opacity:0;transform:scale(1.045);}
  }

  body.home .home-clinic::after{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    z-index:1!important;
    pointer-events:none!important;
    background:
      linear-gradient(180deg,rgba(0,0,0,.10),rgba(0,0,0,.18) 34%,rgba(0,0,0,.76) 100%),
      radial-gradient(circle at 50% 82%,rgba(0,0,0,.34),transparent 54%)!important;
  }

  body.home .home-clinic .split__body{
    position:relative!important;
    z-index:2!important;
    min-height:72vh!important;
    width:100%!important;
    max-width:none!important;
    padding:0 7vw 7vh!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:center!important;
    text-align:center!important;
    background:transparent!important;
    color:#fff!important;
  }

  body.home .home-clinic .split__body h2{
    max-width:100%!important;
    margin:0 auto 1rem!important;
    color:#fff!important;
    font-size:clamp(2.4rem,4vw,4rem)!important;
    line-height:1.06!important;
    text-align:center!important;
    text-shadow:0 2px 28px rgba(0,0,0,.38)!important;
  }

  body.home .home-clinic .split__body p{
    max-width:34ch!important;
    margin:0 auto 1.5rem!important;
    color:rgba(255,255,255,.9)!important;
    font-size:1.12rem!important;
    line-height:1.5!important;
    text-align:center!important;
    text-shadow:0 1px 18px rgba(0,0,0,.3)!important;
  }

  body.home .home-clinic .seccta{
    display:flex!important;
    justify-content:center!important;
    width:100%!important;
    padding:0!important;
  }

  body.home .home-clinic .seccta .btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    min-height:50px!important;
    width:min(100%,260px)!important;
    padding:.8rem 1.15rem!important;
  }
}


/* =====================================================================
   BIDOT — JERARQUÍA GLOBAL v1.5.6
   Todas las páginas siguen una lectura parecida a la Home:
   hero claro, contenido centrado, bloques con ritmo, CTA visible,
   FAQ directa y cierre limpio. No cambia textos ni elimina contenido.
   ===================================================================== */

/* Páginas internas: hero con jerarquía similar a la Home. */
.phero{
  min-height:100svh!important;
}
.phero__inner{
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  align-items:center!important;
  text-align:center!important;
  padding-bottom:12vh!important;
}
.phero__title{
  max-width:18ch!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.phero__sub{
  max-width:42ch!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* Bloques de cabecera de sección más consistentes. */
.shead{
  text-align:center!important;
  align-items:center!important;
  justify-content:center!important;
}
.shead h2,
.faq h2,
.rwall__head h2,
.tmarq__head h2,
.igfeed__head h2{
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* Contenido editorial: ancho y ritmo similar en todas las páginas. */
.split__body,
.chapter__in,
.panel__in,
.contact,
.qform__intro,
.faq,
.ctaband{
  text-align:center;
}
.split__body h2,
.split__body p,
.chapter__h,
.chapter__sub,
.panel__h,
.panel__sub,
.contact__big,
.faq__intro,
.ctaband h2{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* CTAs centrados de forma consistente. */
.seccta,
.contact__cta,
.chapter__link,
.panel__link,
.qform__alt{
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
}
.ctaband{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}

/* Cards, pasos y bloques técnicos: misma lectura ordenada. */
.cards,
.steps,
.feat,
.treatfaq,
.svcs{
  text-align:center;
}
.step,
.cardi,
.tq,
.tcardq,
.test__it,
.rcard,
.qline{
  text-align:center!important;
}
.feat__grid{
  justify-items:center!important;
}
.tags,
.book__pts{
  justify-content:center!important;
}

/* FAQ directa: la pregunta manda, no el texto introductorio. */
.faq h2{
  max-width:20ch!important;
}
.faq__intro{
  max-width:56ch!important;
}

/* Footer y cierres centrados. */
.footer__bottom,
.footer__disc{
  text-align:center!important;
}
.footer__disc{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Desktop: páginas internas con menos sensación de bloques desiguales. */
@media(min-width:901px){
  body:not(.home) .split{
    min-height:auto!important;
  }

  body:not(.home) .split__body{
    padding-top:11vh!important;
    padding-bottom:11vh!important;
  }

  body:not(.home) .chapter__in{
    max-width:980px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body:not(.home) .chapter__h{
    max-width:18ch!important;
  }

  body:not(.home) .chapter__sub{
    max-width:48ch!important;
  }

  body:not(.home) .steps{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:1rem!important;
    padding-left:var(--pad)!important;
    padding-right:var(--pad)!important;
  }

  body:not(.home) .step{
    border-radius:20px!important;
    padding:2.2rem 1.5rem!important;
  }

  body:not(.home) .cards{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:1rem!important;
    padding-left:var(--pad)!important;
    padding-right:var(--pad)!important;
  }

  body:not(.home) .ctaband{
    padding-top:12vh!important;
    padding-bottom:12vh!important;
  }
}

/* Móvil: misma jerarquía que la Home. */
@media(max-width:900px){
  html.bidot-mobile .phero{
    min-height:100svh!important;
  }

  html.bidot-mobile .phero__inner{
    padding:0 var(--pad) 13svh!important;
    transform:translateY(-2vh)!important;
    align-items:center!important;
    text-align:center!important;
  }

  html.bidot-mobile .phero__title{
    width:100%!important;
    max-width:12.5ch!important;
    font-size:clamp(2rem,8.4vw,2.8rem)!important;
    line-height:1.05!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  html.bidot-mobile .phero__sub{
    max-width:30ch!important;
    font-size:.94rem!important;
    line-height:1.45!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  html.bidot-mobile .split__body,
  html.bidot-mobile .chapter__in,
  html.bidot-mobile .panel__in,
  html.bidot-mobile .contact,
  html.bidot-mobile .qform__intro,
  html.bidot-mobile .faq,
  html.bidot-mobile .ctaband{
    text-align:center!important;
    align-items:center!important;
  }

  html.bidot-mobile .shead{
    padding:6vh var(--pad) 2.2vh!important;
    text-align:center!important;
  }

  html.bidot-mobile .shead h2{
    max-width:12ch!important;
    font-size:clamp(2rem,8vw,2.65rem)!important;
    line-height:1.08!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  html.bidot-mobile .split__body{
    padding:7vh var(--pad)!important;
  }

  html.bidot-mobile .split__body h2,
  html.bidot-mobile .ctaband h2{
    max-width:13ch!important;
    font-size:clamp(1.85rem,7.8vw,2.5rem)!important;
    line-height:1.1!important;
    text-align:center!important;
  }

  html.bidot-mobile .split__body p,
  html.bidot-mobile .chapter__sub,
  html.bidot-mobile .panel__sub,
  html.bidot-mobile .faq__intro,
  html.bidot-mobile .ctaband p{
    max-width:31ch!important;
    font-size:.94rem!important;
    line-height:1.5!important;
    text-align:center!important;
  }

  html.bidot-mobile .steps,
  html.bidot-mobile .cards{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:.85rem!important;
    padding:5vh var(--pad)!important;
  }

  html.bidot-mobile .step,
  html.bidot-mobile .cardi{
    text-align:center!important;
    padding:1.55rem 1.25rem!important;
    border-radius:16px!important;
  }

  html.bidot-mobile .feat{
    padding:6vh var(--pad)!important;
  }

  html.bidot-mobile .feat__grid{
    gap:1.2rem!important;
    text-align:center!important;
  }

  html.bidot-mobile .faq{
    padding:7vh var(--pad)!important;
  }

  html.bidot-mobile .faq h2{
    font-size:clamp(2rem,8vw,2.8rem)!important;
    line-height:1.08!important;
    margin-bottom:2rem!important;
  }

  html.bidot-mobile .ctaband{
    padding:8vh var(--pad)!important;
  }

  html.bidot-mobile .ctaband .btn{
    margin-left:auto!important;
    margin-right:auto!important;
  }

  html.bidot-mobile .footer__bottom{
    justify-items:center!important;
    text-align:center!important;
  }
}


/* =====================================================================
   BIDOT — TÍTULOS INTERNOS EN UNA LÍNEA v1.5.7
   Ajuste para que la mayoría de títulos de páginas internas no se partan.
   Se reduce escala cuando hace falta y se mantiene la Home intacta.
   ===================================================================== */

/* Escritorio: páginas internas con titulares más horizontales. */
@media(min-width:901px){
  body:not(.home) .phero__title,
  body:not(.home) .shead h2,
  body:not(.home) .split__body h2,
  body:not(.home) .ctaband h2,
  body:not(.home) .faq h2{
    max-width:100%!important;
    width:auto!important;
    white-space:nowrap!important;
    text-align:center!important;
    text-wrap:normal!important;
  }

  body:not(.home) .phero__title{
    font-size:clamp(3rem,4.8vw,5.1rem)!important;
    line-height:1.02!important;
  }

  body:not(.home) .shead h2,
  body:not(.home) .split__body h2,
  body:not(.home) .ctaband h2,
  body:not(.home) .faq h2{
    font-size:clamp(2.15rem,3.4vw,3.7rem)!important;
    line-height:1.06!important;
  }
}

/* Móvil: una línea siempre que sea viable, con escala más contenida. */
@media(max-width:900px){
  html.bidot-mobile body:not(.home) .phero__title,
  html.bidot-mobile body:not(.home) .shead h2,
  html.bidot-mobile body:not(.home) .split__body h2,
  html.bidot-mobile body:not(.home) .ctaband h2,
  html.bidot-mobile body:not(.home) .faq h2{
    max-width:100%!important;
    width:100%!important;
    white-space:nowrap!important;
    text-align:center!important;
    text-wrap:normal!important;
    overflow:visible!important;
    letter-spacing:-.02em!important;
  }

  html.bidot-mobile body:not(.home) .phero__title{
    font-size:clamp(1.48rem,5.55vw,2.05rem)!important;
    line-height:1.05!important;
  }

  html.bidot-mobile body:not(.home) .shead h2,
  html.bidot-mobile body:not(.home) .split__body h2,
  html.bidot-mobile body:not(.home) .ctaband h2,
  html.bidot-mobile body:not(.home) .faq h2{
    font-size:clamp(1.42rem,5.35vw,1.95rem)!important;
    line-height:1.08!important;
  }

  /* Títulos especialmente largos: bajan un punto más para no caer a dos líneas. */
  html.bidot-mobile body[class*="hialuronico"] .phero__title,
  html.bidot-mobile body[class*="bioestimulacion"] .phero__title,
  html.bidot-mobile body[class*="armonizacion"] .phero__title{
    font-size:clamp(1.28rem,4.9vw,1.78rem)!important;
    letter-spacing:-.03em!important;
  }
}


/* =====================================================================
   BIDOT — TÍTULOS Y TEXTOS HOME v1.5.8
   Títulos más presentes y textos centrados con más ancho. Se elimina
   visualmente "Nuestra forma de trabajar" si quedara por caché.
   ===================================================================== */

/* Títulos con más peso visual frente al texto. */
.hero__title,
.phero__title,
.shead h2,
.split__body h2,
.ctaband h2,
.faq h2,
.rwall__head h2,
.igfeed__head h2{
  letter-spacing:-.018em!important;
}

/* Home: textos más anchos y centrados, sin quedar en columnas demasiado estrechas. */
body.home .hero__sub,
body.home .split__body p,
body.home .faq__intro,
body.home .rwall__head p,
body.home .igfeed__head p,
body.home .book__info p{
  max-width:54ch!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* Si por caché aparece el bloque de título anterior, se oculta. */
body.home .mani + .shead,
body.home .shead:has(h2.reveal){
  /* No se usa display:none general para no afectar "Nuestros tratamientos". */
}

/* Escritorio */
@media(min-width:901px){
  body.home .hero__title{
    font-size:clamp(4.1rem,7vw,7.4rem)!important;
    line-height:1.02!important;
  }

  body.home .shead h2,
  body.home .split__body h2,
  body.home .faq h2,
  body.home .rwall__head h2,
  body.home .igfeed__head h2,
  body.home .ctaband h2{
    font-size:clamp(2.8rem,4.6vw,5rem)!important;
    line-height:1.04!important;
  }

  body.home .hero__sub{
    max-width:48ch!important;
    font-size:1.18rem!important;
    line-height:1.55!important;
  }

  body.home .split__body p,
  body.home .faq__intro,
  body.home .rwall__head p{
    max-width:64ch!important;
    font-size:1.06rem!important;
    line-height:1.72!important;
  }

  body.home .book__info p{
    max-width:36ch!important;
    font-size:1rem!important;
    line-height:1.5!important;
  }

  /* Al quitar el título de "Nuestra forma", las tarjetas suben con aire correcto. */
  body.home .pillars{
    padding-top:6vh!important;
  }
}

/* Móvil */
@media(max-width:900px){
  html.bidot-mobile body.home .hero__title{
    font-size:clamp(1.62rem,5.85vw,2.08rem)!important;
    line-height:1.04!important;
  }

  html.bidot-mobile body.home .shead h2,
  html.bidot-mobile body.home .split__body h2,
  html.bidot-mobile body.home .faq h2,
  html.bidot-mobile body.home .rwall__head h2,
  html.bidot-mobile body.home .igfeed__head h2,
  html.bidot-mobile body.home .ctaband h2{
    font-size:clamp(2.12rem,8.8vw,3rem)!important;
    line-height:1.06!important;
  }

  html.bidot-mobile body.home .hero__sub{
    max-width:34ch!important;
    font-size:1rem!important;
    line-height:1.46!important;
  }

  html.bidot-mobile body.home .split__body p,
  html.bidot-mobile body.home .faq__intro,
  html.bidot-mobile body.home .rwall__head p,
  html.bidot-mobile body.home .igfeed__head p{
    max-width:36ch!important;
    font-size:.98rem!important;
    line-height:1.55!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .book__info p{
    max-width:33ch!important;
    font-size:.98rem!important;
    line-height:1.48!important;
  }

  html.bidot-mobile body.home .pillars{
    padding-top:3vh!important;
  }

  html.bidot-mobile body.home .pillars__in p{
    max-width:32ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  /* El título de reseñas máximo dos líneas pero más grande. */
  html.bidot-mobile body.home .rwall__head h2{
    max-width:24ch!important;
    font-size:clamp(1.75rem,6.8vw,2.35rem)!important;
  }
}

/* Páginas internas: recuperar tamaño sin perder la línea única en la mayoría. */
@media(min-width:901px){
  body:not(.home) .phero__title{
    font-size:clamp(3.4rem,5.4vw,5.9rem)!important;
  }

  body:not(.home) .shead h2,
  body:not(.home) .split__body h2,
  body:not(.home) .ctaband h2,
  body:not(.home) .faq h2{
    font-size:clamp(2.45rem,3.85vw,4.15rem)!important;
  }
}

@media(max-width:900px){
  html.bidot-mobile body:not(.home) .phero__title{
    font-size:clamp(1.62rem,6vw,2.2rem)!important;
  }

  html.bidot-mobile body:not(.home) .shead h2,
  html.bidot-mobile body:not(.home) .split__body h2,
  html.bidot-mobile body:not(.home) .ctaband h2,
  html.bidot-mobile body:not(.home) .faq h2{
    font-size:clamp(1.58rem,5.8vw,2.12rem)!important;
  }
}


/* =====================================================================
   BIDOT — TÍTULOS MÁS DIFERENCIADOS HOME v1.5.9
   Titulares con más presencia y fuente editorial clara. Textos de
   tratamientos más anchos, especialmente Lipólisis, y clínica reforzada.
   ===================================================================== */

/* Base: los títulos de Home se separan más del texto por fuente, escala y peso. */
body.home .shead h2,
body.home .book__info h3,
body.home .home-clinic .split__body h2,
body.home .faq h2,
body.home .rwall__head h2,
body.home .igfeed__head h2{
  font-family:var(--serif)!important;
  font-weight:300!important;
  letter-spacing:-.035em!important;
  line-height:1.02!important;
}

/* Las descripciones mantienen sans, más pequeñas y claramente secundarias. */
body.home .book__info p,
body.home .home-clinic .split__body p,
body.home .split__body p,
body.home .faq__intro,
body.home .rwall__head p{
  font-family:var(--sans)!important;
  font-weight:400!important;
}

/* Tratamientos Home: texto más ancho y centrado. */
body.home .book__info p{
  max-width:42ch!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* Lipólisis inyectable: al ser la última tarjeta, se ensancha un poco más. */
body.home .book__page:last-child .book__info p{
  max-width:46ch!important;
}

/* Clínica Home: "Tu cita con calma" tiene que leerse como título real. */
body.home .home-clinic .split__body h2{
  text-transform:none!important;
  color:#fff!important;
  text-shadow:0 3px 34px rgba(0,0,0,.46)!important;
}
body.home .home-clinic .split__body p{
  max-width:46ch!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* PC */
@media(min-width:901px){
  body.home .shead h2,
  body.home .faq h2,
  body.home .rwall__head h2,
  body.home .igfeed__head h2{
    font-size:clamp(3.2rem,5vw,5.6rem)!important;
  }

  body.home .book__info h3{
    font-size:clamp(2rem,2.7vw,3.05rem)!important;
    line-height:.98!important;
    margin-bottom:1rem!important;
    text-shadow:0 3px 30px rgba(0,0,0,.45)!important;
  }

  body.home .book__info p{
    max-width:42ch!important;
    font-size:1.02rem!important;
    line-height:1.52!important;
  }

  body.home .book__page:last-child .book__info p{
    max-width:48ch!important;
  }

  body.home .home-clinic .split__body h2{
    font-size:clamp(3.1rem,5.2vw,5.8rem)!important;
    line-height:.98!important;
    max-width:100%!important;
    margin-bottom:1.15rem!important;
  }

  body.home .home-clinic .split__body p{
    max-width:48ch!important;
    font-size:1.12rem!important;
    line-height:1.55!important;
  }
}

/* Móvil */
@media(max-width:900px){
  html.bidot-mobile body.home .shead h2,
  html.bidot-mobile body.home .faq h2,
  html.bidot-mobile body.home .rwall__head h2,
  html.bidot-mobile body.home .igfeed__head h2{
    font-size:clamp(2.35rem,9.6vw,3.25rem)!important;
    line-height:1.02!important;
    letter-spacing:-.04em!important;
  }

  html.bidot-mobile body.home .book__info h3{
    font-size:clamp(1.72rem,7vw,2.28rem)!important;
    line-height:.98!important;
    letter-spacing:-.035em!important;
    margin-bottom:.85rem!important;
    text-shadow:0 3px 26px rgba(0,0,0,.48)!important;
  }

  html.bidot-mobile body.home .book__info p{
    max-width:36ch!important;
    width:100%!important;
    font-size:.98rem!important;
    line-height:1.5!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .book__page:last-child .book__info p{
    max-width:39ch!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body h2{
    width:100%!important;
    max-width:100%!important;
    white-space:nowrap!important;
    font-size:clamp(1.72rem,7.2vw,2.35rem)!important;
    line-height:1!important;
    letter-spacing:-.04em!important;
    margin-bottom:.85rem!important;
    text-align:center!important;
    text-shadow:0 3px 28px rgba(0,0,0,.5)!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body p{
    max-width:34ch!important;
    font-size:.82rem!important;
    line-height:1.4!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
}


/* =====================================================================
   BIDOT — HOME AJUSTES TÍTULOS Y HERO v1.6.0
   Títulos más diferenciados, "Nuestros tratamientos" en una línea,
   texto de clínica ajustado y botones del hero con efecto cristal.
   ===================================================================== */

/* Home: títulos claramente distintos al texto. */
body.home .shead h2,
body.home .book__info h3,
body.home .home-clinic .split__body h2,
body.home .faq h2,
body.home .rwall__head h2,
body.home .igfeed__head h2{
  font-family:var(--serif)!important;
  font-weight:300!important;
  letter-spacing:-.05em!important;
  line-height:.96!important;
}

/* "Nuestros tratamientos" en una sola línea en Home. */
body.home .shead h2{
  max-width:100%!important;
  width:100%!important;
  white-space:nowrap!important;
  text-align:center!important;
  text-wrap:normal!important;
}

/* Botones del hero con efecto cristal como las tarjetas. */
body.home .hero__actions .btn,
body.home .hero__actions .btn-gold,
body.home .hero__actions .btn-line{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  padding:.88rem 1.25rem!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.12)!important;
  border:1.35px solid rgba(255,255,255,.72)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:0 12px 30px rgba(0,0,0,.16)!important;
  text-shadow:0 1px 14px rgba(0,0,0,.26)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
  transform:none!important;
}
body.home .hero__actions .btn:hover,
body.home .hero__actions .btn-gold:hover,
body.home .hero__actions .btn-line:hover{
  background:rgba(255,255,255,.24)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:rgba(255,255,255,.86)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.2)!important;
}

/* Texto de clínica más ancho pero centrado. */
body.home .home-clinic .split__body p{
  max-width:52ch!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* PC */
@media(min-width:901px){
  body.home .shead h2{
    font-size:clamp(3.4rem,5.4vw,6rem)!important;
  }

  body.home .book__info h3{
    font-size:clamp(2.15rem,3vw,3.35rem)!important;
    line-height:.94!important;
    margin-bottom:1.05rem!important;
  }

  body.home .home-clinic .split__body h2{
    font-size:clamp(3.8rem,6.2vw,7rem)!important;
    line-height:.9!important;
    max-width:100%!important;
    white-space:nowrap!important;
    margin-bottom:1.2rem!important;
  }

  body.home .home-clinic .split__body p{
    max-width:56ch!important;
    font-size:1.18rem!important;
    line-height:1.55!important;
  }

  body.home .faq h2,
  body.home .rwall__head h2,
  body.home .igfeed__head h2{
    font-size:clamp(3.1rem,4.9vw,5.8rem)!important;
  }

  body.home .hero__actions{
    gap:.9rem!important;
  }
}

/* Móvil */
@media(max-width:900px){
  html.bidot-mobile body.home .shead h2{
    font-size:clamp(1.62rem,6vw,2.1rem)!important;
    max-width:100%!important;
    width:100%!important;
    white-space:nowrap!important;
    letter-spacing:-.045em!important;
  }

  html.bidot-mobile body.home .book__info h3{
    font-size:clamp(1.88rem,7.7vw,2.55rem)!important;
    line-height:.95!important;
    letter-spacing:-.045em!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body h2{
    width:100%!important;
    max-width:100%!important;
    white-space:nowrap!important;
    font-size:clamp(2.05rem,8.4vw,2.85rem)!important;
    line-height:.92!important;
    letter-spacing:-.055em!important;
    margin-bottom:.8rem!important;
  }

  html.bidot-mobile body.home .home-clinic .split__body p{
    max-width:36ch!important;
    font-size:.86rem!important;
    line-height:1.42!important;
    margin-bottom:1rem!important;
  }

  html.bidot-mobile body.home .faq h2,
  html.bidot-mobile body.home .rwall__head h2,
  html.bidot-mobile body.home .igfeed__head h2{
    font-size:clamp(2.35rem,9.8vw,3.3rem)!important;
    line-height:.98!important;
  }

  html.bidot-mobile body.home .hero__actions .btn,
  html.bidot-mobile body.home .hero__actions .btn-gold,
  html.bidot-mobile body.home .hero__actions .btn-line{
    min-height:48px!important;
    padding:.78rem .92rem!important;
    font-size:.58rem!important;
    background:rgba(255,255,255,.12)!important;
    border:1.35px solid rgba(255,255,255,.74)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    backdrop-filter:blur(9px)!important;
    -webkit-backdrop-filter:blur(9px)!important;
  }
}


/* =====================================================================
   BIDOT — BLOQUE DR. BIDOT + NEUROMODULADORES v1.6.1
   Nuevo bloque biográfico en Home y refuerzo del título Neuromoduladores.
   ===================================================================== */

.home-doctor{
  background:var(--dark);
  color:var(--cream);
  display:grid;
  grid-template-columns:minmax(0,0.92fr) minmax(0,1.08fr);
  min-height:78vh;
  overflow:hidden;
}
.home-doctor__media{
  position:relative;
  min-height:520px;
  overflow:hidden;
}
.home-doctor__media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 18%;
  filter:brightness(.82) saturate(.96);
  transform:scale(1.02);
}
.home-doctor__body{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
  padding:10vh clamp(2rem,6vw,7rem);
  text-align:left;
}
.home-doctor__body .eyebrow{
  margin-bottom:1.4rem;
}
.home-doctor__body h2{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(3.8rem,7vw,7.2rem);
  line-height:.9;
  letter-spacing:-.055em;
  margin:0 0 1rem;
  color:var(--cream);
}
.home-doctor__body h3{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(1.55rem,2.45vw,2.35rem);
  line-height:1.08;
  letter-spacing:-.02em;
  max-width:18ch;
  margin:0 0 2rem;
  color:var(--cream);
}
.home-doctor__body p{
  max-width:68ch;
  font-family:var(--sans);
  font-size:1.03rem;
  line-height:1.75;
  color:rgba(248,245,240,.82);
  margin:0 0 1.15rem;
}
.home-doctor__body ul{
  list-style:none;
  padding:0;
  margin:1.2rem 0 0;
  display:grid;
  gap:.7rem;
}
.home-doctor__body li{
  position:relative;
  padding-left:1.4rem;
  font-size:.86rem;
  line-height:1.45;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:rgba(248,245,240,.86);
}
.home-doctor__body li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--gold);
}

/* Neuromoduladores tenía demasiada reducción; recupera presencia. */
body.home .book__page:first-child .book__info h3{
  font-size:clamp(2.15rem,3.25vw,3.55rem)!important;
  letter-spacing:-.06em!important;
  line-height:.93!important;
}

/* Ajuste del flujo entre doctor y tratamientos. */
body.home .home-doctor + .shead{
  padding-top:10vh!important;
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-doctor{
    display:block;
    position:relative;
    min-height:auto;
    background:var(--dark);
    color:var(--cream);
    padding:0;
  }
  html.bidot-mobile body.home .home-doctor__media{
    min-height:48svh;
    height:48svh;
  }
  html.bidot-mobile body.home .home-doctor__media::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.62));
    pointer-events:none;
  }
  html.bidot-mobile body.home .home-doctor__media img{
    object-position:center 12%;
  }
  html.bidot-mobile body.home .home-doctor__body{
    padding:6vh var(--pad) 7vh;
    align-items:center;
    text-align:center;
  }
  html.bidot-mobile body.home .home-doctor__body h2{
    font-size:clamp(3.1rem,14vw,4.8rem)!important;
    line-height:.88!important;
    margin-bottom:.85rem;
    text-align:center;
  }
  html.bidot-mobile body.home .home-doctor__body h3{
    max-width:19ch;
    font-size:clamp(1.35rem,6.4vw,2rem)!important;
    line-height:1.08!important;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:1.6rem;
    text-align:center;
  }
  html.bidot-mobile body.home .home-doctor__body p{
    max-width:36ch!important;
    font-size:.94rem!important;
    line-height:1.58!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  html.bidot-mobile body.home .home-doctor__body ul{
    width:100%;
    max-width:35ch;
    margin-left:auto;
    margin-right:auto;
  }
  html.bidot-mobile body.home .home-doctor__body li{
    padding-left:0;
    font-size:.72rem;
    text-align:center;
  }
  html.bidot-mobile body.home .home-doctor__body li::before{
    position:static;
    display:block;
    margin:.15rem auto .55rem;
  }
  html.bidot-mobile body.home .book__page:first-child .book__info h3{
    font-size:clamp(2.28rem,9.4vw,3rem)!important;
    letter-spacing:-.07em!important;
    line-height:.9!important;
  }
  html.bidot-mobile body.home .home-doctor + .shead{
    padding-top:6.5vh!important;
  }
}


/* =====================================================================
   BIDOT — TÍTULOS MÓVIL DESTACADOS SIN MULTILÍNEA v1.6.2
   Los títulos ganan presencia visual sin romperse en muchas líneas.
   El JS ajusta el tamaño solo si una línea concreta no cabe.
   ===================================================================== */
@media(max-width:900px){
  html.bidot-mobile body .phero__title,
  html.bidot-mobile body .shead h2,
  html.bidot-mobile body .split__body h2,
  html.bidot-mobile body .ctaband h2,
  html.bidot-mobile body .faq h2,
  html.bidot-mobile body .rwall__head h2,
  html.bidot-mobile body .igfeed__head h2,
  html.bidot-mobile body .book__info h3,
  html.bidot-mobile body .home-doctor__body h2,
  html.bidot-mobile body .home-doctor__body h3{
    font-family:var(--serif)!important;
    font-weight:300!important;
    line-height:.94!important;
    letter-spacing:-.06em!important;
    white-space:nowrap!important;
    max-width:100%!important;
    width:100%!important;
    text-align:center!important;
    text-wrap:normal!important;
    overflow:visible!important;
    display:block!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  html.bidot-mobile body .shead h2,
  html.bidot-mobile body .split__body h2,
  html.bidot-mobile body .ctaband h2,
  html.bidot-mobile body .faq h2,
  html.bidot-mobile body .rwall__head h2,
  html.bidot-mobile body .igfeed__head h2{
    font-size:clamp(2.35rem,10.4vw,3.35rem)!important;
    margin-bottom:1.05rem!important;
  }

  html.bidot-mobile body .book__info h3{
    font-size:clamp(2.05rem,9.2vw,3rem)!important;
    margin-bottom:1rem!important;
  }

  html.bidot-mobile body .phero__title{
    font-size:clamp(2.1rem,9.6vw,3.15rem)!important;
  }

  html.bidot-mobile body .home-doctor__body h2{
    font-size:clamp(3.45rem,15vw,5.2rem)!important;
  }

  html.bidot-mobile body .home-doctor__body h3{
    font-size:clamp(1.55rem,6.9vw,2.25rem)!important;
    white-space:normal!important;
    max-width:18ch!important;
    line-height:1.05!important;
  }

  html.bidot-mobile body p,
  html.bidot-mobile body .book__info p,
  html.bidot-mobile body .split__body p,
  html.bidot-mobile body .ctaband p,
  html.bidot-mobile body .faq__intro{
    font-size:.94rem!important;
    line-height:1.55!important;
  }

  html.bidot-mobile body .shead h2::after,
  html.bidot-mobile body .split__body h2::after,
  html.bidot-mobile body .ctaband h2::after,
  html.bidot-mobile body .faq h2::after,
  html.bidot-mobile body .rwall__head h2::after,
  html.bidot-mobile body .igfeed__head h2::after{
    content:""!important;
    display:block!important;
    width:42px!important;
    height:1px!important;
    background:var(--gold)!important;
    margin:.78rem auto 0!important;
    opacity:.9!important;
  }

  html.bidot-mobile body .bidot-fit-title{
    transform-origin:center center!important;
  }
}


/* =====================================================================
   BIDOT — HERO HOME MADRID SEGUNDA LÍNEA v1.6.3
   Título del hero más grande y Madrid forzado a segunda línea.
   ===================================================================== */
body.home .hero__title{
  font-size:clamp(4.6rem,8.1vw,8.6rem)!important;
  line-height:.93!important;
  letter-spacing:-.06em!important;
}

body.home .hero__title br{
  display:block!important;
}

@media(max-width:900px){
  html.bidot-mobile body.home .hero__title{
    font-size:clamp(2.35rem,9.4vw,3.25rem)!important;
    line-height:.96!important;
    letter-spacing:-.055em!important;
    max-width:100%!important;
    white-space:normal!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .hero__title br{
    display:block!important;
  }
}


/* =====================================================================
   BIDOT — DR. BIDOT DESPLEGABLE v1.6.4
   La imagen funciona como desplegable: muestra la ficha básica y abre
   el texto completo al pulsar "Más información".
   ===================================================================== */

.home-doctor{
  background:var(--dark)!important;
  color:var(--cream)!important;
  padding:0!important;
  overflow:hidden!important;
  display:block!important;
  min-height:auto!important;
}

.home-doctor__details{
  display:block!important;
  width:100%!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
}

.home-doctor__summary{
  list-style:none!important;
  cursor:pointer!important;
  display:grid!important;
  grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)!important;
  min-height:76vh!important;
  align-items:stretch!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
}

.home-doctor__summary::-webkit-details-marker{
  display:none!important;
}

.home-doctor__media{
  position:relative!important;
  min-height:520px!important;
  overflow:hidden!important;
  background:#111!important;
}

.home-doctor__media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 18%!important;
  filter:brightness(.82) saturate(.96)!important;
  transform:scale(1.02)!important;
  transition:transform .75s ease, filter .75s ease!important;
}

.home-doctor__summary:hover .home-doctor__media img{
  transform:scale(1.06)!important;
  filter:brightness(.9) saturate(1)!important;
}

.home-doctor__media::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,rgba(0,0,0,.04),rgba(0,0,0,.45))!important;
  pointer-events:none!important;
}

.home-doctor__more{
  position:absolute!important;
  left:50%!important;
  bottom:2rem!important;
  z-index:2!important;
  transform:translateX(-50%)!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  padding:.85rem 1.35rem!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.13)!important;
  border:1.35px solid rgba(255,255,255,.76)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:var(--sans)!important;
  font-size:.68rem!important;
  font-weight:600!important;
  letter-spacing:.09em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px 14px rgba(0,0,0,.25)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.2)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
}

.home-doctor__details[open] .home-doctor__more{
  background:rgba(255,255,255,.24)!important;
}

.home-doctor__details[open] .home-doctor__more::after{
  content:"  −"!important;
}

.home-doctor__details:not([open]) .home-doctor__more::after{
  content:"  +"!important;
}

.home-doctor__intro{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:flex-start!important;
  padding:10vh clamp(2rem,6vw,7rem)!important;
  text-align:left!important;
  background:var(--dark)!important;
}

.home-doctor__intro .eyebrow{
  margin-bottom:1.4rem!important;
}

.home-doctor__intro h2{
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(4.2rem,7.6vw,8rem)!important;
  line-height:.88!important;
  letter-spacing:-.06em!important;
  margin:0 0 1rem!important;
  color:var(--cream)!important;
}

.home-doctor__intro h3{
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(1.7rem,2.7vw,2.55rem)!important;
  line-height:1.04!important;
  letter-spacing:-.025em!important;
  max-width:18ch!important;
  margin:0!important;
  color:var(--cream)!important;
}

.home-doctor__body{
  max-width:1180px!important;
  margin:0 auto!important;
  padding:0 var(--pad) 10vh!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:2rem 4rem!important;
  text-align:left!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
  animation:bidotDoctorOpen164 .42s ease both!important;
}

@keyframes bidotDoctorOpen164{
  from{opacity:0;transform:translateY(-10px);}
  to{opacity:1;transform:translateY(0);}
}

.home-doctor__body p{
  max-width:68ch!important;
  font-family:var(--sans)!important;
  font-size:1.02rem!important;
  line-height:1.75!important;
  color:rgba(248,245,240,.82)!important;
  margin:0!important;
}

.home-doctor__body ul{
  list-style:none!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  gap:.72rem!important;
  grid-column:1 / -1!important;
  max-width:780px!important;
}

.home-doctor__body li{
  position:relative!important;
  padding-left:1.4rem!important;
  font-size:.86rem!important;
  line-height:1.45!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  color:rgba(248,245,240,.86)!important;
}

.home-doctor__body li::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:.55em!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:var(--gold)!important;
}

/* Mantiene Neuromoduladores con presencia. */
body.home .book__page:first-child .book__info h3{
  font-size:clamp(2.2rem,3.35vw,3.65rem)!important;
  letter-spacing:-.065em!important;
  line-height:.92!important;
}

body.home .home-doctor + .shead{
  padding-top:10vh!important;
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-doctor__summary{
    display:block!important;
    min-height:auto!important;
  }

  html.bidot-mobile body.home .home-doctor__media{
    min-height:50svh!important;
    height:50svh!important;
  }

  html.bidot-mobile body.home .home-doctor__media img{
    object-position:center 12%!important;
  }

  html.bidot-mobile body.home .home-doctor__more{
    bottom:1.35rem!important;
    min-height:46px!important;
    padding:.78rem 1.15rem!important;
    font-size:.6rem!important;
  }

  html.bidot-mobile body.home .home-doctor__intro{
    padding:5.8vh var(--pad) 6.5vh!important;
    align-items:center!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__intro h2{
    width:100%!important;
    font-size:clamp(3.55rem,15.4vw,5.3rem)!important;
    line-height:.86!important;
    text-align:center!important;
    white-space:nowrap!important;
  }

  html.bidot-mobile body.home .home-doctor__intro h3{
    max-width:19ch!important;
    font-size:clamp(1.5rem,6.7vw,2.15rem)!important;
    line-height:1.05!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body{
    display:block!important;
    padding:0 var(--pad) 7vh!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body p{
    max-width:36ch!important;
    font-size:.94rem!important;
    line-height:1.58!important;
    margin:0 auto 1.15rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body ul{
    max-width:35ch!important;
    margin:1.4rem auto 0!important;
  }

  html.bidot-mobile body.home .home-doctor__body li{
    padding-left:0!important;
    font-size:.72rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body li::before{
    position:static!important;
    display:block!important;
    margin:.15rem auto .55rem!important;
  }

  html.bidot-mobile body.home .book__page:first-child .book__info h3{
    font-size:clamp(2.32rem,9.7vw,3.1rem)!important;
    letter-spacing:-.07em!important;
    line-height:.9!important;
  }

  html.bidot-mobile body.home .home-doctor + .shead{
    padding-top:6.5vh!important;
  }
}


/* =====================================================================
   BIDOT — NUESTROS TRATAMIENTOS MÁS GRANDE v1.6.5
   Refuerza el título de tratamientos en la Home sin romperlo en varias líneas.
   ===================================================================== */
body.home .home-doctor + .shead h2,
body.home .shead h2{
  font-family:var(--serif)!important;
  font-weight:300!important;
  letter-spacing:-.06em!important;
  line-height:.88!important;
  white-space:nowrap!important;
  max-width:100%!important;
  width:100%!important;
  text-align:center!important;
}

@media(min-width:901px){
  body.home .home-doctor + .shead h2,
  body.home .shead h2{
    font-size:clamp(4.2rem,7vw,7.7rem)!important;
    margin-bottom:1.15rem!important;
  }
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-doctor + .shead h2,
  html.bidot-mobile body.home .shead h2{
    font-size:clamp(2.05rem,8vw,2.75rem)!important;
    line-height:.92!important;
    letter-spacing:-.065em!important;
    white-space:nowrap!important;
    max-width:100%!important;
    width:100%!important;
  }
}


/* =====================================================================
   BIDOT — HERO CLÍNICA / MADRID v1.6.6
   Primera línea: "Clínica de medicina estética"
   Segunda línea: "Madrid", centrada y con más presencia.
   ===================================================================== */
body.home .hero__title{
  text-align:center!important;
}
body.home .hero__title br{
  display:block!important;
}
body.home .hero__title-city{
  display:block!important;
  text-align:center!important;
}

@media(min-width:901px){
  body.home .hero__title{
    font-size:clamp(4.9rem,8.2vw,8.8rem)!important;
    line-height:.9!important;
    letter-spacing:-.065em!important;
    white-space:normal!important;
  }
  body.home .hero__title-city{
    font-size:1.08em!important;
    line-height:.92!important;
    margin-top:.08em!important;
  }
}

@media(max-width:900px){
  html.bidot-mobile body.home .hero__title{
    font-size:clamp(2.45rem,9.6vw,3.35rem)!important;
    line-height:.94!important;
    letter-spacing:-.06em!important;
    white-space:normal!important;
    max-width:100%!important;
  }
  html.bidot-mobile body.home .hero__title-city{
    font-size:1.08em!important;
    line-height:.92!important;
    margin-top:.06em!important;
  }
}


/* =====================================================================
   BIDOT — HERO EN MADRID v1.6.7
   Segunda línea del hero ajustada a "en Madrid".
   ===================================================================== */
body.home .hero__title-city{
  display:block!important;
  text-align:center!important;
  text-transform:none!important;
}


/* =====================================================================
   BIDOT — TÍTULOS PILARS + INDICADOR DESPLEGABLE v1.6.8
   Hace los títulos de las tarjetas de método un poco más grandes y añade
   un indicador visual de que se pueden desplegar.
   ===================================================================== */

body.home .pillars__p{
  position:relative!important;
  cursor:pointer!important;
}

body.home .pillars__in h3{
  font-family:var(--serif)!important;
  font-weight:300!important;
  letter-spacing:-.04em!important;
}

body.home .pillars__p::after{
  content:"+"!important;
  position:absolute!important;
  right:1.2rem!important;
  bottom:1.2rem!important;
  z-index:3!important;
  width:38px!important;
  height:38px!important;
  border-radius:999px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:rgba(255,255,255,.11)!important;
  border:1.2px solid rgba(255,255,255,.72)!important;
  color:#fff!important;
  font-family:var(--sans)!important;
  font-size:1.15rem!important;
  font-weight:500!important;
  line-height:1!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
  pointer-events:none!important;
  transition:transform .28s ease, background .28s ease, border-color .28s ease!important;
}

body.home .pillars__p.is-active::after{
  content:"–"!important;
  background:rgba(255,255,255,.2)!important;
  border-color:rgba(255,255,255,.86)!important;
  transform:scale(1.03)!important;
}

@media(min-width:901px){
  body.home .pillars__in h3{
    font-size:clamp(2.2rem,3.25vw,3.55rem)!important;
    line-height:.95!important;
    margin-bottom:.85rem!important;
  }

  body.home .pillars__p:nth-child(2) .pillars__in h3{
    font-size:clamp(2rem,2.95vw,3.2rem)!important;
  }

  body.home .pillars__in p{
    max-width:40ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

@media(max-width:900px){
  html.bidot-mobile body.home .pillars__in h3{
    font-size:clamp(2.1rem,8.6vw,2.95rem)!important;
    line-height:.95!important;
    margin-bottom:.75rem!important;
  }

  html.bidot-mobile body.home .pillars__p:nth-child(2) .pillars__in h3{
    font-size:clamp(1.7rem,6.6vw,2.3rem)!important;
    white-space:nowrap!important;
  }

  html.bidot-mobile body.home .pillars__p::after{
    right:1rem!important;
    bottom:1rem!important;
    width:34px!important;
    height:34px!important;
    font-size:1rem!important;
  }

  html.bidot-mobile body.home .pillars__in p{
    max-width:35ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* =====================================================================
   BIDOT — PILARS EN UNA SOLA LÍNEA v1.6.9
   Fuerza los tres títulos de las tarjetas de método a una sola línea.
   ===================================================================== */
body.home .pillars__in h3{
  white-space:nowrap!important;
  max-width:100%!important;
  width:100%!important;
  text-wrap:normal!important;
  text-align:center!important;
  overflow:visible!important;
}

@media(min-width:901px){
  body.home .pillars__in h3{
    font-size:clamp(1.95rem,2.7vw,2.95rem)!important;
    line-height:.94!important;
    letter-spacing:-.055em!important;
  }

  body.home .pillars__p:nth-child(1) .pillars__in h3{
    font-size:clamp(1.82rem,2.45vw,2.7rem)!important;
  }

  body.home .pillars__p:nth-child(2) .pillars__in h3{
    font-size:clamp(1.62rem,2.15vw,2.35rem)!important;
  }

  body.home .pillars__p:nth-child(3) .pillars__in h3{
    font-size:clamp(1.78rem,2.4vw,2.6rem)!important;
  }
}

@media(max-width:900px){
  html.bidot-mobile body.home .pillars__in h3{
    font-size:clamp(1.5rem,5.9vw,2.05rem)!important;
    line-height:.95!important;
    letter-spacing:-.06em!important;
    white-space:nowrap!important;
  }

  html.bidot-mobile body.home .pillars__p:nth-child(1) .pillars__in h3{
    font-size:clamp(1.38rem,5.1vw,1.88rem)!important;
  }

  html.bidot-mobile body.home .pillars__p:nth-child(2) .pillars__in h3{
    font-size:clamp(1.22rem,4.45vw,1.62rem)!important;
  }

  html.bidot-mobile body.home .pillars__p:nth-child(3) .pillars__in h3{
    font-size:clamp(1.34rem,4.95vw,1.82rem)!important;
  }
}


/* =====================================================================
   BIDOT — DR. BIDOT OVERLAY + DESPLEGABLE v1.7.0
   Título y botón dentro de la imagen. Solo el botón abre el desplegable
   y el contenido se muestra debajo.
   ===================================================================== */

.home-doctor{
  background:var(--dark)!important;
  color:var(--cream)!important;
  padding:0!important;
  overflow:hidden!important;
  display:block!important;
}

.home-doctor__details{
  position:relative!important;
  display:block!important;
  width:100%!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
}

.home-doctor__summary{
  list-style:none!important;
  position:absolute!important;
  left:50%!important;
  bottom:2.25rem!important;
  transform:translateX(-50%)!important;
  z-index:4!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  padding:.85rem 1.35rem!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.13)!important;
  border:1.35px solid rgba(255,255,255,.76)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:var(--sans)!important;
  font-size:.68rem!important;
  font-weight:600!important;
  letter-spacing:.09em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px 14px rgba(0,0,0,.25)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.2)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
  cursor:pointer!important;
}

.home-doctor__summary::-webkit-details-marker{
  display:none!important;
}

.home-doctor__details[open] .home-doctor__summary{
  background:rgba(255,255,255,.24)!important;
  border-color:rgba(255,255,255,.86)!important;
}

.home-doctor__details[open] .home-doctor__summary::after{
  content:"  −"!important;
}
.home-doctor__details:not([open]) .home-doctor__summary::after{
  content:"  +"!important;
}

.home-doctor__media{
  position:relative!important;
  min-height:78vh!important;
  overflow:hidden!important;
  background:#111!important;
}

.home-doctor__media img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 18%!important;
  filter:brightness(.78) saturate(.96)!important;
  transform:scale(1.02)!important;
}

.home-doctor__media::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.26) 45%,rgba(0,0,0,.55) 100%),
    radial-gradient(circle at 50% 75%,rgba(0,0,0,.25),transparent 55%)!important;
  pointer-events:none!important;
}

.home-doctor__overlay{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-42%)!important;
  z-index:3!important;
  width:min(100%,860px)!important;
  padding:0 2rem!important;
  text-align:center!important;
  color:#fff!important;
}

.home-doctor__overlay .eyebrow{
  margin:0 auto 1rem!important;
  color:rgba(255,255,255,.78)!important;
}

.home-doctor__overlay h2{
  margin:0 0 .6rem!important;
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(4.4rem,8vw,8rem)!important;
  line-height:.86!important;
  letter-spacing:-.065em!important;
  color:#fff!important;
  text-shadow:0 3px 30px rgba(0,0,0,.36)!important;
}

.home-doctor__overlay h3{
  margin:0 auto!important;
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(1.8rem,2.85vw,2.8rem)!important;
  line-height:1.04!important;
  letter-spacing:-.03em!important;
  color:#fff!important;
  text-shadow:0 2px 22px rgba(0,0,0,.34)!important;
}

.home-doctor__body{
  max-width:1180px!important;
  margin:0 auto!important;
  padding:4vh var(--pad) 10vh!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:2rem 4rem!important;
  text-align:left!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
  animation:bidotDoctorOpen170 .42s ease both!important;
}

@keyframes bidotDoctorOpen170{
  from{opacity:0;transform:translateY(-10px);}
  to{opacity:1;transform:translateY(0);}
}

.home-doctor__body p{
  max-width:68ch!important;
  font-family:var(--sans)!important;
  font-size:1.02rem!important;
  line-height:1.75!important;
  color:rgba(248,245,240,.82)!important;
  margin:0!important;
}

.home-doctor__body ul{
  list-style:none!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  gap:.72rem!important;
  grid-column:1 / -1!important;
  max-width:780px!important;
}

.home-doctor__body li{
  position:relative!important;
  padding-left:1.4rem!important;
  font-size:.86rem!important;
  line-height:1.45!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  color:rgba(248,245,240,.86)!important;
}
.home-doctor__body li::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:.55em!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:var(--gold)!important;
}

/* Cerrar aspecto anterior del intro si quedara por caché. */
.home-doctor__intro{
  display:none!important;
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-doctor__media{
    min-height:58svh!important;
    height:58svh!important;
  }

  html.bidot-mobile body.home .home-doctor__media img{
    object-position:center 14%!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay{
    width:100%!important;
    padding:0 var(--pad)!important;
    transform:translate(-50%,-40%)!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h2{
    font-size:clamp(3.2rem,13.2vw,5rem)!important;
    line-height:.84!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h3{
    font-size:clamp(1.35rem,5.8vw,2rem)!important;
    max-width:18ch!important;
  }

  html.bidot-mobile body.home .home-doctor__summary{
    bottom:1.35rem!important;
    min-height:46px!important;
    padding:.78rem 1.15rem!important;
    font-size:.6rem!important;
  }

  html.bidot-mobile body.home .home-doctor__body{
    display:block!important;
    padding:4vh var(--pad) 7vh!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body p{
    max-width:36ch!important;
    font-size:.94rem!important;
    line-height:1.58!important;
    margin:0 auto 1.15rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body ul{
    max-width:35ch!important;
    margin:1.4rem auto 0!important;
  }

  html.bidot-mobile body.home .home-doctor__body li{
    padding-left:0!important;
    font-size:.72rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body li::before{
    position:static!important;
    display:block!important;
    margin:.15rem auto .55rem!important;
  }
}


/* =====================================================================
   BIDOT — DR. BIDOT VISIBLE + DESPLEGABLE v1.7.1
   Reconstrucción robusta del bloque para que siempre se vea la imagen,
   el título dentro de ella y el botón abra el contenido debajo.
   ===================================================================== */

.home-doctor{
  display:block!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
  padding:0!important;
  overflow:hidden!important;
}

.home-doctor__details{
  display:block!important;
  position:relative!important;
  width:100%!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
}

.home-doctor__summary{
  list-style:none!important;
  position:absolute!important;
  left:50%!important;
  bottom:2.2rem!important;
  transform:translateX(-50%)!important;
  z-index:5!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  padding:.85rem 1.35rem!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.13)!important;
  border:1.35px solid rgba(255,255,255,.76)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:var(--sans)!important;
  font-size:.68rem!important;
  font-weight:600!important;
  letter-spacing:.09em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px 14px rgba(0,0,0,.25)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.2)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
  cursor:pointer!important;
}
.home-doctor__summary::-webkit-details-marker{ display:none!important; }
.home-doctor__summary span{ display:inline-flex!important; align-items:center!important; gap:.45rem!important; }

.home-doctor__details:not([open]) .home-doctor__summary span::after{ content:"+"!important; }
.home-doctor__details[open] .home-doctor__summary span::after{ content:"−"!important; }

.home-doctor__details[open] .home-doctor__summary{
  background:rgba(255,255,255,.24)!important;
  border-color:rgba(255,255,255,.86)!important;
}

.home-doctor__media{
  display:block!important;
  position:relative!important;
  width:100%!important;
  min-height:78vh!important;
  overflow:hidden!important;
  background:#111!important;
}

.home-doctor__media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:78vh!important;
  object-fit:cover!important;
  object-position:center 18%!important;
  filter:brightness(.78) saturate(.96)!important;
  transform:scale(1.02)!important;
}

.home-doctor__media::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.26) 45%,rgba(0,0,0,.55) 100%),
    radial-gradient(circle at 50% 75%,rgba(0,0,0,.25),transparent 55%)!important;
  pointer-events:none!important;
}

.home-doctor__overlay{
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  padding:0 2rem!important;
  color:#fff!important;
}

.home-doctor__overlay .eyebrow{
  margin:0 auto 1rem!important;
  color:rgba(255,255,255,.78)!important;
}

.home-doctor__overlay h2{
  margin:0 0 .6rem!important;
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(4.4rem,8vw,8rem)!important;
  line-height:.86!important;
  letter-spacing:-.065em!important;
  color:#fff!important;
  text-shadow:0 3px 30px rgba(0,0,0,.36)!important;
}

.home-doctor__overlay h3{
  margin:0 auto!important;
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(1.8rem,2.85vw,2.8rem)!important;
  line-height:1.04!important;
  letter-spacing:-.03em!important;
  color:#fff!important;
  text-shadow:0 2px 22px rgba(0,0,0,.34)!important;
}

.home-doctor__body{
  max-width:1180px!important;
  margin:0 auto!important;
  padding:4vh var(--pad) 10vh!important;
  text-align:left!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
  animation:bidotDoctorOpen171 .42s ease both!important;
}
.home-doctor__details:not([open]) .home-doctor__body{
  display:none!important;
}
.home-doctor__details[open] .home-doctor__body{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:2rem 4rem!important;
}

@keyframes bidotDoctorOpen171{
  from{opacity:0;transform:translateY(-10px);}
  to{opacity:1;transform:translateY(0);}
}

.home-doctor__body p{
  max-width:68ch!important;
  font-family:var(--sans)!important;
  font-size:1.02rem!important;
  line-height:1.75!important;
  color:rgba(248,245,240,.82)!important;
  margin:0!important;
}

.home-doctor__body ul{
  list-style:none!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  gap:.72rem!important;
  grid-column:1 / -1!important;
  max-width:780px!important;
}

.home-doctor__body li{
  position:relative!important;
  padding-left:1.4rem!important;
  font-size:.86rem!important;
  line-height:1.45!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  color:rgba(248,245,240,.86)!important;
}
.home-doctor__body li::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:.55em!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:var(--gold)!important;
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-doctor__media{
    min-height:58svh!important;
    height:58svh!important;
  }

  html.bidot-mobile body.home .home-doctor__media img{
    min-height:58svh!important;
    height:58svh!important;
    object-position:center 14%!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay{
    padding:0 var(--pad)!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h2{
    font-size:clamp(3.2rem,13.2vw,5rem)!important;
    line-height:.84!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h3{
    font-size:clamp(1.35rem,5.8vw,2rem)!important;
    max-width:18ch!important;
  }

  html.bidot-mobile body.home .home-doctor__summary{
    bottom:1.35rem!important;
    min-height:46px!important;
    padding:.78rem 1.15rem!important;
    font-size:.6rem!important;
  }

  html.bidot-mobile body.home .home-doctor__body{
    padding:4vh var(--pad) 7vh!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__details[open] .home-doctor__body{
    display:block!important;
  }

  html.bidot-mobile body.home .home-doctor__body p{
    max-width:36ch!important;
    font-size:.94rem!important;
    line-height:1.58!important;
    margin:0 auto 1.15rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body ul{
    max-width:35ch!important;
    margin:1.4rem auto 0!important;
  }

  html.bidot-mobile body.home .home-doctor__body li{
    padding-left:0!important;
    font-size:.72rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body li::before{
    position:static!important;
    display:block!important;
    margin:.15rem auto .55rem!important;
  }
}


/* =====================================================================
   BIDOT — DR. BIDOT SIEMPRE VISIBLE v1.7.2
   Rehace el bloque sin <details>: la imagen siempre se ve en Home y
   solo el botón abre/cierra el contenido inferior.
   ===================================================================== */

body.home .home-doctor{
  display:block!important;
  position:relative!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
  padding:0!important;
  overflow:hidden!important;
  min-height:auto!important;
}

body.home .home-doctor__details,
body.home .home-doctor__summary,
body.home .home-doctor__intro{
  display:none!important;
}

body.home .home-doctor__toggle{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}

body.home .home-doctor__media{
  display:block!important;
  position:relative!important;
  width:100%!important;
  min-height:78vh!important;
  height:78vh!important;
  overflow:hidden!important;
  background:#111!important;
}

body.home .home-doctor__media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:78vh!important;
  object-fit:cover!important;
  object-position:center 18%!important;
  filter:brightness(.78) saturate(.96)!important;
  transform:scale(1.02)!important;
}

body.home .home-doctor__media::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.26) 45%,rgba(0,0,0,.58) 100%),
    radial-gradient(circle at 50% 75%,rgba(0,0,0,.27),transparent 56%)!important;
  pointer-events:none!important;
}

body.home .home-doctor__overlay{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  padding:0 2rem 4rem!important;
  color:#fff!important;
}

body.home .home-doctor__overlay .eyebrow{
  margin:0 auto 1rem!important;
  color:rgba(255,255,255,.78)!important;
}

body.home .home-doctor__overlay h2{
  margin:0 0 .65rem!important;
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(4.4rem,8vw,8rem)!important;
  line-height:.86!important;
  letter-spacing:-.065em!important;
  color:#fff!important;
  text-align:center!important;
  text-shadow:0 3px 30px rgba(0,0,0,.36)!important;
}

body.home .home-doctor__overlay h3{
  margin:0 auto!important;
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(1.8rem,2.85vw,2.8rem)!important;
  line-height:1.04!important;
  letter-spacing:-.03em!important;
  color:#fff!important;
  text-align:center!important;
  text-shadow:0 2px 22px rgba(0,0,0,.34)!important;
}

body.home .home-doctor__button{
  position:absolute!important;
  left:50%!important;
  bottom:2.2rem!important;
  transform:translateX(-50%)!important;
  z-index:4!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:50px!important;
  padding:.85rem 1.35rem!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.13)!important;
  border:1.35px solid rgba(255,255,255,.76)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-family:var(--sans)!important;
  font-size:.68rem!important;
  font-weight:600!important;
  letter-spacing:.09em!important;
  line-height:1!important;
  text-transform:uppercase!important;
  text-align:center!important;
  text-shadow:0 1px 14px rgba(0,0,0,.25)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.2)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
  cursor:pointer!important;
}

body.home .home-doctor__button-close{
  display:none!important;
}

body.home .home-doctor__toggle:checked ~ .home-doctor__media .home-doctor__button{
  background:rgba(255,255,255,.24)!important;
  border-color:rgba(255,255,255,.86)!important;
}

body.home .home-doctor__toggle:checked ~ .home-doctor__media .home-doctor__button-open{
  display:none!important;
}

body.home .home-doctor__toggle:checked ~ .home-doctor__media .home-doctor__button-close{
  display:inline!important;
}

body.home .home-doctor__body{
  max-width:1180px!important;
  margin:0 auto!important;
  padding:4vh var(--pad) 10vh!important;
  text-align:left!important;
  background:var(--dark)!important;
  color:var(--cream)!important;
}

body.home .home-doctor__toggle:not(:checked) ~ .home-doctor__body{
  display:none!important;
}

body.home .home-doctor__toggle:checked ~ .home-doctor__body{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:2rem 4rem!important;
  animation:bidotDoctorOpen172 .42s ease both!important;
}

@keyframes bidotDoctorOpen172{
  from{opacity:0;transform:translateY(-10px);}
  to{opacity:1;transform:translateY(0);}
}

body.home .home-doctor__body p{
  max-width:68ch!important;
  font-family:var(--sans)!important;
  font-size:1.02rem!important;
  line-height:1.75!important;
  color:rgba(248,245,240,.82)!important;
  margin:0!important;
}

body.home .home-doctor__body ul{
  list-style:none!important;
  padding:0!important;
  margin:0!important;
  display:grid!important;
  gap:.72rem!important;
  grid-column:1 / -1!important;
  max-width:780px!important;
}

body.home .home-doctor__body li{
  position:relative!important;
  padding-left:1.4rem!important;
  font-size:.86rem!important;
  line-height:1.45!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
  color:rgba(248,245,240,.86)!important;
}

body.home .home-doctor__body li::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:.55em!important;
  width:7px!important;
  height:7px!important;
  border-radius:50%!important;
  background:var(--gold)!important;
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-doctor__media{
    min-height:58svh!important;
    height:58svh!important;
  }

  html.bidot-mobile body.home .home-doctor__media img{
    min-height:58svh!important;
    height:58svh!important;
    object-position:center 14%!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay{
    padding:0 var(--pad) 4rem!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h2{
    font-size:clamp(3.2rem,13.2vw,5rem)!important;
    line-height:.84!important;
    white-space:nowrap!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h3{
    font-size:clamp(1.35rem,5.8vw,2rem)!important;
    max-width:18ch!important;
    white-space:normal!important;
  }

  html.bidot-mobile body.home .home-doctor__button{
    bottom:1.35rem!important;
    min-height:46px!important;
    padding:.78rem 1.15rem!important;
    font-size:.6rem!important;
  }

  html.bidot-mobile body.home .home-doctor__toggle:checked ~ .home-doctor__body{
    display:block!important;
  }

  html.bidot-mobile body.home .home-doctor__body{
    padding:4vh var(--pad) 7vh!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body p{
    max-width:36ch!important;
    font-size:.94rem!important;
    line-height:1.58!important;
    margin:0 auto 1.15rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body ul{
    max-width:35ch!important;
    margin:1.4rem auto 0!important;
  }

  html.bidot-mobile body.home .home-doctor__body li{
    padding-left:0!important;
    font-size:.72rem!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__body li::before{
    position:static!important;
    display:block!important;
    margin:.15rem auto .55rem!important;
  }
}


/* =====================================================================
   BIDOT — DR. BIDOT TÍTULO CENTRADO v1.7.3
   Centra de forma real el título y subtítulo dentro de la imagen.
   ===================================================================== */
body.home .home-doctor__overlay{
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
}

body.home .home-doctor__overlay h2,
body.home .home-doctor__overlay h3,
body.home .home-doctor__overlay .eyebrow{
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-doctor__overlay h2,
  html.bidot-mobile body.home .home-doctor__overlay h3,
  html.bidot-mobile body.home .home-doctor__overlay .eyebrow{
    text-align:center!important;
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* =====================================================================
   BIDOT — DR. BIDOT CENTRADO REAL v1.7.4
   Corrige los estilos heredados anteriores que desplazaban el overlay.
   ===================================================================== */
body.home .home-doctor{
  width:100%!important;
}

body.home .home-doctor__media{
  position:relative!important;
  width:100%!important;
}

body.home .home-doctor__overlay{
  position:absolute!important;
  inset:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:0!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  transform:none!important;
  z-index:3!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  padding:0 var(--pad) 5.8rem!important;
  margin:0!important;
}

body.home .home-doctor__overlay .eyebrow,
body.home .home-doctor__overlay h2,
body.home .home-doctor__overlay h3{
  display:block!important;
  position:relative!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

body.home .home-doctor__overlay h2{
  font-size:clamp(4.8rem,8.5vw,8.6rem)!important;
  line-height:.84!important;
  margin-bottom:.7rem!important;
}

body.home .home-doctor__overlay h3{
  max-width:100%!important;
  font-size:clamp(1.9rem,3vw,3rem)!important;
}

body.home .home-doctor__button{
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  text-align:center!important;
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-doctor__overlay{
    inset:0!important;
    top:0!important;
    right:0!important;
    bottom:0!important;
    left:0!important;
    width:100%!important;
    max-width:none!important;
    transform:none!important;
    padding:0 var(--pad) 5.2rem!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay .eyebrow,
  html.bidot-mobile body.home .home-doctor__overlay h2,
  html.bidot-mobile body.home .home-doctor__overlay h3{
    width:100%!important;
    max-width:100%!important;
    transform:none!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h2{
    font-size:clamp(3.55rem,14vw,5.2rem)!important;
    line-height:.84!important;
    white-space:nowrap!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h3{
    font-size:clamp(1.35rem,5.7vw,2rem)!important;
    max-width:19ch!important;
    white-space:normal!important;
  }
}


/* =====================================================================
   BIDOT — DR. BIDOT SIN BARRA NI EYEBROW v1.7.5
   Quita la barrita dorada/eyebrow, elimina "Dirección médica" y baja el
   bloque de texto dentro de la imagen para no tapar la cara del doctor.
   ===================================================================== */

body.home .home-doctor__overlay{
  justify-content:flex-end!important;
  padding:0 var(--pad) 10.2rem!important;
}

body.home .home-doctor__overlay .eyebrow{
  display:none!important;
}

body.home .home-doctor__overlay h2,
body.home .home-doctor__overlay h3{
  text-align:center!important;
}

body.home .home-doctor__overlay h2{
  margin-bottom:.55rem!important;
}

body.home .home-doctor__overlay h3{
  margin-bottom:0!important;
}

/* Quitar indicadores dorados heredados en este bloque */
body.home .home-doctor *::before,
body.home .home-doctor *::after{
  /* no tocamos los bullets del cuerpo, solo anulamos el eyebrow/lineas visuales del overlay */
}
body.home .home-doctor__overlay::before,
body.home .home-doctor__overlay::after,
body.home .home-doctor__overlay h2::before,
body.home .home-doctor__overlay h2::after,
body.home .home-doctor__overlay h3::before,
body.home .home-doctor__overlay h3::after{
  display:none!important;
  content:none!important;
}

@media(min-width:901px){
  body.home .home-doctor__overlay{
    padding:0 3rem 10.8rem!important;
  }
  body.home .home-doctor__overlay h2{
    font-size:clamp(4.6rem,8vw,8.2rem)!important;
    line-height:.86!important;
  }
  body.home .home-doctor__overlay h3{
    font-size:clamp(1.7rem,2.75vw,2.6rem)!important;
    line-height:1.04!important;
  }
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-doctor__overlay{
    justify-content:flex-end!important;
    padding:0 var(--pad) 7rem!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay .eyebrow{
    display:none!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h2{
    font-size:clamp(3.1rem,12.4vw,4.7rem)!important;
    line-height:.85!important;
  }

  html.bidot-mobile body.home .home-doctor__overlay h3{
    font-size:clamp(1.22rem,5.15vw,1.82rem)!important;
    line-height:1.04!important;
  }
}


/* =====================================================================
   BIDOT — HERO ESCRITORIO MÁS PEQUEÑO Y A LA IZQUIERDA v1.7.6
   Solo escritorio. Recupera un hero más contenido y alineado a la izquierda,
   manteniendo intacta la versión móvil.
   ===================================================================== */
@media(min-width:901px){
  body.home .hero,
  body.home .phero{
    min-height:100svh!important;
  }

  body.home .hero__inner,
  body.home .phero__inner{
    align-items:flex-start!important;
    justify-content:flex-end!important;
    text-align:left!important;
    padding:0 var(--pad) 12vh!important;
  }

  body.home .hero__content,
  body.home .phero__copy{
    width:min(100%,760px)!important;
    max-width:760px!important;
    margin-left:0!important;
    margin-right:auto!important;
    text-align:left!important;
  }

  body.home .hero__title{
    font-size:clamp(3.8rem,6.1vw,6.3rem)!important;
    line-height:.92!important;
    letter-spacing:-.055em!important;
    max-width:10.5ch!important;
    width:auto!important;
    margin-left:0!important;
    margin-right:auto!important;
    text-align:left!important;
    white-space:normal!important;
  }

  body.home .hero__title br{
    display:block!important;
  }

  body.home .hero__title-city{
    display:block!important;
    width:100%!important;
    text-align:left!important;
  }

  body.home .hero__sub{
    max-width:40ch!important;
    font-size:1.08rem!important;
    line-height:1.55!important;
    margin:1.1rem 0 0!important;
    text-align:left!important;
  }

  body.home .hero__actions{
    display:flex!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:.9rem!important;
    margin-top:1.4rem!important;
    text-align:left!important;
  }

  body.home .hero__actions .btn,
  body.home .hero__actions .btn-gold,
  body.home .hero__actions .btn-line{
    min-height:50px!important;
    padding:.82rem 1.18rem!important;
  }
}


/* =====================================================================
   BIDOT — DIRECCIÓN EN CLÍNICA + HERO DESKTOP UNA LÍNEA v1.7.7
   Añade la dirección al texto de clínica y ajusta el hero de escritorio:
   más pequeño y en una sola línea. Móvil intacto salvo texto de dirección.
   ===================================================================== */

/* Texto del bloque de clínica más equilibrado con la dirección. */
body.home .home-clinic .split__body p{
  max-width:60ch!important;
}

@media(max-width:900px){
  html.bidot-mobile body.home .home-clinic .split__body p{
    max-width:38ch!important;
    font-size:.84rem!important;
    line-height:1.42!important;
  }
}

/* Solo escritorio: hero más pequeño y en una sola línea. */
@media(min-width:901px){
  body.home .hero__title{
    font-size:clamp(3.25rem,4.65vw,4.95rem)!important;
    line-height:.96!important;
    letter-spacing:-.05em!important;
    max-width:none!important;
    width:auto!important;
    white-space:nowrap!important;
    text-align:left!important;
    margin-left:0!important;
    margin-right:auto!important;
  }

  body.home .hero__title br{
    display:none!important;
  }

  body.home .hero__title-city{
    display:inline!important;
    width:auto!important;
    text-align:left!important;
  }

  body.home .hero__sub{
    max-width:42ch!important;
    font-size:1.02rem!important;
    line-height:1.52!important;
  }
}


/* =====================================================================
   BIDOT — RESEÑAS CENTRADAS + HERO DESKTOP EN 2 LÍNEAS v1.7.8
   En escritorio: centra el bloque "Lo que dicen quienes ya han pasado
   por Bidot" y devuelve "en Madrid" a una segunda línea en el hero.
   ===================================================================== */
@media(min-width:901px){
  /* Bloque reseñas centrado en Home */
  body.home .rwall__head{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.home .rwall__head h2,
  body.home .rwall__head p{
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.home .rwall__head h2{
    max-width:22ch!important;
  }

  body.home .rwall__head p{
    max-width:62ch!important;
  }

  /* Hero escritorio: "en Madrid" vuelve a segunda línea */
  body.home .hero__title{
    white-space:normal!important;
    max-width:12.5ch!important;
  }

  body.home .hero__title br{
    display:block!important;
  }

  body.home .hero__title-city{
    display:block!important;
    width:100%!important;
    text-align:left!important;
    margin-top:.02em!important;
  }
}


/* =====================================================================
   BIDOT — ESTÉTICA GLOBAL ADAPTADA v1.7.9
   Lleva la estética actual de la Home al resto de páginas en escritorio
   y móvil: títulos editoriales, mejor jerarquía, CTAs cristal, bloques
   más limpios y espaciado coherente.
   ===================================================================== */

/* -----------------------------
   ESTILO GLOBAL PÁGINAS INTERNAS
   ----------------------------- */
body:not(.home) .phero,
body:not(.home) .hero{
  position:relative!important;
  overflow:hidden!important;
}

body:not(.home) .phero__inner,
body:not(.home) .hero__inner{
  position:relative!important;
  z-index:2!important;
}

body:not(.home) .phero__title,
body:not(.home) .shead h2,
body:not(.home) .split__body h2,
body:not(.home) .ctaband h2,
body:not(.home) .faq h2,
body:not(.home) .rwall__head h2,
body:not(.home) .igfeed__head h2,
body:not(.home) .panel__h,
body:not(.home) .chapter__h,
body:not(.home) .contact__big{
  font-family:var(--serif)!important;
  font-weight:300!important;
  letter-spacing:-.055em!important;
  line-height:.94!important;
  color:var(--dark)!important;
}

body:not(.home) .phero__sub,
body:not(.home) .split__body p,
body:not(.home) .chapter__sub,
body:not(.home) .panel__sub,
body:not(.home) .faq__intro,
body:not(.home) .contact p,
body:not(.home) .qform__intro p{
  font-family:var(--sans)!important;
  color:rgba(20,20,20,.78)!important;
}

/* Botones cristal / estilo Home */
body:not(.home) .btn,
body:not(.home) .btn-line,
body:not(.home) .btn-gold,
body:not(.home) .mnav__cta,
body:not(.home) .seccta .btn,
body:not(.home) .qform__alt .btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  min-height:50px!important;
  padding:.86rem 1.25rem!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.12)!important;
  border:1.35px solid rgba(255,255,255,.72)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  box-shadow:0 12px 30px rgba(0,0,0,.14)!important;
  text-shadow:0 1px 14px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
}

body:not(.home) .split--light .btn,
body:not(.home) .ctaband .btn,
body:not(.home) .contact .btn,
body:not(.home) .faq .btn,
body:not(.home) .panel .btn,
body:not(.home) .chapter .btn{
  background:rgba(20,20,20,.06)!important;
  border:1.2px solid rgba(20,20,20,.18)!important;
  color:var(--dark)!important;
  -webkit-text-fill-color:var(--dark)!important;
  text-shadow:none!important;
  box-shadow:0 10px 24px rgba(0,0,0,.08)!important;
}

body:not(.home) .btn:hover,
body:not(.home) .btn-line:hover,
body:not(.home) .btn-gold:hover{
  transform:none!important;
}

/* Cards y bloques más premium */
body:not(.home) .step,
body:not(.home) .cardi,
body:not(.home) .test__it,
body:not(.home) .tq,
body:not(.home) .tcardq,
body:not(.home) .qline,
body:not(.home) .rcard{
  border-radius:24px!important;
  box-shadow:0 16px 40px rgba(0,0,0,.06)!important;
  overflow:hidden!important;
}

/* FAQ y encabezados centrados */
body:not(.home) .shead,
body:not(.home) .faq,
body:not(.home) .rwall__head,
body:not(.home) .igfeed__head,
body:not(.home) .ctaband{
  text-align:center!important;
}

body:not(.home) .shead h2,
body:not(.home) .faq h2,
body:not(.home) .rwall__head h2,
body:not(.home) .igfeed__head h2,
body:not(.home) .ctaband h2,
body:not(.home) .shead p,
body:not(.home) .faq__intro,
body:not(.home) .rwall__head p,
body:not(.home) .igfeed__head p{
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}

/* Líneas finas de detalle como en Home */
body:not(.home) .shead h2::after,
body:not(.home) .faq h2::after,
body:not(.home) .rwall__head h2::after,
body:not(.home) .igfeed__head h2::after,
body:not(.home) .ctaband h2::after{
  content:""!important;
  display:block!important;
  width:44px!important;
  height:1px!important;
  margin:.8rem auto 0!important;
  background:var(--gold)!important;
  opacity:.9!important;
}

/* -----------------------------
   ESCRITORIO
   ----------------------------- */
@media(min-width:901px){
  body:not(.home) .phero,
  body:not(.home) .hero{
    min-height:100svh!important;
  }

  body:not(.home) .phero__inner,
  body:not(.home) .hero__inner{
    align-items:flex-start!important;
    justify-content:flex-end!important;
    text-align:left!important;
    padding:0 var(--pad) 12vh!important;
  }

  body:not(.home) .phero__title{
    font-size:clamp(3.5rem,5.1vw,5.8rem)!important;
    max-width:none!important;
    white-space:nowrap!important;
    text-align:left!important;
    color:#fff!important;
  }

  body:not(.home) .phero__sub{
    max-width:42ch!important;
    font-size:1.04rem!important;
    line-height:1.58!important;
    color:rgba(255,255,255,.88)!important;
    text-align:left!important;
  }

  body:not(.home) .shead{
    padding:10vh var(--pad) 3vh!important;
  }

  body:not(.home) .shead h2,
  body:not(.home) .split__body h2,
  body:not(.home) .faq h2,
  body:not(.home) .rwall__head h2,
  body:not(.home) .igfeed__head h2,
  body:not(.home) .ctaband h2,
  body:not(.home) .chapter__h,
  body:not(.home) .panel__h{
    font-size:clamp(2.9rem,4.2vw,4.8rem)!important;
  }

  body:not(.home) .split__body p,
  body:not(.home) .chapter__sub,
  body:not(.home) .panel__sub,
  body:not(.home) .faq__intro{
    max-width:58ch!important;
    font-size:1.04rem!important;
    line-height:1.72!important;
  }

  body:not(.home) .split__body{
    padding-top:11vh!important;
    padding-bottom:11vh!important;
  }

  body:not(.home) .steps,
  body:not(.home) .cards{
    gap:1.1rem!important;
  }

  body:not(.home) .ctaband{
    padding:12vh var(--pad)!important;
  }

  body:not(.home) .contact__big{
    font-size:clamp(3rem,4.5vw,5rem)!important;
  }
}

/* -----------------------------
   MÓVIL
   ----------------------------- */
@media(max-width:900px){
  html.bidot-mobile body:not(.home) .phero,
  html.bidot-mobile body:not(.home) .hero{
    min-height:100svh!important;
  }

  html.bidot-mobile body:not(.home) .phero__inner,
  html.bidot-mobile body:not(.home) .hero__inner{
    align-items:center!important;
    justify-content:flex-end!important;
    text-align:center!important;
    padding:0 var(--pad) 13svh!important;
  }

  html.bidot-mobile body:not(.home) .phero__title{
    font-size:clamp(2.1rem,8.8vw,3rem)!important;
    line-height:.95!important;
    max-width:100%!important;
    white-space:nowrap!important;
    color:#fff!important;
    text-align:center!important;
  }

  html.bidot-mobile body:not(.home) .phero__sub{
    max-width:33ch!important;
    font-size:.94rem!important;
    line-height:1.48!important;
    text-align:center!important;
    color:rgba(255,255,255,.9)!important;
  }

  html.bidot-mobile body:not(.home) .shead{
    padding:6vh var(--pad) 2.2vh!important;
  }

  html.bidot-mobile body:not(.home) .shead h2,
  html.bidot-mobile body:not(.home) .split__body h2,
  html.bidot-mobile body:not(.home) .faq h2,
  html.bidot-mobile body:not(.home) .rwall__head h2,
  html.bidot-mobile body:not(.home) .igfeed__head h2,
  html.bidot-mobile body:not(.home) .ctaband h2,
  html.bidot-mobile body:not(.home) .chapter__h,
  html.bidot-mobile body:not(.home) .panel__h{
    font-size:clamp(2rem,8.5vw,3rem)!important;
    line-height:.98!important;
    text-align:center!important;
  }

  html.bidot-mobile body:not(.home) .split__body,
  html.bidot-mobile body:not(.home) .chapter__in,
  html.bidot-mobile body:not(.home) .panel__in,
  html.bidot-mobile body:not(.home) .faq,
  html.bidot-mobile body:not(.home) .ctaband{
    text-align:center!important;
  }

  html.bidot-mobile body:not(.home) .split__body p,
  html.bidot-mobile body:not(.home) .chapter__sub,
  html.bidot-mobile body:not(.home) .panel__sub,
  html.bidot-mobile body:not(.home) .faq__intro{
    max-width:35ch!important;
    font-size:.95rem!important;
    line-height:1.54!important;
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  html.bidot-mobile body:not(.home) .btn,
  html.bidot-mobile body:not(.home) .btn-line,
  html.bidot-mobile body:not(.home) .btn-gold{
    min-height:47px!important;
    padding:.78rem 1rem!important;
    font-size:.6rem!important;
  }

  html.bidot-mobile body:not(.home) .step,
  html.bidot-mobile body:not(.home) .cardi,
  html.bidot-mobile body:not(.home) .test__it,
  html.bidot-mobile body:not(.home) .tq,
  html.bidot-mobile body:not(.home) .tcardq,
  html.bidot-mobile body:not(.home) .qline,
  html.bidot-mobile body:not(.home) .rcard{
    border-radius:18px!important;
  }

  html.bidot-mobile body:not(.home) .contact__big{
    font-size:clamp(2.1rem,8.4vw,3rem)!important;
    text-align:center!important;
  }
}


/* =====================================================================
   BIDOT — VISIBILIDAD GLOBAL Y BLOQUES OSCUROS v1.8.0
   Corrige conflictos de la adaptación global para que los bloques oscuros
   mantengan texto visible y una jerarquía correcta en escritorio y móvil.
   ===================================================================== */

/* -----------------------------
   SUPERFICIES OSCURAS: TEXTO VISIBLE
   ----------------------------- */
body:not(.home) .dark,
body:not(.home) .split.dark,
body:not(.home) .mani,
body:not(.home) .feat,
body:not(.home) .vmarq,
body:not(.home) .marq,
body:not(.home) .stage,
body:not(.home) .rwall.dark,
body:not(.home) .faq.dark,
body:not(.home) .ctaband.dark{
  color:var(--cream)!important;
}

body:not(.home) .dark h1,
body:not(.home) .dark h2,
body:not(.home) .dark h3,
body:not(.home) .dark h4,
body:not(.home) .dark h5,
body:not(.home) .dark h6,
body:not(.home) .split.dark h1,
body:not(.home) .split.dark h2,
body:not(.home) .split.dark h3,
body:not(.home) .split.dark h4,
body:not(.home) .split.dark h5,
body:not(.home) .split.dark h6,
body:not(.home) .mani h1,
body:not(.home) .mani h2,
body:not(.home) .mani h3,
body:not(.home) .feat h1,
body:not(.home) .feat h2,
body:not(.home) .feat h3,
body:not(.home) .vmarq h1,
body:not(.home) .vmarq h2,
body:not(.home) .vmarq h3,
body:not(.home) .stage h1,
body:not(.home) .stage h2,
body:not(.home) .stage h3{
  color:var(--cream)!important;
}

body:not(.home) .dark p,
body:not(.home) .dark li,
body:not(.home) .dark small,
body:not(.home) .dark .eyebrow,
body:not(.home) .split.dark p,
body:not(.home) .split.dark li,
body:not(.home) .split.dark small,
body:not(.home) .split.dark .eyebrow,
body:not(.home) .mani p,
body:not(.home) .mani li,
body:not(.home) .mani .eyebrow,
body:not(.home) .feat p,
body:not(.home) .feat li,
body:not(.home) .feat span,
body:not(.home) .vmarq p,
body:not(.home) .vmarq li,
body:not(.home) .stage p,
body:not(.home) .stage li{
  color:rgba(248,245,240,.82)!important;
}

body:not(.home) .dark em,
body:not(.home) .split.dark em,
body:not(.home) .mani em,
body:not(.home) .feat em,
body:not(.home) .vmarq em,
body:not(.home) .stage em,
body:not(.home) .dark .accent-script,
body:not(.home) .split.dark .accent-script{
  color:var(--gold)!important;
}

body:not(.home) .dark a,
body:not(.home) .split.dark a,
body:not(.home) .mani a,
body:not(.home) .feat a,
body:not(.home) .vmarq a,
body:not(.home) .stage a{
  color:var(--cream)!important;
}

/* Split oscuro: asegura legibilidad completa */
body:not(.home) .split.dark .split__body{
  color:var(--cream)!important;
}

body:not(.home) .split.dark .split__body h2{
  color:var(--cream)!important;
}

body:not(.home) .split.dark .split__body p,
body:not(.home) .split.dark .split__body .eyebrow{
  color:rgba(248,245,240,.84)!important;
}

/* Marquees y cifras sobre oscuro */
body:not(.home) .vmarq__t h3,
body:not(.home) .vrow h3,
body:not(.home) .feat b{
  color:var(--gold-lt)!important;
}

body:not(.home) .vmarq__t p,
body:not(.home) .vrow p{
  color:rgba(248,245,240,.8)!important;
}

/* -----------------------------
   BOTONES EN BLOQUES OSCUROS/LUMINOSOS
   ----------------------------- */
body:not(.home) .dark .btn,
body:not(.home) .dark .btn-line,
body:not(.home) .dark .btn-gold,
body:not(.home) .split.dark .btn,
body:not(.home) .split.dark .btn-line,
body:not(.home) .split.dark .btn-gold,
body:not(.home) .mani .btn,
body:not(.home) .feat .btn,
body:not(.home) .vmarq .btn,
body:not(.home) .stage .btn{
  background:rgba(255,255,255,.12)!important;
  border:1.35px solid rgba(255,255,255,.74)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 1px 14px rgba(0,0,0,.24)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.16)!important;
}

/* En fondos claros: mantiene contraste oscuro */
body:not(.home) .cream .btn,
body:not(.home) .split.cream .btn,
body:not(.home) .team .btn,
body:not(.home) .contact .btn,
body:not(.home) .faq .btn,
body:not(.home) .chapter .btn,
body:not(.home) .panel .btn{
  background:rgba(20,20,20,.06)!important;
  border:1.2px solid rgba(20,20,20,.18)!important;
  color:var(--dark)!important;
  -webkit-text-fill-color:var(--dark)!important;
  text-shadow:none!important;
  box-shadow:0 10px 24px rgba(0,0,0,.08)!important;
}

/* -----------------------------
   JERARQUÍA Y CENTRADO SIN ROMPER VISIBILIDAD
   ----------------------------- */
body:not(.home) .shead h2,
body:not(.home) .faq h2,
body:not(.home) .rwall__head h2,
body:not(.home) .igfeed__head h2,
body:not(.home) .ctaband h2{
  max-width:20ch!important;
}

body:not(.home) .split.dark .split__body h2,
body:not(.home) .split.cream .split__body h2{
  max-width:13ch!important;
}

body:not(.home) .split.dark .split__body p,
body:not(.home) .split.cream .split__body p{
  max-width:42ch!important;
}

/* -----------------------------
   MÓVIL
   ----------------------------- */
@media(max-width:900px){
  html.bidot-mobile body:not(.home) .split.dark .split__body h2,
  html.bidot-mobile body:not(.home) .split.cream .split__body h2{
    max-width:100%!important;
    font-size:clamp(2rem,8vw,2.8rem)!important;
    text-align:center!important;
  }

  html.bidot-mobile body:not(.home) .split.dark .split__body p,
  html.bidot-mobile body:not(.home) .split.cream .split__body p{
    max-width:35ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  html.bidot-mobile body:not(.home) .dark .btn,
  html.bidot-mobile body:not(.home) .split.dark .btn{
    min-height:47px!important;
  }
}

/* ===== AJUSTE FINAL · HERO MÁS LEGIBLE + TIPOGRAFÍA GENERAL MÁS GRANDE ===== */
html{font-size:92%!important}
body{font-size:1.04rem!important;line-height:1.68!important}
.hero__scrim{
  background:linear-gradient(180deg,
    rgba(8,8,8,.14) 0%,
    rgba(8,8,8,.10) 24%,
    rgba(8,8,8,.34) 50%,
    rgba(8,8,8,.72) 74%,
    rgba(8,8,8,.96) 100%)!important;
}
.phero__scrim{
  background:linear-gradient(180deg,
    rgba(8,8,8,.14) 0%,
    rgba(8,8,8,.10) 28%,
    rgba(8,8,8,.42) 58%,
    rgba(8,8,8,.82) 100%)!important;
}
.hero__title{font-size:clamp(2.25rem,4.95vw,4.35rem)!important;line-height:1.14!important}
.hero__sub{font-size:clamp(1.16rem,1.6vw,1.5rem)!important;line-height:1.66!important}
.phero__title{font-size:clamp(2.15rem,4.7vw,4rem)!important;line-height:1.14!important}
.phero__sub{font-size:clamp(1.1rem,1.45vw,1.34rem)!important;line-height:1.62!important}
.split__body p,.hero__sub,.phero__sub,.faq__intro,.faq__a p,.rwall__head p,.pillars__in p,.book__info p,.qfield input,.qfield select,.qfield textarea ,.qform__legal,.trx__d{
  font-size:1.04em;
}

@media (max-width: 900px){
  .hero__scrim{
    background:linear-gradient(180deg,
      rgba(8,8,8,.06) 0%,
      rgba(8,8,8,.08) 20%,
      rgba(8,8,8,.28) 40%,
      rgba(8,8,8,.68) 68%,
      rgba(8,8,8,.97) 100%)!important;
  }
  .phero__scrim{
    background:linear-gradient(180deg,
      rgba(8,8,8,.08) 0%,
      rgba(8,8,8,.08) 24%,
      rgba(8,8,8,.34) 46%,
      rgba(8,8,8,.78) 74%,
      rgba(8,8,8,.97) 100%)!important;
  }
  .hero__title,.phero__title{font-size:clamp(2.15rem,8.9vw,3.2rem)!important;line-height:1.08!important;max-width:15ch!important}
  .hero__sub,.phero__sub{font-size:1.03rem!important;line-height:1.58!important;max-width:31ch!important}
  .hero__inner,.phero__inner{padding-bottom:6vh!important}
}

html.bidot-mobile .hero__scrim{
  background:linear-gradient(180deg,
    rgba(8,8,8,.05) 0%,
    rgba(8,8,8,.07) 18%,
    rgba(8,8,8,.24) 38%,
    rgba(8,8,8,.66) 66%,
    rgba(8,8,8,.97) 100%)!important;
}
html.bidot-mobile .phero__scrim{
  background:linear-gradient(180deg,
    rgba(8,8,8,.06) 0%,
    rgba(8,8,8,.08) 22%,
    rgba(8,8,8,.28) 44%,
    rgba(8,8,8,.76) 74%,
    rgba(8,8,8,.97) 100%)!important;
}
html.bidot-mobile .hero__title,
html.bidot-mobile .phero__title{font-size:clamp(2.2rem,9.2vw,3.3rem)!important;line-height:1.08!important;max-width:15ch!important}
html.bidot-mobile .hero__sub,
html.bidot-mobile .phero__sub{font-size:1.04rem!important;line-height:1.58!important;max-width:31ch!important;color:rgba(248,245,240,.94)!important}
html.bidot-mobile .hero__inner,
html.bidot-mobile .phero__inner{padding-bottom:6vh!important}


/* ===== AJUSTE EXTRA 1.9.0 · MÓVIL MÁS GRANDE + HERO HOME MÁS OSCURO ABAJO ===== */
@media (max-width: 768px){
  html{font-size:102%!important}
  body{font-size:1.08rem!important;line-height:1.7!important}

  /* Hero home y page hero: degradado más oscuro hacia abajo para resaltar texto blanco */
  .hero__scrim,
  html.bidot-mobile .hero__scrim{
    background:linear-gradient(180deg,
      rgba(6,6,6,.02) 0%,
      rgba(6,6,6,.06) 18%,
      rgba(6,6,6,.18) 35%,
      rgba(6,6,6,.45) 52%,
      rgba(6,6,6,.78) 72%,
      rgba(6,6,6,.97) 100%)!important;
  }
  .phero__scrim,
  html.bidot-mobile .phero__scrim{
    background:linear-gradient(180deg,
      rgba(6,6,6,.04) 0%,
      rgba(6,6,6,.08) 22%,
      rgba(6,6,6,.24) 40%,
      rgba(6,6,6,.56) 60%,
      rgba(6,6,6,.88) 100%)!important;
  }

  .hero__inner,
  .phero__inner,
  html.bidot-mobile .hero__inner,
  html.bidot-mobile .phero__inner{
    padding:0 var(--pad) 6.6vh!important;
  }

  .hero__title,
  .phero__title,
  html.bidot-mobile .hero__title,
  html.bidot-mobile .phero__title{
    font-size:clamp(2.45rem,10.4vw,3.65rem)!important;
    line-height:1.06!important;
    max-width:14ch!important;
    margin-bottom:1rem!important;
    text-shadow:0 8px 34px rgba(0,0,0,.50)!important;
  }

  .hero__sub,
  .phero__sub,
  html.bidot-mobile .hero__sub,
  html.bidot-mobile .phero__sub{
    font-size:1.12rem!important;
    line-height:1.62!important;
    max-width:29ch!important;
    color:rgba(248,245,240,.96)!important;
    text-shadow:0 4px 20px rgba(0,0,0,.38)!important;
  }

  .btn,
  .nav__cta,
  .fab__main{font-size:.8rem!important}

  .shead h2,
  .split__body h2,
  .rwall__head h2,
  .faq h2,
  .qform__intro h2,
  .gal__intro h2,
  .ctaband h2,
  .mani__txt,
  .chapter__h,
  .book__info h3,
  .stage__p h3,
  .contact__big,
  .pcap h2,
  .pillars__in h3,
  .panel__h,
  .tmarq__head h2{
    font-size:clamp(1.95rem,7.8vw,2.6rem)!important;
    line-height:1.18!important;
  }

  .split__body p,
  .faq__intro,
  .faq__a p,
  .rwall__head p,
  .pillars__in p,
  .book__info p,
  .contact__block p,
  .contact__txt p,
  .qform__legal,
  .trx__d,
  .chapter__sub,
  p, li{
    font-size:1.08rem!important;
    line-height:1.72!important;
  }

  .faq__q,
  .trx__name,
  .rcard q,
  .tq q,
  .test__it q{
    font-size:clamp(1.32rem,5.6vw,1.72rem)!important;
    line-height:1.42!important;
  }

  .eyebrow,
  .hero__top .meta,
  .nav__links a,
  .chapter__n,
  .trx__go,
  .test__it .by,
  .rcard .by,
  .tq .by{
    font-size:.78rem!important;
  }
}


/* ===== AJUSTE EXTRA 2.0.0 · TÍTULOS MÓVIL MÁS GRANDES + DEGRADADOS MÁS ALTOS ===== */
@media (max-width: 860px){
  /* HERO HOME: subir el degradado para que abrace mejor el bloque de texto */
  .hero__scrim,
  html.bidot-mobile .hero__scrim{
    background:linear-gradient(180deg,
      rgba(7,7,7,.02) 0%,
      rgba(7,7,7,.06) 12%,
      rgba(7,7,7,.18) 26%,
      rgba(7,7,7,.46) 42%,
      rgba(7,7,7,.74) 58%,
      rgba(7,7,7,.93) 78%,
      rgba(7,7,7,.99) 100%)!important;
  }

  .phero__scrim,
  html.bidot-mobile .phero__scrim{
    background:linear-gradient(180deg,
      rgba(7,7,7,.04) 0%,
      rgba(7,7,7,.10) 18%,
      rgba(7,7,7,.26) 34%,
      rgba(7,7,7,.56) 52%,
      rgba(7,7,7,.86) 74%,
      rgba(7,7,7,.98) 100%)!important;
  }

  .hero__title,
  .phero__title,
  html.bidot-mobile .hero__title,
  html.bidot-mobile .phero__title{
    font-size:clamp(2.6rem,10.8vw,3.8rem)!important;
    line-height:1.04!important;
    margin-bottom:1.05rem!important;
    max-width:13.5ch!important;
  }

  .hero__sub,
  .phero__sub,
  html.bidot-mobile .hero__sub,
  html.bidot-mobile .phero__sub{
    font-size:1.15rem!important;
    line-height:1.62!important;
    max-width:28ch!important;
  }

  /* Títulos generales en móvil: tamaño más visible como referencia de neuromoduladores */
  .shead h2,
  .split__body h2,
  .rwall__head h2,
  .faq h2,
  .qform__intro h2,
  .gal__intro h2,
  .ctaband h2,
  .mani__txt,
  .chapter__h,
  .book__info h3,
  .stage__p h3,
  .contact__big,
  .pcap h2,
  .pillars__in h3,
  .panel__h,
  .tmarq__head h2,
  .trx__name,
  .faq__q{
    font-size:clamp(2rem,7.2vw,2.7rem)!important;
    line-height:1.16!important;
  }

  .pillars__in{padding:2.2rem 1.55rem 1.8rem!important}
  .pillars__p::after{
    background:linear-gradient(180deg,
      rgba(11,10,9,.02) 0%,
      rgba(11,10,9,.08) 22%,
      rgba(11,10,9,.22) 40%,
      rgba(11,10,9,.58) 58%,
      rgba(11,10,9,.90) 78%,
      rgba(11,10,9,.98) 100%)!important;
  }
  .pillars__in h3{
    font-size:clamp(2rem,7vw,2.45rem)!important;
    line-height:1.15!important;
    margin-bottom:.55rem!important;
    text-shadow:0 6px 22px rgba(0,0,0,.36)!important;
  }
  .pillars__in p{
    font-size:1.12rem!important;
    line-height:1.62!important;
    text-shadow:0 4px 18px rgba(0,0,0,.28)!important;
  }

  /* Otros textos visibles algo más grandes */
  .split__body p,
  .faq__intro,
  .faq__a p,
  .rwall__head p,
  .book__info p,
  .chapter__sub,
  .contact__block p,
  .contact__txt p,
  .qform__legal,
  .trx__d,
  p, li{
    font-size:1.1rem!important;
    line-height:1.72!important;
  }
}


/* ===== FORMULARIO WHATSAPP TRAS INSTAGRAM ===== */
.waform-section{padding:9vh var(--pad) 11vh;background:var(--dark);color:var(--cream);position:relative;overflow:hidden}
.waform-section::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 20%,rgba(169,143,99,.22),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,0));pointer-events:none}
.waform-card{position:relative;z-index:1;max-width:1180px;margin:0 auto;border:1px solid rgba(174,180,187,.24);border-radius:22px;padding:clamp(2rem,5vw,4.8rem);display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.82fr);gap:clamp(2rem,5vw,5rem);align-items:start;background:rgba(255,255,255,.035);box-shadow:0 30px 90px rgba(0,0,0,.22);backdrop-filter:blur(10px)}
.waform-copy h2{font-family:var(--serif);font-weight:300;font-size:clamp(2.15rem,4.8vw,4.1rem);line-height:1.12;max-width:11ch;margin:1.1rem 0 1.4rem;text-wrap:balance}
.waform-copy p{font-size:clamp(1.05rem,1.3vw,1.24rem);line-height:1.72;color:rgba(248,245,240,.72);max-width:46ch}
.waform{max-width:none;margin:0;gap:1.15rem}
.waform input,.waform textarea{border:1px solid rgba(248,245,240,.18)!important;border-radius:14px!important;background:rgba(255,255,255,.055)!important;color:var(--cream)!important;padding:1rem 1.1rem!important;font-size:1.02rem!important}
.waform input::placeholder,.waform textarea::placeholder{color:rgba(248,245,240,.55)}
.waform input:focus,.waform textarea:focus{border-color:var(--gold)!important;background:rgba(255,255,255,.08)!important}
.waform textarea{min-height:130px!important}
.waform .btn{justify-content:center;margin-top:.4rem;width:100%}
@media(max-width:860px){
  .waform-section{padding:7vh var(--pad) 9vh}
  .waform-card{grid-template-columns:1fr;border-radius:18px;padding:2rem 1.35rem;gap:1.8rem}
  .waform-copy h2{font-size:clamp(2.25rem,9vw,3.25rem)!important;line-height:1.08!important;max-width:12ch}
  .waform-copy p{font-size:1.08rem!important;line-height:1.68!important}
  .waform input,.waform textarea{font-size:1.06rem!important;padding:1rem!important}
}


/* ===== AJUSTE EXTRA 2.3.0 · SECCIÓN PILARES MÁS GRANDE EN MÓVIL ===== */
@media (max-width: 860px){
  .pillars{
    gap:1.15rem!important;
    padding:2.6vh var(--pad)!important;
  }
  .pillars__p{
    min-height:58vh!important;
    border-radius:18px!important;
  }
  .pillars__p > img{
    filter:brightness(.78)!important;
  }
  .pillars__p::after{
    background:linear-gradient(180deg,
      rgba(11,10,9,.02) 0%,
      rgba(11,10,9,.10) 18%,
      rgba(11,10,9,.24) 34%,
      rgba(11,10,9,.56) 54%,
      rgba(11,10,9,.90) 76%,
      rgba(11,10,9,.99) 100%)!important;
  }
  .pillars__in{
    padding:2.5rem 1.7rem 2.15rem!important;
  }
  .pillars__in h3{
    font-size:clamp(2.2rem,8.2vw,2.85rem)!important;
    line-height:1.12!important;
    margin-bottom:.75rem!important;
    max-width:12ch!important;
    text-shadow:0 8px 30px rgba(0,0,0,.34)!important;
  }
  .pillars__in p{
    font-size:1.22rem!important;
    line-height:1.68!important;
    max-width:27ch!important;
    color:rgba(248,245,240,.96)!important;
    text-shadow:0 4px 18px rgba(0,0,0,.26)!important;
  }
}
@media (max-width: 560px){
  .pillars__p{min-height:52vh!important;}
  .pillars__in h3{
    font-size:clamp(2rem,8.6vw,2.5rem)!important;
    line-height:1.12!important;
  }
  .pillars__in p{
    font-size:1.14rem!important;
    line-height:1.66!important;
  }
}


/* ===== AJUSTE EXTRA 2.4.0 · HOME DESKTOP HERO EN DOS LÍNEAS ===== */
@media (min-width: 861px){
  body.home .hero__title{
    display:block!important;
    max-width:12.6ch!important;
    width:12.6ch!important;
    font-size:clamp(3rem,4.3vw,4.2rem)!important;
    line-height:1.06!important;
    white-space:normal!important;
    text-wrap:unset!important;
  }
  body.home .hero__title br{
    display:block!important;
  }
  body.home .hero__title-city{
    display:block!important;
    white-space:nowrap!important;
  }
}


/* ===== AJUSTE EXTRA 2.5.0 · PC HOME HERO EXACTO EN DOS LÍNEAS ===== */
@media (min-width: 861px){
  body.home .hero__inner{
    max-width:1280px!important;
    padding-left:var(--pad)!important;
    padding-right:var(--pad)!important;
  }

  body.home .hero__title{
    display:block!important;
    width:auto!important;
    max-width:860px!important;
    min-width:760px!important;
    font-size:clamp(2.7rem,3.75vw,3.85rem)!important;
    line-height:1.08!important;
    letter-spacing:-.02em!important;
    white-space:normal!important;
    text-wrap:unset!important;
    margin-bottom:1.7rem!important;
  }

  body.home .hero__title-main{
    display:block!important;
    white-space:nowrap!important;
    width:max-content!important;
    max-width:none!important;
  }

  body.home .hero__title br{
    display:block!important;
  }

  body.home .hero__title-city{
    display:block!important;
    white-space:nowrap!important;
    width:max-content!important;
    max-width:none!important;
  }

  body.home .hero__sub{
    max-width:58ch!important;
    width:58ch!important;
    font-size:clamp(1.15rem,1.35vw,1.36rem)!important;
    line-height:1.65!important;
  }
}

@media (min-width: 861px) and (max-width: 1180px){
  body.home .hero__title{
    min-width:0!important;
    max-width:92vw!important;
    font-size:clamp(2.25rem,4.1vw,3.35rem)!important;
  }
  body.home .hero__sub{
    width:auto!important;
    max-width:54ch!important;
  }
}


/* ===== AJUSTE EXTRA 2.6.0 · FORMULARIO + MÉTODOS DE CONTACTO ===== */
.waform-card{
  grid-template-columns:minmax(0,.92fr) minmax(360px,1fr)!important;
  align-items:center!important;
}
.waform-info h2{
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(2.6rem,5vw,4.6rem)!important;
  line-height:1.05!important;
  margin:0 0 2.2rem!important;
  max-width:10ch!important;
  color:var(--cream)!important;
  text-wrap:balance!important;
}
.waform-methods{
  display:grid!important;
  gap:.9rem!important;
  max-width:440px!important;
}
.waform-method{
  display:block!important;
  padding:1.15rem 1.25rem!important;
  border:1px solid rgba(174,180,187,.22)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.045)!important;
  color:var(--cream)!important;
  text-decoration:none!important;
  transition:transform .35s var(--ease),border-color .35s var(--ease),background .35s var(--ease)!important;
}
.waform-method:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(174,180,187,.55)!important;
  background:rgba(255,255,255,.075)!important;
}
.waform-method span{
  display:block!important;
  margin-bottom:.35rem!important;
  font-size:.72rem!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:var(--gold)!important;
}
.waform-method strong{
  display:block!important;
  font-family:var(--serif)!important;
  font-weight:300!important;
  font-size:clamp(1.35rem,2vw,1.75rem)!important;
  line-height:1.22!important;
  color:var(--cream)!important;
}
.waform-copy{display:none!important;}
.waform{
  width:100%!important;
}
.waform input,.waform textarea{
  font-size:1.08rem!important;
  padding:1.08rem 1.2rem!important;
}
.waform textarea{
  min-height:150px!important;
}
@media (max-width: 860px){
  .waform-section{
    text-align:center!important;
  }
  .waform-card{
    grid-template-columns:1fr!important;
    justify-items:center!important;
    text-align:center!important;
    gap:2rem!important;
  }
  .waform-info,
  .waform,
  .waform-methods{
    width:100%!important;
    max-width:460px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .waform-info h2{
    max-width:12ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    font-size:clamp(2.45rem,10vw,3.45rem)!important;
    line-height:1.06!important;
    text-align:center!important;
  }
  .waform-method{
    text-align:center!important;
  }
  .waform input,.waform textarea{
    text-align:center!important;
    font-size:1.08rem!important;
  }
  .waform textarea{
    min-height:138px!important;
  }
}


/* ===== AJUSTE EXTRA 2.7.0 · HOME MÓVIL / TARJETAS EQUIPO MÁS GRANDES =====
   Este bloque va al final para pisar las reglas antiguas que reducían esta sección.
*/
@media (max-width: 900px){
  body.home .pillars,
  html.bidot-mobile body.home .pillars{
    padding:2.2vh var(--pad) 2.6vh!important;
    gap:1rem!important;
  }

  body.home .pillars__p,
  html.bidot-mobile body.home .pillars__p,
  html.bidot-mobile body.home .pillars.mobile-pillars-ready .pillars__p{
    min-height:205px!important;
    border-radius:18px!important;
  }

  body.home .pillars__p.is-active,
  html.bidot-mobile body.home .pillars__p.is-active,
  html.bidot-mobile body.home .pillars.mobile-pillars-ready .pillars__p.is-active{
    min-height:390px!important;
  }

  body.home .pillars__p::before,
  html.bidot-mobile body.home .pillars__p::before{
    width:54px!important;
    height:54px!important;
    font-size:1.35rem!important;
    left:1.05rem!important;
    top:1.05rem!important;
  }

  body.home .pillars__p::after,
  html.bidot-mobile body.home .pillars__p::after{
    background:linear-gradient(180deg,
      rgba(7,7,7,.04) 0%,
      rgba(7,7,7,.14) 24%,
      rgba(7,7,7,.34) 44%,
      rgba(7,7,7,.70) 68%,
      rgba(7,7,7,.96) 100%)!important;
  }

  body.home .pillars__in,
  html.bidot-mobile body.home .pillars__in{
    padding:2rem 1.55rem 2.15rem!important;
    text-align:center!important;
    align-items:center!important;
  }

  body.home .pillars__in h3,
  body.home .pillars__p:nth-child(1) .pillars__in h3,
  body.home .pillars__p:nth-child(2) .pillars__in h3,
  body.home .pillars__p:nth-child(3) .pillars__in h3,
  html.bidot-mobile body.home .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(1) .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(2) .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(3) .pillars__in h3{
    font-size:clamp(2.15rem,8.9vw,2.95rem)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    white-space:normal!important;
    max-width:11.8ch!important;
    width:auto!important;
    margin-left:auto!important;
    margin-right:auto!important;
    margin-bottom:.85rem!important;
    text-align:center!important;
    text-wrap:balance!important;
  }

  body.home .pillars__in h3::before,
  html.bidot-mobile body.home .pillars__in h3::before{
    font-size:.42em!important;
    margin-right:.35rem!important;
  }

  body.home .pillars__in p,
  html.bidot-mobile body.home .pillars__in p,
  html.bidot-mobile body.home .pillars.mobile-pillars-ready .pillars__in p,
  html.bidot-mobile body.home .pillars.mobile-pillars-ready .pillars__p.is-active .pillars__in p{
    font-size:1.26rem!important;
    line-height:1.62!important;
    max-width:24ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    color:rgba(248,245,240,.97)!important;
    text-align:center!important;
  }

  html.bidot-mobile body.home .pillars.mobile-pillars-ready .pillars__p.is-active .pillars__in p{
    opacity:1!important;
    transform:none!important;
    max-height:320px!important;
    margin-top:.9rem!important;
  }
}

@media (max-width: 430px){
  body.home .pillars__in h3,
  body.home .pillars__p:nth-child(1) .pillars__in h3,
  body.home .pillars__p:nth-child(2) .pillars__in h3,
  body.home .pillars__p:nth-child(3) .pillars__in h3,
  html.bidot-mobile body.home .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(1) .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(2) .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(3) .pillars__in h3{
    font-size:clamp(2rem,8.1vw,2.42rem)!important;
    line-height:1.1!important;
    max-width:12.5ch!important;
  }

  body.home .pillars__in p,
  html.bidot-mobile body.home .pillars__in p,
  html.bidot-mobile body.home .pillars.mobile-pillars-ready .pillars__in p,
  html.bidot-mobile body.home .pillars.mobile-pillars-ready .pillars__p.is-active .pillars__in p{
    font-size:1.18rem!important;
    line-height:1.62!important;
    max-width:26ch!important;
  }
}


/* ===== AJUSTE EXTRA 2.8.0 · TÍTULOS DE PILARES EN 1 LÍNEA O MÁXIMO 2 ===== */
@media (max-width: 860px){
  body.home .pillars__in h3,
  body.home .pillars__p:nth-child(1) .pillars__in h3,
  body.home .pillars__p:nth-child(2) .pillars__in h3,
  body.home .pillars__p:nth-child(3) .pillars__in h3,
  html.bidot-mobile body.home .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(1) .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(2) .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(3) .pillars__in h3{
    font-size:clamp(1.9rem,6.4vw,2.22rem)!important;
    line-height:1.12!important;
    letter-spacing:-.02em!important;
    max-width:18ch!important;
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    white-space:normal!important;
    text-wrap:balance!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    overflow:hidden!important;
  }
}

@media (max-width: 430px){
  body.home .pillars__in h3,
  body.home .pillars__p:nth-child(1) .pillars__in h3,
  body.home .pillars__p:nth-child(2) .pillars__in h3,
  body.home .pillars__p:nth-child(3) .pillars__in h3,
  html.bidot-mobile body.home .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(1) .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(2) .pillars__in h3,
  html.bidot-mobile body.home .pillars__p:nth-child(3) .pillars__in h3{
    font-size:clamp(1.74rem,7vw,2rem)!important;
    max-width:17ch!important;
  }
}


/* ===== AJUSTE EXTRA 2.9.0 · TEXTOS VISIBLES EN BLOQUES DE TRATAMIENTOS ===== */
body:not(.home) .vals{
  align-items:start!important;
  grid-auto-rows:minmax(min-content,max-content)!important;
}

body:not(.home) .vals .vrow{
  display:block!important;
  align-self:start!important;
  min-height:auto!important;
}

body:not(.home) .vals:not(.dark) .vrow h3{
  color:var(--gold)!important;
}

body:not(.home) .vals:not(.dark) .vrow p{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  max-height:none!important;
  overflow:visible!important;
  margin-top:.95rem!important;
  color:#6d655d!important;
  -webkit-text-fill-color:#6d655d!important;
  font-size:1.07rem!important;
  line-height:1.72!important;
}

@media (max-width: 860px){
  body:not(.home) .vals:not(.dark) .vrow p{
    font-size:1.04rem!important;
    line-height:1.68!important;
  }
}


/* ===== AJUSTE EXTRA 3.0.0 · MENOS ESPACIOS + TEXTOS MEJOR CENTRADOS ===== */
body:not(.home) section,
body:not(.home) header,
body:not(.home) footer{
  margin-top:0!important;
  margin-bottom:0!important;
}

body:not(.home) .mani,
body:not(.home) .shead,
body:not(.home) .vals,
body:not(.home) .split,
body:not(.home) .vmarq,
body:not(.home) .rooms,
body:not(.home) .qlines,
body:not(.home) .cards,
body:not(.home) .split-2,
body:not(.home) .steps,
body:not(.home) .tmarq,
body:not(.home) .tquotes,
body:not(.home) .rwall,
body:not(.home) .ctaband,
body:not(.home) .contact,
body:not(.home) .qform,
body:not(.home) .book{
  padding-top:5.5vh!important;
  padding-bottom:5.5vh!important;
}

body:not(.home) .shead{
  padding-bottom:2vh!important;
  text-align:center!important;
}
body:not(.home) .shead h2,
body:not(.home) .mani__txt,
body:not(.home) .ctaband h2,
body:not(.home) .contact__big,
body:not(.home) .qform__intro h2,
body:not(.home) .rwall__head h2,
body:not(.home) .gal__intro h2,
body:not(.home) .qline{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body:not(.home) .shead .eyebrow,
body:not(.home) .qform__intro .eyebrow,
body:not(.home) .ctaband .eyebrow,
body:not(.home) .contact .eyebrow,
body:not(.home) .rwall__head .eyebrow{
  justify-content:center!important;
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body:not(.home) .mani__in,
body:not(.home) .shead,
body:not(.home) .qform__intro,
body:not(.home) .rwall__head,
body:not(.home) .gal__intro{
  max-width:1100px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body:not(.home) .phero__inner{
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body:not(.home) .vals{
  gap:2.6vh 3rem!important;
  padding-top:2.4vh!important;
  padding-bottom:5.5vh!important;
}
body:not(.home) .vrow{
  padding-top:.15rem!important;
  padding-bottom:.35rem!important;
}
body:not(.home) .split{
  align-items:center!important;
}
body:not(.home) .split__body{
  padding-top:5vh!important;
  padding-bottom:5vh!important;
}
body:not(.home) .contact__grid{
  margin-top:4.5vh!important;
  padding-top:3vh!important;
}
body:not(.home) .contact__cta,
body:not(.home) .split .seccta,
body:not(.home) .faq .seccta,
body:not(.home) .vals .seccta{
  margin-top:2.2vh!important;
  padding-top:2.2vh!important;
}
body:not(.home) .tmarq__head,
body:not(.home) .tquotes__nav,
body:not(.home) .book__pts{
  margin-top:2vh!important;
  padding-top:2vh!important;
}

@media (max-width: 860px){
  body:not(.home) .mani,
  body:not(.home) .shead,
  body:not(.home) .vals,
  body:not(.home) .split,
  body:not(.home) .vmarq,
  body:not(.home) .rooms,
  body:not(.home) .qlines,
  body:not(.home) .cards,
  body:not(.home) .split-2,
  body:not(.home) .steps,
  body:not(.home) .tmarq,
  body:not(.home) .tquotes,
  body:not(.home) .rwall,
  body:not(.home) .ctaband,
  body:not(.home) .contact,
  body:not(.home) .qform,
  body:not(.home) .book{
    padding-top:4.2vh!important;
    padding-bottom:4.2vh!important;
  }
  body:not(.home) .vals{
    gap:1.7rem!important;
    padding-top:1.6vh!important;
    padding-bottom:4.2vh!important;
  }
  body:not(.home) .split__body,
  body:not(.home) .book__info,
  body:not(.home) .contact,
  body:not(.home) .qform{
    text-align:center!important;
  }
  body:not(.home) .split__body .eyebrow,
  body:not(.home) .book__info .eyebrow,
  body:not(.home) .contact__grid h4{
    display:block!important;
    text-align:center!important;
  }
  body:not(.home) .split__body p,
  body:not(.home) .book__info p,
  body:not(.home) .contact__grid a,
  body:not(.home) .contact__grid p,
  body:not(.home) .qform__intro p{
    margin-left:auto!important;
    margin-right:auto!important;
  }
}


/* ===== AJUSTE EXTRA 3.1.0 · AUDITORÍA GLOBAL DE CONTRASTE ===== */
:root{
  --gold-strong:#aeb4bb!important;
  --gold-soft:#cfd4d8!important;
  --text-strong:#181512;
  --text-muted:#5e564d;
  --text-muted-2:#736b63;
  --text-on-dark:#f6f1ea;
}

/* Base general */
body{color:var(--text-strong)!important;}

/* Acentos y microtextos */
.eyebrow,
.eyebrow::before,
body:not(.home) .chapter__n,
body:not(.home) .test__it .by,
body:not(.home) .rcard .by,
body:not(.home) .tq .by,
body:not(.home) .contact__grid h4,
body:not(.home) .trx__go,
body:not(.home) .qfield label{
  color:var(--gold-strong)!important;
  background-color:transparent!important;
}
.eyebrow::before{background:var(--gold-strong)!important;}

/* Fondos claros: más contraste en todo el contenido */
body:not(.home) .mani,
body:not(.home) .shead,
body:not(.home) .vals:not(.dark),
body:not(.home) .split.cream,
body:not(.home) .contact,
body:not(.home) .qlines,
body:not(.home) .tmarq,
body:not(.home) .ctaband:not(.dark),
body:not(.home) .rwall:not(.dark),
body:not(.home) .rooms,
body:not(.home) .cards,
body:not(.home) .split-2{
  color:var(--text-strong)!important;
}

body:not(.home) .mani__txt,
body:not(.home) .shead h2,
body:not(.home) .split__body h2,
body:not(.home) .contact__big,
body:not(.home) .qline,
body:not(.home) .ctaband h2,
body:not(.home) .rwall__head h2,
body:not(.home) .qform__intro h2,
body:not(.home) .gal__intro h2,
body:not(.home) .book__info h3,
body:not(.home) .chapter__h,
body:not(.home) .phero__title,
body:not(.home) .vrow h3,
body:not(.home) .trx__name,
body:not(.home) .faq__q,
body:not(.home) .tcardq q,
body:not(.home) .tq q,
body:not(.home) .rcard q{
  color:var(--text-strong)!important;
  -webkit-text-fill-color:var(--text-strong)!important;
}

body:not(.home) .mani em,
body:not(.home) .split__body h2 em,
body:not(.home) .ctaband h2 em,
body:not(.home) .qline em,
body:not(.home) .qform__intro h2 em,
body:not(.home) .gal__intro h2 em,
body:not(.home) .book__info h3 em,
body:not(.home) .chapter__h em,
body:not(.home) .phero__title em,
body:not(.home) .shead h2 em,
body:not(.home) .vrow h3 em,
body:not(.home) .contact__big em,
body:not(.home) .rwall__head h2 em{
  color:var(--gold-strong)!important;
  -webkit-text-fill-color:var(--gold-strong)!important;
}

body:not(.home) .split__body p,
body:not(.home) .book__info p,
body:not(.home) .vrow p,
body:not(.home) .contact__grid a,
body:not(.home) .contact__grid p,
body:not(.home) .qform__intro p,
body:not(.home) .faq__intro,
body:not(.home) .faq__a p,
body:not(.home) .chapter__sub,
body:not(.home) .panel__sub,
body:not(.home) .qlines p,
body:not(.home) .cardi p,
body:not(.home) .room p,
body:not(.home) .tcardq .by,
body:not(.home) .rwall__head p,
body:not(.home) .trx__d,
body:not(.home) .vmarq__t p,
body:not(.home) .modal__txt li,
body:not(.home) p,
body:not(.home) li{
  color:var(--text-muted)!important;
  -webkit-text-fill-color:var(--text-muted)!important;
}

body:not(.home) .vrow::before,
body:not(.home) .faq__it,
body:not(.home) .contact__grid,
body:not(.home) .tquotes__nav,
body:not(.home) .modal__txt ul,
body:not(.home) .modal__txt li,
body:not(.home) .book__pts li,
body:not(.home) .qfield input,
body:not(.home) .qfield select,
body:not(.home) .qfield textarea{
  border-color:rgba(120,97,52,.32)!important;
}
body:not(.home) .vrow::before{background:rgba(167,122,45,.55)!important;}

/* Formularios claros/oscursos legibles */
body:not(.home) .qfield input,
body:not(.home) .qfield select,
body:not(.home) .qfield textarea{
  color:var(--text-on-dark)!important;
}
body:not(.home) .qfield input::placeholder,
body:not(.home) .qfield textarea::placeholder{
  color:rgba(246,241,234,.72)!important;
}
body:not(.home) .qform__legal{
  color:rgba(246,241,234,.66)!important;
}

/* Fondos oscuros: reforzar contraste */
body:not(.home) .dark,
body:not(.home) .split.dark,
body:not(.home) .vmarq,
body:not(.home) .qform,
body:not(.home) .book,
body:not(.home) .ctaband.dark,
body:not(.home) .rwall,
body:not(.home) .tquotes,
body:not(.home) .footer{
  color:var(--text-on-dark)!important;
}

body:not(.home) .dark h1,
body:not(.home) .dark h2,
body:not(.home) .dark h3,
body:not(.home) .dark h4,
body:not(.home) .split.dark h2,
body:not(.home) .vmarq h3,
body:not(.home) .qform h2,
body:not(.home) .book h3,
body:not(.home) .ctaband.dark h2,
body:not(.home) .rwall h2,
body:not(.home) .tquotes q,
body:not(.home) .footer a{
  color:var(--text-on-dark)!important;
  -webkit-text-fill-color:var(--text-on-dark)!important;
}

body:not(.home) .dark p,
body:not(.home) .dark li,
body:not(.home) .split.dark p,
body:not(.home) .vmarq p,
body:not(.home) .qform p,
body:not(.home) .book p,
body:not(.home) .rwall p,
body:not(.home) .tquotes .by,
body:not(.home) .footer__disc,
body:not(.home) .footer__bottom{
  color:rgba(246,241,234,.88)!important;
  -webkit-text-fill-color:rgba(246,241,234,.88)!important;
}

body:not(.home) .dark em,
body:not(.home) .split.dark em,
body:not(.home) .vmarq em,
body:not(.home) .qform em,
body:not(.home) .book em,
body:not(.home) .ctaband.dark em,
body:not(.home) .rwall em,
body:not(.home) .tquotes em,
body:not(.home) .dark .eyebrow,
body:not(.home) .split.dark .eyebrow,
body:not(.home) .qform .eyebrow,
body:not(.home) .book .eyebrow,
body:not(.home) .vmarq .eyebrow,
body:not(.home) .rwall .eyebrow,
body:not(.home) .ctaband.dark .eyebrow{
  color:var(--gold-soft)!important;
  -webkit-text-fill-color:var(--gold-soft)!important;
}
body:not(.home) .dark .eyebrow::before,
body:not(.home) .split.dark .eyebrow::before,
body:not(.home) .qform .eyebrow::before,
body:not(.home) .book .eyebrow::before,
body:not(.home) .vmarq .eyebrow::before,
body:not(.home) .rwall .eyebrow::before,
body:not(.home) .ctaband.dark .eyebrow::before{
  background:var(--gold-soft)!important;
}

/* Hero interior: subtexto más visible */
body:not(.home) .phero__sub{
  color:rgba(246,241,234,.94)!important;
  text-shadow:0 3px 20px rgba(0,0,0,.32)!important;
}

/* Ajuste fino del bloque superior de tratamiento para evitar huecos raros */
body:not(.home) .mani{
  padding-top:3.8vh!important;
  padding-bottom:2.6vh!important;
}
body:not(.home) .shead{
  padding-top:1.5vh!important;
  padding-bottom:1.8vh!important;
}
body:not(.home) .mani__txt{max-width:20ch!important;}

@media (max-width: 860px){
  body:not(.home) .split__body p,
  body:not(.home) .book__info p,
  body:not(.home) .vrow p,
  body:not(.home) .contact__grid a,
  body:not(.home) .contact__grid p,
  body:not(.home) .qform__intro p,
  body:not(.home) .faq__a p,
  body:not(.home) .chapter__sub,
  body:not(.home) p,
  body:not(.home) li{
    color:var(--text-muted-2)!important;
    -webkit-text-fill-color:var(--text-muted-2)!important;
  }
}


/* ===== AJUSTE EXTRA 3.2.0 · TÍTULOS DESKTOP EN UNA SOLA LÍNEA ===== */
@media (min-width: 861px){
  body:not(.home) .phero__inner{
    max-width:none!important;
    width:100%!important;
  }

  body:not(.home) .phero__title{
    display:block!important;
    max-width:none!important;
    width:auto!important;
    white-space:nowrap!important;
    text-wrap:nowrap!important;
    overflow:visible!important;
    font-size:clamp(2.7rem,4.15vw,4.6rem)!important;
    line-height:1.04!important;
    letter-spacing:-.035em!important;
  }

  body:not(.home) .phero__title .ln{
    display:inline!important;
    overflow:visible!important;
    padding:0!important;
    white-space:nowrap!important;
  }

  body:not(.home) .phero__title .ln + .ln::before{
    content:" "!important;
  }

  body:not(.home) .phero__title em,
  body:not(.home) .phero__title .accent-script{
    display:inline!important;
    white-space:nowrap!important;
    line-height:1!important;
  }

  body:not(.home) .shead h2,
  body:not(.home) .split__body h2,
  body:not(.home) .ctaband h2,
  body:not(.home) .contact__big,
  body:not(.home) .qform__intro h2,
  body:not(.home) .rwall__head h2,
  body:not(.home) .gal__intro h2,
  body:not(.home) .book__info h3,
  body:not(.home) .pcap h2{
    max-width:none!important;
    width:auto!important;
    white-space:nowrap!important;
    text-wrap:nowrap!important;
    overflow:visible!important;
  }

  body:not(.home) .contact__big .ln,
  body:not(.home) .split__body h2 .ln,
  body:not(.home) .ctaband h2 .ln{
    display:inline!important;
    overflow:visible!important;
    padding:0!important;
  }

  body:not(.home) .contact__big .ln + .ln::before,
  body:not(.home) .split__body h2 .ln + .ln::before,
  body:not(.home) .ctaband h2 .ln + .ln::before{
    content:" "!important;
  }
}

@media (min-width: 861px) and (max-width: 1180px){
  body:not(.home) .phero__title{
    font-size:clamp(2.35rem,3.75vw,3.55rem)!important;
  }
  body:not(.home) .shead h2,
  body:not(.home) .split__body h2,
  body:not(.home) .ctaband h2,
  body:not(.home) .contact__big,
  body:not(.home) .qform__intro h2,
  body:not(.home) .rwall__head h2,
  body:not(.home) .gal__intro h2,
  body:not(.home) .book__info h3,
  body:not(.home) .pcap h2{
    font-size:clamp(2rem,3.2vw,3rem)!important;
  }
}


/* ===== AJUSTE EXTRA 3.3.0 · REVISIÓN FINAL TRATAMIENTOS: SIN CORTES, CONTRASTE REAL Y CENTRADO ===== */

/* Quita el cursor/logo flotante que se estaba superponiendo encima de títulos y tarjetas */
@media (hover:hover){
  body,a,button,input,textarea,select{cursor:auto!important;}
}
.cur,.cur-dot{display:none!important;visibility:hidden!important;opacity:0!important;}

/* HERO DE PÁGINAS INTERIORES / TRATAMIENTOS: nunca cortar ni salirse */
body:not(.home) .phero{
  min-height:clamp(520px,70vh,760px)!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
body:not(.home) .phero__scrim{
  background:linear-gradient(180deg,
    rgba(5,5,5,.22) 0%,
    rgba(5,5,5,.44) 36%,
    rgba(5,5,5,.74) 70%,
    rgba(5,5,5,.92) 100%)!important;
}
body:not(.home) .phero__inner{
  width:min(1180px,92vw)!important;
  max-width:min(1180px,92vw)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:0!important;
  padding-right:0!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-end!important;
  overflow:visible!important;
}
body:not(.home) .phero__ey,
body:not(.home) .phero__inner .eyebrow{
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
  justify-content:center!important;
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body:not(.home) .phero__inner .eyebrow::before{background:#aeb4bb!important;}
body:not(.home) .phero__title{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
  white-space:normal!important;
  text-wrap:balance!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  font-size:clamp(2.25rem,3.65vw,4.25rem)!important;
  line-height:1.08!important;
  letter-spacing:-.025em!important;
  text-shadow:0 6px 34px rgba(0,0,0,.56)!important;
}
body:not(.home) .phero__title .ln{
  display:inline!important;
  white-space:normal!important;
  overflow:visible!important;
  padding:0!important;
}
body:not(.home) .phero__title .ln + .ln::before{content:" "!important;}
body:not(.home) .phero__title em,
body:not(.home) .phero__title .accent-script{
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
  display:inline!important;
  white-space:normal!important;
  font-size:1.16em!important;
  line-height:.95!important;
  margin:0 .035em!important;
}
body:not(.home) .phero__sub{
  color:rgba(255,255,255,.94)!important;
  -webkit-text-fill-color:rgba(255,255,255,.94)!important;
  max-width:58ch!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
  font-size:clamp(1rem,1.12vw,1.22rem)!important;
  line-height:1.62!important;
  text-shadow:0 4px 24px rgba(0,0,0,.55)!important;
}

/* Títulos de secciones: quitar nowrap antiguo que cortaba textos */
body:not(.home) .shead h2,
body:not(.home) .split__body h2,
body:not(.home) .ctaband h2,
body:not(.home) .contact__big,
body:not(.home) .qform__intro h2,
body:not(.home) .rwall__head h2,
body:not(.home) .gal__intro h2,
body:not(.home) .book__info h3,
body:not(.home) .pcap h2,
body:not(.home) .mani__txt,
body:not(.home) .qline,
body:not(.home) .vrow h3,
body:not(.home) .trx__name,
body:not(.home) .faq__q{
  white-space:normal!important;
  text-wrap:balance!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  max-width:min(22ch,92vw)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
body:not(.home) .shead h2,
body:not(.home) .split__body h2,
body:not(.home) .ctaband h2,
body:not(.home) .qform__intro h2,
body:not(.home) .rwall__head h2,
body:not(.home) .gal__intro h2{
  font-size:clamp(2.2rem,4.1vw,4rem)!important;
  line-height:1.12!important;
}

/* Bloques tipo manifiesto: el efecto por palabras dejaba el texto casi invisible */
body:not(.home) .mani__txt,
body:not(.home) .mani__txt .w{
  opacity:1!important;
  color:#181512!important;
  -webkit-text-fill-color:#181512!important;
}
body:not(.home) .mani__txt em,
body:not(.home) .mani__txt em .w{
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
}

/* Fondos claros: contraste fuerte */
body:not(.home) .shead,
body:not(.home) .mani,
body:not(.home) .vals:not(.dark),
body:not(.home) .split.cream,
body:not(.home) .ctaband:not(.dark),
body:not(.home) .contact,
body:not(.home) .tmarq,
body:not(.home) .qlines{
  color:#181512!important;
}
body:not(.home) .shead h2,
body:not(.home) .split.cream h2,
body:not(.home) .ctaband:not(.dark) h2,
body:not(.home) .contact__big,
body:not(.home) .tmarq h2,
body:not(.home) .qlines .qline,
body:not(.home) .vals:not(.dark) .vrow h3{
  color:#181512!important;
  -webkit-text-fill-color:#181512!important;
}
body:not(.home) .shead h2 em,
body:not(.home) .split.cream h2 em,
body:not(.home) .ctaband:not(.dark) h2 em,
body:not(.home) .contact__big em,
body:not(.home) .qlines em,
body:not(.home) .vals:not(.dark) .vrow h3 em{
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
}
body:not(.home) .split.cream p,
body:not(.home) .ctaband:not(.dark) p,
body:not(.home) .contact p,
body:not(.home) .contact a,
body:not(.home) .vals:not(.dark) .vrow p,
body:not(.home) .tmarq p,
body:not(.home) .qlines p{
  color:#4f4840!important;
  -webkit-text-fill-color:#4f4840!important;
}

/* Fondos oscuros: contraste fuerte */
body:not(.home) .dark h1,
body:not(.home) .dark h2,
body:not(.home) .dark h3,
body:not(.home) .dark h4,
body:not(.home) .split.dark h2,
body:not(.home) .vmarq h3,
body:not(.home) .qform h2,
body:not(.home) .book h3,
body:not(.home) .ctaband.dark h2,
body:not(.home) .rwall h2,
body:not(.home) .tquotes q,
body:not(.home) .footer a{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
body:not(.home) .dark p,
body:not(.home) .dark li,
body:not(.home) .split.dark p,
body:not(.home) .vmarq p,
body:not(.home) .qform p,
body:not(.home) .book p,
body:not(.home) .rwall p,
body:not(.home) .tquotes .by{
  color:rgba(255,255,255,.9)!important;
  -webkit-text-fill-color:rgba(255,255,255,.9)!important;
}

/* Home / tarjetas de tratamientos: evitar corte en móvil y escritorio */
body.home .book,
body.home .book__page,
body.home .book__info,
body.home .book__info > *{
  overflow:visible!important;
  min-width:0!important;
}
body.home .book__info h3,
html.bidot-mobile body.home .book__info h3,
body.home .tcard h3,
html.bidot-mobile body.home .tcard h3{
  white-space:normal!important;
  text-wrap:balance!important;
  overflow:visible!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  max-width:100%!important;
  width:100%!important;
  font-size:clamp(1.65rem,5.7vw,2.35rem)!important;
  line-height:1.12!important;
  letter-spacing:-.018em!important;
  text-align:center!important;
  display:block!important;
  -webkit-line-clamp:unset!important;
  -webkit-box-orient:unset!important;
}
body.home .book__info p,
html.bidot-mobile body.home .book__info p,
body.home .tcard p,
html.bidot-mobile body.home .tcard p{
  max-width:34ch!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
  color:rgba(255,255,255,.92)!important;
  -webkit-text-fill-color:rgba(255,255,255,.92)!important;
}
body.home .book__info .book-treatment-actions,
html.bidot-mobile body.home .book__info .book-treatment-actions{
  width:100%!important;
  max-width:360px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
body.home .book__info .book-treatment-action,
html.bidot-mobile body.home .book__info .book-treatment-action{
  width:100%!important;
  max-width:100%!important;
  white-space:normal!important;
  text-align:center!important;
}

/* Móvil: bajar tamaños para que nada se corte y centrar todo */
@media (max-width: 860px){
  body:not(.home) .phero{
    min-height:clamp(560px,78svh,760px)!important;
  }
  body:not(.home) .phero__inner{
    width:min(92vw,680px)!important;
    max-width:min(92vw,680px)!important;
    padding-bottom:7vh!important;
  }
  body:not(.home) .phero__title{
    font-size:clamp(2rem,8vw,3.15rem)!important;
    line-height:1.08!important;
    max-width:11.5ch!important;
  }
  body:not(.home) .phero__title em,
  body:not(.home) .phero__title .accent-script{
    font-size:1.12em!important;
  }
  body:not(.home) .phero__sub{
    font-size:1.04rem!important;
    line-height:1.58!important;
    max-width:31ch!important;
  }
  body:not(.home) .shead h2,
  body:not(.home) .split__body h2,
  body:not(.home) .ctaband h2,
  body:not(.home) .qform__intro h2,
  body:not(.home) .rwall__head h2,
  body:not(.home) .gal__intro h2,
  body:not(.home) .mani__txt{
    font-size:clamp(2rem,7.6vw,2.75rem)!important;
    max-width:12.5ch!important;
  }
  body.home .book__info h3,
  html.bidot-mobile body.home .book__info h3,
  body.home .tcard h3,
  html.bidot-mobile body.home .tcard h3{
    font-size:clamp(1.55rem,6.2vw,2.15rem)!important;
    max-width:14.5ch!important;
  }
}

@media (min-width: 861px){
  body:not(.home) .phero__title{
    max-width:95vw!important;
  }
}


/* ===== BIDOT 3.4.0 · CORRECCIÓN GLOBAL REAL: CONTRASTE, CURSOR Y ESPACIADOS ===== */

/* Cursor: nunca ocultar el cursor real del navegador. El custom cursor quedaba bloqueado/superpuesto. */
html, body, a, button, input, textarea, select, label, [role="button"]{
  cursor:auto!important;
}
.cur,.cur-dot{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
}

/* Evita que animaciones de entrada dejen textos invisibles si GSAP/no-GSAP falla. */
body:not(.home) .reveal,
body:not(.home) [data-scrub],
body:not(.home) .w,
body:not(.home) .ln,
body:not(.home) .book__info > *,
body:not(.home) .test__it,
body:not(.home) .tq,
body:not(.home) .rcard{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  clip-path:none!important;
}

/* HERO de todas las páginas interiores: texto claro, centrado y sin cortes. */
body:not(.home) .phero{
  min-height:620px!important;
  height:88svh!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
body:not(.home) .phero__scrim{
  background:linear-gradient(180deg,
    rgba(0,0,0,.30) 0%,
    rgba(0,0,0,.46) 35%,
    rgba(0,0,0,.70) 100%)!important;
}
body:not(.home) .phero__inner{
  width:min(1100px,92vw)!important;
  max-width:min(1100px,92vw)!important;
  padding:8vh 0 0!important;
  margin:0 auto!important;
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
}
body:not(.home) .phero__title,
body:not(.home) .phero__title .ln{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:0 8px 36px rgba(0,0,0,.68)!important;
}
body:not(.home) .phero__title{
  display:block!important;
  width:100%!important;
  max-width:18ch!important;
  margin:0 auto 1.4rem!important;
  text-align:center!important;
  white-space:normal!important;
  text-wrap:balance!important;
  overflow:visible!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  font-size:clamp(3.1rem,5.1vw,5.6rem)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
}
body:not(.home) .phero__title .ln{
  display:inline!important;
  padding:0!important;
  overflow:visible!important;
  white-space:normal!important;
}
body:not(.home) .phero__title .ln + .ln::before{content:" "!important;}
body:not(.home) .phero__title em,
body:not(.home) .phero__title .accent-script{
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
  display:inline!important;
  white-space:normal!important;
  font-size:1.08em!important;
  line-height:1!important;
  margin:0 .035em!important;
}
body:not(.home) .phero__sub{
  color:rgba(255,255,255,.95)!important;
  -webkit-text-fill-color:rgba(255,255,255,.95)!important;
  opacity:1!important;
  visibility:visible!important;
  max-width:58ch!important;
  margin:0 auto!important;
  text-align:center!important;
  font-size:clamp(1.05rem,1.16vw,1.26rem)!important;
  line-height:1.6!important;
  text-shadow:0 5px 24px rgba(0,0,0,.62)!important;
}

/* BLOQUES CLAROS: contraste alto y centrado limpio. */
body:not(.home) .mani,
body:not(.home) .shead,
body:not(.home) .vals:not(.dark),
body:not(.home) .split.cream,
body:not(.home) .qlines,
body:not(.home) .contact,
body:not(.home) .ctaband:not(.dark),
body:not(.home) .tmarq{
  color:#171411!important;
  background-color:#f8f5f0!important;
}
body:not(.home) .mani__txt,
body:not(.home) .mani__txt .w,
body:not(.home) .shead h2,
body:not(.home) .vals:not(.dark) .vrow h3,
body:not(.home) .split.cream h2,
body:not(.home) .qlines .qline,
body:not(.home) .contact__big,
body:not(.home) .ctaband:not(.dark) h2,
body:not(.home) .tmarq h2,
body:not(.home) .tcardq q{
  color:#171411!important;
  -webkit-text-fill-color:#171411!important;
  opacity:1!important;
  visibility:visible!important;
}
body:not(.home) .mani__txt em,
body:not(.home) .mani__txt em .w,
body:not(.home) .shead h2 em,
body:not(.home) .split.cream h2 em,
body:not(.home) .qlines em,
body:not(.home) .ctaband:not(.dark) h2 em,
body:not(.home) .contact__big em,
body:not(.home) .tcardq em{
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
}
body:not(.home) .vals:not(.dark) .vrow p,
body:not(.home) .split.cream p,
body:not(.home) .contact p,
body:not(.home) .contact a,
body:not(.home) .ctaband:not(.dark) p,
body:not(.home) .tcardq .by,
body:not(.home) .tmarq p{
  color:#4e463d!important;
  -webkit-text-fill-color:#4e463d!important;
  opacity:1!important;
  visibility:visible!important;
}

/* BLOQUES OSCUROS: nada de texto negro sobre fondo negro. */
body:not(.home) .faq,
body:not(.home) .steps.dark,
body:not(.home) .feat,
body:not(.home) .split.dark,
body:not(.home) .qform,
body:not(.home) .book,
body:not(.home) .vmarq,
body:not(.home) .rwall,
body:not(.home) .tquotes,
body:not(.home) .ctaband.dark,
body:not(.home) .footer{
  background-color:#090909!important;
  color:#f8f5f0!important;
}
body:not(.home) .faq h2,
body:not(.home) .faq__q,
body:not(.home) .steps.dark h4,
body:not(.home) .feat h2,
body:not(.home) .feat b,
body:not(.home) .split.dark h2,
body:not(.home) .qform h2,
body:not(.home) .book h3,
body:not(.home) .rwall h2,
body:not(.home) .tquotes q,
body:not(.home) .ctaband.dark h2,
body:not(.home) .footer a{
  color:#f8f5f0!important;
  -webkit-text-fill-color:#f8f5f0!important;
  opacity:1!important;
  visibility:visible!important;
}
body:not(.home) .faq h2 em,
body:not(.home) .split.dark h2 em,
body:not(.home) .qform h2 em,
body:not(.home) .book h3 em,
body:not(.home) .rwall h2 em,
body:not(.home) .tquotes em,
body:not(.home) .ctaband.dark h2 em,
body:not(.home) .feat b,
body:not(.home) .step .num{
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
}
body:not(.home) .faq__a p,
body:not(.home) .steps.dark p,
body:not(.home) .feat span,
body:not(.home) .split.dark p,
body:not(.home) .qform p,
body:not(.home) .book p,
body:not(.home) .vmarq p,
body:not(.home) .rwall p,
body:not(.home) .tquotes .by,
body:not(.home) .footer__bottom,
body:not(.home) .footer__disc{
  color:rgba(248,245,240,.86)!important;
  -webkit-text-fill-color:rgba(248,245,240,.86)!important;
  opacity:1!important;
  visibility:visible!important;
}

/* FAQ: centrado real, plus alineado y preguntas visibles. */
body:not(.home) .faq{
  padding:5.5vh var(--pad)!important;
  text-align:center!important;
}
body:not(.home) .faq h2{
  margin:0 auto 3.5vh!important;
  max-width:18ch!important;
}
body:not(.home) .faq__list{
  max-width:1000px!important;
  margin:0 auto!important;
  border-top:1px solid rgba(174,180,187,.35)!important;
}
body:not(.home) .faq__it{
  border-bottom:1px solid rgba(174,180,187,.26)!important;
}
body:not(.home) .faq__q{
  position:relative!important;
  display:block!important;
  width:100%!important;
  padding:1.35rem 4rem 1.35rem 4rem!important;
  text-align:center!important;
  font-size:clamp(1.35rem,2.25vw,2rem)!important;
  line-height:1.2!important;
  max-width:none!important;
  margin:0!important;
  background:transparent!important;
  border:0!important;
  white-space:normal!important;
}
body:not(.home) .faq__ic{
  position:absolute!important;
  right:1.2rem!important;
  top:50%!important;
  transform:translateY(-50%)!important;
}
body:not(.home) .faq__ic::before,
body:not(.home) .faq__ic::after{
  background:#aeb4bb!important;
}
body:not(.home) .faq__a p{
  max-width:70ch!important;
  margin:0 auto!important;
  padding:0 1.2rem 1.6rem!important;
  text-align:center!important;
  font-size:1.03rem!important;
  line-height:1.65!important;
}

/* VALS: tarjetas técnicas sin descentrado raro. */
body:not(.home) .vals{
  padding:4.5vh var(--pad) 5vh!important;
  gap:2.6rem 5vw!important;
  align-items:start!important;
}
body:not(.home) .vals .vrow{
  padding:0 0 0 1.6rem!important;
  min-height:0!important;
}
body:not(.home) .vals .vrow::before{
  background:#c49b43!important;
  opacity:.72!important;
}
body:not(.home) .vals .vrow h3{
  margin:0 auto 1.1rem!important;
  text-align:center!important;
  font-size:clamp(1.7rem,2.4vw,2.55rem)!important;
  line-height:1.15!important;
}
body:not(.home) .vals .vrow p{
  margin:0!important;
  text-align:left!important;
  max-width:58ch!important;
  font-size:1.04rem!important;
  line-height:1.68!important;
}

/* STEPS + FEAT: quitar espacios gigantes y mantener lectura. */
body:not(.home) .steps.dark{
  padding:4.5vh var(--pad) 4vh!important;
  gap:1.2rem!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
}
body:not(.home) .steps.dark .step{
  padding:2rem 1.4rem!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:18px!important;
  min-height:0!important;
  text-align:center!important;
}
body:not(.home) .steps.dark .step h4{
  color:#f8f5f0!important;
  -webkit-text-fill-color:#f8f5f0!important;
}
body:not(.home) .feat{
  padding:3.8vh var(--pad) 4.5vh!important;
  min-height:0!important;
}
body:not(.home) .feat > .eyebrow{
  display:flex!important;
  justify-content:center!important;
  margin:0 auto 1.8rem!important;
  color:#aeb4bb!important;
}
body:not(.home) .feat > .eyebrow::before{
  background:#aeb4bb!important;
}
body:not(.home) .feat__grid{
  margin:0!important;
  padding-top:2rem!important;
  border-top:1px solid rgba(255,255,255,.16)!important;
  gap:1.8rem!important;
}
body:not(.home) .feat b{
  font-size:clamp(2.4rem,3.4vw,3.6rem)!important;
}
body:not(.home) .feat span{
  color:rgba(248,245,240,.72)!important;
  -webkit-text-fill-color:rgba(248,245,240,.72)!important;
}

/* Ritmo vertical general: compacto, sin bloques vacíos. */
body:not(.home) .mani{padding:4vh var(--pad) 3vh!important;}
body:not(.home) .shead{padding:3.2vh var(--pad) 2vh!important;}
body:not(.home) .split{min-height:0!important;}
body:not(.home) .split__body{padding-top:5vh!important;padding-bottom:5vh!important;}
body:not(.home) .ctaband{padding-top:5vh!important;padding-bottom:5.5vh!important;}

@media (max-width: 860px){
  body:not(.home) .phero{
    min-height:560px!important;
    height:82svh!important;
  }
  body:not(.home) .phero__inner{
    width:min(90vw,620px)!important;
    max-width:min(90vw,620px)!important;
    padding-top:6vh!important;
  }
  body:not(.home) .phero__title{
    max-width:13.5ch!important;
    font-size:clamp(2.05rem,8vw,3.05rem)!important;
    line-height:1.08!important;
  }
  body:not(.home) .phero__sub{
    max-width:31ch!important;
    font-size:1.02rem!important;
    line-height:1.55!important;
  }
  body:not(.home) .vals{
    grid-template-columns:1fr!important;
    padding:3.5vh var(--pad) 4vh!important;
    gap:2rem!important;
  }
  body:not(.home) .vals .vrow{
    padding-left:1.2rem!important;
  }
  body:not(.home) .vals .vrow p{
    text-align:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body:not(.home) .steps.dark,
  body:not(.home) .feat{
    padding-left:var(--pad)!important;
    padding-right:var(--pad)!important;
  }
  body:not(.home) .steps.dark{
    grid-template-columns:1fr!important;
    gap:1rem!important;
  }
  body:not(.home) .feat__grid{
    grid-template-columns:1fr 1fr!important;
    gap:1.5rem!important;
  }
  body:not(.home) .faq__q{
    padding:1.15rem 3.3rem 1.15rem 1rem!important;
    font-size:clamp(1.25rem,5.5vw,1.72rem)!important;
  }
}

@media (max-width: 520px){
  body:not(.home) .feat__grid{grid-template-columns:1fr!important;}
}


/* ===== BIDOT 3.5.0 · RESTAURAR CURSOR NATIVO DEL NAVEGADOR ===== */
/* Fuerza el cursor real en absolutamente todos los elementos. */
html,
body,
html *,
body *,
body *::before,
body *::after{
  cursor:default!important;
}

a,
button,
[role="button"],
[type="button"],
[type="submit"],
.nav__burger,
.mnav__toggle,
.pillars__p,
.fab,
.fab__main,
.btn,
.btn-line,
.btn-gold,
.faq__q,
.tquotes__dot,
input[type="checkbox"],
input[type="radio"],
select,
summary{
  cursor:pointer!important;
}

input,
textarea,
[contenteditable="true"]{
  cursor:text!important;
}

.cur,
.cur-dot{
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}


/* ===== BIDOT 3.6.0 · RECUPERAR CURSOR PERSONALIZADO CON LOGO ===== */
@media (hover:hover) and (pointer:fine){
  html,
  body,
  html *,
  body *,
  body *::before,
  body *::after{
    cursor:none!important;
  }

  .cur{
    display:grid!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:none!important;
    position:fixed!important;
    top:0!important;
    left:0!important;
    z-index:2147483647!important;
    width:54px!important;
    height:54px!important;
    margin:-27px 0 0 -27px!important;
    border-radius:50%!important;
    border:1px solid rgba(198,164,92,.9)!important;
    background:rgba(10,10,10,.86) url("img/logo.png") center/78% no-repeat!important;
    box-shadow:0 10px 32px rgba(0,0,0,.28),0 0 0 1px rgba(255,255,255,.08) inset!important;
    -webkit-backdrop-filter:blur(2px)!important;
    backdrop-filter:blur(2px)!important;
    place-items:center!important;
    will-change:transform!important;
    transition:width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease),background-size .35s var(--ease),border-color .35s var(--ease)!important;
  }

  .cur-dot{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:none!important;
    position:fixed!important;
    top:0!important;
    left:0!important;
    z-index:2147483646!important;
    width:6px!important;
    height:6px!important;
    margin:-3px 0 0 -3px!important;
    border-radius:50%!important;
    background:var(--gold)!important;
    will-change:transform!important;
  }

  .cur.on{
    width:76px!important;
    height:76px!important;
    margin:-38px 0 0 -38px!important;
    background-color:rgba(10,10,10,.92)!important;
    background-size:68%!important;
    border-color:rgba(174,180,187,.96)!important;
  }
  .cur.on ~ .cur-dot{opacity:0!important;}
}

@media (hover:none), (pointer:coarse){
  .cur,.cur-dot{display:none!important;visibility:hidden!important;opacity:0!important;}
}


/* ===== AJUSTE EXTRA 3.7.0 · HOME HERO SIN HUECO ENTRE LÍNEAS ===== */
@media (min-width: 861px){
  body.home .hero__inner{
    max-width:1280px!important;
    padding-bottom:6.5vh!important;
  }
  body.home .hero__title{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:.04em!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    margin:0 0 1.15rem!important;
    font-size:clamp(2.5rem,4.15vw,4.05rem)!important;
    line-height:.98!important;
    letter-spacing:-.025em!important;
    white-space:normal!important;
  }
  body.home .hero__title br{
    display:none!important;
  }
  body.home .hero__title-main,
  body.home .hero__title-city{
    display:block!important;
    width:auto!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    line-height:.98!important;
    white-space:nowrap!important;
  }
  body.home .hero__sub{
    margin-top:0!important;
    max-width:52ch!important;
  }
}

@media (min-width: 861px) and (max-width: 1180px){
  body.home .hero__title{
    font-size:clamp(2.15rem,4vw,3.2rem)!important;
  }
  body.home .hero__title-main,
  body.home .hero__title-city{
    white-space:nowrap!important;
  }
}


/* ===== AJUSTE EXTRA 3.8.0 · ESTILO GLOBAL HERO MÓVIL EN TODA LA WEB ===== */
@media (max-width: 860px){
  html.bidot-mobile body .hero,
  html.bidot-mobile body .phero,
  body .hero,
  body .phero{
    min-height:82svh!important;
  }

  html.bidot-mobile body .hero__scrim,
  html.bidot-mobile body .phero__scrim,
  body .hero__scrim,
  body .phero__scrim{
    background:linear-gradient(180deg,
      rgba(6,6,6,.06) 0%,
      rgba(6,6,6,.10) 14%,
      rgba(6,6,6,.22) 32%,
      rgba(6,6,6,.46) 50%,
      rgba(6,6,6,.76) 70%,
      rgba(6,6,6,.96) 100%)!important;
  }

  html.bidot-mobile body .hero__inner,
  html.bidot-mobile body .phero__inner,
  body .hero__inner,
  body .phero__inner{
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
    align-items:flex-start!important;
    max-width:none!important;
    width:100%!important;
    padding:0 var(--pad) 6.2vh!important;
  }

  html.bidot-mobile body .hero__title,
  html.bidot-mobile body .phero__title,
  body .hero__title,
  body .phero__title{
    display:block!important;
    width:auto!important;
    max-width:13.4ch!important;
    margin:0 0 .9rem!important;
    font-size:clamp(2.45rem,10.2vw,3.45rem)!important;
    line-height:1.02!important;
    letter-spacing:-.03em!important;
    color:var(--cream)!important;
    -webkit-text-fill-color:var(--cream)!important;
    text-wrap:balance!important;
    white-space:normal!important;
    text-shadow:0 10px 36px rgba(0,0,0,.46)!important;
  }

  html.bidot-mobile body .hero__title .ln,
  html.bidot-mobile body .phero__title .ln,
  html.bidot-mobile body .hero__title-main,
  html.bidot-mobile body .hero__title-city,
  body .hero__title .ln,
  body .phero__title .ln,
  body .hero__title-main,
  body .hero__title-city{
    display:block!important;
    margin:0!important;
    padding:0!important;
    line-height:1.02!important;
    white-space:normal!important;
    text-wrap:balance!important;
  }

  html.bidot-mobile body .hero__title br,
  html.bidot-mobile body .phero__title br,
  body .hero__title br,
  body .phero__title br{
    display:block!important;
  }

  html.bidot-mobile body .hero__title em,
  html.bidot-mobile body .phero__title em,
  body .hero__title em,
  body .phero__title em{
    color:var(--gold-lt)!important;
    -webkit-text-fill-color:var(--gold-lt)!important;
    text-shadow:0 8px 28px rgba(0,0,0,.38)!important;
  }

  html.bidot-mobile body .hero__sub,
  html.bidot-mobile body .phero__sub,
  body .hero__sub,
  body .phero__sub{
    display:block!important;
    width:auto!important;
    max-width:29ch!important;
    margin:0 0 1.4rem!important;
    font-size:1.08rem!important;
    line-height:1.58!important;
    color:rgba(248,245,240,.95)!important;
    -webkit-text-fill-color:rgba(248,245,240,.95)!important;
    text-shadow:0 5px 22px rgba(0,0,0,.38)!important;
  }

  html.bidot-mobile body .hero__actions,
  html.bidot-mobile body .phero__actions,
  body .hero__actions,
  body .phero__actions{
    gap:.8rem!important;
    width:100%!important;
  }

  html.bidot-mobile body .hero__actions .btn,
  html.bidot-mobile body .phero__actions .btn,
  body .hero__actions .btn,
  body .phero__actions .btn{
    min-height:54px!important;
  }

  /* Consistencia visual general en móvil */
  html.bidot-mobile body .shead h2,
  html.bidot-mobile body .split__body h2,
  html.bidot-mobile body .rwall__head h2,
  html.bidot-mobile body .ctaband h2,
  html.bidot-mobile body .qform__intro h2,
  html.bidot-mobile body .gal__intro h2,
  body .shead h2,
  body .split__body h2,
  body .rwall__head h2,
  body .ctaband h2,
  body .qform__intro h2,
  body .gal__intro h2{
    font-size:clamp(2rem,8vw,2.7rem)!important;
    line-height:1.12!important;
    text-wrap:balance!important;
  }
}


/* ===== AJUSTE EXTRA 3.9.0 · HOME TRATAMIENTOS ESCRITORIO IGUALADOS ===== */
@media (min-width: 861px){
  body.home .book__info{
    align-items:center!important;
    text-align:center!important;
  }

  body.home .book__info h3,
  body.home .book__page:first-child .book__info h3,
  body.home .book__page:nth-child(2) .book__info h3,
  body.home .book__page:nth-child(3) .book__info h3,
  body.home .book__page:nth-child(4) .book__info h3,
  body.home .book__page:nth-child(5) .book__info h3,
  body.home .book__page:nth-child(6) .book__info h3{
    font-family:var(--serif)!important;
    font-weight:300!important;
    font-size:clamp(2.2rem,3.35vw,3.65rem)!important;
    line-height:1.02!important;
    letter-spacing:-.045em!important;
    width:100%!important;
    max-width:18ch!important;
    margin:0 auto 1.05rem!important;
    white-space:normal!important;
    text-wrap:balance!important;
    overflow:visible!important;
    word-break:normal!important;
    hyphens:none!important;
    text-align:center!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    text-shadow:0 4px 30px rgba(0,0,0,.45)!important;
  }

  body.home .book__info p,
  body.home .book__page:first-child .book__info p,
  body.home .book__page:nth-child(2) .book__info p,
  body.home .book__page:nth-child(3) .book__info p,
  body.home .book__page:nth-child(4) .book__info p,
  body.home .book__page:nth-child(5) .book__info p,
  body.home .book__page:nth-child(6) .book__info p{
    font-size:clamp(1.04rem,1.05vw,1.18rem)!important;
    line-height:1.6!important;
    max-width:38ch!important;
    margin:0 auto 1.55rem!important;
    text-align:center!important;
    color:rgba(255,255,255,.92)!important;
    -webkit-text-fill-color:rgba(255,255,255,.92)!important;
    text-shadow:0 3px 20px rgba(0,0,0,.34)!important;
  }

  body.home .book-treatment-actions{
    max-width:390px!important;
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

@media (min-width:861px) and (max-width:1180px){
  body.home .book__info h3,
  body.home .book__page:first-child .book__info h3{
    font-size:clamp(2rem,3.6vw,3rem)!important;
    max-width:17ch!important;
  }
}


/* ===== AJUSTE EXTRA 4.0.0 · HOME TRATAMIENTOS MÓVIL IGUALADOS ===== */
@media (max-width: 860px){
  body.home .book{
    padding-top:2vh!important;
    padding-bottom:3vh!important;
  }

  body.home .book__page,
  html.bidot-mobile body.home .book__page{
    grid-template-columns:1fr!important;
  }

  body.home .book__info,
  html.bidot-mobile body.home .book__info{
    align-items:center!important;
    text-align:center!important;
    padding:2.15rem 1.35rem 2.35rem!important;
  }

  body.home .book__info h3,
  body.home .book__page:first-child .book__info h3,
  body.home .book__page:nth-child(2) .book__info h3,
  body.home .book__page:nth-child(3) .book__info h3,
  body.home .book__page:nth-child(4) .book__info h3,
  body.home .book__page:nth-child(5) .book__info h3,
  body.home .book__page:nth-child(6) .book__info h3,
  html.bidot-mobile body.home .book__info h3,
  html.bidot-mobile body.home .book__page:first-child .book__info h3,
  html.bidot-mobile body.home .book__page:nth-child(2) .book__info h3,
  html.bidot-mobile body.home .book__page:nth-child(3) .book__info h3,
  html.bidot-mobile body.home .book__page:nth-child(4) .book__info h3,
  html.bidot-mobile body.home .book__page:nth-child(5) .book__info h3,
  html.bidot-mobile body.home .book__page:nth-child(6) .book__info h3{
    font-family:var(--serif)!important;
    font-weight:300!important;
    font-size:clamp(2rem,8.2vw,2.7rem)!important;
    line-height:1.04!important;
    letter-spacing:-.03em!important;
    width:100%!important;
    max-width:14ch!important;
    margin:0 auto .9rem!important;
    white-space:normal!important;
    text-wrap:balance!important;
    overflow:visible!important;
    word-break:normal!important;
    hyphens:none!important;
    text-align:center!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    text-shadow:0 5px 28px rgba(0,0,0,.45)!important;
  }

  body.home .book__info p,
  body.home .book__page:first-child .book__info p,
  body.home .book__page:nth-child(2) .book__info p,
  body.home .book__page:nth-child(3) .book__info p,
  body.home .book__page:nth-child(4) .book__info p,
  body.home .book__page:nth-child(5) .book__info p,
  body.home .book__page:nth-child(6) .book__info p,
  html.bidot-mobile body.home .book__info p,
  html.bidot-mobile body.home .book__page:first-child .book__info p,
  html.bidot-mobile body.home .book__page:nth-child(2) .book__info p,
  html.bidot-mobile body.home .book__page:nth-child(3) .book__info p,
  html.bidot-mobile body.home .book__page:nth-child(4) .book__info p,
  html.bidot-mobile body.home .book__page:nth-child(5) .book__info p,
  html.bidot-mobile body.home .book__page:nth-child(6) .book__info p{
    font-size:1.05rem!important;
    line-height:1.58!important;
    max-width:31ch!important;
    margin:0 auto 1.35rem!important;
    text-align:center!important;
    color:rgba(255,255,255,.94)!important;
    -webkit-text-fill-color:rgba(255,255,255,.94)!important;
    text-shadow:0 4px 18px rgba(0,0,0,.34)!important;
  }

  body.home .book-treatment-actions,
  html.bidot-mobile body.home .book-treatment-actions{
    width:100%!important;
    max-width:330px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  body.home .book-treatment-actions .btn,
  html.bidot-mobile body.home .book-treatment-actions .btn{
    min-height:54px!important;
  }
}


/* ===== AJUSTE EXTRA 4.1.0 · HOME MÓVIL HERO MÁS BAJO Y COMPACTO ===== */
@media (max-width: 860px){
  body.home .hero,
  html.bidot-mobile body.home .hero{
    min-height:84svh!important;
  }

  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    justify-content:flex-end!important;
    padding:0 var(--pad) 2.8vh!important;
  }

  body.home .hero__title,
  html.bidot-mobile body.home .hero__title{
    margin:0 0 .5rem!important;
  }

  body.home .hero__sub,
  html.bidot-mobile body.home .hero__sub{
    margin:0 0 1.05rem!important;
  }

  body.home .hero__actions,
  html.bidot-mobile body.home .hero__actions{
    margin-top:0!important;
  }
}


/* ===== AJUSTE EXTRA 4.2.0 · ELIMINAR BLOQUES FRASE MANIFIESTO EN TODAS LAS PÁGINAS ===== */
.mani{
  display:none!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}


/* ===== AJUSTE EXTRA 4.3.0 · BOTÓN WHATSAPP EN CONTACTO VISIBLE ===== */
body:not(.home) .cwa .btn-wa,
body.page-id-13 .btn-wa,
body.page-template-default .cwa .btn-wa{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  padding:1rem 2.2rem!important;
  border-radius:999px!important;
  background:#b7bcc1!important;
  color:#1c1c1c!important;
  -webkit-text-fill-color:#1c1c1c!important;
  border:1px solid #aeb3b8!important;
  box-shadow:0 14px 34px rgba(0,0,0,.10)!important;
  text-shadow:none!important;
  opacity:1!important;
  visibility:visible!important;
}
body:not(.home) .cwa .btn-wa:hover,
body.page-id-13 .btn-wa:hover,
body.page-template-default .cwa .btn-wa:hover{
  background:#c7ccd1!important;
  color:#1c1c1c!important;
  -webkit-text-fill-color:#1c1c1c!important;
  border-color:#b8bdc2!important;
}


/* ===== AJUSTE EXTRA 4.4.0 · HOME MÓVIL SIN HUECO ENTRE LAS DOS LÍNEAS ===== */
@media (max-width: 860px){
  body.home .hero__title,
  html.bidot-mobile body.home .hero__title{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    gap:.02em!important;
    line-height:.96!important;
    margin:0 0 .45rem!important;
  }

  body.home .hero__title br,
  html.bidot-mobile body.home .hero__title br{
    display:none!important;
  }

  body.home .hero__title-main,
  body.home .hero__title-city,
  html.bidot-mobile body.home .hero__title-main,
  html.bidot-mobile body.home .hero__title-city{
    display:block!important;
    line-height:.96!important;
    margin:0!important;
    padding:0!important;
  }
}


/* ===== AJUSTE EXTRA 4.5.0 · HOME MÓVIL SUBIR UN POCO EL BLOQUE DE TEXTO ===== */
@media (max-width: 860px){
  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    padding:0 var(--pad) 4.8vh!important;
  }
}


/* ===== AJUSTE EXTRA 4.6.0 · HOME MÓVIL SUBIR UN PELÍN MÁS EL BLOQUE DE TEXTO ===== */
@media (max-width: 860px){
  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    padding:0 var(--pad) 5.5vh!important;
  }
}


/* ===== AJUSTE EXTRA 4.7.0 · HOME MÓVIL SUBIR ALGO MÁS EL BLOQUE DE TEXTO ===== */
@media (max-width: 860px){
  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    padding:0 var(--pad) 6.2vh!important;
  }
}


/* ===== AJUSTE EXTRA 4.8.0 · HOME MÓVIL SUBIR UN POCO MÁS EL BLOQUE DE TEXTO ===== */
@media (max-width: 860px){
  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    padding:0 var(--pad) 6.9vh!important;
  }
}


/* ===== AJUSTE EXTRA 4.9.0 · HERO MÓVIL BAJAR BLOQUES DE TÍTULO Y TEXTO EN TODA LA WEB ===== */
@media (max-width: 860px){
  body .hero__inner,
  body .phero__inner,
  html.bidot-mobile body .hero__inner,
  html.bidot-mobile body .phero__inner{
    justify-content:flex-end!important;
    padding:0 var(--pad) 3.8vh!important;
  }

  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    padding:0 var(--pad) 4.2vh!important;
  }

  body .hero__title,
  body .phero__title,
  html.bidot-mobile body .hero__title,
  html.bidot-mobile body .phero__title{
    margin:0 0 .7rem!important;
  }

  body .hero__sub,
  body .phero__sub,
  html.bidot-mobile body .hero__sub,
  html.bidot-mobile body .phero__sub{
    margin:0 0 1.15rem!important;
  }
}


/* ===== AJUSTE EXTRA 5.0.0 · HERO MÓVIL BAJAR MÁS LOS BLOQUES COMO EN HOME ===== */
@media (max-width: 860px){
  body .hero__inner,
  body .phero__inner,
  html.bidot-mobile body .hero__inner,
  html.bidot-mobile body .phero__inner{
    justify-content:flex-end!important;
    padding:0 var(--pad) 2.4vh!important;
  }

  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    padding:0 var(--pad) 3.2vh!important;
  }

  body .hero__title,
  body .phero__title,
  html.bidot-mobile body .hero__title,
  html.bidot-mobile body .phero__title{
    margin:0 0 .62rem!important;
  }

  body .hero__sub,
  body .phero__sub,
  html.bidot-mobile body .hero__sub,
  html.bidot-mobile body .phero__sub{
    margin:0 0 1rem!important;
  }
}


/* ===== AJUSTE EXTRA 5.1.0 · HOME MÁS ARRIBA / INTERIORES MÁS ABAJO EN MÓVIL ===== */
@media (max-width: 860px){
  body:not(.home) .hero__inner,
  body:not(.home) .phero__inner,
  html.bidot-mobile body:not(.home) .hero__inner,
  html.bidot-mobile body:not(.home) .phero__inner{
    padding:0 var(--pad) 1.3vh!important;
  }

  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    padding:0 var(--pad) 5.6vh!important;
  }
}


/* ===== AJUSTE EXTRA 5.2.0 · HOME MÁS ARRIBA / INTERIORES MÁS ABAJO EN MÓVIL, MÁS MARCADO ===== */
@media (max-width: 860px){
  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    padding:0 var(--pad) 8.2vh!important;
  }

  body:not(.home) .hero__inner,
  body:not(.home) .phero__inner,
  html.bidot-mobile body:not(.home) .hero__inner,
  html.bidot-mobile body:not(.home) .phero__inner{
    padding:0 var(--pad) .2vh!important;
  }
}


/* ===== AJUSTE EXTRA 5.3.0 · REVISIÓN MÓVIL GLOBAL: TAGS, CTAS, CONTRASTE Y DESBORDES ===== */

/* Recupera separación real en chips/listas de etiquetas que estaban saliendo pegadas */
.tags,
.book__pts,
.split__body .tags,
body:not(.home) .tags,
body:not(.home) .book__pts{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.7rem .75rem!important;
  width:100%!important;
  max-width:100%!important;
  list-style:none!important;
  padding:0!important;
  margin:1.6rem auto 0!important;
}

.tags span,
.book__pts li,
body:not(.home) .tags span,
body:not(.home) .book__pts li{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  max-width:100%!important;
  margin:0!important;
  padding:.55rem .9rem!important;
  border:1px solid rgba(174,180,187,.42)!important;
  border-radius:999px!important;
  font-family:var(--sans)!important;
  font-size:.78rem!important;
  line-height:1.15!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  white-space:normal!important;
  text-align:center!important;
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
}

/* En móvil, si hay 3 etiquetas largas, que se ordenen y no se fusionen */
@media(max-width:860px){
  .tags,
  .book__pts,
  body:not(.home) .tags,
  body:not(.home) .book__pts{
    gap:.6rem!important;
    margin-top:1.35rem!important;
  }

  .tags span,
  .book__pts li,
  body:not(.home) .tags span,
  body:not(.home) .book__pts li{
    flex:0 1 auto!important;
    font-size:.76rem!important;
    padding:.55rem .78rem!important;
    letter-spacing:.06em!important;
  }
}

/* Títulos y textos de bloques: nunca cortados horizontalmente */
@media(max-width:860px){
  body:not(.home) .split__body,
  body:not(.home) .ctaband,
  body:not(.home) .qform,
  body:not(.home) .contact,
  body:not(.home) .rwall,
  body:not(.home) .tquotes,
  body:not(.home) .cards,
  body:not(.home) .rooms,
  body:not(.home) .feat,
  body:not(.home) .qlines{
    overflow:hidden!important;
    text-align:center!important;
  }

  body:not(.home) .split__body h2,
  body:not(.home) .ctaband h2,
  body:not(.home) .qform__intro h2,
  body:not(.home) .contact__big,
  body:not(.home) .shead h2,
  body:not(.home) .rwall__head h2,
  body:not(.home) .qline,
  body:not(.home) .chapter__h,
  body:not(.home) .panel__h,
  body:not(.home) .pcap h2{
    width:100%!important;
    max-width:11.5ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    font-size:clamp(2.15rem,9.3vw,3.05rem)!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:none!important;
    text-wrap:balance!important;
    overflow:visible!important;
  }

  body:not(.home) .split__body p,
  body:not(.home) .ctaband p,
  body:not(.home) .qform__intro p,
  body:not(.home) .contact p,
  body:not(.home) .rwall__head p,
  body:not(.home) .room p,
  body:not(.home) .cardi p,
  body:not(.home) .feat span,
  body:not(.home) .vrow p{
    width:100%!important;
    max-width:31ch!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    overflow-wrap:break-word!important;
  }
}

/* Contraste correcto en tarjetas negras y bloques oscuros */
body:not(.home) .dark,
body:not(.home) .split.dark,
body:not(.home) .cardi,
body:not(.home) .feat,
body:not(.home) .tquotes,
body:not(.home) .rwall,
body:not(.home) .qform,
body:not(.home) .ctaband.dark{
  background:#080808!important;
  color:#f8f5f0!important;
}

body:not(.home) .dark h1,
body:not(.home) .dark h2,
body:not(.home) .dark h3,
body:not(.home) .split.dark h2,
body:not(.home) .cardi h3,
body:not(.home) .feat b,
body:not(.home) .tquotes q,
body:not(.home) .rwall h2,
body:not(.home) .qform h2,
body:not(.home) .ctaband.dark h2{
  color:#f8f5f0!important;
  -webkit-text-fill-color:#f8f5f0!important;
  text-shadow:none!important;
}

body:not(.home) .dark p,
body:not(.home) .dark li,
body:not(.home) .split.dark p,
body:not(.home) .cardi p,
body:not(.home) .feat span,
body:not(.home) .tquotes .by,
body:not(.home) .rwall p,
body:not(.home) .qform p,
body:not(.home) .ctaband.dark p{
  color:rgba(248,245,240,.82)!important;
  -webkit-text-fill-color:rgba(248,245,240,.82)!important;
  text-shadow:none!important;
}

/* Bloques con botones: que no se monten ni tapen títulos */
.ctaband .seccta,
body:not(.home) .ctaband .seccta,
body:not(.home) .seccta{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.85rem!important;
  width:100%!important;
  max-width:100%!important;
  margin:1.5rem auto 0!important;
  padding:0!important;
}

.ctaband .btn,
body:not(.home) .ctaband .btn,
body:not(.home) .seccta .btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-width:min(320px,88vw)!important;
  max-width:88vw!important;
  margin:0!important;
  white-space:normal!important;
  text-align:center!important;
}

.cta-micro,
body:not(.home) .cta-micro{
  display:block!important;
  width:100%!important;
  max-width:34ch!important;
  margin:1.15rem auto 0!important;
  padding:0!important;
  font-family:var(--sans)!important;
  font-size:.88rem!important;
  line-height:1.55!important;
  letter-spacing:.02em!important;
  text-transform:none!important;
  text-align:center!important;
  color:rgba(13,13,13,.72)!important;
  -webkit-text-fill-color:rgba(13,13,13,.72)!important;
}

body:not(.home) .ctaband.dark .cta-micro,
body:not(.home) .dark .cta-micro{
  color:rgba(248,245,240,.78)!important;
  -webkit-text-fill-color:rgba(248,245,240,.78)!important;
}

@media(max-width:860px){
  .ctaband,
  body:not(.home) .ctaband{
    padding-left:var(--pad)!important;
    padding-right:var(--pad)!important;
  }

  .ctaband .btn,
  body:not(.home) .ctaband .btn,
  body:not(.home) .seccta .btn{
    width:100%!important;
    max-width:330px!important;
    min-width:0!important;
  }

  .cta-micro,
  body:not(.home) .cta-micro{
    font-size:.92rem!important;
    max-width:28ch!important;
  }
}

/* Menú móvil: contacto y redes en líneas separadas, no pegado */
html.bidot-mobile .mnav__details,
.mnav__details{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:.55rem!important;
  width:100%!important;
  margin:1.25rem auto 0!important;
  padding:1.15rem 0 0!important;
  border-top:1px solid rgba(255,255,255,.16)!important;
  text-align:center!important;
}

html.bidot-mobile .mnav__label,
.mnav__label{
  display:block!important;
  width:100%!important;
  margin:0 0 .35rem!important;
  font-family:var(--sans)!important;
  font-size:.78rem!important;
  line-height:1.2!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
  color:var(--gold-lt)!important;
  -webkit-text-fill-color:var(--gold-lt)!important;
  text-align:center!important;
}

html.bidot-mobile .mnav__details a,
.mnav__details a{
  display:block!important;
  width:100%!important;
  max-width:28ch!important;
  margin:0 auto!important;
  padding:0!important;
  font-family:var(--sans)!important;
  font-size:1rem!important;
  line-height:1.42!important;
  letter-spacing:.02em!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  color:rgba(248,245,240,.86)!important;
  -webkit-text-fill-color:rgba(248,245,240,.86)!important;
  text-align:center!important;
}

/* Contacto: columnas limpias en móvil */
@media(max-width:860px){
  body.page-id-13 .split-2,
  body:not(.home) .split-2{
    grid-template-columns:1fr!important;
    gap:2.8rem!important;
    padding:5vh var(--pad)!important;
    text-align:center!important;
  }

  body.page-id-13 .creds,
  body:not(.home) .creds{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    gap:1rem!important;
    width:100%!important;
    text-align:center!important;
  }

  body.page-id-13 .cred,
  body:not(.home) .cred{
    justify-content:center!important;
    width:100%!important;
    max-width:30ch!important;
    margin:0 auto!important;
    font-size:1.08rem!important;
    line-height:1.45!important;
    text-align:center!important;
  }

  body.page-id-13 .cwa,
  body:not(.home) .cwa{
    text-align:center!important;
    align-self:center!important;
  }

  body.page-id-13 .cwa .btn-wa,
  body:not(.home) .cwa .btn-wa{
    width:100%!important;
    max-width:330px!important;
  }
}

/* FAB: menos encima del contenido + colchón inferior para evitar tapados */
@media(max-width:860px){
  .fab,
  html.bidot-mobile .fab{
    bottom:calc(env(safe-area-inset-bottom,0px) + 4.4rem)!important;
    z-index:7000!important;
  }

  #bidot-site,
  body{
    padding-bottom:7.5rem!important;
  }

  body:not(.home) .footer,
  body:not(.home) .ctaband,
  body:not(.home) .contact,
  body:not(.home) .qform{
    padding-bottom:9rem!important;
  }
}

/* Evitar títulos cortados por viewport en móvil */
@media(max-width:860px){
  body:not(.home) .split__body h2,
  body:not(.home) .ctaband h2{
    transform:none!important;
    display:block!important;
  }

  body:not(.home) .split__body{
    padding-left:var(--pad)!important;
    padding-right:var(--pad)!important;
  }
}


/* ===== AJUSTE EXTRA 5.4.0 · MÁS SEPARACIÓN ENTRE BOTONES APILADOS ===== */
@media(max-width:860px){
  .hero__actions,
  .phero__actions,
  .book-treatment-actions,
  .ctaband .seccta,
  body:not(.home) .seccta,
  body:not(.home) .ctaband .seccta,
  .waform-actions,
  .qform__actions{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:center!important;
    gap:1.15rem!important;
  }

  .book-treatment-actions,
  .ctaband .seccta,
  body:not(.home) .seccta,
  body:not(.home) .ctaband .seccta{
    flex-direction:column!important;
  }

  .book-treatment-actions .btn,
  .ctaband .seccta .btn,
  body:not(.home) .seccta .btn,
  body:not(.home) .ctaband .seccta .btn{
    margin-top:0!important;
    margin-bottom:0!important;
  }

  .book-treatment-actions .btn + .btn,
  .ctaband .seccta .btn + .btn,
  body:not(.home) .seccta .btn + .btn,
  body:not(.home) .ctaband .seccta .btn + .btn{
    margin-top:.15rem!important;
  }
}


/* ===== AJUSTE EXTRA 5.5.0 · QUITAR ESPACIO SUPERIOR SOBRE FOTOS EN SPLIT MÓVIL ===== */
@media(max-width:860px){
  body:not(.home) .split,
  html.bidot-mobile body:not(.home) .split{
    padding-top:0!important;
    padding-bottom:4.2vh!important;
    gap:0!important;
  }

  body:not(.home) .split__media,
  html.bidot-mobile body:not(.home) .split__media{
    margin-top:0!important;
    padding-top:0!important;
  }

  body:not(.home) .split__media img,
  html.bidot-mobile body:not(.home) .split__media img{
    display:block!important;
  }
}


/* ===== AJUSTE EXTRA 5.6.0 · MÁS AIRE ENTRE BOTONES APILADOS EN TODAS LAS PÁGINAS ===== */
@media(max-width:860px){
  .book-treatment-actions,
  .ctaband .seccta,
  body:not(.home) .seccta,
  body:not(.home) .ctaband .seccta,
  .waform-actions,
  .qform__actions,
  .svcrow__btns{
    row-gap:1.35rem!important;
  }

  .book-treatment-actions .btn + .btn,
  .book-treatment-actions .book-treatment-action + .book-treatment-action,
  .ctaband .seccta .btn + .btn,
  body:not(.home) .seccta .btn + .btn,
  body:not(.home) .ctaband .seccta .btn + .btn,
  .svcrow__btns .treatment-action + .treatment-action{
    margin-top:.55rem!important;
  }
}


/* ===== AJUSTE EXTRA 5.7.0 · SEPARAR MÁS LOS DOS BOTONES EN LOS TRATAMIENTOS ===== */
@media(max-width:860px){
  .ctaband .seccta,
  body:not(.home) .seccta,
  body:not(.home) .ctaband .seccta,
  .svcrow__btns,
  .book-treatment-actions{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:1.6rem!important;
  }

  .ctaband .seccta .btn,
  body:not(.home) .seccta .btn,
  body:not(.home) .ctaband .seccta .btn,
  .svcrow__btns .treatment-action,
  .book-treatment-actions .book-treatment-action{
    margin:0!important;
  }

  .ctaband .seccta .btn + .btn,
  body:not(.home) .seccta .btn + .btn,
  body:not(.home) .ctaband .seccta .btn + .btn,
  .svcrow__btns .treatment-action + .treatment-action,
  .book-treatment-actions .book-treatment-action + .book-treatment-action{
    margin-top:.85rem!important;
  }
}


/* ===== AJUSTE EXTRA 5.8.0 · QUITAR "DESLIZA PARA DESCUBRIR" DEL HERO HOME ===== */
.hero__scroll,
body.home .hero__scroll,
html.bidot-mobile body.home .hero__scroll{
  display:none!important;
}


/* ===== AJUSTE EXTRA 5.9.0 · SEPARAR MÁS LOS DOS BOTONES EN TRATAMIENTOS TAMBIÉN EN ESCRITORIO ===== */
.ctaband .seccta,
body:not(.home) .seccta,
body:not(.home) .ctaband .seccta,
.svcrow__btns,
.book-treatment-actions{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1.35rem!important;
}

.ctaband .seccta .btn,
body:not(.home) .seccta .btn,
body:not(.home) .ctaband .seccta .btn,
.svcrow__btns .treatment-action,
.book-treatment-actions .book-treatment-action,
.book-treatment-actions .btn{
  margin:0!important;
}

.ctaband .seccta .btn + .btn,
body:not(.home) .seccta .btn + .btn,
body:not(.home) .ctaband .seccta .btn + .btn,
.svcrow__btns .treatment-action + .treatment-action,
.book-treatment-actions .book-treatment-action + .book-treatment-action,
.book-treatment-actions .btn + .btn{
  margin-top:.95rem!important;
}

@media(max-width:860px){
  .ctaband .seccta,
  body:not(.home) .seccta,
  body:not(.home) .ctaband .seccta,
  .svcrow__btns,
  .book-treatment-actions{
    gap:1.7rem!important;
  }

  .ctaband .seccta .btn + .btn,
  body:not(.home) .seccta .btn + .btn,
  body:not(.home) .ctaband .seccta .btn + .btn,
  .svcrow__btns .treatment-action + .treatment-action,
  .book-treatment-actions .book-treatment-action + .book-treatment-action,
  .book-treatment-actions .btn + .btn{
    margin-top:1.05rem!important;
  }
}


/* ===== AJUSTE EXTRA 6.0.0 · SEPARACIÓN REAL DE BOTONES DIRECTOS EN CTABAND ===== */
/* Estos botones no estaban dentro de .seccta, por eso las reglas anteriores no les afectaban. */
.ctaband > a.btn,
.ctaband > .btn,
body:not(.home) .ctaband > a.btn,
body:not(.home) .ctaband > .btn{
  display:flex!important;
  width:min(100%, 330px)!important;
  max-width:330px!important;
  min-width:0!important;
  margin-left:auto!important;
  margin-right:auto!important;
  margin-top:0!important;
  margin-bottom:0!important;
  align-items:center!important;
  justify-content:center!important;
}

.ctaband > a.btn + a.btn,
.ctaband > .btn + .btn,
body:not(.home) .ctaband > a.btn + a.btn,
body:not(.home) .ctaband > .btn + .btn{
  margin-top:1.45rem!important;
}

/* Separación extra antes del microtexto inferior */
.ctaband > a.btn + .cta-micro,
.ctaband > .btn + .cta-micro,
body:not(.home) .ctaband > a.btn + .cta-micro,
body:not(.home) .ctaband > .btn + .cta-micro{
  margin-top:1.35rem!important;
}

@media(max-width:860px){
  .ctaband > a.btn,
  .ctaband > .btn,
  body:not(.home) .ctaband > a.btn,
  body:not(.home) .ctaband > .btn{
    width:min(100%, 330px)!important;
    max-width:330px!important;
  }

  .ctaband > a.btn + a.btn,
  .ctaband > .btn + .btn,
  body:not(.home) .ctaband > a.btn + a.btn,
  body:not(.home) .ctaband > .btn + .btn{
    margin-top:1.65rem!important;
  }
}




/* ===== AJUSTE EXTRA 6.4.0 · RESTAURAR MARQUESINA FOOTER + CENTRAR SOLO TEXTOS ===== */
@media(max-width:860px){
  .footer,
  html.bidot-mobile .footer,
  body:not(.home) .footer{
    text-align:center!important;
  }

  /* Footer marquee: NO centrar el track, NO flex-wrap, NO animation none. Mantener movimiento. */
  .footer__marq,
  html.bidot-mobile .footer__marq,
  body:not(.home) .footer__marq{
    display:block!important;
    overflow:hidden!important;
    padding:1.15rem 0!important;
    text-align:left!important;
  }

  .footer__marq .marq__t,
  html.bidot-mobile .footer__marq .marq__t,
  html.bidot-mobile .footer__marq .marq__t.mobile-autoscroll-track,
  body:not(.home) .footer__marq .marq__t{
    display:flex!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    align-items:center!important;
    width:max-content!important;
    min-width:max-content!important;
    white-space:nowrap!important;
    gap:3rem!important;
    overflow:visible!important;
    will-change:transform!important;
    scroll-snap-type:none!important;
    text-align:left!important;
  }

  html.bidot-mobile .footer__marq .marq__t.mobile-autoscroll-track{
    transform:translate3d(var(--bidot-loop-x,0px),0,0)!important;
  }

  .footer__marq .marq__t span,
  html.bidot-mobile .footer__marq .marq__t span,
  body:not(.home) .footer__marq .marq__t span{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    white-space:nowrap!important;
    text-align:left!important;
  }

  .footer__bottom,
  html.bidot-mobile .footer__bottom,
  body:not(.home) .footer__bottom{
    display:grid!important;
    grid-template-columns:1fr!important;
    justify-items:center!important;
    align-items:center!important;
    width:100%!important;
    gap:.8rem!important;
    padding:2rem var(--pad) 0!important;
    text-align:center!important;
  }

  .footer__bottom span,
  .footer__bottom a,
  html.bidot-mobile .footer__bottom span,
  html.bidot-mobile .footer__bottom a,
  body:not(.home) .footer__bottom span,
  body:not(.home) .footer__bottom a{
    display:block!important;
    width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }

  .footer__disc,
  html.bidot-mobile .footer__disc,
  body:not(.home) .footer__disc{
    width:100%!important;
    max-width:32ch!important;
    margin:0 auto!important;
    padding:1.6rem var(--pad) 0!important;
    text-align:center!important;
  }
}


/* ===== AJUSTE EXTRA 6.5.0 · SUBIR BLOQUE DE TEXTO DEL HERO HOME EN MÓVIL ===== */
@media(max-width:860px){
  body.home .hero__inner,
  html.bidot-mobile body.home .hero__inner{
    padding:0 var(--pad) 12.8vh!important;
  }
}


/* ===== AJUSTE EXTRA 6.6.0 · BAJAR UN POCO EL BOTÓN FLOTANTE EN MÓVIL ===== */
@media(max-width:860px){
  .fab,
  html.bidot-mobile .fab{
    bottom:calc(env(safe-area-inset-bottom,0px) + 2.9rem)!important;
  }
}


/* ===== AJUSTE EXTRA 6.7.0 · CTA FLOTANTE SOLO APARECE AL HACER SCROLL ===== */
.fab{
  transition:opacity .28s ease, transform .28s ease, visibility .28s ease;
}
.fab.fab--hidden{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(18px)!important;
}


/* ===== AJUSTE EXTRA 6.8.0 · ENLACE INICIO EN HEADER ===== */
.nav__links{
  gap:1.75rem!important;
}
@media(min-width:1200px){
  .nav__links{
    gap:2rem!important;
  }
}


/* ===== AJUSTE EXTRA 6.9.0 · INICIO VISIBLE EN HEADER ===== */
.nav__links{
  gap:1.45rem!important;
}
.nav__links .nav__home-link,
.nav__links a[data-bidot-key="index"]{
  display:inline-flex!important;
  opacity:.9!important;
  visibility:visible!important;
}
@media(min-width:1200px){
  .nav__links{
    gap:1.9rem!important;
  }
}
@media(min-width:901px) and (max-width:1120px){
  .nav__links{
    gap:1.15rem!important;
  }
  .nav__links a{
    font-size:.72rem!important;
    letter-spacing:.045em!important;
  }
}


/* ===== AJUSTE EXTRA 7.0.0 · MENÚ MÓVIL: INICIO ARRIBA Y CTA MÁS LLAMATIVO ===== */
@media(max-width:900px){
  html.bidot-mobile .mnav__cta,
  .mnav__cta{
    width:100%!important;
    max-width:360px!important;
    min-height:58px!important;
    margin:1.45rem auto 0!important;
    padding:1rem 1.4rem!important;
    justify-content:center!important;
    text-align:center!important;
    font-size:.95rem!important;
    font-weight:700!important;
    letter-spacing:.11em!important;
    border-radius:999px!important;
    border:1.3px solid rgba(174,180,187,.82)!important;
    background:rgba(174,180,187,.14)!important;
    color:#fff!important;
    -webkit-text-fill-color:#fff!important;
    box-shadow:0 18px 44px rgba(174,180,187,.13)!important;
  }

  html.bidot-mobile .mnav__label,
  .mnav__label{
    font-size:.86rem!important;
    letter-spacing:.18em!important;
  }
}


/* ===== AJUSTE EXTRA 7.1.0 · BAJAR MÁS EL FLOTANTE EN MÓVIL ===== */
@media(max-width:860px){
  .fab,
  html.bidot-mobile .fab{
    bottom:calc(env(safe-area-inset-bottom,0px) + 1rem)!important;
  }
}


/* ===== AJUSTE EXTRA 7.2.0 · FLOTANTE VISIBLE TAMBIÉN CON MENÚ MÓVIL ABIERTO ===== */
@media(max-width:860px){
  body.bidot-menu-open .fab,
  html.bidot-mobile body.bidot-menu-open .fab{
    z-index:9005!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 1rem)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }
}


/* ===== AJUSTE EXTRA 7.3.0 · CTA DUDAS TRATAMIENTOS ===== */
a[href*="tengo%20dudas%20acerca%20de%20los%20tratamientos"],
a[href*="tengo%20dudas%20acerca"]{
  white-space:normal!important;
  text-align:center!important;
  line-height:1.25!important;
}
@media(max-width:860px){
  a[href*="tengo%20dudas%20acerca%20de%20los%20tratamientos"],
  a[href*="tengo%20dudas%20acerca"]{
    max-width:330px!important;
    padding-left:1.25rem!important;
    padding-right:1.25rem!important;
  }
}


/* ===== AJUSTE EXTRA 7.8.0 · INDIVIDUALES TRATAMIENTOS: PRETÍTULO, PASOS CENTRADOS Y SIN BLOQUE STATS ===== */
body:not(.home) .shead.shead-process{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  gap:1rem!important;
  text-align:center!important;
  padding-bottom:4vh!important;
}

body:not(.home) .shead.shead-process .eyebrow{
  order:0!important;
  justify-content:center!important;
}

body:not(.home) .shead.shead-process h2{
  order:1!important;
  max-width:18ch!important;
  margin:0 auto!important;
  text-align:center!important;
}

body:not(.home) .steps.dark{
  text-align:center!important;
  justify-items:center!important;
}

body:not(.home) .steps.dark .step{
  text-align:center!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:flex-start!important;
  padding-left:1.2rem!important;
  padding-right:1.2rem!important;
}

body:not(.home) .steps.dark .step .num{
  display:none!important;
}

body:not(.home) .steps.dark .step h4,
body:not(.home) .steps.dark .step p{
  text-align:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

body:not(.home) .steps.dark .step p{
  max-width:34ch!important;
}

body:not(.home) .feat{
  display:none!important;
}


/* ===== AJUSTE 8.0.0 · PRETÍTULO VISIBLE EN HERO DE TRATAMIENTOS INDIVIDUALES ===== */
body:not(.home) .phero__ey,
body:not(.home) .phero__inner .eyebrow{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  z-index:3!important;
  margin-bottom:1.15rem!important;
  font-size:.84rem!important;
  letter-spacing:.24em!important;
  text-transform:uppercase!important;
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
}

body:not(.home) .phero__inner .eyebrow::before{
  display:inline-block!important;
  background:#aeb4bb!important;
}

body:not(.home) .phero__inner{
  gap:0!important;
}


/* ===== AJUSTE 8.1.0 · MENÚ MÓVIL CONTACTO + DÓNDE ENCONTRARNOS ===== */
html.bidot-mobile .mnav__label--social,
.mnav__label--social{
  margin-top:1.1rem!important;
  padding-top:.85rem!important;
  border-top:1px solid rgba(255,255,255,.12)!important;
}


/* =====================================================================
   AJUSTE 8.2.0 · VARIANTES DE COLOR GLOBALES
   gold = original · silver = detalles plateados · bw = blanco y negro
   ===================================================================== */

/* Plateado: misma web, acentos en plata */
html[data-bidot-theme="silver"]{
  --gold:#aeb4bb!important;
  --gold-lt:#edf0f2!important;
  --cream:#f6f5f2;
  --cream-2:#eceae6;
  --light:#e5e6e6;
}
html[data-bidot-theme="silver"] .cur{
  border-color:rgba(174,180,187,.78)!important;
}
html[data-bidot-theme="silver"] .cur-dot,
html[data-bidot-theme="silver"] .prog,
html[data-bidot-theme="silver"] .eyebrow::before,
html[data-bidot-theme="silver"] .hero__count i,
html[data-bidot-theme="silver"] .hero__scroll i,
html[data-bidot-theme="silver"] .footer__marq .marq__t span::after{
  background:#aeb4bb!important;
}
html[data-bidot-theme="silver"] .btn-gold,
html[data-bidot-theme="silver"] .nav__cta,
html[data-bidot-theme="silver"] .mnav__cta{
  border-color:rgba(229,232,235,.82)!important;
}
html[data-bidot-theme="silver"] .fab__main{
  background:#c9ced3!important;
  color:#111!important;
}

/* Blanco y negro: elimina el dorado y deja una versión monocroma */
html[data-bidot-theme="bw"]{
  --cream:#f7f7f4;
  --cream-2:#eeeeea;
  --gold:#aeb4bb!important;
  --gold-lt:#edf0f2!important;
  --dark:#050505;
  --mid:#1e1e1e;
  --gray:#5c5c5c;
  --light:#e4e4e1;
}
html[data-bidot-theme="bw"] img{
  filter:grayscale(1)!important;
}
html[data-bidot-theme="bw"] .cur{
  border-color:rgba(255,255,255,.62)!important;
  background-color:rgba(0,0,0,.86)!important;
}
html[data-bidot-theme="bw"] .cur-dot,
html[data-bidot-theme="bw"] .prog,
html[data-bidot-theme="bw"] .hero__count i,
html[data-bidot-theme="bw"] .hero__scroll i,
html[data-bidot-theme="bw"] .footer__marq .marq__t span::after{
  background:#fff!important;
}
html[data-bidot-theme="bw"] .eyebrow,
html[data-bidot-theme="bw"] .accent-script,
html[data-bidot-theme="bw"] .accent-gold,
html[data-bidot-theme="bw"] .chapter__n,
html[data-bidot-theme="bw"] .panel__n,
html[data-bidot-theme="bw"] .stage__idx,
html[data-bidot-theme="bw"] .test__it .by,
html[data-bidot-theme="bw"] .tq .by,
html[data-bidot-theme="bw"] .rcard .by,
html[data-bidot-theme="bw"] .step .num,
html[data-bidot-theme="bw"] .vi{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}
html[data-bidot-theme="bw"] .dark .eyebrow,
html[data-bidot-theme="bw"] .split.dark .eyebrow,
html[data-bidot-theme="bw"] .qform .eyebrow,
html[data-bidot-theme="bw"] .rwall .eyebrow,
html[data-bidot-theme="bw"] .ctaband.dark .eyebrow,
html[data-bidot-theme="bw"] .phero__inner .eyebrow,
html[data-bidot-theme="bw"] .phero__ey,
html[data-bidot-theme="bw"] .hero .eyebrow,
html[data-bidot-theme="bw"] .dark .accent-script,
html[data-bidot-theme="bw"] .phero__title .accent-script,
html[data-bidot-theme="bw"] .hero__title .accent-script{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html[data-bidot-theme="bw"] .eyebrow::before{
  background:currentColor!important;
}
html[data-bidot-theme="bw"] .btn-gold,
html[data-bidot-theme="bw"] .btn-wa,
html[data-bidot-theme="bw"] .btn-silver,
html[data-bidot-theme="bw"] .nav__cta,
html[data-bidot-theme="bw"] .mnav__cta{
  border-color:rgba(0,0,0,.36)!important;
  background:transparent!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  box-shadow:none!important;
}
html[data-bidot-theme="bw"] .dark .btn-gold,
html[data-bidot-theme="bw"] .dark .btn-wa,
html[data-bidot-theme="bw"] .dark .btn-silver,
html[data-bidot-theme="bw"] .mnav__cta,
html[data-bidot-theme="bw"] .nav__cta{
  border-color:rgba(255,255,255,.62)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
html[data-bidot-theme="bw"] .fab__main{
  background:#fff!important;
  color:#111!important;
  box-shadow:0 14px 34px rgba(0,0,0,.24)!important;
}
html[data-bidot-theme="bw"] .fab__wa{
  background:#111!important;
  box-shadow:0 14px 34px rgba(0,0,0,.32)!important;
}

/* Página selector de color */
.theme-selector{
  padding:10vh var(--pad);
  text-align:center;
}
.theme-selector > h2{
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(2.6rem,6vw,5rem);
  line-height:1.04;
  margin:1.1rem auto 3rem;
  max-width:11ch;
}
.theme-selector > h2 em{
  color:var(--gold);
  font-style:italic;
}
.theme-selector__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.3rem;
  max-width:1120px;
  margin:0 auto;
}
.theme-option{
  appearance:none;
  border:1px solid rgba(13,13,13,.16);
  background:rgba(255,255,255,.34);
  border-radius:28px;
  padding:2rem;
  min-height:260px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:1rem;
  text-align:center;
  color:var(--dark);
  font-family:var(--sans);
  transition:transform .35s var(--ease),border-color .35s var(--ease),box-shadow .35s var(--ease),background .35s var(--ease);
}
.theme-option:hover,
.theme-option.is-active{
  transform:translateY(-4px);
  border-color:var(--gold);
  box-shadow:0 24px 60px rgba(13,13,13,.08);
  background:rgba(255,255,255,.58);
}
.theme-option strong{
  font-family:var(--serif);
  font-size:2rem;
  font-weight:400;
  line-height:1.05;
}
.theme-option small{
  max-width:28ch;
  color:var(--gray);
  line-height:1.55;
}
.theme-option__swatch{
  width:54px;
  height:54px;
  border-radius:50%;
  border:1px solid rgba(13,13,13,.18);
  box-shadow:0 14px 34px rgba(13,13,13,.12);
}
.theme-option--gold .theme-option__swatch{
  background:linear-gradient(135deg,#aeb4bb,#aeb4bb);
}
.theme-option--silver .theme-option__swatch{
  background:linear-gradient(135deg,#8f969d,#e5e8eb);
}
.theme-option--bw .theme-option__swatch{
  background:linear-gradient(135deg,#050505 0 48%,#fff 50% 100%);
}
.theme-selector__actions{
  margin:3rem auto 0;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:1rem;
  flex-wrap:wrap;
}
.theme-preview .split__media img{
  filter:inherit;
}
@media(max-width:860px){
  .theme-selector{
    padding:8vh var(--pad);
  }
  .theme-selector__grid{
    grid-template-columns:1fr;
  }
  .theme-option{
    min-height:210px;
    padding:1.7rem;
  }
  .theme-selector__actions{
    flex-direction:column;
  }
  .theme-selector__actions .btn{
    width:100%;
    max-width:330px;
  }
}


/* ===== AJUSTE 8.4.0 · SELECTOR APLICA COLOR A TODA LA WEB ===== */
.theme-option.is-active{
  outline:2px solid var(--gold)!important;
  outline-offset:4px!important;
}
.theme-option.is-active::after{
  content:"Aplicado a toda la web";
  margin-top:.35rem;
  font-family:var(--sans);
  font-size:.72rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--gold);
}


/* ===== AJUSTE 8.6.0 · SELECTOR DE COLOR CLICABLE COMO ENLACES ===== */
.theme-option{
  text-decoration:none!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:5!important;
}
.theme-option *{
  pointer-events:none!important;
}
.theme-selector__grid{
  position:relative!important;
  z-index:4!important;
}


/* =====================================================================
   AJUSTE 8.7.0 · CAMBIO REAL DE TODOS LOS DETALLES DE COLOR EN TODA LA WEB
   ===================================================================== */

/* PLATEADO */
html[data-bidot-theme="silver"],
body[data-bidot-theme="silver"],
html.bidot-theme-silver{
  --gold:#aeb4bb!important;
  --gold-lt:#edf0f2!important;
  --cream:#f7f6f3!important;
  --cream-2:#ecebea!important;
  --light:#e8e8e6!important;
}

html[data-bidot-theme="silver"] :is(
  .eyebrow,.accent-script,.accent-gold,.chapter__n,.panel__n,.stage__p .num,.stage__idx,
  .test__it .by,.tq .by,.rcard .by,.step .num,.vi,.tm__more,.faq__ic,.theme-selector > h2 em,
  .book__info h3 em,.split__body h2 em,.shead h2 em,.rwall__head h2 em,.ctaband h2 em,
  .home-doctor__overlay em,.hero__title em,.phero__title em
){
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
}

html[data-bidot-theme="silver"] :is(
  .dark .eyebrow,.split.dark .eyebrow,.qform .eyebrow,.book .eyebrow,.vmarq .eyebrow,
  .rwall .eyebrow,.ctaband.dark .eyebrow,.phero__inner .eyebrow,.phero__ey,
  .dark .accent-script,.dark .accent-gold,.phero__title .accent-script,.hero__title .accent-script,
  body:not(.home) .phero__inner .eyebrow
){
  color:#edf0f2!important;
  -webkit-text-fill-color:#edf0f2!important;
}

html[data-bidot-theme="silver"] :is(
  .prog,.cur-dot,.eyebrow::before,.hero__count i,.hero__scroll i,.footer__marq .marq__t span::after,
  .faq__ic::before,.faq__ic::after,.pillars__in h3::before,.cred::before,
  .tquotes__dot.active::before
){
  background:#aeb4bb!important;
}

html[data-bidot-theme="silver"] :is(
  .cur,.btn-gold,.btn-wa,.btn-silver,.nav__cta,.mnav__cta,.tags span,.tm,.rcard,.faq__it,
  .theme-option.is-active,.theme-option:hover,.ctaband > a.btn,.ctaband > .btn
){
  border-color:rgba(174,180,187,.7)!important;
}

html[data-bidot-theme="silver"] :is(.btn-gold,.nav__cta,.mnav__cta,.fab__main){
  background:rgba(174,180,187,.18)!important;
  box-shadow:0 18px 44px rgba(174,180,187,.14)!important;
}

html[data-bidot-theme="silver"] :is(.fab__main){
  background:#c8ccd0!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}

/* BLANCO Y NEGRO */
html[data-bidot-theme="bw"],
body[data-bidot-theme="bw"],
html.bidot-theme-bw{
  --gold:#aeb4bb!important;
  --gold-lt:#edf0f2!important;
  --cream:#f7f7f4!important;
  --cream-2:#eeeeea!important;
  --dark:#050505!important;
  --mid:#1e1e1e!important;
  --gray:#5c5c5c!important;
  --light:#e4e4e1!important;
}

html[data-bidot-theme="bw"] img{
  filter:grayscale(1)!important;
}

html[data-bidot-theme="bw"] :is(
  .eyebrow,.accent-script,.accent-gold,.chapter__n,.panel__n,.stage__p .num,.stage__idx,
  .test__it .by,.tq .by,.rcard .by,.step .num,.vi,.tm__more,.faq__ic,.theme-selector > h2 em,
  .book__info h3 em,.split__body h2 em,.shead h2 em,.rwall__head h2 em,.ctaband h2 em,
  .home-doctor__overlay em,.hero__title em,.phero__title em
){
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}

html[data-bidot-theme="bw"] :is(
  .dark .eyebrow,.split.dark .eyebrow,.qform .eyebrow,.book .eyebrow,.vmarq .eyebrow,
  .rwall .eyebrow,.ctaband.dark .eyebrow,.phero__inner .eyebrow,.phero__ey,
  .dark .accent-script,.dark .accent-gold,.phero__title .accent-script,.hero__title .accent-script,
  body:not(.home) .phero__inner .eyebrow
){
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

html[data-bidot-theme="bw"] :is(
  .prog,.cur-dot,.eyebrow::before,.hero__count i,.hero__scroll i,.footer__marq .marq__t span::after,
  .faq__ic::before,.faq__ic::after,.pillars__in h3::before,.cred::before,
  .tquotes__dot.active::before
){
  background:currentColor!important;
}

html[data-bidot-theme="bw"] :is(.cur,.btn-gold,.btn-wa,.btn-silver,.nav__cta,.mnav__cta,.tags span,.tm,.rcard,.faq__it,.theme-option.is-active,.theme-option:hover,.ctaband > a.btn,.ctaband > .btn){
  border-color:rgba(0,0,0,.42)!important;
  box-shadow:none!important;
}

html[data-bidot-theme="bw"] :is(.dark .btn-gold,.dark .btn-wa,.dark .btn-silver,.nav__cta,.mnav__cta,.phero .btn-gold,.hero .btn-gold){
  border-color:rgba(255,255,255,.7)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

html[data-bidot-theme="bw"] :is(.btn-gold,.btn-wa,.btn-silver){
  background:transparent!important;
}

html[data-bidot-theme="bw"] :is(.fab__main){
  background:#fff!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}

html[data-bidot-theme="bw"] :is(.fab__wa){
  background:#111!important;
}


/* =====================================================================
   AJUSTE 8.8.0 · OVERRIDE EXPLÍCITO SIN :is() PARA QUE CAMBIEN TODOS LOS DETALLES
   ===================================================================== */

/* Variables también usadas por bloques antiguos */
html[data-bidot-theme="silver"]{
  --gold:#aeb4bb!important;
  --gold-lt:#edf0f2!important;
  --gold-strong:#aeb4bb!important;
  --gold-soft:#cfd4d8!important;
}
html[data-bidot-theme="bw"]{
  --gold:#aeb4bb!important;
  --gold-lt:#edf0f2!important;
  --gold-strong:#aeb4bb!important;
  --gold-soft:#cfd4d8!important;
}

/* PLATEADO — textos y detalles dorados */
html[data-bidot-theme="silver"] .eyebrow,
html[data-bidot-theme="silver"] .accent-script,
html[data-bidot-theme="silver"] .accent-gold,
html[data-bidot-theme="silver"] em.accent-script,
html[data-bidot-theme="silver"] .chapter__n,
html[data-bidot-theme="silver"] .panel__n,
html[data-bidot-theme="silver"] .stage__p .num,
html[data-bidot-theme="silver"] .stage__idx,
html[data-bidot-theme="silver"] .test__it .by,
html[data-bidot-theme="silver"] .tq .by,
html[data-bidot-theme="silver"] .rcard .by,
html[data-bidot-theme="silver"] .step .num,
html[data-bidot-theme="silver"] .vi,
html[data-bidot-theme="silver"] .tm__more,
html[data-bidot-theme="silver"] .contact__grid h4,
html[data-bidot-theme="silver"] .trx__go,
html[data-bidot-theme="silver"] .qfield label,
html[data-bidot-theme="silver"] .theme-selector > h2 em,
html[data-bidot-theme="silver"] .book__info h3 em,
html[data-bidot-theme="silver"] .split__body h2 em,
html[data-bidot-theme="silver"] .shead h2 em,
html[data-bidot-theme="silver"] .rwall__head h2 em,
html[data-bidot-theme="silver"] .ctaband h2 em,
html[data-bidot-theme="silver"] .home-doctor__overlay em,
html[data-bidot-theme="silver"] .hero__title em,
html[data-bidot-theme="silver"] .phero__title em,
html[data-bidot-theme="silver"] .phero__title .accent-script,
html[data-bidot-theme="silver"] body:not(.home) .phero__title em,
html[data-bidot-theme="silver"] body:not(.home) .phero__title .accent-script,
html[data-bidot-theme="silver"] body:not(.home) .split.dark h2 em,
html[data-bidot-theme="silver"] body:not(.home) .qform h2 em,
html[data-bidot-theme="silver"] body:not(.home) .book h3 em,
html[data-bidot-theme="silver"] body:not(.home) .rwall h2 em,
html[data-bidot-theme="silver"] body:not(.home) .tquotes em,
html[data-bidot-theme="silver"] body:not(.home) .ctaband.dark h2 em,
html[data-bidot-theme="silver"] body:not(.home) .feat b,
html[data-bidot-theme="silver"] body:not(.home) .step .num,
html[data-bidot-theme="silver"] body:not(.home) .mani__txt em,
html[data-bidot-theme="silver"] body:not(.home) .mani__txt em .w,
html[data-bidot-theme="silver"] body:not(.home) .shead h2 em,
html[data-bidot-theme="silver"] body:not(.home) .split.cream h2 em,
html[data-bidot-theme="silver"] body:not(.home) .qlines em,
html[data-bidot-theme="silver"] body:not(.home) .ctaband:not(.dark) h2 em,
html[data-bidot-theme="silver"] body:not(.home) .contact__big em,
html[data-bidot-theme="silver"] body:not(.home) .tcardq em,
html[data-bidot-theme="silver"] body:not(.home) .vals:not(.dark) .vrow h3 em{
  color:#aeb4bb!important;
  -webkit-text-fill-color:#aeb4bb!important;
  text-decoration-color:#aeb4bb!important;
}

/* PLATEADO — en zonas oscuras el detalle va plata clara */
html[data-bidot-theme="silver"] .dark .eyebrow,
html[data-bidot-theme="silver"] .split.dark .eyebrow,
html[data-bidot-theme="silver"] .qform .eyebrow,
html[data-bidot-theme="silver"] .book .eyebrow,
html[data-bidot-theme="silver"] .vmarq .eyebrow,
html[data-bidot-theme="silver"] .rwall .eyebrow,
html[data-bidot-theme="silver"] .ctaband.dark .eyebrow,
html[data-bidot-theme="silver"] .phero__inner .eyebrow,
html[data-bidot-theme="silver"] .phero__ey,
html[data-bidot-theme="silver"] .dark .accent-script,
html[data-bidot-theme="silver"] .dark .accent-gold,
html[data-bidot-theme="silver"] .phero__title .accent-script,
html[data-bidot-theme="silver"] .hero__title .accent-script,
html[data-bidot-theme="silver"] body:not(.home) .phero__ey,
html[data-bidot-theme="silver"] body:not(.home) .phero__inner .eyebrow{
  color:#edf0f2!important;
  -webkit-text-fill-color:#edf0f2!important;
  text-decoration-color:#edf0f2!important;
}

/* PLATEADO — líneas, iconos, cruces + y pseudo-elementos */
html[data-bidot-theme="silver"] .prog,
html[data-bidot-theme="silver"] .cur-dot,
html[data-bidot-theme="silver"] .eyebrow::before,
html[data-bidot-theme="silver"] .hero__count i,
html[data-bidot-theme="silver"] .hero__scroll i,
html[data-bidot-theme="silver"] .footer__marq .marq__t span::after,
html[data-bidot-theme="silver"] .faq__ic::before,
html[data-bidot-theme="silver"] .faq__ic::after,
html[data-bidot-theme="silver"] body:not(.home) .faq__ic::before,
html[data-bidot-theme="silver"] body:not(.home) .faq__ic::after,
html[data-bidot-theme="silver"] body:not(.home) .phero__inner .eyebrow::before,
html[data-bidot-theme="silver"] body:not(.home) .feat > .eyebrow::before,
html[data-bidot-theme="silver"] .phero__inner .eyebrow::before,
html[data-bidot-theme="silver"] .pillars__in h3::before,
html[data-bidot-theme="silver"] .cred::before,
html[data-bidot-theme="silver"] .tquotes__dot.active::before{
  background:#aeb4bb!important;
  background-color:#aeb4bb!important;
  border-color:#aeb4bb!important;
}

/* PLATEADO — bordes y botones */
html[data-bidot-theme="silver"] .cur,
html[data-bidot-theme="silver"] .btn-gold,
html[data-bidot-theme="silver"] .btn-wa,
html[data-bidot-theme="silver"] .btn-silver,
html[data-bidot-theme="silver"] .nav__cta,
html[data-bidot-theme="silver"] .mnav__cta,
html[data-bidot-theme="silver"] .tags span,
html[data-bidot-theme="silver"] .tm,
html[data-bidot-theme="silver"] .rcard,
html[data-bidot-theme="silver"] .faq__it,
html[data-bidot-theme="silver"] .theme-option.is-active,
html[data-bidot-theme="silver"] .theme-option:hover,
html[data-bidot-theme="silver"] .ctaband > a.btn,
html[data-bidot-theme="silver"] .ctaband > .btn{
  border-color:rgba(174,180,187,.78)!important;
}
html[data-bidot-theme="silver"] .btn-gold,
html[data-bidot-theme="silver"] .nav__cta,
html[data-bidot-theme="silver"] .mnav__cta{
  background:rgba(174,180,187,.14)!important;
  box-shadow:0 18px 44px rgba(174,180,187,.14)!important;
}
html[data-bidot-theme="silver"] .fab__main{
  background:#c8ccd0!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}

/* BLANCO Y NEGRO — textos de detalle */
html[data-bidot-theme="bw"] .eyebrow,
html[data-bidot-theme="bw"] .accent-script,
html[data-bidot-theme="bw"] .accent-gold,
html[data-bidot-theme="bw"] em.accent-script,
html[data-bidot-theme="bw"] .chapter__n,
html[data-bidot-theme="bw"] .panel__n,
html[data-bidot-theme="bw"] .stage__p .num,
html[data-bidot-theme="bw"] .stage__idx,
html[data-bidot-theme="bw"] .test__it .by,
html[data-bidot-theme="bw"] .tq .by,
html[data-bidot-theme="bw"] .rcard .by,
html[data-bidot-theme="bw"] .step .num,
html[data-bidot-theme="bw"] .vi,
html[data-bidot-theme="bw"] .tm__more,
html[data-bidot-theme="bw"] .contact__grid h4,
html[data-bidot-theme="bw"] .trx__go,
html[data-bidot-theme="bw"] .qfield label,
html[data-bidot-theme="bw"] .theme-selector > h2 em,
html[data-bidot-theme="bw"] .book__info h3 em,
html[data-bidot-theme="bw"] .split__body h2 em,
html[data-bidot-theme="bw"] .shead h2 em,
html[data-bidot-theme="bw"] .rwall__head h2 em,
html[data-bidot-theme="bw"] .ctaband h2 em,
html[data-bidot-theme="bw"] .home-doctor__overlay em,
html[data-bidot-theme="bw"] .hero__title em,
html[data-bidot-theme="bw"] .phero__title em,
html[data-bidot-theme="bw"] .phero__title .accent-script,
html[data-bidot-theme="bw"] body:not(.home) .phero__title em,
html[data-bidot-theme="bw"] body:not(.home) .phero__title .accent-script,
html[data-bidot-theme="bw"] body:not(.home) .split.dark h2 em,
html[data-bidot-theme="bw"] body:not(.home) .qform h2 em,
html[data-bidot-theme="bw"] body:not(.home) .book h3 em,
html[data-bidot-theme="bw"] body:not(.home) .rwall h2 em,
html[data-bidot-theme="bw"] body:not(.home) .tquotes em,
html[data-bidot-theme="bw"] body:not(.home) .ctaband.dark h2 em,
html[data-bidot-theme="bw"] body:not(.home) .feat b,
html[data-bidot-theme="bw"] body:not(.home) .step .num,
html[data-bidot-theme="bw"] body:not(.home) .mani__txt em,
html[data-bidot-theme="bw"] body:not(.home) .mani__txt em .w,
html[data-bidot-theme="bw"] body:not(.home) .shead h2 em,
html[data-bidot-theme="bw"] body:not(.home) .split.cream h2 em,
html[data-bidot-theme="bw"] body:not(.home) .qlines em,
html[data-bidot-theme="bw"] body:not(.home) .ctaband:not(.dark) h2 em,
html[data-bidot-theme="bw"] body:not(.home) .contact__big em,
html[data-bidot-theme="bw"] body:not(.home) .tcardq em,
html[data-bidot-theme="bw"] body:not(.home) .vals:not(.dark) .vrow h3 em{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  text-decoration-color:#111!important;
}

/* BLANCO Y NEGRO — en zonas oscuras todo detalle en blanco */
html[data-bidot-theme="bw"] .dark .eyebrow,
html[data-bidot-theme="bw"] .split.dark .eyebrow,
html[data-bidot-theme="bw"] .qform .eyebrow,
html[data-bidot-theme="bw"] .book .eyebrow,
html[data-bidot-theme="bw"] .vmarq .eyebrow,
html[data-bidot-theme="bw"] .rwall .eyebrow,
html[data-bidot-theme="bw"] .ctaband.dark .eyebrow,
html[data-bidot-theme="bw"] .phero__inner .eyebrow,
html[data-bidot-theme="bw"] .phero__ey,
html[data-bidot-theme="bw"] .dark .accent-script,
html[data-bidot-theme="bw"] .dark .accent-gold,
html[data-bidot-theme="bw"] .phero__title .accent-script,
html[data-bidot-theme="bw"] .hero__title .accent-script,
html[data-bidot-theme="bw"] body:not(.home) .phero__ey,
html[data-bidot-theme="bw"] body:not(.home) .phero__inner .eyebrow{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-decoration-color:#fff!important;
}

/* BLANCO Y NEGRO — líneas, cruces + y pseudo-elementos */
html[data-bidot-theme="bw"] .prog,
html[data-bidot-theme="bw"] .cur-dot,
html[data-bidot-theme="bw"] .eyebrow::before,
html[data-bidot-theme="bw"] .hero__count i,
html[data-bidot-theme="bw"] .hero__scroll i,
html[data-bidot-theme="bw"] .footer__marq .marq__t span::after,
html[data-bidot-theme="bw"] .faq__ic::before,
html[data-bidot-theme="bw"] .faq__ic::after,
html[data-bidot-theme="bw"] body:not(.home) .faq__ic::before,
html[data-bidot-theme="bw"] body:not(.home) .faq__ic::after,
html[data-bidot-theme="bw"] body:not(.home) .phero__inner .eyebrow::before,
html[data-bidot-theme="bw"] body:not(.home) .feat > .eyebrow::before,
html[data-bidot-theme="bw"] .phero__inner .eyebrow::before,
html[data-bidot-theme="bw"] .pillars__in h3::before,
html[data-bidot-theme="bw"] .cred::before,
html[data-bidot-theme="bw"] .tquotes__dot.active::before{
  background:#fff!important;
  background-color:#fff!important;
  border-color:#fff!important;
}

html[data-bidot-theme="bw"] img{
  filter:grayscale(1)!important;
}
html[data-bidot-theme="bw"] .cur,
html[data-bidot-theme="bw"] .btn-gold,
html[data-bidot-theme="bw"] .btn-wa,
html[data-bidot-theme="bw"] .btn-silver,
html[data-bidot-theme="bw"] .nav__cta,
html[data-bidot-theme="bw"] .mnav__cta,
html[data-bidot-theme="bw"] .tags span,
html[data-bidot-theme="bw"] .tm,
html[data-bidot-theme="bw"] .rcard,
html[data-bidot-theme="bw"] .faq__it,
html[data-bidot-theme="bw"] .theme-option.is-active,
html[data-bidot-theme="bw"] .theme-option:hover,
html[data-bidot-theme="bw"] .ctaband > a.btn,
html[data-bidot-theme="bw"] .ctaband > .btn{
  border-color:rgba(255,255,255,.62)!important;
  box-shadow:none!important;
}
html[data-bidot-theme="bw"] .fab__main{
  background:#fff!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}
html[data-bidot-theme="bw"] .fab__wa{
  background:#111!important;
}

/* BIDOT 9.1.0 · PLATEADO ESPEJO — CSS físico */
:root{--gold:#aeb4bb!important;--gold-lt:#edf0f2!important;--gold-strong:#aeb4bb!important;--gold-soft:#cfd4d8!important;}
.eyebrow,.accent-script,.accent-gold,em.accent-script,.chapter__n,.panel__n,.stage__p .num,.stage__idx,.test__it .by,.tq .by,.rcard .by,.step .num,.vi,.tm__more,.contact__grid h4,.trx__go,.qfield label,.theme-selector > h2 em,.book__info h3 em,.split__body h2 em,.shead h2 em,.rwall__head h2 em,.ctaband h2 em,.home-doctor__overlay em,.hero__title em,.phero__title em,.phero__title .accent-script,body:not(.home) .phero__title em,body:not(.home) .phero__title .accent-script,body:not(.home) .split.dark h2 em,body:not(.home) .qform h2 em,body:not(.home) .book h3 em,body:not(.home) .rwall h2 em,body:not(.home) .tquotes em,body:not(.home) .ctaband.dark h2 em,body:not(.home) .feat b,body:not(.home) .step .num,body:not(.home) .mani__txt em,body:not(.home) .mani__txt em .w,body:not(.home) .shead h2 em,body:not(.home) .split.cream h2 em,body:not(.home) .qlines em,body:not(.home) .ctaband:not(.dark) h2 em,body:not(.home) .contact__big em,body:not(.home) .tcardq em,body:not(.home) .vals:not(.dark) .vrow h3 em,body:not(.home) .feat > .eyebrow{color:#aeb4bb!important;-webkit-text-fill-color:#aeb4bb!important;text-decoration-color:#aeb4bb!important;background-image:none!important;}
.dark .eyebrow,.split.dark .eyebrow,.qform .eyebrow,.book .eyebrow,.vmarq .eyebrow,.rwall .eyebrow,.ctaband.dark .eyebrow,.phero__inner .eyebrow,.phero__ey,.dark .accent-script,.dark .accent-gold,.phero__title .accent-script,.hero__title .accent-script,body:not(.home) .phero__ey,body:not(.home) .phero__inner .eyebrow{color:#edf0f2!important;-webkit-text-fill-color:#edf0f2!important;text-decoration-color:#edf0f2!important;background-image:none!important;}
.prog,.cur-dot,.eyebrow::before,.hero__count i,.hero__scroll i,.footer__marq .marq__t span::after,.faq__ic::before,.faq__ic::after,body:not(.home) .faq__ic::before,body:not(.home) .faq__ic::after,body:not(.home) .phero__inner .eyebrow::before,body:not(.home) .feat > .eyebrow::before,.phero__inner .eyebrow::before,.pillars__in h3::before,.cred::before,.tquotes__dot.active::before{background:#aeb4bb!important;background-color:#aeb4bb!important;border-color:#aeb4bb!important;}
.cur,.btn-gold,.btn-wa,.btn-silver,.nav__cta,.mnav__cta,.tags span,.tm,.rcard,.faq__it,.theme-option.is-active,.theme-option:hover,.ctaband > a.btn,.ctaband > .btn{border-color:rgba(174,180,187,.78)!important;}
.btn-gold,.nav__cta,.mnav__cta{background:rgba(174,180,187,.14)!important;box-shadow:0 18px 44px rgba(174,180,187,.14)!important;}
.fab__main{background:#c8ccd0!important;color:#111!important;-webkit-text-fill-color:#111!important;}


/* =====================================================================
   BIDOT 9.2.0 · ACCESIBILIDAD EN VERSIÓN PLATEADA
   Contraste reforzado para botones, CTA, menú móvil y textos sobre fondos.
   ===================================================================== */

/* Botones en fondos claros: texto oscuro legible */
.btn,
.btn-gold,
.btn-wa,
.btn-silver,
.ctaband:not(.dark) .btn,
.ctaband:not(.dark) a.btn,
.split.cream .btn,
.contact .btn,
.theme-selector .btn,
.theme-selector__actions .btn,
.theme-option{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  text-shadow:none!important;
}

/* CTA con fondo plateado claro: letra oscura */
.fab__main,
.theme-option.is-active::after{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}

/* Botones en fondos oscuros: texto blanco legible */
.dark .btn,
.dark .btn-gold,
.dark .btn-wa,
.dark .btn-silver,
.split.dark .btn,
.split.dark .btn-gold,
.split.dark .btn-wa,
.split.dark .btn-silver,
.phero .btn,
.phero .btn-gold,
.phero .btn-wa,
.hero .btn,
.hero .btn-gold,
.hero .btn-wa,
.ctaband.dark .btn,
.ctaband.dark a.btn,
.rwall.dark .btn,
.qform .btn,
.book .btn{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 2px 18px rgba(0,0,0,.35)!important;
}

/* Header, menú móvil y CTA principal siempre visibles sobre negro/cristal */
.nav__cta,
.mnav__cta,
.mnav__link,
.mnav__details a,
.mnav__label,
.mnav__head,
.mnav a{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:none!important;
}

/* CTA del menú móvil con fondo oscuro y borde plateado */
.mnav__cta{
  background:rgba(174,180,187,.16)!important;
  border-color:rgba(237,240,242,.78)!important;
  box-shadow:0 18px 44px rgba(174,180,187,.18)!important;
}

/* Botones con borde plateado sobre claro: fondo suave y texto oscuro */
.ctaband:not(.dark) .btn-gold,
.ctaband:not(.dark) .btn-wa,
.split.cream .btn-gold,
.split.cream .btn-wa,
.theme-selector__actions .btn-gold,
.theme-selector__actions .btn-line{
  background:rgba(174,180,187,.18)!important;
  border-color:rgba(80,84,88,.42)!important;
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}

/* Botones sobre oscuro: no usar plata clara como texto, mantener blanco */
.dark .btn-gold,
.dark .btn-wa,
.phero .btn-gold,
.phero .btn-wa,
.hero .btn-gold,
.hero .btn-wa,
.ctaband.dark .btn-gold,
.ctaband.dark .btn-wa{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(237,240,242,.72)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Microtextos y etiquetas dentro de botones */
.btn *,
.btn-gold *,
.btn-wa *,
.btn-silver *,
.nav__cta *,
.mnav__cta *{
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
}

/* Estados hover/focus accesibles */
.btn:focus-visible,
.btn-gold:focus-visible,
.btn-wa:focus-visible,
.btn-silver:focus-visible,
.nav__cta:focus-visible,
.mnav__cta:focus-visible,
.theme-option:focus-visible{
  outline:2px solid #fff!important;
  outline-offset:4px!important;
}
.ctaband:not(.dark) .btn:focus-visible,
.split.cream .btn:focus-visible,
.theme-selector .btn:focus-visible,
.theme-option:focus-visible{
  outline-color:#111!important;
}

/* Texto destacado en fondos claros: plata más oscura para que no se pierda */
.shead h2 em,
.split.cream h2 em,
.ctaband:not(.dark) h2 em,
.contact__big em,
.qlines em,
.vals:not(.dark) .vrow h3 em,
.theme-selector > h2 em{
  color:#747b82!important;
  -webkit-text-fill-color:#747b82!important;
}

/* Líneas y + en plata más visible sobre negro */
.faq__ic::before,
.faq__ic::after,
body:not(.home) .faq__ic::before,
body:not(.home) .faq__ic::after,
.eyebrow::before,
.prog,
.cur-dot{
  background:#cfd4d8!important;
  background-color:#cfd4d8!important;
}


/* =====================================================================
   BIDOT 9.3.0 · CONTRASTE FINAL BOTONES PLATEADO + NAVEGACIÓN ESPEJO
   ===================================================================== */

/* Base de botones sobre fondos claros */
.btn,
a.btn,
.btn-gold,
.btn-wa,
.btn-silver,
.btn-line,
.theme-selector .btn,
.theme-selector__actions .btn,
.split.cream .btn,
.ctaband:not(.dark) .btn,
.ctaband:not(.dark) a.btn,
.contact .btn,
.vals:not(.dark) .btn{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  background:rgba(230,233,236,.92)!important;
  border-color:rgba(86,92,98,.58)!important;
  text-shadow:none!important;
  box-shadow:0 16px 36px rgba(0,0,0,.08)!important;
}

/* Botones dentro de bloques oscuros: texto blanco, nunca negro */
.dark .btn,
.dark a.btn,
.dark .btn-gold,
.dark .btn-wa,
.dark .btn-silver,
.dark .btn-line,
.split.dark .btn,
.split.dark a.btn,
.phero .btn,
.phero a.btn,
.hero .btn,
.hero a.btn,
.ctaband .btn,
.ctaband a.btn,
.ctaband.dark .btn,
.ctaband.dark a.btn,
.rwall .btn,
.rwall a.btn,
.qform .btn,
.qform a.btn,
.book .btn,
.book a.btn,
.footer .btn,
.footer a.btn{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(237,240,242,.74)!important;
  text-shadow:0 2px 18px rgba(0,0,0,.5)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.28)!important;
}

/* Caso concreto de CTA final oscuro: evitar texto negro como en la captura */
body:not(.home) .ctaband .btn,
body:not(.home) .ctaband a.btn,
body:not(.home) .ctaband .btn-gold,
body:not(.home) .ctaband .btn-wa{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(237,240,242,.78)!important;
  text-shadow:0 2px 18px rgba(0,0,0,.55)!important;
}

/* Header y menú móvil: todo legible sobre negro */
.nav__cta,
.mnav__cta,
.mnav__link,
.mnav__details a,
.mnav__label,
.mnav__head,
.mnav a,
.menu-toggle,
.mobile-toggle{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:none!important;
}

/* El CTA del menú móvil mantiene contraste */
.mnav__cta{
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(237,240,242,.78)!important;
  box-shadow:0 18px 44px rgba(174,180,187,.18)!important;
}

/* Contenido interno de botones hereda el color correcto */
.btn *,
a.btn *,
.btn-gold *,
.btn-wa *,
.btn-silver *,
.btn-line *,
.nav__cta *,
.mnav__cta *,
.fab__main *{
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
}

/* FAB: letra visible */
.fab__main{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  background:#dfe3e6!important;
  border-color:rgba(255,255,255,.72)!important;
}
.fab__main span,
.fab__main strong{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
}

/* Hover/focus con contraste */
.btn:hover,
a.btn:hover,
.btn-gold:hover,
.btn-wa:hover,
.btn-silver:hover,
.btn-line:hover{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  background:#edf0f2!important;
}
.dark .btn:hover,
.dark a.btn:hover,
.split.dark .btn:hover,
.phero .btn:hover,
.hero .btn:hover,
.ctaband .btn:hover,
.ctaband a.btn:hover,
body:not(.home) .ctaband .btn:hover,
body:not(.home) .ctaband a.btn:hover{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.14)!important;
}

/* Foco accesible */
.btn:focus-visible,
a.btn:focus-visible,
.btn-gold:focus-visible,
.btn-wa:focus-visible,
.btn-silver:focus-visible,
.btn-line:focus-visible,
.nav__cta:focus-visible,
.mnav__cta:focus-visible,
.fab__main:focus-visible{
  outline:2px solid currentColor!important;
  outline-offset:4px!important;
}

/* Detalles plateados un punto más visibles en fondos oscuros */
.faq__ic::before,
.faq__ic::after,
body:not(.home) .faq__ic::before,
body:not(.home) .faq__ic::after,
.eyebrow::before,
.prog,
.cur-dot,
.hero__scroll .t i{
  background:#dfe3e6!important;
  background-color:#dfe3e6!important;
}


/* =====================================================================
   BIDOT 9.4.0 · BOTONES PLATEADOS UNIFICADOS Y LEGIBLES
   Corrige botones tipo "Ver tratamiento" y CTAs oscuros que quedaban con letra gris/negra.
   ===================================================================== */

/* Botón universal: nunca texto gris apagado */
a.btn,
.btn,
button.btn,
.btn-gold,
.btn-wa,
.btn-line,
.btn-silver,
a.treatment-action,
.treatment-action,
.svcrow__btns .treatment-action,
.book-treatment-action,
.home-treatment-action,
.nav__cta,
.mnav__cta,
.fab__main{
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
  text-decoration:none!important;
  font-weight:700!important;
}

/* Botones claros: fondo plata + texto negro fuerte */
a.treatment-action,
.treatment-action,
.svcrow__btns .treatment-action,
.svcrow__btns .treatment-action--view,
.book-treatment-action,
.home-treatment-action,
.btn,
a.btn,
.btn-gold,
.btn-wa,
.btn-line,
.btn-silver{
  color:#0b0b0b!important;
  -webkit-text-fill-color:#0b0b0b!important;
  background:#e6eaed!important;
  border:1.4px solid rgba(18,22,26,.46)!important;
  box-shadow:none!important;
}

/* Variación secundaria: información en oscuro con texto blanco */
.treatment-action--info,
.svcrow__btns .treatment-action--info,
.book-treatment-action--info,
.home-treatment-action--info{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:#202326!important;
  border-color:rgba(230,234,237,.72)!important;
}

/* Ver tratamiento: claro, con texto negro real */
.treatment-action--view,
.svcrow__btns .treatment-action--view{
  color:#0b0b0b!important;
  -webkit-text-fill-color:#0b0b0b!important;
  background:#e6eaed!important;
  border-color:rgba(18,22,26,.46)!important;
}

/* CTAs en bloques oscuros: si el fondo es negro, la letra debe ser blanca */
.dark a.btn,
.dark .btn,
.dark .btn-gold,
.dark .btn-wa,
.dark .btn-line,
.split.dark a.btn,
.split.dark .btn,
.phero a.btn,
.phero .btn,
.hero a.btn,
.hero .btn,
.ctaband a.btn,
.ctaband .btn,
body:not(.home) .ctaband a.btn,
body:not(.home) .ctaband .btn,
body:not(.home) .ctaband .btn-gold,
body:not(.home) .ctaband .btn-wa,
.qform a.btn,
.qform .btn,
.book a.btn,
.book .btn,
.rwall a.btn,
.rwall .btn{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(230,234,237,.78)!important;
  text-shadow:0 2px 16px rgba(0,0,0,.45)!important;
}

/* Pero en tarjetas claras de tratamientos debe ganar el texto negro */
.svcrow__btns .treatment-action--view,
.svcrow__btns a.treatment-action--view{
  color:#0b0b0b!important;
  -webkit-text-fill-color:#0b0b0b!important;
  background:#e6eaed!important;
}

/* Menú y header: texto blanco siempre */
.nav__cta,
.mnav__cta,
.mnav a,
.mnav__link,
.mnav__details a,
.mnav__label{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Elementos internos heredan color del botón */
.btn *,
a.btn *,
.btn-gold *,
.btn-wa *,
.btn-line *,
.btn-silver *,
.treatment-action *,
.book-treatment-action *,
.home-treatment-action *,
.nav__cta *,
.mnav__cta *,
.fab__main *{
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
}

/* Hover/focus consistente */
a.treatment-action:hover,
.treatment-action:hover,
.btn:hover,
a.btn:hover,
.btn-gold:hover,
.btn-wa:hover,
.btn-line:hover,
.btn-silver:hover{
  color:#0b0b0b!important;
  -webkit-text-fill-color:#0b0b0b!important;
  background:#f4f6f7!important;
  border-color:rgba(18,22,26,.62)!important;
}

.treatment-action--info:hover,
.svcrow__btns .treatment-action--info:hover,
.book-treatment-action--info:hover,
.home-treatment-action--info:hover,
.dark .btn:hover,
.dark a.btn:hover,
.phero .btn:hover,
.hero .btn:hover,
.ctaband .btn:hover,
.ctaband a.btn:hover,
body:not(.home) .ctaband .btn:hover,
body:not(.home) .ctaband a.btn:hover{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  background:rgba(255,255,255,.15)!important;
  border-color:rgba(255,255,255,.86)!important;
}

a.treatment-action:focus-visible,
.treatment-action:focus-visible,
.btn:focus-visible,
a.btn:focus-visible,
.nav__cta:focus-visible,
.mnav__cta:focus-visible,
.fab__main:focus-visible{
  outline:2px solid currentColor!important;
  outline-offset:4px!important;
}

/* Tamaño y centrado de los botones de tratamientos */
.svcrow__btns .treatment-action,
a.treatment-action{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  min-width:210px!important;
  padding:.9rem 1.45rem!important;
  border-radius:999px!important;
  font-family:var(--sans)!important;
  font-size:.68rem!important;
  letter-spacing:.095em!important;
  line-height:1.05!important;
  text-align:center!important;
  text-transform:uppercase!important;
  white-space:normal!important;
}


/* BIDOT 9.7.0 · ACCESIBILIDAD SOBRE FOTOS EN COLOR EN PLATEADO */
.hero__title,
.phero__title,
.hero__title *,
.phero__title *,
.hero__sub,
.phero__sub,
.hero p,
.phero p{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 3px 22px rgba(0,0,0,.68)!important;
}
.phero__scrim,
.hero__scrim{
  background:linear-gradient(90deg, rgba(0,0,0,.68), rgba(0,0,0,.36) 48%, rgba(0,0,0,.18))!important;
  opacity:1!important;
}


/* =====================================================================
   BIDOT 9.8.0 · TÍTULOS PERFECTAMENTE LEGIBLES SOBRE FOTOS
   Separa títulos sobre foto de títulos sobre fondo claro/oscuro.
   ===================================================================== */

/* Contenedores con imagen que pueden llevar textos encima */
.pillars__p,
.tm,
.gfig,
.book__page,
.book__page--rev,
.home-doctor__card,
.home-clinic,
.split__media,
.hero,
.phero{
  position:relative!important;
  overflow:hidden!important;
}

/* Capa oscura mínima sobre fotos claras para que el título no se pierda */
.pillars__p::after,
.tm figure::after,
.gfig::after,
.book__media::after,
.home-doctor__card::after,
.home-clinic::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background:linear-gradient(180deg, rgba(0,0,0,.16), rgba(0,0,0,.46))!important;
  z-index:1!important;
}

/* Cualquier texto encima de imagen va por encima de la capa */
.pillars__p > *,
.tm__content,
.gfig figcaption,
.book__info,
.home-doctor__overlay,
.home-clinic .split__body,
.hero__inner,
.phero__inner{
  position:relative!important;
  z-index:3!important;
}

/* Títulos encima de imagen: siempre blanco y con sombra elegante */
.pillars__p h2,
.pillars__p h3,
.pillars__p h4,
.tm__content h2,
.tm__content h3,
.tm__content h4,
.gfig figcaption h2,
.gfig figcaption h3,
.book__info h2,
.book__info h3,
.book__info h4,
.home-doctor__overlay h2,
.home-doctor__overlay h3,
.home-clinic .split__body h2,
.home-clinic .split__body h3,
.hero__title,
.phero__title,
.hero__title *,
.phero__title *{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 4px 26px rgba(0,0,0,.78)!important;
  background-image:none!important;
}

/* Texto secundario encima de imagen */
.pillars__p p,
.tm__content p,
.gfig figcaption p,
.book__info p,
.home-doctor__overlay p,
.home-clinic .split__body p,
.hero__sub,
.phero__sub{
  color:rgba(255,255,255,.94)!important;
  -webkit-text-fill-color:rgba(255,255,255,.94)!important;
  text-shadow:0 3px 22px rgba(0,0,0,.68)!important;
}

/* Acentos sobre imagen no deben quedarse negros ni apagados */
.pillars__p em,
.tm__content em,
.gfig figcaption em,
.book__info em,
.home-doctor__overlay em,
.home-clinic .split__body em,
.hero__title em,
.phero__title em,
.hero__title .accent-script,
.phero__title .accent-script{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 4px 26px rgba(0,0,0,.78)!important;
}

/* Títulos de secciones claras: negro limpio y sin sombras */
.shead h2,
.split.cream h2,
.ctaband:not(.dark) h2,
.contact__big,
.theme-selector h2,
.vals:not(.dark) h3,
.qlines h2,
.mani__txt,
.tmarq h2{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  text-shadow:none!important;
}

/* Títulos de secciones oscuras: blanco limpio */
.dark h1,
.dark h2,
.dark h3,
.dark h4,
.split.dark h2,
.ctaband.dark h2,
.qform h2,
.rwall h2,
.footer h2,
body:not(.home) .ctaband h2{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:none!important;
}

/* Si el título lleva em en fondo claro, que no se pierda */
.shead h2 em,
.split.cream h2 em,
.ctaband:not(.dark) h2 em,
.contact__big em,
.theme-selector h2 em,
.vals:not(.dark) h3 em,
.qlines em,
.mani__txt em{
  color:#111!important;
  -webkit-text-fill-color:#111!important;
  text-shadow:none!important;
}

/* Si el título lleva em en fondo oscuro, blanco */
.dark h2 em,
.split.dark h2 em,
.ctaband.dark h2 em,
.qform h2 em,
.rwall h2 em,
body:not(.home) .ctaband h2 em{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:none!important;
}

/* Refuerzo móvil: fotos más complejas, capa más fuerte */
@media(max-width:900px){
  .pillars__p::after,
  .tm figure::after,
  .gfig::after,
  .book__media::after,
  .home-doctor__card::after,
  .home-clinic::before{
    background:linear-gradient(180deg, rgba(0,0,0,.24), rgba(0,0,0,.62))!important;
  }

  .pillars__p h2,
  .pillars__p h3,
  .tm__content h3,
  .book__info h3,
  .home-clinic .split__body h2{
    text-shadow:0 4px 30px rgba(0,0,0,.84)!important;
  }
}


/* BIDOT 9.8.1 · fix sección método home: no tocar imágenes dentro de pillars */
.pillars__p > img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;z-index:0!important;flex:none!important;}
.pillars__p > .pillars__in{position:relative!important;z-index:3!important;width:100%!important;display:block!important;}
body.home .pillars{display:flex!important;align-items:stretch!important;}
body.home .pillars__p{display:flex!important;flex:1 1 0!important;min-width:0!important;align-items:flex-end!important;}
@media(max-width:900px){html.bidot-mobile body.home .pillars{display:flex!important;} html.bidot-mobile body.home .pillars__p{display:flex!important;}}


/* BIDOT 9.8.2 · accesibilidad real de títulos en fondos claros */
body .shead h2,
body .shead h2 .ln,
body .shead h2 .w,
body .shead h2 > span,
body .split:not(.dark) .split__body h2,
body .split:not(.dark) .split__body h2 .ln,
body .split:not(.dark) .split__body h2 .w,
body .split:not(.dark) .split__body h2 > span,
body .book__info h3,
body .book__info h3 .ln,
body .book__info h3 .w,
body .book__info h3 > span,
body .rwall__head h2,
body .rwall__head h2 .ln,
body .rwall__head h2 .w,
body .rwall__head h2 > span,
body .ctaband:not(.dark) h2,
body .ctaband:not(.dark) h2 .ln,
body .ctaband:not(.dark) h2 .w,
body .ctaband:not(.dark) h2 > span{
  color:var(--mid)!important;
  -webkit-text-fill-color:var(--mid)!important;
  text-shadow:none!important;
}

body .shead h2 em,
body .shead h2 em .ln,
body .shead h2 em .w,
body .split:not(.dark) .split__body h2 em,
body .split:not(.dark) .split__body h2 em .ln,
body .split:not(.dark) .split__body h2 em .w,
body .book__info h3 em,
body .book__info h3 em .ln,
body .book__info h3 em .w,
body .rwall__head h2 em,
body .rwall__head h2 em .ln,
body .rwall__head h2 em .w,
body .ctaband:not(.dark) h2 em,
body .ctaband:not(.dark) h2 em .ln,
body .ctaband:not(.dark) h2 em .w{
  color:var(--gold)!important;
  -webkit-text-fill-color:var(--gold)!important;
  text-shadow:none!important;
}

body .shead p,
body .split:not(.dark) .split__body p,
body .book__info p,
body .rwall__head p,
body .ctaband:not(.dark) p{
  color:var(--gray)!important;
  -webkit-text-fill-color:var(--gray)!important;
}

/* Home método: títulos siempre legibles sobre imagen */
body.home .pillars__in h3,
body.home .pillars__in h3 .ln,
body.home .pillars__in h3 .w,
body.home .pillars__in p,
body.home .pillars__in .eyebrow{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  text-shadow:0 2px 18px rgba(0,0,0,.42)!important;
}

/* Selector cromático / fondos claros: botones y titulares siempre visibles */
.theme-selector .btn,
.theme-selector .btn .ln,
.theme-selector .btn .w,
.theme-selector h1,
.theme-selector h2,
.theme-selector h2 .ln,
.theme-selector h2 .w{
  color:var(--mid)!important;
  -webkit-text-fill-color:var(--mid)!important;
}


/* BIDOT 9.9.0 · Selector solo con dorado y plateado */
.theme-selector__grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  max-width:780px!important;
}
@media(max-width:860px){
  .theme-selector__grid{
    grid-template-columns:1fr!important;
    max-width:420px!important;
  }
}


/* ===== BIDOT 10.0.0 · FIX BOTONES CTA FINAL ===== */
/* Botones del final de página: legibles, con contraste y consistentes */
.ctaband > a.btn,
.ctaband > .btn,
body:not(.home) .ctaband > a.btn,
body:not(.home) .ctaband > .btn,
.book-treatment-actions .btn,
.book-treatment-actions .book-treatment-action,
body:not(.home) .seccta .btn,
body:not(.home) .seccta .book-treatment-action{
  background:#efebe4!important;
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
  border:1px solid rgba(17,17,17,.16)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.08)!important;
  font-weight:600!important;
  letter-spacing:.12em!important;
  text-align:center!important;
}

.ctaband > a.btn *,
.ctaband > .btn *,
body:not(.home) .ctaband > a.btn *,
body:not(.home) .ctaband > .btn *,
.book-treatment-actions .btn *,
.book-treatment-actions .book-treatment-action *,
body:not(.home) .seccta .btn *,
body:not(.home) .seccta .book-treatment-action *{
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
}

.ctaband > a.btn:hover,
.ctaband > .btn:hover,
.book-treatment-actions .btn:hover,
.book-treatment-actions .book-treatment-action:hover,
body:not(.home) .seccta .btn:hover,
body:not(.home) .seccta .book-treatment-action:hover{
  background:#f5f1ea!important;
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
}

/* Versión plateada: mantener aspecto plata pero con contraste real */
html[data-bidot-theme="silver"] .ctaband > a.btn,
html[data-bidot-theme="silver"] .ctaband > .btn,
html[data-bidot-theme="silver"] .book-treatment-actions .btn,
html[data-bidot-theme="silver"] .book-treatment-actions .book-treatment-action,
html[data-bidot-theme="silver"] body:not(.home) .seccta .btn,
html[data-bidot-theme="silver"] body:not(.home) .seccta .book-treatment-action{
  background:#d8dde2!important;
  color:#121212!important;
  -webkit-text-fill-color:#121212!important;
  border-color:rgba(98,106,116,.55)!important;
  box-shadow:0 12px 28px rgba(69,79,90,.12)!important;
}

html[data-bidot-theme="silver"] .ctaband > a.btn:hover,
html[data-bidot-theme="silver"] .ctaband > .btn:hover,
html[data-bidot-theme="silver"] .book-treatment-actions .btn:hover,
html[data-bidot-theme="silver"] .book-treatment-actions .book-treatment-action:hover,
html[data-bidot-theme="silver"] body:not(.home) .seccta .btn:hover,
html[data-bidot-theme="silver"] body:not(.home) .seccta .book-treatment-action:hover{
  background:#e3e7eb!important;
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
}

/* Si algún botón final usa clase btn-gold, forzar el texto oscuro */
.ctaband .btn-gold,
.book-treatment-actions .btn-gold,
body:not(.home) .seccta .btn-gold{
  color:#111111!important;
  -webkit-text-fill-color:#111111!important;
}

@media (max-width:860px){
  .ctaband > a.btn,
  .ctaband > .btn,
  body:not(.home) .ctaband > a.btn,
  body:not(.home) .ctaband > .btn,
  .book-treatment-actions .btn,
  .book-treatment-actions .book-treatment-action,
  body:not(.home) .seccta .btn,
  body:not(.home) .seccta .book-treatment-action{
    min-height:56px!important;
    padding:1rem 1.4rem!important;
  }
}
