:root{--purple:#2e2071;--purple-dark:#201451;--blue:#017dc1;--teal:#3cb3bc;--green:#76bf73;--ink:#1f2937;--muted:#667085;--line:#dce4ee;--soft:#f5f9fc;--white:#fff;--shadow:0 16px 45px #24314e17;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:#fff;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}.container{width:min(1160px,100% - 40px);margin:0 auto}.section{padding:88px 0}.section--soft{background:var(--soft)}.section-heading{max-width:680px;margin-bottom:36px}.section-heading--center{text-align:center;margin-inline:auto}.section-heading h2{color:var(--purple-dark);letter-spacing:-.035em;margin:7px 0 12px;font-size:clamp(2rem,4vw,3.05rem);line-height:1.12}.section-heading p{color:var(--muted);margin:0;font-size:1.04rem}.eyebrow{color:var(--blue);letter-spacing:.16em;text-transform:uppercase;font-size:.78rem;font-weight:800;display:inline-flex}.eyebrow--light{color:#dff8fb}.topbar{background:var(--purple-dark);color:#ffffffe0;font-size:.8rem}.topbar__inner{justify-content:flex-end;align-items:center;gap:28px;min-height:38px;display:flex}.topbar a{align-items:center;gap:7px;display:inline-flex}.topbar a svg{flex:none;display:block}.site-header{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;border-bottom:1px solid #dce4eecc;position:sticky;top:0}.nav-wrap{justify-content:space-between;align-items:center;gap:30px;min-height:84px;display:flex}.brand img{object-fit:contain;object-position:left center;width:250px;height:74px}.btn{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:9px;min-height:46px;padding:0 20px;font-weight:750;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--primary{background:linear-gradient(135deg, var(--purple), var(--blue));color:#fff;box-shadow:0 10px 26px #2e20712e}.btn--ghost{border-color:var(--line);color:var(--purple);background:#fff}.btn--outline{color:var(--purple);background:0 0;border-color:#b5c4d3}.btn--white{color:var(--purple);background:#fff}.nav-cta{min-height:42px;padding-inline:17px}.text-link{color:var(--purple);align-items:center;gap:7px;font-weight:750;display:inline-flex}.hero{background:linear-gradient(115deg,#f7fbfd 0%,#f2f5fc 55%,#edf9fa 100%);padding:50px 0 34px;position:relative;overflow:hidden}.hero__shape{filter:blur(2px);opacity:.26;border-radius:50%;position:absolute}.hero__shape--1{background:var(--teal);width:420px;height:420px;top:-190px;right:-170px}.hero__shape--2{background:var(--purple);width:260px;height:260px;bottom:-160px;left:-160px}.hero__grid{grid-template-columns:1.02fr .98fr;align-items:center;gap:62px;min-height:520px;display:grid;position:relative}.hero__content h1{max-width:720px;color:var(--purple-dark);letter-spacing:-.055em;margin:10px 0 20px;font-size:clamp(3rem,6vw,5.25rem);line-height:.97}.hero__content p{color:#5c6778;max-width:650px;margin:0 0 28px;font-size:1.14rem}.hero__actions{flex-wrap:wrap;gap:12px;display:flex}.hero__trust{color:#5b6472;align-items:center;gap:8px;margin-top:24px;font-size:.91rem;display:flex}.hero__media{position:relative}.hero-placeholder{min-height:430px;box-shadow:var(--shadow);border-radius:34px}.hero-image{object-fit:cover;width:100%}.hero__badge{box-shadow:var(--shadow);background:#fff;border-radius:18px;flex-direction:column;min-width:210px;padding:16px 20px;display:flex;position:absolute;bottom:24px;right:-18px}.hero__badge strong{color:var(--purple);font-size:1.2rem}.hero__badge span{color:var(--muted);font-size:.84rem}.hero__controls{justify-content:space-between;align-items:center;display:flex;position:relative}.hero__dots{gap:8px;display:flex}.hero__dots button{background:#b6c7d9;border:0;border-radius:20px;width:9px;height:9px;padding:0;transition:all .2s}.hero__dots button.active{background:var(--blue);width:30px}.hero__arrows{gap:8px;display:flex}.hero__arrows button{border:1px solid var(--line);width:43px;height:43px;color:var(--purple);background:#fff;border-radius:50%;place-items:center;display:grid}.placeholder-image{text-align:center;color:#64748b;background:linear-gradient(145deg,#2e207114,#017dc11f,#3cb3bc26);border:1px dashed #2e207140;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;min-height:230px;padding:28px;display:flex;overflow:hidden}.placeholder-image__icon{color:#fff;background:linear-gradient(135deg, var(--purple), var(--teal));border-radius:50%;place-items:center;width:56px;height:56px;margin-bottom:13px;display:grid}.two-col{grid-template-columns:1fr 1fr;align-items:center;gap:64px;display:grid}.about-placeholder{min-height:410px}.check-list{grid-template-columns:1fr 1fr;gap:14px 22px;margin:28px 0;display:grid}.check-list span{color:#4d5868;align-items:center;gap:8px;font-weight:650;display:flex}.check-list svg{color:var(--teal);width:19px}.card-grid{gap:22px;display:grid}.treatment-grid{grid-template-columns:repeat(3,1fr)}.service-card,.testimonial-card,.value-grid article,.legal-card,.location-card,.appointment-card{border-radius:var(--radius);background:#fff;border:1px solid #e3e9f0;box-shadow:0 10px 30px #2737530b}.service-card{padding:28px;transition:all .2s}.service-card:hover{box-shadow:var(--shadow);border-color:#017dc140;transform:translateY(-4px)}.icon-badge{width:52px;height:52px;color:var(--purple);background:linear-gradient(145deg,#017dc11f,#3cb3bc26);border-radius:16px;place-items:center;display:grid}.service-card h3,.value-grid h3,.portfolio-card h3{color:var(--purple-dark);margin:18px 0 9px;font-size:1.18rem}.service-card p,.value-grid p{color:var(--muted);margin:0 0 17px}.service-card__top{justify-content:space-between;align-items:flex-start;display:flex}.service-card__top>span{color:#bcc7d4;font-size:1.2rem;font-weight:800}.muted-small{border-top:1px solid #edf1f5;padding-top:15px;font-size:.9rem}.value-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.value-grid article{padding:30px}.mission-section{background:linear-gradient(#fff 0%,#f9fcfe 100%)}.section-row{justify-content:space-between;align-items:end;gap:24px;display:flex}.section-row .section-heading{margin-bottom:28px}.portfolio-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.portfolio-grid--full{grid-template-columns:repeat(2,1fr)}.portfolio-card{border-radius:var(--radius);background:#fff;border:1px solid #e3e9f0;overflow:hidden}.portfolio-card>div:last-child{padding:21px 22px 25px}.portfolio-card span{color:var(--blue);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.portfolio-card h3{margin:5px 0 3px}.portfolio-card p{color:var(--muted);margin:0}.testimonial-section{background:#fff}.testimonial-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.testimonial-grid--full{grid-template-columns:repeat(2,1fr)}.testimonial-card{padding:30px}.testimonial-card>svg{color:var(--teal)}.testimonial-card p{color:#536070;min-height:92px;font-size:1.02rem}.testimonial-card strong{color:var(--purple-dark);display:block}.testimonial-card span{color:var(--muted);font-size:.88rem}.center-action{text-align:center;margin-top:28px}.cta-section{background:linear-gradient(120deg, var(--purple-dark), var(--purple) 55%, var(--blue));color:#fff;padding:56px 0}.cta-section__inner{justify-content:space-between;align-items:center;gap:32px;display:flex}.cta-section h2{max-width:760px;margin:7px 0 0;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.1}.page-hero{background:linear-gradient(120deg, var(--purple-dark), var(--purple) 58%, var(--blue));color:#fff;padding:72px 0;position:relative;overflow:hidden}.page-hero:after{content:"";background:#ffffff17;border-radius:50%;width:300px;height:300px;position:absolute;top:-130px;right:-90px}.page-hero__inner{z-index:2;position:relative}.page-hero h1{letter-spacing:-.045em;margin:8px 0 12px;font-size:clamp(2.7rem,6vw,4.7rem);line-height:1}.page-hero p{color:#fffc;max-width:none;margin:0;font-size:1.05rem}.notice-section{color:#4b5f67;background:#eef8fa;border-top:1px solid #d8ecef;padding:22px 0;font-size:.92rem}.legal-page{background:var(--soft);padding-top:52px}.legal-card{max-width:1160px;padding:38px}.legal-card section:not(:last-child){margin-bottom:16px}.legal-card h2{color:var(--purple-dark);margin:38px 0 0;font-size:1.25rem}.legal-card h2:first-child{margin-top:0}.legal-card p{color:var(--muted);margin:0}.legal-note,.notice-box{color:#7a5b21;background:#fff7e8;border:1px solid #f1d9aa;border-radius:14px;margin-top:28px;padding:16px 18px;font-size:.9rem}.location-grid{grid-template-columns:.8fr 1.2fr;gap:28px;display:grid}.location-card{padding:34px}.location-card h2{color:var(--purple-dark);margin-top:0}.contact-row{border-bottom:1px solid #edf1f5;align-items:flex-start;gap:14px;padding:15px 0;display:flex}.contact-row>svg{color:var(--blue);flex:none;margin-top:3px}.contact-row strong,.contact-row span{display:block}.contact-row span{color:var(--muted)}.map-placeholder{border-radius:var(--radius);text-align:center;min-height:450px;color:var(--muted);background:linear-gradient(145deg,#eef5fa,#eefbfb);border:1px dashed #2e207140;flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex}.map-placeholder>svg{color:var(--purple)}.map-placeholder h3{color:var(--purple-dark);margin:15px 0 5px}.map-placeholder p{max-width:420px;margin:0 0 13px}.map-placeholder code{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 10px}.appointment-card{grid-template-columns:.8fr 1.2fr;gap:38px;padding:34px;display:grid}.appointment-card h2{color:var(--purple-dark);margin:7px 0 10px}.appointment-card p{color:var(--muted)}.appointment-card form{grid-template-columns:1fr 1fr;gap:13px;display:grid}.appointment-card input,.appointment-card textarea,.appointment-card select{width:100%;color:var(--ink);background:#fff;border:1px solid #d8e1ea;border-radius:12px;outline:none;padding:13px 14px}.appointment-card textarea{resize:vertical;grid-column:1/-1}.appointment-card button{justify-self:start}.not-found{text-align:center;place-items:center;min-height:60vh;display:grid}.not-found h1{color:var(--purple-dark);margin:5px 0;font-size:3.2rem}.footer{color:#d8d9e4;background:#151229;padding:66px 0 20px}.footer__grid{grid-template-columns:1.5fr .9fr 1.2fr;gap:42px;display:grid}.footer__brand img{background:#fff;border-radius:10px;width:230px;margin-bottom:18px;padding:6px 10px}.footer p{color:#aeb2c1}.footer h4{color:#fff;margin:0 0 14px}.footer__links,.footer__contact{flex-direction:column;gap:9px;display:flex}.footer__links a{color:#b8bac6}.footer__links a:hover{color:#fff}.footer__legal-links{flex-direction:column;gap:9px;display:flex}.footer__legal-links a{color:#b8bac6}.footer__legal-links a:hover{color:#fff}.footer__contact span{color:#b8bac6;align-items:flex-start;gap:9px;display:flex}.footer__contact svg{color:var(--teal);flex:none;margin-top:4px}.footer__bottom{color:#9699a8;border-top:1px solid #ffffff1a;justify-content:space-between;gap:20px;margin-top:38px;padding-top:20px;font-size:.78rem;display:flex}@media (width<=1040px){.hero__grid{grid-template-columns:1fr 1fr;gap:36px}.treatment-grid{grid-template-columns:repeat(2,1fr)}.footer__grid{grid-template-columns:1.2fr 1fr 1fr}}@media (width<=760px){.container{width:min(100% - 28px,1160px)}.section{padding:64px 0}.topbar__inner{justify-content:center}.nav-wrap{min-height:72px}.brand img{width:205px;height:62px}.hero{padding-top:46px}.hero__grid,.two-col,.location-grid,.appointment-card{grid-template-columns:1fr}.hero__grid{min-height:auto}.hero__content h1{font-size:clamp(2.7rem,13vw,4rem)}.hero__media{margin-top:10px}.hero-placeholder{min-height:300px}.hero__badge{bottom:12px;right:12px}.hero__controls{margin-top:22px}.check-list,.treatment-grid,.value-grid,.portfolio-grid,.portfolio-grid--full,.testimonial-grid,.testimonial-grid--full{grid-template-columns:1fr}.section-row,.cta-section__inner,.footer__bottom{flex-direction:column;align-items:flex-start}.cta-section__inner{align-items:flex-start}.appointment-card form{grid-template-columns:1fr}.appointment-card textarea{grid-column:auto}.footer__grid{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1/-1}}@media (width<=480px){.brand img{width:180px}.hero__actions .btn{width:100%}.hero__badge{min-width:170px}.footer__grid{grid-template-columns:1fr}.footer__brand{grid-column:auto}.legal-card{padding:25px}}
