@font-face{font-family:Inter;src:url('./inter.woff2') format('woff2');font-display:swap;font-style:normal;font-weight:100 900}
:root{--ink:#17333e;--muted:#526b74;--blue:#087696;--blue-dark:#076783;--pale:#edf6f8;--line:#d8e6ea;--paper:#fff;--radius:20px;--shadow:0 20px 60px #17333e0c}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:4px}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit}img{display:block;max-width:100%;height:auto}button,summary{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.14;letter-spacing:-.045em}h1{font-size:clamp(2.6rem,4.55vw,4.5rem);font-weight:650}h2{font-size:clamp(2rem,3.2vw,3.1rem);font-weight:600}h3{font-size:1.2rem;letter-spacing:-.025em}p+p{margin-top:1rem}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px;border-radius:5px}.wrap{width:min(1200px,calc(100% - 80px));margin-inline:auto}.section{padding-block:96px}.eyebrow{display:flex;align-items:center;gap:12px;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);margin-bottom:22px}.eyebrow:before{content:'';width:28px;height:2px;background:currentColor}.muted{color:var(--muted)}.skip{position:fixed;z-index:100;top:10px;left:10px;background:white;padding:12px 18px;top:-1000px}.skip:focus{top:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:50px;padding:13px 22px;border:1px solid transparent;border-radius:8px;background:var(--blue);color:#fff;text-decoration:none;font-size:.85rem;font-weight:600;transition:background .18s,box-shadow .18s}.button:hover{background:var(--blue-dark);box-shadow:0 6px 18px #087fa523}.button.outline{background:transparent;color:var(--ink);border-color:var(--line)}.button.outline:hover{background:var(--pale)}.arrow{font-size:1.15rem;line-height:1}.text-link{font-size:.88rem;font-weight:600;color:var(--blue);display:inline-flex;gap:12px;align-items:center}.site-header{position:sticky;top:0;z-index:20;background:#fffffffa;border-bottom:1px solid var(--line)}.header-inner{height:86px;display:flex;align-items:center;gap:24px}.brand{text-decoration:none;display:flex;align-items:center;gap:10px;flex-shrink:0}.brand-mark{display:grid;place-items:center;width:36px;height:42px;border-radius:12px 3px 12px 3px;background:var(--pale);color:var(--blue);font-size:29px;font-weight:300}.brand strong{display:block;font-size:.95rem;letter-spacing:-.035em;line-height:1.1}.brand small{font-size:.64rem;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.nav{margin-left:auto;display:flex;align-items:center;gap:22px}.nav>a{font-size:.77rem;text-decoration:none;font-weight:500;white-space:nowrap}.nav>a:hover{color:var(--blue)}.header-cta{min-height:44px;padding:11px 16px;font-size:.75rem}.menu-toggle{display:none;border:1px solid var(--line);border-radius:8px;background:white;min-width:46px;min-height:46px;color:var(--ink);font-size:.8rem}.nav .mobile-booking{display:none}
.hero{background:linear-gradient(110deg,#f3f9fa,#e8f3f6);position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center;padding-block:72px 80px}.hero h1 span{display:block;color:var(--blue)}.hero-name{font-size:1.3rem;letter-spacing:-.025em;margin-top:24px;font-weight:500}.hero-location{font-size:.9rem;color:var(--muted);margin-top:4px}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:32px}.hero-phone{text-decoration:none;font-size:.82rem;font-weight:500}.hero-visual{position:relative;padding:14px 0 32px}.hero-image{aspect-ratio:1.12;object-fit:cover;border-radius:90px 20px 90px 20px;box-shadow:var(--shadow);width:100%}.hero-visual:before{content:'';position:absolute;inset:0 20px 50px -18px;border:1px solid #b5d6df;border-radius:100px 30px 100px 30px;pointer-events:none}.hero-label{position:absolute;left:-25px;bottom:6px;display:flex;align-items:center;gap:15px;background:#fff;padding:18px 25px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);font-size:.83rem}.hero-label strong{display:block;font-weight:600}.hero-label small{color:var(--muted)}.location-dot{color:var(--blue);width:36px;height:36px;display:grid;place-items:center;background:var(--pale);border-radius:50%}.hero-caption{position:absolute;right:14px;bottom:4px;font-size:.6rem;color:var(--muted)}.quick-info{display:flex;justify-content:space-between;gap:20px;padding-block:23px;border-bottom:1px solid var(--line);font-size:.8rem;color:var(--muted)}.quick-info strong{color:var(--ink);font-weight:550}.section-heading{display:flex;justify-content:space-between;gap:60px;align-items:flex-end;margin-bottom:38px}.section-heading .intro{max-width:370px;color:var(--muted);font-size:.91rem}.section-heading h2 em{font-style:normal;color:var(--blue)}.accordion-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:30px;align-items:start}.accordion{border-top:1px solid var(--line)}.accordion:nth-last-child(-n+2){border-bottom:1px solid var(--line)}.accordion summary{display:flex;align-items:flex-start;gap:16px;list-style:none;min-height:118px;padding:26px 10px 26px 0}.accordion summary::-webkit-details-marker{display:none}.number{color:var(--blue);font-size:.69rem;font-weight:600;letter-spacing:.08em;padding-top:4px;width:25px;flex-shrink:0}.summary-copy{flex:1;min-width:0}.summary-copy strong{font-size:1rem;line-height:1.45;font-weight:600;display:block;letter-spacing:-.02em;overflow-wrap:anywhere}.summary-copy small{font-size:.75rem;line-height:1.5;color:var(--muted);display:block;margin-top:6px}.plus{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;background:var(--pale);color:var(--blue);border-radius:50%;font-size:1.25rem;line-height:1;font-weight:400;transition:transform .2s}.accordion[open] .plus{transform:rotate(45deg);background:var(--blue);color:white}.accordion summary:hover .summary-copy strong{color:var(--blue)}.accordion-body{padding:0 42px 28px 41px;color:var(--muted);font-size:.88rem;line-height:1.8}.treatment-note{display:flex;align-items:flex-start;gap:22px;margin-top:30px;background:var(--pale);padding:25px 28px;border-radius:12px}.treatment-note .note-symbol{font-size:1.7rem;color:var(--blue);line-height:1.2}.treatment-note p{font-size:.8rem;line-height:1.75;color:var(--muted);max-width:950px}.competence{background:#f4f8f9}.competence-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.competence-intro{position:sticky;top:125px;align-self:start}.competence-intro h2{font-size:clamp(2rem,3vw,2.8rem)}.competence-intro p{color:var(--muted);font-size:.9rem;margin-top:24px}.count{display:flex;align-items:center;gap:15px;margin-top:28px;border-top:1px solid var(--line);padding-top:23px;font-size:.78rem;color:var(--muted)}.count strong{font-size:2rem;color:var(--blue);font-weight:500;letter-spacing:-.06em}.competence-list .accordion summary{min-height:76px;padding-block:22px}.competence-list .accordion:last-child{border-bottom:1px solid var(--line)}.competence-list .accordion:nth-last-child(2){border-bottom:0}.about-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:100px;align-items:center}.portrait-frame{background:#e9e5e0;border-radius:20px 80px 20px 20px;overflow:hidden;position:relative}.portrait-frame img{aspect-ratio:1.05;object-fit:cover;object-position:center;width:100%}.portrait-caption{position:absolute;bottom:20px;left:20px;right:20px;background:#ffffffed;padding:15px 20px;border-radius:9px;font-size:.8rem}.portrait-caption strong{display:block}.portrait-caption span{color:var(--muted);font-size:.72rem}.about-copy p{font-size:1rem;color:var(--muted);margin-top:25px;line-height:1.85}.about-copy .text-link{margin-top:25px}.gallery-section{padding-top:0}.gallery-heading{margin-bottom:30px}.gallery-heading h2{font-size:2rem}.gallery-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}.gallery-grid figure{margin:0}.gallery-grid img{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:14px}.gallery-grid figcaption{margin-top:12px;font-size:.79rem;color:var(--muted)}.gallery-note{font-size:.72rem;color:var(--muted);margin-top:18px}.contact-section{background:var(--ink);color:#fff}.contact-section .eyebrow{color:#92cfde}.contact-section .section-heading .intro{color:#c1d2d7}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-section h3{font-size:1.15rem;letter-spacing:-.025em;margin-bottom:25px}.hours-table{width:100%;border-collapse:collapse;font-size:.87rem}.hours-table caption{text-align:left;margin-bottom:12px;font-size:.75rem;color:#bfd0d6}.hours-table th{text-align:left;font-weight:500}.hours-table td,.hours-table th{padding:13px 0;border-bottom:1px solid #ffffff26}.hours-table thead th{font-size:.69rem;color:#b6cbd2;font-weight:400}.hours-table td{white-space:nowrap}.hours-note{font-size:.75rem;color:#b6cbd2;margin-top:15px}.contact-card{border:1px solid #ffffff30;border-radius:16px;padding:30px;background:#ffffff05}.contact-card address{font-style:normal;font-size:.87rem;color:#d5e2e6}.contact-card address strong{color:white}.contact-lines{display:grid;grid-template-columns:65px 1fr;column-gap:15px;row-gap:7px;font-size:.83rem;margin:22px 0}.contact-lines dt{color:#a9c5ce}.contact-lines dd{margin:0;overflow-wrap:anywhere}.contact-lines a{text-decoration:none}.contact-lines a:hover{text-decoration:underline}.contact-buttons{display:flex;gap:12px;flex-wrap:wrap}.contact-buttons .button{background:#b5e4ef;color:#16353e;font-size:.77rem;gap:10px}.contact-buttons .button.outline{background:transparent;color:white;border-color:#ffffff42}.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:90px}.faq .accordion summary{min-height:76px;padding-block:23px}.faq .accordion-body{padding-left:0}.faq .accordion:last-child{border-bottom:1px solid var(--line)}.faq .accordion:nth-last-child(2){border-bottom:0}.site-footer{background:#f3f7f8;border-top:1px solid var(--line);padding-block:44px 22px}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr .7fr;gap:55px}.footer-grid p{color:var(--muted);font-size:.79rem;margin-top:15px}.footer-grid h3{font-size:.8rem;letter-spacing:0;margin-bottom:16px}.footer-grid a:not(.brand){font-size:.79rem;color:var(--muted)}.footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-bottom{margin-top:35px;padding-top:20px;border-top:1px solid var(--line);font-size:.68rem;color:var(--muted);display:flex;justify-content:space-between;gap:20px}.mobile-dock{display:none}.legal{max-width:820px;padding-block:65px 95px}.legal .back{display:inline-block;margin-bottom:30px}.legal h1{font-size:3rem;margin-bottom:25px}.legal h2{font-size:1.35rem;margin-top:36px;margin-bottom:14px;letter-spacing:-.025em}.legal p,.legal li{font-size:.93rem;color:var(--muted);overflow-wrap:anywhere}.legal .lead{font-size:1rem;color:var(--ink)}.legal ul{padding-left:22px}.legal a{color:var(--blue)}.legal dl{display:grid;grid-template-columns:180px 1fr;gap:12px;font-size:.9rem}.legal dt{font-weight:600}.legal dd{margin:0;color:var(--muted)}
.hero-grid>*,.competence-layout>*,.about-grid>*,.contact-grid>*,.faq-layout>*,.footer-grid>*{min-width:0}.accordion-body{overflow-wrap:anywhere;hyphens:auto}.footer-grid a{overflow-wrap:anywhere}
@media(min-width:1500px){.hero-grid{padding-block:90px}.hero h1{font-size:4.5rem}}
@media(max-width:1150px){.wrap{width:calc(100% - 56px)}.header-inner{gap:18px}.nav{gap:14px}.nav>a{font-size:.7rem}.header-cta{font-size:.7rem;padding-inline:12px}.hero-grid{gap:50px}.hero-label{left:-12px;padding:15px 18px}.hero-actions{gap:16px}.hero-phone{font-size:.73rem}.competence-layout,.faq-layout{gap:45px}.about-grid{gap:60px}.contact-grid{gap:40px}}
@media(max-width:960px){.menu-toggle{display:block;margin-left:auto}.header-inner{height:76px}.header-cta{margin-left:0;font-size:.75rem}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:16px 28px 24px;box-shadow:0 12px 20px #17333e12;max-height:calc(100dvh - 76px);overflow-y:auto;align-items:stretch;gap:0}.nav.is-open{display:flex;flex-direction:column}.nav>a{padding:13px 5px;font-size:.94rem;border-bottom:1px solid var(--line)}.nav .mobile-booking{display:flex;margin-top:15px;border-bottom:0;color:white;font-size:.85rem}.hero-grid{gap:35px;padding-block:55px 65px}.hero h1{font-size:2.85rem}.hero-name{font-size:1.1rem}.hero-actions{flex-direction:column;align-items:flex-start;gap:15px}.hero-caption{bottom:-17px}.quick-info{font-size:.72rem;flex-wrap:wrap}.section{padding-block:72px}.section-heading{gap:35px}.competence-layout,.faq-layout{grid-template-columns:1fr;gap:35px}.competence-intro{position:static}.competence-intro h2 br{display:none}.competence-intro p{max-width:620px;margin-top:18px}.count{margin-top:18px;padding-top:15px;max-width:300px}.about-grid{gap:40px}.about-copy h2{font-size:2rem}.about-copy p{font-size:.92rem}.gallery-section{padding-top:0}.contact-grid{grid-template-columns:1fr 1fr;gap:30px}.contact-card{padding:24px}.hours-table{font-size:.77rem}.footer-grid{gap:30px}}
@media(max-width:640px){html{scroll-padding-top:92px}.wrap{width:calc(100% - 40px)}body{font-size:15px}.header-inner{height:72px;gap:12px}.brand strong{font-size:.86rem}.brand small{font-size:.58rem}.brand-mark{width:31px;height:36px;font-size:25px}.header-cta{display:none}.nav{top:72px;max-height:calc(100dvh - 72px);padding-inline:20px}.menu-toggle{min-width:58px;min-height:42px;font-size:.75rem}.hero-grid{grid-template-columns:1fr;gap:30px;padding-block:42px 34px}.hero h1{font-size:clamp(2.25rem,9.1vw,3.4rem);line-height:1.1}.eyebrow{font-size:.65rem;margin-bottom:18px}.hero-name{margin-top:22px;font-size:1.12rem}.hero-location{font-size:.82rem}.hero-actions{margin-top:24px;flex-direction:row;align-items:center;gap:16px;flex-wrap:wrap}.hero-actions .button{font-size:.78rem;padding-inline:17px;gap:16px}.hero-phone{font-size:.76rem}.hero-visual{padding:0 0 31px;margin:8px 8px 7px}.hero-image{aspect-ratio:1.65;border-radius:50px 14px 50px 14px}.hero-visual:before{inset:-9px 13px 42px -10px;border-radius:60px 20px 60px 20px}.hero-label{left:-8px;bottom:6px;padding:12px 16px;font-size:.73rem;gap:11px}.hero-label small{font-size:.66rem}.location-dot{width:30px;height:30px}.hero-caption{bottom:-10px;right:4px;font-size:.59rem}.quick-info{gap:8px;padding-block:18px;font-size:.7rem;flex-direction:column}.quick-info>span{display:flex;gap:5px}.section{padding-block:56px}.section-heading{display:block;margin-bottom:27px}.section-heading .intro{margin-top:20px;font-size:.87rem;max-width:none}h2{font-size:2.1rem}.accordion-grid{grid-template-columns:1fr;gap:0}.accordion summary{min-height:100px;padding:22px 0;gap:12px}.accordion:nth-last-child(2){border-bottom:0}.number{width:20px;font-size:.65rem}.summary-copy strong{font-size:.93rem}.summary-copy small{font-size:.72rem}.plus{width:26px;height:26px;font-size:1.15rem}.accordion-body{font-size:.86rem;padding:0 15px 24px 32px}.treatment-note{padding:22px 20px;gap:13px;margin-top:23px}.treatment-note p{font-size:.76rem}.competence-layout{gap:28px}.competence-intro h2{font-size:2.1rem}.competence-intro p{font-size:.86rem}.competence-list .accordion summary{padding-block:21px;min-height:78px}.about-grid{grid-template-columns:1fr;gap:33px}.portrait-frame{max-width:450px;width:100%;border-radius:16px 60px 16px 16px}.portrait-frame img{aspect-ratio:1.15;object-position:center 40%}.portrait-caption{bottom:15px;left:15px;right:15px}.about-copy h2{font-size:2.1rem}.about-copy p{font-size:.92rem;margin-top:21px}.gallery-section{padding-top:0}.gallery-heading h2{font-size:1.8rem}.gallery-grid{grid-template-columns:1fr;gap:24px}.gallery-grid img{aspect-ratio:1.8}.gallery-grid figcaption{margin-top:8px}.gallery-note{font-size:.68rem}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-section h2{font-size:2.1rem}.hours-table{font-size:.81rem}.hours-table td,.hours-table th{padding-block:14px}.contact-card{padding:25px 22px}.contact-lines{font-size:.79rem;grid-template-columns:48px 1fr;gap:10px}.contact-buttons{gap:10px}.contact-buttons .button{font-size:.75rem}.faq-layout{gap:20px}.faq .accordion summary{padding-block:21px}.faq .summary-copy strong{font-size:.88rem}.faq .accordion-body{padding-right:30px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-brand{grid-column:1/-1}.footer-bottom{font-size:.64rem;flex-direction:column;gap:8px;margin-top:25px}.site-footer{padding-block:35px 102px}.mobile-dock{display:flex;position:fixed;z-index:15;bottom:0;left:0;right:0;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:#fffffffa;border-top:1px solid var(--line);gap:12px;box-shadow:0 -3px 20px #17333e08}.mobile-dock .button{font-size:.77rem;min-height:45px;flex:1;padding:10px 12px}.mobile-dock .button.outline{flex:.65}.legal{padding-block:40px 60px}.legal h1{font-size:2.3rem;overflow-wrap:anywhere}.legal h2{font-size:1.25rem}.legal dl{grid-template-columns:1fr;gap:5px}.legal dd{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{.site-header,.mobile-dock,.site-footer,.hero-visual,.button{display:none!important}.wrap{width:100%;max-width:none}.section{padding:20px 0}.accordion-body{display:block!important}details::details-content{content-visibility:visible!important;height:auto!important}.contact-section{background:white;color:black}.contact-section *{color:black!important}.competence-intro{position:static}}

.brand-logo{display:block;width:180px;height:auto;max-width:100%}.footer-brand .brand-logo{width:200px}@media(max-width:640px){.brand-logo{width:150px}.footer-brand .brand-logo{width:180px}}
