:root{--cream-bg:#faf9e5;--gold-accent:#c2ae8d;--charcoal:#282828;--white:#fff;--gold-light:#d4c3a8;--gold-dark:#a89770;--cream-dark:#f5f3dc;--charcoal-light:#3d3d3d;--shadow-sm:0 2px 8px #28282814;--shadow-md:0 4px 16px #2828281f;--shadow-lg:0 8px 32px #28282829;--shadow-xl:0 16px 48px #28282833;--gradient-gold:linear-gradient(135deg,var(--gold-accent)0%,var(--gold-dark)100%);--gradient-cream:linear-gradient(135deg,var(--cream-bg)0%,var(--cream-dark)100%);--gradient-overlay:linear-gradient(180deg,#28282866 0%,#282828cc 100%);--transition-fast:.2s cubic-bezier(.4,0,.2,1);--transition-base:.3s cubic-bezier(.4,0,.2,1);--transition-slow:.5s cubic-bezier(.4,0,.2,1);--transition-bounce:.6s cubic-bezier(.68,-.55,.265,1.55);--aesthetic-pink-50:var(--aesthetic-gold-50);--aesthetic-pink-100:var(--aesthetic-gold-100);--aesthetic-pink-200:var(--aesthetic-gold-200);--aesthetic-pink-300:var(--aesthetic-gold-300);--aesthetic-pink-400:var(--aesthetic-gold-400);--aesthetic-pink-500:var(--aesthetic-gold-500);--aesthetic-pink-600:var(--aesthetic-gold-600);--aesthetic-pink-700:var(--aesthetic-gold-700);--aesthetic-pink-800:var(--aesthetic-gold-800);--aesthetic-pink-900:var(--aesthetic-gold-900);--aesthetic-purple-50:var(--medical-gray-50);--aesthetic-purple-100:var(--medical-gray-100);--aesthetic-purple-200:var(--medical-gray-200);--aesthetic-purple-300:var(--aesthetic-gold-300);--aesthetic-purple-400:var(--aesthetic-gold-400);--aesthetic-purple-500:var(--aesthetic-gold-500);--aesthetic-purple-600:var(--aesthetic-gold-600);--aesthetic-purple-700:var(--aesthetic-gold-700);--aesthetic-purple-800:var(--aesthetic-gold-800);--aesthetic-purple-900:var(--aesthetic-gold-900);--aesthetic-rose-gold:#b76e79}.public-layout{background-color:var(--cream-bg);min-height:100vh;color:var(--charcoal);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;overflow-x:hidden}.public-main{min-height:calc(100vh - 80px)}.heading-hero{letter-spacing:-.02em;color:var(--charcoal);margin:0;font-size:clamp(2.5rem,6vw,5rem);font-weight:700;line-height:1.1}.heading-xl{letter-spacing:-.01em;color:var(--charcoal);font-size:clamp(2rem,4vw,3.5rem);font-weight:700;line-height:1.2}.heading-lg{color:var(--charcoal);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:600;line-height:1.3}.heading-md{color:var(--charcoal);font-size:clamp(1.5rem,2.5vw,2rem);font-weight:600;line-height:1.4}.text-gold{color:var(--gold-accent)}.text-gradient-gold{background:var(--gradient-gold);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}.container-wide{max-width:1440px}.container-narrow{max-width:960px}.section{padding:6rem 0;position:relative}.section-sm{padding:4rem 0}.section-lg{padding:8rem 0}@media (max-width:768px){.section{padding:4rem 0}.section-lg{padding:5rem 0}}.btn{cursor:pointer;transition:all var(--transition-base);z-index:1;border:none;border-radius:50px;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";width:0;height:0;transition:width var(--transition-slow),height var(--transition-slow);z-index:-1;background:#fff3;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn:hover:before{width:300px;height:300px}.btn-primary{background:var(--gradient-gold);color:var(--white);box-shadow:var(--shadow-md)}.btn-primary:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-secondary{color:var(--charcoal);border:2px solid var(--gold-accent);background:0 0}.btn-secondary:hover{background:var(--gold-accent);color:var(--white);transform:translateY(-2px)}.btn-lg{padding:1.25rem 2.5rem;font-size:1.125rem}.card{background:var(--white);box-shadow:var(--shadow-sm);transition:all var(--transition-base);border-radius:20px;padding:2rem;position:relative;overflow:hidden}.card:before{content:"";background:var(--gradient-gold);transform-origin:0;height:4px;transition:transform var(--transition-base);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-8px)}.card:hover:before{transform:scaleX(1)}.animate-on-scroll{opacity:1!important;visibility:visible!important;transform:translateY(0)!important}.animate-on-scroll.animate-visible{opacity:1;transform:translateY(0)}.delay-1,.delay-2,.delay-3,.delay-4,.delay-5,.delay-6{transition-delay:0s!important}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fade-in-up{animation:fadeInUp var(--transition-slow)ease-out forwards}.animate-fade-in{animation:fadeIn var(--transition-slow)ease-out forwards}.animate-slide-in-left{animation:slideInLeft var(--transition-slow)ease-out forwards}.animate-slide-in-right{animation:slideInRight var(--transition-slow)ease-out forwards}.animate-scale-in{animation:scaleIn var(--transition-slow)ease-out forwards}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}.parallax{background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;position:relative}html{scroll-behavior:smooth}::selection{background:var(--gold-accent);color:var(--white)}:focus-visible{outline:2px solid var(--gold-accent);outline-offset:2px}.grid{gap:2rem;display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.decorative-line{background:var(--gradient-gold);border-radius:2px;width:80px;height:4px;margin:1rem 0}.decorative-circle{background:var(--gold-accent);border-radius:50%;width:12px;height:12px;margin:0 .5rem;display:inline-block}.loading-shimmer{background:linear-gradient(90deg,var(--cream-bg)0%,var(--cream-dark)50%,var(--cream-bg)100%);background-size:1000px 100%;animation:2s linear infinite shimmer}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--medical-gray-100);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--aesthetic-gold-400)0%,var(--aesthetic-gold-500)100%);border-radius:var(--radius-full);border:2px solid var(--medical-gray-100)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--aesthetic-gold-500)0%,var(--aesthetic-gold-600)100%);box-shadow:var(--shadow-glow-gold)}*{scrollbar-width:thin;scrollbar-color:var(--aesthetic-gold-400)var(--medical-gray-100)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mb-5{margin-bottom:3rem}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.mt-5{margin-top:3rem}img{max-width:100%;height:auto;display:block}.backdrop-blur{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes vt-fade-in{0%{opacity:0}}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-slide-from-right{0%{opacity:0;transform:translate(30px)}}@keyframes vt-slide-to-left{to{opacity:0;transform:translate(-30px)}}@keyframes vt-scale-up{0%{opacity:0;transform:scale(.95)}}@keyframes vt-scale-down{to{opacity:0;transform:scale(1.05)}}::view-transition-old(root){animation:.4s cubic-bezier(.4,0,.2,1) both vt-fade-out,.4s cubic-bezier(.4,0,.2,1) both vt-slide-to-left}::view-transition-new(root){animation:.4s cubic-bezier(.4,0,.2,1) both vt-fade-in,.4s cubic-bezier(.4,0,.2,1) both vt-slide-from-right}::view-transition-old(hero-image){animation:.5s cubic-bezier(.4,0,.2,1) both vt-scale-down}::view-transition-new(hero-image){animation:.5s cubic-bezier(.4,0,.2,1) both vt-scale-up}::view-transition-old(page-title){animation:.3s cubic-bezier(.4,0,.2,1) both vt-fade-out}::view-transition-new(page-title){animation:.5s cubic-bezier(.4,0,.2,1) .1s both vt-fade-in,.5s cubic-bezier(.4,0,.2,1) .1s both vt-slide-from-right}::view-transition-group(service-card){animation-duration:.4s;animation-timing-function:cubic-bezier(.4,0,.2,1)}@supports (animation-timeline:scroll()){.scroll-progress{background:var(--gradient-gold);transform-origin:0;z-index:9999;height:3px;animation:linear scroll-progress-grow;animation-timeline:scroll();animation-range:0% 100%;position:fixed;top:0;left:0;right:0}@keyframes scroll-progress-grow{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.scroll-fade-in{animation:linear scroll-fade-in-anim;animation-timeline:view();animation-range:entry cover 40%}@keyframes scroll-fade-in-anim{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.scroll-scale{animation:linear scroll-scale-anim;animation-timeline:view();animation-range:entry cover 50%}@keyframes scroll-scale-anim{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.scroll-reveal-left{animation:linear scroll-reveal-left-anim;animation-timeline:view();animation-range:entry cover 40%}@keyframes scroll-reveal-left-anim{0%{opacity:0;transform:translate(-100px)}to{opacity:1;transform:translate(0)}}.scroll-reveal-right{animation:linear scroll-reveal-right-anim;animation-timeline:view();animation-range:entry cover 40%}@keyframes scroll-reveal-right-anim{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.scroll-flip-3d{perspective:1000px;animation:linear scroll-flip-3d-anim;animation-timeline:view();animation-range:entry cover 50%}@keyframes scroll-flip-3d-anim{0%{opacity:0;transform:rotateY(-30deg)translateZ(-100px)}to{opacity:1;transform:rotateY(0)translateZ(0)}}.scroll-parallax-bg{animation:linear scroll-parallax-anim;animation-timeline:scroll();animation-range:0% 100%}@keyframes scroll-parallax-anim{0%{background-position-y:0%}to{background-position-y:100%}}.scroll-rotate{animation:linear scroll-rotate-anim;animation-timeline:view();animation-range:entry cover}@keyframes scroll-rotate-anim{0%{opacity:0;transform:rotate(-15deg)}to{opacity:1;transform:rotate(0)}}.scroll-blur-reveal{animation:linear scroll-blur-reveal-anim;animation-timeline:view();animation-range:entry cover 50%}@keyframes scroll-blur-reveal-anim{0%{filter:blur(10px);opacity:0}to{filter:blur();opacity:1}}}@supports not (animation-timeline:scroll()){.scroll-fade-in,.scroll-scale,.scroll-reveal-left,.scroll-reveal-right,.scroll-rotate,.scroll-flip-3d,.scroll-blur-reveal{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out,filter .6s ease-out;transform:translateY(30px)}.scroll-fade-in.in-view,.scroll-scale.in-view,.scroll-reveal-left.in-view,.scroll-reveal-right.in-view,.scroll-rotate.in-view,.scroll-flip-3d.in-view,.scroll-blur-reveal.in-view{opacity:1;filter:blur();transform:translateY(0)translate(0)rotate(0)rotateY(0)}}.animated-gradient-text{background:linear-gradient(90deg,var(--gold-accent),var(--gold-light),var(--gold-dark),var(--gold-accent));-webkit-text-fill-color:transparent;background-size:300% 100%;-webkit-background-clip:text;background-clip:text;animation:4s infinite gradient-shift}@keyframes gradient-shift{0%,to{background-position:0%}50%{background-position:100%}}.floating{animation:6s ease-in-out infinite floating}.floating-slow{animation:8s ease-in-out infinite floating}.floating-fast{animation:4s ease-in-out infinite floating}@keyframes floating{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-10px)rotate(1deg)}50%{transform:translateY(-20px)rotate(0)}75%{transform:translateY(-10px)rotate(-1deg)}}.pulse-glow{animation:2s ease-in-out infinite pulse-glow}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #c2ae8d4d}50%{box-shadow:0 0 40px #c2ae8d99,0 0 60px #c2ae8d4d}}.shimmer-shine{position:relative;overflow:hidden}.shimmer-shine:after{content:"";background:linear-gradient(90deg,#0000,#ffffff4d,#0000);width:100%;height:100%;animation:3s infinite shimmer-shine;position:absolute;top:0;left:-100%}@keyframes shimmer-shine{0%{left:-100%}to{left:100%}}.morph-border{animation:8s ease-in-out infinite morph-border}@keyframes morph-border{0%,to{border-radius:30% 70% 70% 30%/30% 30% 70% 70%}25%{border-radius:58% 42% 75% 25%/76% 46% 54% 24%}50%{border-radius:50% 50% 33% 67%/55% 27% 73% 45%}75%{border-radius:33% 67% 58% 42%/63% 68% 32% 37%}}.tilt-3d{transform-style:preserve-3d;perspective:1000px;transition:transform .3s}.tilt-3d:hover{transform:rotateY(5deg)rotateX(5deg)}.scale-bounce{animation:.6s cubic-bezier(.68,-.55,.265,1.55) scale-bounce}@keyframes scale-bounce{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.text-reveal{overflow:hidden}.text-reveal span{animation:.8s cubic-bezier(.25,.46,.45,.94) forwards text-reveal;display:inline-block;transform:translateY(100%)}@keyframes text-reveal{to{transform:translateY(0)}}.stagger-1{animation-delay:.1s}.stagger-2{animation-delay:.2s}.stagger-3{animation-delay:.3s}.stagger-4{animation-delay:.4s}.stagger-5{animation-delay:.5s}.stagger-6{animation-delay:.6s}.stagger-7{animation-delay:.7s}.stagger-8{animation-delay:.8s}.glass{-webkit-backdrop-filter:blur(20px);background:#ffffff26;border:1px solid #fff3;box-shadow:0 8px 32px #0000001a}.glass-dark{-webkit-backdrop-filter:blur(20px);background:#282828b3;border:1px solid #ffffff1a}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.floating,.floating-slow,.floating-fast,.pulse-glow,.shimmer-shine:after,.morph-border,.animated-gradient-text{animation:none!important}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}
