@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;700&family=Raleway:wght@400;500;600;700&display=swap');
:root{--navy:#253b35;--teal:#558003;--pale:#eff3e9;--mist:#dce7ca;--ink:#253b35;--muted:#53645c;--white:#fff;--line:#d6e0d1;--font:'Lato',Arial,sans-serif;--heading:'Raleway',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:var(--font);font-size:var(--body-size);line-height:normal;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--heading);line-height:normal;font-weight:650}h2{font-size:clamp(2rem,3.2vw,2.85rem);letter-spacing:-1.6px;margin-bottom:22px}h3{font-size:1.17rem;letter-spacing:-.4px}p{margin-bottom:20px}a,button,input,textarea{touch-action:manipulation}:focus-visible{outline:3px solid var(--teal);outline-offset:5px}.container{width:min(1160px,calc(100% - 96px));margin-inline:auto}.section{padding-block:108px}.eyebrow{color:var(--teal);font-size:var(--body-size);font-weight:700;letter-spacing:2px;line-height:normal;margin-bottom:22px}.button{display:inline-flex;align-items:center;justify-content:center;gap:28px;background:var(--navy);color:#fff;border:1px solid var(--navy);border-radius:5px;min-height:54px;padding:14px 24px;font-size:var(--body-size);font-weight:600;line-height:normal;transition:background .25s,transform .25s,box-shadow .25s;text-align:center}.button:hover{background:var(--teal);border-color:var(--teal);transform:translateY(-2px);box-shadow:0 7px 20px #253b3514}.button span{font-size:1.2rem}.button.small{min-height:44px;padding:10px 19px;font-size:var(--body-size);gap:25px}.button.light{background:var(--pale);border-color:var(--pale);color:var(--navy)}.button.light:hover{background:#fff}.button-row{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.text-link{background:none;border:0;padding:0 0 5px;display:inline-flex;align-items:center;gap:16px;font-size:var(--body-size);font-weight:650;line-height:normal;border-bottom:1px solid #a7bfc6;transition:color .2s,gap .2s}.text-link:hover{color:var(--teal);gap:21px}.skip{position:fixed;left:20px;top:-80px;padding:12px;background:white;z-index:100}.skip:focus{top:10px}.topbar{background:var(--navy);color:#e5eef0;font-size:var(--body-size);letter-spacing:.2px}.topbar .container{display:flex;justify-content:space-between;padding-block:8px}.topbar span span{margin-left:10px}.header{position:sticky;top:0;background:#ffffffef;backdrop-filter:blur(16px);z-index:20;border-bottom:1px solid #eff3e9}.nav-wrap{min-height:96px;display:flex;align-items:center;gap:38px}.brand{display:inline-flex;flex-direction:column;flex-shrink:0;line-height:normal}.brand-name{font-family:var(--heading);font-size:1.45rem;font-weight:750;letter-spacing:-.9px}.brand-tag{font-size:var(--body-size);letter-spacing:3px;margin-top:8px}.nav-wrap nav{display:flex;gap:27px;margin-left:auto}.nav-wrap nav a{font-size:var(--body-size);position:relative;padding:10px 0}.nav-wrap nav a:after{content:'';position:absolute;bottom:4px;left:0;width:0;height:1px;background:var(--teal);transition:width .25s}.nav-wrap nav a:hover:after{width:100%}.menu-toggle{display:none}.hero{background:linear-gradient(90deg,#f5f7f1,#eef3e7);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:652px;gap:44px;align-items:center}.hero-copy{padding:62px 0 68px;animation:enter .9s both}.hero h1{font-size:clamp(3rem,4.6vw,4.2rem);letter-spacing:-3.2px;line-height:normal;margin-bottom:26px}.hero h1 em{font-weight:500;font-family:Georgia,serif;color:var(--teal)}.hero-description{font-size:var(--body-size);color:var(--muted);max-width:415px;line-height:normal;margin-bottom:32px}.hero-note{display:flex;align-items:center;gap:10px;margin-top:30px;font-size:var(--body-size);color:var(--muted)}.check{border:1px solid #9dbb70;border-radius:50%;width:19px;height:19px;display:grid;place-items:center;font-size:var(--body-size);color:var(--teal)}.hero-visual{position:relative;height:540px;margin-right:-20px;animation:enter 1.1s .12s both}.placeholder{position:relative;background:#d3e1e4;display:grid;place-items:center;overflow:hidden}.placeholder:before{content:'';position:absolute;inset:14px;border:1px solid #ffffff69;border-radius:inherit;pointer-events:none}.placeholder-label{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;padding:24px;color:#466a77;z-index:1}.placeholder-label>span:not(.image-icon):not(.pin-icon){font-size:var(--body-size);letter-spacing:1.8px;font-weight:600}.placeholder-label small{font-size:var(--body-size);opacity:.8}.image-icon{width:29px;height:24px;border:1px solid #6f919d;border-radius:3px;position:relative;margin-bottom:6px}.image-icon:before{content:'';position:absolute;left:6px;top:5px;width:4px;height:4px;border:1px solid #6f919d;border-radius:50%}.image-icon:after{content:'';position:absolute;right:4px;bottom:3px;width:11px;height:8px;border-top:1px solid #6f919d;border-left:1px solid #6f919d;transform:rotate(45deg)}.hero-image{height:100%;border-radius:170px 14px 14px 14px;background:#dbe5cf}.slot-number{position:absolute;bottom:29px;left:30px;font-size:var(--body-size);letter-spacing:1.8px;color:#547581}.hero-caption{position:absolute;bottom:40px;left:-40px;display:flex;align-items:center;gap:20px;background:#fff;box-shadow:0 15px 50px #253b3510;padding:23px 31px;border-radius:5px;font-size:var(--body-size);line-height:normal}.caption-mark{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--pale);color:var(--teal);font-size:2rem;font-weight:400}.benefit-strip{background:var(--navy);color:white;padding:36px 0}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.benefits>div{display:flex;align-items:center;justify-content:center;gap:24px;border-right:1px solid #648592}.benefits>div:last-child{border:0}.benefits>div>span{font-family:var(--heading);font-size:1.2rem;display:grid;place-items:center;border:1px solid #94b957;border-radius:50%;width:61px;height:61px;color:#c8e0a1;font-weight:500;flex-shrink:0}.benefits p{font-size:var(--body-size);line-height:normal;margin:0;color:#d4e2e7}.benefits strong{color:#fff;font-weight:500}.credentials{text-align:center;padding:44px 0 38px;border-bottom:1px solid var(--line)}.credentials>p{font-size:var(--body-size);font-weight:600;margin-bottom:17px}.credential-list{display:flex;justify-content:center;align-items:center;gap:27px;font-size:var(--body-size);color:var(--muted)}.credential-list i{width:4px;height:4px;background:#96b5bd;border-radius:50%}.section-heading{text-align:center;max-width:760px;margin:0 auto 49px}.section-heading .eyebrow{margin-bottom:16px}.section-heading>p:last-child{color:var(--muted);font-size:var(--body-size);line-height:normal;margin-bottom:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:var(--pale);border:1px solid transparent;border-radius:13px;padding:31px 29px 29px;transition:transform .3s,background .3s,border-color .3s}.service-card:hover{transform:translateY(-5px);background:#edf3f4;border-color:#aac5cb}.service-card svg{height:29px;width:29px;stroke:var(--teal);fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;margin-bottom:25px}.service-card h3{margin-bottom:13px;font-size:var(--body-size)}.service-card p{font-size:var(--body-size);color:var(--muted);margin-bottom:0;line-height:normal}.section-foot{display:flex;align-items:center;justify-content:center;gap:22px;padding-top:37px}.section-foot p{font-size:var(--body-size);color:var(--muted);margin:0}.section-foot .text-link{font-size:var(--body-size)}.about-section{background:var(--pale);margin-top:34px;padding:65px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:88px;align-items:center}.team-image{min-height:445px;border-radius:10px 10px 110px 10px;margin-top:-108px;background:#d6e1c8}.about-copy{padding-block:10px}.about-copy>p:not(.eyebrow){color:var(--muted);font-size:var(--body-size)}.about-copy .text-link{margin-top:6px}.statement{text-align:center;background:var(--navy);color:white;padding:76px 0}.statement .eyebrow{color:#bdd492;font-size:var(--body-size)}.statement-text{font-family:var(--heading);font-size:clamp(1.8rem,3.2vw,2.75rem);line-height:normal;letter-spacing:-1.1px;margin-bottom:22px}.statement-text em{font-family:Georgia,serif;color:#c6db9e;font-weight:400}.statement .container>span{font-size:var(--body-size);color:#b8d0d8}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:54px;padding-top:12px}.step-number{font-family:var(--heading);color:var(--teal);font-size:var(--body-size);display:flex;align-items:center;gap:20px;margin-bottom:26px}.step-number:after{content:'';display:block;flex:1;height:1px;background:var(--line)}.steps h3{font-size:1.35rem;margin-bottom:15px}.steps p{font-size:var(--body-size);color:var(--muted);margin-bottom:0}.care-banner{display:grid;grid-template-columns:1fr 1fr;border-radius:10px;overflow:hidden;background:var(--navy)}.banner-image{background:#c3d7dc;min-height:480px}.banner-copy{padding:54px;color:#fff}.banner-copy h2{font-size:2.4rem}.banner-copy .eyebrow{color:#9ad0d3;font-size:var(--body-size)}.check-list{padding:0;list-style:none;margin:27px 0 31px;display:grid;gap:13px;font-size:var(--body-size);color:#d1e2e7}.check-list li{display:flex;gap:13px;align-items:flex-start}.check-list li:before{content:'✓';color:#85c7cc}.people-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.person-image{height:255px;border-radius:8px;background:#d8e4e7;margin-bottom:24px}.people-grid article:nth-child(2) .person-image{background:#c6dadd}.people-grid article:nth-child(3) .person-image{background:#dfe8eb}.people-grid article:nth-child(4) .person-image{background:#bed5da}.people-grid h3{font-size:var(--body-size);margin-bottom:10px}.people-grid p{font-size:var(--body-size);color:var(--muted);line-height:normal;margin:0}.conditions-section{background:var(--pale);padding:84px 0}.conditions{display:flex;flex-wrap:wrap;justify-content:center;gap:13px;max-width:970px;margin:auto}.conditions>span{border:1px solid #bccfd5;border-radius:5px;padding:13px 21px;background:#ffffff45;font-size:var(--body-size);transition:background .2s}.conditions>span:hover{background:#fff}.conditions-note{font-size:var(--body-size);text-align:center;color:var(--muted);margin:30px 0 27px}.center{text-align:center}.ready-strip{background:var(--mist);padding:48px 0}.ready-strip .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.ready-strip .eyebrow{margin-bottom:10px;font-size:var(--body-size);color:var(--navy)}.ready-strip h2{margin:0;font-size:2rem}.reviews-section{display:grid;grid-template-columns:1fr 1fr 1fr;gap:26px}.reviews-intro{padding-right:25px}.reviews-intro h2{font-size:2.3rem}.reviews-intro p:last-child{font-size:var(--body-size);color:var(--muted)}.review-placeholder{border:1px solid var(--line);border-radius:8px;padding:27px;background:#f6f9fa;display:flex;flex-direction:column}.quote-mark{font-family:Georgia,serif;font-size:3rem;color:#7aa6b0;line-height:normal}.review-placeholder>p{font-size:var(--body-size);color:var(--muted);line-height:normal}.review-placeholder>div{display:flex;gap:12px;align-items:center;margin-top:auto;font-size:var(--body-size)}.review-placeholder small{font-size:var(--body-size);color:var(--muted)}.avatar-placeholder{height:35px;width:35px;border-radius:50%;background:#d6e3e7;flex-shrink:0}.contact-section{background:#eff3f4;padding-top:90px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-bottom:64px}.contact-copy>p:not(.eyebrow){font-size:var(--body-size);color:var(--muted);max-width:450px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:20px 30px;margin-top:33px}.detail-label{font-size:var(--body-size);letter-spacing:1.5px;font-weight:700;display:block;color:var(--teal);margin-bottom:5px}.contact-details p,.contact-details a{font-size:var(--body-size);margin:0;overflow-wrap:anywhere}.contact-details a[href]:hover{text-decoration:underline}.hours{margin-top:25px;max-width:340px}.hours h3{font-size:var(--body-size);margin-bottom:12px}.hours dl{margin:0;font-size:var(--body-size);color:var(--muted)}.hours dl>div{display:flex;justify-content:space-between;gap:18px}.hours dd{margin:0;text-align:right}.contact-form{background:white;padding:34px;border-radius:10px;align-self:start;box-shadow:0 8px 36px #253b3505}.contact-form h3{font-size:1.4rem;margin-bottom:12px}.form-note{font-size:var(--body-size);color:var(--muted);line-height:normal;margin-bottom:23px}.contact-form label{display:flex;flex-direction:column;gap:8px;font-size:var(--body-size);font-weight:600;margin-bottom:17px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}input,textarea{border:1px solid #d4e0e4;background:#fafcfc;border-radius:5px;width:100%;padding:12px 14px;color:var(--navy);font-size:var(--body-size);line-height:normal;font-weight:400}input::placeholder,textarea::placeholder{color:#6a7f87;opacity:1}textarea{resize:vertical;min-height:130px}.contact-form .button{width:100%;justify-content:space-between}.form-status:empty{display:none}.form-status{font-size:var(--body-size);padding-top:18px;margin:0;color:var(--teal)}.map-placeholder{height:280px;border-radius:10px;transform:translateY(65px);margin-top:-65px;background:#d4e1e4}.pin-icon{height:25px;width:20px;border:1px solid #6f919d;border-radius:50% 50% 50% 0;transform:rotate(-45deg);margin-bottom:8px}.pin-icon:after{content:'';position:absolute;inset:6px;border:1px solid #6f919d;border-radius:50%}footer{background:var(--navy);color:#d6e6ea;padding-top:122px}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr 1fr 1fr;gap:38px;padding-bottom:55px}.footer-grid .brand{color:white}.footer-grid p{font-size:var(--body-size);line-height:normal;margin:23px 0 0}.footer-grid h3{font-size:var(--body-size);color:white;margin-bottom:20px}.footer-grid>div>a:not(.brand){display:block;font-size:var(--body-size);margin-bottom:5px}.footer-grid>div>a:hover{text-decoration:underline}.footer-grid>div>span{font-size:var(--body-size);display:block;margin-top:10px}.footer-grid>div:nth-child(3) p{margin-top:0}.footer-cta .button{font-size:var(--body-size);min-height:47px}.footer-bottom{padding-block:22px;border-top:1px solid #547584;display:flex;justify-content:space-between;gap:18px;font-size:var(--body-size);color:#bad0d8}dialog{border:1px solid var(--line);border-radius:12px;max-width:520px;width:calc(100% - 40px);color:var(--navy);padding:48px;box-shadow:0 25px 100px #253b3533}dialog::backdrop{background:#082b3acf;backdrop-filter:blur(5px)}dialog h2{font-size:2.15rem}dialog>p:not(.eyebrow){font-size:var(--body-size);color:var(--muted)}dialog .eyebrow{margin-top:8px}.dialog-close{position:absolute;top:9px;right:12px;background:none;border:0;font-size:1.8rem;width:40px;height:40px}.booking-note{border-top:1px solid var(--line);padding-top:16px}.has-image:before,.has-image .placeholder-label,.has-image .slot-number{display:none}.has-image>img{position:absolute;inset:0}.reveal{opacity:1}.motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.3,1)}.motion-ready .reveal.visible{opacity:1;transform:translateY(0)}.motion-ready .map-placeholder.reveal{transform:translateY(87px)}.motion-ready .map-placeholder.visible{transform:translateY(65px)}.services .reveal:nth-child(3n+2),.people-grid .reveal:nth-child(2),.steps .reveal:nth-child(2){transition-delay:.08s}.services .reveal:nth-child(3n+3),.people-grid .reveal:nth-child(3),.steps .reveal:nth-child(3){transition-delay:.16s}.people-grid .reveal:nth-child(4){transition-delay:.24s}@keyframes enter{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1600px){.hero-grid{min-height:710px}.hero-visual{height:585px}}
@media(max-width:1100px){.container{width:calc(100% - 64px)}.nav-wrap{gap:24px}.nav-wrap nav{gap:20px}.brand-name{font-size:1.25rem}.hero-grid{gap:30px;min-height:610px}.hero h1{font-size:3.6rem}.hero-visual{height:495px;margin-right:0}.hero-caption{left:-22px;padding:18px 22px}.hero-copy .button-row{gap:18px}.hero-copy .text-link{font-size:var(--body-size)}.about-grid{gap:55px}.banner-copy{padding:40px}.contact-grid{gap:55px}.footer-grid{gap:25px}.service-card{padding:26px}.people-grid{gap:17px}}
@media(max-width:1100px){.nav-wrap{min-height:82px}.header-book{margin-left:auto}.menu-toggle{display:flex;width:44px;height:44px;justify-content:center;align-items:center;flex-direction:column;gap:7px;border:1px solid var(--line);border-radius:4px;background:transparent}.menu-toggle span{width:19px;height:1px;background:var(--navy);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.nav-wrap nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;box-shadow:0 12px 20px #253b3512;padding:18px 32px;border-top:1px solid var(--line)}.nav-wrap nav.open{display:grid;gap:3px}.nav-wrap nav a{font-size:var(--body-size);padding:12px 0}.hero-grid{gap:30px;min-height:560px}.hero h1{font-size:2.95rem;letter-spacing:-2px}.hero-copy{padding-block:50px}.hero .eyebrow{font-size:var(--body-size)}.hero-description{font-size:var(--body-size)}.hero-visual{height:435px}.hero-image{border-top-left-radius:120px}.hero-caption{left:-18px;bottom:24px;padding:17px;font-size:var(--body-size);gap:12px}.caption-mark{height:35px;width:35px}.hero-note{font-size:var(--body-size)}.benefits{gap:20px}.benefits>div{gap:15px;justify-content:flex-start}.benefits>div>span{width:49px;height:49px;font-size:var(--body-size)}.benefits p{font-size:var(--body-size)}.section{padding-block:78px}.services{grid-template-columns:repeat(2,1fr)}.section-foot{flex-direction:column;gap:10px}.about-grid{gap:35px}.team-image{min-height:420px;margin-top:-55px}.about-section{margin-top:15px}.about-copy h2{font-size:2.25rem}.steps{gap:28px}.banner-copy{padding:33px}.banner-copy h2{font-size:2rem}.banner-copy .eyebrow{font-size:var(--body-size)}.people-grid{grid-template-columns:repeat(2,1fr);gap:35px 24px}.person-image{height:290px}.reviews-section{grid-template-columns:1fr 1fr}.reviews-intro{grid-column:1/-1}.reviews-intro h2 br{display:none}.reviews-intro p:last-child{margin-bottom:0}.contact-grid{gap:35px}.contact-form{padding:26px}.form-row{grid-template-columns:1fr;gap:0}.contact-details{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.footer-bottom{flex-wrap:wrap}}
@media(max-width:600px){html{scroll-padding-top:92px}.container{width:calc(100% - 40px)}.topbar{font-size:var(--body-size)}.topbar .container{padding-block:7px}.nav-wrap{gap:12px;min-height:77px}.brand-name{font-size:var(--body-size);letter-spacing:-.7px}.brand-tag{font-size:var(--body-size);letter-spacing:2px;margin-top:6px}.header-book{font-size:var(--body-size)!important;min-height:40px!important;padding:10px 12px!important;gap:8px!important}.header-book>span{display:none}.menu-toggle{height:40px;width:40px;flex-shrink:0}.hero-grid{grid-template-columns:1fr;gap:0;padding-bottom:45px}.hero-copy{padding:48px 0 34px}.hero h1{font-size:clamp(2.7rem,10.5vw,3.65rem);line-height:normal;letter-spacing:-2.3px}.hero-description{max-width:440px;font-size:var(--body-size);margin-bottom:26px}.hero .eyebrow{font-size:var(--body-size);margin-bottom:18px}.hero-visual{height:350px;margin-left:18px}.hero-image{border-radius:100px 8px 8px 8px}.hero-caption{bottom:24px;left:-18px;padding:17px 23px;font-size:var(--body-size)}.hero-note{margin-top:23px;font-size:var(--body-size)}.hero-copy .button-row{gap:18px}.hero-copy .button{font-size:var(--body-size);padding-inline:18px;gap:18px}.hero-copy .text-link{font-size:var(--body-size);gap:10px}.slot-number{font-size:var(--body-size);bottom:21px;left:25px}.hero-image .slot-number{bottom:118px}.benefit-strip{padding:26px 0}.benefits{gap:0}.benefits>div{flex-direction:column;gap:12px;text-align:center;padding-inline:10px;justify-content:flex-start}.benefits>div>span{width:42px;height:42px;font-size:var(--body-size)}.benefits p{font-size:var(--body-size);line-height:normal}.credentials{padding-block:29px}.credentials>p{font-size:var(--body-size)}.credential-list{gap:12px;flex-wrap:wrap;font-size:var(--body-size);line-height:normal}.credential-list i{display:none}.credential-list span{border:1px solid var(--line);padding:8px 12px;border-radius:4px}.section{padding-block:64px}h2{font-size:2rem;letter-spacing:-1px}.section-heading{margin-bottom:31px}.section-heading .eyebrow{font-size:var(--body-size)}.section-heading>p:last-child{font-size:var(--body-size)}.desktop-break{display:none}.services{gap:12px}.service-card{padding:23px 19px;border-radius:10px}.service-card svg{margin-bottom:20px;width:25px;height:25px}.service-card h3{font-size:var(--body-size);line-height:normal;letter-spacing:-.3px}.service-card p{font-size:var(--body-size);line-height:normal}.section-foot{text-align:center;padding-top:27px}.section-foot p{font-size:var(--body-size)}.section-foot .text-link{font-size:var(--body-size)}.about-section{margin-top:26px;padding:0 0 45px}.about-grid{grid-template-columns:1fr;gap:30px}.team-image{min-height:340px;margin-top:-25px;border-bottom-right-radius:80px}.about-copy{padding:0}.about-copy .eyebrow{font-size:var(--body-size)}.about-copy h2{font-size:2rem}.statement{padding:55px 0}.statement-text{font-size:1.75rem;letter-spacing:-.6px}.statement .container>span{font-size:var(--body-size)}.steps{grid-template-columns:1fr;gap:30px;padding:0}.step-number{margin-bottom:16px;font-size:var(--body-size)}.steps h3{font-size:1.2rem;margin-bottom:12px}.steps p{font-size:var(--body-size)}.care-banner{grid-template-columns:1fr}.banner-image{min-height:285px}.banner-copy{padding:36px 28px}.banner-copy h2{font-size:2rem}.banner-copy .eyebrow{font-size:var(--body-size)}.check-list{font-size:var(--body-size)}.people-grid{gap:27px 15px}.person-image{height:210px;margin-bottom:18px}.person-image .placeholder-label{padding:14px}.people-grid h3{font-size:var(--body-size)}.people-grid p{font-size:var(--body-size)}.placeholder-label small{font-size:var(--body-size)}.conditions-section{padding:60px 0}.conditions{gap:9px}.conditions>span{font-size:var(--body-size);padding:10px 13px}.conditions-note{font-size:var(--body-size);line-height:normal}.ready-strip{padding-block:35px}.ready-strip .container{flex-direction:column;text-align:center;gap:23px}.ready-strip h2{font-size:1.85rem}.ready-strip .eyebrow{font-size:var(--body-size)}.reviews-section{grid-template-columns:1fr;gap:18px}.reviews-intro{padding:0 0 8px}.reviews-intro h2{font-size:2rem}.review-placeholder{padding:26px}.review-placeholder p{font-size:var(--body-size)}.contact-section{padding-top:58px}.contact-grid{grid-template-columns:1fr;gap:30px;padding-bottom:40px}.contact-details{grid-template-columns:1fr 1fr;gap:22px}.contact-copy h2{font-size:2rem}.contact-form{padding:26px 22px}.contact-form input,.contact-form textarea{font-size:var(--body-size)}.form-row{grid-template-columns:1fr 1fr;gap:12px}.map-placeholder{height:220px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 22px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid .brand-name{font-size:1.5rem}.footer-grid .brand-tag{font-size:var(--body-size)}.footer-grid p{font-size:var(--body-size)}.footer-cta{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:15px}.footer-cta h3{margin:0}.footer-bottom{font-size:var(--body-size);gap:12px}.footer-bottom>span:nth-child(2){order:3;width:100%}.footer-bottom>a{margin-left:auto}dialog{padding:35px 27px}dialog h2{font-size:1.9rem}}
@media(max-width:370px){.container{width:calc(100% - 32px)}.brand-name{font-size:var(--body-size)}.nav-wrap{gap:8px}.header-book{padding-inline:9px!important}.brand-tag{font-size:var(--body-size)}.hero-copy .button-row{gap:15px}.services{grid-template-columns:1fr}.hero-note{font-size:var(--body-size)}.person-image{height:180px}.contact-details,.form-row{grid-template-columns:1fr}.form-row{gap:0}.topbar{font-size:var(--body-size)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.motion-ready .map-placeholder.reveal{transform:translateY(65px)}}

/* Template type rules: normal text 18px; button labels 20px, uppercase and bold. */
:root{--body-size:1.125rem;--button-size:1.125rem}
body{font-size:var(--body-size)}
p:not(.statement-text),input,textarea,label,dt,dd{font-size:var(--body-size)}
button,.button,.button.small,.header .header-book,.hero-copy .button,.footer-cta .button{font-size:var(--button-size)!important;font-weight:700!important;text-transform:uppercase;line-height:normal}
.button{min-height:60px;padding:16px 24px;letter-spacing:.025em}
.button.small{padding:14px 20px;min-height:56px}
.text-link{font-size:var(--body-size)}
button.text-link{letter-spacing:.015em}
.brand-tag{font-size:var(--body-size);letter-spacing:.04em;line-height:normal}
.eyebrow{letter-spacing:.08em}
.topbar{font-size:var(--body-size)}
.topbar .container{display:flex;align-items:center;justify-content:space-between;gap:18px 32px;padding-block:12px;flex-wrap:wrap}
.topbar-item{display:inline-flex;align-items:center;gap:12px;min-width:0;line-height:normal}
.topbar-item svg{width:22px;height:22px;flex:0 0 22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.topbar span span{margin-left:0}
.topbar-address{flex:1 1 360px}
.topbar-address span{overflow-wrap:anywhere}
.topbar a[href]:hover{text-decoration:underline}
.hero-description,.section-heading>p:last-child,.about-copy>p:not(.eyebrow),.steps p,.service-card p,.people-grid p,.reviews-intro p:last-child,.review-placeholder>p,.contact-copy>p:not(.eyebrow),.contact-details p,.contact-details a,.footer-grid p{font-size:var(--body-size)}
.hero-grid{gap:40px}.hero .button-row{align-items:flex-start;gap:22px}.hero-note{align-items:flex-start}.hero-caption{font-size:var(--body-size);max-width:calc(100% + 20px)}
.check{flex-shrink:0;width:23px;height:23px}.section-foot{flex-wrap:wrap}.credential-list{flex-wrap:wrap}
.person-image .placeholder-label{padding:20px}.placeholder-label{max-width:100%}.slot-number{max-width:calc(100% - 50px);line-height:normal}
.hours{max-width:100%}.hours dl>div{align-items:baseline}.hours dt,.hours dd{overflow-wrap:anywhere}
.form-note,.footer-bottom>span{font-size:.875rem!important}.footer-bottom>a{font-size:var(--body-size)}
.contact-form .form-status{font-size:var(--body-size)}
@media(max-width:1100px){.header .nav-wrap{gap:24px}.header .header-book{margin-left:auto}.header .menu-toggle{flex-shrink:0}.nav-wrap nav a{font-size:var(--body-size)}.hero-grid{gap:28px}.hero-copy .button-row{flex-direction:column;gap:20px}.contact-grid{gap:35px}.form-row{grid-template-columns:1fr;gap:0}.footer-grid{gap:35px}}
@media(max-width:700px){.header .header-book{display:none}.header .menu-toggle{margin-left:auto}.header .nav-wrap{gap:14px;min-height:92px}.topbar .container{gap:9px;padding-block:12px}.topbar-address{flex-basis:100%}.topbar-item{gap:10px}.hero-caption{left:-18px;padding:20px;gap:14px}.ready-strip .container{flex-direction:column;align-items:flex-start}.footer-bottom{align-items:center}.footer-bottom>span{max-width:100%}}
@media(max-width:600px){.services{grid-template-columns:1fr}.service-card{padding:28px}.hero-grid{gap:0}.hero h1{font-size:clamp(2.7rem,10.5vw,3.65rem)}.hero-copy .button-row{align-items:stretch}.hero-copy .text-link{align-self:flex-start}.hero-copy .button{width:100%;gap:18px}.hero-note{line-height:normal}.benefits{grid-template-columns:1fr;gap:22px}.benefits>div{flex-direction:row;text-align:left;justify-content:flex-start;gap:24px;padding:0 0 22px;border-right:0;border-bottom:1px solid #648592}.benefits>div:last-child{border:0;padding-bottom:0}.benefits>div>span{width:54px;height:54px}.benefits p{font-size:var(--body-size)}.people-grid{grid-template-columns:1fr;gap:32px}.person-image{height:290px}.conditions>span{font-size:var(--body-size);padding:13px 17px}.contact-details{grid-template-columns:1fr}.footer-cta{flex-direction:column;align-items:flex-start;gap:18px}.footer-cta .button{width:auto}.footer-grid{column-gap:20px}.brand-name{font-size:1.25rem}.brand-tag{font-size:var(--body-size);letter-spacing:0}.section-foot{text-align:left;align-items:flex-start}.section-foot button{max-width:100%;text-align:left}.section-foot button span{flex-shrink:0}.placeholder-label>span:not(.image-icon):not(.pin-icon){letter-spacing:.035em}.slot-number{letter-spacing:.035em}.form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:370px){.header .nav-wrap{gap:10px}.brand-name{font-size:var(--body-size)}.brand-tag{font-size:var(--body-size);letter-spacing:-.02em}.container{width:calc(100% - 32px)}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child,.footer-cta{grid-column:auto}}

/* Softer surfaces, Atlas branding and the movement section. */
:root{--radius-small:20px;--radius-card:32px;--radius-large:40px}
*,*::before,*::after{line-height:normal}
.button,.button.small,.menu-toggle,input,textarea,.credential-list span,.conditions>span{border-radius:var(--radius-small)}
.service-card,.review-placeholder,.contact-form,dialog{border-radius:var(--radius-card)}
.person-image,.map-placeholder{border-radius:var(--radius-card)}
.hero-image{border-radius:180px 24px 24px 24px}.team-image{border-radius:24px 24px 120px 24px}
.clinic-logo{display:block;width:245px;max-width:100%;height:auto;object-fit:contain}
.header .nav-wrap{gap:28px;min-height:104px}.header .brand{flex-shrink:0}
.footer-grid .brand{background:white;border-radius:16px;padding:18px 20px;max-width:280px}.footer-grid .clinic-logo{width:230px}
.hero-image .slot-number{bottom:29px}
.movement-section{position:relative;isolation:isolate;background:var(--navy);color:white;overflow:hidden;margin-top:0}
.movement-backdrop{position:absolute;inset:0;background:#253b35;z-index:-2;pointer-events:none}
.movement-backdrop::before{display:none}
.movement-backdrop::after{content:'';position:absolute;inset:0;background:rgba(7,27,38,.62);z-index:1}
.movement-backdrop .placeholder-label{position:absolute;bottom:22px;left:24px;padding:0;color:#b3cbd2;z-index:2;opacity:.8}
.movement-backdrop .placeholder-label>span{font-size:var(--body-size);letter-spacing:0;font-weight:400}
.movement-content{padding-block:84px 94px}
.movement-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.movement-intro h2{font-size:clamp(2rem,3vw,2.8rem);max-width:520px;letter-spacing:-1px;margin-bottom:28px}
.movement-intro>p{font-size:var(--body-size);color:#d4e2e7;max-width:440px}
.movement-questions{list-style:none;margin:0;padding:0;display:grid;gap:28px}
.movement-questions li{display:flex;align-items:center;gap:18px;font-size:var(--body-size);font-weight:600}
.movement-questions svg{width:36px;height:36px;flex:0 0 36px;stroke:#91b554;stroke-width:2.4;fill:none;stroke-linecap:round;stroke-linejoin:round}
.movement-cta{text-align:center;margin:48px auto 0;max-width:750px}
.movement-cta p{font-size:var(--body-size);color:#e2edf0;margin-bottom:28px}
.movement-cta .button{min-width:190px}
@media(max-width:1100px){.header .nav-wrap{gap:24px}.clinic-logo{width:230px}.movement-grid{gap:45px}.movement-content{padding-block:65px 90px}}
@media(max-width:700px){.header .nav-wrap{min-height:94px;gap:16px}.clinic-logo{width:min(240px,calc(100vw - 104px))}.movement-grid{grid-template-columns:1fr;gap:28px}.movement-intro h2{max-width:540px}.movement-intro>p{max-width:none}.movement-questions{gap:24px}.movement-content{padding-block:55px 95px}.movement-backdrop .placeholder-label{bottom:23px;left:20px;right:20px;text-align:center}.movement-cta{margin-top:35px}.movement-backdrop .placeholder-label>span{font-size:var(--body-size)}}
@media(max-width:600px){.hero-image{border-radius:115px 22px 22px 22px}.team-image{border-radius:22px 22px 95px 22px}.service-card,.person-image,.review-placeholder,.contact-form{border-radius:var(--radius-card)}.hero-image .slot-number{bottom:24px}.footer-grid .brand{max-width:270px}.movement-questions li{gap:14px}.movement-questions svg{width:32px;height:32px;flex-basis:32px}}

/* Hero rating line and rounder template surfaces. */
.hero-rating{display:flex;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:wrap;font-size:var(--body-size);margin:0 0 22px}
.rating-stars{color:#f4c20d;font-size:22px;letter-spacing:0;white-space:nowrap}
.hero-rating .google-icon{width:24px;height:24px;object-fit:contain;flex:0 0 24px}
.rating-label{font-size:var(--body-size);font-weight:600}
.hero-image{border-radius:200px 36px 36px 36px}.team-image{border-radius:36px 36px 145px 36px}
.movement-section{border-radius:var(--radius-large)}
.footer-grid .brand{border-radius:24px}
@media(max-width:700px){.movement-section{border-radius:32px}}
@media(max-width:600px){.hero-image{border-radius:140px 32px 32px 32px}.team-image{border-radius:32px 32px 115px 32px}.service-card,.person-image,.review-placeholder,.contact-form{border-radius:var(--radius-card)}}
@media(max-width:370px){.hero-rating{gap:7px}.rating-stars{font-size:20px}.hero-rating .google-icon{width:22px;height:22px;flex-basis:22px}}

/* Smaller header brand, tighter buttons and the floating review shortcut. */
.header .clinic-logo{width:210px}
.button{padding:11px 19px;min-height:50px}
.button.small{padding:9px 15px;min-height:46px}
.floating-review{position:fixed;left:max(20px,env(safe-area-inset-left));bottom:max(20px,env(safe-area-inset-bottom));z-index:25;display:flex;flex-direction:column;align-items:center;gap:8px;width:232px;padding:20px 16px;background:#fff;color:#111;text-align:center;border:1px solid #f0f1f2;border-radius:32px;box-shadow:0 8px 36px #253b351a;text-decoration:none;animation:review-in .25s ease-out}
.floating-review[hidden]{display:none!important}
.floating-review-title{font-size:18px;font-weight:800}
.floating-review-stars{font-size:32px;letter-spacing:1px;color:#fbbc04;white-space:nowrap}
.floating-review-caption{font-size:18px;font-weight:500}
.floating-review:hover{box-shadow:0 10px 40px #253b3530}
.floating-review:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
@keyframes review-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.header .clinic-logo{width:200px}}
@media(max-width:700px){.header .clinic-logo{width:min(205px,calc(100vw - 120px))}}
@media(max-width:600px){.hero-copy .button{padding-inline:13px}.floating-review{width:208px;left:max(12px,env(safe-area-inset-left));bottom:max(12px,env(safe-area-inset-bottom));padding:14px 12px;gap:5px;border-radius:26px}.floating-review-stars{font-size:28px}}

/* Header navigation and light footer branding. */
.header #navigation a{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.footer-grid .brand{background:transparent;padding:0;border-radius:0}

/* Oceanside content components, using the latest template's typography and geometry. */
.button{background:var(--teal);border-color:var(--teal)}.button:hover{background:#406400;border-color:#406400}.button.light{background:var(--pale);color:var(--navy);border-color:var(--pale)}
.hero h1 em{color:var(--teal)}.hero .eyebrow{max-width:470px}.hero-description{max-width:455px}.hero-copy{padding-block:55px}.hero-visual{align-self:stretch;height:auto;min-height:530px;margin-block:48px}.hero-image{min-height:100%}
.benefits>div>span{font-size:18px;width:65px;height:65px}.benefits>div{border-color:#667f70}
.service-card{display:flex;flex-direction:column}.service-card svg{flex-shrink:0}.service-card p{margin-bottom:24px}.service-more{margin-top:auto;align-self:flex-start}
.team-image{min-height:515px}.about-section{background:#eaf0e3}.about-copy .eyebrow{color:var(--teal)}
.visit-note{text-align:center;color:var(--muted);margin:35px 0 0}.steps .step-number{gap:12px;flex-wrap:wrap}.steps .step-number:after{min-width:30px}
.people-grid article{display:flex;flex-direction:column}.people-grid p{margin-bottom:24px}.person-image{flex-shrink:0;background:#dce6d2}.people-grid article:nth-child(even) .person-image{background:#dde7e8}
.neuropathy-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.neuropathy-grid>div>p:not(.eyebrow){color:var(--muted);margin-bottom:28px}.neuropathy-panel{background:white;border:1px solid var(--line);padding:36px;border-radius:var(--radius-card)}.neuropathy-panel .conditions{justify-content:flex-start;gap:10px}.neuropathy-panel .conditions span{background:#f3f6ef;border-color:#d4dec8}.neuropathy-panel>p{margin:24px 0 0}
.review-placeholder{margin:0}.review-placeholder blockquote{margin:8px 0 32px;font-size:18px}.review-placeholder figcaption{display:flex;align-items:center;gap:12px;margin-top:auto;font-size:18px}.review-placeholder figcaption small{font-size:18px}.avatar-placeholder{display:grid;place-items:center;background:#e4edda;color:#4f6a35}.quote-mark{color:#7b9d4d}
.contact-details{grid-template-columns:1fr}.hours{max-width:430px}.hours dl>div{gap:18px;margin-bottom:9px}.hours-note{margin-top:15px;color:var(--muted);font-size:18px}.service-source{display:block;margin-top:24px;font-size:18px;text-decoration:underline;color:var(--muted)}
/* A light footer lets the supplied full-color logo sit directly on its background. */
footer{background:#fff;color:var(--navy)}.footer-grid h3,.footer-grid .brand{color:var(--navy)}.footer-bottom{color:var(--muted);border-color:var(--line)}.footer-grid .brand{padding:0;background:transparent;max-width:255px}.footer-grid .clinic-logo{width:255px}.footer-cta .button.light{background:var(--teal);color:#fff;border-color:var(--teal)}
@media(max-width:1100px){.neuropathy-grid{gap:36px}.hero-visual{min-height:460px}.hero .hero-copy{padding-block:45px}.hero h1{font-size:3rem}.team-image{min-height:550px}.contact-grid{gap:36px}}
@media(max-width:700px){.neuropathy-grid{grid-template-columns:1fr;gap:30px}.neuropathy-panel{padding:28px}.header .nav-wrap{min-height:85px}.hero-visual{min-height:380px}.hero h1{font-size:2.8rem}.team-image{min-height:440px}}
@media(max-width:600px){.hero-visual{height:350px;min-height:350px;margin-block:0}.hero-image{height:100%}.hero .hero-copy{padding-top:40px;padding-bottom:35px}.hero h1{font-size:clamp(2.65rem,10vw,3.4rem)}.team-image{min-height:365px}.neuropathy-panel{padding:28px 23px}.hours dl>div{flex-wrap:wrap;gap:5px 20px}.hours dd{margin-left:auto}.footer-grid .clinic-logo{width:240px}}
