:root{--color-cream: #FFFCEC;--color-cream-deep: #ede5d6;--color-cream-soft: #f9f4ec;--color-paper: #fbf8f2;--color-terracotta: #8b3a2f;--color-terracotta-deep: #6e2c23;--color-clay: #c4a290;--color-clay-soft: #d6bdab;--color-ink: #140216;--color-ink-soft: #4a3a30;--color-ink-muted: #7a6a5e;--color-ink-faint: #a59685;--color-hairline: #d8cfc1;--color-hairline-soft: #e5dccb;--color-night: #140216;--color-whatsapp: #25d366;--color-whatsapp-dark: #1da851;--color-ivory: #FEFBF0;--color-aubergine: #3A033D;--color-gold: #957A1D;--font-serif: "Newsreader", Georgia, serif;--font-sans: "Outfit", system-ui, -apple-system, sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 2rem;--spacing-lg: 4rem;--spacing-xl: 7.5rem;--spacing-2xl: 11.25rem;--container-max: 1320px;--header-height: 5rem}html{scroll-behavior:smooth;font-size:16px;scroll-padding-top:var(--header-height)}html,body{overflow-x:hidden;max-width:100vw}body{font-family:var(--font-sans);font-weight:400;font-size:17px;line-height:1.62;color:var(--color-ink);background-color:var(--color-cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:400;color:var(--color-ink);line-height:1.04;letter-spacing:-.015em}h2{font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.05;margin-bottom:1.5rem}h3{font-size:clamp(1.5rem,2.8vw,2rem);line-height:1.12;font-weight:400}h1 em,h2 em,h3 em,h4 em{font-style:italic;font-weight:400;color:var(--color-terracotta)}h1 em{color:var(--color-aubergine)}p{margin-bottom:1.4rem;font-size:1.06rem;line-height:1.7;color:var(--color-ink-soft)}strong{color:var(--color-ink);font-weight:600}a{color:inherit}::selection{background-color:var(--color-terracotta);color:var(--color-cream)}.container-editorial,.container-narrow{max-width:var(--container-max);margin-inline:auto;padding-inline:1.25rem}@media(min-width:768px){.container-editorial,.container-narrow{padding-inline:1.75rem}}.seccion{padding-block:var(--spacing-xl);padding-inline:1.75rem}.seccion-amplia{padding-block:var(--spacing-2xl);padding-inline:1.75rem}@media(max-width:768px){.seccion,.seccion-amplia{padding-block:80px;padding-inline:1.25rem}}.eyebrow{display:inline-flex;align-items:center;gap:.7rem;font-family:var(--font-sans);font-size:.74rem;font-weight:500;text-transform:uppercase;letter-spacing:.22em;color:var(--color-terracotta);margin-bottom:1.75rem}.eyebrow:before{content:"";display:inline-block;width:28px;height:1px;background-color:var(--color-gold)}.dropcap:first-letter{font-family:var(--font-serif);font-style:italic;font-size:4em;float:left;line-height:.85;margin:.1em .1em 0 0;color:var(--color-terracotta);font-weight:400}.reveal{opacity:0;transform:translateY(24px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-stagger>*{opacity:0;transform:translateY(20px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}.reveal-stagger.visible>*:nth-child(1){transition-delay:.05s}.reveal-stagger.visible>*:nth-child(2){transition-delay:.18s}.reveal-stagger.visible>*:nth-child(3){transition-delay:.31s}.reveal-stagger.visible>*:nth-child(4){transition-delay:.44s}.reveal-stagger.visible>*:nth-child(5){transition-delay:.57s}.reveal-stagger.visible>*:nth-child(6){transition-delay:.7s}.reveal-stagger.visible>*{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}.reveal,.reveal-stagger>*{opacity:1;transform:none}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 30px;border-radius:0;font-family:var(--font-sans);font-size:.78rem;font-weight:500;line-height:1;text-transform:uppercase;letter-spacing:.16em;text-decoration:none;transition:all .6s cubic-bezier(.16,1,.3,1);cursor:pointer;border:1px solid var(--color-ink);gap:.6rem;white-space:nowrap}@media(max-width:480px){.btn{padding:12px 20px;font-size:.72rem;letter-spacing:.12em;white-space:normal}}.btn:after{content:"→";font-family:var(--font-serif);font-size:1rem;line-height:1;transition:transform .6s cubic-bezier(.16,1,.3,1)}.btn:hover:after{transform:translate(4px)}.btn-primario{background-color:var(--color-night);color:var(--color-cream);border-color:var(--color-night)}.btn-primario:hover{background-color:var(--color-aubergine);border-color:var(--color-aubergine)}.btn-secundario{background-color:transparent;color:var(--color-ink);border-color:var(--color-ink)}.btn-secundario:hover{background-color:var(--color-ink);color:var(--color-cream)}.btn-light{background-color:var(--color-cream);color:var(--color-ink);border-color:var(--color-cream)}.btn-light:hover{background-color:var(--color-aubergine);color:var(--color-cream);border-color:var(--color-aubergine)}.btn-wa-full{width:100%;background-color:var(--color-whatsapp);border-color:var(--color-whatsapp);color:#fff}.btn-wa-full:hover{background-color:var(--color-whatsapp-dark);border-color:var(--color-whatsapp-dark)}.btn-block{width:100%}.btn-float-wa{position:fixed;bottom:28px;right:28px;width:56px;height:56px;border-radius:50%;background-color:var(--color-whatsapp);color:#fff;display:flex;align-items:center;justify-content:center;border:1px solid var(--color-whatsapp);box-shadow:0 6px 18px #25d36659;z-index:999;transition:all .6s cubic-bezier(.16,1,.3,1);text-decoration:none}.btn-float-wa:hover{background-color:var(--color-whatsapp-dark);border-color:var(--color-whatsapp-dark);transform:translateY(-2px)}.btn-float-wa svg{width:22px;height:22px;fill:currentColor}.toast{position:fixed;bottom:28px;left:28px;background-color:var(--color-night);color:var(--color-cream);padding:16px 22px;border:1px solid var(--color-night);z-index:10000;display:flex;align-items:center;gap:.75rem;font-family:var(--font-serif);font-style:italic;font-size:.95rem;transform:translateY(150px);transition:transform .5s cubic-bezier(.16,1,.3,1)}.toast.visible{transform:translateY(0)}.toast svg{color:var(--color-clay);width:18px;height:18px}.toast-error{background-color:var(--color-aubergine);border-color:var(--color-aubergine)}.scroll-progress-bar{position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#ed3224,#9d1d56);z-index:9999;transform:scaleX(0);transform-origin:left center;pointer-events:none;will-change:transform}.gradient-text{background:linear-gradient(90deg,#ed3224,#9d1d56,#561d40,#9d1d56,#ed3224);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;animation:gradient-shift 5s ease-in-out infinite}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.servicio-tarjeta,.testimonio-card,.formato-card{transform-style:preserve-3d;will-change:transform}.btn-primario,.btn-secundario,.nav-cta,.btn-wa-full,.btn-light{will-change:transform;position:relative}.hero-photo img,.consultorio-imagen,.angeles-imagen,.sobre-mi-imagen{will-change:transform}.reveal-words .word,h2 .word{will-change:transform,opacity}@media(prefers-reduced-motion:reduce){.scroll-progress-bar,.gradient-text{animation:none!important}.scroll-progress-bar{transform:scaleX(0)!important}.gradient-text{background-size:100% 100%!important}}.header{position:fixed;top:0;left:0;width:100%;height:var(--header-height);background-color:#fffcecd9;backdrop-filter:blur(16px) saturate(140%);-webkit-backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid transparent;z-index:1000;transition:all .6s cubic-bezier(.16,1,.3,1)}.header.scrolled{border-bottom-color:var(--color-hairline);background-color:#fffcecf0}.nav-container{display:flex;justify-content:space-between;align-items:center;height:100%;max-width:var(--container-max);margin:0 auto;padding:0 1.75rem}.brand-logo{display:inline-flex;align-items:center;text-decoration:none;line-height:1}.brand-logo-img{height:calc(var(--header-height) * .7);width:auto;display:block;transition:opacity .4s ease}.brand-logo:hover .brand-logo-img{opacity:.75}@media(min-width:992px){.brand-logo-img{height:38px}}.nav-menu{display:flex;align-items:center;gap:2.25rem}.nav-link{font-family:var(--font-sans);color:var(--color-ink-soft);text-decoration:none;font-size:.74rem;font-weight:500;text-transform:uppercase;letter-spacing:.18em;transition:color .6s cubic-bezier(.16,1,.3,1);position:relative;padding:4px 0}.nav-link:hover{color:var(--color-aubergine)}.nav-link:after{content:"";position:absolute;width:0;height:1px;bottom:-2px;left:0;background-color:var(--color-gold);transition:width .6s cubic-bezier(.16,1,.3,1)}.nav-link:hover:after{width:100%}.nav-cta{font-family:var(--font-sans);font-size:.74rem;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:var(--color-cream);background-color:var(--color-ink);padding:12px 22px;text-decoration:none;transition:background-color .6s cubic-bezier(.16,1,.3,1)}.nav-cta:hover{background-color:var(--color-terracotta)}.burger{display:none;flex-direction:column;justify-content:space-between;width:26px;height:16px;background:transparent;border:none;cursor:pointer;z-index:1010}.burger span{width:100%;height:1.5px;background-color:var(--color-ink);transition:all .3s cubic-bezier(.16,1,.3,1);transform-origin:center}@media(max-width:991px){.nav-menu{position:fixed;top:0;right:-100%;width:320px;height:100vh;background-color:var(--color-cream);border-left:1px solid var(--color-hairline);flex-direction:column;align-items:flex-start;padding:6rem 2rem 2rem;gap:1.5rem;transition:right .6s cubic-bezier(.16,1,.3,1);z-index:1005;overflow-y:auto}.nav-menu.active{right:0}.burger{display:flex}.burger.active span:nth-child(1){transform:rotate(45deg) translate(3px,3px)}.burger.active span:nth-child(2){opacity:0}.burger.active span:nth-child(3){transform:rotate(-45deg) translate(3px,-3px)}.nav-cta{display:inline-block;margin-top:.5rem}.nav-divider{display:block;width:100%;height:1px;background-color:var(--color-hairline);margin:.75rem 0}.nav-socials{display:flex;width:100%;flex-direction:column;gap:.25rem;margin-top:.25rem}}.nav-divider,.nav-socials{display:none}.nav-social{display:inline-flex;align-items:center;gap:.75rem;color:var(--color-ink-soft);text-decoration:none;font-family:var(--font-sans);font-size:.74rem;font-weight:500;text-transform:uppercase;letter-spacing:.18em;padding:6px 0;transition:color .6s cubic-bezier(.16,1,.3,1)}.nav-social:hover{color:var(--color-aubergine)}.nav-social-icon{width:18px;height:18px;fill:currentColor;transition:transform .4s cubic-bezier(.16,1,.3,1)}.nav-social:hover .nav-social-icon{transform:scale(1.15)}.footer{background-color:var(--color-night);color:#fffcecb3;padding:var(--spacing-xl) 1.75rem var(--spacing-md);font-size:.95rem}.footer-layout{max-width:var(--container-max);margin:0 auto}.footer-top{display:grid;grid-template-columns:1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid rgba(255,252,236,.1)}@media(min-width:768px){.footer-top{grid-template-columns:1.4fr .8fr .8fr;gap:var(--spacing-lg)}}.footer-logo{font-family:var(--font-serif);font-size:1.85rem;font-weight:400;color:var(--color-cream);margin-bottom:1.25rem;display:inline-block}.footer-logo em{font-style:italic;color:var(--color-clay)}.footer-firma{font-family:var(--font-serif);font-style:italic;font-size:1.05rem;color:var(--color-clay);margin-bottom:1.5rem;display:block}.footer-bio{max-width:480px;margin-bottom:1.5rem}.footer h4{font-family:var(--font-sans);font-size:.68rem;color:var(--color-cream);margin-bottom:1.25rem;text-transform:uppercase;letter-spacing:.22em;font-weight:500}.footer-links-list{display:flex;flex-direction:column;gap:.85rem;list-style:none}.footer-links-list a{color:#fffceca6;text-decoration:none;transition:color .6s cubic-bezier(.16,1,.3,1);font-family:var(--font-serif);font-size:1rem}.footer-links-list a:hover{color:var(--color-cream)}.footer p{color:#fffceca6;font-size:.95rem;line-height:1.6}.footer-credenciales{font-family:var(--font-sans);font-size:.72rem;text-transform:uppercase;letter-spacing:.18em;color:#fffcec73;line-height:1.7}.footer-bottom{text-align:center;display:flex;flex-direction:column;gap:.75rem}@media(min-width:768px){.footer-bottom{flex-direction:row;justify-content:space-between;align-items:center}}.footer-bottom p{font-family:var(--font-sans);font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;color:#fffcec66;margin:0}.footer-bottom a{color:#fffcec66;text-decoration:none;font-family:var(--font-sans);font-size:.68rem;text-transform:uppercase;letter-spacing:.18em;transition:color .6s cubic-bezier(.16,1,.3,1)}.footer-bottom a:hover{color:var(--color-cream)}
