@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;1,300;1,400&family=Jost:wght@200;300;400;500&display=swap');:root{--cream:#faf7f2;--cream-dark:#f2ede4;--blush:#e8d5c0;--blush-mid:#d4b896;--rose:#c4957a;--rose-dark:#a87458;--sage:#8fa89e;--sage-light:#bdd0ca;--charcoal:#2a2420;--charcoal-mid:#4a3e38;--warm-gray:#9a8e88;--gold:#c8a870;--gold-light:#e8d4a8;--white:#ffffff;--font-display:'Cormorant Garamond',Georgia,serif;--font-body:'Jost',sans-serif;--nav-h:80px;--radius:16px;--radius-sm:10px;--transition:0.4s cubic-bezier(0.25,0.46,0.45,0.94);--transition-fast:0.2s ease}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--cream);color:var(--charcoal);overflow-x:hidden;cursor:none}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button{cursor:none;border:none;background:none;font-family:var(--font-body)}input,textarea,select{font-family:var(--font-body)}.cursor{width:10px;height:10px;background:#000000;border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:10000;will-change:transform;transition:width 0.2s,height 0.2s}.cursor-follower{width:36px;height:36px;border:1.5px solid #000000;border-radius:50%;position:fixed;top:0;left:0;pointer-events:none;z-index:9999;will-change:transform;transition:width 0.3s,height 0.3s,border-color 0.3s}body:has(a:hover).cursor,body:has(button:hover).cursor{width:14px;height:14px}body:has(a:hover).cursor-follower,body:has(button:hover).cursor-follower{width:50px;height:50px;border-color:#000000}.loader{position:fixed;inset:0;background:var(--charcoal);z-index:99999;display:flex;align-items:center;justify-content:center;transition:opacity 0.8s ease,visibility 0.8s ease}.loader.hidden{opacity:0;visibility:hidden;pointer-events:none}.loader-inner{text-align:center}.loader-text{font-family:var(--font-display);font-size:2.5rem;font-weight:300;color:var(--cream);letter-spacing:0.3em;display:block;margin-bottom:2rem;animation:loaderPulse 1.5s ease-in-out infinite}@keyframes loaderPulse{0%,100%{opacity:0.4}50%{opacity:1}}.loader-bar{width:200px;height:1px;background:rgba(255,255,255,0.2);margin:0 auto}.loader-bar-fill{height:100%;background:var(--gold);animation:loaderFill 1.8s ease forwards}@keyframes loaderFill{from{width:0}to{width:100%}}.container{max-width:1280px;margin:0 auto;padding:0 2rem}.section-pad{padding:7rem 0}.section-label{font-family:var(--font-body);font-size:0.75rem;font-weight:400;letter-spacing:0.2em;text-transform:uppercase;color:var(--rose);margin-bottom:1rem;display:block}.section-title{font-family:var(--font-display);font-size:clamp(2.2rem,4vw,3.2rem);font-weight:300;color:var(--charcoal);line-height:1.2;margin-bottom:2rem}.section-title em{font-style:italic;color:var(--rose)}.body-text{font-size:1rem;line-height:1.8;color:var(--charcoal-mid);font-weight:300;margin-bottom:1.5rem}.italic{font-style:italic}.reveal{opacity:0;transform:translateY(40px);will-change:opacity,transform;transition:opacity 0.8s cubic-bezier(0.25,0.46,0.45,0.94),transform 0.8s cubic-bezier(0.25,0.46,0.45,0.94)}.reveal.visible{opacity:1;transform:translateY(0);will-change:auto}.delay-1{transition-delay:0.15s}.delay-2{transition-delay:0.3s}.delay-3{transition-delay:0.45s}.delay-4{transition-delay:0.6s}.delay-5{transition-delay:0.75s}.btn-primary{display:inline-flex;align-items:center;gap:0.5rem;background:var(--rose);color:var(--white);padding:0.9rem 2.2rem;border-radius:50px;font-family:var(--font-body);font-size:0.85rem;font-weight:400;letter-spacing:0.08em;text-transform:uppercase;transition:var(--transition);position:relative;overflow:hidden}.btn-primary::before{content:'';position:absolute;inset:0;background:var(--rose-dark);transform:translateX(-100%);transition:transform var(--transition)}.btn-primary:hover::before{transform:translateX(0)}.btn-primary span,.btn-primary:hover{position:relative}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(196,149,122,0.35)}.btn-primary.btn-light{background:var(--cream);color:var(--rose)}.btn-primary.btn-light::before{background:var(--blush)}.btn-primary.btn-sm{padding:0.65rem 1.5rem;font-size:0.78rem}.btn-ghost.btn-sm{padding:0.65rem 1.5rem;font-size:0.78rem}.btn-ghost{display:inline-flex;align-items:center;padding:0.9rem 2.2rem;border:1.5px solid var(--rose);color:var(--rose);border-radius:50px;font-size:0.85rem;letter-spacing:0.08em;text-transform:uppercase;transition:var(--transition)}.btn-ghost:hover{background:var(--rose);color:var(--white);transform:translateY(-2px)}.btn-ghost.btn-ghost-light{border-color:var(--cream);color:var(--cream)}.btn-ghost.btn-ghost-light:hover{background:var(--cream);color:var(--rose)}.link-arrow{font-size:0.85rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--rose);display:inline-flex;align-items:center;gap:0.5rem;transition:var(--transition)}.link-arrow:hover{gap:1rem}.link-arrow span{transition:transform var(--transition)}.link-arrow:hover span{transform:translateX(4px)}.nav{position:fixed;top:0;left:0;right:0;height:var(--nav-h);display:flex;align-items:center;justify-content:space-between;padding:0 2.5rem;z-index:1000;transition:background var(--transition),box-shadow var(--transition);background:rgba(250,247,242,0.92);backdrop-filter:blur(12px);box-shadow:0 1px 0 rgba(42,36,32,0.08)}.nav.scrolled{background:rgba(250,247,242,0.95);backdrop-filter:blur(12px);box-shadow:0 1px 0 rgba(42,36,32,0.08)}.nav-logo{font-family:var(--font-display);font-size:1.5rem;font-weight:300;letter-spacing:0.25em;color:var(--charcoal);transition:color var(--transition)}.nav-logo:hover{color:var(--rose)}.nav-links{display:flex;align-items:center;gap:2.5rem}.nav-center{display:flex;align-items:center;gap:2.5rem}.nav-link{font-size:0.8rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--charcoal-mid);font-weight:400;position:relative;transition:color var(--transition)}.nav-link::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:1px;background:var(--rose);transition:width var(--transition)}.nav-link:hover,.nav-link.active{color:var(--charcoal)}.nav-link:hover::after,.nav-link.active::after{width:100%}.nav-cta{background:var(--rose);color:var(--white)!important;padding:0.55rem 1.4rem;border-radius:50px;transition:background var(--transition),transform var(--transition)}.nav-cta::after{display:none}.nav-cta:hover{background:var(--rose-dark);transform:translateY(-1px)}.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;padding:6px;width:44px;height:44px;border-radius:8px;transition:background var(--transition-fast);background:none;border:none;cursor:pointer}.nav-burger:hover{background:var(--cream-dark)}.nav-burger span{width:24px;height:2px;background:var(--charcoal);display:block;border-radius:2px;transition:var(--transition);transform-origin:center}.nav-item{position:relative}.nav-item>.nav-link{display:flex;align-items:center;gap:0.35rem}.nav-item>.nav-link .nav-chevron{display:inline-block;width:0.45em;height:0.45em;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)translateY(-2px);transition:transform var(--transition-fast);margin-top:1px}.nav-item:hover>.nav-link .nav-chevron,.nav-item:focus-within>.nav-link .nav-chevron,.nav-item.menu-open>.nav-link .nav-chevron{transform:rotate(-135deg)translateY(-2px)}.mega-menu{position:absolute;top:calc(100% + 18px);left:50%;transform:translateX(-50%)translateY(8px);background:var(--white);border:1px solid var(--blush);border-radius:var(--radius);padding:1.5rem;min-width:920px;max-width:90vw;display:grid;grid-template-columns:1fr 1fr 1fr 1fr;align-items:start;gap:1.2rem;box-shadow:0 20px 60px rgba(42,36,32,0.12),0 4px 16px rgba(42,36,32,0.06);opacity:0;pointer-events:none;visibility:hidden;transition:opacity 0.25s ease,transform 0.25s ease,visibility 0.25s;z-index:2000}.mega-menu::before{content:'';position:absolute;top:-6px;left:50%;transform:translateX(-50%);width:12px;height:12px;background:var(--white);border-left:1px solid var(--blush);border-top:1px solid var(--blush);rotate:45deg}.nav-item.menu-open .mega-menu{opacity:1;pointer-events:auto;visibility:visible;transform:translateX(-50%)translateY(0)}.mega-col{display:flex;flex-direction:column;gap:0;align-self:stretch}.mega-col-header{display:flex;align-items:center;gap:0.6rem;padding:0.5rem 0.75rem 0.75rem;margin-bottom:0.25rem;border-bottom:1px solid var(--cream-dark);min-height:64px}.mega-col-icon{width:32px;height:32px;background:var(--cream-dark);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0}.mega-col-title{font-family:var(--font-display);font-size:1rem;font-weight:500;color:var(--charcoal);letter-spacing:0.04em;white-space:nowrap}.mega-col-subtitle{font-size:0.68rem;color:var(--warm-gray);letter-spacing:0.08em;text-transform:uppercase}.mega-col-header-link{margin-left:auto;font-size:0.68rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--rose);white-space:nowrap;transition:color var(--transition-fast)}.mega-col-header-link:hover{color:var(--rose-dark)}.mega-item{display:flex;align-items:flex-start;gap:0.65rem;padding:0.55rem 0.75rem;border-radius:var(--radius-sm);transition:background var(--transition-fast);cursor:pointer}.mega-item:hover{background:var(--cream)}.mega-item-dot{width:5px;height:5px;background:var(--rose);border-radius:50%;margin-top:0.45em;flex-shrink:0;opacity:0.5;transition:opacity var(--transition-fast)}.mega-item:hover .mega-item-dot{opacity:1}.mega-item-text{}.mega-item-name{font-size:0.78rem;font-weight:400;color:var(--charcoal);letter-spacing:0.04em;display:block;transition:color var(--transition-fast)}.mega-item:hover .mega-item-name{color:var(--rose)}.mega-item-desc{font-size:0.68rem;color:var(--warm-gray);line-height:1.5;margin-top:0.1rem}.mobile-menu{position:fixed;top:0;right:0;bottom:0;width:50vw;min-width:280px;max-width:340px;background:var(--cream);padding:5rem 2rem 2.5rem;display:flex;flex-direction:column;gap:0;transform:translateX(100%);opacity:1;transition:transform 0.42s cubic-bezier(0.25,0.46,0.45,0.94);z-index:1001;box-shadow:-12px 0 50px rgba(42,36,32,0.18);overflow-y:auto}.mobile-menu.open{transform:translateX(0)}.mobile-overlay{position:fixed;inset:0;background:rgba(42,36,32,0.45);backdrop-filter:blur(2px);z-index:1000;opacity:0;visibility:hidden;transition:opacity 0.4s ease,visibility 0.4s ease}.mobile-overlay.open{opacity:1;visibility:visible}.mobile-menu-close{position:absolute;top:1.4rem;right:1.4rem;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--blush-mid);background:none;cursor:pointer;transition:var(--transition)}.mobile-menu-close:hover{background:var(--rose);border-color:var(--rose)}.mobile-menu-close:hover .close-bar{background:var(--white)}.close-bar{position:absolute;width:16px;height:1.5px;background:var(--charcoal);border-radius:2px;transition:var(--transition)}.close-bar:first-child{transform:rotate(45deg)}.close-bar:last-child{transform:rotate(-45deg)}.mobile-menu-logo{font-family:var(--font-display);font-size:1.2rem;font-weight:300;letter-spacing:0.25em;color:var(--charcoal);margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--blush)}.mobile-link{font-size:0.95rem;letter-spacing:0.12em;color:var(--charcoal);text-transform:uppercase;font-weight:300;padding:1rem 0;border-bottom:1px solid var(--cream-dark);transition:color var(--transition);display:flex;align-items:center;justify-content:space-between}.mobile-link:hover{color:var(--rose)}.mobile-link-arrow{font-size:0.7rem;color:var(--blush-mid);transition:transform var(--transition)}.mobile-link:hover .mobile-link-arrow{transform:translateX(4px);color:var(--rose)}.mobile-sub{display:flex;flex-direction:column;gap:0.5rem;padding:0.25rem 0 0.5rem 1.2rem;margin-top:-0.75rem}.mobile-sub-link{font-size:0.78rem;letter-spacing:0.1em;color:var(--charcoal-mid);text-transform:uppercase;font-weight:300;transition:color var(--transition)}.mobile-sub-link:hover{color:var(--rose)}.hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding-top:var(--nav-h)}.hero-bg{position:absolute;inset:0;z-index:0}.hero-orb{position:absolute;border-radius:50%;filter:blur(80px);animation:orbFloat 8s ease-in-out infinite alternate;will-change:transform}.hero-orb-1{width:600px;height:600px;background:radial-gradient(circle,rgba(232,213,192,0.5)0%,transparent 70%);top:-100px;right:-100px;animation-delay:0s}.hero-orb-2{width:400px;height:400px;background:radial-gradient(circle,rgba(196,149,122,0.25)0%,transparent 70%);bottom:50px;left:50px;animation-delay:-3s}.hero-orb-3{width:300px;height:300px;background:radial-gradient(circle,rgba(143,168,158,0.2)0%,transparent 70%);top:50%;left:40%;animation-delay:-5s}@keyframes orbFloat{0%{transform:translate(0,0)scale(1)}100%{transform:translate(30px,-30px)scale(1.1)}}.hero-grain{position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");opacity:0.4}.hero-content{position:relative;z-index:1;max-width:700px;padding:0 2rem 0 6rem;animation:heroIn 1.2s ease forwards}@keyframes heroIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-eyebrow{font-size:0.75rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--rose);margin-bottom:1.5rem;display:flex;align-items:center;gap:1rem}.hero-eyebrow::before{content:'';width:40px;height:1px;background:var(--rose);display:inline-block}.hero-title{font-family:var(--font-display);font-size:clamp(3.4rem,7vw,6rem);font-weight:300;line-height:1;color:#ffffff;margin-bottom:1.8rem;display:flex;flex-direction:column;gap:0.35rem;text-shadow:0 4px 12px rgba(0,0,0,0.18);max-width:760px}.hero-title-line{overflow:hidden;letter-spacing:-0.03em}.hero-title-line.italic{font-style:italic;color:#f3d2c2}.hero-subtitle{font-size:1.1rem;line-height:1.9;color:rgba(255,255,255,0.92);font-weight:300;max-width:480px;margin-bottom:2.5rem}.hero-actions{display:flex;gap:1.2rem;flex-wrap:wrap}.hero-scroll{position:absolute;bottom:3rem;left:6rem;display:flex;flex-direction:column;align-items:center;gap:1rem;z-index:1}.hero-scroll span{font-size:0.7rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--warm-gray);writing-mode:vertical-rl}.hero-scroll-line{width:1px;height:60px;background:var(--blush-mid);position:relative;overflow:hidden}.hero-scroll-line::after{content:'';position:absolute;top:0;left:0;width:100%;height:30px;background:var(--rose);animation:scrollLine 2s ease-in-out infinite}@keyframes scrollLine{0%{top:-30px}100%{top:70px}}.hero-badge{position:absolute;right:2rem;bottom:2rem;z-index:10;width:140px;height:140px;display:flex;align-items:center;justify-content:center}.hero-badge-img{width:140px;height:140px;border-radius:50%;object-fit:cover;animation:badgeSpin 20s linear infinite;filter:drop-shadow(0 8px 24px rgba(0,0,0,0.2));border:3px solid #f3d2c2;box-shadow:0 0 0 2px #ffffff}@keyframes badgeSpin{to{transform:rotate(360deg)}}.marquee-section{padding:1.2rem 0;background:var(--charcoal);overflow:hidden;white-space:nowrap}.marquee-track{display:inline-flex;animation:marquee 30s linear infinite;font-family:var(--font-display);font-size:1rem;font-weight:300;font-style:italic;color:var(--blush);letter-spacing:0.1em}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-33.33%)}}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.intro-visual{position:relative;height:400px}.intro-card{position:absolute;right:0;top:50%;transform:translateY(-50%);width:220px;height:220px;background:var(--rose);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 30px 80px rgba(196,149,122,0.3)}.intro-card-inner{text-align:center}.intro-stat{text-align:center}.stat-num{font-family:var(--font-display);font-size:3.5rem;font-weight:300;color:var(--white);line-height:1}.stat-plus{font-family:var(--font-display);font-size:2rem;color:var(--blush)}.intro-stat small{font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--blush);display:block;margin-top:0.25rem}.intro-shapes{position:absolute;left:0;top:0}.shape-circle{width:280px;height:280px;border-radius:50%;background:var(--cream-dark);position:absolute;top:0;left:0;animation:shapePulse 4s ease-in-out infinite;display:flex;align-items:center;justify-content:center}.shape-circle-content{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.5rem;gap:0.3rem}.shape-circle-num{font-family:var(--font-display);font-size:2.8rem;font-weight:300;color:var(--charcoal);line-height:1;letter-spacing:-0.02em}.shape-circle-label{font-size:0.65rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--rose);font-weight:400}.shape-circle-divider{width:30px;height:1px;background:var(--blush-mid);margin:0.4rem 0}.shape-circle-sub{font-family:var(--font-display);font-size:0.85rem;font-style:italic;color:var(--charcoal-mid);line-height:1.5;font-weight:300}.shape-ring{width:320px;height:320px;border:1px solid var(--blush-mid);border-radius:50%;position:absolute;top:-20px;left:-20px;animation:shapePulse 4s ease-in-out infinite reverse}@keyframes shapePulse{0%,100%{transform:scale(1)}50%{transform:scale(1.04)}}.services-highlight{background:var(--cream-dark)}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-top:3rem}.service-card{background:var(--cream);border-radius:var(--radius);padding:2.5rem 2rem;position:relative;overflow:hidden;transition:var(--transition);cursor:default}.service-card{transform:translateZ(0)}.service-card:hover{transform:translateY(-8px);box-shadow:0 24px 60px rgba(42,36,32,0.1)}.service-card:hover .service-card-bg{opacity:1}.service-card-bg{position:absolute;inset:0;background:#c4957a;opacity:0;transition:opacity var(--transition);z-index:0}.service-card:hover{background:#c4957a}.service-card>*{position:relative;z-index:1}.service-card:hover h3,.service-card:hover p,.service-card:hover .service-card-num{color:var(--white)}.service-card:hover .service-link{color:var(--blush)}.service-card:hover .service-card-icon{color:rgba(255,255,255,0.3)}.service-card-num{font-family:var(--font-display);font-size:0.75rem;font-weight:300;letter-spacing:0.2em;color:var(--warm-gray);margin-bottom:1.5rem;transition:color var(--transition)}.service-card-icon{font-size:2rem;color:var(--blush-mid);margin-bottom:1rem;display:block;transition:color var(--transition)}.service-card h3{font-family:var(--font-display);font-size:1.4rem;font-weight:400;color:var(--charcoal);margin-bottom:0.75rem;transition:color var(--transition)}.service-card p{font-size:0.88rem;line-height:1.7;color:var(--charcoal-mid);transition:color var(--transition)}.service-link{display:inline-block;margin-top:1.5rem;font-size:0.78rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--rose);transition:var(--transition)}.service-link:hover{transform:translateX(4px)}.cta-band{background:var(--charcoal);padding:6rem 0;position:relative;overflow:hidden;text-align:center}.cta-band-bg{position:absolute;inset:0}.cta-orb{width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(196,149,122,0.2)0%,transparent 70%);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);animation:orbFloat 6s ease-in-out infinite alternate}.cta-band-inner{position:relative;z-index:1}.cta-band-inner h2{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:300;color:var(--cream);margin-bottom:1rem}.cta-band-inner p{color:var(--warm-gray);font-size:1rem;margin-bottom:2.5rem;font-weight:300}.testimonials{background:var(--cream)}.testimonials-slider{position:relative;overflow:hidden}.testimonial-track{will-change:transform;display:flex;transition:transform 0.6s cubic-bezier(0.25,0.46,0.45,0.94)}.testimonial-item{min-width:100%;padding:3rem 4rem;text-align:center}.testimonial-stars{font-size:1.2rem;color:var(--gold);margin-bottom:1.5rem;letter-spacing:4px}.testimonial-item p{font-family:var(--font-display);font-size:1.4rem;font-weight:300;font-style:italic;line-height:1.6;color:var(--charcoal);max-width:700px;margin:0 auto 1.5rem}.testimonial-item cite{font-size:0.8rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--warm-gray)}.testimonial-nav{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2rem}.t-prev,.t-next{width:44px;height:44px;border-radius:50%;border:1px solid var(--blush-mid);color:var(--charcoal-mid);font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:var(--transition);cursor:pointer}.t-prev:hover,.t-next:hover{background:var(--rose);color:var(--white);border-color:var(--rose)}.t-dots{display:flex;gap:0.5rem}.t-dot{width:8px;height:8px;border-radius:50%;background:var(--blush-mid);transition:var(--transition);cursor:pointer}.t-dot.active{background:var(--rose);width:24px;border-radius:4px}.contact-strip{background:var(--cream-dark)}.contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.contact-item{text-align:center}.contact-icon{font-size:2rem;margin-bottom:0.75rem;display:flex;align-items:center;justify-content:center}.contact-icon img{width:28px;height:28px;filter:invert(58%) sepia(20%) saturate(600%) hue-rotate(330deg) brightness(90%)}.contact-item h4{font-family:var(--font-display);font-size:1.1rem;font-weight:400;margin-bottom:0.5rem}.contact-item p{font-size:0.88rem;color:var(--charcoal-mid);line-height:1.6;font-weight:300}.footer{background:var(--charcoal);color:var(--blush);padding:5rem 0 2rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:3rem;margin-bottom:4rem}.footer-logo{font-family:var(--font-display);font-size:1.8rem;font-weight:300;letter-spacing:0.25em;color:var(--cream);display:block;margin-bottom:1rem}.footer-brand p{font-size:0.88rem;color:var(--warm-gray);line-height:1.7;font-weight:300}.footer-social{display:flex;gap:1rem;margin-top:1.5rem}.footer-social a{width:38px;height:38px;border:1px solid rgba(154,142,136,0.4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.75rem;color:var(--warm-gray);transition:var(--transition)}.footer-social a:hover{background:var(--rose);border-color:var(--rose);color:var(--white)}.footer-links h5,.footer-contact h5{font-family:var(--font-body);font-size:0.7rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--cream);margin-bottom:1.5rem;font-weight:400}.footer-links{display:flex;flex-direction:column}.footer-links a{color:var(--warm-gray);font-size:0.88rem;margin-bottom:0.75rem;font-weight:300;transition:color var(--transition)}.footer-links a:hover{color:var(--blush)}.footer-contact p{color:var(--warm-gray);font-size:0.88rem;margin-bottom:0.75rem;font-weight:300;line-height:1.6}.footer-bottom{border-top:1px solid rgba(154,142,136,0.2);padding-top:2rem;display:flex;justify-content:space-between;align-items:center}.footer-bottom p{font-size:0.78rem;color:var(--warm-gray);font-weight:300}.page-hero{padding:calc(var(--nav-h) + 5rem) 0 6rem;position:relative;text-align:center;min-height:360px}.page-hero .reveal,.treatment-hero .reveal{opacity:1!important;transform:none!important;transition:none!important}.page-hero.page-hero-sm{padding:calc(var(--nav-h) + 3rem) 0 4rem;min-height:300px}.page-hero-bg{position:absolute;inset:0;overflow:hidden;background:#c4957a}.page-hero-breadcrumb{font-size:0.75rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(255,255,255,0.6);margin-bottom:1.5rem;display:block}.page-hero-title{font-family:var(--font-display);font-size:clamp(2.5rem,5vw,4.5rem);font-weight:300;color:var(--white);margin-bottom:1rem;line-height:1.1;text-shadow:0 2px 8px rgba(42,36,32,0.3)}.page-hero-title em{font-style:italic;color:#5c2a18;text-shadow:none}.page-hero-sub{font-size:1rem;color:rgba(255,255,255,0.85);max-width:500px;margin:0 auto;font-weight:300;line-height:1.7}.filter-tabs{display:flex;gap:0.75rem;flex-wrap:wrap;margin-bottom:3rem}.filter-tab{padding:0.55rem 1.4rem;border:1px solid var(--blush-mid);border-radius:50px;font-size:0.8rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--charcoal-mid);transition:var(--transition);cursor:pointer}.filter-tab:hover,.filter-tab.active{background:var(--rose);border-color:var(--rose);color:var(--white)}.services-full-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.service-full-card{background:var(--cream-dark);border-radius:var(--radius);padding:2.5rem;border:1px solid var(--blush);transition:var(--transition)}.service-full-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(42,36,32,0.1);background:var(--cream)}.service-full-card.hidden{display:none}.sfc-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.sfc-cat{font-size:0.7rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--rose);background:var(--blush);padding:0.3rem 0.8rem;border-radius:50px}.sfc-price{font-family:var(--font-display);font-size:1.1rem;color:var(--rose);font-weight:500}.service-full-card h3{font-family:var(--font-display);font-size:1.5rem;font-weight:400;margin-bottom:0.75rem}.service-full-card p{font-size:0.88rem;color:var(--charcoal-mid);line-height:1.7;margin-bottom:1.5rem;font-weight:300}.sfc-details{list-style:none;margin-bottom:2rem}.sfc-details li{font-size:0.82rem;color:var(--charcoal-mid);padding:0.3rem 0;border-bottom:1px solid var(--blush);font-weight:300}.about-story-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.about-story-visual{position:relative;height:400px}.about-visual-block{position:relative;height:100%}.about-accent-box{position:absolute;right:2rem;top:50%;transform:translateY(-50%);background:var(--rose);border-radius:var(--radius);padding:2.5rem;text-align:center;z-index:1}.about-year{font-family:var(--font-display);font-size:3.5rem;font-weight:300;color:var(--white);display:block;line-height:1}.about-accent-box small{font-size:0.7rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--blush)}.about-values{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.about-value{font-size:0.8rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--charcoal-mid);display:flex;align-items:center;gap:0.5rem}.about-value span{color:var(--rose)}.team-section{background:var(--cream-dark)}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}.team-card{background:var(--cream);border-radius:var(--radius);padding:2.5rem;text-align:center;transition:var(--transition)}.team-card{transform:translateZ(0)}.team-card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(42,36,32,0.1)}.team-card-avatar{width:90px;height:90px;border-radius:50%;background:var(--blush);margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background:var(--av-color,var(--blush))}.team-avatar-inner{font-family:var(--font-display);font-size:2rem;font-weight:300;color:var(--white)}.team-card h3{font-family:var(--font-display);font-size:1.3rem;font-weight:400;margin-bottom:0.25rem}.team-role{font-size:0.75rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--rose);margin-bottom:1rem;display:block}.team-bio{font-size:0.85rem;color:var(--charcoal-mid);line-height:1.7;margin-bottom:1.5rem;font-weight:300}.team-specialties{display:flex;gap:0.5rem;justify-content:center;flex-wrap:wrap}.team-specialties span{font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;background:var(--blush);color:var(--rose-dark);padding:0.25rem 0.7rem;border-radius:50px}.cert-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:3rem}.cert-item{text-align:center;padding:2.5rem 1.5rem;background:var(--cream-dark);border-radius:var(--radius);transition:var(--transition)}.cert-item:hover{transform:translateY(-4px)}.cert-icon{font-size:2.5rem;margin-bottom:1rem;display:block}.cert-item h4{font-family:var(--font-display);font-size:1.2rem;margin-bottom:0.5rem}.cert-item p{font-size:0.85rem;color:var(--charcoal-mid);font-weight:300}.gallery-masonry{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:220px;gap:1.2rem}.gallery-item{border-radius:var(--radius-sm);overflow:hidden;cursor:pointer}.gallery-item-inner{position:relative;height:100%}.gallery-placeholder{backface-visibility:hidden;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.5rem;transition:transform var(--transition)}.gallery-placeholder{transform:translateZ(0)}.gallery-item:hover .gallery-placeholder{transform:scale(1.04)}.gallery-item-inner>img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;transition:transform var(--transition);transform:translateZ(0)}.gallery-item:hover>.gallery-item-inner>img{transform:scale(1.04)}.gallery-placeholder span{font-family:var(--font-display);font-size:1rem;font-style:italic;color:rgba(42,36,32,0.6)}.gal-icon{font-size:2rem;color:rgba(42,36,32,0.25)}.gallery-overlay{position:absolute;inset:0;background:rgba(42,36,32,0.6);display:flex;align-items:flex-end;padding:1.5rem;opacity:0;transition:opacity var(--transition)}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay p{color:var(--cream);font-family:var(--font-display);font-size:1rem;font-style:italic}.lightbox{position:fixed;inset:0;background:rgba(42,36,32,0.95);z-index:9000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:var(--transition)}.lightbox.open{opacity:1;visibility:visible}.lightbox-close{position:absolute;top:2rem;right:2rem;color:var(--cream);font-size:1.5rem;cursor:pointer;background:none;border:none}.booking-section .container{contain:layout;display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start}.booking-steps{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:3rem;grid-column:1}.booking-step{display:flex;flex-direction:column;align-items:center;gap:0.5rem;opacity:0.4;transition:opacity var(--transition)}.booking-step.active{opacity:1}.booking-step.completed{opacity:0.7}.step-num{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--blush-mid);display:flex;align-items:center;justify-content:center;font-size:0.8rem;color:var(--charcoal-mid);transition:var(--transition)}.booking-step.active .step-num{background:var(--rose);border-color:var(--rose);color:var(--white)}.booking-step.completed .step-num{background:var(--sage);border-color:var(--sage);color:var(--white)}.booking-step span{font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--charcoal-mid);white-space:nowrap}.step-line{flex:1;height:1px;background:var(--blush);margin:0 0.5rem;margin-bottom:1.5rem}.booking-wrapper{background:var(--cream-dark);border-radius:var(--radius);border:1px solid var(--blush);overflow:hidden;grid-column:1}.booking-panel{display:none;padding:2.5rem;animation:panelIn 0.4s ease forwards}.booking-panel.active{display:block}@keyframes panelIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.booking-panel-title{font-family:var(--font-display);font-size:1.8rem;font-weight:300;color:var(--charcoal);margin-bottom:2rem}.booking-services-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:2rem}.booking-service-card{background:var(--cream);border:1.5px solid var(--blush);border-radius:var(--radius-sm);padding:1.5rem 1.2rem;cursor:pointer;transition:var(--transition);text-align:center}.booking-service-card:hover{border-color:var(--rose);transform:translateY(-3px)}.booking-service-card.selected{border-color:var(--rose);background:rgba(196,149,122,0.1)}.bsc-icon{font-size:1.5rem;color:var(--blush-mid);margin-bottom:0.75rem;display:block}.booking-service-card h4{font-family:var(--font-display);font-size:1rem;font-weight:400;margin-bottom:0.3rem}.booking-service-card p{font-size:0.75rem;color:var(--warm-gray)}.booking-nav{display:flex;justify-content:space-between;align-items:center;margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--blush)}.calendar-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:1rem}.calendar-container{background:var(--cream);border-radius:var(--radius-sm);padding:1.5rem;border:1px solid var(--blush)}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.cal-month-title{font-family:var(--font-display);font-size:1.2rem;font-weight:400}.cal-nav-btn{width:32px;height:32px;border-radius:50%;border:1px solid var(--blush-mid);display:flex;align-items:center;justify-content:center;color:var(--charcoal-mid);cursor:pointer;transition:var(--transition);font-size:1.1rem}.cal-nav-btn:hover{background:var(--rose);border-color:var(--rose);color:var(--white)}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;margin-bottom:0.5rem}.calendar-weekdays span{font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--warm-gray);padding:0.3rem}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:3px}.cal-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:0.82rem;cursor:pointer;transition:var(--transition);position:relative;font-weight:300}.cal-day.empty{cursor:default}.cal-day.past{color:var(--blush-mid);cursor:not-allowed}.cal-day.closed{color:var(--blush-mid);cursor:not-allowed;background:var(--cream-dark)}.cal-day.available{cursor:pointer}.cal-day.available:hover{background:var(--rose);color:var(--white)}.cal-day.partial{cursor:pointer}.cal-day.partial::after{content:'';position:absolute;bottom:3px;left:50%;transform:translateX(-50%);width:4px;height:4px;border-radius:50%;background:var(--gold)}.cal-day.partial:hover{background:var(--gold);color:var(--white)}.cal-day.full{color:var(--blush-mid);cursor:not-allowed;text-decoration:line-through}.cal-day.selected{background:var(--rose);color:var(--white);font-weight:500}.cal-day.today{font-weight:500;border:1.5px solid var(--rose)}.calendar-legend{display:flex;flex-wrap:wrap;gap:0.75rem;margin-top:1.2rem}.cal-legend-item{display:flex;align-items:center;gap:0.4rem;font-size:0.7rem;color:var(--warm-gray)}.cal-legend-dot{width:10px;height:10px;border-radius:50%}.cal-legend-dot.available{background:var(--rose)}.cal-legend-dot.partial{background:var(--gold)}.cal-legend-dot.full{background:var(--blush-mid);border:1px solid var(--blush-mid)}.cal-legend-dot.closed{background:var(--cream-dark);border:1px solid var(--blush-mid)}.timeslot-container{background:var(--cream);border-radius:var(--radius-sm);padding:1.5rem;border:1px solid var(--blush)}.timeslot-title{font-family:var(--font-display);font-size:1.1rem;font-weight:400;margin-bottom:1.5rem}.timeslots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0.6rem}.timeslot-placeholder{grid-column:1 / -1;text-align:center;padding:2rem;color:var(--warm-gray)}.timeslot-placeholder span{font-size:2rem;display:block;margin-bottom:0.5rem}.timeslot-placeholder p{font-size:0.85rem;font-weight:300}.time-slot{padding:0.6rem;border-radius:8px;border:1px solid var(--blush);text-align:center;font-size:0.82rem;cursor:pointer;transition:var(--transition);font-weight:300}.time-slot.available:hover{background:var(--rose);border-color:var(--rose);color:var(--white)}.time-slot.selected{background:var(--rose);border-color:var(--rose);color:var(--white);font-weight:400}.time-slot.booked{background:var(--cream-dark);color:var(--blush-mid);cursor:not-allowed;text-decoration:line-through}.time-slot.booked::after{content:'✗';margin-left:4px;font-size:0.7rem}.booking-summary-mini{background:var(--cream);border-radius:var(--radius-sm);padding:1.2rem 1.5rem;margin-bottom:1.5rem;border:1px solid var(--blush);font-size:0.88rem;color:var(--charcoal-mid);line-height:1.7}.booking-form{display:flex;flex-direction:column;gap:1.2rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:0.4rem}.form-group label{font-size:0.78rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--charcoal-mid)}.form-group input,.form-group textarea{padding:0.85rem 1.1rem;border:1.5px solid var(--blush);border-radius:var(--radius-sm);background:var(--cream);color:var(--charcoal);font-size:0.9rem;font-weight:300;transition:border-color var(--transition);resize:none;outline:none}.form-group input:focus,.form-group textarea:focus{border-color:var(--rose)}.form-check{display:flex;align-items:flex-start;gap:0.75rem;margin-top:0.5rem}.form-check input{margin-top:3px;accent-color:var(--rose)}.form-check label{font-size:0.82rem;color:var(--charcoal-mid);font-weight:300;line-height:1.5}.form-check label a{color:var(--rose);text-decoration:underline}.confirmation-content{text-align:center;padding:2rem 0}.confirmation-icon{font-size:3rem;color:var(--rose);display:block;margin-bottom:1.5rem;animation:confirmPop 0.6s cubic-bezier(0.34,1.56,0.64,1)forwards}@keyframes confirmPop{from{transform:scale(0)}to{transform:scale(1)}}.confirmation-content h2{font-family:var(--font-display);font-size:2.5rem;font-weight:300;margin-bottom:0.75rem}.confirmation-sub{color:var(--charcoal-mid);font-weight:300;margin-bottom:2rem}.confirmation-details{background:var(--cream);border-radius:var(--radius);padding:1.5rem 2rem;margin:2rem auto;max-width:420px;border:1px solid var(--blush);text-align:left;line-height:2;font-size:0.9rem}.confirmation-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}.confirmation-note{font-size:0.82rem;color:var(--warm-gray);margin-top:1.5rem;font-weight:300}.booking-sidebar{background:var(--cream-dark);border-radius:var(--radius);padding:2rem;border:1px solid var(--blush);position:sticky;top:calc(var(--nav-h)+ 2rem)}.booking-sidebar h3{font-family:var(--font-display);font-size:1.3rem;font-weight:400;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--blush)}.sidebar-item{padding:0.75rem 0;border-bottom:1px solid var(--blush);display:flex;flex-direction:column;gap:0.25rem}.sidebar-label{font-size:0.68rem;letter-spacing:0.12em;text-transform:uppercase;color:var(--warm-gray)}.sidebar-val{font-size:0.9rem;color:var(--charcoal);font-weight:400}.sidebar-price{color:var(--rose);font-family:var(--font-display);font-size:1.2rem}.sidebar-divider{margin:0.5rem 0}.sidebar-note{margin-top:1.5rem;font-size:0.8rem;color:var(--warm-gray);line-height:1.8;font-weight:300}@media(max-width:1200px){.mega-menu{min-width:760px;grid-template-columns:1fr 1fr;gap:0.75rem}}@media(max-width:1100px){.services-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.gallery-masonry{grid-template-columns:repeat(3,1fr)}.booking-section .container{contain:layout;grid-template-columns:1fr}.booking-sidebar{position:static}.booking-steps{grid-column:1}.booking-wrapper{grid-column:1}}@media(max-width:900px){.intro-grid,.about-story-grid{grid-template-columns:1fr;gap:3rem}.intro-visual{height:280px}.services-full-grid{grid-template-columns:repeat(2,1fr)}.team-grid{grid-template-columns:repeat(2,1fr)}.cert-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:repeat(2,1fr)}.calendar-layout{grid-template-columns:1fr}.nav-center{display:none}.nav-burger{display:flex}.nav-cta{display:none}.hero-content{padding:0 2rem}.hero-scroll{left:2rem}.hero-badge{right:2rem;bottom:6rem}}@media(max-width:600px){.section-pad{padding:3.5rem 0}.container{padding:0 1.2rem}.services-grid{grid-template-columns:1fr}.services-full-grid{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr}.cert-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{grid-template-columns:1fr}.gallery-masonry{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr}.booking-services-grid{grid-template-columns:repeat(2,1fr)}.testimonial-item{padding:2rem 1rem}.timeslots-grid{grid-template-columns:repeat(2,1fr)}.hero-badge{display:none}.hero-scroll{display:none}.booking-steps{gap:0}.booking-step span{display:none}.intro-visual{display:none}.shape-circle,.shape-ring,.intro-card{display:none}.hero-content{padding:2rem 1.2rem;margin:0;border-radius:20px;max-width:100%}.hero-title{font-size:clamp(2.4rem,9vw,3.5rem)}.hero-subtitle{font-size:0.95rem;max-width:100%}.hero-actions{flex-direction:column;gap:0.75rem}.hero-actions .btn-primary,.hero-actions .btn-ghost{width:100%;justify-content:center}.marquee-section{display:none}.footer-bottom{flex-direction:column;gap:0.75rem;text-align:center}.footer-bottom p{font-size:0.72rem}.contact-strip .section-pad{padding:2.5rem 0}.nav{padding:0 1.2rem}}.skip-link{position:absolute;top:-100%;left:0;background:var(--charcoal);color:var(--cream);padding:0.5rem 1rem;font-size:0.85rem;z-index:999999;border-radius:0 0 var(--radius-sm)0;transition:top 0.2s}.skip-link:focus{top:0}.hero-bg{overflow:hidden}.hero-carousel{position:absolute;inset:0;z-index:0}.hero-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;transform:scale(1.05);transition:opacity 1.4s ease,transform 6s ease}.hero-slide::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,rgba(10,10,10,.55),rgba(10,10,10,.68))}.hero-slide.active{opacity:1;transform:scale(1)}.hero-content,.hero-scroll,.hero-badge{position:relative;z-index:2}.hero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,20,20,0.55)0%,rgba(20,20,20,0.25)45%,rgba(20,20,20,0.45)100%);z-index:1}.hero-carousel,.hero-slide{position:absolute;inset:0}.hero-slide{background-size:cover;background-position:center}.hero-content{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - var(--nav-h))}.hero-content{position:relative;z-index:2;max-width:720px;padding:3.5rem;border-radius:32px;background:linear-gradient(135deg,rgba(20,20,20,0.50),rgba(20,20,20,0.18));backdrop-filter:blur(10px);box-shadow:0 20px 60px rgba(0,0,0,0.22)}.hero-eyebrow{color:rgba(255,255,255,0.75);margin-bottom:1rem}@media(max-width:768px){.hero-content{padding:2rem;margin:0 1rem}.hero-title{font-size:clamp(2.7rem,10vw,4rem)}}.breadcrumb-section{padding:calc(var(--nav-h)+ 1.5rem)0 0;background:var(--cream-dark)}.breadcrumb-section nav{display:flex;align-items:center;gap:0.5rem;font-size:0.75rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--warm-gray);font-weight:300}.breadcrumb-section nav a{color:var(--rose);transition:var(--transition-fast)}.breadcrumb-section nav a:hover{color:var(--rose-dark)}.breadcrumb-section nav span:last-child{color:var(--charcoal)}.treatment-hero{padding:calc(var(--nav-h) + 5rem) 0 6rem;position:relative;min-height:360px}.treatment-hero .container{position:relative;z-index:2}.treatment-title{font-family:var(--font-display);font-size:clamp(2.4rem,5vw,4rem);font-weight:300;color:var(--white);margin-bottom:1rem;line-height:1.15;text-shadow:0 2px 8px rgba(42,36,32,0.3)}.treatment-title em{font-style:italic;color:#5c2a18;text-shadow:none}.treatment-subtitle{font-size:1rem;color:rgba(255,255,255,0.85);font-weight:300;margin-bottom:1.8rem;max-width:600px;line-height:1.7}.treatment-meta{display:flex;flex-wrap:wrap;gap:0.75rem}.meta-item{display:inline-flex;align-items:center;gap:0.4rem;background:rgba(255,255,255,0.45);color:var(--charcoal);font-size:0.82rem;font-weight:400;padding:0.55rem 1.1rem;border-radius:50px;border:1px solid rgba(255,255,255,0.6);letter-spacing:0.02em;backdrop-filter:blur(4px)}.treatment-grid{display:grid;grid-template-columns:1fr 360px;gap:5rem;align-items:start}.treatment-content{max-width:720px}.treatment-aside{position:sticky;top:calc(var(--nav-h)+ 2rem);display:flex;flex-direction:column;gap:1.5rem}.treatment-aside-card{background:var(--cream-dark);border-radius:var(--radius);padding:2rem;border:1px solid var(--blush)}.treatment-aside-card h4{font-family:var(--font-display);font-size:1.1rem;font-weight:400;margin-bottom:1.2rem;padding-bottom:0.8rem;border-bottom:1px solid var(--blush);color:var(--charcoal)}.aside-detail{display:flex;align-items:flex-start;gap:0.8rem;padding:0.7rem 0;border-bottom:1px solid rgba(212,184,150,0.3);font-size:0.88rem}.aside-detail:last-child{border-bottom:none}.aside-detail-icon{font-size:1rem;min-width:20px}.aside-detail-text{display:flex;flex-direction:column}.aside-detail-label{font-size:0.7rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--warm-gray)}.aside-detail-val{color:var(--charcoal);font-weight:400}.aside-price-box{background:var(--rose);color:var(--white);border-radius:var(--radius-sm);padding:1.2rem 1.5rem;text-align:center;margin-top:0.5rem}.aside-price-box small{display:block;font-size:0.7rem;letter-spacing:0.12em;text-transform:uppercase;opacity:0.8;margin-bottom:0.25rem}.aside-price-box strong{display:block;font-family:var(--font-display);font-size:1.8rem;font-weight:300}.benefits-list{list-style:none;display:flex;flex-direction:column;gap:0.6rem;margin-bottom:1rem}.benefits-list li{display:flex;align-items:flex-start;gap:0.7rem;font-size:0.95rem;color:var(--charcoal-mid);font-weight:300;line-height:1.5;padding:0.5rem 0;border-bottom:1px solid rgba(212,184,150,0.3)}.benefits-list li::before{content:'✦';color:var(--rose);font-size:0.65rem;margin-top:0.35rem;flex-shrink:0}.process-list{list-style:none;counter-reset:process;display:flex;flex-direction:column;gap:0;margin-bottom:1rem}.process-list li{counter-increment:process;display:flex;align-items:flex-start;gap:1rem;padding:1.1rem 0;border-bottom:1px solid rgba(212,184,150,0.3);font-size:0.95rem;color:var(--charcoal-mid);font-weight:300;line-height:1.6;position:relative}.process-list li::before{content:counter(process,decimal-leading-zero);font-family:var(--font-display);font-size:1.4rem;font-weight:300;color:var(--rose);min-width:32px;flex-shrink:0;line-height:1.3}.process-list li strong{color:var(--charcoal);font-weight:500}.treatment-content .section-title{font-size:clamp(1.5rem,2.5vw,2rem);margin-top:2.5rem;margin-bottom:1rem}.related-treatments{background:var(--cream-dark);padding:5rem 0}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}.related-card{background:var(--white);border-radius:var(--radius);padding:1.8rem;border:1px solid var(--blush);transition:var(--transition);display:flex;flex-direction:column;gap:0.6rem}.related-card:hover{border-color:var(--rose);transform:translateY(-4px);box-shadow:0 12px 30px rgba(196,149,122,0.15)}.related-card-icon{font-size:1.4rem;color:var(--rose)}.related-card h4{font-family:var(--font-display);font-size:1.1rem;font-weight:400;color:var(--charcoal)}.related-card p{font-size:0.85rem;color:var(--charcoal-mid);font-weight:300;line-height:1.5}.related-card .link-arrow{margin-top:auto;font-size:0.78rem;letter-spacing:0.1em;text-transform:uppercase;color:var(--rose);display:flex;align-items:center;gap:0.35rem;transition:var(--transition-fast)}.related-card:hover .link-arrow{gap:0.6rem}.faq-section{padding:5rem 0}.faq-list{display:flex;flex-direction:column;gap:0.75rem;margin-top:2rem;max-width:760px}.faq-item{background:var(--cream-dark);border-radius:var(--radius-sm);border:1px solid var(--blush);overflow:hidden}.faq-q{width:100%;text-align:left;padding:1.2rem 1.5rem;font-family:var(--font-body);font-size:0.95rem;font-weight:400;color:var(--charcoal);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:1rem;background:none;border:none}.faq-q::after{content:'+';font-size:1.4rem;color:var(--rose);font-weight:300;transition:transform 0.3s ease;flex-shrink:0}.faq-item.open .faq-q::after{transform:rotate(45deg)}.faq-a{max-height:0;overflow:hidden;transition:max-height 0.4s ease,padding 0.4s ease;padding:0 1.5rem;font-size:0.9rem;color:var(--charcoal-mid);font-weight:300;line-height:1.7}.faq-item.open .faq-a{max-height:300px;padding:0 1.5rem 1.2rem}.services-full-grid{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:2.5rem;justify-content:center}.services-full-grid .service-full-card{flex:1 1 calc(33.333% - 1rem);min-width:280px;max-width:calc(33.333% - 1rem)}.service-full-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--blush);overflow:hidden;transition:var(--transition);display:flex;flex-direction:column}.service-full-card:hover{border-color:var(--rose);transform:translateY(-4px);box-shadow:0 16px 40px rgba(196,149,122,0.18)}.service-full-card-header{background:linear-gradient(135deg,var(--cream-dark),var(--blush));padding:2rem;display:flex;align-items:center;gap:1rem}.sfc-icon{width:48px;height:48px;background:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--rose);flex-shrink:0}.sfc-header-text h3{font-family:var(--font-display);font-size:1.15rem;font-weight:400;color:var(--charcoal);line-height:1.2}.sfc-header-text .sfc-duration{font-size:0.75rem;color:var(--warm-gray);margin-top:0.2rem}.service-full-card-body{padding:1.5rem 2rem;flex:1;display:flex;flex-direction:column;gap:1rem}.service-full-card-body p{font-size:0.88rem;color:var(--charcoal-mid);font-weight:300;line-height:1.7;flex:1}.sfc-meta{display:flex;align-items:center;justify-content:space-between;padding-top:0.75rem;border-top:1px solid var(--blush)}.sfc-price{font-family:var(--font-display);font-size:1.2rem;font-weight:300;color:var(--rose)}.sfc-link{font-size:0.65rem;letter-spacing:0.08em;text-transform:uppercase;color:var(--white);background:var(--rose);padding:0.3rem 0.75rem;border-radius:50px;transition:background var(--transition-fast),transform var(--transition-fast);display:inline-flex;align-items:center;gap:0.25rem;white-space:nowrap}.service-full-card:hover .sfc-link{background:var(--rose-dark);transform:translateX(2px)}@media(max-width:1100px){.treatment-grid{grid-template-columns:1fr;gap:3rem}.treatment-aside{position:static;flex-direction:row;flex-wrap:wrap}.treatment-aside-card{flex:1;min-width:260px}.related-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.services-full-grid .service-full-card{flex:1 1 calc(50% - 0.75rem);max-width:calc(50% - 0.75rem)}}@media(max-width:700px){.treatment-aside{flex-direction:column}.related-grid{grid-template-columns:1fr}.services-full-grid .service-full-card{flex:1 1 100%;max-width:100%}.breadcrumb-section nav{flex-wrap:wrap}.treatment-meta{flex-direction:column;align-items:flex-start}}
/* ===== RESPONSIVE ABOUT-STORY ===== */
@media(max-width:900px){
  .about-story-grid{grid-template-columns:1fr;gap:2rem}
  .about-story-visual{height:320px}
  .shape-circle{width:240px;height:240px}
  .shape-ring{width:280px;height:280px;top:-20px;left:-20px}
  .shape-circle-num{font-size:2.2rem}
  .shape-circle-sub{font-size:0.78rem}
  .about-accent-box{right:1rem;padding:1.8rem 1.4rem}
  .about-year{font-size:2.8rem}
}

@media(max-width:600px){
  .about-story-visual{height:260px}
  .about-story-grid{gap:1.5rem}
  .shape-circle{width:200px;height:200px}
  .shape-ring{width:240px;height:240px;top:-20px;left:-20px}
  .shape-circle-num{font-size:1.9rem}
  .shape-circle-label{font-size:0.58rem}
  .shape-circle-sub{font-size:0.72rem}
  .about-accent-box{right:0.5rem;top:auto;bottom:0.5rem;transform:none;padding:1.2rem 1rem}
  .about-year{font-size:2.2rem}
  .about-accent-box small{font-size:0.6rem}
  .about-values{flex-wrap:wrap;gap:0.6rem}
  .about-value{font-size:0.72rem}
  .cert-grid{grid-template-columns:1fr 1fr}
  .team-grid{grid-template-columns:1fr}
}

@media(max-width:420px){
  .about-story-visual{height:220px}
  .shape-circle{width:170px;height:170px}
  .shape-ring{width:210px;height:210px}
  .shape-circle-num{font-size:1.6rem}
  .shape-circle-content{padding:1rem}
  .about-accent-box{padding:0.9rem 0.8rem}
  .about-year{font-size:1.9rem}
}

/* ===== CERT ITEMS HERO COLOR (sobre-nosotras) ===== */
.cert-item-hero{background:var(--rose);border-radius:var(--radius);padding:2.5rem 2rem;text-align:center;transition:var(--transition);position:relative;overflow:hidden}
.cert-item-hero::before{content:'';position:absolute;inset:0;background:var(--rose-dark);opacity:0;transition:opacity var(--transition)}
.cert-item-hero:hover::before{opacity:1}
.cert-item-hero:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(168,116,88,0.35)}
.cert-item-hero h4{font-family:var(--font-display);font-size:1.25rem;font-weight:400;color:var(--white);margin-bottom:0.6rem;position:relative;z-index:1;letter-spacing:0.02em}
.cert-item-hero p{font-size:0.85rem;color:rgba(255,255,255,0.82);font-weight:300;line-height:1.6;position:relative;z-index:1}

/* ===== MOBILE BURGER ANIMATION ===== */
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ===== MOBILE NAV PADDING FIX ===== */
@media(max-width:900px){
  .nav{padding:0 1.5rem}
}

/* ===== EXTRA SMALL MOBILE ===== */
@media(max-width:400px){
  .mobile-menu{width:80vw;min-width:240px}
  .hero-content{padding:1.5rem 1rem}
  .hero-title{font-size:clamp(2rem,8vw,2.8rem)}
  .section-title{font-size:clamp(1.8rem,6vw,2.4rem)}
  .services-grid{grid-template-columns:1fr}
  .cert-grid{grid-template-columns:1fr}
}

/* ===== TABLET TWEAKS (700–900px) ===== */
@media(min-width:600px) and (max-width:900px){
  .hero-content{padding:2.5rem;max-width:90%}
  .hero-title{font-size:clamp(2.8rem,7vw,4.2rem)}
  .intro-visual{height:240px}
  .contact-grid{grid-template-columns:repeat(2,1fr)}
  .services-grid{grid-template-columns:repeat(2,1fr)}
}

/* ===== HIDE CUSTOM CURSOR ON TOUCH DEVICES ===== */
@media(hover:none) and (pointer:coarse){
  .cursor,.cursor-follower{display:none}
  body{cursor:auto}
  button{cursor:pointer}
}


/* ===== MOBILE BURGER ANIMATION ===== */
.nav-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.nav-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ===== MOBILE NAV PADDING FIX ===== */
@media(max-width:900px){
  .nav{padding:0 1.5rem}
}

/* ===== EXTRA SMALL MOBILE ===== */
@media(max-width:400px){
  .mobile-menu{width:80vw;min-width:240px}
  .hero-content{padding:1.5rem 1rem}
  .hero-title{font-size:clamp(2rem,8vw,2.8rem)}
  .section-title{font-size:clamp(1.8rem,6vw,2.4rem)}
  .services-grid{grid-template-columns:1fr}
  .cert-grid{grid-template-columns:1fr}
}

/* ===== TABLET TWEAKS (700–900px) ===== */
@media(min-width:600px) and (max-width:900px){
  .hero-content{padding:2.5rem;max-width:90%}
  .hero-title{font-size:clamp(2.8rem,7vw,4.2rem)}
  .intro-visual{height:240px}
  .contact-grid{grid-template-columns:repeat(2,1fr)}
  .services-grid{grid-template-columns:repeat(2,1fr)}
}

/* ===== HIDE CUSTOM CURSOR ON TOUCH DEVICES ===== */
@media(hover:none) and (pointer:coarse){
  .cursor,.cursor-follower{display:none}
  body{cursor:auto}
  button{cursor:pointer}
}

/* ===== MENÚ MÓVIL — 2 NIVELES ===== */

/* Nivel 1: "Servicios" */
.mob-l1{border-bottom:1px solid var(--cream-dark)}
.mob-l1-btn{
  width:100%;background:none;border:none;
  padding:1rem 0;
  font-family:var(--font-body);font-size:0.95rem;
  letter-spacing:0.12em;color:var(--charcoal);
  text-transform:uppercase;font-weight:300;
  display:flex;align-items:center;justify-content:space-between;
  cursor:pointer;transition:color var(--transition-fast)
}
.mob-l1-btn:hover{color:var(--rose)}
.mob-l1-btn[aria-expanded="true"]{color:var(--rose)}
.mob-l1-body{
  max-height:0;overflow:hidden;
  transition:max-height 0.4s cubic-bezier(0.25,0.46,0.45,0.94)
}
.mob-l1-body.open{max-height:3000px}

/* Nivel 2: cada categoría */
.mob-l2{border-top:1px solid var(--cream-dark)}
.mob-l2-btn{
  width:100%;background:none;border:none;
  padding:0.75rem 0.75rem 0.75rem 0.5rem;
  display:flex;align-items:center;justify-content:space-between;
  cursor:pointer;transition:background var(--transition-fast)
}
.mob-l2-btn:hover{background:var(--cream-dark)}
.mob-l2-btn[aria-expanded="true"]{background:var(--cream-dark)}
.mob-l2-link{
  font-family:var(--font-body);font-size:0.82rem;
  letter-spacing:0.12em;text-transform:uppercase;
  color:var(--rose);font-weight:400;
  pointer-events:auto;flex:1;text-align:left
}
.mob-l2-body{
  max-height:0;overflow:hidden;
  transition:max-height 0.35s cubic-bezier(0.25,0.46,0.45,0.94);
  background:var(--white)
}
.mob-l2-body.open{max-height:800px}
.mob-treat{
  display:block;
  font-size:0.83rem;letter-spacing:0.04em;
  color:var(--charcoal-mid);font-weight:300;
  padding:0.45rem 1rem 0.45rem 1.4rem;
  border-bottom:1px solid var(--cream-dark);
  transition:background var(--transition-fast),color var(--transition-fast)
}
.mob-treat:last-child{border-bottom:none}
.mob-treat:hover{background:var(--cream-dark);color:var(--rose)}

/* Chevron compartido */
.mob-chevron{
  font-size:1.1rem;color:var(--blush-mid);
  transition:transform 0.3s ease;
  display:inline-block;line-height:1;flex-shrink:0
}
.mob-l1-btn[aria-expanded="true"] .mob-chevron,
.mob-l2-btn[aria-expanded="true"] .mob-chevron{
  transform:rotate(90deg);color:var(--rose)
}

/* CTA al fondo */
.mobile-menu-cta{margin-top:auto;padding-top:1.5rem}

/* ===== HERO BREADCRUMB ===== */
.hero-breadcrumb {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  flex-wrap: wrap;
  margin-top: 1.2rem;
  margin-bottom: 2.8rem;
  padding: 0.55rem 1.1rem;
  background: rgba(255,255,255,0.15);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 50px;
}
.bc-link {
  font-family: var(--font-body);
  font-size: 0.72rem;
  font-weight: 400;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.75);
  transition: color var(--transition-fast);
  white-space: nowrap;
}
.bc-link:hover {
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.bc-sep {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.4);
  line-height: 1;
}
.bc-current {
  font-family: var(--font-body);
  font-size: 0.72rem;
  font-weight: 400;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #fff;
  white-space: nowrap;
}

/* En páginas con fondo claro (sin hero oscuro) — por si acaso */
.page-hero-light .hero-breadcrumb,
.section-pad .hero-breadcrumb {
  background: rgba(42,36,32,0.06);
  border-color: rgba(42,36,32,0.15);
}
.page-hero-light .bc-link { color: var(--rose); }
.page-hero-light .bc-link:hover { color: var(--rose-dark); }
.page-hero-light .bc-sep { color: var(--blush-mid); }
.page-hero-light .bc-current { color: var(--charcoal); }

@media(max-width:600px) {
  .hero-breadcrumb { font-size: 0.68rem; padding: 0.45rem 0.85rem; }
  .bc-link, .bc-current { font-size: 0.68rem; }
}

/* ===== HERO CENTRADO ===== */
.page-hero,
.treatment-hero {
  min-height: 480px !important;
  display: flex;
  align-items: center;
  justify-content: center;
}
.page-hero .container,
.treatment-hero .container {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.page-hero-title,
.treatment-title {
  font-size: clamp(2.6rem, 5vw, 4.2rem) !important;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.page-hero-sub,
.treatment-subtitle {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}
.treatment-meta {
  justify-content: center;
}
.hero-breadcrumb {
  margin-left: auto;
  margin-right: auto;
}
@media(max-width:600px) {
  .page-hero,
  .treatment-hero {
    min-height: 340px !important;
  }
  .page-hero-title,
  .treatment-title {
    font-size: clamp(2rem, 7vw, 2.8rem) !important;
  }
}

/* ===== PÁGINA CONTACTO ===== */
.contacto-grid {
  display: grid;
  grid-template-columns: 1fr 380px;
  gap: 5rem;
  align-items: start;
}
.contacto-form { display: flex; flex-direction: column; gap: 1.2rem; margin-top: 2rem; }
.contacto-form select:focus { border-color: var(--rose); outline: none; }

.contacto-info { display: flex; flex-direction: column; gap: 1.2rem; }
.contacto-card {
  background: var(--cream-dark);
  border: 1px solid var(--blush);
  border-radius: var(--radius);
  padding: 1.5rem 1.8rem;
  display: flex;
  gap: 1.2rem;
  align-items: flex-start;
  transition: var(--transition);
}
.contacto-card:hover { border-color: var(--rose); transform: translateY(-2px); }
.contacto-card-icon { font-size: 1.4rem; flex-shrink: 0; margin-top: 0.1rem; }
.contacto-card h4 {
  font-family: var(--font-display);
  font-size: 1.05rem;
  font-weight: 400;
  color: var(--charcoal);
  margin-bottom: 0.35rem;
}
.contacto-card p { font-size: 0.88rem; color: var(--charcoal-mid); line-height: 1.7; font-weight: 300; margin: 0; }
.contacto-card-link {
  display: inline-block;
  margin-top: 0.5rem;
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--rose);
  transition: var(--transition-fast);
}
.contacto-card-link:hover { color: var(--rose-dark); }
.contacto-card-cta {
  flex-direction: column;
  background: var(--charcoal);
  border-color: var(--charcoal);
}
.contacto-card-cta h4 { color: var(--cream); }
.contacto-card-cta p { color: var(--warm-gray); }

@media(max-width: 1000px) {
  .contacto-grid { grid-template-columns: 1fr; gap: 3rem; }
  .contacto-info { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
  .contacto-card-cta { grid-column: 1 / -1; }
}
@media(max-width: 600px) {
  .contacto-info { grid-template-columns: 1fr; }
}

/* ===== HERO IZQUIERDA (igual que contacto/tratamientos) ===== */
/* Sobreescribe el centrado previo de page-hero y treatment-hero */
.page-hero,
.treatment-hero {
  min-height: 480px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  text-align: left !important;
}
.page-hero .container,
.treatment-hero .container {
  text-align: left !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  width: 100%;
}
.page-hero-title,
.treatment-title {
  font-size: clamp(2.6rem, 5vw, 4.2rem) !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: 800px;
}
.page-hero-sub,
.treatment-subtitle {
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: 580px;
}
.treatment-meta {
  justify-content: flex-start !important;
}
.hero-breadcrumb {
  margin-left: 0 !important;
  margin-right: auto !important;
}
/* Quitar el inline text-align:center de los containers de page-hero */
.page-hero [style*="text-align:center"],
.page-hero [style*="text-align: center"] {
  text-align: left !important;
}
@media(max-width:600px) {
  .page-hero,
  .treatment-hero {
    min-height: 360px !important;
  }
  .page-hero-title,
  .treatment-title {
    font-size: clamp(2rem, 7vw, 2.8rem) !important;
  }
}
