/* Your Family: a quiet clinical frame around the existing spectrum tree.
   Palette: navy #192849, forest #35634a, teal #25747a, plum #756088,
   pale lilac #f3f2f7, paper #fff. The tree is the single visual signature.
   Avenir Next headlines / system body / restrained Georgia italic accent. */
:root{--navy:#192849;--forest:#35634a;--teal:#25747a;--plum:#756088;--paper:#fff;--soft:#f3f2f7;--text:#536070;--line:#dedfe6;--display:"Avenir Next","Segoe UI",sans-serif;--body:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--width:1280px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:115px}
body{margin:0;background:var(--paper);color:var(--navy);font-family:var(--body);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none;text-underline-offset:4px}
button{font:inherit;color:inherit}
img{display:block;max-width:100%;height:auto}
h1,h2,h3,h4,h5,h6,p,figure{margin:0}
h1,h2,h3,h4,h5,h6{font-family:var(--display);line-height:1.13;font-weight:var(--heading-weight);letter-spacing:-.045em;text-wrap:balance}
h1{font-size:clamp(44px,4.5vw,68px)}
h2{font-size:clamp(32px,3.1vw,45px)}
h3{font-size:25px;letter-spacing:-.025em;line-height:1.25}
em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--forest);letter-spacing:-.055em}
p{color:var(--text)}
p+p{margin-top:18px}
:focus-visible{outline:3px solid var(--teal);outline-offset:5px;border-radius:2px}
::selection{background:#dce9e1;color:var(--navy)}
.wrap{width:min(var(--width),calc(100% - 96px));margin-inline:auto}
.skip-link{position:fixed;top:12px;left:12px;padding:12px 24px;background:var(--navy);color:white;z-index:100;transform:translateY(-200%)}
.skip-link:focus{transform:translateY(0)}
.topline{background:var(--navy);color:#fff;font-size:11px;letter-spacing:.04em}
.topline .wrap{display:flex;align-items:center;justify-content:space-between;min-height:34px}
.topline a{color:#fff}
.topline a:hover{text-decoration:underline}
.topline a span{padding:0 10px;opacity:.6}
.header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);border-bottom:1px solid #ececf0;backdrop-filter:blur(14px)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:106px}
.logo{--s:.195px;display:inline-flex;align-items:center;flex-shrink:0;gap:5px}
.logo-mark,.logo-word{position:relative;display:block;overflow:hidden;flex:none}
.logo-mark{width:calc(412 * var(--s));height:calc(380 * var(--s))}
.logo-word{width:calc(825 * var(--s));height:calc(347 * var(--s));margin-top:calc(16 * var(--s))}
.logo img{position:absolute;top:0;width:calc(1265 * var(--s));height:auto;max-width:none;filter:brightness(1.022);mix-blend-mode:multiply}
.logo-mark img{left:0}.logo-word img{left:calc(-440 * var(--s))}
#navigation{display:flex;align-items:center;gap:25px}
#navigation>a{font-size:12px;font-weight:500;white-space:nowrap;position:relative;transition:color .18s}
#navigation>a:hover{color:var(--forest)}
#navigation>a[aria-current]{color:var(--forest)}
#navigation>a[aria-current]:after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:2px;background:var(--forest)}
#navigation .nav-appointment{background:var(--navy);color:white;border-radius:5px;padding:12px 17px;display:flex;gap:18px;align-items:center}
#navigation .nav-appointment:hover{background:var(--forest);color:white}
.menu-toggle{display:none;border:1px solid var(--line);border-radius:5px;background:transparent;padding:8px 13px;font-size:13px;cursor:pointer;align-items:center;gap:12px}
.eyebrow{text-transform:uppercase;font-size:10px;font-weight:600;line-height:1.6;letter-spacing:.16em;color:var(--forest);margin-bottom:20px;display:flex;align-items:center;gap:10px}
.location-dot,.label-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--forest);flex-shrink:0}
.location-dot{box-shadow:0 0 0 4px #eaf1ed}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:51px;padding:13px 22px;background:var(--navy);color:white;border:1px solid var(--navy);border-radius:5px;font-size:12px;font-weight:500;line-height:1.6;transition:background .2s,transform .2s}
.button:hover{background:var(--forest);border-color:var(--forest);transform:translateY(-2px)}
.button span{font-size:19px;line-height:1}
.button--outline{background:transparent;color:var(--navy)}
.button--outline:hover{color:white}
.button-row{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}
.text-link{display:inline-flex;gap:18px;align-items:center;font-size:12px;font-weight:600;color:var(--navy);line-height:1.6;padding:8px 0}
.text-link>span{font-size:20px;font-weight:400;transition:transform .2s}
.text-link:hover>span{transform:translate(3px,-3px)}
.text-link:hover{text-decoration:underline}
.home-hero{display:grid;grid-template-columns:1fr 1.08fr;gap:20px;align-items:center;padding-top:57px;padding-bottom:63px;min-height:665px}
.home-hero h1{font-size:clamp(47px,4.7vw,71px);line-height:1.09}
.hero-intro{font-size:17px;color:var(--navy);margin-top:26px}
.hero-description{font-size:14px;line-height:1.85;max-width:432px;margin-top:8px}
.provider-line{display:flex;gap:12px;align-items:center;margin-top:36px}
.provider-monogram{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#f0f2ed;border:1px solid #dde4da;color:var(--forest);font-size:10px;font-weight:600;letter-spacing:.04em}
.provider-line p{font-size:11px;line-height:1.65}
.provider-line strong{font-weight:600;color:var(--navy);display:block}
.provider-line p span{display:block;font-size:10px}
.hero-tree{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-width:0;min-height:550px}
.hero-tree>img{width:106%;max-width:106%;position:relative;z-index:1;filter:drop-shadow(0 12px 16px #19284908)}
.tree-orbit{position:absolute;inset:10% 5% 5%;border:1px solid #e6e6ef;border-radius:50%;background:radial-gradient(ellipse,#f5f4f8 0%,#fafafb 55%,white 75%);z-index:0}
.tree-orbit:after{content:"";position:absolute;inset:30px;border:1px dashed #e8e7ee;border-radius:50%}
.tree-overline{position:absolute;left:50%;transform:translateX(-50%);top:0;white-space:nowrap;font-size:10px;color:#727488;letter-spacing:.1em;text-transform:uppercase}
.tree-caption{position:absolute;bottom:-6px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:.02em}
.tree-label{position:absolute;z-index:3;background:#fff;box-shadow:0 8px 25px #1928490b;border:1px solid #e4e6e7;border-radius:7px;display:flex;align-items:center;gap:10px;font-size:11px;font-weight:500;padding:12px 14px;line-height:1.45;transition:transform .2s,box-shadow .2s}
.tree-label:hover{transform:translateY(-4px);box-shadow:0 12px 30px #19284915}
.tree-label>span:last-child{color:#858993;font-size:16px;margin-left:6px}
.tree-label--movement{top:13%;right:0}
.tree-label--structure{top:52%;left:-3%}
.tree-label--sensory{bottom:12%;right:0}
.label-dot.teal{background:var(--teal)}.label-dot.green{background:var(--forest)}.label-dot.purple{background:var(--plum)}
.chapter-strip{background:var(--soft);border-block:1px solid #ebe9f0}
.chapter-strip .wrap{display:flex;align-items:center;gap:18px;padding-block:21px}
.chapter-strip p{font-size:12px;line-height:1.7;flex:1}
.chapter-strip strong{font-weight:600;color:var(--navy);margin-right:8px}
.chapter-symbol{font-size:26px;line-height:1;color:var(--plum)}
.chapter-strip a{font-size:11px;white-space:nowrap;font-weight:500}
.chapter-strip a:hover{text-decoration:underline}
.chapter-strip a span{margin-left:14px}
.section{padding-block:88px}
.section-heading{display:flex;justify-content:space-between;gap:70px;align-items:flex-end;margin-bottom:42px}
.section-heading>p{max-width:330px;font-size:14px;line-height:1.85}
.section-heading .eyebrow{margin-bottom:15px}
.focus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.focus-card{min-width:0;border:1px solid var(--line);padding:32px 29px 25px;border-radius:8px;position:relative;display:flex;flex-direction:column;align-items:flex-start}
.focus-card:before{content:"";position:absolute;left:29px;right:29px;top:-1px;height:3px;background:var(--accent);border-radius:0 0 2px 2px}
.green{--accent:var(--forest);--tint:#edf3ee}.teal{--accent:var(--teal);--tint:#eaf3f3}.purple{--accent:var(--plum);--tint:#f0edf4}
.focus-symbol{display:grid;place-items:center;font-size:29px;font-weight:400;line-height:1;background:var(--tint);color:var(--accent);width:49px;height:49px;border-radius:50%;margin-bottom:26px}
.focus-card .eyebrow{color:var(--accent);font-size:9px;margin-bottom:11px}
.focus-card h3{font-size:27px;margin-bottom:17px}
.focus-card>p:not(.eyebrow){font-size:13px;line-height:1.9;margin-bottom:21px;flex:1}
.focus-card .text-link{font-size:11px;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding-top:18px}
.soft{background:var(--soft)}
.doctor-split{display:grid;grid-template-columns:1fr 1.05fr;gap:105px;align-items:center}
.doctor-photo{position:relative;max-width:455px}
.doctor-photo>img{aspect-ratio:1/.99;object-fit:cover;object-position:center 43%;border-radius:8px 8px 0 0}
figcaption{padding:18px 23px;background:var(--navy);color:white;font-size:12px;line-height:1.8;border-radius:0 0 8px 8px}
figcaption span{display:block;font-size:10px;color:#d1d7e3}
.doctor-copy h2{font-size:clamp(35px,3.5vw,50px);line-height:1.18}
.doctor-copy .lead{margin-top:28px;font-size:17px}
.doctor-copy>p:not(.eyebrow):not(.lead){font-size:14px;line-height:1.95;margin-top:17px}
.doctor-copy .text-link{margin-top:22px}
.lead{font-size:20px;color:var(--navy);line-height:1.65}
.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-block:42px 22px}
.step-number{display:block;font-family:Georgia,serif;color:var(--plum);font-size:17px;letter-spacing:.06em;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}
.steps-grid h3{font-size:22px;margin-bottom:14px}
.steps-grid p{font-size:13px;line-height:1.9}
.visit-banner{background:#eaf0eb;position:relative;overflow:hidden}
.visit-banner-inner{padding-block:58px;display:flex;justify-content:space-between;gap:40px;align-items:center;position:relative;z-index:1}
.visit-banner h2{font-size:43px}
.visit-banner p:not(.eyebrow){font-size:13px;margin-top:17px;max-width:450px}
.visit-banner .eyebrow{margin-bottom:15px}
.visit-banner-actions{display:flex;flex-direction:column;gap:17px;align-items:center;margin-right:50px}
.visit-banner-actions .button{min-width:230px}
.phone-link{font-size:12px;color:var(--forest)}
.phone-link:hover{text-decoration:underline}
.footer{padding:57px 0 27px}
.footer .logo{--s:.19px}
.footer-main{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:50px;padding-bottom:36px}
.footer-provider{font-size:12px;color:var(--navy);margin-top:20px;line-height:1.8}
.footer .small{font-size:10px;margin-top:12px}
.footer-main h2{font-family:var(--display);font-size:12px;letter-spacing:0;font-weight:var(--heading-weight);margin:8px 0 22px}
.footer-main>div>a:not(.logo){display:block;font-size:12px;margin-bottom:7px;color:var(--text);width:fit-content}
.footer-main>div>a:not(.logo):hover{text-decoration:underline}
.footer-main>div>p:not(.footer-provider):not(.small){font-size:12px;margin-bottom:13px}
.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:15px;font-size:10px}
.scope-note{font-size:10px;line-height:1.8;max-width:1040px;margin-top:17px;color:#657080}
.page-hero{padding-block:70px 76px;display:grid;grid-template-columns:1.15fr 1fr;gap:90px;align-items:center}
.page-hero .lead{margin-top:26px}
.page-hero>div>p:not(.eyebrow):not(.lead){font-size:15px;margin-top:20px;max-width:550px;line-height:1.9}
.page-hero>div>.button{margin-top:28px}
.about-hero{grid-template-columns:1.15fr .85fr;gap:100px}
.portrait-frame{max-width:390px;justify-self:end}
.portrait-frame img{aspect-ratio:1/1.05;object-fit:cover;object-position:center 37%;border-radius:8px 8px 0 0}
.editorial{display:grid;grid-template-columns:1fr 1.2fr;gap:110px}
.editorial>div>p:not(.eyebrow){font-size:14px;max-width:400px;margin-top:22px}
.prose p{font-size:15px;line-height:1.95}
.prose p.lead{font-size:20px;line-height:1.7;margin-top:0}
.prose h3{font-size:23px;margin-bottom:15px}
.prose p+h3{margin-top:35px}
.prose a:not(.text-link){text-decoration:underline;color:var(--forest)}
.prose .text-link{margin-top:20px}
.credentials{margin:0}
.credentials>div{display:grid;grid-template-columns:1fr 1.7fr;gap:35px;padding-block:24px;border-top:1px solid var(--line)}
.credentials>div:last-child{border-bottom:1px solid var(--line)}
.credentials dt{font-size:16px;font-weight:500}
.credentials dd{font-size:14px;color:var(--text);margin:0;line-height:1.8}
.navy-section{background:var(--navy);color:white}
.navy-section .eyebrow{color:#c4d5ca}
.navy-section p{color:#d3dae6}
.navy-section em{color:#c7d8c4}
.navy-section .lead,.navy-section .text-link{color:white}
.text-hero{grid-template-columns:1.1fr 1fr;gap:100px}
.structure-art{position:relative;background:var(--soft);border-radius:50% 50% 8px 8px;padding:35px 20px 58px}
.structure-art img{width:100%;object-fit:contain}
.art-caption{display:flex;gap:10px;align-items:center;position:absolute;bottom:25px;left:0;right:0;justify-content:center;font-size:11px}
.concern-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.concern-grid article{border-top:2px solid #8aa790;padding-top:24px}
.concern-grid h3{font-size:23px;margin-bottom:17px}
.concern-grid p{font-size:14px;line-height:1.9}
.faq{border-top:1px solid var(--line)}
.faq:last-child{border-bottom:1px solid var(--line)}
.faq summary{display:flex;gap:20px;justify-content:space-between;align-items:center;list-style:none;padding-block:23px;cursor:pointer;font-weight:500;font-size:15px;line-height:1.65}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--forest)}
.faq-icon{flex-shrink:0;font-size:23px;font-weight:300;line-height:1;width:24px;text-align:center;color:var(--forest);transition:transform .2s}
.faq[open] .faq-icon{transform:rotate(45deg)}
.faq-answer{padding:0 35px 24px 0}
.faq-answer p{font-size:14px;line-height:1.9}
.faq-answer a{color:var(--forest);text-decoration:underline}
.approach-hero{gap:65px;grid-template-columns:1fr 1fr}
.activity-hero img{aspect-ratio:1/.98;object-fit:cover;object-position:30% center;border-radius:8px 8px 0 0}
.activity-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}
.activity-grid article{border:1px solid var(--line);border-radius:8px;overflow:hidden}
.activity-photo img{width:100%;aspect-ratio:1.65;object-fit:cover;object-position:50% 35%}
.activity-text{padding:30px 33px}
.activity-text .eyebrow{font-size:9px;margin-bottom:12px}
.activity-text h3{margin-bottom:17px;font-size:29px}
.activity-text p:not(.eyebrow){font-size:14px;line-height:1.9}
.section-note{font-size:11px;max-width:720px;margin-top:25px}
.first-hero{grid-template-columns:1.3fr .85fr;gap:110px}
.visit-card{background:var(--soft);padding:36px 38px;border-radius:8px}
.visit-card-label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--plum);display:block;margin-bottom:18px;font-weight:600}
.visit-card h2{font-size:32px;line-height:1.2}
.visit-card p{font-size:12px;margin-top:16px}
.visit-card hr{border:0;border-top:1px solid #d9d7e1;margin:25px 0}
address{font-style:normal;font-size:13px;color:var(--text)}
.visit-phone{font-size:22px;font-weight:500;display:block;line-height:1.6;margin-top:12px;color:var(--navy);width:fit-content}
.visit-phone:hover{text-decoration:underline}
.visit-card .text-link{margin-top:10px}
.booking-options article{display:flex;gap:25px;border-top:1px solid var(--line);padding-block:26px}
.booking-options article:last-child{border-bottom:1px solid var(--line)}
.booking-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--soft);flex-shrink:0;font-size:20px}
.booking-options h3{font-size:24px;margin-bottom:12px}
.booking-options p{font-size:14px;line-height:1.9}
.booking-options .button{margin-top:21px}
@media(min-width:1500px){.home-hero{min-height:735px}.hero-tree{min-height:590px}}
@media(max-width:1200px){.wrap{width:calc(100% - 64px)}#navigation{gap:18px}.logo{--s:.168px}.header-inner{gap:15px}#navigation>a{font-size:11px}.home-hero{gap:5px}.hero-tree{min-height:510px}.tree-label{padding:10px 12px;font-size:10px}.tree-label--structure{left:0}.doctor-split,.editorial,.first-hero{gap:65px}.page-hero{gap:55px}.focus-card{padding-inline:23px}.focus-card:before{left:23px;right:23px}}
@media(max-width:1080px){.header-inner{min-height:91px;flex-wrap:wrap;padding-block:12px}.js .menu-toggle{display:inline-flex}.js #navigation{display:none}.js #navigation.is-open{display:flex}#navigation{width:100%;flex-direction:column;align-items:stretch;gap:0;padding:12px 0 6px}#navigation>a{font-size:14px;padding:13px 8px}#navigation>a[aria-current]:after{display:none}#navigation>a[aria-current]{background:#edf3ee;border-radius:4px}#navigation .nav-appointment{justify-content:space-between;margin-top:12px;padding:13px 17px}.home-hero h1{font-size:clamp(42px,5.1vw,55px)}.home-hero{padding-top:45px;padding-bottom:55px;min-height:620px}.hero-description{font-size:13px}.hero-intro{font-size:15px}.home-hero .button-row{gap:15px}.home-hero .button{font-size:11px;padding-inline:16px;gap:20px}.home-hero .text-link{font-size:11px;gap:12px}.hero-tree{min-height:480px}.tree-overline{font-size:8px;top:12px}.tree-caption{font-size:9px;bottom:20px}.tree-label--movement{top:17%;right:-10px}.tree-label--sensory{bottom:17%;right:-10px}.chapter-strip .wrap{gap:12px}.chapter-strip p{font-size:11px}.chapter-strip a{font-size:10px}.focus-grid{gap:15px}.focus-card{padding:25px 19px 20px}.focus-card h3{font-size:24px}.focus-card .text-link{font-size:10px;gap:9px}.focus-card>p:not(.eyebrow){font-size:12px}.section-heading{gap:40px}.section-heading>p{max-width:285px}.doctor-split{gap:55px}.doctor-copy .lead{font-size:16px}.steps-grid{gap:32px}.section{padding-block:65px}.footer-main{grid-template-columns:1.35fr 1fr 1fr;gap:30px}.footer .logo{--s:.16px}.page-hero h1{font-size:49px}.page-hero .lead{font-size:18px}.page-hero>div>p:not(.eyebrow):not(.lead){font-size:14px}.page-hero{gap:45px;padding-block:55px 65px}.editorial{gap:45px}.visit-card{padding:29px}.visit-card h2{font-size:28px}.first-hero{grid-template-columns:1.2fr 1fr}}
@media(max-width:760px){html{scroll-padding-top:95px}.wrap{width:calc(100% - 40px)}.topline{font-size:9px}.topline .wrap{min-height:31px}.topline a span{padding:0 5px}.logo{--s:.155px}.header-inner{min-height:82px;padding-block:10px}.home-hero{grid-template-columns:1fr;padding-top:39px;padding-bottom:30px;gap:35px}.home-hero h1{font-size:clamp(46px,8vw,61px)}.home-hero .eyebrow{font-size:9px}.hero-intro{font-size:16px;margin-top:24px}.hero-description{max-width:520px;font-size:14px;line-height:1.85}.home-hero .button-row{gap:20px;margin-top:25px}.home-hero .button{font-size:12px;padding:13px 18px}.home-hero .text-link{font-size:11px}.provider-line{margin-top:28px}.hero-tree{width:min(100%,530px);margin-inline:auto;min-height:420px}.hero-tree>img{width:95%;max-width:95%;padding-top:18px}.tree-orbit{inset:8% 4% 6%}.tree-overline{top:0;font-size:8px}.tree-label{font-size:10px;padding:10px;gap:7px}.tree-label>span:last-child{margin-left:1px;font-size:14px}.tree-label--movement{top:14%;right:0}.tree-label--structure{top:51%;left:0}.tree-label--sensory{bottom:13%;right:0}.tree-caption{font-size:9px;bottom:0}.chapter-strip .wrap{flex-wrap:wrap;padding-block:20px;gap:12px}.chapter-strip p{flex-basis:calc(100% - 50px);font-size:11px}.chapter-strip strong{display:block}.chapter-strip a{margin-left:38px;font-size:11px}.section{padding-block:52px}.section-heading{display:block;margin-bottom:29px}.section-heading>p{max-width:100%;margin-top:19px;font-size:14px}.section-heading .eyebrow{margin-bottom:12px}h2{font-size:34px}.focus-grid{grid-template-columns:1fr;gap:19px}.focus-card{padding:25px}.focus-card:before{left:25px;right:25px}.focus-card h3{font-size:28px}.focus-card h3 br{display:none}.focus-symbol{margin-bottom:20px;width:43px;height:43px;font-size:25px}.focus-card .eyebrow{font-size:9px}.focus-card>p:not(.eyebrow){font-size:14px;line-height:1.85}.focus-card .text-link{font-size:12px}.doctor-split{grid-template-columns:1fr;gap:35px}.doctor-photo{max-width:none}.doctor-photo>img{aspect-ratio:1.1;object-position:50% 35%}.doctor-copy h2{font-size:39px}.doctor-copy .lead{font-size:17px;margin-top:22px}.doctor-copy>p:not(.eyebrow):not(.lead){font-size:14px}.doctor-copy .text-link{margin-top:17px}.steps-grid{grid-template-columns:1fr;gap:27px;margin-block:30px 22px}.steps-grid article{display:grid;grid-template-columns:38px 1fr;gap:0 20px;border-top:1px solid var(--line);padding-top:22px}.step-number{grid-row:1/3;border:0;padding:0;margin:0;font-size:17px}.steps-grid h3{font-size:23px;margin-bottom:12px}.steps-grid p{font-size:14px;line-height:1.85}.visit-banner-inner{display:block;padding-block:40px}.visit-banner h2{font-size:36px}.visit-banner p:not(.eyebrow){font-size:14px}.visit-banner-actions{align-items:flex-start;margin:26px 0 0;gap:15px}.visit-banner-actions .button{min-width:220px}.footer{padding-top:40px}.footer-main{grid-template-columns:1fr 1fr;gap:28px 22px}.footer-main>div:first-child{grid-column:1/-1}.footer .logo{--s:.18px}.footer-main h2{margin-bottom:15px}.footer-provider{margin-top:16px}.footer-bottom{font-size:9px}.scope-note{font-size:10px}.page-hero,.about-hero,.text-hero,.approach-hero,.first-hero{grid-template-columns:1fr;gap:35px;padding-block:40px 50px}.page-hero h1{font-size:clamp(42px,7.7vw,55px)}.page-hero .lead{font-size:18px;margin-top:23px}.page-hero>div>p:not(.eyebrow):not(.lead){font-size:14px;margin-top:19px}.portrait-frame{max-width:none;justify-self:stretch}.portrait-frame img{aspect-ratio:1.1;object-position:center 36%}.editorial{grid-template-columns:1fr;gap:30px}.editorial>div>p:not(.eyebrow){max-width:none}.prose p{font-size:14px}.prose p.lead{font-size:18px}.credentials>div{grid-template-columns:1fr;gap:7px;padding-block:20px}.credentials dt{font-size:16px}.credentials dd{font-size:13px}.structure-art{max-width:460px;justify-self:center}.concern-grid{grid-template-columns:1fr;gap:28px}.concern-grid h3{font-size:24px;margin-bottom:11px}.activity-hero img{aspect-ratio:1.15;object-position:30% 40%}.activity-grid{grid-template-columns:1fr;gap:26px}.activity-text{padding:25px}.activity-photo img{aspect-ratio:1.5}.faq summary{font-size:14px;padding-block:20px}.faq-answer{padding-right:15px}.visit-card{padding:30px}.visit-card h2{font-size:32px}.booking-options article{gap:16px}.booking-options h3{font-size:24px}.booking-options .button{gap:22px}.eyebrow{margin-bottom:16px;font-size:9px}}
@media(max-width:380px){.wrap{width:calc(100% - 32px)}.topline .wrap>span{font-size:8px}.topline a{font-size:8px}.logo{--s:.14px}.menu-toggle{font-size:12px;padding:7px 10px}.home-hero h1{font-size:clamp(35px,11vw,43px)}.home-hero .button-row{gap:13px}.home-hero .text-link{font-size:10px;gap:9px}.hero-tree{min-height:355px}.tree-label{font-size:9px;padding:9px}.tree-overline{font-size:7px}.tree-caption{font-size:8px}.footer-main{grid-template-columns:1fr}.footer-main>div:first-child{grid-column:auto}.footer-bottom{flex-direction:column;gap:7px}.page-hero h1{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
