:root{--wine:#911a30;--deep:#631124;--ink:#25232d;--muted:#696675;--paper:#f6f2fa;--line:#e6dee8;--rose:#f0e3e9}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Poppins',ClinicPoppins,Arial,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:600;letter-spacing:-.05em;line-height:1.14}h1{font-size:clamp(2.5rem,5vw,4.5rem);margin-bottom:24px}h2{font-size:clamp(2rem,3.4vw,3rem);margin-bottom:22px}h3{line-height:1.4}p{color:var(--muted)}em{font-style:normal;color:var(--wine)}[hidden]{display:none!important}:is(a,button,input,select,textarea):focus-visible{outline:3px solid #b03955;outline-offset:4px}.wrap{width:calc(100% - 64px);max-width:1200px;margin:auto}.skip-link{position:fixed;top:-100px;left:20px;z-index:30;background:white;padding:12px}.skip-link:focus{top:10px}.site-header{position:sticky;top:16px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;width:calc(100% - 48px);max-width:1320px;margin:18px auto 0;padding:12px 20px;border-radius:60px;border:1px solid white;background:#fffffff2;box-shadow:0 14px 40px #461d3010;backdrop-filter:blur(16px)}.site-header img{width:185px;height:48px;object-fit:contain}.site-header nav{display:flex;gap:28px;font-size:.875rem}.site-header nav a{padding:8px 0}.site-header nav a[aria-current]{color:var(--wine);border-bottom:1px solid var(--wine)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:50px;padding:14px 24px;border:0;border-radius:40px;background:var(--wine);color:white;font-size:.875rem;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:var(--deep);transform:translateY(-2px)}.button-small{font-size:.8125rem;padding:12px 20px}.button-light{background:white;color:var(--wine)}.button-light:hover{background:#f2dfe7}.text-link{display:inline-flex;align-items:center;gap:14px;min-height:44px;color:var(--wine);font-size:.875rem;font-weight:600;border-bottom:1px solid #cdb4bf}.eyebrow{font-size:.75rem;color:var(--wine);letter-spacing:.15em;font-weight:600;text-transform:uppercase;margin-bottom:18px}.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.page-hero{display:grid;grid-template-columns:1.18fr 1fr;align-items:center;gap:70px;padding-top:68px;padding-bottom:65px}.page-hero .lead{max-width:550px;font-size:1rem;line-height:1.85;margin-bottom:30px}.hero-visual{position:relative;min-width:0;overflow:hidden;border-radius:28px;background:#eadfe4;aspect-ratio:1.12;box-shadow:0 25px 60px -35px #56203755}.hero-visual>img{width:100%;height:100%;object-fit:cover}.hero-visual.illustration>img{object-fit:contain;padding:70px;background:radial-gradient(circle,#fff,#e5dbe9)}.photo-note{position:absolute;bottom:18px;left:18px;right:18px;display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid #ffffffbb;border-radius:16px;background:#fffffff0;backdrop-filter:blur(12px)}.photo-note .note-icon{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--rose);color:var(--wine);font-size:1.3rem}.photo-note strong{display:block;font-size:.875rem;font-weight:600}.photo-note small{color:var(--muted);font-size:.75rem}.hero-footnote{display:flex;align-items:center;gap:10px;margin:24px 0 0;font-size:.75rem;color:var(--muted)}.hero-footnote:before{content:'';width:6px;height:6px;background:var(--wine);border-radius:50%}.care-bar{background:var(--deep);color:#f7e7ec}.care-bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;font-size:.75rem;letter-spacing:.13em}.care-bar i{color:#d394a7;font-style:normal}.catalogue{padding-top:78px;padding-bottom:80px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading h2{margin-bottom:0}.section-heading>p{font-size:.875rem;max-width:345px;margin-bottom:4px}.filters{display:flex;gap:9px;flex-wrap:wrap;margin:30px 0 18px}.filters button{background:transparent;color:#605565;border:1px solid #d9cad5;border-radius:30px;padding:10px 18px;min-height:44px;font-size:.8125rem}.filters button[aria-pressed=true]{background:var(--wine);border-color:var(--wine);color:#fff}.filters button:hover{border-color:var(--wine)}.catalogue-meta{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:.75rem;color:var(--muted);margin-bottom:25px}.catalogue-meta a{color:var(--wine);text-decoration:underline;text-underline-offset:4px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.treatment-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #e6dfe8;border-radius:22px;background:white;box-shadow:0 12px 26px -22px #59304966;transition:transform .2s,box-shadow .2s}.treatment-card:hover{transform:translateY(-4px);box-shadow:0 20px 34px -25px #59304977}.treatment-photo{display:block;aspect-ratio:1.7;overflow:hidden;background:#ede8f0;margin:10px 10px 0;border-radius:14px}.treatment-photo img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.treatment-card:hover .treatment-photo img{transform:scale(1.035)}.treatment-photo.illustration img{object-fit:contain;padding:25px;background:radial-gradient(circle,#fff,#e3dce9)}.treatment-body{padding:22px 25px 24px;flex:1;display:flex;flex-direction:column}.treatment-category{font-size:.6875rem;letter-spacing:.08em;text-transform:uppercase;color:var(--wine);margin-bottom:9px}.treatment-body h3{font-size:1.2rem;font-weight:600;letter-spacing:-.025em;margin-bottom:12px}.treatment-body>p:not(.treatment-category){font-size:.875rem;line-height:1.75;margin-bottom:20px}.treatment-link{display:flex;justify-content:space-between;margin-top:auto;border-top:1px solid var(--line);padding-top:15px;color:var(--wine);font-size:.8125rem;font-weight:600;min-height:44px}.help-band{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 34px;background:var(--rose);border-radius:20px;margin-top:34px}.help-band h3{margin-bottom:6px;font-size:1.125rem}.help-band p{margin:0;font-size:.875rem}.crumbs{display:flex;gap:10px;flex-wrap:wrap;padding-top:32px;font-size:.75rem;color:var(--muted)}.crumbs a{color:var(--wine)}.detail-hero{padding-top:36px}.visit-steps{padding:55px 0 60px;border-top:1px solid var(--line)}.visit-steps h2{font-size:2rem}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:32px}.steps-grid article{border-top:1px solid #d8c6d1;padding-top:22px}.step-number{display:block;color:var(--wine);font-size:.75rem;margin-bottom:16px}.steps-grid h3{font-size:1rem;margin-bottom:10px}.steps-grid p{font-size:.875rem;margin:0}.appointment-section{background:#eee7f1;border-top:1px solid #e5dbe9;padding:80px 0}.appointment-layout{display:grid;grid-template-columns:.85fr 1.4fr;gap:65px;align-items:start}.appointment-intro>p:not(.eyebrow){font-size:.9375rem;line-height:1.85}.clinic-info{padding-top:22px;margin-top:24px;border-top:1px solid #d8cbdc}.clinic-info>div{margin-bottom:23px}.clinic-info dt{color:var(--wine);font-size:.6875rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600;margin-bottom:7px}.clinic-info dd{margin:0;font-size:.875rem;color:var(--muted)}.clinic-info a{color:var(--ink)}.appointment-card{padding:32px;background:#fff;border:1px solid #e4dbe9;border-radius:24px;box-shadow:0 20px 55px -35px #56213a66;min-width:0}.form-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:24px;gap:15px}.form-top h3{font-size:1.125rem;margin:0}.form-top span{font-size:.6875rem;color:var(--muted)}.appointment-card .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.appointment-card .field{display:flex;flex-direction:column;gap:8px;min-width:0}.appointment-card .full,.appointment-card .submit,.appointment-card .altcall,.appointment-card .form-note{grid-column:1/-1}.appointment-card label{font-size:.75rem;font-weight:600}.req{color:var(--wine)}.appointment-card .inp{position:relative}.appointment-card :is(input,select,textarea){width:100%;min-height:49px;padding:12px 14px;background:#fcfafc;border:1px solid #ded5e2;border-radius:10px;color:var(--ink);font-size:.8125rem;line-height:1.5;min-width:0}.appointment-card select{padding-right:26px;text-overflow:ellipsis}.appointment-card textarea{resize:vertical;min-height:94px}.appointment-card .ico{display:none}.appointment-card .submit{display:flex;align-items:center;justify-content:center;gap:12px;border:0;background:var(--wine);color:white;border-radius:40px;min-height:54px;padding:14px 20px;font-weight:600;font-size:.875rem}.appointment-card .submit:hover{background:var(--deep)}.appointment-card .submit svg{width:20px;height:20px;flex-shrink:0}.appointment-card .altcall{text-align:center;color:var(--muted);font-size:.75rem}.appointment-card .altcall a{color:var(--wine);font-weight:600}.form-note{text-align:center;color:var(--muted);font-size:.75rem;line-height:1.7;margin:0}.err-msg{display:none;color:#b3223c;font-size:.75rem;line-height:1.5}.field.err .err-msg{display:block}.field.err :is(input,select,textarea){border-color:#b3223c;background:#fff7f8}.done{display:none;text-align:center;padding:25px 5px}.sent .grid{display:none!important}.sent .done{display:block}.done .tick{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#eaf4ed;color:#278249;margin:0 auto 24px}.done .tick svg{width:30px;height:30px}.done h3{font-size:1.5rem;margin-bottom:14px}.done p{font-size:.875rem;line-height:1.8}.done .again{display:block;border:0;border-bottom:1px solid #ceb3c0;background:transparent;color:var(--wine);padding:10px 0;margin:18px auto 0;font-size:.8125rem;min-height:44px}.footer{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-top:32px;padding-bottom:32px;font-size:.75rem}.footer img{width:160px;height:45px;object-fit:contain}.footer p{margin:0}.footer nav{display:flex;gap:20px}.noscript-note{padding:20px;border:1px solid var(--line);border-radius:12px;background:white}.noscript-note a{color:var(--wine);text-decoration:underline}
@media(max-width:1050px){.site-header nav{gap:18px}.page-hero{gap:35px}.appointment-layout{gap:35px;grid-template-columns:.8fr 1.3fr}.appointment-card{padding:26px}.treatment-body{padding:20px}.service-grid{gap:20px}}
@media(max-width:780px){html{scroll-padding-top:160px}.wrap{width:calc(100% - 40px)}.site-header{width:calc(100% - 24px);top:10px;padding:12px 16px;border-radius:22px;flex-wrap:wrap;gap:12px}.site-header img{width:145px;height:38px}.site-header nav{order:3;width:100%;justify-content:center;gap:28px;padding-top:4px;border-top:1px solid var(--line);font-size:.8125rem}.button-small{padding:10px 13px;font-size:.6875rem;min-height:40px}.page-hero{grid-template-columns:1fr;padding-top:42px;padding-bottom:42px;gap:35px}.hero-visual{aspect-ratio:1.3;width:100%;max-width:500px;margin:auto}.care-bar .wrap{font-size:.625rem;gap:10px;letter-spacing:.05em;padding:18px 0}.catalogue{padding-top:50px;padding-bottom:50px}.section-heading{flex-direction:column;align-items:start;gap:18px}.section-heading>p{max-width:none}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filters{gap:8px;margin-top:24px}.filters button{padding:9px 14px;font-size:.75rem}.help-band{padding:25px;flex-direction:column;align-items:start;gap:20px}.appointment-section{padding:50px 0}.appointment-layout{grid-template-columns:1fr;gap:24px}.clinic-info{display:grid;grid-template-columns:1fr 1fr;gap:20px}.clinic-info>div{margin:0}.clinic-info>div:last-child{grid-column:1/-1}.steps-grid{gap:25px}.footer{flex-wrap:wrap;justify-content:center;text-align:center}.footer p{width:100%;order:3}.crumbs{padding-top:25px}.detail-hero{padding-top:25px}}
@media(max-width:480px){.wrap{width:calc(100% - 32px)}.service-grid{grid-template-columns:1fr}.treatment-photo{aspect-ratio:1.8}.treatment-body{padding:20px 23px}.appointment-card{padding:23px 18px;border-radius:19px}.appointment-card .grid{grid-template-columns:1fr;gap:18px}.form-top{align-items:start;flex-direction:column;gap:4px}.steps-grid{grid-template-columns:1fr}.visit-steps{padding-top:40px;padding-bottom:40px}.catalogue-meta{align-items:start;flex-direction:column;gap:6px}.page-hero h1{font-size:2.65rem}.care-bar .wrap{font-size:.5625rem;gap:6px}.photo-note{padding:12px;bottom:12px;left:12px;right:12px}.site-header nav{gap:24px}.actions{gap:18px}.clinic-info{grid-template-columns:1fr}.hero-visual.illustration>img{padding:45px}}
@media(max-width:780px){.appointment-card :is(input,select,textarea){font-size:16px}.site-header .button-small{gap:10px}}
@media(max-width:480px){.site-header .button-small span{display:none}.site-header{gap:10px}}
@media(max-width:360px){.site-header img{width:120px}.site-header .button-small{font-size:.625rem;padding:10px 12px}.page-hero h1{font-size:2.35rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
