*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--cp:#217183;--cpd:#14375d;--ca:#41afc8;--cl:#e7f5f8;--gold-400:#d9a520;--gold-500:#ba8d1c;--gold-600:#9b7617;--font-heading:"Georgia","Times New Roman",serif;--header-h:72px;--header-h-desktop:80px;--hero-bg-fallback:#0d253f;--radius-lg:16px;--radius-md:12px;--shadow-card:0 8px 32px rgba(0,0,0,.12)}html{scroll-behavior:smooth}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;color:#1a1a2e;background:#f4f6fb;min-height:100vh;display:flex;flex-direction:column}main{flex:1 1}footer{background:#1a1a2e;color:hsla(0,0%,100%,.5);text-align:center;padding:1rem;font-size:.78rem;letter-spacing:.04em}footer strong{color:hsla(0,0%,100%,.85)}.site-header{position:fixed;top:0;left:0;right:0;z-index:1000;height:var(--header-h);transition:background .3s,border-color .3s,box-shadow .3s;background:var(--cpd);border-bottom:1px solid transparent}.site-header--scrolled{background:hsla(0,0%,6%,.95);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom-color:var(--gold-500);box-shadow:0 2px 12px rgba(0,0,0,.3)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header--scrolled{background:#0f0f0f}}.site-header__inner{max-width:1200px;margin:0 auto;padding:0 1.5rem;height:100%;display:flex;align-items:center;justify-content:space-between}.site-header__logo{display:flex;align-items:center;gap:.75rem;text-decoration:none}.site-header__logo-circle{width:42px;height:42px;border-radius:50%;background:var(--gold-500);font-weight:700;font-size:1.1rem;align-items:center;justify-content:center;flex-shrink:0}.site-header__logo-circle,.site-header__logo-text{color:#fff;font-family:var(--font-heading);display:flex}.site-header__logo-text{font-size:1.15rem;font-weight:600;flex-direction:column}.site-header__logo-tagline{font-size:.65rem;color:hsla(0,0%,100%,.6);font-weight:400;text-transform:uppercase;letter-spacing:.08em}.site-header__nav{display:none;gap:1.5rem}.site-header__nav-link{color:hsla(0,0%,100%,.8);text-decoration:none;font-size:.9rem;font-weight:500;padding:.25rem 0;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.site-header__nav-link--active,.site-header__nav-link:hover{color:#fff;border-bottom-color:var(--gold-400)}.site-header__actions{display:flex;align-items:center;gap:1rem}.site-header__phone{display:none}.site-header__phone-link{color:hsla(0,0%,100%,.85);text-decoration:none;font-size:.85rem;display:flex;align-items:center;gap:.4rem}.site-header__cta{display:inline-block;padding:.5rem 1.25rem;font-size:.85rem;border-radius:var(--radius-md);background:var(--gold-500);color:#fff;text-decoration:none;font-weight:600;white-space:nowrap;transition:background .15s}.site-header__cta:hover{background:var(--gold-400)}.site-header__burger{display:flex;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px;width:32px}.site-header__burger span{display:block;height:2px;background:#fff;border-radius:2px;transition:transform .3s,opacity .3s}.site-header__burger[aria-expanded=true] span:first-child{transform:translateY(7px) rotate(45deg)}.site-header__burger[aria-expanded=true] span:nth-child(2){opacity:0}.site-header__burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.site-header__drawer{position:fixed;top:var(--header-h);right:0;bottom:0;width:280px;background:hsla(0,0%,6%,.98);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transform:translateX(100%);transition:transform .3s ease;z-index:999;display:flex;flex-direction:column;padding:2rem 1.5rem}.site-header__drawer--open{transform:translateX(0)}.site-header__drawer-overlay{position:fixed;inset:0;top:var(--header-h);background:rgba(0,0,0,.5);z-index:998;opacity:0;transition:opacity .3s;pointer-events:none}.site-header__drawer-overlay--visible{opacity:1;pointer-events:auto}.site-header__drawer-link{color:hsla(0,0%,100%,.85);text-decoration:none;font-size:1.1rem;padding:.75rem 0;border-bottom:1px solid hsla(0,0%,100%,.1)}.site-header__drawer-link--active{color:var(--gold-400)}.hero-section{position:relative;min-height:100vh;background-color:var(--hero-bg-fallback);background-image:url(/hero-spa.jpg);background-size:cover;background-position:50%;background-repeat:no-repeat;display:flex;align-items:center}.hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.55);z-index:0}.hero-container{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:calc(var(--header-h) + 2rem) 1.5rem 2.5rem;width:100%;display:grid;grid-template-columns:1fr;grid-gap:2rem;gap:2rem}.hero-content{display:flex;flex-direction:column;align-items:flex-start}.hero-badge{display:inline-block;background:hsla(0,0%,100%,.15);border:1.5px solid hsla(0,0%,100%,.4);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;padding:.3rem 1rem;border-radius:999px;margin-bottom:1.25rem}.hero-badge,.hero-title{color:#fff;font-weight:700}.hero-title{font-family:var(--font-heading);font-size:clamp(2rem,6vw,3.25rem);line-height:1.15;margin-bottom:1rem}.hero-description{font-size:1.05rem;color:hsla(0,0%,100%,.85);line-height:1.7;max-width:600px;margin-bottom:2rem}.hero-ctas{display:flex;flex-direction:column;gap:1rem;margin-bottom:2.5rem;width:100%}.hero-btn{display:inline-block;padding:.75rem 1.75rem;border-radius:var(--radius-md);font-size:1rem;font-weight:600;text-decoration:none;text-align:center;transition:transform .15s,box-shadow .15s}.hero-btn--primary{background:var(--gold-500);color:#fff;box-shadow:0 4px 16px rgba(0,0,0,.2)}.hero-btn--primary:hover{background:var(--gold-400);transform:translateY(-1px)}.hero-btn--secondary{background:transparent;color:#fff;border:2px solid hsla(0,0%,100%,.7)}.hero-btn--secondary:hover{background:hsla(0,0%,100%,.1);transform:translateY(-1px)}.hero-stats{list-style:none;display:flex;gap:2rem}.hero-stat{display:flex;flex-direction:column}.hero-stat__value{font-size:1.5rem;font-weight:700;color:var(--gold-400)}.hero-stat__label{font-size:.78rem;color:hsla(0,0%,100%,.75);text-transform:uppercase;letter-spacing:.06em}.hero-booking-card{display:flex;flex-direction:column;gap:1rem;background:hsla(0,0%,100%,.12);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid hsla(0,0%,100%,.25);border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-card);cursor:pointer;transition:transform .2s,box-shadow .2s}.hero-booking-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.15)}.hero-booking-card__title{font-family:var(--font-heading);font-size:1.25rem;color:#fff;font-weight:600}.hero-booking-card__fields{display:flex;flex-direction:column;gap:.25rem}.hero-booking-card__fields label{font-size:.75rem;color:hsla(0,0%,100%,.8);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-top:.5rem}.hero-booking-card__input{width:100%;padding:.6rem .85rem;border-radius:var(--radius-md);border:1px solid hsla(0,0%,100%,.3);background:hsla(0,0%,100%,.15);color:hsla(0,0%,100%,.7);font-size:.9rem;cursor:not-allowed;opacity:.7}.hero-booking-card__btn{width:100%;padding:.75rem;border-radius:var(--radius-md);background:var(--gold-500);color:#fff;font-size:.95rem;font-weight:600;border:none;cursor:not-allowed;opacity:.7}.hero-booking-card__note{font-size:.75rem;color:hsla(0,0%,100%,.65);text-align:center}.section-placeholder{padding:4rem 1.5rem;max-width:1200px;margin:0 auto;text-align:center;color:#777;font-size:1rem}@media (min-width:768px){.site-header{height:var(--header-h-desktop)}.site-header__nav{display:flex}.site-header__burger{display:none}.hero-ctas{flex-direction:row;width:auto}}@media (min-width:1024px){.site-header__phone{display:flex}.hero-container{grid-template-columns:1fr auto;align-items:center;gap:3rem;padding-top:calc(var(--header-h-desktop) + 3rem);padding-bottom:3rem}.hero-booking-card{min-width:280px;max-width:320px}}.wizard-layout{max-width:1200px;margin:0 auto;padding:calc(var(--header-h) + 2rem) 1rem 4rem;min-height:100vh}.wizard-steps-bar{margin-bottom:2.5rem;padding:1.5rem 2rem;background:#fff;border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,.08);box-shadow:0 2px 8px rgba(0,0,0,.04)}.wizard-content{padding-top:.5rem}.wizard-content-inner{max-width:900px;margin:0 auto}.wizard-title{font-size:2rem;font-weight:700;color:#1a1a2e;margin-bottom:.5rem}.wizard-subtitle{font-size:1rem;color:rgba(0,0,0,.55);margin-bottom:2rem}.wizard-placeholder{color:rgba(0,0,0,.45);font-style:italic;margin-top:1rem}.wizard-loading{color:rgba(0,0,0,.5);text-align:center;padding:3rem}.category-filter{display:flex;gap:.5rem;flex-wrap:nowrap;overflow-x:auto;padding-bottom:.5rem;margin-bottom:1.5rem;scrollbar-width:none}.category-filter::-webkit-scrollbar{display:none}.category-filter__pill{flex-shrink:0;padding:.4rem 1.1rem;border-radius:999px;border:1.5px solid rgba(212,168,67,.35);background:transparent;color:rgba(0,0,0,.65);font-size:.875rem;font-weight:500;cursor:pointer;transition:background .2s,border-color .2s,color .2s;white-space:nowrap}.category-filter__pill:hover{border-color:var(--gold-400);color:var(--gold-400)}.category-filter__pill--active{background:var(--gold-500);border-color:var(--gold-500);color:#fff}.treatment-grid{display:grid;grid-template-columns:1fr;grid-gap:1.25rem;gap:1.25rem;margin-bottom:2rem}@media (min-width:768px){.treatment-grid{grid-template-columns:repeat(2,1fr)}.wizard-layout{padding-top:calc(var(--header-h-desktop) + 2rem)}}@media (min-width:1024px){.treatment-grid{grid-template-columns:repeat(3,1fr)}}.treatment-card{background:#fff;border:1.5px solid rgba(0,0,0,.08);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .15s;outline:none;box-shadow:0 2px 8px rgba(0,0,0,.06)}.treatment-card:hover{border-color:rgba(212,168,67,.5);transform:translateY(-2px)}.treatment-card:focus-visible{box-shadow:0 0 0 3px rgba(186,141,28,.4)}.treatment-card--selected{border-color:var(--gold-500);box-shadow:0 0 0 3px rgba(186,141,28,.2)}.treatment-card__image{width:100%;aspect-ratio:4/3;overflow:hidden;background:#1a3a4a}.treatment-card__body{padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:.35rem}.treatment-card__category{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--gold-400)}.treatment-card__name{font-size:1.05rem;font-weight:700;color:#1a1a2e;margin:0}.treatment-card__description{font-size:.82rem;color:rgba(0,0,0,.55);line-height:1.5;margin:0}.treatment-card__meta{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}.treatment-card__duration{font-size:.8rem;color:rgba(0,0,0,.45)}.treatment-card__price{font-size:1.1rem;font-weight:700;color:var(--gold-400)}.wizard-continue{position:-webkit-sticky;position:sticky;bottom:1.5rem;display:flex;justify-content:flex-end;margin-top:1rem}.wizard-continue__btn{padding:.85rem 2.5rem;background:var(--gold-500);color:#fff;font-size:1rem;font-weight:700;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background .2s,transform .15s;box-shadow:0 4px 20px rgba(186,141,28,.35)}.wizard-continue__btn:hover:not(:disabled){background:var(--gold-600);transform:translateY(-1px)}.wizard-continue__btn--disabled,.wizard-continue__btn:disabled{opacity:.45;cursor:not-allowed;pointer-events:none;transform:none;box-shadow:none}@media (max-width:640px){.wizard-continue{position:fixed;bottom:0;left:0;right:0;padding:1rem;background:rgba(10,20,30,.95);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid hsla(0,0%,100%,.1);z-index:50;justify-content:stretch}.wizard-continue__btn{width:100%;text-align:center}}.availability-calendar{margin-bottom:2rem;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius-lg);overflow:hidden;background:#fff}.calendar-loading{padding:3rem;text-align:center;color:#888;font-size:.9rem}.availability-calendar .ant-picker-calendar-date-today .ant-picker-calendar-date-value{color:var(--gold-500)}.slot-section{margin-bottom:2rem}.slot-section__title,.therapist-section__title{font-family:var(--font-heading);font-size:1.05rem;color:#1a1a2e;margin-bottom:1rem}.slot-grid{display:grid!important;grid-template-columns:repeat(4,1fr);grid-gap:.5rem;gap:.5rem;width:100%}.slot-grid .ant-radio-button-wrapper{text-align:center;border-radius:var(--radius-md)!important;border:1.5px solid var(--gold-500)!important;color:var(--gold-600);font-weight:500;height:auto;line-height:1;padding:.6rem .25rem;transition:background .15s,color .15s}.slot-grid .ant-radio-button-wrapper:before{display:none!important}.slot-grid .ant-radio-button-wrapper-checked{background:var(--gold-500)!important;color:#fff!important;border-color:var(--gold-500)!important}.slot-grid .ant-radio-button-wrapper:hover:not(.ant-radio-button-wrapper-checked){background:#fcf6e9}.therapist-section{margin-bottom:2rem}.therapist-select{width:100%;max-width:420px}.wizard-nav-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-top:1rem;border-top:1px solid rgba(0,0,0,.06)}.wizard-back-btn{padding:.7rem 1.75rem;font-size:.95rem;font-weight:600;border:1.5px solid var(--cp);border-radius:var(--radius-md);color:var(--cp);background:transparent;cursor:pointer;transition:background .15s,color .15s}.wizard-back-btn:hover{background:var(--cl)}@media (max-width:768px){.slot-grid{grid-template-columns:repeat(3,1fr)}.therapist-select{max-width:100%}}@media (max-width:640px){.slot-grid{grid-template-columns:repeat(2,1fr)}.wizard-nav-row{flex-direction:column-reverse;align-items:stretch}.wizard-back-btn{text-align:center}}.datos-page{display:flex;flex-direction:column;gap:1.5rem;max-width:1100px;margin:0 auto;padding:1rem}.datos-summary--desktop{display:none}.datos-summary--mobile{display:block}.datos-form{flex:1 1;min-width:0}.booking-summary-card{border:1px solid rgba(212,168,67,.3);border-radius:var(--radius-md)}.booking-summary-card .summary-row{display:flex;justify-content:space-between;align-items:baseline;padding:.5rem 0;border-bottom:1px solid rgba(0,0,0,.06)}.booking-summary-card .summary-row:last-child{border-bottom:none}.booking-summary-card .summary-label{color:rgba(0,0,0,.55);font-size:.875rem}.booking-summary-card .summary-value{font-weight:600;text-align:right;color:#1a1a2e}.booking-summary-card .summary-price{color:var(--gold-600);font-size:1.125rem;font-weight:700}.datos-policy-checkbox{margin:1rem 0;font-size:.85rem;line-height:1.5;color:rgba(0,0,0,.65)}@media (min-width:1024px){.datos-page{flex-direction:row;gap:2rem;padding:2rem 1rem}.datos-summary--mobile{display:none}.datos-summary--desktop{display:block;width:340px;flex-shrink:0}.datos-summary--desktop .booking-summary-card{position:-webkit-sticky;position:sticky;top:calc(var(--header-h-desktop) + 2rem)}.datos-form{flex:1 1}}.confirmacion-page{max-width:640px;margin:0 auto;padding:1rem}.confirmacion-page .ant-result{padding:2rem 1rem}.confirmacion-page .ant-result-title{color:#1a1a2e!important}.confirmacion-page .ant-result-subtitle{color:rgba(0,0,0,.55)!important;font-size:1.1rem;font-weight:600}.confirmacion-notifications{margin:1.5rem 0;padding:1.25rem;background:rgba(212,168,67,.08);border-radius:var(--radius-md);border:1px solid rgba(212,168,67,.2)}.confirmacion-notifications p{margin:.5rem 0;color:#1a1a2e;font-size:.95rem}.confirmacion-actions{display:flex;flex-direction:column;gap:.75rem;margin-top:2rem}@media (min-width:768px){.confirmacion-actions{flex-direction:row;justify-content:center}}.mis-citas-page{max-width:720px;margin:0 auto;padding:calc(var(--header-h) + 2rem) 1.5rem 3rem}@media (min-width:768px){.mis-citas-page{padding-top:calc(var(--header-h-desktop) + 3rem)}}.mis-citas-page h1{font-family:var(--font-heading);color:var(--cpd);font-size:1.75rem;margin-bottom:.5rem}.mis-citas-page .subtitle{color:rgba(0,0,0,.55);margin-bottom:1.5rem}.mis-citas-search{display:flex;gap:.75rem;margin-bottom:2rem}.mis-citas-search .ant-input{flex:1 1}.mis-citas-empty{text-align:center;padding:3rem 1rem;color:rgba(0,0,0,.45)}.mis-citas-empty p{margin-bottom:1rem;font-size:1.05rem}.mis-citas-validation-error{color:#cf1322;font-size:.875rem;margin-top:-1rem;margin-bottom:1rem}.appointment-card{margin-bottom:1rem}.appointment-card .appointment-meta{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-bottom:.75rem;color:rgba(0,0,0,.55);font-size:.9rem}.appointment-card .appointment-actions{display:flex;gap:.75rem;margin-top:.75rem}.appointment-card .appointment-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.appointment-card .appointment-price{font-size:1.1rem;font-weight:600;color:var(--cpd)}.admin-layout{min-height:100vh;background:#f5f5f5;padding-top:var(--header-h)}@media (min-width:768px){.admin-layout{padding-top:var(--header-h-desktop)}}.admin-header{height:56px;background:#14375d;color:#fff;display:flex;align-items:center;padding:0 24px}.admin-header__title{font-family:var(--font-heading,sans-serif);font-size:1.1rem}.admin-header__back{color:hsla(0,0%,100%,.7);margin-left:auto;text-decoration:none}.admin-header__back:hover{color:#fff}.admin-content{padding:24px}.admin-sider-brand{height:56px;display:flex;align-items:center;justify-content:center;font-family:var(--font-heading,sans-serif);font-weight:700;font-size:1rem;color:#fff;background:#14375d;overflow:hidden}.admin-entry-link,.admin-sider-brand{letter-spacing:.02em;white-space:nowrap}.admin-entry-link{font-size:.9rem;color:var(--gold-400);opacity:1;transition:opacity .2s,background .2s;text-decoration:none;font-weight:500;border:1px solid var(--gold-400);border-radius:6px;padding:4px 12px}.admin-entry-link:hover{opacity:.85;background:rgba(217,165,32,.1)}.mobile-admin-link{display:block;padding:1rem 0 .75rem;color:var(--gold-400);font-weight:600;font-size:1.1rem;text-decoration:none;border-top:1px solid hsla(0,0%,100%,.1);margin-top:.5rem}.admin-agenda__toolbar{display:flex;align-items:center;gap:16px;margin-bottom:20px;flex-wrap:wrap}.admin-agenda__toolbar-right{margin-left:auto}.admin-agenda__calendar{height:720px}.admin-agenda__event{padding:2px 4px;border-radius:4px;font-size:.8rem;line-height:1.3;position:relative;overflow:hidden}.admin-agenda__event-title{font-weight:600;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.admin-agenda__event-client{font-size:.75rem;opacity:.9}.admin-agenda__status-dot{width:8px;height:8px;border-radius:50%;position:absolute;top:4px;right:4px}.admin-agenda__event--completada{opacity:.65}.admin-agenda__event--cancelada{opacity:.5}.admin-agenda__event--cancelada .admin-agenda__event-title{text-decoration:line-through}.admin-agenda__event--no-show{border:2px dashed #fa8c16}.admin-agenda__detail-field{margin-bottom:12px}.admin-agenda__detail-label{font-size:.8rem;color:rgba(0,0,0,.55);margin-bottom:2px}.admin-agenda__detail-value{font-size:.95rem}.admin-agenda__detail-status{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:12px;font-size:.85rem}.admin-agenda .rbc-today{background-color:#e7f5f8}.admin-agenda .rbc-current-time-indicator{background-color:#ba8d1c;height:2px}.admin-agenda .rbc-event{border:none}.admin-agenda .rbc-event-label{font-size:.7rem}.tratamientos-page{max-width:1280px;margin:0 auto;padding:calc(var(--header-h-desktop) + 2rem) 1.5rem 3rem;min-height:100vh}.tratamientos-header{text-align:center;margin-bottom:2.5rem}.tratamientos-header h1{font-family:var(--font-heading);font-size:clamp(1.8rem,4vw,2.8rem);color:var(--cpd);margin-bottom:.5rem}.tratamientos-header p{color:#555;font-size:1.05rem}.tratamientos-filters{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;margin-bottom:2rem}.tratamientos-search{flex:1 1;min-width:200px}.tratamientos-sort{min-width:220px}.tratamientos-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.5rem;gap:1.5rem}@media (max-width:1024px){.tratamientos-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.tratamientos-grid{grid-template-columns:1fr}.tratamientos-page{padding-top:calc(var(--header-h) + 1.5rem)}}.tratamiento-card{border-radius:var(--radius-md);box-shadow:var(--shadow-card);overflow:hidden}.tratamiento-card__img{width:100%;height:200px;object-fit:cover;display:block}.tratamiento-card__badge{display:inline-block;padding:2px 10px;border-radius:12px;color:#fff;font-size:.75rem;font-weight:600;margin-bottom:.5rem}.tratamiento-card__name{font-family:var(--font-heading);font-size:1.1rem;color:var(--cpd);margin-bottom:.4rem}.tratamiento-card__meta{display:flex;gap:1rem;font-size:.9rem;color:#555;margin-bottom:.6rem}.tratamiento-card__desc{font-size:.88rem;color:#444;line-height:1.5;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.tratamiento-card__actions{display:flex;gap:.5rem;flex-wrap:wrap}.tratamiento-card__btn{flex:1 1;padding:.45rem .75rem;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer;border:none;transition:opacity .15s}.tratamiento-card__btn:hover{opacity:.85}.tratamiento-card__btn--primary{background:var(--cp);color:#fff}.tratamiento-card__btn--secondary{background:transparent;color:var(--cp);border:1.5px solid var(--cp)}.tratamiento-skeleton{border-radius:var(--radius-md);overflow:hidden;background:#fff;padding:1rem;box-shadow:var(--shadow-card)}.tratamiento-skeleton__img{width:100%;height:200px;margin-bottom:1rem}.tratamiento-detalle{max-width:800px;margin:0 auto;padding:calc(var(--header-h-desktop) + 2rem) 1.5rem 3rem}.tratamiento-detalle__back{display:inline-block;margin-bottom:1.5rem;color:var(--cp);font-weight:600;text-decoration:none}.tratamiento-detalle__back:hover{text-decoration:underline}.tratamiento-detalle__img{width:100%;border-radius:var(--radius-lg);margin-bottom:1.5rem}.tratamiento-detalle__badge{display:inline-block;padding:3px 12px;border-radius:12px;color:#fff;font-size:.8rem;font-weight:600;margin-bottom:.75rem}.tratamiento-detalle__name{font-family:var(--font-heading);font-size:2rem;color:var(--cpd);margin-bottom:.5rem}.tratamiento-detalle__meta{display:flex;gap:1.5rem;color:#555;margin-bottom:1rem;font-size:1rem}.tratamiento-detalle__desc{color:#333;line-height:1.7;font-size:1rem;margin-bottom:2rem}.tratamiento-detalle__cta{display:inline-block;padding:.75rem 2rem;background:var(--cp);color:#fff;border-radius:10px;font-weight:700;border:none;cursor:pointer;font-size:1rem;transition:opacity .15s}.tratamiento-detalle__cta:hover{opacity:.85}.treatment-detail-page{max-width:1080px;margin:0 auto;padding:calc(var(--header-h-desktop) + 2rem) 1.5rem 6rem;min-height:100vh}.treatment-detail-breadcrumb{margin-bottom:1.5rem}.treatment-detail-hero{display:grid;grid-template-columns:1fr 1fr;grid-gap:2.5rem;gap:2.5rem;align-items:start;margin-bottom:3rem}.treatment-detail-hero__image-wrap{border-radius:var(--radius-lg);overflow:hidden;background:#1a3a4a;aspect-ratio:4/3}.treatment-detail-hero__img{width:100%;height:100%;object-fit:cover;display:block}.treatment-detail-hero__info{display:flex;flex-direction:column;gap:1rem}.treatment-detail-hero__category{align-self:flex-start;font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.treatment-detail-hero__name{font-family:var(--font-heading);font-size:clamp(1.6rem,3vw,2.2rem);color:var(--cpd);line-height:1.2;margin:0}.treatment-detail-hero__meta{display:flex;gap:.75rem;flex-wrap:wrap}.treatment-detail-hero__badge{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .9rem;border-radius:999px;font-size:.9rem;font-weight:600}.treatment-detail-hero__badge--duration{background:rgba(26,58,74,.08);color:var(--cpd)}.treatment-detail-hero__badge--price{background:rgba(212,168,67,.12);color:var(--gold-600)}.treatment-detail-hero__rating{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.treatment-detail-hero__rating-text{color:rgba(0,0,0,.55);font-size:.9rem}.treatment-detail-section{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(0,0,0,.07)}.treatment-detail-section__title{font-family:var(--font-heading);font-size:1.4rem;color:var(--cpd);margin-bottom:1.25rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.treatment-detail-description__paragraph{color:#333;line-height:1.8;font-size:1rem;margin-bottom:1rem}.treatment-detail-description__paragraph:last-child{margin-bottom:0}.treatment-detail-benefits__list{list-style:none;display:flex;flex-direction:column;gap:.75rem}.treatment-detail-benefits__item{display:flex;align-items:center;gap:.85rem;padding:.75rem 1rem;background:rgba(26,58,74,.04);border-radius:var(--radius-md);font-size:.95rem;color:#1a1a2e}.treatment-detail-benefits__icon{font-size:1.3rem;flex-shrink:0}.treatment-detail-therapists__list{display:flex;gap:1.25rem;flex-wrap:wrap}.treatment-detail-therapists__item{display:flex;align-items:center;gap:.85rem;padding:1rem 1.25rem;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:var(--radius-md);box-shadow:0 2px 8px rgba(0,0,0,.05);min-width:220px}.treatment-detail-therapists__info{display:flex;flex-direction:column;gap:.2rem}.treatment-detail-therapists__name{font-weight:700;color:#1a1a2e;font-size:.95rem}.treatment-detail-therapists__specialty{font-size:.8rem;color:rgba(0,0,0,.55)}.treatment-detail-reviews__summary{display:flex;align-items:center;gap:.5rem;font-family:system-ui,sans-serif;font-size:.9rem;color:rgba(0,0,0,.55);font-weight:400}.treatment-detail-reviews__grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1rem;gap:1rem}.treatment-detail-reviews__card{box-shadow:0 2px 8px rgba(0,0,0,.06)}.treatment-detail-reviews__card-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.treatment-detail-reviews__author{color:#1a1a2e;font-size:.95rem}.treatment-detail-reviews__comment{color:#444;font-size:.9rem;line-height:1.6;margin-bottom:.5rem}.treatment-detail-reviews__date{font-size:.78rem;color:rgba(0,0,0,.4)}.treatment-detail-related__grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1.25rem;gap:1.25rem}.treatment-detail-related__img{width:100%;height:160px;object-fit:cover;display:block}.treatment-detail-related__name{font-family:var(--font-heading);font-size:1rem;color:var(--cpd);margin:.5rem 0 .35rem}.treatment-detail-related__meta{display:flex;gap:1rem;font-size:.85rem;color:#555;margin-bottom:.75rem}.treatment-detail-related__link{display:inline-block;color:var(--cp);font-weight:600;font-size:.88rem;text-decoration:none}.treatment-detail-related__link:hover{text-decoration:underline}.treatment-detail-cta-wrap{display:flex;justify-content:center;padding:0 1.5rem}.treatment-detail-cta{display:inline-block;padding:1rem 3rem;background:var(--gold-500);color:#fff;border-radius:var(--radius-md);font-size:1.05rem;font-weight:700;text-decoration:none;box-shadow:0 4px 20px rgba(212,168,67,.4);transition:background .15s,transform .15s;white-space:nowrap}.treatment-detail-cta:hover{background:var(--gold-400);transform:translateY(-1px)}@media (max-width:768px){.treatment-detail-page{padding-top:calc(var(--header-h) + 1.5rem)}.treatment-detail-hero{gap:1.5rem}.treatment-detail-hero,.treatment-detail-reviews__grid{grid-template-columns:1fr}.treatment-detail-related__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.treatment-detail-related__grid{grid-template-columns:1fr}.treatment-detail-therapists__list{flex-direction:column}.treatment-detail-therapists__item{min-width:unset}}.admin-treatments__toolbar{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.admin-treatments__toolbar-title{margin:0;flex-shrink:0}.admin-treatments__toolbar-spacer{flex:1 1}.admin-treatments__drag-handle{cursor:-webkit-grab;cursor:grab;color:#999;font-size:16px}.admin-treatments__drag-handle:active{cursor:-webkit-grabbing;cursor:grabbing}.admin-treatments__actions{display:flex;align-items:center;gap:8px}.auth-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:1001;display:flex;align-items:center;justify-content:center}.auth-modal-dialog{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:2rem;max-width:420px;width:90%;text-align:center}.auth-modal-dialog h2{color:var(--cpd);font-family:var(--font-heading);font-size:1.25rem;margin-bottom:.75rem}.auth-modal-dialog p{color:#555;margin-bottom:1.5rem;line-height:1.5}.auth-modal-dialog button{background:var(--gold-500);color:#fff;border:none;border-radius:var(--radius-md);padding:.75rem 2rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s}.auth-modal-dialog button:hover{background:var(--gold-600)}.treatment-card__image-fallback{aspect-ratio:4/3}.tratamiento-card__img-fallback,.treatment-card__image-fallback{width:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a3a4a,#2e6b8a);color:#d4a843;font-size:2rem}.tratamiento-card__img-fallback{height:200px}.treatment-detail-hero__img-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a3a4a,#2e6b8a);color:#d4a843;font-size:1.25rem;font-weight:600}