/* Aloe Health v2 - visual revision / 11 October 2026 */
:root {--ink:#262a29;--muted:#636a67;--green:#395d3a;--green-deep:#294e33;--line:#e6e8e3;--white:#fff;--soft:#f7f8f5;--gutter:clamp(22px,5.2vw,88px);--body:'Poppins','Inter','Helvetica Neue',sans-serif;}
html {scroll-padding-top:78px}
body {font-family:var(--body);font-size:17px;font-weight:300;line-height:1.78;letter-spacing:.001em;color:var(--ink);}
p {font-weight:300;line-height:1.82;color:#565e5b;margin-bottom:20px}
h1,h2,h3,h4 {font-family:var(--body);font-weight:300;letter-spacing:-.04em;line-height:1.2;color:#242a27;margin-top:0}
h1 {font-size:clamp(44px,5.2vw,77px);line-height:1.12;letter-spacing:-.05em;margin:0 0 27px}h2{font-size:clamp(29px,3.6vw,46px);margin-bottom:26px}h3{font-size:clamp(21px,2.1vw,26px);letter-spacing:-.027em;margin-bottom:15px}
.section {padding:clamp(70px,9vw,124px) 0}.container{max-width:1420px}.soft,.section.soft{background:#f7f8f5}
.eyebrow{font-size:12px;text-transform:uppercase;font-weight:500;letter-spacing:.16em;color:#66795f;margin-bottom:24px}
.subtitle {font-size:clamp(20px,2vw,28px);font-weight:300;line-height:1.55;letter-spacing:-.025em;margin-bottom:29px;color:var(--ink)}
.text-link{font-size:14px;font-weight:400;line-height:1.55;padding-bottom:3px;border-color:#a5b4a7;text-decoration:none;transition:color .15s;}
.button{background:#365b39;border-color:#365b39;color:#fff;border-radius:26px;padding:14px 24px;font-size:13px;font-weight:400;letter-spacing:.01em;min-height:47px;box-shadow:none;white-space:normal}
.button:hover{background:#27492b;border-color:#27492b}.button.outline{background:transparent;color:#395b3a;border-color:#9dad9f}.button.outline:hover{background:#e9efe9;color:#27492b}.actions{gap:17px;row-gap:13px;margin-top:27px}
.site-header{background:#fff;border-color:#edf0eb}.header-inner{max-width:1640px;padding:20px var(--gutter);min-height:95px;gap:28px}
.brand{font-family:var(--body);font-size:clamp(25px,2.6vw,33px);font-weight:300;letter-spacing:-.045em;gap:11px;white-space:nowrap}
.brand img{width:33px;height:43px;object-fit:contain}.site-header nav{gap:clamp(15px,2.15vw,39px);font-size:12.5px;letter-spacing:.035em;font-weight:400}
.site-header nav>a:not(.button){padding:12px 0}.site-header nav>a:not(.button):hover{color:var(--green)}.site-header nav>a[aria-current=page]:after{bottom:-25px;border-bottom:1px solid var(--green)}
.site-header .button{min-height:45px;padding:13px 24px;font-size:12px}
.site-footer{border-color:var(--line)}.footer-inner{max-width:1640px;padding:28px var(--gutter);gap:25px}.site-footer .brand{font-size:23px}.site-footer .brand img{width:25px;height:31px}.footer-contact{display:flex;gap:26px;flex-wrap:wrap;font-size:12px}.footer-contact a{text-decoration:none;color:#5c685c;white-space:normal}.site-footer nav{gap:26px;font-size:11px;color:#747d76}.footer-inner p{font-size:11px;color:#848c87;white-space:nowrap}
.breadcrumbs{padding-top:20px;padding-bottom:22px;color:#889089;font-size:12px;gap:12px}
/* Full-width homepage photography: text lives on natural white field inside real source image */
.home-fullbleed{position:relative;min-height:clamp(570px,54vw,775px);display:flex;align-items:center;isolation:isolate;background:#fbfbf9}
.home-fullbleed:before{content:'';position:absolute;inset:0;z-index:-2;background-image:url('https://images.squarespace-cdn.com/content/v1/64bc0442cd0dde70740f25a3/b114784a-3000-400a-a936-b1c0c9647897/image-asset.jpg?format=2500w'),url('../assets/plant.jpg');background-size:cover;background-position:center;background-repeat:no-repeat}
.home-fullbleed:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(255,255,255,.93) 0%,rgba(255,255,255,.75) 38%,rgba(255,255,255,.08) 65%,rgba(255,255,255,0) 100%)}
.home-message{padding-top:75px;padding-bottom:85px}.home-message h1{max-width:750px;font-size:clamp(45px,5vw,75px);margin-bottom:26px;line-height:1.11}.home-message p{max-width:590px;font-size:17px;line-height:1.84;margin-bottom:26px}
.home-services-v2{padding:0}.home-service-layout{max-width:none;display:grid;grid-template-columns:minmax(370px,42%) 1fr;min-height:700px;padding:0}.home-services-v2 .service-intro{padding:85px clamp(32px,7vw,124px);align-self:center;max-width:680px}.service-intro h2{font-size:36px;margin-bottom:15px}.service-intro p{font-size:16px;line-height:1.85}.service-intro hr{width:85px;margin:48px 0;background:none;border-color:#d9ded9}.home-services-v2 .photo-wrap{height:100%;min-height:650px;overflow:hidden}.photo-wrap{overflow:hidden}.photo-wrap img{width:100%;height:100%;min-height:100%;object-fit:cover;object-position:center}
.quick-links{background:white}.quick-grid{padding-top:85px;padding-bottom:85px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.quick-grid article{padding:8px 46px 10px;min-width:0}.quick-grid article:first-child{padding-left:0}.quick-grid article:last-child{padding-right:0}.quick-grid article+article{border-left:1px solid var(--line)}.quick-grid h2{font-size:clamp(22px,2.3vw,30px);letter-spacing:-.025em;margin-bottom:21px}.quick-grid p{font-size:15px;min-height:122px;line-height:1.83}
/* Very subdued decorative aloe forms, excluded from text region */
.wide-cta{padding:94px 0 90px;background:#f7f8f5;overflow:hidden}.cta-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 240px;align-items:center;gap:80px}.cta-grid>div:first-child{position:relative;z-index:2}.cta-grid h2{margin-bottom:16px;max-width:720px}.cta-grid p{max-width:670px;font-size:16px}.aloe-ornament{height:165px;position:relative;opacity:.15;transform:rotate(12deg)}.aloe-ornament span{display:block;width:1px;height:175px;background:#476944;position:absolute;bottom:0;left:50%;transform-origin:bottom;transform:rotate(-30deg)}.aloe-ornament span:nth-child(2){transform:rotate(0deg);height:205px}.aloe-ornament span:nth-child(3){transform:rotate(32deg);height:175px}.aloe-ornament span:after{content:'';position:absolute;width:44px;height:120px;border:1px solid #476944;border-radius:100% 0 100% 0;top:7px;left:0;transform:rotate(-7deg);opacity:.6}
/* About */
.about-top{padding-top:58px;padding-bottom:0}.about-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,44%);gap:clamp(35px,6vw,110px);align-items:center}.about-hero-grid>div:first-child{padding-bottom:80px}.about-hero-grid h1{font-size:clamp(44px,4.9vw,68px)}.about-hero-grid p{font-size:15.5px;line-height:1.82}.credential-line{font-size:21px!important;letter-spacing:.05em;color:#5c6a5c!important;margin:-7px 0 30px}.portrait-wrap{align-self:end;max-height:690px;overflow:hidden}.portrait-wrap img{height:100%;width:100%;object-fit:cover;object-position:center top}.about-hero-grid .actions{gap:24px}.image-text-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(35px,7vw,115px);align-items:center}.image-text-grid .photo-wrap{height:410px}.image-text-grid p{font-size:15.5px}.credentials{display:grid;grid-template-columns:1fr 1.2fr 1.15fr;margin-top:45px;gap:45px}.credential-col{padding-left:28px;border-left:1px solid var(--line)}.credential-col:first-child{padding-left:0;border-left:0}.credential-col h3{font-size:23px}.credential-list{padding-left:0;list-style:none}.credential-list li{padding:14px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.75;color:#565f5b}.reviewer-note{margin-top:20px;color:#939b93;font-size:11px!important}.language-section{background:#fff}.language-section p{max-width:890px}.language-section .accordion{margin-top:45px;max-width:1060px}
/* Shared photo heroes */
.hero-photo-split{display:grid;grid-template-columns:50% 50%;min-height:480px;background:#f8f9f7}.hero-text{padding:clamp(55px,7.2vw,105px) clamp(28px,6vw,110px);align-self:center}.hero-text h1{font-size:clamp(43px,4.5vw,66px)}.hero-text p{font-size:15px;line-height:1.83}.hero-photo-split .photo-wrap{min-height:480px;max-height:680px}.hero-photo-split .photo-wrap img{object-fit:cover}.hero-photo-split .photo-wrap img[src*="image-asset.jpg"]{object-position:75% center}
/* Services: light disclosure rows, all prices inside panels */
.service-overview{padding:45px 0 0}.service-overview-grid{display:grid;grid-template-columns:48% 52%;gap:0;padding:0;max-width:100%}.service-overview-grid>div:first-child{padding:clamp(60px,7vw,100px) var(--gutter);align-self:center}.service-overview h1{font-size:clamp(48px,4.7vw,69px)}.service-overview p{font-size:15.5px}.service-overview .photo-wrap{min-height:510px;max-height:600px}.service-tabs{max-width:100%;display:flex;justify-content:center;gap:45px;border-bottom:1px solid var(--line);padding-top:20px;padding-bottom:17px}.service-tabs a{text-decoration:none;font-size:13px;color:#556b58;white-space:nowrap;padding:4px 0}.group-section h2{margin-bottom:33px}.group-section{padding-top:85px;padding-bottom:85px}.service-stack{border-top:1px solid var(--line)}.v2-service{max-width:100%;margin:0}.v2-service summary{display:grid;grid-template-columns:minmax(0,1fr) 120px 24px;min-height:88px;gap:24px;align-items:center;padding:25px 10px;border-bottom:1px solid var(--line);font-size:20px;font-weight:300;letter-spacing:-.01em}.v2-service summary::-webkit-details-marker{display:none}.v2-service .service-title{font-size:19px}.v2-service .service-hint{font-size:12px;color:#839287;text-align:right;letter-spacing:.04em}.v2-service .toggle{margin-left:auto}.v2-service .accordion-body{max-width:1010px;padding:21px 10px 41px}.v2-service .accordion-body p{font-size:15px}.v2-service .accordion-body .text-link{margin-top:14px}.service-pricing{display:flex;flex-wrap:wrap;align-items:center;gap:15px 30px;color:#5f6c61;font-size:13px;margin:0 0 27px;padding:15px 20px;border-left:2px solid #d4dfd2;background:#f9fbf8}.service-pricing span{white-space:nowrap}.service-pricing strong{font-weight:500;color:#39543d;margin-left:5px}.service-pricing .duration{margin-left:auto;font-size:12px;color:#88918c}
/* First Visit */
.practical-rows{margin-top:36px}.practical-rows>div{display:grid;grid-template-columns:minmax(240px,.55fr) 1fr;gap:60px;border-top:1px solid var(--line);padding:33px 0}.practical-rows>div:last-child{border-bottom:1px solid var(--line)}.practical-rows h3{font-size:21px}.practical-rows p{font-size:15px}.practical-rows .button{font-size:12px;margin-top:12px}.constrained{max-width:960px}.constrained p{font-size:16px}.two-col{gap:9vw}.two-col h3{margin-bottom:11px}.two-col p{font-size:15px}
/* Contact */
.contact-head{padding:53px 0 76px}.contact-head .subtitle{max-width:800px}.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:10vw}.contact-details h2{font-size:clamp(34px,3.5vw,50px)}.contact-details p{font-size:15px}.contact-heading{font-size:clamp(22px,2.25vw,34px)!important;overflow-wrap:anywhere;margin:0 0 15px}.contact-heading a{font-weight:300;text-decoration:none;border-bottom:1px solid #778a7c}.contact-heading.email{margin-bottom:32px}.contact-icon{font-size:17px;font-weight:300;margin-right:15px;color:#7b8f7c;text-decoration:none}.clinic-hours{padding-top:45px;max-width:440px}.clinic-hours h3{font-size:21px;margin-bottom:8px}.clinic-hours .small{font-size:13px}.map-frame{min-height:430px;background:#f3f5f3;border:1px solid #edf0ec}.map-frame iframe{display:block;width:100%;min-height:430px;border:0}
/* Insurance */
.split-coverage{display:grid;grid-template-columns:33% 1fr;gap:8%;align-items:center}.payer-logo img{max-width:230px;max-height:150px}.insurer-grid{margin-top:40px;margin-bottom:30px}
/* Booking: preserve full prototype picker mechanics, lighter presentation */
.booking-top{padding:52px 0 31px}.booking-top p{font-size:15px}.booking-layout{grid-template-columns:minmax(0,1.8fr) minmax(280px,.9fr);gap:40px}.booking-widget{border:1px solid #e3e8e2;padding:29px}.booking-row{padding:17px 0;gap:15px}.booking-row h3{font-size:16px;letter-spacing:0;font-weight:400;margin-bottom:2px}.booking-price{font-size:12px;color:#758176}.booking-row .button{border-radius:23px}.booking-help{background:#f7f8f5;padding:40px 30px 80px}.booking-help h2{font-size:30px}.booking-help p{font-size:14px}.booking-help .small{font-size:12px}.widget-heading{font-size:22px}.selection-price{font-weight:400}.review-hint{padding-top:27px;margin-top:50px;border-top:1px solid #e2e6df}
/* Legal and privacy */
.legal-simple,.privacy-simple{min-height:540px;padding-top:65px;padding-bottom:115px}.legal-simple h1,.privacy-simple h1{font-size:clamp(44px,4.8vw,66px);margin-bottom:45px}.legal-simple p{margin-bottom:26px}
/* Why */
.concern-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin:32px 0 38px}.concern-grid span{font-size:15px;padding:16px 0;border-bottom:1px solid var(--line)}
@media (max-width:1100px){.site-header nav{gap:18px;font-size:12px}.header-inner{gap:10px}.quick-grid article{padding-left:25px;padding-right:25px}.cta-grid{grid-template-columns:minmax(0,1fr) 150px;gap:30px}.service-overview-grid>div:first-child{padding-left:var(--gutter);padding-right:40px}.booking-layout{gap:25px}}
@media (max-width:900px){.header-inner{padding:16px 30px;min-height:80px}.site-header nav{font-size:15px}.site-header nav>a[aria-current=page]:after{bottom:0}.home-fullbleed{min-height:610px}.home-message h1{font-size:54px}.home-fullbleed:after{background:linear-gradient(90deg,#ffffffed 0%,#ffffffbf 55%,transparent 100%)}.home-service-layout{grid-template-columns:47% 53%;min-height:0}.home-services-v2 .service-intro{padding:50px 30px}.home-services-v2 .photo-wrap{min-height:610px}.quick-grid article{padding:4px 17px}.quick-grid p{min-height:170px}.about-hero-grid{gap:35px}.credentials{gap:25px}.credential-col{padding-left:20px}.hero-text{padding:55px 34px}.service-overview-grid{grid-template-columns:52% 48%}.service-overview-grid>div:first-child{padding:50px 32px}.service-tabs{gap:19px;font-size:12px}.contact-details{gap:5vw}.contact-heading.email{font-size:24px!important}}
@media (max-width:640px){body{font-size:16px}.section{padding:65px 0}.header-inner{padding:15px 22px}.site-header .brand{font-size:25px}.brand img{width:30px;height:37px}.footer-inner{padding:29px 22px}.footer-contact{gap:7px;flex-direction:column}.site-footer nav{flex-wrap:wrap}.home-fullbleed{min-height:630px;align-items:start}.home-message{padding-top:70px;padding-bottom:55px}.home-message h1{font-size:clamp(37px,9.3vw,52px);line-height:1.17}.home-message h1 br{display:none}.home-message p{font-size:15px;max-width:400px}.home-fullbleed:before{background-position:64% center}.home-fullbleed:after{background:linear-gradient(180deg,#fffffff5 0%,#fffffff0 48%,#ffffff73 74%,#ffffff05 100%)}.home-service-layout{grid-template-columns:1fr}.home-services-v2 .service-intro{padding:65px 25px}.home-services-v2 .photo-wrap{min-height:0;height:320px}.quick-grid{grid-template-columns:1fr;padding-top:35px;padding-bottom:35px}.quick-grid article,.quick-grid article:first-child,.quick-grid article:last-child{padding:28px 0}.quick-grid article+article{border-left:0;border-top:1px solid var(--line)}.quick-grid p{min-height:0}.cta-grid{grid-template-columns:1fr}.cta-grid .aloe-ornament{display:none}.wide-cta{padding:68px 0}.about-top{padding-top:15px;padding-bottom:0}.about-hero-grid{display:flex;flex-direction:column;gap:10px}.about-hero-grid>div:first-child{padding-bottom:30px}.about-hero-grid h1{font-size:43px}.about-hero-grid p{font-size:15px}.portrait-wrap{max-height:450px;width:100%}.image-text-grid{grid-template-columns:1fr;gap:30px}.image-text-grid .photo-wrap{height:260px}.credentials{grid-template-columns:1fr;gap:20px}.credential-col{padding-left:0;border-left:0}.credential-col:not(:first-child){padding-top:22px;border-top:1px solid var(--line)}.hero-photo-split{display:flex;flex-direction:column}.hero-text{padding:45px 24px}.hero-photo-split .photo-wrap{min-height:0;height:280px}.service-overview{padding-top:20px}.service-overview-grid{display:flex;flex-direction:column}.service-overview-grid>div:first-child{padding:45px 24px}.service-overview .photo-wrap{min-height:0;height:255px}.service-tabs{justify-content:flex-start;overflow:auto;gap:25px;padding:18px 22px;white-space:nowrap}.group-section{padding:65px 0}.v2-service summary{grid-template-columns:minmax(0,1fr) 23px;gap:12px;min-height:73px;padding:17px 3px}.v2-service .service-title{font-size:17px}.v2-service .service-hint{display:none}.v2-service .toggle{grid-column:2;grid-row:1}.v2-service .accordion-body{padding:23px 2px 37px}.service-pricing{gap:9px 20px;flex-direction:column;align-items:flex-start}.service-pricing .duration{margin-left:0}.practical-rows>div{grid-template-columns:1fr;gap:7px;padding:25px 0}.contact-head{padding:35px 0 45px}.contact-details{grid-template-columns:1fr;gap:60px}.contact-details h2{font-size:38px}.contact-heading{font-size:25px!important}.contact-heading.email{font-size:21px!important}.map-frame,.map-frame iframe{min-height:340px}.split-coverage{grid-template-columns:1fr;gap:15px}.payer-logo{min-height:130px}.booking-layout{grid-template-columns:1fr}.booking-widget{padding:20px 16px}.booking-help{padding:35px 25px}.booking-top{padding:25px 0}.booking-row{gap:9px}.booking-row h3{font-size:15px}.booking-row .button{font-size:12px}.legal-simple,.privacy-simple{padding:40px 0 80px}.concern-grid{grid-template-columns:1fr}.section .container>h2{font-size:32px}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
