@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;0,700;1,600;1,700&display=swap";:where(.clinic-demo,.clinic-demo *){all:revert;box-sizing:border-box}@scope(.clinic-demo){:scope{--navy:#2b354b;--ink:#17233a;--muted:#69748a;--line:#dfe6ee;--paper:#f7fafc;--white:#fff;--cyan:#2abfd9;--cyan-dark:#1499b0;--purple:#851e98;--lavender:#f4e8f7;--red:#c9485b;--green:#239572;--shadow:0 22px 60px #1c2d4a21}:scope,:scope *{box-sizing:border-box}:scope{scroll-behavior:smooth;color:var(--ink);background:var(--paper);min-height:100vh;font-family:DM Sans,Arial,sans-serif;overflow-x:hidden}section[id]{scroll-margin-top:105px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.shell{width:min(1180px,100% - 48px);margin:0 auto}.demo-banner{background:var(--navy);color:#eaf7fb;letter-spacing:.14em;text-align:center;justify-content:center;gap:26px;padding:10px 20px;font-size:10px;font-weight:700;display:flex}.demo-banner span:not(:last-child):after{content:"·";color:var(--cyan);margin-left:26px}.site-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:20;background:#f7fafce6;justify-content:space-between;align-items:center;min-height:88px;display:flex;position:sticky;top:0}.brand,.footer-brand{align-items:center;gap:12px;display:flex}.brand-mark{background:linear-gradient(135deg,var(--cyan),var(--purple));color:#fff;letter-spacing:-.08em;border-radius:16px 16px 16px 4px;justify-content:center;align-items:center;width:44px;height:44px;font-size:17px;font-weight:700;display:flex}.brand strong,.brand small,.footer-brand strong,.footer-brand small{display:block}.brand strong{color:var(--navy);letter-spacing:-.03em;font-size:15px}.brand small{color:var(--purple);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:700}.main-nav{align-items:center;gap:28px;display:flex}.main-nav a{color:#556175;font-size:12px;font-weight:600}.main-nav a:hover,.text-link:hover{color:var(--purple)}.nav-cta,.button{border:0;border-radius:100px;font-weight:700;transition:transform .2s,box-shadow .2s,background .2s}.main-nav .nav-cta{background:var(--purple);color:#fff;padding:12px 18px;font-size:11px}.main-nav .nav-cta:hover{color:#fff}.button{justify-content:center;align-items:center;gap:18px;padding:15px 22px;display:inline-flex}.button:hover,.nav-cta:hover{transform:translateY(-2px);box-shadow:0 10px 25px #851e9833}.button span{font-size:17px}.button-primary{background:var(--cyan);color:var(--navy)}.button-dark{background:var(--navy);color:#fff}.hero{grid-template-columns:1.02fr .98fr;align-items:center;gap:50px;min-height:635px;padding:65px 0 85px;display:grid}.eyebrow{color:var(--purple);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 19px;font-size:10px;font-weight:700;display:flex}.eyebrow-line{background:var(--cyan);width:28px;height:2px;display:inline-block}h1,h2,h3,p{margin-top:0}h1,h2{color:var(--navy);letter-spacing:-.045em;font-family:Playfair Display,Georgia,serif;font-weight:600}h1{max-width:640px;margin-bottom:24px;font-size:clamp(49px,6vw,78px);line-height:.99}h2{margin-bottom:22px;font-size:clamp(36px,4.3vw,57px);line-height:1.02}h2 em,h1 em{color:var(--purple);font-style:italic}.hero-lede{color:var(--muted);max-width:550px;font-size:17px;line-height:1.75}.hero-buttons{align-items:center;gap:27px;margin-top:32px;display:flex}.text-link{color:var(--navy);font-size:12px;font-weight:700}.text-link span{color:var(--purple);margin-left:5px;font-size:17px}.hero-proof{border-top:1px solid var(--line);gap:30px;margin-top:65px;padding-top:20px;display:flex}.hero-proof div{gap:5px;display:grid}.hero-proof strong{color:var(--cyan-dark);letter-spacing:.12em;font-size:10px}.hero-proof span{color:var(--muted);font-size:11px}.hero-visual{min-height:500px;position:relative}.hero-visual:before{background:var(--lavender);content:"";border-radius:50% 50% 15px;width:370px;height:380px;position:absolute;top:30px;right:2%;transform:rotate(12deg)}.hero-image-frame{box-shadow:var(--shadow);border-radius:145px 18px;width:min(390px,78%);height:480px;position:absolute;top:8px;right:38px;overflow:hidden;transform:rotate(3deg)}.hero-image-frame img,.intro-image img,.gallery-grid img{object-fit:cover;width:100%;height:100%}.hero-image-frame:after{content:"";background:linear-gradient(#0000 45%,#151f34a6);position:absolute;inset:0}.image-tag{color:#fff;z-index:2;font-size:10px;position:absolute;bottom:19px;left:24px}.hero-float{z-index:3;background:#fff;border-radius:17px;align-items:center;gap:10px;padding:13px 17px;display:flex;position:absolute;box-shadow:0 16px 35px #1c2d4a26}.float-top{top:68px;right:-3px}.float-bottom{bottom:47px;left:10px}.hero-float small,.hero-float b{display:block}.hero-float small{color:var(--muted);margin-bottom:3px;font-size:9px}.hero-float b{color:var(--navy);font-size:11px}.float-icon{background:var(--lavender);color:var(--purple);border-radius:11px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.pulse{background:var(--green);border:5px solid #d8f3e8;border-radius:50%;width:27px;height:27px}.quick-nav{border-bottom:1px solid var(--line);border-top:1px solid var(--line);align-items:center;gap:21px;padding:15px 0;display:flex}.quick-label,.quick-nav a,.quick-note{font-size:10px}.quick-label{color:var(--purple);letter-spacing:.12em;text-transform:uppercase;font-weight:700}.quick-nav a{color:var(--navy);font-weight:700}.quick-nav a:hover{color:var(--purple)}.quick-note{color:#9aa6b6;margin-left:auto}.intro-section{grid-template-columns:1fr 1fr;align-items:center;gap:90px;padding:120px 0 100px;display:grid}.intro-image{box-shadow:var(--shadow);border-radius:18px 115px;height:470px;position:relative;overflow:hidden}.intro-image:after{content:"";background:linear-gradient(#0000 50%,#1f2d45a6);position:absolute;inset:0}.image-credit{color:#fff;z-index:2;font-size:10px;position:absolute;bottom:20px;left:22px}.intro-copy>p:not(.eyebrow),.section-heading>p,.gallery-head>p,.price-intro>p:not(.eyebrow),.appointment-copy>p:not(.eyebrow){color:var(--muted);font-size:15px;line-height:1.75}.feature-list{border-top:1px solid var(--line);margin-top:32px}.feature-list div{border-bottom:1px solid var(--line);align-items:flex-start;gap:18px;padding:17px 0;display:flex}.feature-list span{color:var(--cyan-dark);font-size:11px;font-weight:700}.feature-list p{margin:0}.feature-list b,.feature-list small{display:block}.feature-list b{color:var(--navy);margin-bottom:4px;font-size:13px}.feature-list small{color:var(--muted);font-size:12px}.services-section,.gallery-section,.faq-section{padding:100px 0}.section-heading,.gallery-head{justify-content:space-between;align-items:end;gap:60px;margin-bottom:43px;display:flex}.section-heading>div,.gallery-head>div{max-width:600px}.section-heading>p,.gallery-head>p{max-width:340px;margin:0}.services-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.service-card{border:1px solid var(--line);color:var(--navy);text-align:left;background:#fff;border-radius:20px;flex-direction:column;min-height:272px;padding:24px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.service-card:hover{border-color:var(--cyan);transform:translateY(-5px);box-shadow:0 18px 35px #1c2d4a1a}.service-card-accent{background:var(--purple);border-color:var(--purple);color:#fff}.service-number{color:var(--cyan-dark);font-size:10px;font-weight:700}.service-card-accent .service-number{color:#d8d0ff}.service-eyebrow{color:var(--purple);letter-spacing:.12em;text-transform:uppercase;margin-top:28px;font-size:10px;font-weight:700}.service-card-accent .service-eyebrow{color:#baf1f7}.service-card h3{letter-spacing:-.04em;margin:8px 0 10px;font-family:Playfair Display,Georgia,serif;font-size:26px;font-weight:600}.service-card p{color:var(--muted);margin:0;font-size:12px;line-height:1.65}.service-card-accent p{color:#e9e3ee}.card-action{color:var(--navy);margin-top:auto;padding-top:19px;font-size:11px;font-weight:700}.card-action b{color:var(--purple);margin-left:6px;font-size:16px}.service-card-accent .card-action{color:#fff}.service-card-accent .card-action b{color:var(--cyan)}.gallery-section{background:var(--navy);color:#fff;width:100%;max-width:none;margin:0;padding-left:max(24px,50vw - 590px);padding-right:max(24px,50vw - 590px)}.gallery-section h2{color:#fff}.gallery-section h2 em{color:#bff5f7}.gallery-head>p{color:#b4c0d1}.gallery-grid{grid-template-columns:1.5fr 1fr 1fr;gap:16px;display:grid}.gallery-grid figure{height:330px;margin:0;position:relative;overflow:hidden}.gallery-grid .gallery-large{height:430px}.gallery-grid figure:after{content:"";background:linear-gradient(#0000 35%,#0b1324d1);position:absolute;inset:0}.gallery-grid figcaption{z-index:2;gap:3px;display:grid;position:absolute;bottom:24px;left:23px}.gallery-grid figcaption span{color:var(--cyan);font-size:10px;font-weight:700}.gallery-grid figcaption b{font-family:Playfair Display,Georgia,serif;font-size:22px}.gallery-grid figcaption small{color:#d3deea;font-size:10px}.price-section{grid-template-columns:1fr 1fr;align-items:center;gap:85px;padding:115px 0;display:grid}.price-intro select{border:1px solid var(--line);color:var(--navy);background:#fff;border-radius:10px;width:min(100%,400px);margin-top:10px;padding:15px;display:block}.price-intro label,.form-label{color:var(--navy);font-size:11px;font-weight:700;display:block}.price-result{background:linear-gradient(135deg,var(--lavender),#fff 70%);border:1px solid #ead7ed;border-radius:28px;min-height:350px;padding:43px}.result-label{color:var(--purple);letter-spacing:.13em;text-transform:uppercase;font-size:10px;font-weight:700}.price-result h3{color:var(--navy);margin:22px 0 10px;font-family:Playfair Display,Georgia,serif;font-size:35px}.price-result p{color:var(--muted);font-size:13px;line-height:1.65}.result-price{color:var(--navy);align-items:baseline;gap:10px;margin:28px 0 10px;font-family:Playfair Display,Georgia,serif;font-size:52px;display:flex}.result-price small{color:var(--purple);font-family:DM Sans,Arial,sans-serif;font-size:10px;font-weight:700}.result-meta{color:var(--muted);gap:19px;margin-bottom:24px;font-size:11px;display:flex}.appointment-section{box-shadow:var(--shadow);background:#fff;border-radius:31px;grid-template-columns:.74fr 1.26fr;gap:70px;margin-bottom:115px;padding:64px;display:grid}.appointment-copy h2{font-size:48px}.availability-legend{flex-wrap:wrap;gap:13px;margin:30px 0;display:flex}.availability-legend span{color:var(--muted);align-items:center;gap:6px;font-size:11px;display:flex}.dot{border-radius:50%;width:9px;height:9px;display:inline-block}.dot-open{background:var(--green)}.dot-full{background:#e37b4e}.dot-closed{background:var(--red)}.appointment-note{border-left:3px solid var(--cyan);background:#f3f7fb;gap:4px;padding:15px;display:grid}.appointment-note b{color:var(--navy);font-size:11px}.appointment-note span{color:var(--muted);font-size:11px;line-height:1.5}.appointment-form{min-width:0}.calendar-head{justify-content:space-between;align-items:end;margin-bottom:13px;display:flex}.calendar-head small{color:var(--muted);margin-top:5px;font-size:10px;display:block}.persistence-pill{color:var(--muted);background:#f1f4f8;border-radius:30px;padding:7px 10px;font-size:10px}.persistence-pill.is-live{color:#187453;background:#e5f6ee}.date-strip{grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:20px;display:grid}.date-chip{color:var(--navy);text-align:center;background:#f6fbfc;border:1px solid #d6edf0;border-radius:10px;gap:4px;padding:9px 5px;display:grid}.date-chip:hover:not(:disabled),.date-chip.selected{background:var(--cyan);border-color:var(--cyan)}.date-chip.unavailable,.date-chip:disabled{color:var(--red);cursor:not-allowed;background:#fff2f3;border-color:#f4c8ce}.date-chip small{text-transform:capitalize;font-size:9px}.date-chip b{font-size:17px}.date-chip span{font-size:8px}.slot-picker{margin:22px 0}.slot-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:10px;display:grid}.slot-button{color:var(--navy);text-align:left;background:#f7fffb;border:1px solid #cdeee0;border-radius:13px;gap:6px;min-height:67px;padding:14px;transition:border-color .2s,box-shadow .2s,transform .2s;display:grid}.slot-button:hover:not(:disabled){border-color:var(--green);transform:translateY(-2px);box-shadow:0 9px 22px #2395721f}.slot-button.selected{border-color:var(--green);background:#ddf6eb;box-shadow:0 0 0 2px #2395721f}.slot-button.full,.slot-button:disabled{color:var(--red);cursor:not-allowed;background:#fff2f3;border-color:#f4c8ce}.slot-button b{font-size:12px}.slot-button small{color:var(--muted);font-size:9px}.slot-button.full small{color:var(--red)}.form-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.appointment-form label{color:var(--navy);margin-bottom:14px;font-size:11px;font-weight:700;display:block}.appointment-form input,.appointment-form select,.appointment-form textarea{border:1px solid var(--line);color:var(--navy);background:#fbfcfd;border-radius:8px;outline:0;width:100%;margin-top:7px;padding:12px;display:block}.appointment-form input:focus,.appointment-form select:focus,.appointment-form textarea:focus{border-color:var(--cyan);box-shadow:0 0 0 3px #2abfd91a}.appointment-form textarea{resize:vertical}.form-submit{border-radius:9px;width:100%;margin-top:3px}.form-message{color:#187453;background:#edf9f4;border-radius:8px;margin:14px 0 0;padding:11px;font-size:11px;line-height:1.5}.consent-row{border:1px solid var(--line);background:#f3f7fb;border-radius:10px;align-items:flex-start;gap:10px;padding:12px;line-height:1.5;display:flex!important}.consent-row input{accent-color:var(--purple);flex:none;width:auto;margin:2px 0 0}.consent-row span{color:var(--muted);font-weight:500}.honeypot{clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.faq-section{padding-top:0}.faq-grid{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;display:grid}.faq-grid details{border-bottom:1px solid var(--line);padding:20px 0}.faq-grid details:nth-child(odd){margin-right:35px}.faq-grid details:nth-child(2n){padding-left:35px}.faq-grid summary{color:var(--navy);cursor:pointer;justify-content:space-between;font-size:13px;font-weight:700;list-style:none;display:flex}.faq-grid summary::-webkit-details-marker{display:none}.faq-grid summary span{color:var(--purple);font-size:19px}.faq-grid details p{color:var(--muted);margin:15px 32px 0 0;font-size:12px;line-height:1.6}.site-footer{border-top:1px solid var(--line);grid-template-columns:1fr 1fr 1fr;align-items:center;gap:35px;padding:35px 0 50px;display:grid}.footer-brand small,.footer-data,.footer-disclaimer{color:var(--muted);font-size:10px}.footer-brand small{margin-top:4px}.footer-data{gap:5px;display:grid}.footer-disclaimer{text-align:right;justify-items:end;gap:6px;display:grid}.footer-disclaimer b{color:var(--purple)}.footer-disclaimer a{color:var(--navy);font-weight:700}@media (width<=900px){.main-nav{gap:13px}.main-nav>a:not(.nav-cta){display:none}.hero,.intro-section,.price-section,.appointment-section{grid-template-columns:1fr;gap:45px}.hero{padding-top:35px}.hero-visual{min-height:470px}.hero-proof{margin-top:40px}.intro-image{max-width:590px}.services-grid{grid-template-columns:1fr 1fr}.appointment-section{padding:38px}.gallery-section{padding-left:24px;padding-right:24px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-large{grid-column:span 2}.site-footer{grid-template-columns:1fr}.footer-disclaimer{text-align:left;justify-items:start}}@media (width<=600px){.shell{width:min(100% - 28px,1180px)}.demo-banner{flex-wrap:wrap;gap:4px 11px;font-size:8px}.demo-banner span:not(:last-child):after{margin-left:11px}.site-header{min-height:75px}.nav-cta{padding:10px 12px;font-size:9px}.hero{min-height:auto;padding:38px 0 65px}.hero h1{font-size:48px}.hero-lede{font-size:15px}.hero-buttons{flex-direction:column;align-items:flex-start;gap:17px}.hero-visual{min-height:390px}.hero-image-frame{width:80%;height:370px;right:22px}.hero-visual:before{width:290px;height:290px;right:0}.float-top{top:34px;right:-2px}.float-bottom{bottom:20px;left:0}.quick-nav{flex-wrap:wrap;align-items:flex-start;gap:11px 18px}.quick-note{width:100%;margin-left:0}.intro-section,.services-section,.gallery-section,.faq-section,.price-section{padding:70px 0}.intro-image{border-radius:16px 70px;height:340px}.section-heading,.gallery-head{flex-direction:column;align-items:flex-start;gap:8px}.services-grid,.gallery-grid{grid-template-columns:1fr}.gallery-grid .gallery-large{grid-column:auto;height:320px}.gallery-grid figure{height:260px}.price-result{padding:28px}.appointment-section{border-radius:20px;margin-bottom:70px;padding:25px 17px}.appointment-copy h2{font-size:39px}.date-strip{grid-template-columns:repeat(4,1fr)}.slot-grid,.form-row,.faq-grid{grid-template-columns:1fr}.faq-grid details:nth-child(odd),.faq-grid details:nth-child(2n){margin-right:0;padding-left:0}.site-footer{gap:22px}}}
