:root{--vani-plum:#2e1427;--vani-plum-night:#1f0d1a;--vani-berry:#8e2b5c;--vani-mauve:#c98aa6;--vani-rose:#f3d3d8;--vani-rose-soft:#f6e4ea;--vani-nacar:#fbf5f1;--vani-text:#4a3343;--vani-muted:#6e5866;--vani-line:rgba(46,20,39,.12);--ok-bg:#e3f0e6;--ok-fg:#2f5d3a;--warn-bg:#fff1d9;--warn-fg:#6b4a00;--off-bg:#eee9ec;--off-fg:#6e5866;--font-display:'Fraunces',Georgia,serif;--font-body:'Barlow',system-ui,sans-serif;--radius-card:22px;--radius-field:14px;--radius-pill:999px;--container:1240px;--gutter:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--vani-nacar);color:var(--vani-plum);font-family:var(--font-body);font-size:18px;line-height:1.55;overflow-x:hidden}a{color:inherit}button,input{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.2}h1,h2{font-family:var(--font-display);font-weight:500;letter-spacing:-.035em}h1{font-size:clamp(46px,6vw,84px);line-height:1.08;letter-spacing:-1.5px}h2{font-size:clamp(36px,4.4vw,56px);line-height:1.16}h3{font-size:22px;font-weight:600}h1 em,h2 em{color:var(--vani-berry);font-weight:600}small{font-size:13px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--vani-berry);outline-offset:3px}.wrap{width:min(100%,calc(var(--container) + 2*var(--gutter)));padding-inline:var(--gutter);margin-inline:auto}.skip-link{position:absolute;left:10px;top:-60px;background:white;padding:10px;z-index:30}.skip-link:focus{top:10px}.v-header{background:var(--vani-nacar);border-bottom:1px solid var(--vani-line);position:relative;z-index:5}.header-inner{min-height:88px;display:flex;align-items:center;gap:28px}.wordmark{font-family:var(--font-display);font-weight:600;font-style:italic;font-size:36px;letter-spacing:-1px;text-decoration:none;line-height:1;white-space:nowrap}.nav{display:flex;align-items:center;gap:clamp(10px,1.5vw,24px);margin-left:auto}.nav a{font-size:14px;font-weight:600;text-decoration:none;white-space:nowrap}.nav a:hover,.nav a:focus-visible{color:var(--vani-berry)}.nav-login{color:var(--vani-muted)}.header-cta{border-radius:999px;background:var(--vani-berry);color:white;padding:12px 21px;text-decoration:none;font-size:14px;font-weight:700;white-space:nowrap}.menu-button{display:none;border:1px solid var(--vani-line);background:transparent;border-radius:12px;padding:8px 14px}.v-section>.wrap{padding-block:96px}.v-section.white{background:#fff}.v-section.rose{background:var(--vani-rose-soft)}.v-section.dark{background:var(--vani-plum);color:white}.v-section.dark h2 em{color:var(--vani-rose)}.v-section.dark .lead{color:#f5e8f0}.eyebrow{font-size:14px;font-weight:700;text-transform:uppercase;letter-spacing:1.8px;color:var(--vani-berry);margin-bottom:20px}.dark .eyebrow{color:var(--vani-rose)}.section-intro{max-width:760px;margin-bottom:44px}.section-intro h2{margin-bottom:22px}.lead{font-size:clamp(18px,1.7vw,20px);color:var(--vani-text);line-height:1.55}.actions{display:flex;flex-wrap:wrap;gap:14px;margin:30px 0}.v-button{display:inline-flex;align-items:center;justify-content:center;min-height:58px;border-radius:var(--radius-pill);padding:12px 28px;text-decoration:none;font-weight:700;border:1.5px solid var(--vani-plum);text-align:center}.v-button.primary{background:var(--vani-berry);border-color:var(--vani-berry);color:white}.v-button.outline{background:transparent}.dark .v-button.outline{color:white;border-color:white}.v-button.gold{background:#e5b54a;color:#1e1a17;border:0}.v-button:hover,.header-cta:hover{filter:brightness(.92)}.split,.hero-layout,.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(32px,5vw,80px);align-items:center}.hero{background:linear-gradient(180deg,var(--vani-nacar),var(--vani-rose-soft))}.hero>.wrap:first-child{padding-bottom:32px}.hero-copy{max-width:630px}.hero-copy .lead{margin-top:28px}.hero-checks{display:flex;flex-wrap:wrap;gap:12px 24px;font-size:14px;font-weight:600;color:var(--vani-text)}.hero-checks span:before,.check-list li:before{content:'✓';color:var(--vani-berry);font-weight:700;margin-right:8px}.hero-art{position:relative;min-height:530px;padding-top:30px}.mock-card{background:#fff;color:var(--vani-plum);border:1px solid var(--vani-line);border-radius:var(--radius-card);padding:24px;box-shadow:0 16px 40px rgba(46,20,39,.07)}.mock-card h3{margin-bottom:12px}.mock-card p{color:var(--vani-text);font-size:15px}.dashboard{width:76%;min-height:350px;transform:rotate(-2deg)}.mock-top,.mock-row{display:flex;justify-content:space-between;gap:14px;align-items:center}.mock-top,.mock-label{font-size:11px;font-weight:700;letter-spacing:1px;color:var(--vani-berry)}.dashboard .mock-heading{font-family:var(--font-display);font-size:28px;margin:14px 0}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.stat-grid div{background:var(--vani-nacar);border-radius:12px;padding:10px}.stat-grid strong{display:block;font-size:24px}.stat-grid small{display:block;font-size:11px}.schedule{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.schedule div{display:grid;gap:7px;font-size:11px}.schedule b{font-size:13px}.schedule span{background:var(--vani-rose-soft);border-left:3px solid var(--vani-berry);border-radius:5px;padding:7px}.phone{background:#fff;color:var(--vani-plum);border:6px solid var(--vani-plum);border-radius:30px;box-shadow:0 18px 40px rgba(31,13,26,.16);padding:22px 16px;min-width:190px;max-width:228px;min-height:330px;display:flex;flex-direction:column;gap:15px}.hero-art>.phone{position:absolute;right:0;top:105px;width:38%;transform:rotate(3deg)}.phone strong{font-family:var(--font-display);font-size:22px;line-height:1.05}.phone p{font-size:14px;margin:0}.phone small{color:var(--vani-muted);font-size:11px}.phone-slot{border-radius:12px;background:var(--vani-rose-soft);padding:12px;font-size:14px;font-weight:600}.phone-slot.pale{background:var(--vani-nacar)}.phone-action,.fake-button{display:block;border-radius:999px;background:var(--vani-berry);color:white;padding:10px 12px;text-align:center;font-size:12px;font-weight:700}.request-card{position:absolute;bottom:55px;left:3%;display:grid;gap:4px;padding:14px 18px;border-radius:15px;background:white;box-shadow:0 12px 24px #2e14272a;font-size:13px}.request-card small{color:var(--vani-berry)}.mini-action{color:var(--vani-berry);font-weight:700}.service-chips{display:flex;flex-wrap:wrap;gap:10px;padding-top:0!important}.chip{display:inline-block;border-radius:999px;background:var(--vani-rose-soft);color:var(--vani-plum);padding:7px 13px;font-size:13px;font-weight:600}.dark .chip{background:#ffffff20;color:white}.chip.ok{background:var(--ok-bg);color:var(--ok-fg)}.chip.warn{background:var(--warn-bg);color:var(--warn-fg)}.chip.off{background:var(--off-bg);color:var(--off-fg)}.chip.selected{background:var(--vani-berry);color:white}.identity{background:#fff;max-width:530px}.mock-row{border-bottom:1px solid var(--vani-line);padding:9px 0;font-size:14px}.mock-row:last-child{border:0}.swatches{display:flex;gap:8px;margin:16px 0}.swatches i{width:38px;height:38px;border-radius:50%;background:#a5b8a5}.swatches i:nth-child(2){background:#e8dfd0}.swatches i:nth-child(3){background:#8e2b5c}.chips{display:flex;flex-wrap:wrap;gap:8px}.identity .chip{font-size:11px}.mini-site{padding:30px;border-radius:18px;margin:20px 0;min-height:185px}.mini-site small,.mini-site strong,.mini-site span{display:block}.mini-site strong{font-size:32px;margin:10px 0}.mini-site.malva{background:#e6ebe1;color:#264b3c}.mini-site.malva strong{font-family:Georgia,serif;font-style:italic}.mini-site.lis{background:#a64d39;color:white}.mini-site.lis strong{font-family:var(--font-body);font-weight:700;letter-spacing:.2em}.tiny{font-size:13px!important;opacity:.85}.three-grid,.four-grid,.two-grid{display:grid;gap:20px}.three-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.four-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.two-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.step{color:var(--vani-berry);font-size:12px;letter-spacing:1px;font-weight:700;text-transform:uppercase}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-days span{text-align:center;padding:6px 0;border-radius:7px;font-size:13px}.calendar-days span:nth-child(even){background:var(--vani-nacar)}.calendar-days .busy{background:var(--warn-bg)!important}.calendar-days .selected{background:var(--vani-berry)!important;color:#fff;font-weight:700}.legend,.time-slots,.mini-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px}.legend .chip{font-size:10px}.time-slots span,.time-slots strong,.mini-actions span{border:1px solid var(--vani-line);border-radius:9px;padding:6px 10px;font-size:12px}.time-slots strong,.mini-actions span:first-child{background:var(--vani-berry);color:white}.warn-text{color:var(--warn-fg)}.ok-text{color:var(--ok-fg)}.timeline-panel{border-radius:22px;background:var(--vani-plum);color:white;padding:34px;margin-bottom:20px}.timeline-panel h3{max-width:720px;font-family:var(--font-display);font-size:clamp(25px,3vw,34px);margin:20px 0}.timeline-panel p{max-width:760px}.timeline{display:grid;grid-template-columns:3fr 4fr 5fr;gap:5px;margin:24px 0 14px}.timeline span{padding:16px 12px;background:var(--vani-berry);font-size:14px;border-radius:10px}.timeline span:nth-child(2){background:repeating-linear-gradient(135deg,#654259,#654259 8px,#745169 8px,#745169 16px)}.timeline b{display:block;font-size:12px}.capability{margin-top:22px}.phones{display:flex;align-items:center;justify-content:center;gap:15px;flex-wrap:wrap}.phones .phone{min-height:360px}.dark .mock-card{background:#fbf5f1}.check-list{padding:0;list-style:none;display:grid;gap:14px}.check-list li{font-weight:600}.check-list .muted{color:var(--vani-muted)}.boutique-art{display:grid;grid-template-columns:1fr 1fr;gap:14px}.product-mock{background:#fff;border-radius:18px;padding:14px}.product-mock h3{font-size:17px;margin:12px 0 4px}.product-mock p{font-size:14px;margin:0}.product-mock small{color:var(--vani-muted)}.product-image{height:130px;border-radius:12px;background:linear-gradient(145deg,#c8d8c8,#829d89)}.product-image.second{background:linear-gradient(145deg,#f2d6c5,#b37671)}.bag{grid-column:1/-1}.bag p{margin:10px 0}.bag .fake-button{margin-top:15px}.kpis>div{display:flex;flex-direction:column;background:white;border-radius:17px;padding:23px;border:1px solid var(--vani-line)}.kpis strong{font-family:var(--font-display);font-size:29px}.kpis span{font-size:14px;font-weight:600}.kpis small{color:var(--vani-muted);margin-top:5px}.analytics{margin-top:20px}.bar-row{display:grid;gap:4px;margin:12px 0;font-size:13px}.bar-row i{display:block;height:12px;border-radius:20px;background:var(--vani-berry)}.heatmap{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.heatmap span{height:26px;border-radius:6px}.h0{background:#f6e4ea}.h1{background:#d8a9bb}.h2{background:#af6688}.h3{background:#7b244f}.branch-banner{background:var(--vani-plum);color:white;border-radius:17px;padding:23px;margin-top:25px;font-weight:600}.barber{background:#1e1a17;color:white}.barber h2{font-family:var(--font-body);font-size:clamp(34px,4vw,54px);font-weight:700;text-transform:uppercase}.barber .eyebrow{color:#e5b54a}.barber .lead{color:#f0e6d3}.barber .check-list li:before{color:#e5b54a}.barber-mock{background:#282521;border:1px solid #746147;padding:30px;border-radius:12px;box-shadow:12px 12px 0 #e5b54a1d}.barber-mock small,.barber-mock strong,.barber-mock>span{display:block}.barber-mock strong{font-size:clamp(30px,4vw,55px);text-transform:uppercase;line-height:1;margin:32px 0;color:#e5b54a}.barber-mock .mock-row{color:white;border-color:#746147}.barber-mock p{font-size:14px}.integrations .mock-card:last-child{border-style:dashed}.contact-grid{align-items:start}.contact-panel{background:var(--vani-nacar);border-radius:22px;padding:30px;border:1px solid var(--vani-line)}.contact-pending{font-size:20px}.plans{margin-top:-40px}.close{text-align:center}.close h2{max-width:830px;margin:0 auto}.close .actions{justify-content:center}.close .v-button.primary{background:var(--vani-rose);color:var(--vani-plum);border-color:var(--vani-rose)}.v-footer{background:var(--vani-plum-night);color:#f3e8ef}.footer-inner{min-height:112px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:14px}.footer-inner .wordmark{font-size:28px;color:#fff}.footer-inner a:not(.wordmark){text-decoration:none}.footer-inner span{opacity:.85}#lead-form{display:grid;gap:16px}#lead-form h3{margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}#lead-form label{display:grid;gap:4px;font-size:14px;font-weight:600}#lead-form input:not([type=radio]):not([type=checkbox]){width:100%;border:1px solid #9d8a96;border-radius:14px;padding:11px;background:white;min-height:48px}#lead-form fieldset{border:0;margin:0;padding:0}#lead-form legend{font-size:14px;font-weight:700;margin-bottom:8px}.choice-group{display:flex;flex-wrap:wrap;gap:8px}.choice-group label{display:block!important;position:relative}.choice-group input{position:absolute;opacity:0}.choice-group span{display:block;padding:10px 14px;border:1px solid #9d8a96;border-radius:999px;background:#fff;min-height:44px}.choice-group input:checked+span{background:var(--vani-berry);color:white;border-color:var(--vani-berry)}.choice-group input:focus-visible+span{outline:2px solid var(--vani-berry);outline-offset:3px}.field-error{color:#8d193b;display:block;min-height:0}.form-note{font-size:13px;margin:0}.form-status{font-weight:700;margin:0}.honeypot{position:absolute!important;left:-9999px}.operation-bar{background:var(--vani-plum);color:white;font-family:var(--font-body);font-size:14px;position:relative;z-index:20}.operation-bar .wrap{display:flex;align-items:center;gap:22px;min-height:44px}.operation-bar .wordmark{font-size:25px;color:white}.operation-bar a{text-decoration:none}.operation-bar a[aria-current=page]{text-decoration:underline;text-underline-offset:4px}.operation-bar span{margin-left:auto;opacity:.82}.operation-bar a:focus-visible{outline-color:white}
@media(max-width:1150px){.nav{gap:10px}.nav a{font-size:12px}.header-inner{gap:16px}.four-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.header-inner{min-height:64px}.nav{display:none;position:absolute;top:64px;left:0;right:0;background:var(--vani-nacar);padding:20px var(--gutter);box-shadow:0 14px 25px #2e142726;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:10px 0;font-size:16px}.header-cta{margin-left:auto}.menu-button{display:block}.hero-layout,.split,.contact-grid{grid-template-columns:1fr}.hero-art{min-height:460px}.hero-copy{max-width:760px}.v-section>.wrap{padding-block:76px}.three-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.phones{margin-top:30px}}@media(max-width:600px){:root{--gutter:18px}.v-section>.wrap{padding-block:64px}.header-cta{padding:9px 14px;font-size:13px}.wordmark{font-size:32px}.hero-art{display:grid;gap:14px;min-height:0;padding:0}.dashboard{width:100%;transform:none}.hero-art>.phone{position:static;transform:none;width:100%;max-width:260px;margin:auto}.request-card{position:static}.three-grid,.four-grid,.two-grid{grid-template-columns:1fr}.timeline{grid-template-columns:1fr}.stat-grid strong{font-size:19px}.operation-bar span{display:none}.footer-inner{justify-content:flex-start;flex-direction:column;align-items:flex-start;padding-block:26px}.form-grid{grid-template-columns:1fr}.contact-panel{padding:20px}.v-button{width:100%}.actions{display:grid}.service-chips{padding-top:0!important}.phones .phone{width:100%}}@media(max-width:360px){.header-inner{gap:8px}.wordmark{font-size:28px}.header-cta{padding:8px 10px}.menu-button{padding:7px 10px}.mock-card{padding:17px}.stat-grid{gap:4px}.stat-grid div{padding:6px}.dashboard .mock-heading{font-size:23px}.schedule{gap:4px}.schedule span{font-size:10px}.hero-checks{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* La navegación acompaña el recorrido sin cubrir los destinos del menú. */
html{scroll-padding-top:104px}
body{overflow-x:clip}
.v-header{position:sticky;top:0;z-index:40}
@media(max-width:900px){html{scroll-padding-top:80px}}

.dark .identity .chip{background:var(--vani-rose-soft);color:var(--vani-plum)}

/* Vistas comerciales: teléfono del equipo y sitio personalizable. */
.team-phone{position:relative;flex:none;width:250px;height:510px;padding:8px;border:3px solid #271a27;border-radius:42px;background:#271a27;box-shadow:0 27px 55px #170c1b55, inset 0 0 0 1px #ffffff45;color:var(--vani-plum);font-family:var(--font-body);text-align:left}
.phone-speaker{position:absolute;z-index:2;top:12px;left:50%;width:76px;height:18px;transform:translateX(-50%);border-radius:0 0 14px 14px;background:#271a27}
.phone-screen{height:100%;border-radius:32px;overflow:hidden;background:#fffaf8;display:flex;flex-direction:column}
.phone-status{height:35px;padding:8px 20px 0;display:flex;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:.02em}
.phone-brand{display:flex;align-items:center;gap:7px;padding:12px 17px;border-bottom:1px solid #eadde3;color:#4f3044;font-size:11px;font-weight:700}
.phone-brand-mark{font-family:var(--font-display);font-size:23px;font-style:italic;line-height:1;color:var(--vani-berry)}
.phone-avatar{margin-left:auto;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#ead0d9;color:var(--vani-berry)}
.phone-content{flex:1;min-height:0;padding:18px 17px 10px}
.phone-kicker{margin:0 0 9px!important;color:#8e2b5c;font-size:9px!important;font-weight:700;letter-spacing:.12em}
.phone-content h3{font-family:var(--font-display);font-size:27px;line-height:1.08;letter-spacing:-.03em;font-weight:500;margin:0 0 7px}
.phone-content h3 span{color:var(--vani-berry)}
.phone-subtitle{font-size:11px!important;color:#765e6c;margin:0 0 16px!important}
.phone-day{display:flex;justify-content:space-between;gap:7px;background:#f1e0e7;border-radius:12px;padding:12px;font-size:10px}
.phone-day strong{color:#7b2c51}
.phone-section-title{display:flex;justify-content:space-between;align-items:center;margin:19px 0 8px;font-size:11px}
.phone-section-title span{color:var(--vani-berry);font-size:9px}
.appointment{display:grid;grid-template-columns:34px 3px minmax(0,1fr);gap:7px;min-height:67px;align-items:start}
.appointment time{font-size:10px;font-weight:700;padding-top:8px}
.appointment-line{height:100%;border-radius:4px;background:#ead8e1}
.appointment.current .appointment-line{background:var(--vani-berry)}
.appointment>div{display:grid;gap:2px;padding:6px 8px 8px;border-radius:9px}
.appointment.current>div{background:#f4e5eb}
.appointment small{font-size:8px;letter-spacing:.04em;color:#956a81}
.appointment strong{font-size:10px;line-height:1.15}
.appointment div>span{font-size:9px;color:#705766}
.phone-bottom-nav{display:flex;justify-content:space-around;align-items:center;height:48px;border-top:1px solid #eee1e6;background:#fff;font-size:15px;color:#907c88}
.phone-bottom-nav>span{display:grid;place-items:center;line-height:1}
.phone-bottom-nav .active{color:var(--vani-berry)}
.phone-bottom-nav small{font-size:8px;margin-top:3px;color:inherit}
.treatment-progress{display:grid;grid-template-columns:1fr auto;gap:5px;margin:24px 0 20px;font-size:9px}
.treatment-progress strong{color:var(--vani-berry)}
.treatment-progress>div{grid-column:1/-1;height:6px;border-radius:10px;background:#ead8e1;overflow:hidden}
.treatment-progress i{display:block;width:62%;height:100%;background:var(--vani-berry);border-radius:10px}
.treatment-step{display:flex;gap:10px;padding:11px 0;border-top:1px solid #eadde3;align-items:center}
.treatment-step>span{display:grid;place-items:center;width:26px;height:26px;flex:none;border-radius:50%;border:1px solid #dccbd3;color:#896e7d;font-size:9px;font-weight:700}
.treatment-step.done>span,.treatment-step.active>span{background:var(--vani-berry);border-color:var(--vani-berry);color:#fff}
.treatment-step>div{display:grid;gap:1px}
.treatment-step strong{font-size:11px}
.treatment-step small{font-size:9px;color:#806a76}
.phone-note{padding:10px;margin-top:9px;border-radius:9px;background:#f1e0e7;color:#6e3052;font-size:9px;line-height:1.3}
.phone-bottom-action{display:flex;justify-content:space-between;align-items:center;padding:9px 11px;margin-top:11px;background:var(--vani-berry);color:white;border-radius:9px;font-size:10px;font-weight:700}
.hero-art{min-height:610px}
.hero-art>.hero-team-phone{position:absolute;z-index:2;top:12px;right:0;width:280px;height:560px;transform:none}
.hero-team-phone .phone-content{padding:20px 19px 12px}
.hero-team-phone .phone-brand{font-size:12px}
.hero-team-phone .phone-content h3{font-size:30px}
.hero-team-phone .phone-subtitle{font-size:12px!important}
.hero-team-phone .phone-day{font-size:11px}
.hero-team-phone .phone-section-title{font-size:12px}
.hero-team-phone .phone-section-title span{font-size:10px}
.hero-team-phone .appointment{grid-template-columns:37px 3px minmax(0,1fr);min-height:73px}
.hero-team-phone .appointment time,.hero-team-phone .appointment strong{font-size:11px}
.hero-team-phone .appointment small{font-size:9px}
.hero-team-phone .appointment div>span{font-size:10px}
.hero-art>.dashboard{position:absolute;left:0;top:92px;width:76%;min-height:350px}
.hero-art>.request-card{z-index:3;bottom:28px;left:2%}
.hero-title{font-size:clamp(48px,5.8vw,72px);line-height:1.12;letter-spacing:-.035em;margin-bottom:0}
.hero-title span,.hero-title em{display:block;white-space:nowrap}
.hero-copy .actions{margin:31px 0 25px}
.hero-specialties{margin-top:29px;padding-top:18px;border-top:1px solid #cfaebd}
.hero-specialties-label{display:block;margin-bottom:9px;color:var(--vani-berry);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.hero-specialties-list{display:flex;flex-wrap:wrap;gap:4px 0;color:var(--vani-text);font-size:12px;font-weight:600;line-height:1.5}
.hero-specialties-list span{white-space:nowrap}
.hero-specialties-list span:not(:last-child)::after{content:'·';margin:0 10px;color:var(--vani-berry)}
@media(min-width:901px){.hero-layout{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(34px,4vw,58px)}}
@media(max-width:600px){.hero-title{font-size:clamp(26px,8vw,48px)}.hero-copy .actions{margin:27px 0 22px}.hero-specialties{margin-top:22px}.hero-specialties-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;font-size:12px}.hero-specialties-list span::before{content:'·';margin-right:7px;color:var(--vani-berry)}.hero-specialties-list span:not(:last-child)::after{content:none}}
.site-section{background:radial-gradient(circle at 84% 10%,#552943 0,transparent 30%),var(--vani-plum)!important}
.site-section-head{display:flex;justify-content:space-between;align-items:end;gap:36px}
.site-section-head .section-intro{max-width:810px;margin-bottom:34px}
.site-section-aside{border-left:1px solid #ffffff4a;padding-left:20px;color:#e9d5e1;font-size:14px;line-height:1.5;margin-bottom:44px;min-width:205px}
.site-section-aside strong{color:white;font-size:16px}
.site-showcase{display:grid;grid-template-columns:minmax(230px,.34fr) minmax(0,1fr);gap:22px;align-items:stretch}
.site-controls{display:flex;flex-direction:column;gap:12px}
.site-switch{display:grid;grid-template-columns:30px 1fr auto;gap:9px;align-items:start;width:100%;padding:22px 18px;text-align:left;color:#f4e7ef;background:#ffffff0c;border:1px solid #ffffff38;border-radius:17px;transition:background .3s,border-color .3s,transform .3s}
.site-switch:hover{transform:translateX(4px);background:#ffffff1a}
.site-switch.is-active{color:var(--vani-plum);background:#f8e9ed;border-color:#f8e9ed}
.site-switch-number{font-size:11px;font-weight:700;opacity:.7}
.site-switch strong,.site-switch small{display:block}
.site-switch strong{font-family:var(--font-display);font-size:22px;line-height:1.2;font-weight:600}
.site-switch small{font-size:12px;margin-top:8px;opacity:.75}
.site-switch-arrow{font-size:20px;line-height:1}
.site-customize-note{display:flex;align-items:flex-start;gap:14px;margin-top:auto;padding:18px;border:1px solid #ffffff36;border-radius:17px;background:#ffffff0d}
.site-customize-icon{font-size:29px;color:#f2cbd9}
.site-customize-note p{font-size:13px;line-height:1.45;color:#ead7e2;margin:0}
.site-customize-note strong{display:block;font-size:15px;color:white;margin-bottom:6px}
.site-stage{position:relative;min-height:535px;border-radius:20px;box-shadow:0 30px 65px #1709186b}
.site-preview{position:absolute;inset:0;overflow:hidden;border-radius:20px;background:#fff;color:#2d1823}
.site-preview[hidden]{display:none}
.site-preview.is-active{animation:site-appear .48s cubic-bezier(.22,1,.36,1) both}
@keyframes site-appear{from{opacity:.55;transform:translateY(14px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
.site-browser-bar{height:34px;display:flex;align-items:center;gap:12px;padding:0 14px;background:#f0e9eb;color:#6c5763;font-size:10px}
.browser-dots{display:flex;gap:4px}
.browser-dots i{width:7px;height:7px;border-radius:50%;background:#c3adb8}
.browser-address{margin:auto;background:#fff;min-width:190px;text-align:center;border-radius:4px;line-height:18px}
.browser-menu{font-size:13px}
.site-page{height:calc(100% - 34px);overflow:hidden;background:#faf5f0}
.site-page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;height:61px;padding:0 25px}
.site-page-header>strong{font-family:var(--font-display);font-size:22px;font-style:italic}
.site-page-header nav{display:flex;gap:18px;font-size:11px}
.site-reserve,.site-page-cta{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#7f3758;color:white;padding:9px 15px;font-size:11px;font-weight:700;white-space:nowrap}
.site-page-hero{display:grid;grid-template-columns:1fr 44%;min-height:278px;margin:0 16px;border-radius:12px;overflow:hidden;background:#ead6da}
.site-page-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:25px 28px}
.site-page-copy small{font-size:10px;letter-spacing:.11em;font-weight:700;color:#795b67}
.site-page-copy>strong{font-family:var(--font-display);font-size:clamp(27px,3vw,43px);line-height:1.14;font-weight:500;letter-spacing:-.025em;margin:16px 0 10px}
.site-page-copy p{font-size:12px;color:#604d58;margin-bottom:16px}
.site-hero-image{background:#d4b8be url('/assets/hero-cabello-v2.png') center 40%/cover no-repeat}
.site-services-heading{display:flex;justify-content:space-between;align-items:center;padding:22px 26px 11px}
.site-services-heading strong{font-family:var(--font-display);font-size:18px;font-weight:500}
.site-services-heading span{font-size:10px;color:#8e2b5c}
.site-service-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:0 26px 20px}
.site-service-cards>div{display:grid;grid-template-columns:58px 1fr;column-gap:10px;align-content:center;min-height:64px;border:1px solid #e8dfe0;border-radius:9px;overflow:hidden;background:white}
.site-service-cards img{grid-row:span 2;width:58px;height:64px;object-fit:cover}
.site-service-cards span{font-size:11px;font-weight:700;align-self:end}
.site-service-cards small{font-size:9px;color:#806c77;align-self:start}
.site-preview-lis .site-page{background:#fcf5f5}
.site-preview-lis .site-page-header>strong{font-family:var(--font-body);font-style:normal;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.site-preview-lis .site-page-hero{background:#f3e2e3}
.site-preview-lis .site-page-copy>strong{font-style:italic}
.site-preview-lis .site-hero-image{background-image:url('/assets/hero-manicure-tienda-v2.png')}
.site-preview-lis .site-reserve,.site-preview-lis .site-page-cta{background:#a34d67}
.site-disclaimer{font-size:12px;color:#e0cbd8;margin:16px 0 0}
.app-section{overflow:hidden;background:radial-gradient(circle at 76% 49%,#5f324f 0,transparent 35%),var(--vani-plum)!important}
.app-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:30px;align-items:center}
.app-story .section-intro{margin-bottom:30px}
.app-benefits{display:grid;gap:0;border-top:1px solid #ffffff3b;max-width:570px}
.app-benefits>div{display:flex;gap:18px;padding:18px 0;border-bottom:1px solid #ffffff3b}
.app-benefits>div>span{font-family:var(--font-display);font-size:20px;color:#dfacbf;line-height:1}
.app-benefits p{font-size:14px;line-height:1.5;color:#f4e8ef;margin:0}
.app-benefits strong{display:block;color:white;font-size:16px;margin-bottom:3px}
.app-note{color:#ddc8d5;margin-top:22px}
.app-visual{position:relative;min-height:620px;display:flex;align-items:center;justify-content:center;padding:25px}
.app-visual-glow{position:absolute;width:480px;height:480px;max-width:100%;border-radius:50%;background:radial-gradient(circle,#b16a8b5a,transparent 68%)}
.app-phone{z-index:1}
.app-phone-front{transform:translate(35px,5px) rotate(-8deg)}
.app-phone-back{z-index:0;transform:translate(-9px,18px) rotate(8deg)}
.app-floating-label{position:absolute;z-index:3;bottom:34px;left:10%;padding:12px 16px;border-radius:999px;background:#fff;color:var(--vani-plum);box-shadow:0 12px 32px #1f0d1a55;font-size:13px;font-weight:700}
.app-floating-label i{display:inline-block;width:8px;height:8px;background:#77ad7b;border-radius:50%;margin-right:7px}
@media(max-width:1000px){.site-showcase{grid-template-columns:1fr}.site-controls{display:grid;grid-template-columns:1fr 1fr}.site-customize-note{grid-column:1/-1}.site-stage{min-height:540px}.app-layout{grid-template-columns:1fr}.app-visual{min-height:600px}}
@media(max-width:900px){.hero-art{min-height:610px}.hero-art>.dashboard{width:72%}.hero-art>.hero-team-phone{right:4%}}
@media(max-width:600px){.hero-art{display:block;min-height:840px;margin-top:18px}.hero-art>.dashboard{position:relative;top:0;left:0;width:100%;min-height:300px;transform:none}.hero-art>.hero-team-phone{top:300px;left:50%;right:auto;transform:translateX(-50%) rotate(3deg) scale(.86);transform-origin:top center}.hero-art>.request-card{left:0;bottom:5px}.site-section-head{display:block}.site-section-aside{display:none}.site-controls{gap:8px}.site-switch{grid-template-columns:1fr auto;padding:15px}.site-switch-number{display:none}.site-switch strong{font-size:18px}.site-switch small{font-size:10px}.site-customize-note{grid-column:1/-1}.site-stage{min-height:480px}.site-page-header{height:50px;padding:0 14px}.site-page-header nav{display:none}.site-page-hero{grid-template-columns:1fr 39%;min-height:270px;margin:0 9px}.site-page-copy{padding:15px}.site-page-copy>strong{font-size:25px}.site-page-copy p{font-size:11px}.site-page-cta{white-space:normal;font-size:9px}.site-services-heading{padding:18px 15px 8px}.site-service-cards{padding:0 15px 15px;gap:6px}.site-service-cards>div{grid-template-columns:1fr}.site-service-cards img{display:none}.site-service-cards span,.site-service-cards small{padding:0 6px}.site-service-cards span{padding-top:9px}.site-service-cards small{padding-bottom:9px}.app-visual{min-height:540px;padding:0}.app-phone-front{transform:translate(50px,0) rotate(-7deg) scale(.89)}.app-phone-back{transform:translate(-62px,18px) rotate(8deg) scale(.85)}.app-floating-label{left:0;bottom:8px}}
@media(max-width:380px){.site-page-hero{grid-template-columns:1fr 32%}.site-page-copy>strong{font-size:22px}.site-reserve{font-size:9px;padding:7px}.app-phone-front{transform:translate(62px,0) rotate(-7deg) scale(.83)}.app-phone-back{transform:translate(-73px,18px) rotate(8deg) scale(.78)}}
@media(prefers-reduced-motion:reduce){.site-switch,.site-preview.is-active{transition:none;animation:none}}
@media(max-width:600px){.hero-art{min-height:880px}.hero-art>.hero-team-phone{left:50%;right:auto;transform:translateX(-50%)}.hero-art>.request-card{display:none}.app-layout{grid-template-columns:minmax(0,1fr)}.app-story,.app-visual{min-width:0}.app-visual{width:100%;overflow:hidden}.app-phone-front{transform:translate(65px,0) rotate(-7deg) scale(.86)}.app-phone-back{transform:translate(-75px,18px) rotate(8deg) scale(.8)}}

/* Boutique: una vitrina realista con productos del propio catálogo visual. */
.boutique-section{background:linear-gradient(125deg,#f9e9ec 0%,#f2dce4 62%,#f6e8eb 100%)!important}
.boutique-section .split{gap:clamp(32px,5vw,72px)}
.boutique-section .section-intro{margin-bottom:28px}
.boutique-section .check-list{gap:11px;font-size:16px}
.boutique-showcase{overflow:hidden;border:1px solid #ffffffb8;border-radius:26px;background:#fffaf8;box-shadow:0 26px 65px #6e3d5928;color:var(--vani-plum)}
.boutique-window-head{height:66px;padding:0 23px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ebdfe5;background:#fff}
.boutique-window-head>div{display:flex;align-items:center;gap:10px}
.boutique-window-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#8e2b5c;color:white;font-family:var(--font-display);font-size:20px;font-style:italic;line-height:1}
.boutique-window-head strong,.boutique-window-head small{display:block;line-height:1.2}
.boutique-window-head strong{font-family:var(--font-display);font-size:17px;font-weight:600}
.boutique-window-head small{font-size:10px;color:#846a79;margin-top:3px}
.boutique-bag-icon{position:relative;display:grid;place-items:center;width:33px;height:33px;border:1px solid #eadde3;border-radius:50%;font-size:21px;color:var(--vani-berry)}
.boutique-bag-icon svg{width:18px;height:18px}
.boutique-bag-icon b{position:absolute;top:-5px;right:-4px;display:grid;place-items:center;width:15px;height:15px;border-radius:50%;background:var(--vani-berry);color:white;font-size:9px;font-family:var(--font-body)}
.boutique-window-content{padding:23px}
.boutique-window-title{display:flex;justify-content:space-between;align-items:end;gap:10px;margin-bottom:17px}
.boutique-window-title small,.boutique-window-title strong{display:block}
.boutique-window-title small{font-size:9px;letter-spacing:.14em;font-weight:700;color:#9d597c;margin-bottom:5px}
.boutique-window-title strong{font-family:var(--font-display);font-size:25px;line-height:1.1;font-weight:500}
.boutique-view-all{font-size:10px;font-weight:700;color:var(--vani-berry);white-space:nowrap}
.boutique-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.boutique-product{overflow:hidden;border:1px solid #eee3e7;border-radius:16px;background:white;box-shadow:0 8px 20px #2e14270b}
.boutique-product-image{height:180px;position:relative;overflow:hidden;background:#ead9d9}
.boutique-product-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.boutique-product:hover .boutique-product-image img{transform:scale(1.06)}
.boutique-product-image>span{position:absolute;left:10px;top:10px;padding:5px 9px;border-radius:999px;background:#fffaf8e8;color:#723852;font-size:9px;font-weight:700;backdrop-filter:blur(6px)}
.boutique-product-info{padding:13px 14px 14px}
.boutique-product-info>small{font-size:9px;font-weight:700;letter-spacing:.1em;color:#9b7187}
.boutique-product-info h3{font-size:17px;line-height:1.25;margin:5px 0 12px}
.boutique-product-info>div{display:flex;justify-content:space-between;align-items:center}
.boutique-product-info strong{font-size:15px}
.boutique-add{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#f4e4ea;color:var(--vani-berry);font-size:18px;line-height:1}
.boutique-checkout{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:15px;border-radius:14px;background:#f4e7ec}
.boutique-checkout>div{display:grid;gap:1px}
.boutique-checkout small{font-size:9px;font-weight:700;letter-spacing:.1em;color:#9b5b7d}
.boutique-checkout strong{font-size:18px}
.boutique-checkout span{font-size:10px;color:#715362}
.boutique-checkout-button{display:flex;align-items:center;gap:16px;min-height:38px;padding:0 15px;border-radius:999px;background:var(--vani-berry);color:white!important;font-size:11px!important;font-weight:700;white-space:nowrap}
.boutique-checkout-button b{font-size:15px}
.boutique-caption{width:min(100%,calc(var(--container) + 2*var(--gutter)));padding:0 var(--gutter) 28px;margin:-55px auto 0;color:#856478;font-size:12px}
@media(max-width:900px){.boutique-caption{margin:-35px auto 0}.boutique-section .split{align-items:start}}
@media(max-width:600px){.boutique-window-content{padding:15px}.boutique-window-head{padding:0 15px}.boutique-window-title strong{font-size:20px}.boutique-product-image{height:145px}.boutique-product-info{padding:10px}.boutique-product-info h3{font-size:14px;min-height:35px}.boutique-product-info strong{font-size:13px}.boutique-checkout{align-items:start;flex-direction:column}.boutique-checkout-button{width:100%;justify-content:space-between}.boutique-caption{margin:-42px auto 0;padding-bottom:20px}}
@media(prefers-reduced-motion:reduce){.boutique-product-image img{transition:none}}

/* La dirección del salón: prioridades operativas antes que métricas decorativas. */
.control-section{background:#fcf8f5}
.control-intro .section-intro{max-width:930px;margin-bottom:36px}
.control-intro .lead{max-width:810px}
.control-layout{display:grid;grid-template-columns:minmax(0,.68fr) minmax(0,1.32fr);gap:clamp(32px,5vw,70px);align-items:center}
.control-benefits{display:grid;gap:0}
.control-benefit{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:20px 0;border-top:1px solid #d9c8d1}
.control-benefit-index{font-family:var(--font-display);font-size:22px;color:var(--vani-berry);line-height:1.1}
.control-benefit h3{font-size:20px;line-height:1.2;margin:0 0 6px}
.control-benefit p{font-size:15px;line-height:1.5;color:var(--vani-text);margin:0}
.control-context{display:flex;gap:14px;align-items:start;margin-top:8px;padding:19px 20px;border-radius:17px;background:var(--vani-rose-soft)}
.control-context>span{font-size:26px;line-height:1;color:var(--vani-berry)}
.control-context p{font-size:15px;line-height:1.4;margin:0}
.control-panel{overflow:hidden;border:1px solid #e7d9e0;border-radius:23px;background:#fff;box-shadow:0 25px 62px #2e14271c}
.control-panel-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;background:var(--vani-plum);color:#fff}
.control-panel-top>div{display:flex;align-items:center;gap:10px}
.control-panel-logo{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#ffffff21;font-family:var(--font-display);font-size:18px;font-style:italic}
.control-panel-top strong,.control-panel-top small{display:block;line-height:1.2}
.control-panel-top strong{font-size:13px}
.control-panel-top small{font-size:10px;color:#e1cbd8;margin-top:3px}
.control-panel-updated{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:700;color:#eadde5}
.control-panel-updated i{width:7px;height:7px;border-radius:50%;background:#8bce9c}
.control-panel-body{padding:22px}
.control-panel-heading{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:17px}
.control-panel-heading small{font-size:9px;letter-spacing:.12em;font-weight:700;color:#9e6683}
.control-panel-heading h3{font-family:var(--font-display);font-weight:500;font-size:26px;margin:5px 0 0}
.control-panel-heading>span{min-width:63px;padding:6px 10px;border:1px solid #e7d9e0;border-radius:8px;font-size:11px;font-weight:700;white-space:nowrap}
.control-panel-heading b{margin-left:8px;color:var(--vani-berry)}
.control-today{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.control-today>div{min-width:0;padding:14px;border-radius:11px;background:#f8eef2;border:1px solid #f0e3e9}
.control-today>div:first-child{background:#f1dfe7}
.control-today strong{display:block;font-family:var(--font-display);font-weight:600;font-size:27px;line-height:1.1}
.control-today span{display:block;font-size:10px;font-weight:700;margin-top:6px;color:#6e5866}
.control-panel-section-title{display:flex;justify-content:space-between;align-items:center;margin:23px 0 8px}
.control-panel-section-title strong{font-family:var(--font-display);font-size:21px;font-weight:500}
.control-panel-section-title span{font-size:10px;color:#946f82}
.control-action-list{display:grid;gap:7px}
.control-action-item{display:grid;grid-template-columns:34px minmax(0,1fr) 28px;align-items:center;gap:11px;min-height:63px;padding:8px 12px;border:1px solid #eee2e7;border-radius:11px;background:#fff}
.control-action-symbol{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#f5e6ec;color:var(--vani-berry);font-size:17px;font-weight:700}
.control-action-item strong,.control-action-item small{display:block;line-height:1.3}
.control-action-item strong{font-size:12px}
.control-action-item small{font-size:10px;color:#846e7a;margin-top:3px}
.control-action-item>b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#f1dfe7;color:var(--vani-berry);font-size:12px}
.control-panel-bottom{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:13px}
.control-panel-bottom>div{padding:12px;border-radius:10px;background:#faf5f7}
.control-panel-bottom small,.control-panel-bottom strong,.control-panel-bottom span{display:block}
.control-panel-bottom small{font-size:9px;letter-spacing:.1em;font-weight:700;color:#a06d88}
.control-panel-bottom strong{font-size:12px;margin:4px 0}
.control-panel-bottom span{font-size:9px;line-height:1.3;color:#806b76}
.control-disclaimer{color:#7b6772;font-size:12px;margin:15px 0 0}
@media(max-width:900px){.control-layout{grid-template-columns:1fr}.control-benefits{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.control-benefit{display:block}.control-benefit-index{display:block;margin-bottom:10px}.control-context{grid-column:1/-1}.control-panel{max-width:720px;width:100%;margin:auto}}
@media(max-width:600px){.control-benefits{grid-template-columns:1fr;gap:0}.control-benefit{display:grid;grid-template-columns:34px 1fr;padding:16px 0}.control-benefit-index{margin:0}.control-panel-body{padding:14px}.control-panel-heading h3{font-size:22px}.control-today>div{padding:10px 8px}.control-today strong{font-size:23px}.control-today span{font-size:9px}.control-action-item{grid-template-columns:27px minmax(0,1fr) 24px;gap:7px;padding:8px}.control-action-symbol{width:25px;height:25px;font-size:13px}.control-action-item strong{font-size:11px}.control-action-item small{font-size:9px}.control-panel-bottom{gap:6px}.control-panel-bottom>div{padding:9px}.control-panel-updated{font-size:0}.control-panel-updated i{width:8px;height:8px}}

/* Equipo y clientes: la reserva une especialidad, jornada e historial. */
.people-section .section-intro{max-width:930px;margin-bottom:36px}
.people-section .lead{max-width:790px}
.people-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px;align-items:stretch}
.people-photo{position:relative;min-height:610px;overflow:hidden;border-radius:24px;background:#dac1c3}
.people-photo::after{content:'';position:absolute;inset:42% 0 0;background:linear-gradient(0deg,#28151ec9,transparent);pointer-events:none}
.people-photo>img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:37% center}
.people-photo-note{position:absolute;z-index:1;left:28px;right:28px;bottom:27px;display:flex;gap:14px;align-items:start;color:white}
.people-photo-note>span{display:grid;place-items:center;width:40px;height:40px;flex:none;border:1px solid #ffffff70;border-radius:50%;font-size:22px;animation:people-breathe 5s ease-in-out infinite}
.people-photo-note p{font-size:15px;line-height:1.4;margin:0}
.people-photo-note strong{display:block;font-family:var(--font-display);font-weight:500;font-size:25px;line-height:1.2;margin-bottom:6px}
@keyframes people-breathe{50%{transform:translateY(-5px);background:#ffffff27}}
.people-flow{display:flex;flex-direction:column;justify-content:center;min-width:0;padding:28px;border-radius:24px;background:linear-gradient(155deg,#f5e5eb,#f9f2f2);border:1px solid #eee0e7}
.people-flow-head{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#8d5272;font-size:10px;font-weight:700;letter-spacing:.1em;margin-bottom:16px}
.people-flow-head span:last-child{letter-spacing:0;color:#8d6e7e}
.people-flow-card{padding:22px;border:1px solid #eadde3;border-radius:18px;background:#fff;box-shadow:0 10px 24px #5c2c4710}
.people-flow-step{display:flex;align-items:center;gap:11px;margin-bottom:18px}
.people-flow-step span{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f3e0e8;color:var(--vani-berry);font-family:var(--font-display);font-size:14px}
.people-flow-step strong{font-family:var(--font-display);font-size:22px;font-weight:500}
.people-service,.people-assignment,.people-client-top{display:flex;align-items:center;gap:12px}
.people-service{padding:14px;border-radius:12px;background:#faf1f4}
.people-service-symbol{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e5c9d5;color:var(--vani-berry);font-size:19px}
.people-service>div,.people-assignment>div,.people-client-top>div{display:grid;gap:3px;min-width:0}
.people-service small{font-size:9px;font-weight:700;letter-spacing:.08em;color:#9b607e}
.people-service strong{font-size:16px}
.people-service-time{margin-left:auto;font-size:11px;font-weight:700;white-space:nowrap}
.people-assignment{padding:15px 3px 0}
.people-avatar{display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:50%;background:#b76d8b;color:white;font-family:var(--font-display);font-size:14px;font-weight:600}
.people-assignment strong,.people-client-top strong{font-size:14px}
.people-assignment small,.people-client-top small{font-size:11px;color:#816c77}
.people-match,.people-client-tag{margin-left:auto;white-space:nowrap;padding:5px 8px;border-radius:999px;background:#e7f0e8;color:#386347;font-size:10px;font-weight:700}
.people-flow-connector{display:flex;align-items:center;justify-content:center;height:34px;gap:6px;color:var(--vani-berry)}
.people-flow-connector span{height:1px;width:35px;background:#cfafbf}
.people-flow-connector i{font-size:21px;font-style:normal;line-height:1;animation:people-drop 2.6s ease-in-out infinite}
@keyframes people-drop{50%{transform:translateY(4px)}}
.people-client-card{background:#fffaf8}
.people-client-top{margin-bottom:15px}
.people-avatar.client{background:#dec2d0;color:#6e3153}
.people-client-tag{background:#f3e3e9;color:var(--vani-berry)}
.people-client-facts{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.people-client-facts>div{padding:11px 12px;border-radius:10px;background:#f8edf1}
.people-client-facts strong{display:block;font-family:var(--font-display);font-size:23px;line-height:1}
.people-client-facts span{display:block;font-size:10px;color:#7f6974;margin-top:4px}
.people-client-detail{display:flex;justify-content:space-between;gap:9px;padding-top:13px;margin-top:14px;border-top:1px solid #ebdce3;font-size:11px}
.people-client-detail strong{color:var(--vani-berry)}
.people-bottom{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:20px;padding:16px 18px;border-radius:14px;background:var(--vani-plum);color:#f8eaf1;font-size:12px;font-weight:600}
.people-bottom span::before{content:'✓';color:#e4acbf;margin-right:8px}
.people-disclaimer{color:#897680;font-size:12px;margin:13px 0 0}
@media(max-width:900px){.people-layout{grid-template-columns:1fr}.people-photo{min-height:410px}.people-flow{max-width:none}}
@media(max-width:600px){.people-photo{min-height:330px}.people-photo-note{left:18px;right:18px;bottom:18px}.people-photo-note strong{font-size:20px}.people-photo-note p{font-size:12px}.people-photo-note>span{width:32px;height:32px;font-size:17px}.people-flow{padding:15px}.people-flow-card{padding:14px}.people-flow-step strong{font-size:19px}.people-service{padding:10px}.people-service strong{font-size:14px}.people-assignment{gap:7px}.people-match,.people-client-tag{font-size:9px;padding:4px 6px}.people-bottom{display:grid;padding:14px}}
@media(prefers-reduced-motion:reduce){.people-photo-note>span,.people-flow-connector i{animation:none}}

/* Integraciones: directorio completo con detalle intercambiable, sin scroll interno. */
.integrations-section{background:linear-gradient(155deg,#fbf7f3,#f7ecee)}
.integrations-section>.wrap{padding-block:70px}
.integrations-heading{margin-bottom:28px}
.integrations-heading .section-intro{max-width:850px;margin:0}
.integrations-heading .section-intro h2{margin:0}
.integration-explorer{display:grid;grid-template-columns:minmax(0,.43fr) minmax(0,.57fr);overflow:hidden;border:1px solid #e4d5dd;border-radius:23px;background:#fff;box-shadow:0 20px 50px #48223712}
.integration-list{display:grid;grid-template-rows:repeat(6,1fr);border-right:1px solid #e9dce2}
.integration-option{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-content:center;gap:4px 12px;min-width:0;min-height:65px;padding:10px 22px;border:0;border-bottom:1px solid #eee5e9;background:#fff;color:var(--vani-plum);text-align:left;transition:background .25s ease,box-shadow .25s ease}
.integration-option:last-child{border-bottom:0}
.integration-option:hover,.integration-option:focus-visible{background:#fbf2f5}
.integration-option.is-active{background:#f8ebf0;box-shadow:inset 4px 0 var(--vani-berry)}
.integration-option-label{font-size:13px;font-weight:750;line-height:1.2}
.integration-option-brands{display:flex;flex-wrap:wrap;gap:2px 13px;grid-column:1;min-width:0}
.integration-name{font-family:var(--font-body);font-weight:700;letter-spacing:0;line-height:1.3}
.integration-option-brands .integration-name{font-size:12px}
.integration-option-arrow{grid-column:2;grid-row:1/3;align-self:center;color:#a45f80;font-size:17px;line-height:1}
.integration-name.webpay{color:#a82e79}
.integration-name.mercadopago{color:#087cac}
.integration-name.mercadolibre{color:#9b7200}
.integration-name.whatsapp{color:#16834c}
.integration-name.meta{color:#1877f2}
.integration-name.starken{color:#d82e32}
.integration-name.chilexpress{color:#cb2428}
.integration-name.sii{color:#185f9d}
.integration-name.pdp{color:#702c58}
.integration-stage{min-width:0;min-height:390px;background:linear-gradient(145deg,#32172b,#552843);color:#fff}
.integration-detail{display:flex;flex-direction:column;min-height:390px;padding:clamp(27px,3vw,42px);animation:integration-reveal .35s ease both}
.integration-detail[hidden]{display:none}
.integration-detail-kicker{color:#f2bfd4;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.integration-detail h3{max-width:560px;margin:24px 0 14px;font-family:var(--font-display);font-size:clamp(32px,3.1vw,45px);font-weight:500;letter-spacing:-.035em;line-height:1.11}
.integration-detail p{max-width:510px;margin:0;color:#f1dfe9;font-size:16px;line-height:1.5}
.integration-connection{display:flex;align-items:center;gap:18px;min-height:92px;margin-top:auto;padding:19px 23px;border-radius:15px;background:#fffaf8;color:var(--vani-plum)}
.integration-connection-vani{flex:none;color:var(--vani-berry);font-family:var(--font-display);font-size:29px;font-style:italic;font-weight:600;line-height:1}
.integration-connection-line{flex:1;min-width:24px;max-width:80px;height:1px;background:#d9beca}
.integration-connection>div{display:flex;align-items:center;flex-wrap:wrap;gap:4px 18px;min-width:0}
.integration-connection .integration-name{font-size:19px}
.integrations-disclaimer{margin:18px 0 0;color:#87717d;font-size:11px;line-height:1.45}
@keyframes integration-reveal{from{opacity:.35;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.integration-explorer{grid-template-columns:1fr}.integration-list{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,1fr);gap:8px;padding:8px;border-right:0;border-bottom:1px solid #e9dce2}.integration-option{min-height:77px;border:1px solid #eee5e9;border-radius:10px}.integration-option:last-child{border-bottom:1px solid #eee5e9}.integration-stage,.integration-detail{min-height:310px}}
@media(max-width:600px){.integrations-section>.wrap{padding-block:36px}.integrations-heading{margin-bottom:18px}.integration-list{gap:6px;padding:7px}.integration-option{min-height:77px;padding:9px 12px;gap:3px}.integration-option-label{font-size:12px}.integration-option-brands .integration-name{font-size:10px}.integration-option-arrow{display:none}.integration-stage,.integration-detail{min-height:270px}.integration-detail{padding:23px 22px}.integration-detail h3{margin:16px 0 9px;font-size:30px}.integration-detail p{font-size:14px}.integration-connection{display:block;min-height:0;padding:14px 17px}.integration-connection-vani{font-size:24px}.integration-connection-line{display:none}.integration-connection>div{margin-top:8px;gap:3px 12px}.integration-connection .integration-name{font-size:15px}}
@media(prefers-reduced-motion:reduce){.integration-option{transition:none}.integration-detail{animation:none}}

/* Reservas: recorrido guiado del sitio de Centro Vera a administración. */
.booking-section{background:#f8f0f1}
.booking-heading{display:flex;align-items:end;justify-content:space-between;gap:34px;margin-bottom:28px}
.booking-heading .section-intro{max-width:690px;margin:0}
.booking-heading .section-intro h2{max-width:680px}
.booking-heading>p{max-width:345px;margin:0 0 5px;color:#6e5865;font-size:15px;line-height:1.5}
.booking-demo{overflow:hidden;border:1px solid #e5d5dc;border-radius:24px;background:#fff;box-shadow:0 25px 55px #4d223314}
.booking-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid #eadde3;background:#fdf9f8}
.booking-progress-step{position:relative;display:flex;align-items:center;min-height:64px;padding:14px 22px;border:0;border-right:1px solid #eadde3;background:transparent;color:#8d7984;text-align:left}
.booking-progress-step:last-child{border-right:0}
.booking-progress-step strong{font-size:13px;font-weight:700;line-height:1.2}
.booking-progress-step.is-active{background:#fff;color:var(--vani-plum)}
.booking-progress-step.is-active:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--vani-berry)}
.booking-demo[data-playing="true"] .booking-progress-step.is-active:after{content:"";position:absolute;bottom:0;left:0;height:3px;background:#bd648e;animation:booking-countdown var(--booking-duration,4.4s) linear both}
@keyframes booking-countdown{from{width:0}to{width:100%}}
.booking-stage{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;min-height:505px;padding:18px;background:#f7eeef}
.booking-demo[data-step="3"] .booking-stage{grid-template-columns:minmax(0,1fr) minmax(0,.9fr)}
.booking-site,.booking-admin{min-width:0;overflow:hidden;border:1px solid #e3d7dc;border-radius:16px;background:#fff;box-shadow:0 12px 28px #47253a0c}
.booking-admin[hidden]{display:none!important}
.booking-site-bar,.booking-admin-bar{display:flex;align-items:center;gap:12px;min-height:57px;padding:10px 22px;border-bottom:1px solid #eee4e8}
.booking-site-bar{justify-content:space-between}
.booking-site-brand{font-family:var(--font-display);font-size:22px;font-weight:600;line-height:1}
.booking-site-brand small{display:block;margin-top:5px;color:#937c89;font-family:var(--font-body);font-size:8px;font-weight:700;letter-spacing:.15em}
.booking-site-bar>span:last-child{color:#9b6880;font-size:10px;font-weight:700;letter-spacing:.12em}
.booking-site-body{display:grid;min-height:500px;padding:26px 30px}
.booking-scene{grid-area:1/1;min-width:0}
.booking-scene[hidden]{display:none!important}
.booking-scene-head small,.booking-scene-success>small{color:var(--vani-berry);font-size:10px;font-weight:700;letter-spacing:.13em}
.booking-scene-head h3,.booking-scene-success h3{margin:8px 0 5px;font-family:var(--font-display);font-size:clamp(27px,2.9vw,38px);font-weight:500;line-height:1.12}
.booking-scene-head p{margin:0 0 20px;color:#725e6a;font-size:13px}
.booking-catalog{display:grid;gap:9px}
.booking-demo:not([data-step="3"]) .booking-catalog{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:16px}
.booking-catalog-card{display:grid;grid-template-columns:150px minmax(0,1fr);gap:17px;min-height:164px;overflow:hidden;border:1px solid #d8b9c8;border-radius:11px;background:#fff9fa;box-shadow:0 6px 20px #8e2b5c0c}
.booking-demo:not([data-step="3"]) .booking-catalog-card{grid-template-columns:minmax(170px,38%) minmax(0,1fr);min-height:280px}
.booking-demo:not([data-step="3"]) .booking-catalog-card img{width:100%;min-height:280px}
.booking-catalog-card img{width:150px;height:100%;min-height:164px;object-fit:cover}
.booking-catalog-card>div{display:grid;align-content:center;gap:3px;padding:13px 15px 13px 0}
.booking-catalog-card small,.booking-catalog-secondary small{color:#a25c7d;font-size:9px;font-weight:700;letter-spacing:.1em}
.booking-catalog-card strong{font-family:var(--font-display);font-size:23px;font-weight:600;line-height:1.1}
.booking-catalog-card span,.booking-catalog-secondary span{font-size:12px;color:#68525e}
.booking-catalog-choose{display:flex;justify-content:space-between;align-items:center;width:max-content;gap:14px;margin-top:9px;padding:8px 11px;border:0;border-radius:6px;background:var(--vani-berry);color:#fff;font-size:10px;font-weight:700}
.booking-catalog-card i{font-size:15px;font-style:normal;line-height:1}
.booking-catalog-secondary{display:grid;grid-template-columns:70px 1fr;gap:12px;align-items:center;overflow:hidden;border:1px solid #efe5e9;border-radius:10px}
.booking-demo:not([data-step="3"]) .booking-catalog-secondary{grid-template-columns:1fr;align-content:start;background:#fffcfb}
.booking-demo:not([data-step="3"]) .booking-catalog-secondary img{width:100%;height:177px}
.booking-demo:not([data-step="3"]) .booking-catalog-secondary>div{padding:0 18px 18px}
.booking-demo:not([data-step="3"]) .booking-catalog-secondary strong{font-family:var(--font-display);font-size:20px}
.booking-catalog-secondary img{width:70px;height:68px;object-fit:cover}
.booking-catalog-secondary>div{display:grid;gap:1px}
.booking-catalog-secondary strong{font-size:13px}
.booking-fields{display:grid;gap:11px;margin-top:29px}
.booking-configuration{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:start;gap:24px}
.booking-configuration .booking-fields{margin-top:0}
.booking-service-preview{position:relative;overflow:hidden;height:284px;border-radius:12px;background:#f4e8e7}
.booking-service-preview img{width:100%;height:100%;object-fit:cover}
.booking-service-preview>span{position:absolute;right:12px;bottom:12px;left:12px;display:flex;justify-content:space-between;gap:8px;padding:12px 15px;border-radius:7px;background:#fffdfbf0;color:var(--vani-plum);font-size:10px;font-weight:700;letter-spacing:.06em}
.booking-service-preview strong{font-size:11px;letter-spacing:0;white-space:nowrap}
.booking-fields>div{position:relative;display:grid;gap:4px;min-height:68px;padding:11px 37px 11px 15px;border:1px solid #e2d3da;border-radius:9px;background:#fff}
.booking-fields>div.is-highlighted{border-color:#bb7a98;background:#fff7fa}
.booking-fields small{color:#a26782;font-size:9px;font-weight:700;letter-spacing:.1em}
.booking-fields strong{font-size:14px;font-weight:600;line-height:1.2}
.booking-fields>div>span{position:absolute;right:16px;top:24px;color:var(--vani-berry)}
.booking-scene-note{margin:19px 0 0;color:#705d68;font-size:12px;line-height:1.4}
.booking-next{display:flex;align-items:center;gap:15px;margin-top:16px;padding:8px 0;border:0;background:transparent;color:var(--vani-berry);font-size:12px;font-weight:700}
.booking-next:hover{text-decoration:underline}
.booking-calendar{padding:14px;border:1px solid #e9dbe1;border-radius:12px;background:#fffaf9}
.booking-schedule-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:20px;align-items:stretch}
.booking-contact-panel{display:flex;flex-direction:column;justify-content:center;padding:22px;border:1px solid #eadde3;border-radius:12px;background:#fffcfb}
.booking-contact-panel>small{color:var(--vani-berry);font-size:10px;font-weight:700;letter-spacing:.1em}
.booking-contact-panel>p{margin:0 0 17px;color:#705d68;font-size:12px;line-height:1.45}
.booking-calendar-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.booking-calendar-heading strong{font-family:var(--font-display);font-size:18px;font-weight:600}
.booking-calendar-heading span{color:#8e6a7d;font-size:10px}
.booking-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.booking-days>span{display:grid;place-items:center;min-height:53px;border:1px solid #e9dbe1;border-radius:8px;background:#fff;color:#795e6b;font-size:9px;font-weight:700}
.booking-days strong{font-family:var(--font-display);font-size:20px;font-weight:500;line-height:1}
.booking-days .is-selected{border-color:var(--vani-berry);background:var(--vani-berry);color:#fff}
.booking-hours{display:flex;gap:8px;margin-top:10px}
.booking-hours>*{display:grid;flex:1;place-items:center;min-height:36px;border:1px solid #e0cbd5;border-radius:7px;font-size:11px;font-weight:600}
.booking-hours strong{border-color:#b6658a;background:#faeaf0;color:var(--vani-berry)}
.booking-contact{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:13px 0 10px;padding:10px 13px;border:1px solid #eadde3;border-radius:8px}
.booking-contact>span{display:grid;gap:1px}.booking-contact b{font-size:12px}.booking-contact small{color:#816c78;font-size:10px}
.booking-contact .booking-consent{display:flex;align-items:center;gap:5px;color:#1c765c;font-size:12px;font-weight:700}
.booking-submit-preview{display:flex;justify-content:space-between;align-items:center;width:100%;padding:11px 15px;border:0;border-radius:8px;background:var(--vani-berry);color:#fff;font-size:12px;font-weight:700;text-align:left}
.booking-scene-success{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;max-width:430px;padding:15px}
.booking-success-mark{display:grid;place-items:center;width:47px;height:47px;margin-bottom:22px;border-radius:12px;background:#e5f1e9;color:#2c765b;font-size:25px}
.booking-scene-success p{max-width:390px;color:#705d68;font-size:14px;line-height:1.5}
.booking-receipt{display:grid;gap:3px;width:min(100%,330px);margin-top:15px;padding:15px 18px;border-left:3px solid var(--vani-berry);background:#faf0f4}
.booking-receipt span{color:#a36380;font-size:9px;font-weight:700;letter-spacing:.1em}
.booking-receipt strong{font-size:15px}.booking-receipt small{color:#7b6671;font-size:11px}
.booking-admin{background:#fefbfa}
.booking-admin-bar{background:#351b2e;color:#fff;font-size:12px;font-weight:700}
.booking-admin-mark{display:grid;place-items:center;width:29px;height:29px;border-radius:7px;background:#fff0f5;color:var(--vani-berry);font-family:var(--font-display);font-size:21px;font-style:italic}
.booking-admin-bar small{margin-left:auto;color:#e7cdd9;font-size:10px;font-weight:500}
.booking-admin-body{min-height:428px;padding:25px 27px}
.booking-admin-heading small{color:#a36481;font-size:10px;font-weight:700;letter-spacing:.12em}
.booking-admin-heading h3{margin:6px 0 23px;font-family:var(--font-display);font-size:29px;font-weight:500}
.booking-admin-request{overflow:hidden;border:1px solid #e4d5dc;border-radius:11px;background:#fff;box-shadow:0 12px 22px #48253b10}
.booking-request-top{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid #eee5e9}
.booking-request-top strong{font-size:12px}.booking-request-top span{padding:5px 8px;border-radius:5px;background:#fff0d9;color:#8c5a1a;font-size:10px;font-weight:700}
.booking-request-main{display:grid;gap:2px;padding:14px 16px 7px}.booking-request-main strong{font-size:15px}.booking-request-main span{color:#796573;font-size:12px}
.booking-admin-request dl{display:grid;gap:10px;margin:0;padding:10px 16px 17px}
.booking-admin-request dl>div{display:flex;justify-content:space-between;gap:8px;padding-top:8px;border-top:1px solid #f2e9ed}
.booking-admin-request dt{color:#a47189;font-size:9px;font-weight:700;letter-spacing:.08em}
.booking-admin-request dd{margin:0;font-size:11px;font-weight:700;text-align:right}
.booking-admin-request dd span{margin-left:9px;color:var(--vani-berry)}
.booking-request-actions{display:flex;gap:8px;padding:12px 16px;border-top:1px solid #eee5e9}
.booking-request-actions span{padding:8px;border:1px solid #e1ced7;border-radius:6px;font-size:10px;font-weight:700}
.booking-request-actions span:first-child{border-color:var(--vani-berry);background:var(--vani-berry);color:#fff}
.booking-admin-foot{margin:18px 0 0;color:#766271;font-size:11px;line-height:1.4}
.booking-demo-footer{display:flex;justify-content:flex-end;align-items:center;gap:26px;padding:16px 22px;border-top:1px solid #eadde3}
.booking-demo-footer button,.booking-demo-footer a{padding:0;border:0;background:none;color:var(--vani-berry);font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
.booking-demo-footer button:hover,.booking-demo-footer a:hover{text-decoration:underline}
.booking-demo-footer a span{margin-left:3px}
.booking-disclaimer{margin:13px 0 0;color:#816b77;font-size:12px;text-align:right}
@media(max-width:1050px){.booking-heading{align-items:start}.booking-stage{padding:12px}.booking-site-body{min-height:530px;padding:23px}.booking-admin-body{padding:22px}.booking-progress-step{padding-inline:12px}.booking-progress-step strong{font-size:12px}}
@media(max-width:850px){.booking-heading{display:block}.booking-heading>p{max-width:630px;margin:13px 0 0}.booking-demo[data-step="3"] .booking-stage{grid-template-columns:1fr}.booking-configuration,.booking-schedule-layout{grid-template-columns:1fr}.booking-service-preview{display:none}.booking-admin-body{min-height:400px}.booking-catalog{grid-template-columns:1fr!important}.booking-demo:not([data-step="3"]) .booking-catalog-card{grid-template-columns:150px minmax(0,1fr);min-height:164px}.booking-demo:not([data-step="3"]) .booking-catalog-card img{width:150px;min-height:164px}.booking-demo:not([data-step="3"]) .booking-catalog-secondary{grid-template-columns:90px 1fr;align-items:center}.booking-demo:not([data-step="3"]) .booking-catalog-secondary img{width:90px;height:76px}.booking-demo:not([data-step="3"]) .booking-catalog-secondary>div{padding:8px}.booking-demo-footer{align-items:start}}
@media(max-width:600px){.booking-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.booking-progress-step{min-height:57px;padding:10px 12px}.booking-progress-step:nth-child(2){border-right:0}.booking-progress-step:nth-child(-n+2){border-bottom:1px solid #eadde3}.booking-progress-step strong{font-size:11px}.booking-stage{padding:9px}.booking-site-body{min-height:475px;padding:18px}.booking-scene-head h3,.booking-scene-success h3{font-size:28px}.booking-demo:not([data-step="3"]) .booking-catalog-card{grid-template-columns:100px minmax(0,1fr);gap:11px;min-height:157px}.booking-demo:not([data-step="3"]) .booking-catalog-card img{width:100px;min-height:157px}.booking-catalog-card>div{padding-right:8px}.booking-catalog-card strong{font-size:19px}.booking-catalog-choose{font-size:9px;gap:5px}.booking-admin-body{padding:19px}.booking-contact-panel{padding:16px}.booking-demo-footer{justify-content:space-between;flex-wrap:wrap;gap:12px;padding:15px}.booking-disclaimer{text-align:left}}
@media(max-width:380px){.booking-site-bar,.booking-admin-bar{padding-inline:14px}.booking-site-brand{font-size:19px}.booking-site-bar>span:last-child{font-size:8px}.booking-site-body{min-height:475px;padding:14px}.booking-contact{align-items:start;flex-direction:column;gap:5px}.booking-request-actions span{font-size:9px;padding:6px}}
@media(prefers-reduced-motion:reduce){.booking-demo[data-playing="true"] .booking-progress-step.is-active:after{animation:none}}
/* Primeros salones: una sola composición para la historia y el formulario. */
.contact-section{background:#321a2d}
.contact-section>.wrap{padding-block:104px}
.contact-frame{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);overflow:hidden;border-radius:27px;background:#fbf6f2;box-shadow:0 28px 70px #1507105e}
.contact-photo{position:relative;min-height:740px;overflow:hidden;background:#a6888d}
.contact-photo img{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:45% center}
.contact-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#25101fea 1%,#25101fd1 28%,#25101f64 58%,#25101f00 85%)}
.contact-photo-content{position:absolute;z-index:1;right:0;bottom:0;left:0;padding:34px 38px;color:#fff}
.contact-photo .section-intro{margin-bottom:0}
.contact-photo .eyebrow{margin-bottom:15px;color:#f7d4e2}
.contact-photo h2{max-width:530px;margin-bottom:16px;font-size:clamp(42px,4vw,55px);line-height:1.08}
.contact-photo h2 em{color:#f1bad0}
.contact-photo .lead{max-width:490px;margin:0;color:#fff5f8;font-size:18px;line-height:1.48}
.contact-photo-signature{display:flex;flex-wrap:wrap;gap:8px 0;margin-top:27px;padding-top:16px;border-top:1px solid #ffffff7d;color:#f3dce6;font-size:12px;font-weight:600}
.contact-photo-signature span+span::before{content:'·';margin:0 13px;color:#dca8bd}
.contact-section .contact-panel{min-width:0;padding:40px 44px;border:0;border-radius:0;background:#fbf6f2}
.contact-section #lead-form{gap:18px}
.contact-section #lead-form h3{font-family:var(--font-display);font-size:31px;font-weight:500;line-height:1.2}
.contact-section #lead-form>.form-note{color:#715a67;line-height:1.4}
.contact-section .form-grid{gap:16px}
.form-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.form-choice-grid fieldset{min-width:0}
.form-choice-grid .choice-group{gap:6px}
.form-choice-grid .choice-group span{padding:10px 12px}
.consent-block{padding:15px 16px;border:1px solid #d8bfca;border-radius:13px;background:#fff}
#lead-form .consent-control{display:flex;align-items:flex-start;gap:11px;font-size:14px;font-weight:500;line-height:1.4;cursor:pointer}
.consent-control input{flex:none;width:19px;height:19px;margin:1px 0 0;accent-color:var(--vani-berry)}
.consent-control strong{color:var(--vani-berry);font-weight:700}
.consent-block .field-error{margin:4px 0 0 30px;font-size:12px;font-weight:700}
.consent-block p{margin:7px 0 0 30px;color:#735d68;font-size:12px;line-height:1.35}
@media(max-width:980px){.contact-frame{grid-template-columns:1fr}.contact-photo{min-height:520px}.contact-photo img{object-position:center 42%}.contact-section .contact-panel{padding:38px}}
@media(max-width:600px){.contact-section>.wrap{padding-block:64px}.contact-frame{border-radius:20px}.contact-photo{min-height:510px}.contact-photo img{object-position:48% center}.contact-photo-content{padding:25px}.contact-photo h2{font-size:43px}.contact-photo .lead{font-size:16px}.contact-photo-signature{font-size:11px}.contact-section .contact-panel{padding:26px 20px}.contact-section #lead-form h3{font-size:27px}.form-choice-grid{grid-template-columns:1fr;gap:16px}}

/* Agenda del salón: historia y demostración visibles en dos columnas. */
.agenda-section{background:#fbf7f4}
.agenda-section>.wrap{padding-block:48px}
.agenda-layout{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:clamp(34px,5vw,68px);align-items:center}
.agenda-story{min-width:0}
.agenda-story .section-intro{margin:0 0 22px}
.agenda-story .eyebrow{margin-bottom:12px}
.agenda-story h2{font-size:clamp(38px,3.9vw,50px);line-height:1.12;margin-bottom:16px}
.agenda-story .lead{font-size:17px;line-height:1.45;margin:0}
.agenda-story-service{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 12px;margin:24px 0 10px;padding-top:16px;border-top:1px solid #dfcdd4}
.agenda-story-service>span{flex-basis:100%;color:var(--vani-berry);font-size:11px;font-weight:700;letter-spacing:1.3px}
.agenda-story-service strong{font-family:var(--font-display);font-size:23px;line-height:1.1;font-weight:600}
.agenda-story-service small{color:var(--vani-muted);font-size:12px}
.agenda-steps{position:relative;display:grid;gap:5px}
.agenda-steps:before{content:'';position:absolute;top:27px;bottom:27px;left:56px;width:1px;background:#dfcbd3}
.agenda-step{position:relative;display:grid;grid-template-columns:64px minmax(0,1fr) 18px;gap:10px;align-items:center;text-align:left;width:100%;min-height:70px;padding:9px 14px;border:1px solid transparent;border-radius:13px;background:transparent;color:var(--vani-plum);transition:background .35s,border-color .35s,box-shadow .35s,transform .35s}
.agenda-step.is-active{background:#fff;border-color:#e8cfd9;box-shadow:0 8px 20px #8e2b5c12;transform:translateX(4px)}
.agenda-step-time{display:flex;align-items:center;justify-content:space-between;gap:5px;font-size:12px;font-weight:700;color:var(--vani-berry)}
.agenda-step-time i{position:relative;z-index:1;width:10px;height:10px;flex:0 0 10px;border:2px solid var(--vani-berry);border-radius:50%;background:#fbf7f4}
.agenda-step.is-active .agenda-step-time i{background:var(--vani-berry);box-shadow:0 0 0 5px #efd5df}
.agenda-step-copy strong,.agenda-step-copy small{display:block}
.agenda-step-copy strong{font-size:16px;line-height:1.2}
.agenda-step-copy small{font-size:12px;color:var(--vani-muted);margin-top:3px}
.agenda-step-arrow{color:var(--vani-berry);opacity:0;transition:opacity .25s}
.agenda-step.is-active .agenda-step-arrow{opacity:1}
.agenda-board{min-width:0;overflow:hidden;border:1px solid #e3d7d9;border-radius:24px;background:#fff;box-shadow:0 22px 50px #2e142714}
.agenda-board-top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:51px;padding:10px 24px;background:var(--vani-plum);color:#f6e9ef;font-size:12px}
.agenda-demo-brand{display:flex;align-items:center;gap:9px;font-weight:600}
.agenda-demo-brand b{font-family:var(--font-display);font-style:italic;font-size:25px;line-height:1;color:#f5ccda}
.agenda-board-top>span:last-child{opacity:.75}
.agenda-board-content{padding:27px 30px 20px}
.agenda-live-head{display:flex;align-items:start;justify-content:space-between;gap:12px}
.agenda-live-head>div>span,.agenda-live-day,.agenda-availability-grid span{color:var(--vani-berry);font-size:11px;font-weight:700;letter-spacing:1.2px}
.agenda-live-head h3{font-family:var(--font-display);font-size:clamp(25px,2.6vw,32px);font-weight:500;line-height:1.1;margin:5px 0 0}
.agenda-live-day{color:var(--vani-muted);white-space:nowrap}
.agenda-time-labels{display:flex;justify-content:space-between;margin:32px 0 7px;color:var(--vani-muted);font-size:11px;font-weight:600}
.agenda-time-track{height:48px;display:grid;grid-template-columns:3fr 4fr 5fr;gap:3px;position:relative;background:#f3e8eb;border-radius:11px;padding:4px}
.agenda-track-segment{display:flex;align-items:center;justify-content:center;background:#f1dfe5;color:#763755;font-size:11px;font-weight:700;white-space:nowrap}
.agenda-track-segment:first-child{border-radius:8px 3px 3px 8px}
.agenda-track-segment:nth-child(2){background:#fff8f4;color:#763755}
.agenda-track-segment:nth-child(3){border-radius:3px 8px 8px 3px}
.agenda-playhead{position:absolute;top:-11px;left:10%;height:10px;width:2px;background:var(--vani-berry);transition:left .75s cubic-bezier(.2,.8,.2,1)}
.agenda-playhead:before{content:'';position:absolute;top:-5px;left:-4px;width:10px;height:10px;border-radius:50%;background:var(--vani-berry)}
.agenda-layout[data-step="1"] .agenda-playhead{left:43%}
.agenda-layout[data-step="2"] .agenda-playhead{left:78%}
.agenda-layout[data-step="0"] .agenda-track-segment:first-child,.agenda-layout[data-step="2"] .agenda-track-segment:nth-child(3){box-shadow:inset 0 0 0 2px #a45378}
.agenda-layout[data-step="1"] .agenda-track-segment:nth-child(2){box-shadow:inset 0 0 0 2px #a45378}
.agenda-live-status{display:grid;grid-template-columns:40px 1fr;gap:13px;align-items:start;margin:26px 0 20px;min-height:88px}
.agenda-status-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#f3e3e9;color:var(--vani-berry);font-size:20px}
.agenda-live-status small{display:block;color:var(--vani-berry);font-size:10px;font-weight:700;letter-spacing:1.2px}
.agenda-live-status strong{display:block;margin:4px 0 3px;font-family:var(--font-display);font-size:clamp(22px,2.2vw,28px);font-weight:500;line-height:1.15}
.agenda-live-status p{font-size:13px;line-height:1.35;color:var(--vani-muted);margin:0}
.agenda-availability-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.agenda-availability-grid>div{display:grid;gap:7px;align-content:start;min-height:70px;padding:12px 13px;border-radius:11px;background:#f7f0f2;transition:background .35s}
.agenda-availability-grid>div:nth-child(2){background:#fbf5f1}
.agenda-availability-grid strong{font-size:12px;line-height:1.25}
.agenda-layout[data-step="1"] .agenda-availability-grid>div:first-child{background:#f8eaf0}
.agenda-layout[data-step="1"] .agenda-availability-grid>div:first-child strong{color:var(--vani-berry)}
.agenda-opportunity{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;max-height:0;overflow:hidden;opacity:0;transition:max-height .4s,opacity .4s,margin .4s}
.agenda-layout[data-step="1"] .agenda-opportunity{max-height:85px;margin-top:12px;opacity:1}
.agenda-opportunity-icon{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;background:#f4dde7;color:var(--vani-berry);font-size:19px}
.agenda-opportunity strong,.agenda-opportunity small{display:block}
.agenda-opportunity strong{font-size:12px;color:var(--vani-berry)}
.agenda-opportunity small{font-size:11px;line-height:1.25;color:var(--vani-muted)}
.agenda-board-note{border-top:1px solid #eee4e6;padding:11px 30px;margin:0;color:var(--vani-muted);font-size:11px}
@media(hover:hover){.agenda-step:not(.is-active):hover{background:#f8ecf0}}
@media(max-width:980px){.agenda-layout{grid-template-columns:1fr;gap:28px}.agenda-story{max-width:740px}.agenda-story .section-intro{max-width:740px}.agenda-board{max-width:740px;width:100%}}
@media(max-width:600px){.agenda-section>.wrap{padding-block:60px}.agenda-story h2{font-size:clamp(36px,9vw,44px)}.agenda-story .lead{font-size:16px}.agenda-board-content{padding:24px 18px 18px}.agenda-board-top{padding-inline:17px}.agenda-board-top>span:last-child{display:none}.agenda-board-note{padding-inline:18px}.agenda-step{grid-template-columns:57px minmax(0,1fr) 16px;min-height:68px;padding-inline:10px}.agenda-steps:before{left:44px}.agenda-step-copy strong{font-size:15px}.agenda-step-copy small{font-size:11px}.agenda-time-labels{margin-top:29px}.agenda-track-segment{font-size:10px}.agenda-availability-grid{gap:6px}.agenda-availability-grid>div{padding:10px}.agenda-availability-grid span{font-size:9px}.agenda-availability-grid strong{font-size:11px}}
@media(prefers-reduced-motion:reduce){.agenda-step,.agenda-step-arrow,.agenda-playhead,.agenda-availability-grid>div,.agenda-opportunity{transition:none}}

/* Preguntas frecuentes: una respuesta de marca al frente y el resto a mano. */
.faq-section{background:#fcf8f6}
.faq-section>.wrap{padding-block:78px}
.faq-heading .section-intro{max-width:930px;margin-bottom:30px}
.faq-heading h2{max-width:900px;margin-bottom:16px}
.faq-heading .lead{max-width:750px;margin:0;font-size:17px}
.faq-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:20px;align-items:start}
.faq-feature{display:flex;flex-direction:column;min-height:470px;padding:clamp(27px,3vw,38px);border-radius:23px;background:linear-gradient(145deg,#35192e,#572a44);color:#fff;overflow:hidden}
.faq-feature-kicker{color:#f2bfd4;font-size:11px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.faq-feature h3{max-width:460px;margin:21px 0 13px;font-family:var(--font-display);font-size:clamp(30px,3vw,39px);font-weight:500;line-height:1.15;letter-spacing:-.025em}
.faq-feature>p{max-width:460px;margin:0 0 23px;color:#f3dfe9;font-size:15px;line-height:1.5}
.faq-site-preview{overflow:hidden;min-height:173px;margin-top:auto;border-radius:13px;background:#fff8f7;color:var(--vani-plum);box-shadow:0 12px 28px #170b172b}
.faq-site-bar{display:flex;justify-content:space-between;align-items:center;min-height:35px;padding:0 16px;border-bottom:1px solid #ead7de;color:#795165;font-size:11px;font-weight:700}
.faq-site-content{position:relative;display:grid;align-content:center;gap:4px;min-height:138px;padding:18px 20px;background:#f4e4e7;overflow:hidden}
.faq-site-content::after{content:'';position:absolute;inset:0 0 0 auto;width:39%;background:url('/assets/hero-cabello-v2.png') center 37%/cover no-repeat}
.faq-site-content>*{position:relative;z-index:1;max-width:58%}
.faq-site-content small{color:#9e5678;font-size:9px;font-weight:700;letter-spacing:.08em}
.faq-site-content strong{font-family:var(--font-display);font-size:28px;font-weight:600;line-height:1.1}
.faq-site-content>span{font-size:11px;color:#6e5866}
.faq-site-content i{width:max-content;max-width:58%;margin-top:8px;padding:7px 12px;border-radius:999px;background:var(--vani-berry);color:#fff;font-size:10px;font-style:normal;font-weight:700}
.faq-list{display:grid;gap:9px;align-content:start}
.faq-item{border:1px solid #e8d9df;border-radius:13px;background:#fff;transition:border-color .2s,background .2s}
.faq-item:hover,.faq-item[open]{border-color:#cfa9bb;background:#fff9fb}
.faq-item summary{position:relative;display:block;min-height:64px;padding:19px 56px 18px 20px;color:var(--vani-plum);font-size:16px;font-weight:700;line-height:1.3;list-style:none;cursor:pointer}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:'+';position:absolute;top:50%;right:22px;transform:translateY(-50%);color:var(--vani-berry);font-family:var(--font-body);font-size:25px;font-weight:400;line-height:1}
.faq-item[open] summary::after{content:'−'}
.faq-answer{padding:0 56px 20px 20px;animation:faq-reveal .25s ease both}
.faq-answer p{margin:0;color:var(--vani-text);font-size:14px;line-height:1.5}
@keyframes faq-reveal{from{opacity:.35;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.faq-layout{grid-template-columns:1fr}.faq-feature{min-height:400px}.faq-site-preview{max-width:520px;width:100%}}
@media(max-width:600px){.faq-section>.wrap{padding-block:58px}.faq-heading .section-intro{margin-bottom:23px}.faq-heading .lead{font-size:15px}.faq-layout{gap:13px}.faq-feature{min-height:410px;padding:25px}.faq-feature h3{font-size:29px}.faq-feature>p{font-size:14px}.faq-site-content strong{font-size:23px}.faq-item summary{min-height:62px;padding:17px 48px 16px 16px;font-size:15px}.faq-item summary::after{right:16px}.faq-answer{padding:0 45px 18px 16px}}
@media(prefers-reduced-motion:reduce){.faq-item{transition:none}.faq-answer{animation:none}}
