:root {
   /* Nueva paleta Zavant */
    --eggwhite: #EEE4DA;   /* Creme */
    --peach: #C8A49F;      /* Dusty Pink */
    --paprika: #C8A49F;    /* Reemplaza el naranja */
    --pumpkin: #B58D87;    /* Rosa/taupe auxiliar */
    --brick: #7A4C4B;      /* Burgundy suavizado */
    --wine: #4D0E13;       /* Burgundy oficial */

    --ink: #211B1A;
    --paper: #F8F4F0;
    --white: #FFFFFF;
    --sand: #D8C4AC;


  --muted: #756d69;
  --line: rgba(27, 23, 22, .14);
  --radius: 3px;
  --display: "Tenor Sans", serif;
  --body: "Raleway", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--paper); font-family: var(--body); font-size: 16px; line-height: 1.7; overflow-x: hidden; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button { font: inherit; }
.container { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.section-space { padding: 130px 0; }
.section-dark { color: var(--white); background: var(--wine); }
.page-noise { position: fixed; inset: 0; opacity: .025; pointer-events: none; z-index: 100; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }

h1,h2,h3 { font-family: var(--display); font-weight: 400; line-height: 1.08; margin: 0; }
h1 { font-size: clamp(3.9rem, 5.5vw, 7.4rem); letter-spacing: -.055em; }
h2 { font-size: clamp(2.7rem, 4vw, 5.3rem); letter-spacing: -.045em; }
h3 { font-size: clamp(2rem, 3vw, 3.1rem); letter-spacing: -.035em; }
em { font-family: var(--body); font-weight: 300; }
p { margin: 0; }
.eyebrow { display: flex; align-items: center; gap: 12px; margin-bottom: 22px; font-size: .72rem; text-transform: uppercase; letter-spacing: .22em; font-weight: 600; }
.eyebrow::before { content: ""; width: 30px; height: 1px; background: var(--paprika); }
.eyebrow.light::before { background: var(--peach); }
.lead { font-size: 1.35rem; line-height: 1.55; color: var(--brick); }

.site-header { position: fixed; top: 0; left: 0; right: 0; z-index: 50; height: 90px; transition: .35s ease; color: var(--white); }
.site-header.scrolled { height: 74px; background: rgba(248,245,242,.94); color: var(--ink); box-shadow: 0 1px 0 var(--line); backdrop-filter: blur(18px); }
.header-inner { height: 100%; display: grid; grid-template-columns: 180px 1fr auto; align-items: center; gap: 32px; }
.brand img { width: 164px; height: 58px; object-fit: contain; filter: invert(1); transition: .3s; }
.site-header.scrolled .brand img { filter: none; }
.main-nav { justify-self: center; display: flex; gap: 32px; }
.main-nav a { font-size: .76rem; text-transform: uppercase; letter-spacing: .12em; position: relative; }
.main-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 1px; background: currentColor; transition: .3s; }
.main-nav a:hover::after { right: 0; }
.menu-toggle { display: none; border: 0; background: transparent; width: 42px; height: 42px; padding: 10px; cursor: pointer; }
.menu-toggle span { display: block; width: 100%; height: 1px; margin: 7px 0; background: currentColor; transition: .3s; }

.button { display: inline-flex; justify-content: center; align-items: center; min-height: 54px; padding: 0 27px; border: 1px solid var(--wine); background: var(--wine); color: var(--white); font-size: .72rem; text-transform: uppercase; letter-spacing: .14em; transition: .3s; }
.button:hover { color:white !important;background: var(--brick); border-color: var(--brick); transform: translateY(-2px); }
.button-light { background: var(--eggwhite); color: var(--wine); border-color: var(--eggwhite); }
.button-light:hover { color: var(--white); background: var(--paprika); border-color: var(--paprika); }
.button-small { min-height: 43px; padding: 0 18px; border-color: rgba(255,255,255,.55); background: transparent; }
.site-header.scrolled .button-small { border-color: var(--wine); color: var(--wine); }
.text-link { display: inline-flex; align-items: center; gap: 15px; padding-bottom: 6px; border-bottom: 1px solid currentColor; text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-weight: 600; }
.text-link span { font-size: 1rem; }
.light-link { color: var(--white); }

.hero { min-height: 920px; position: relative; overflow: hidden; padding-top: 90px; display: flex; align-items: center; }
.hero::after { content: ""; position: absolute; right: -10%; top: -25%; width: 64%; height: 145%; border: 1px solid rgba(245,186,166,.2); border-radius: 50%; transform: rotate(17deg); }
.hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1.03fr .75fr; align-items: center; gap: 92px; padding: 90px 0 70px; }
.hero-copy h1 em { display: block; color: var(--peach); }
.hero-text { max-width: 620px; margin: 32px 0 38px; color: rgba(255,255,255,.75); font-size: 1.12rem; }
.hero-actions { display: flex; align-items: center; gap: 30px; }
.hero-trust { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; padding-top: 42px; margin-top: 55px; border-top: 1px solid rgba(255,255,255,.18); }
.hero-trust strong, .hero-trust span { display: block; }
.hero-trust strong { font-family: var(--display); font-size: 1.2rem; font-weight: 400; }
.hero-trust span { margin-top: 5px; color: rgba(255,255,255,.52); font-size: .76rem; line-height: 1.4; }
.hero-visual { position: relative; height: 650px; }
.photo-placeholder { position: relative; overflow: hidden; background: linear-gradient(145deg, rgba(245,186,166,.26), rgba(230,226,223,.08)); border: 1px solid rgba(255,255,255,.18); }
.photo-placeholder::before { content: ""; position: absolute; inset: 9%; border: 1px solid rgba(255,255,255,.2); }
.photo-placeholder::after { content: ""; position: absolute; width: 320px; height: 320px; border-radius: 48% 52% 57% 43%; background: radial-gradient(circle at 35% 30%, var(--peach), transparent 58%); opacity: .24; filter: blur(2px); right: -80px; bottom: -70px; }
.placeholder-label { position: absolute; left: 30px; bottom: 52px; z-index: 2; font-size: .72rem; letter-spacing: .17em; text-transform: uppercase; }
.placeholder-line { position: absolute; left: 30px; right: 30px; bottom: 42px; height: 1px; background: rgba(255,255,255,.28); }
.photo-placeholder small { position: absolute; left: 30px; bottom: 17px; color: rgba(255,255,255,.5); font-size: .68rem; }
.hero-photo { width: 90%; height: 100%; margin-left: auto; position: relative; overflow: hidden; background: #240006; border: 1px solid rgba(255,255,255,.16); }
.hero-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 48%, rgba(30,0,5,.48) 100%); pointer-events: none; }
.hero-main-image { width: 100%; height: 100%; display: block; object-fit: cover; object-position: center; transition: transform 1.2s cubic-bezier(.2,.7,.2,1); }
.hero-visual:hover .hero-main-image { transform: scale(1.025); }
.hero-seal { position: absolute; left: -65px; bottom: 50px; width: 185px; height: 185px; border-radius: 50%; padding: 32px; background: var(--peach); color: var(--wine); display: grid; place-items: center; text-align: center; box-shadow: 0 30px 70px rgba(0,0,0,.25); }
.hero-seal img { width: 55px; height: 55px; object-fit: contain; }
.hero-seal span { font-size: .64rem; text-transform: uppercase; letter-spacing: .12em; line-height: 1.5; }
.vertical-note { position: absolute; right: -37px; top: 50%; transform: rotate(90deg); transform-origin: right top; font-size: .63rem; letter-spacing: .18em; text-transform: uppercase; color: rgba(255,255,255,.45); }
.hero-orb { position: absolute; border-radius: 50%; filter: blur(90px); opacity: .18; }
.orb-one { width: 420px; height: 420px; background: var(--paprika); left: -160px; top: 10%; }
.orb-two { width: 300px; height: 300px; background: var(--peach); right: 18%; bottom: -100px; }

.brand-statement { padding: 90px 0; background: var(--eggwhite); }
.statement-grid { display: grid; grid-template-columns: .55fr 1.55fr .7fr; gap: 70px; align-items: start; }
.statement-grid h2 { font-size: clamp(2.7rem,4.4vw,4.9rem); }
.statement-grid > p:last-child { color: var(--muted); padding-top: 12px; }

.doctor-grid { display: grid; grid-template-columns: 1fr .9fr; gap: 110px; align-items: center; }
.doctor-gallery { position: relative; min-height: 720px; }
.doctor-photo-main { width: 72%; height: 650px; background: linear-gradient(145deg, #d9cbc4, #f4e5df); border: none; }
.doctor-photo-main::before, .doctor-photo-small::before { border-color: rgba(76,0,11,.16); }
.doctor-photo-main .placeholder-label, .doctor-photo-small .placeholder-label { color: var(--wine); }

.doctor-accent-card {
    position: absolute;
    top: 75px;
    right: 15px;

    width: 195px;
    min-height: 215px;
    padding: 28px 24px;

    background: var(--wine);
    color: var(--white);

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 22px;

    text-align: center;

    border-radius: 18px;

    box-shadow:
        0 20px 45px rgba(76, 0, 11, .14);

    z-index: 3;
}

.doctor-accent-card img {
    width: 58px;
    height: 58px;
    object-fit: contain;

    filter: invert(1);
    opacity: .9;
}

.doctor-accent-card p {
    margin: 0;

    font-family: var(--display);
    font-size: 1.15rem;
    line-height: 1.4;

    text-align: center;
}
.doctor-photo-small { position: absolute; right: 5px; bottom: 0; width: 42%; height: 280px; background: linear-gradient(145deg, var(--peach), #f4d5ca); border: 8px solid var(--paper); }
.doctor-copy h2 { margin-bottom: 28px; }
.doctor-copy > p:not(.eyebrow):not(.license) { margin-bottom: 22px; }
.credentials { margin-top: 44px; border-top: 1px solid var(--line); }
.credentials > div { display: grid; grid-template-columns: 55px 1fr; gap: 15px; padding: 22px 0; border-bottom: 1px solid var(--line); }
.credentials span { color: var(--paprika); font-size: .75rem; letter-spacing: .15em; }
.credentials p { color: var(--muted); font-size: .91rem; line-height: 1.55; }
.credentials strong { display: block; color: var(--ink); font-size: 1rem; margin-bottom: 4px; }
.license { margin-top: 25px; font-size: .69rem; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }

.treatments { background: #f3efec; }
.section-heading { display: grid; grid-template-columns: 1.6fr .65fr; gap: 70px; align-items: end; margin-bottom: 75px; }
.section-heading > p { color: var(--muted); }
.treatment-list { border-top: 1px solid var(--line); }
.treatment-card { position: relative; display: grid; grid-template-columns: 75px .8fr 1fr; gap: 62px; align-items: center; padding: 70px 0; border-bottom: 1px solid var(--line); }
.treatment-card.reverse { grid-template-columns: 75px 1fr .8fr; }
.treatment-card.reverse .treatment-visual { order: 3; }
.treatment-card.reverse .treatment-copy { order: 2; }
.treatment-number { align-self: start; color: var(--paprika); letter-spacing: .18em; font-size: .72rem; }
.treatment-visual { min-height: 430px; position: relative; overflow: hidden; display: flex; align-items: flex-end; padding: 28px; }
.treatment-visual > span { color: white; text-transform: uppercase; letter-spacing: .16em; font-size: .69rem; position: relative; z-index: 2; }
.tone-peach { background: var(--peach); }
.tone-paprika { background: var(--paprika); }
.tone-wine { background: var(--wine); }
.abstract-skin { position: absolute; width: 430px; height: 540px; border-radius: 48% 52% 43% 57%; right: -120px; top: -80px; background: linear-gradient(140deg, rgba(255,255,255,.75), transparent 40%), radial-gradient(circle at 25% 40%, #fbe0d6, #b75d4d 75%); transform: rotate(-19deg); }
.abstract-grid { position: absolute; inset: -20%; background-image: linear-gradient(rgba(255,255,255,.13) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.13) 1px, transparent 1px); background-size: 30px 30px; transform: perspective(500px) rotateX(58deg) rotateZ(-15deg); }
.abstract-wave { position: absolute; inset: 0; background: radial-gradient(ellipse at 20% 30%, rgba(245,186,166,.8), transparent 35%), radial-gradient(ellipse at 80% 65%, rgba(220,78,69,.65), transparent 30%); }
.abstract-wave::after { content: ""; position: absolute; width: 150%; height: 70%; left: -25%; top: 15%; border: 2px solid rgba(255,255,255,.28); border-radius: 50%; transform: rotate(-20deg); box-shadow: 0 0 0 28px rgba(255,255,255,.035), 0 0 0 58px rgba(255,255,255,.025); }
.treatment-copy h3 { margin-bottom: 24px; }
.treatment-copy > p:not(.eyebrow) { color: var(--muted); }
.treatment-copy ul { list-style: none; padding: 0; margin: 28px 0 32px; }
.treatment-copy li { padding: 9px 0 9px 22px; position: relative; border-bottom: 1px solid var(--line); font-size: .88rem; }
.treatment-copy li::before { content: "•"; position: absolute; left: 2px; color: var(--paprika); }

.experience { position: relative; overflow: hidden; }
.experience-glow { position: absolute; width: 800px; height: 800px; border-radius: 50%; background: radial-gradient(circle, rgba(220,78,69,.23), transparent 66%); right: -300px; top: -300px; }
.light-heading { position: relative; z-index: 2; }
.light-heading > p { color: rgba(255,255,255,.62); }
.experience-grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); }
.experience-item { padding: 43px 30px 48px; border-right: 1px solid rgba(255,255,255,.18); }
.experience-item:first-child { padding-left: 0; }
.experience-item:last-child { border-right: 0; }
.experience-item span { display: block; margin-bottom: 55px; color: var(--peach); font-size: .7rem; letter-spacing: .17em; }
.experience-item h3 { font-size: 1.55rem; margin-bottom: 18px; }
.experience-item p { color: rgba(255,255,255,.58); font-size: .88rem; line-height: 1.65; }
.experience-photo { margin-top: 80px; position: relative; }
.wide-photo { height: 530px; background: linear-gradient(125deg, rgba(245,186,166,.18), rgba(255,255,255,.04)); }
.experience-quote { position: absolute; right: -1px; bottom: -1px; width: min(480px, 55%); padding: 45px 50px; background: var(--peach); color: var(--wine); font-family: var(--display); font-size: 1.7rem; line-height: 1.35; }

.rating { display: flex; gap: 18px; align-items: center; }
.rating strong { font-family: var(--display); font-size: 3rem; }
.rating span { color: var(--paprika); line-height: 1.35; font-size: .8rem; }
.testimonial-track { min-height: 315px; position: relative; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.testimonial { display: none; padding: 58px 9%; animation: fadeSlide .55s ease; }
.testimonial.active { display: block; }
.testimonial > p { max-width: 900px; font-family: var(--display); font-size: clamp(1.7rem,3vw,3.1rem); line-height: 1.35; }
.testimonial footer { display: flex; align-items: center; gap: 15px; margin-top: 35px; }
.testimonial footer > span { width: 44px; height: 44px; border-radius: 50%; background: var(--peach); display: grid; place-items: center; color: var(--wine); font-size: .7rem; }
.testimonial strong, .testimonial small { display: block; }
.testimonial small { color: var(--muted); }
.slider-controls { display: flex; justify-content: flex-end; align-items: center; gap: 22px; margin-top: 22px; }
.slider-controls button { border: 1px solid var(--line); width: 48px; height: 48px; background: transparent; cursor: pointer; transition: .2s; }
.slider-controls button:hover { background: var(--wine); color: white; }
.slider-dots { display: flex; gap: 7px; }
.slider-dots span { width: 21px; height: 2px; background: #ccc; }
.slider-dots span.active { background: var(--wine); }
@keyframes fadeSlide { from { opacity: 0; transform: translateX(15px); } to { opacity: 1; transform: translateX(0); } }

.faq { background: var(--eggwhite); }
.faq-grid { display: grid; grid-template-columns: .75fr 1.2fr; gap: 120px; }
.faq-intro h2 { margin-bottom: 30px; }
.faq-intro > p:not(.eyebrow) { color: var(--muted); margin-bottom: 35px; }
.accordion { border-top: 1px solid rgba(76,0,11,.2); }
.accordion-item { border-bottom: 1px solid rgba(76,0,11,.2); }
.accordion-item button { width: 100%; border: 0; background: none; display: flex; align-items: center; justify-content: space-between; padding: 25px 0; text-align: left; cursor: pointer; }
.accordion-item button span { font-family: var(--display); font-size: 1.3rem; }
.accordion-item i { width: 18px; height: 18px; position: relative; }
.accordion-item i::before, .accordion-item i::after { content: ""; position: absolute; left: 0; top: 8px; width: 18px; height: 1px; background: var(--wine); transition: .3s; }
.accordion-item i::after { transform: rotate(90deg); }
.accordion-item.open i::after { transform: rotate(0); }
.accordion-content { max-height: 0; overflow: hidden; transition: max-height .4s ease; }
.accordion-content p { padding: 0 50px 28px 0; color: var(--muted); }
.accordion-item.open .accordion-content { max-height: 160px; }

.contact { padding: 115px 0; position: relative; }
.contact::before { content: ""; position: absolute; width: 310px; height: 310px; left: -100px; top: -100px; border-radius: 50%; border: 60px solid rgba(245,186,166,.05); }
.contact-grid { display: grid; grid-template-columns: 1.1fr .8fr; gap: 110px; position: relative; }
.contact-copy h2 { margin-bottom: 30px; }
.contact-copy > p:not(.eyebrow) { color: rgba(255,255,255,.65); max-width: 650px; margin-bottom: 38px; }
.contact-info { border-top: 1px solid rgba(255,255,255,.22); }
.contact-info > div { display: grid; grid-template-columns: 120px 1fr; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.22); }
.contact-info span { color: var(--peach); font-size: .68rem; text-transform: uppercase; letter-spacing: .15em; }
.contact-info p { color: rgba(255,255,255,.7); font-size: .89rem; }

.site-footer { padding: 65px 0 25px; background: #f8f5f2; }
.footer-main { display: grid; grid-template-columns: 220px 1fr auto; align-items: center; padding-bottom: 45px; }
.footer-main > img { width: 190px; height: 70px; object-fit: contain; }
.footer-links { justify-self: center; display: flex; gap: 32px; font-size: .73rem; text-transform: uppercase; letter-spacing: .12em; }
.footer-instagram { font-size: .73rem; text-transform: uppercase; letter-spacing: .12em; }
.footer-legal { display: flex; justify-content: space-between; gap: 20px; padding-top: 22px; border-top: 1px solid var(--line); color: var(--muted); font-size: .63rem; text-transform: uppercase; letter-spacing: .08em; }
.whatsapp-float { position: fixed; z-index: 40; right: 22px; bottom: 22px; min-width: 142px; height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 17px; background: var(--wine); color: white; box-shadow: 0 12px 34px rgba(76,0,11,.24); font-size: .69rem; text-transform: uppercase; letter-spacing: .12em; }

.reveal { opacity: 0; transform: translateY(25px); transition: opacity .8s ease, transform .8s ease; }
.reveal.visible { opacity: 1; transform: translateY(0); }
.delay-1 { transition-delay: .12s; } .delay-2 { transition-delay: .22s; } .delay-3 { transition-delay: .32s; }

@media (max-width: 1020px) {
  .header-inner { grid-template-columns: 160px 1fr auto; }
  .main-nav { gap: 17px; }
  .main-nav a { font-size: .68rem; }
  .header-cta { display: none; }
  .hero-grid { gap: 40px; }
  .hero-trust { grid-template-columns: 1fr; gap: 15px; }
  .hero-trust div { display: grid; grid-template-columns: 130px 1fr; }
  .statement-grid { grid-template-columns: 1fr 2fr; }
  .statement-grid > p:last-child { grid-column: 2; }
  .doctor-grid { gap: 55px; }
  .treatment-card, .treatment-card.reverse { grid-template-columns: 45px 1fr 1fr; gap: 30px; }
  .experience-grid { grid-template-columns: repeat(2,1fr); }
  .experience-item:nth-child(2) { border-right: 0; }
  .experience-item:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.18); }
  .faq-grid { gap: 60px; }
  @media (max-width: 1020px) {

    .doctor-gallery {
        min-height: 650px;
    }

    .doctor-photo-main {
        width: 78%;
        height: 580px;
    }

    .doctor-accent-card {
        top: auto;
        right: 0;
        bottom: 55px;

        width: 175px;
        min-height: 185px;

        padding: 24px 20px;
        gap: 16px;

        border-radius: 16px;
    }

    .doctor-accent-card img {
        width: 48px;
        height: 48px;
    }

    .doctor-accent-card p {
        font-size: 1rem;
        line-height: 1.35;
    }

}
}

@media (max-width: 780px) {
  .container { width: min(100% - 30px, 620px); }
  .section-space { padding: 88px 0; }
  h1 { font-size: clamp(3.25rem,15vw,5.5rem); }
  h2 { font-size: clamp(2.55rem,11vw,4.2rem); }
  .site-header, .site-header.scrolled { height: 70px; }
  .header-inner { grid-template-columns: 145px 1fr 44px; }
  .brand img { width: 140px; height: 52px; }
  .menu-toggle { display: block; justify-self: end; }
  .menu-toggle.active span:first-child { transform: translateY(4px) rotate(45deg); }
  .menu-toggle.active span:last-child { transform: translateY(-4px) rotate(-45deg); }
  .main-nav { position: fixed; inset: 70px 0 0; background: var(--paper); color: var(--ink); display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 28px; transform: translateX(100%); transition: transform .4s ease; }
  .main-nav.open { transform: translateX(0); }
  .main-nav a { font-family: var(--display); font-size: 1.7rem; text-transform: none; letter-spacing: 0; }
  .hero { min-height: auto; }
  .hero-grid { grid-template-columns: 1fr; padding-top: 120px; }
  .hero-text { font-size: 1rem; }
  .hero-actions { align-items: flex-start; flex-direction: column; }
  .hero-trust { grid-template-columns: repeat(3,1fr); }
  .hero-trust div { display: block; }
  .hero-visual { height: 520px; margin-top: 20px; }
  .hero-photo { width: 93%; }
  .hero-seal { width: 145px; height: 145px; left: -3px; padding: 25px; }
  .hero-seal img { width: 42px; height: 42px; }
  .vertical-note { display: none; }
  .statement-grid, .section-heading, .doctor-grid, .faq-grid, .contact-grid { grid-template-columns: 1fr; gap: 40px; }
  .statement-grid > p:last-child { grid-column: auto; }
  @media (max-width: 780px) {

    .doctor-gallery {
        min-height: 590px;
    }

    .doctor-photo-main {
        width: 78%;
        height: 520px;
    }

    .doctor-accent-card {
        top: auto;
        right: 0;
        bottom: 265px;

        width: 165px;
        min-height: 175px;

        padding: 22px 18px;
        gap: 14px;

        border-radius: 15px;
    }

    .doctor-accent-card img {
        width: 44px;
        height: 44px;
    }

    .doctor-accent-card p {
        font-size: .95rem;
        line-height: 1.35;
    }
    .doctor-copy{
      margin-top: 260px;
    }

}
  .doctor-photo-small { height: 210px; }
  .treatment-card, .treatment-card.reverse { grid-template-columns: 1fr; gap: 25px; }
  .treatment-card.reverse .treatment-visual, .treatment-card.reverse .treatment-copy { order: initial; }
  .treatment-number { position: absolute; top: 25px; z-index: 3; left: 18px; color: white; }
  .treatment-visual { min-height: 370px; }
  .experience-grid { grid-template-columns: 1fr; }
  .experience-item { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); padding-left: 0; }
  .experience-item span { margin-bottom: 30px; }
  .experience-quote { width: calc(100% - 20px); padding: 28px; font-size: 1.35rem; }
  .wide-photo { height: 430px; }
  .testimonial { padding: 40px 0; }
  .footer-main { grid-template-columns: 1fr; justify-items: center; gap: 25px; }
  .footer-links { justify-self: center; flex-wrap: wrap; justify-content: center; }
  .footer-legal { flex-direction: column; text-align: center; }
}

@media (max-width: 520px) {
  .hero-trust { grid-template-columns: 1fr; }
  .hero-trust div { display: grid; grid-template-columns: 120px 1fr; }
@media (max-width: 520px) {

    .doctor-gallery {
        min-height: 520px;
    }

    .doctor-photo-main {
        width: 82%;
        height: 450px;
    }

    .doctor-accent-card {
        top: auto;
        right: 0;
        bottom: 280px;

        width: 145px;
        min-height: 155px;

        padding: 18px 15px;
        gap: 12px;

        border-radius: 14px;
    }

    .doctor-accent-card img {
        width: 38px;
        height: 38px;
    }

    .doctor-accent-card p {
        font-size: .86rem;
        line-height: 1.35;
    }
    .doctor-copy{
      margin-top: 230px;
    }

}
  .doctor-photo-small { width: 47%; height: 180px; }
  .contact-info > div { grid-template-columns: 1fr; gap: 6px; }
  .whatsapp-float { min-width: auto; width: 48px; padding: 0; justify-content: center; border-radius: 50%; }
  .whatsapp-float span { display: none; }
}

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

/* Responsive navigation refinement — tablet and mobile */
@media (max-width: 1100px) {
  .site-header,
  .site-header.scrolled {
    height: 76px;
  }

  .site-header.menu-active {
    background: var(--wine);
    color: var(--white);
    box-shadow: none;
  }

  .site-header.menu-active .brand img,
  .site-header.scrolled.menu-active .brand img {
    filter: invert(1);
  }

  .header-inner {
    position: relative;
    z-index: 52;
    grid-template-columns: 1fr auto;
    gap: 20px;
  }

  .brand {
    position: relative;
    z-index: 53;
    justify-self: start;
  }

  .brand img {
    width: 150px;
    height: 54px;
  }

  .header-cta {
    display: none;
  }

  .menu-toggle {
    position: relative;
    z-index: 53;
    display: block;
    justify-self: end;
    width: 48px;
    height: 48px;
    padding: 12px;
    color: currentColor;
    border: 1px solid currentColor;
  }

  .menu-toggle span {
    transform-origin: center;
    margin: 6px 0;
  }

  .menu-toggle.active span:first-child {
    transform: translateY(3.5px) rotate(45deg);
  }

  .menu-toggle.active span:last-child {
    transform: translateY(-3.5px) rotate(-45deg);
  }

  .main-nav {
    position: fixed;
    z-index: 51;
    inset: 0;
    width: 100vw;
    height: 100dvh;
    min-height: 100vh;
    padding: 110px 28px 46px;
    margin: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: clamp(18px, 3.5vh, 34px);
    justify-self: stretch;
    overflow-y: auto;
    background:
      radial-gradient(circle at 15% 20%, rgba(220,78,69,.22), transparent 34%),
      radial-gradient(circle at 88% 82%, rgba(245,186,166,.13), transparent 30%),
      var(--wine);
    color: var(--white);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(-18px);
    transition: opacity .32s ease, transform .32s ease, visibility .32s ease;
  }

  .main-nav::before {
    content: "";
    position: absolute;
    inset: 96px 24px 24px;
    border: 1px solid rgba(245,186,166,.18);
    pointer-events: none;
  }

  .main-nav.open {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateY(0);
  }

  .main-nav a {
    position: relative;
    z-index: 1;
    width: min(560px, 100%);
    padding: 4px 0;
    font-family: var(--display);
    font-size: clamp(2rem, 5.4vw, 3.6rem);
    line-height: 1.08;
    text-align: center;
    text-transform: none;
    letter-spacing: -.035em;
    color: var(--white);
  }

  .main-nav a::after {
    left: 50%;
    right: 50%;
    bottom: -6px;
    background: var(--peach);
  }

  .main-nav a:hover::after,
  .main-nav a:focus-visible::after {
    left: 28%;
    right: 28%;
  }
}

@media (max-width: 780px) {
  .site-header,
  .site-header.scrolled {
    height: 70px;
  }

  .header-inner {
    grid-template-columns: 1fr auto;
  }

  .brand img {
    width: 132px;
    height: 48px;
  }

  .menu-toggle {
    width: 44px;
    height: 44px;
    padding: 10px;
  }

  .main-nav {
    padding: 94px 22px 34px;
    gap: clamp(20px, 4vh, 30px);
  }

  .main-nav::before {
    inset: 82px 15px 15px;
  }

  .main-nav a {
    width: 100%;
    font-size: clamp(2rem, 9vw, 3rem);
  }
}

@media (max-width: 420px) {
  .main-nav {
    justify-content: center;
    gap: 20px;
  }

  .main-nav a {
    font-size: clamp(1.8rem, 9vw, 2.45rem);
  }
}


/* ===== Shared treatment page styles ===== */


body.page-depilacion *{ box-sizing: border-box; }
body.page-depilacion{ scroll-behavior: smooth; }
body.page-depilacion{ margin: 0; color: var(--ink); background: var(--paper); font-family: var(--body); font-size: 16px; line-height: 1.7; overflow-x: hidden; }
body.page-depilacion.menu-open{ overflow: hidden; }
body.page-depilacion a{ color: inherit; text-decoration: none; }
body.page-depilacion img{ display: block; max-width: 100%; }
body.page-depilacion button{ font: inherit; }
body.page-depilacion .container{ width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
body.page-depilacion .section-space{ padding: 125px 0; }
body.page-depilacion .section-dark{ color: var(--white); background: var(--wine); }
body.page-depilacion .page-noise{ position: fixed; inset: 0; opacity: .025; pointer-events: none; z-index: 100; background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E"); }

body.page-depilacion h1, body.page-depilacion h2, body.page-depilacion h3{ font-family: var(--display); font-weight: 400; line-height: 1.08; margin: 0; }
body.page-depilacion h1{ font-size: clamp(3.6rem, 5.5vw, 6.8rem); letter-spacing: -.055em; }
body.page-depilacion h2{ font-size: clamp(2.65rem, 4vw, 5rem); letter-spacing: -.045em; }
body.page-depilacion h3{ font-size: clamp(1.55rem, 2.4vw, 2.4rem); letter-spacing: -.03em; }
body.page-depilacion em{ font-family: var(--body); font-weight: 300; }
body.page-depilacion p{ margin: 0; }
body.page-depilacion .eyebrow{ display: flex; align-items: center; gap: 12px; margin-bottom: 22px; font-size: .72rem; text-transform: uppercase; letter-spacing: .22em; font-weight: 600; }
body.page-depilacion .eyebrow::before{ content: ""; width: 30px; height: 1px; background: var(--paprika); }
body.page-depilacion .eyebrow.light::before{ background: var(--peach); }
body.page-depilacion .lead{ font-size: 1.3rem; line-height: 1.55; color: var(--brick); }

body.page-depilacion .site-header{ position: fixed; inset: 0 0 auto; z-index: 50; height: 90px; color: var(--white); transition: .35s ease; }
body.page-depilacion .site-header.scrolled{ height: 74px; background: rgba(248,245,242,.94); color: var(--ink); box-shadow: 0 1px 0 var(--line); backdrop-filter: blur(18px); }
body.page-depilacion .header-inner{ height: 100%; display: grid; grid-template-columns: 180px 1fr auto; align-items: center; gap: 32px; }
body.page-depilacion .brand img{ width: 164px; height: 58px; object-fit: contain; filter: invert(1); transition: .3s; }
body.page-depilacion .site-header.scrolled .brand img{ filter: none; }
body.page-depilacion .main-nav{ justify-self: center; display: flex; gap: 28px; }
body.page-depilacion .main-nav a{ font-size: .72rem; text-transform: uppercase; letter-spacing: .11em; position: relative; }
body.page-depilacion .main-nav a::after{ content: ""; position: absolute; left: 0; right: 100%; bottom: -8px; height: 1px; background: currentColor; transition: .3s; }
body.page-depilacion .main-nav a:hover::after{ right: 0; }
body.page-depilacion .menu-toggle{ display: none; border: 0; background: transparent; width: 42px; height: 42px; padding: 10px; cursor: pointer; }
body.page-depilacion .menu-toggle span{ display: block; width: 100%; height: 1px; margin: 7px 0; background: currentColor; transition: .3s; }

body.page-depilacion .button{ display: inline-flex; justify-content: center; align-items: center; min-height: 54px; padding: 0 27px; border: 1px solid var(--wine); background: var(--wine); color: var(--white); font-size: .72rem; text-transform: uppercase; letter-spacing: .14em; text-align: center; transition: .3s; }
body.page-depilacion .button:hover{ background: var(--brick); border-color: var(--brick); transform: translateY(-2px); }
body.page-depilacion .button-light{ background: var(--eggwhite); color: var(--wine); border-color: var(--eggwhite); }
body.page-depilacion .button-light:hover{ color: var(--white); background: var(--paprika); border-color: var(--paprika); }
body.page-depilacion .button-small{ min-height: 43px; padding: 0 18px; border-color: rgba(255,255,255,.55); background: transparent; }
body.page-depilacion .site-header.scrolled .button-small{ border-color: var(--wine); color: var(--wine); }
body.page-depilacion .text-link{ display: inline-flex; align-items: center; gap: 15px; padding-bottom: 6px; border-bottom: 1px solid currentColor; text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-weight: 600; }
body.page-depilacion .text-link span{ font-size: 1rem; }
body.page-depilacion .light-link{ color: var(--white); }

body.page-depilacion .laser-hero{ min-height: 900px; position: relative; overflow: hidden; padding-top: 90px; display: flex; align-items: center; }
body.page-depilacion .laser-hero::after{ content: ""; position: absolute; right: -12%; top: -30%; width: 62%; height: 150%; border: 1px solid rgba(245,186,166,.18); border-radius: 50%; transform: rotate(17deg); }
body.page-depilacion .laser-hero-grid{ position: relative; z-index: 2; display: grid; grid-template-columns: 1.05fr .78fr; align-items: center; gap: 88px; padding: 80px 0 60px; }
body.page-depilacion .laser-hero-copy h1 em{ display: block; color: var(--peach); }
body.page-depilacion .hero-text{ max-width: 660px; margin: 30px 0 36px; color: rgba(255,255,255,.74); font-size: 1.1rem; }
body.page-depilacion .hero-actions{ display: flex; align-items: center; gap: 28px; }
body.page-depilacion .hero-trust{ display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; padding-top: 40px; margin-top: 52px; border-top: 1px solid rgba(255,255,255,.18); }
body.page-depilacion .hero-trust strong, body.page-depilacion .hero-trust span{ display: block; }
body.page-depilacion .hero-trust strong{ font-family: var(--display); font-size: 1.15rem; font-weight: 400; }
body.page-depilacion .hero-trust span{ margin-top: 5px; color: rgba(255,255,255,.5); font-size: .76rem; line-height: 1.4; }
body.page-depilacion .laser-hero-visual{ position: relative; height: 640px; }
body.page-depilacion .laser-art{ width: 90%; height: 100%; margin-left: auto; position: relative; overflow: hidden; border: 1px solid rgba(255,255,255,.16); background: linear-gradient(150deg,#2a0007,#6c2b1e 58%,#dc4e45); }
body.page-depilacion .laser-art::before{ content: ""; position: absolute; inset: 8%; border: 1px solid rgba(255,255,255,.18); }
body.page-depilacion .laser-grid{ position: absolute; inset: 0; opacity: .22; background-image: linear-gradient(rgba(255,255,255,.16) 1px, transparent 1px),linear-gradient(90deg,rgba(255,255,255,.16) 1px,transparent 1px); background-size: 34px 34px; transform: perspective(550px) rotateX(58deg) rotateZ(-20deg) scale(1.5); }
body.page-depilacion .skin-shape{ position: absolute; border-radius: 48% 52% 56% 44%; filter: saturate(.9); }
body.page-depilacion .skin-shape-one{ width: 420px; height: 570px; right: -130px; top: 20px; transform: rotate(-17deg); background: radial-gradient(circle at 30% 30%,#ffe9df,#f5baa6 48%,#b9584f 78%); box-shadow: inset 40px 0 70px rgba(255,255,255,.25); }
body.page-depilacion .skin-shape-two{ width: 250px; height: 370px; left: -90px; bottom: -80px; background: radial-gradient(circle at 70% 28%,#fbd9cd,#dc4e45 70%); opacity: .85; }
body.page-depilacion .laser-beam{ position: absolute; z-index: 4; width: 420px; height: 2px; left: 10%; top: 47%; background: linear-gradient(90deg,transparent,#fff 45%,#f5baa6 60%,transparent); transform: rotate(-18deg); box-shadow: 0 0 18px #fff,0 0 42px var(--peach); }
body.page-depilacion .laser-beam::after{ content: ""; position: absolute; right: 28%; top: -6px; width: 13px; height: 13px; border-radius: 50%; background: #fff; box-shadow: 0 0 18px 8px rgba(255,255,255,.7),0 0 45px 18px rgba(245,186,166,.45); }
body.page-depilacion .visual-label{ position: absolute; z-index: 5; left: 30px; bottom: 28px; color: #fff; font-size: .67rem; text-transform: uppercase; letter-spacing: .16em; }
body.page-depilacion .hero-seal{ position: absolute; left: -55px; bottom: 48px; width: 180px; height: 180px; border-radius: 50%; padding: 30px; background: var(--peach); color: var(--wine); display: grid; place-items: center; text-align: center; box-shadow: 0 30px 70px rgba(0,0,0,.25); }
body.page-depilacion .hero-seal img{ width: 54px; height: 54px; object-fit: contain; }
body.page-depilacion .hero-seal span{ font-size: .62rem; text-transform: uppercase; letter-spacing: .12em; line-height: 1.5; }
body.page-depilacion .vertical-note{ position: absolute; right: -39px; top: 50%; transform: rotate(90deg); transform-origin: right top; font-size: .62rem; letter-spacing: .18em; text-transform: uppercase; color: rgba(255,255,255,.43); }
body.page-depilacion .hero-orb{ position: absolute; border-radius: 50%; filter: blur(90px); opacity: .18; }
body.page-depilacion .orb-one{ width: 420px; height: 420px; background: var(--paprika); left: -160px; top: 10%; }
body.page-depilacion .orb-two{ width: 300px; height: 300px; background: var(--peach); right: 18%; bottom: -100px; }

body.page-depilacion .intro-section{ background: var(--eggwhite); }
body.page-depilacion .intro-grid{ display: grid; grid-template-columns: .42fr 1.58fr; gap: 80px; }
body.page-depilacion .section-kicker span{ display: block; margin-top: 80px; color: rgba(76,0,11,.14); font-family: var(--display); font-size: 9rem; line-height: 1; }
body.page-depilacion .intro-copy{ max-width: 850px; }
body.page-depilacion .intro-copy h2{ margin-bottom: 32px; }
body.page-depilacion .intro-copy p{ margin-bottom: 22px; }

body.page-depilacion .why-section{ background: #f3efec; }
body.page-depilacion .section-heading{ display: grid; grid-template-columns: 1.55fr .65fr; gap: 70px; align-items: end; margin-bottom: 70px; }
body.page-depilacion .section-heading > p{ color: var(--muted); }
body.page-depilacion .benefit-grid{ display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
body.page-depilacion .benefit-card{ padding: 42px 28px 48px; border-right: 1px solid var(--line); }
body.page-depilacion .benefit-card:first-child{ padding-left: 0; }
body.page-depilacion .benefit-card:last-child{ border-right: 0; }
body.page-depilacion .benefit-card > span{ display: block; margin-bottom: 70px; color: var(--paprika); font-size: .7rem; letter-spacing: .17em; }
body.page-depilacion .benefit-card h3{ margin-bottom: 18px; }
body.page-depilacion .benefit-card p{ color: var(--muted); font-size: .9rem; }

body.page-depilacion .process-section{ position: relative; overflow: hidden; }
body.page-depilacion .process-glow{ position: absolute; width: 750px; height: 750px; border-radius: 50%; background: radial-gradient(circle,rgba(220,78,69,.25),transparent 67%); right: -280px; top: -300px; }
body.page-depilacion .light-heading{ position: relative; z-index: 2; }
body.page-depilacion .light-heading > p{ color: rgba(255,255,255,.6); }
body.page-depilacion .process-list{ position: relative; z-index: 2; display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); }
body.page-depilacion .process-item{ padding: 45px 30px 52px; border-right: 1px solid rgba(255,255,255,.18); }
body.page-depilacion .process-item:first-child{ padding-left: 0; }
body.page-depilacion .process-item:last-child{ border-right: 0; }
body.page-depilacion .process-number{ margin-bottom: 62px; color: var(--peach); font-size: .72rem; letter-spacing: .17em; }
body.page-depilacion .process-item h3{ margin-bottom: 18px; }
body.page-depilacion .process-item p{ color: rgba(255,255,255,.58); font-size: .88rem; }

body.page-depilacion .sessions-section{ background: var(--paper); }
body.page-depilacion .sessions-grid{ display: grid; grid-template-columns: .82fr 1fr; gap: 105px; align-items: center; }
body.page-depilacion .sessions-visual{ position: relative; min-height: 560px; display: grid; place-content: center; text-align: center; background: var(--peach); overflow: hidden; }
body.page-depilacion .sessions-visual::before{ content: ""; position: absolute; inset: 8%; border: 1px solid rgba(76,0,11,.18); }
body.page-depilacion .sessions-visual strong{ position: relative; z-index: 2; display: block; color: var(--wine); font-family: var(--display); font-size: clamp(7rem,13vw,11rem); line-height: .8; font-weight: 400; letter-spacing: -.08em; }
body.page-depilacion .sessions-visual span{ position: relative; z-index: 2; margin-top: 25px; color: var(--wine); text-transform: uppercase; letter-spacing: .16em; font-size: .72rem; line-height: 1.5; }
body.page-depilacion .session-ring{ position: absolute; border-radius: 50%; border: 1px solid rgba(76,0,11,.2); }
body.page-depilacion .ring-one{ width: 470px; height: 470px; left: -90px; top: -110px; }
body.page-depilacion .ring-two{ width: 320px; height: 320px; right: -70px; bottom: -90px; border-width: 70px; opacity: .25; }
body.page-depilacion .sessions-copy h2{ margin-bottom: 28px; }
body.page-depilacion .sessions-copy p{ margin-bottom: 21px; }
body.page-depilacion .sessions-copy .text-link{ margin-top: 13px; }

body.page-depilacion .suitability-section{ background: var(--eggwhite); }
body.page-depilacion .suitability-grid{ display: grid; grid-template-columns: 1.2fr .8fr; gap: 90px; align-items: stretch; }
body.page-depilacion .suitability-copy h2{ margin-bottom: 28px; }
body.page-depilacion .suitability-copy > p:not(.eyebrow){ max-width: 670px; color: var(--muted); }
body.page-depilacion .zone-list{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 40px; }
body.page-depilacion .zone-list span{ padding: 11px 18px; border: 1px solid rgba(76,0,11,.2); color: var(--wine); font-size: .73rem; text-transform: uppercase; letter-spacing: .12em; }
body.page-depilacion .medical-note{ padding: 55px; background: var(--wine); color: var(--white); }
body.page-depilacion .medical-note h3{ font-size: 2.3rem; margin-bottom: 28px; }
body.page-depilacion .medical-note > p:not(.eyebrow){ color: rgba(255,255,255,.65); margin-bottom: 20px; }

body.page-depilacion .comfort-section{ background: #f3efec; }
body.page-depilacion .comfort-grid{ display: grid; grid-template-columns: .75fr 1.25fr; gap: 100px; }
body.page-depilacion .comfort-copy{ padding-top: 10px; }
body.page-depilacion .comfort-copy p{ margin-bottom: 22px; }

body.page-depilacion .faq{ background: var(--eggwhite); }
body.page-depilacion .faq-grid{ display: grid; grid-template-columns: .75fr 1.2fr; gap: 120px; }
body.page-depilacion .faq-intro h2{ margin-bottom: 30px; }
body.page-depilacion .faq-intro > p:not(.eyebrow){ color: var(--muted); margin-bottom: 35px; }
body.page-depilacion .accordion{ border-top: 1px solid rgba(76,0,11,.2); }
body.page-depilacion .accordion-item{ border-bottom: 1px solid rgba(76,0,11,.2); }
body.page-depilacion .accordion-item button{ width: 100%; border: 0; background: none; display: flex; align-items: center; justify-content: space-between; padding: 25px 0; text-align: left; cursor: pointer; }
body.page-depilacion .accordion-item button span{ font-family: var(--display); font-size: 1.3rem; }
body.page-depilacion .accordion-item i{ width: 18px; height: 18px; position: relative; flex: 0 0 18px; margin-left: 20px; }
body.page-depilacion .accordion-item i::before, body.page-depilacion .accordion-item i::after{ content: ""; position: absolute; left: 0; top: 8px; width: 18px; height: 1px; background: var(--wine); transition: .3s; }
body.page-depilacion .accordion-item i::after{ transform: rotate(90deg); }
body.page-depilacion .accordion-item.open i::after{ transform: rotate(0); }
body.page-depilacion .accordion-content{ max-height: 0; overflow: hidden; transition: max-height .4s ease; }
body.page-depilacion .accordion-content p{ padding: 0 50px 28px 0; color: var(--muted); }
body.page-depilacion .accordion-item.open .accordion-content{ max-height: 220px; }

body.page-depilacion .contact{ padding: 115px 0; position: relative; }
body.page-depilacion .contact::before{ content: ""; position: absolute; width: 310px; height: 310px; left: -100px; top: -100px; border-radius: 50%; border: 60px solid rgba(245,186,166,.05); }
body.page-depilacion .contact-grid{ display: grid; grid-template-columns: 1.1fr .8fr; gap: 110px; position: relative; }
body.page-depilacion .contact-copy h2{ margin-bottom: 30px; }
body.page-depilacion .contact-copy > p:not(.eyebrow){ color: rgba(255,255,255,.65); max-width: 650px; margin-bottom: 38px; }
body.page-depilacion .contact-info{ border-top: 1px solid rgba(255,255,255,.22); }
body.page-depilacion .contact-info > div{ display: grid; grid-template-columns: 120px 1fr; padding: 24px 0; border-bottom: 1px solid rgba(255,255,255,.22); }
body.page-depilacion .contact-info span{ color: var(--peach); font-size: .68rem; text-transform: uppercase; letter-spacing: .15em; }
body.page-depilacion .contact-info p{ color: rgba(255,255,255,.7); font-size: .89rem; }

body.page-depilacion .site-footer{ padding: 65px 0 25px; background: #f8f5f2; }
body.page-depilacion .footer-main{ display: grid; grid-template-columns: 220px 1fr auto; align-items: center; padding-bottom: 45px; }
body.page-depilacion .footer-main img{ width: 190px; height: 70px; object-fit: contain; }
body.page-depilacion .footer-links{ justify-self: center; display: flex; gap: 32px; font-size: .73rem; text-transform: uppercase; letter-spacing: .12em; }
body.page-depilacion .footer-instagram{ font-size: .73rem; text-transform: uppercase; letter-spacing: .12em; }
body.page-depilacion .footer-legal{ display: flex; justify-content: space-between; gap: 20px; padding-top: 22px; border-top: 1px solid var(--line); color: var(--muted); font-size: .63rem; text-transform: uppercase; letter-spacing: .08em; }
body.page-depilacion .whatsapp-float{ position: fixed; z-index: 40; right: 22px; bottom: 22px; min-width: 142px; height: 48px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 17px; background: var(--paprika); color: white; box-shadow: 0 12px 34px rgba(76,0,11,.24); font-size: .69rem; text-transform: uppercase; letter-spacing: .12em; }

body.page-depilacion .reveal{ opacity: 0; transform: translateY(25px); transition: opacity .8s ease,transform .8s ease; }
body.page-depilacion .reveal.visible{ opacity: 1; transform: translateY(0); }
body.page-depilacion .delay-1{ transition-delay: .12s; }body.page-depilacion .delay-2{ transition-delay: .22s; }body.page-depilacion .delay-3{ transition-delay: .32s; }

@media (max-width: 1100px) {
  body.page-depilacion .site-header, body.page-depilacion .site-header.scrolled{ height: 76px; }
  body.page-depilacion .site-header.menu-active{ background: var(--wine); color: var(--white); box-shadow: none; }
  body.page-depilacion .site-header.menu-active .brand img, body.page-depilacion .site-header.scrolled.menu-active .brand img{ filter: invert(1); }
  body.page-depilacion .header-inner{ position: relative; z-index: 52; grid-template-columns: 1fr auto; gap: 20px; }
  body.page-depilacion .brand{ position: relative; z-index: 53; justify-self: start; }
  body.page-depilacion .brand img{ width: 150px; height: 54px; }
  body.page-depilacion .header-cta{ display: none; }
  body.page-depilacion .menu-toggle{ position: relative; z-index: 53; display: block; justify-self: end; width: 48px; height: 48px; padding: 12px; color: currentColor; border: 1px solid currentColor; }
  body.page-depilacion .menu-toggle span{ transform-origin: center; margin: 6px 0; }
  body.page-depilacion .menu-toggle.active span:first-child{ transform: translateY(3.5px) rotate(45deg); }
  body.page-depilacion .menu-toggle.active span:last-child{ transform: translateY(-3.5px) rotate(-45deg); }
  body.page-depilacion .main-nav{ position: fixed; z-index: 51; inset: 0; width: 100vw; height: 100dvh; min-height: 100vh; padding: 110px 28px 46px; margin: 0; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: clamp(18px,3.5vh,34px); overflow-y: auto; background: radial-gradient(circle at 15% 20%,rgba(220,78,69,.22),transparent 34%),radial-gradient(circle at 88% 82%,rgba(245,186,166,.13),transparent 30%),var(--wine); color: var(--white); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(-18px); transition: opacity .32s ease,transform .32s ease,visibility .32s ease; }
  body.page-depilacion .main-nav::before{ content: ""; position: absolute; inset: 96px 24px 24px; border: 1px solid rgba(245,186,166,.18); pointer-events: none; }
  body.page-depilacion .main-nav.open{ opacity: 1; visibility: visible; pointer-events: auto; transform: translateY(0); }
  body.page-depilacion .main-nav a{ position: relative; z-index: 1; width: min(560px,100%); padding: 4px 0; font-family: var(--display); font-size: clamp(2rem,5.4vw,3.6rem); line-height: 1.08; text-align: center; text-transform: none; letter-spacing: -.035em; color: var(--white); }
  body.page-depilacion .laser-hero-grid{ gap: 42px; }
  body.page-depilacion .hero-trust{ grid-template-columns: 1fr; gap: 14px; }
  body.page-depilacion .hero-trust div{ display: grid; grid-template-columns: 170px 1fr; }
  body.page-depilacion .benefit-grid, body.page-depilacion .process-list{ grid-template-columns: repeat(2,1fr); }
  body.page-depilacion .benefit-card:nth-child(2), body.page-depilacion .process-item:nth-child(2){ border-right: 0; }
  body.page-depilacion .benefit-card:nth-child(-n/**/+2){ border-bottom: 1px solid var(--line); }
  body.page-depilacion .process-item:nth-child(-n/**/+2){ border-bottom: 1px solid rgba(255,255,255,.18); }
  body.page-depilacion .faq-grid{ gap: 60px; }
}

@media (max-width: 780px) {
  body.page-depilacion .container{ width: min(100% - 30px,620px); }
  body.page-depilacion .section-space{ padding: 86px 0; }
  body.page-depilacion h1{ font-size: clamp(3.15rem,5.5vw,5.3rem); }
  body.page-depilacion h2{ font-size: clamp(2.5rem,11vw,4.1rem); }
  body.page-depilacion .site-header, body.page-depilacion .site-header.scrolled{ height: 70px; }
  body.page-depilacion .brand img{ width: 132px; height: 48px; }
  body.page-depilacion .menu-toggle{ width: 44px; height: 44px; padding: 10px; }
  body.page-depilacion .main-nav{ padding: 94px 22px 34px; }
  body.page-depilacion .main-nav::before{ inset: 82px 15px 15px; }
  body.page-depilacion .main-nav a{ width: 100%; font-size: clamp(1.8rem,8.6vw,2.8rem); }
  body.page-depilacion .laser-hero{ min-height: auto; }
  body.page-depilacion .laser-hero-grid{ grid-template-columns: 1fr; padding-top: 120px; }
  body.page-depilacion .hero-actions{ align-items: flex-start; flex-direction: column; }
  body.page-depilacion .hero-trust{ grid-template-columns: repeat(3,1fr); }
  body.page-depilacion .hero-trust div{ display: block; }
  body.page-depilacion .laser-hero-visual{ height: 500px; margin-top: 20px; }
  body.page-depilacion .laser-art{ width: 94%; }
  body.page-depilacion .hero-seal{ width: 140px; height: 140px; left: 0; padding: 23px; }
  body.page-depilacion .hero-seal img{ width: 40px; height: 40px; }
  body.page-depilacion .vertical-note{ display: none; }
  body.page-depilacion .intro-grid, body.page-depilacion .section-heading, body.page-depilacion .sessions-grid, body.page-depilacion .suitability-grid, body.page-depilacion .comfort-grid, body.page-depilacion .faq-grid, body.page-depilacion .contact-grid{ grid-template-columns: 1fr; gap: 40px; }
  body.page-depilacion .section-kicker span{ display: none; }
  body.page-depilacion .benefit-grid, body.page-depilacion .process-list{ grid-template-columns: 1fr; }
  body.page-depilacion .benefit-card, body.page-depilacion .benefit-card:first-child, body.page-depilacion .process-item, body.page-depilacion .process-item:first-child{ padding: 34px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  body.page-depilacion .process-item{ border-bottom-color: rgba(255,255,255,.18); }
  body.page-depilacion .benefit-card > span, body.page-depilacion .process-number{ margin-bottom: 28px; }
  body.page-depilacion .sessions-visual{ min-height: 450px; }
  body.page-depilacion .medical-note{ padding: 38px 28px; }
  body.page-depilacion .footer-main{ grid-template-columns: 1fr; justify-items: center; gap: 25px; }
  body.page-depilacion .footer-links{ justify-self: center; flex-wrap: wrap; justify-content: center; }
  body.page-depilacion .footer-legal{ flex-direction: column; text-align: center; }
}

@media (max-width: 520px) {
  body.page-depilacion .hero-trust{ grid-template-columns: 1fr; }
  body.page-depilacion .hero-trust div{ display: grid; grid-template-columns: 145px 1fr; }
  body.page-depilacion .laser-hero-visual{ height: 430px; }
  body.page-depilacion .skin-shape-one{ width: 330px; height: 460px; }
  body.page-depilacion .contact-info > div{ grid-template-columns: 1fr; gap: 6px; }
  body.page-depilacion .whatsapp-float{ min-width: auto; width: 48px; padding: 0; justify-content: center; border-radius: 50%; }
  body.page-depilacion .whatsapp-float span{ display: none; }
}

@media (prefers-reduced-motion: reduce) {
  body.page-depilacion{ scroll-behavior: auto; }
  body.page-depilacion *, body.page-depilacion *::before, body.page-depilacion *::after{ animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  body.page-depilacion .reveal{ opacity: 1; transform: none; }
}


/* ===== CO2 and toxin detail page styles ===== */
body.page-standard *{box-sizing:border-box}body.page-standard{scroll-behavior:smooth}body.page-standard{margin:0;color:var(--ink);background:var(--paper);font-family:var(--body);font-size:16px;line-height:1.7;overflow-x:hidden}body.page-standard.menu-open{overflow:hidden}body.page-standard a{color:inherit;text-decoration:none}body.page-standard img{display:block;max-width:100%}body.page-standard button{font:inherit}body.page-standard .container{width:min(1180px,calc(100% - 48px));margin-inline:auto}body.page-standard .section-space{padding:120px 0}body.page-standard .section-dark{color:#fff;background:var(--wine)}body.page-standard .page-noise{position:fixed;inset:0;opacity:.025;pointer-events:none;z-index:100;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}body.page-standard h1, body.page-standard h2, body.page-standard h3{font-family:var(--display);font-weight:400;line-height:1.08;margin:0}body.page-standard h1{font-size:clamp(3.8rem,5.5vw,7.1rem);letter-spacing:-.055em}body.page-standard h2{font-size:clamp(2.7rem,4vw,5.1rem);letter-spacing:-.045em}body.page-standard h3{font-size:1.55rem}body.page-standard em{font-family:var(--body);font-weight:300}body.page-standard p{margin:0}body.page-standard .eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:22px;font-size:.72rem;text-transform:uppercase;letter-spacing:.22em;font-weight:600}body.page-standard .eyebrow:before{content:"";width:30px;height:1px;background:var(--paprika)}body.page-standard .eyebrow.light:before{background:var(--peach)}body.page-standard .lead{font-size:1.35rem;line-height:1.55;color:var(--brick)}body.page-standard .site-header{position:fixed;inset:0 0 auto;z-index:50;height:90px;color:#fff;transition:.35s}body.page-standard .site-header.scrolled{height:74px;background:rgba(248,245,242,.94);color:var(--ink);box-shadow:0 1px 0 var(--line);backdrop-filter:blur(18px)}body.page-standard .header-inner{height:100%;display:grid;grid-template-columns:180px 1fr auto;align-items:center;gap:32px}body.page-standard .brand img{width:164px;height:58px;object-fit:contain;filter:invert(1);transition:.3s}body.page-standard .site-header.scrolled .brand img{filter:none}body.page-standard .main-nav{justify-self:center;display:flex;gap:30px}body.page-standard .main-nav a{font-size:.74rem;text-transform:uppercase;letter-spacing:.11em}body.page-standard .menu-toggle{display:none;border:0;background:transparent;width:42px;height:42px;padding:10px;color:inherit}body.page-standard .menu-toggle span{display:block;width:100%;height:1px;margin:7px 0;background:currentColor;transition:.3s}body.page-standard .button{display:inline-flex;justify-content:center;align-items:center;min-height:54px;padding:0 27px;border:1px solid var(--wine);background:var(--wine);color:#fff;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;transition:.3s}body.page-standard .button:hover{color:white !important;background:var(--brick);border-color:var(--brick);transform:translateY(-2px)}body.page-standard .button-light{background:var(--eggwhite);color:var(--wine);border-color:var(--eggwhite)}body.page-standard .button-light:hover{background:var(--paprika);border-color:var(--paprika);color:#fff}body.page-standard .button-small{min-height:43px;padding:0 18px;border-color:rgba(255,255,255,.55);background:transparent}body.page-standard .site-header.scrolled .button-small{border-color:var(--wine);color:var(--wine)}body.page-standard .text-link{display:inline-flex;align-items:center;gap:15px;padding-bottom:6px;border-bottom:1px solid currentColor;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:600}body.page-standard .hero{min-height:900px;position:relative;overflow:hidden;padding-top:90px;display:flex;align-items:center}body.page-standard .hero:after{content:"";position:absolute;right:-10%;top:-25%;width:64%;height:145%;border:1px solid rgba(245,186,166,.2);border-radius:50%;transform:rotate(17deg)}body.page-standard .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .75fr;align-items:center;gap:80px;padding:90px 0 70px}body.page-standard .hero-copy h1 em{display:block;color:var(--peach)}body.page-standard .hero-text{max-width:650px;margin:32px 0 38px;color:rgba(255,255,255,.75);font-size:1.12rem}body.page-standard .hero-actions{display:flex;align-items:center;gap:28px}body.page-standard .hero-trust{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding-top:40px;margin-top:54px;border-top:1px solid rgba(255,255,255,.18)}body.page-standard .hero-trust strong, body.page-standard .hero-trust span{display:block}body.page-standard .hero-trust strong{font-family:var(--display);font-size:1.15rem;font-weight:400}body.page-standard .hero-trust span{margin-top:5px;color:rgba(255,255,255,.52);font-size:.76rem;line-height:1.4}body.page-standard .hero-visual{position:relative;height:630px}body.page-standard .hero-art{width:90%;height:100%;margin-left:auto;position:relative;overflow:hidden;background:linear-gradient(145deg,#7e201b,#260006);border:1px solid rgba(255,255,255,.16)}body.page-standard .hero-art:before{content:"";position:absolute;width:430px;height:520px;border-radius:48% 52% 43% 57%;right:-110px;top:-65px;background:linear-gradient(140deg,rgba(255,255,255,.7),transparent 40%),radial-gradient(circle at 25% 40%,#fbe0d6,#a6493f 75%);transform:rotate(-16deg)}body.page-standard .hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(30,0,5,.6) 100%)}body.page-standard .laser-lines{position:absolute;inset:-15%;background-image:linear-gradient(rgba(255,255,255,.10) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.10) 1px,transparent 1px);background-size:28px 28px;transform:perspective(500px) rotateX(58deg) rotateZ(-15deg)}body.page-standard .visual-label{position:absolute;left:28px;bottom:28px;z-index:2;color:#fff;font-size:.68rem;text-transform:uppercase;letter-spacing:.16em}body.page-standard .hero-seal{position:absolute;left:-55px;bottom:48px;width:180px;height:180px;border-radius:50%;padding:30px;background:var(--peach);color:var(--wine);display:grid;place-items:center;text-align:center;box-shadow:0 30px 70px rgba(0,0,0,.25)}body.page-standard .hero-seal img{width:52px;height:52px;object-fit:contain}body.page-standard .hero-seal span{font-size:.63rem;text-transform:uppercase;letter-spacing:.12em;line-height:1.5}body.page-standard .content-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:90px}body.page-standard .section-number{font-family:var(--display);font-size:5rem;color:var(--peach)}body.page-standard .content-copy h2{margin-bottom:28px}body.page-standard .content-copy p{margin-bottom:20px;color:var(--muted)}body.page-standard .content-copy .lead{color:var(--brick)}body.page-standard .feature-section{background:#f3efec}body.page-standard .section-heading{display:grid;grid-template-columns:1.5fr .7fr;gap:70px;align-items:end;margin-bottom:70px}body.page-standard .section-heading>p{color:var(--muted)}body.page-standard .feature-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}body.page-standard .feature-card{padding:42px 30px;border-right:1px solid var(--line)}body.page-standard .feature-card:last-child{border-right:0}body.page-standard .feature-card span{display:block;margin-bottom:42px;color:var(--paprika);font-size:.7rem;letter-spacing:.17em}body.page-standard .feature-card h3{margin-bottom:16px}body.page-standard .feature-card p{color:var(--muted);font-size:.9rem}body.page-standard .process-list{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}body.page-standard .process-item{padding:42px 28px;border-right:1px solid rgba(255,255,255,.18)}body.page-standard .process-item:last-child{border-right:0}body.page-standard .process-item span{display:block;margin-bottom:38px;color:var(--peach);font-size:.7rem;letter-spacing:.17em}body.page-standard .process-item h3{margin-bottom:15px}body.page-standard .process-item p{color:rgba(255,255,255,.62);font-size:.9rem}body.page-standard .two-col{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}body.page-standard .panel{padding:52px;background:var(--eggwhite)}body.page-standard .panel h2{font-size:clamp(2.4rem,4vw,4rem);margin-bottom:25px}body.page-standard .panel p{color:var(--muted);margin-bottom:18px}body.page-standard .check-list{list-style:none;padding:0;margin:28px 0}body.page-standard .check-list li{position:relative;padding:13px 0 13px 26px;border-bottom:1px solid var(--line)}body.page-standard .check-list li:before{content:"•";position:absolute;left:3px;color:var(--paprika)}body.page-standard .faq{background:var(--eggwhite)}body.page-standard .faq-grid{display:grid;grid-template-columns:.75fr 1.2fr;gap:110px}body.page-standard .faq-intro h2{margin-bottom:28px}body.page-standard .faq-intro>p:not(.eyebrow){color:var(--muted);margin-bottom:35px}body.page-standard .accordion{border-top:1px solid rgba(76,0,11,.2)}body.page-standard .accordion-item{border-bottom:1px solid rgba(76,0,11,.2)}body.page-standard .accordion-item button{width:100%;border:0;background:none;display:flex;align-items:center;justify-content:space-between;padding:25px 0;text-align:left;cursor:pointer}body.page-standard .accordion-item button span{font-family:var(--display);font-size:1.3rem}body.page-standard .accordion-item i{width:18px;height:18px;position:relative}body.page-standard .accordion-item i:before, body.page-standard .accordion-item i:after{content:"";position:absolute;left:0;top:8px;width:18px;height:1px;background:var(--wine);transition:.3s}body.page-standard .accordion-item i:after{transform:rotate(90deg)}body.page-standard .accordion-item.open i:after{transform:rotate(0)}body.page-standard .accordion-content{max-height:0;overflow:hidden;transition:max-height .4s}body.page-standard .accordion-content p{padding:0 50px 28px 0;color:var(--muted)}body.page-standard .accordion-item.open .accordion-content{max-height:220px}body.page-standard .contact{padding:110px 0}body.page-standard .contact-grid{display:grid;grid-template-columns:1.1fr .8fr;gap:100px}body.page-standard .contact-copy h2{margin-bottom:28px}body.page-standard .contact-copy>p:not(.eyebrow){color:rgba(255,255,255,.65);margin-bottom:36px}body.page-standard .contact-info{border-top:1px solid rgba(255,255,255,.22)}body.page-standard .contact-info>div{display:grid;grid-template-columns:120px 1fr;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.22)}body.page-standard .contact-info span{color:var(--peach);font-size:.68rem;text-transform:uppercase;letter-spacing:.15em}body.page-standard .contact-info p{color:rgba(255,255,255,.7);font-size:.89rem}body.page-standard .site-footer{padding:65px 0 25px}body.page-standard .footer-main{display:grid;grid-template-columns:220px 1fr auto;align-items:center;padding-bottom:45px}body.page-standard .footer-main img{width:190px;height:70px;object-fit:contain}body.page-standard .footer-links{justify-self:center;display:flex;gap:30px;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}body.page-standard .footer-legal{display:flex;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid var(--line);color:var(--muted);font-size:.63rem;text-transform:uppercase;letter-spacing:.08em}body.page-standard .whatsapp-float{position:fixed;z-index:40;right:22px;bottom:22px;min-width:142px;height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 17px;background:var(--paprika);color:#fff;box-shadow:0 12px 34px rgba(76,0,11,.24);font-size:.69rem;text-transform:uppercase;letter-spacing:.12em}body.page-standard .reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}body.page-standard .reveal.visible{opacity:1;transform:none}body.page-standard .delay-1{transition-delay:.12s}body.page-standard .delay-2{transition-delay:.22s}body.page-standard .delay-3{transition-delay:.32s}@media(max-width:1100px){body.page-standard .header-inner{grid-template-columns:1fr auto}body.page-standard .header-cta{display:none}body.page-standard .menu-toggle{display:block;position:relative;z-index:53;border:1px solid currentColor}body.page-standard .site-header.menu-active{background:var(--wine);color:#fff}body.page-standard .site-header.menu-active .brand img{filter:invert(1)}body.page-standard .main-nav{position:fixed;z-index:51;inset:0;width:100vw;height:100dvh;padding:110px 28px 46px;flex-direction:column;justify-content:center;align-items:center;gap:26px;background:var(--wine);color:#fff;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-18px);transition:.32s}body.page-standard .main-nav.open{opacity:1;visibility:visible;pointer-events:auto;transform:none}body.page-standard .main-nav a{font-family:var(--display);font-size:clamp(2rem,5vw,3.4rem);text-transform:none;letter-spacing:-.035em}body.page-standard .menu-toggle.active span:first-child{transform:translateY(4px) rotate(45deg)}body.page-standard .menu-toggle.active span:last-child{transform:translateY(-4px) rotate(-45deg)}body.page-standard .hero-grid{gap:40px}body.page-standard .hero-trust{grid-template-columns:1fr}body.page-standard .feature-grid, body.page-standard .process-list{grid-template-columns:repeat(2,1fr)}body.page-standard .feature-card:nth-child(2), body.page-standard .process-item:nth-child(2){border-right:0}body.page-standard .feature-card:nth-child(-n/**/+2){border-bottom:1px solid var(--line)}body.page-standard .process-item:nth-child(-n/**/+2){border-bottom:1px solid rgba(255,255,255,.18)}}@media(max-width:780px){body.page-standard .container{width:min(100% - 30px,620px)}body.page-standard .section-space{padding:84px 0}body.page-standard h1{font-size:clamp(3.1rem,14vw,5.2rem)}body.page-standard h2{font-size:clamp(2.5rem,11vw,4.1rem)}body.page-standard .site-header, body.page-standard .site-header.scrolled{height:70px}body.page-standard .brand img{width:132px;height:48px}body.page-standard .hero{min-height:auto}body.page-standard .hero-grid{grid-template-columns:1fr;padding-top:120px}body.page-standard .hero-actions{flex-direction:column;align-items:flex-start}body.page-standard .hero-trust{grid-template-columns:repeat(3,1fr)}body.page-standard .hero-visual{height:500px}body.page-standard .hero-art{width:94%}body.page-standard .hero-seal{width:140px;height:140px;left:0;padding:23px}body.page-standard .content-grid, body.page-standard .section-heading, body.page-standard .two-col, body.page-standard .faq-grid, body.page-standard .contact-grid{grid-template-columns:1fr;gap:40px}body.page-standard .section-number{display:none}body.page-standard .feature-grid, body.page-standard .process-list{grid-template-columns:1fr}body.page-standard .feature-card, body.page-standard .process-item{padding:34px 0;border-right:0;border-bottom:1px solid var(--line)}body.page-standard .process-item{border-bottom-color:rgba(255,255,255,.18)}body.page-standard .footer-main{grid-template-columns:1fr;justify-items:center;gap:25px}body.page-standard .footer-links{justify-self:center;flex-wrap:wrap;justify-content:center}body.page-standard .footer-legal{flex-direction:column;text-align:center}}@media(max-width:520px){body.page-standard .hero-trust{grid-template-columns:1fr}body.page-standard .contact-info>div{grid-template-columns:1fr;gap:6px}body.page-standard .whatsapp-float{min-width:auto;width:48px;padding:0;justify-content:center;border-radius:50%}body.page-standard .whatsapp-float span{display:none}}@media(prefers-reduced-motion:reduce){body.page-standard{scroll-behavior:auto}body.page-standard *, body.page-standard *:before, body.page-standard *:after{animation-duration:.01ms!important;transition-duration:.01ms!important}body.page-standard .reveal{opacity:1;transform:none}}
/* ===== Shared additions ===== */
.treatment-actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 18px;
}
.button-outline {
  background: transparent;
  color: var(--wine);
  border-color: var(--wine);
}
.button-outline:hover {
  background: var(--wine);
  color: var(--white);
}
.treatment-more { min-width: 150px; }
@media (max-width: 520px) {
  .treatment-actions { width: 100%; }
  .treatment-actions .button,
  .treatment-actions .text-link { width: 100%; justify-content: center; }
}

.depilacion-hero-photo{
    width:90%;
    height:100%;
    margin-left:auto;
    overflow:hidden;
    position:relative;
    border:1px solid rgba(255,255,255,.18);
    background:#3b0009;
}

.depilacion-hero-photo img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
}



.depilacion-hero-photo::before{
    content:"";
    position:absolute;
    inset:8%;
    border:1px solid rgba(255,255,255,.15);
    z-index:2;
}

.depilacion-hero-photo img{
    transition:.8s;
}

.depilacion-hero-photo:hover img{
    transform:scale(1.03);
}

.hero-seal{
    left:-40px;
    bottom:40px;
    z-index:5;
}

.hero-laser-photo{
    position:relative;
    overflow:hidden;
    border-radius:0;
    height:100%;
}

.hero-laser-doctor-photo{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.hero-laser-photo::after{

    content:"";
    position:absolute;
    inset:0;

    background:
    linear-gradient(
        to top,
        rgba(76,0,11,.35),
        rgba(76,0,11,0) 40%
    );

}

.visual-label{

    position:absolute;
    bottom:22px;
    left:0;
    right:0;

    text-align:center;

    color:#fff;

    letter-spacing:.28em;

    text-transform:uppercase;

    font-size:.82rem;

    z-index:2;

}


/* =========================================================
   ALL TREATMENTS
========================================================= */

.all-treatments {
  position: relative;
  overflow: hidden;
  background: var(--eggwhite);
}

.all-treatments::before {
  content: "";
  position: absolute;
  width: 620px;
  height: 620px;
  right: -320px;
  top: -280px;
  border: 1px solid rgba(76, 0, 11, .07);
  border-radius: 50%;
}

.all-treatments::after {
  content: "";
  position: absolute;
  width: 380px;
  height: 380px;
  right: -175px;
  top: -160px;
  border: 75px solid rgba(245, 186, 166, .12);
  border-radius: 50%;
}


/* Heading */

.all-treatments-heading {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 1.4fr .6fr;
  gap: 80px;
  align-items: end;
  margin-bottom: 80px;
}

.all-treatments-heading h2 {
  max-width: 760px;
}

.all-treatments-heading h2 em {
  color: var(--paprika);
}

.all-treatments-heading > p {
  max-width: 400px;
  color: var(--muted);
}


/* Grid */

.all-treatments-grid {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(76, 0, 11, .16);
  border-left: 1px solid rgba(76, 0, 11, .16);
}


/* Category */

.treatment-category {
  position: relative;
  min-height: 440px;
  padding: 42px 38px 48px;
  background: rgba(255, 255, 255, .26);
  border-right: 1px solid rgba(76, 0, 11, .16);
  border-bottom: 1px solid rgba(76, 0, 11, .16);
  overflow: hidden;
  transition:
    background .4s ease,
    color .4s ease,
    transform .4s ease;
}

.treatment-category::after {
  content: "";
  position: absolute;
  right: -70px;
  bottom: -70px;
  width: 160px;
  height: 160px;
  border: 1px solid rgba(76, 0, 11, .08);
  border-radius: 50%;
  transition: .45s ease;
}

.treatment-category:hover {
  z-index: 2;
  color: var(--white);
  background: var(--wine);
  transform: translateY(-6px);
}

.treatment-category:hover::after {
  width: 220px;
  height: 220px;
  border-color: rgba(245, 186, 166, .16);
}

.category-number {
  margin-bottom: 70px;
  color: var(--paprika);
  font-size: .68rem;
  font-weight: 600;
  letter-spacing: .2em;
}

.category-label {
  display: block;
  margin-bottom: 12px;
  color: var(--paprika);
  font-size: .65rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .18em;
}

.category-content h3 {
  margin-bottom: 27px;
  font-size: clamp(1.9rem, 2.5vw, 2.8rem);
}

.category-content ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.category-content li {
  position: relative;
  padding: 8px 0 8px 18px;
  color: var(--muted);
  font-size: .87rem;
  line-height: 1.45;
}

.category-content li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 16px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--paprika);
}

.category-content li a {
  display: flex;
  justify-content: space-between;
  gap: 15px;
}

.category-content li a span {
  opacity: .55;
  transition: transform .3s ease;
}

.category-content li a:hover span {
  transform: translate(3px, -3px);
}


/* Hover text colors */

.treatment-category:hover .category-number,
.treatment-category:hover .category-label {
  color: var(--peach);
}

.treatment-category:hover .category-content li {
  color: rgba(255, 255, 255, .7);
}

.treatment-category:hover .category-content li::before {
  background: var(--peach);
}


/* Footer / CTA */

.all-treatments-footer {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 70px 1fr auto;
  gap: 35px;
  align-items: center;
  margin-top: 55px;
  padding-top: 42px;
  border-top: 1px solid rgba(76, 0, 11, .16);
}

.all-treatments-footer > div {
  width: 62px;
  height: 62px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: var(--peach);
}

.all-treatments-footer img {
  width: 32px;
  height: 32px;
  object-fit: contain;
}

.all-treatments-footer p {
  color: var(--muted);
  font-size: .96rem;
}

.all-treatments-footer strong {
  display: block;
  color: var(--wine);
  font-family: var(--display);
  font-size: 1.35rem;
  font-weight: 400;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1020px) {

  .all-treatments-grid {
    grid-template-columns: repeat(2, 1fr);
  }

}


@media (max-width: 780px) {

  .all-treatments-heading {
    grid-template-columns: 1fr;
    gap: 25px;
    margin-bottom: 55px;
  }

  .all-treatments-heading > p {
    max-width: 100%;
  }

  .all-treatments-grid {
    grid-template-columns: 1fr;
  }

  .treatment-category {
    min-height: auto;
    padding: 34px 27px 38px;
  }

  .category-number {
    margin-bottom: 38px;
  }

  .all-treatments-footer {
    grid-template-columns: 60px 1fr;
    gap: 22px;
  }

  .all-treatments-footer .button {
    grid-column: 1 / -1;
    width: 100%;
  }

}


@media (max-width: 520px) {

  .all-treatments-footer {
    grid-template-columns: 1fr;
  }

  .all-treatments-footer > div {
    width: 54px;
    height: 54px;
  }

  .all-treatments-footer strong {
    margin-top: 4px;
    font-size: 1.2rem;
  }

}

/* =========================================================
   TREATMENT PHOTO
========================================================= */

.treatment-photo {
    position: relative;
    overflow: hidden;
    padding: 0;
    background: var(--wine);
}

.treatment-photo > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform .8s cubic-bezier(.2,.7,.2,1);
}

/* Degradado para que el título siempre sea legible */
.treatment-photo-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(
            180deg,
            rgba(76, 0, 11, 0) 42%,
            rgba(76, 0, 11, .18) 68%,
            rgba(35, 0, 5, .68) 100%
        );
}

/* Título encima de la fotografía */
.treatment-photo-title {
    position: absolute;
    z-index: 2;
    left: 30px;
    right: 30px;
    bottom: 27px;

    margin: 0;

    color: #fff;
    font-family: var(--display);
    font-size: 1.35rem;
    font-weight: 400;
    line-height: 1.2;
    letter-spacing: -.01em;
}

/* Línea decorativa */
.treatment-photo-title::before {
    content: "";
    display: block;
    width: 32px;
    height: 1px;
    margin-bottom: 13px;
    background: var(--peach);
}

/* Hover elegante */
.treatment-photo:hover > img {
    transform: scale(1.035);
}


/* Mobile */
@media (max-width: 780px) {
    .treatment-photo-title {
        left: 24px;
        right: 24px;
        bottom: 24px;
        font-size: 1.25rem;
    }
}


/* =========================================================
   FOTO TRATAMIENTO - LÁSER CO2
========================================================= */

.treatment-photo-co2 {
    position: relative;
    overflow: hidden;
    padding: 0;
    background: var(--wine);
}

.treatment-photo-co2 > img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    transition: transform .8s cubic-bezier(.2,.7,.2,1);
}


/* Degradado para mejorar la lectura del título */

.treatment-photo-co2 .treatment-photo-overlay {
    position: absolute;
    inset: 0;
    z-index: 1;

    background:
        linear-gradient(
            180deg,
            rgba(76, 0, 11, 0) 45%,
            rgba(76, 0, 11, .15) 68%,
            rgba(35, 0, 5, .65) 100%
        );
}


/* Título sobre la fotografía */

.treatment-photo-co2 > span {
    position: absolute;
    z-index: 2;

    left: 30px;
    right: 30px;
    bottom: 28px;

    color: #fff;

    font-size: .72rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: .16em;
}


/* Línea decorativa encima del título */

.treatment-photo-co2 > span::before {
    content: "";
    display: block;

    width: 32px;
    height: 1px;

    margin-bottom: 13px;

    background: var(--peach);
}


/* Hover */

.treatment-photo-co2:hover > img {
    transform: scale(1.035);
}


@media (max-width: 780px) {

    .treatment-photo-co2 > span {
        left: 24px;
        right: 24px;
        bottom: 24px;
    }

}

/* =========================================================
   FOTO TRATAMIENTO - TOXINA BOTULÍNICA
========================================================= */

.treatment-photo-toxina > img {
    object-position: center;
}