:root{--ink:#183c3b;--ink-2:#315755;--paper:#f7f7f2;--white:#fff;--mist:#e9efeb;--sage:#c5d8cd;--sage-deep:#78988a;--coral:#c8755e;--text:#405654;--line:#dbe2dd;--font-body:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--font-display:Georgia,'Times New Roman',serif;--shadow:0 20px 55px rgba(24,60,59,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--font-body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px}button,input{font:inherit}.wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:12px;top:-100px;z-index:10;background:#fff;padding:10px 16px}.skip-link:focus{top:12px}.proposal-note{background:#f1e9d9;color:#514631;text-align:center;padding:9px 18px;font-size:11px;letter-spacing:.025em}.proposal-note span{font-size:9px;letter-spacing:.16em;font-weight:700;margin-right:10px}.site-header{height:92px;padding:0 max(24px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid rgba(24,60,59,.08);background:var(--paper);position:relative;z-index:2}.brand{display:inline-flex;align-items:center;gap:11px;min-width:220px}.brand-mark{width:43px;height:43px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font:22px var(--font-display);position:relative}.brand-mark span{font-style:italic;color:var(--coral);margin-left:-5px}.brand-name{font:20px/1.08 var(--font-display);letter-spacing:-.04em}.brand-name>span{color:var(--sage-deep);font-style:italic}.brand-name small{display:block;font:8px/1.6 var(--font-body);letter-spacing:.16em;color:var(--text);margin-top:5px}.site-header nav{display:flex;align-items:center;gap:32px;font-size:13px;color:var(--text)}.site-header nav a[aria-current=page]{color:var(--ink);font-weight:700}.nav-contact{border:1px solid #c6d3cd;padding:11px 15px;color:var(--ink)!important}.nav-contact span{padding-left:8px}.menu-toggle{display:none}.hero{min-height:590px;padding-top:84px;padding-bottom:76px;display:grid;grid-template-columns:1fr .83fr;align-items:center;gap:60px;position:relative}.hero-copy{max-width:590px}.eyebrow{margin:0 0 20px;font-size:10px;letter-spacing:.16em;font-weight:700;color:var(--sage-deep)}.hero .eyebrow span{width:22px;height:1px;background:var(--coral);display:inline-block;vertical-align:middle;margin-right:9px}h1,h2,h3,p{margin-top:0}.hero h1,.page-hero h1{font:clamp(48px,6vw,76px)/1.05 var(--font-display);letter-spacing:-.04em;margin:0 0 22px;max-width:660px}.hero h1 em{color:var(--sage-deep);font-weight:400}.lead{font-size:17px;line-height:1.7;color:var(--text);max-width:530px}.hero-actions{display:flex;align-items:center;gap:26px;margin:32px 0 48px}.button{display:inline-flex;align-items:center;gap:20px;padding:14px 18px;font-size:12px;font-weight:600;letter-spacing:.015em;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);text-decoration:none}.button-dark{background:var(--ink);color:white}.button-dark:hover{background:#24514e}.button-light{background:#f6f7f2;color:var(--ink)}.text-link{font-size:12px;font-weight:600;border-bottom:1px solid #aebeb5;padding-bottom:5px}.text-link span{margin-left:10px;color:var(--coral)}.hero-location{font-size:11px;color:#71817c}.pin{font-size:18px;color:var(--coral);vertical-align:middle;margin-right:6px}.hero-art{height:410px;max-width:440px;width:100%;justify-self:end;position:relative;background:radial-gradient(ellipse at 48% 44%,#e2ebe4 0,#edf1e9 38%,transparent 69%)}.hero-art:before{content:'';position:absolute;inset:9% 13% 7%;border:1px solid rgba(120,152,138,.36);border-radius:52% 48% 46% 54%/44% 50% 50% 56%;transform:rotate(-25deg)}.art-orbit{position:absolute;border:1px solid rgba(120,152,138,.45);border-radius:50%;width:210px;height:300px;left:27%;top:10%;transform:rotate(36deg)}.orbit-two{width:300px;height:180px;left:15%;top:28%;transform:rotate(-35deg);border-color:rgba(200,117,94,.35)}.art-core{position:absolute;width:132px;height:132px;left:36%;top:33%;border-radius:50%;background:#fff9f0;box-shadow:var(--shadow);display:grid;place-items:center;font:68px var(--font-display);color:var(--ink)}.art-core i{position:absolute;width:20px;height:20px;background:var(--coral);border:5px solid #fff9f0;border-radius:50%;right:11px;top:19px}.art-label{position:absolute;font:italic 19px var(--font-display);color:var(--ink-2)}.label-a{left:14%;top:25%}.label-b{right:12%;bottom:24%;color:var(--sage-deep)}.art-caption{position:absolute;right:3%;bottom:1%;font-size:8px;line-height:1.8;letter-spacing:.12em;color:#70817a}.art-caption b{font-size:9px;color:var(--ink)}.hero-index{position:absolute;bottom:40px;left:0;display:flex;align-items:center;gap:10px;font-size:9px;letter-spacing:.1em;color:#8a9a93}.hero-index>span:first-child{color:var(--coral)}.index-line{width:46px;height:1px;background:#b9c9c1}.intro-band{background:#e9efea}.intro-grid{min-height:162px;display:grid;grid-template-columns:190px 1fr 44px;align-items:center;gap:45px}.intro-grid .eyebrow{margin:0}.intro-grid>p{max-width:750px;font:24px/1.4 var(--font-display);margin:0;color:var(--ink-2)}.round-link{display:grid;place-items:center;border:1px solid #aabdb2;width:43px;height:43px;border-radius:50%;font-size:20px}.section{padding-top:105px;padding-bottom:104px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:42px}.section-heading .eyebrow{margin-bottom:14px}.section-heading h2,.team-copy h2,.event-band h2,.closing-cta h2{font:clamp(34px,4.2vw,48px)/1.12 var(--font-display);letter-spacing:-.025em;margin:0;max-width:650px}.section-aside{max-width:315px;color:#6c7e77;font-size:12px;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service-card{padding:25px 27px 27px;border:1px solid var(--line);min-height:295px;background:rgba(255,255,255,.34);display:flex;flex-direction:column;align-items:flex-start}.service-featured{background:#e9efea;border-color:#e9efea}.service-number{font-size:9px;color:#84958e;letter-spacing:.12em;font-weight:600}.service-icon{width:49px;height:49px;margin:22px 0 16px;border-radius:50%;border:1px solid #c4d2ca;display:grid;place-items:center;color:var(--coral);font:28px var(--font-display)}.service-card h3{font:24px/1.15 var(--font-display);margin:0 0 12px}.service-card p{font-size:12px;color:#6c7b76;line-height:1.7;margin:0 0 25px}.arrow-link{font-size:11px;font-weight:600;margin-top:auto;border-bottom:1px solid #bfccc5;padding-bottom:5px}.arrow-link span{color:var(--coral);margin-left:10px}.team-teaser{background:var(--ink);color:white}.team-teaser-grid{min-height:487px;display:grid;grid-template-columns:.9fr 1.1fr;gap:100px;align-items:center;padding-block:70px}.team-photo-art{height:345px;max-width:430px;width:100%;justify-self:end;position:relative;overflow:hidden;background:radial-gradient(ellipse at 52% 38%,#d5c3a1 0,#788e7e 32%,#506b61 60%,#314c48 100%)}.team-photo-art:before,.team-photo-art:after{content:'';position:absolute;border:1px solid rgba(255,255,255,.4);width:275px;height:370px;left:23%;top:-4%;border-radius:48%;transform:rotate(40deg)}.team-photo-art:after{width:390px;height:280px;left:8%;top:12%;transform:rotate(-39deg);border-color:rgba(229,201,166,.4)}.photo-initials{position:absolute;left:40%;top:35%;font:78px var(--font-display);color:rgba(255,255,255,.7);z-index:1}.photo-note{position:absolute;bottom:18px;left:18px;font-size:8px;letter-spacing:.15em;line-height:1.8;color:rgba(255,255,255,.78)}.team-copy{position:relative;max-width:530px}.team-copy .eyebrow{color:#b3c9bb}.team-copy h2{font-size:45px;margin-bottom:19px}.team-copy>p:not(.eyebrow){font-size:13px;color:#c2d0c8;line-height:1.8;max-width:445px;margin-bottom:28px}.team-count{position:absolute;bottom:5px;right:0;display:flex;gap:9px;align-items:center;color:#afc2b7}.team-count strong{font:33px var(--font-display);color:#fff}.team-count span{font-size:8px;line-height:1.5;letter-spacing:.1em}.editorial-section{padding-bottom:92px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.article-card{padding:27px 24px 26px 0;min-height:245px}.article-card+article{border-left:1px solid var(--line);padding-left:24px}.article-topic{display:block;font-size:9px;letter-spacing:.14em;font-weight:700;color:var(--coral);margin-bottom:17px}.article-card h3{font:23px/1.22 var(--font-display);margin-bottom:10px;max-width:320px}.article-card p{font-size:11px;line-height:1.65;color:#71817b;max-width:330px;margin-bottom:22px}.article-meta{font-size:9px;color:#82928b}.editorial-note{font-size:10px;color:#6e7e78;line-height:1.7;border-left:2px solid var(--sage-deep);padding-left:13px;margin-top:20px}.event-band{background:#ecece2;padding-block:74px}.event-band-grid{display:grid;grid-template-columns:1fr .62fr;gap:100px;align-items:center}.event-band .eyebrow{margin-bottom:15px}.event-band h2{font-size:42px;max-width:510px}.event-band-grid>div:last-child p{font-size:13px;line-height:1.8;color:#6b7a75;margin:0 0 22px}.closing-cta{text-align:center;padding-block:105px}.closing-cta .eyebrow{margin-bottom:14px}.closing-cta h2{margin-inline:auto;margin-bottom:28px;max-width:660px}.site-footer{background:#e9efea;padding-top:47px}.footer-main{display:grid;grid-template-columns:1.3fr .7fr 1fr;gap:55px;padding-bottom:42px}.brand-footer{align-self:start}.footer-main>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-heading{font-size:9px!important;letter-spacing:.13em!important;color:#82958b!important;font-weight:700;margin:0 0 6px!important}.footer-main>div a,.footer-main>div>p:not(.footer-heading){font-size:10px;color:#596b64;line-height:1.7;margin:0}.footer-main>div:last-child>p:not(.footer-heading){max-width:330px}.footer-bottom{padding-block:16px;border-top:1px solid #d6e0d9;display:flex;justify-content:space-between;font-size:9px;color:#7a8983}.page-hero{padding-top:93px;padding-bottom:53px;min-height:370px;position:relative}.page-hero h1{max-width:810px}.page-hero .lead{max-width:600px}.breadcrumb{display:flex;gap:10px;font-size:10px;color:#87958f;margin-top:32px}.breadcrumb a{color:var(--ink-2)}.team-list{padding-bottom:76px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.doctor-card{background:white;border:1px solid #e6ebe7;padding:26px;display:grid;grid-template-columns:75px 1fr;gap:21px;min-height:260px;box-shadow:0 8px 28px rgba(24,60,59,.025)}.doctor-monogram{width:75px;height:94px;background:#e3eae3;display:grid;place-items:center;font:29px var(--font-display);color:#718a7c}.tone-rose{background:#f0e7e2;color:#b27967}.tone-green{background:#e1ebe3;color:#728b78}.tone-sand{background:#ede9df;color:#9d8660}.tone-blue{background:#e3e9eb;color:#708d91}.tone-lilac{background:#eae6eb;color:#8b7990}.doctor-info .service-number{display:block;margin:1px 0 9px}.doctor-info h2{font:25px/1.12 var(--font-display);margin:0 0 11px}.doctor-info>p{font-size:11px;color:#6d7d76;line-height:1.65;margin-bottom:13px}.doctor-credentials{display:flex;flex-direction:column;gap:2px;border-top:1px solid #e6ebe7;padding-top:10px;margin-bottom:14px;font-size:9px;color:#60726b}.doctor-credentials b{font-size:8px;letter-spacing:.1em;color:var(--coral)}.doctor-info .arrow-link{display:inline-block}.compliance-callout{display:grid;grid-template-columns:43px 1fr auto;gap:20px;align-items:center;background:#e9efea;padding:24px 28px;margin-bottom:20px}.callout-mark{display:grid;place-items:center;border:1px solid #aebfb5;border-radius:50%;width:37px;height:37px;color:var(--coral);font:20px var(--font-display)}.compliance-callout h2{font:21px var(--font-display);margin:0 0 4px}.compliance-callout p{font-size:10px;color:#687972;line-height:1.7;margin:0;max-width:720px}.compliance-callout>a{font-size:9px;text-decoration:underline}.blog-tools{padding-top:9px;padding-bottom:20px}.blog-tools label{font-size:10px;font-weight:700;display:block;margin-bottom:8px}.search-field{height:51px;border:1px solid #d5dfd8;background:white;display:flex;align-items:center;padding:0 15px;gap:12px;max-width:610px}.search-field>span:first-child{font:24px var(--font-display);color:var(--sage-deep)}.search-field input{border:0;outline:0;flex:1;min-width:0;font-size:12px;color:var(--ink);background:transparent}.search-field input:focus{outline:2px solid transparent}.search-hint{font-size:9px;color:#8b9992}.search-status{font-size:10px;color:#70827a;min-height:16px;margin:5px 0 0}.article-list{padding-bottom:15px}.article-row{display:grid;grid-template-columns:75px 1fr 36px;gap:28px;align-items:center;border-top:1px solid var(--line);padding:25px 12px 25px 0}.article-row:last-child{border-bottom:1px solid var(--line)}.article-date{font:30px/.95 var(--font-display);color:var(--ink-2);display:flex;align-items:center;gap:8px}.article-date span{font:8px/1.4 var(--font-body);letter-spacing:.12em;color:#8a9992}.article-details .article-topic{margin-bottom:7px}.article-details h2{font:24px/1.2 var(--font-display);margin:0 0 6px}.article-details>p{font-size:11px;color:#71817a;max-width:760px;margin:0 0 8px}.row-arrow{width:34px;height:34px;border:1px solid #cad6ce;border-radius:50%;display:grid;place-items:center;color:var(--coral)}.empty-state{font-size:13px;padding:22px 0}.event-intro{background:#e9efea}.event-intro-grid{min-height:126px;display:grid;grid-template-columns:190px 1fr;align-items:center;gap:45px}.event-intro-grid .eyebrow{margin:0}.event-intro-grid>p{font:20px/1.45 var(--font-display);max-width:760px;color:var(--ink-2);margin:0}.event-list{padding-top:36px;padding-bottom:38px}.event-item{display:grid;grid-template-columns:40px 1fr 108px;align-items:center;gap:22px;padding:22px 0;border-bottom:1px solid var(--line)}.event-index{font:20px var(--font-display);color:#9aaba2}.event-item .article-topic{margin-bottom:5px}.event-item h2{font:22px/1.2 var(--font-display);margin:0 0 4px}.event-item p{font-size:10px;color:#778780;margin:0}.event-type{justify-self:end;font-size:8px;letter-spacing:.12em;color:#87968f;border:1px solid #d5ded8;padding:7px 9px}.event-list+.editorial-note{margin-top:0}.event-band-grid .button{white-space:nowrap} [hidden]{display:none!important}:focus-visible{outline:3px solid #bd715a;outline-offset:3px}::selection{background:#d8e5dc;color:var(--ink)}@media(max-width:850px){.site-header nav{gap:18px}.hero{gap:20px}.hero-art{transform:scale(.9);transform-origin:center right}.team-teaser-grid{gap:55px}.team-count{position:static;margin-top:25px}.event-band-grid{gap:45px}.doctor-card{grid-template-columns:58px 1fr;padding:20px;gap:15px}.doctor-monogram{width:58px;height:74px}.compliance-callout{grid-template-columns:40px 1fr}.compliance-callout>a{grid-column:2}.footer-main{gap:25px}}@media(max-width:640px){.wrap{width:min(100% - 36px,500px)}.proposal-note{font-size:9px;line-height:1.5;padding:9px 13px}.proposal-note span{display:block;margin:0 0 2px}.site-header{height:76px;padding:0 18px}.brand{min-width:0}.brand-mark{width:38px;height:38px;font-size:20px}.brand-name{font-size:18px}.brand-name small{font-size:7px}.menu-toggle{display:block;border:1px solid #c9d6ce;background:transparent;color:var(--ink);padding:8px 12px;font-size:11px}.site-header nav{display:none;position:absolute;top:75px;left:0;right:0;padding:17px 18px 22px;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:var(--shadow);align-items:stretch;gap:0;flex-direction:column}.site-header nav.is-open{display:flex}.site-header nav a{padding:11px 3px;border-bottom:1px solid #e5ebe6}.site-header nav .nav-contact{margin-top:10px;padding:12px}.hero{padding-top:58px;padding-bottom:58px;min-height:0;grid-template-columns:1fr;gap:8px}.hero h1,.page-hero h1{font-size:51px}.hero .lead,.page-hero .lead{font-size:15px}.hero-actions{margin:25px 0 28px;align-items:flex-start;flex-direction:column;gap:18px}.hero-art{height:290px;max-width:360px;justify-self:center;transform:none;margin-top:5px}.art-core{width:105px;height:105px;font-size:55px}.hero-index{bottom:12px}.intro-grid{min-height:0;padding-block:26px;grid-template-columns:1fr 40px;gap:12px}.intro-grid .eyebrow{grid-column:1}.intro-grid>p{grid-column:1;grid-row:2;font-size:21px}.round-link{grid-column:2;grid-row:1/3}.section{padding-block:70px}.section-heading{align-items:flex-start;flex-direction:column;gap:17px;margin-bottom:28px}.section-heading h2,.team-copy h2,.event-band h2,.closing-cta h2{font-size:37px}.section-aside{max-width:420px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:21px}.service-icon{margin:17px 0 12px}.service-card p{margin-bottom:18px}.team-teaser-grid{grid-template-columns:1fr;gap:28px;padding-block:44px}.team-photo-art{height:260px;max-width:none;justify-self:stretch}.team-copy h2{font-size:39px}.team-count{margin-top:20px}.article-grid{grid-template-columns:1fr}.article-card{min-height:0;padding:23px 0!important;border-left:0!important}.article-card+article{border-top:1px solid var(--line)}.article-card h3{font-size:25px}.event-band{padding-block:55px}.event-band-grid{grid-template-columns:1fr;gap:20px}.closing-cta{padding-block:69px}.footer-main{grid-template-columns:1fr 1fr;gap:32px 20px}.brand-footer{grid-column:1/-1}.footer-main>div:last-child{grid-column:1/-1}.footer-bottom{gap:10px;align-items:flex-start;flex-direction:column}.page-hero{padding-top:64px;padding-bottom:39px;min-height:0}.page-hero .breadcrumb{margin-top:24px}.team-list{grid-template-columns:1fr;gap:10px;padding-bottom:44px}.doctor-card{grid-template-columns:54px 1fr;padding:17px;gap:13px}.doctor-monogram{width:54px;height:68px;font-size:23px}.doctor-info h2{font-size:22px}.doctor-info>p{font-size:10px}.doctor-credentials span{font-size:8px}.compliance-callout{grid-template-columns:34px 1fr;padding:17px;gap:12px}.compliance-callout p{font-size:9px}.callout-mark{width:32px;height:32px}.compliance-callout h2{font-size:19px}.compliance-callout>a{grid-column:2}.blog-tools{padding-top:0}.search-hint{display:none}.article-row{grid-template-columns:54px 1fr 31px;gap:12px;padding:19px 0}.article-date{font-size:25px}.article-details h2{font-size:21px}.article-details>p{font-size:10px}.article-row .article-meta{font-size:8px}.row-arrow{width:30px;height:30px}.event-intro-grid{grid-template-columns:1fr;gap:10px;padding-block:23px}.event-intro-grid>p{font-size:19px}.event-item{grid-template-columns:27px 1fr;gap:11px;padding:17px 0}.event-item h2{font-size:20px}.event-type{grid-column:2;justify-self:start;padding:5px 7px;font-size:7px}.event-index{font-size:17px}.editorial-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Identity, portraits and restrained motion added for the second design pass. */
.site-header{position:sticky;top:0;background:rgba(247,247,242,.94);backdrop-filter:blur(14px);box-shadow:0 5px 22px rgba(24,60,59,.045);transition:box-shadow .25s ease}
.site-header.is-scrolled{box-shadow:0 8px 28px rgba(24,60,59,.11)}
.brand-mark{border:0;background:#fff;overflow:hidden;box-shadow:0 0 0 1px rgba(24,60,59,.09)}
.brand-mark img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}
.hero{grid-template-columns:1fr .88fr;gap:35px;min-height:625px}
.hero-visual{position:relative;width:min(100%,470px);justify-self:end;padding:18px 4px 30px 14px;isolation:isolate}
.hero-visual:before{content:"";position:absolute;inset:6% -5% 11% 6%;z-index:-1;background:radial-gradient(ellipse at 56% 45%,#e1ebe3 0,#edf1e9 56%,transparent 73%);border-radius:48% 52% 43% 57% / 48% 42% 58% 52%;animation:float-orbit 9s ease-in-out infinite}
.portrait-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;transform:rotate(-2deg);perspective:1000px}
.portrait-mosaic figure{margin:0;aspect-ratio:.77;overflow:hidden;background:#e6ebe6;border-radius:46% 46% 7px 7px;box-shadow:0 14px 28px rgba(24,60,59,.12);transform:translateY(var(--lift,0));transition:transform .35s ease,box-shadow .35s ease}
.portrait-mosaic figure:nth-child(2),.portrait-mosaic figure:nth-child(5){--lift:15px;border-radius:8px 8px 46% 46%}
.portrait-mosaic figure:nth-child(3),.portrait-mosaic figure:nth-child(6){--lift:4px}
.portrait-mosaic figure:hover{transform:translateY(calc(var(--lift,0px) - 7px)) scale(1.025);box-shadow:0 20px 36px rgba(24,60,59,.2);z-index:1}
.portrait-mosaic img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 20%;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.portrait-mosaic figure:hover img{transform:scale(1.06)}
.logo-medallion{position:absolute;left:-12px;bottom:4px;width:86px;height:86px;padding:8px;border-radius:50%;background:#fff;box-shadow:0 12px 34px rgba(24,60,59,.2);animation:medallion-in .7s .25s both cubic-bezier(.18,.75,.25,1.1)}
.logo-medallion img{width:100%;height:100%;border-radius:50%;object-fit:cover}
.visual-caption{position:absolute;right:-2px;bottom:3px;margin:0;padding:9px 13px;background:rgba(247,247,242,.88);font-size:8px;line-height:1.7;letter-spacing:.11em;color:#70817a;backdrop-filter:blur(8px)}
.visual-caption b{font-size:9px;color:var(--ink)}
.hero-shortcuts{display:flex;gap:11px;margin:0 0 25px;max-width:535px}
.hero-shortcuts a{display:flex;align-items:center;gap:9px;border:1px solid #d9e2dc;background:rgba(255,255,255,.5);padding:9px 11px;font-size:10px;color:var(--ink-2);transition:background .2s ease,transform .2s ease,border-color .2s ease}
.hero-shortcuts a:hover{background:#fff;border-color:#b7c9be;transform:translateY(-2px);text-decoration:none}
.hero-shortcuts a span{font-size:8px;letter-spacing:.1em;color:var(--coral)}
.hero-shortcuts a b{font-weight:400;color:var(--coral)}
.team-portrait-grid{height:345px;max-width:430px;width:100%;justify-self:end;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:14px;background:#274a46;box-shadow:0 20px 55px rgba(0,0,0,.17);transform:rotate(-1deg)}
.team-portrait-grid figure{position:relative;margin:0;min-width:0;overflow:hidden;background:#dfe8e1}
.team-portrait-grid figure:nth-child(2),.team-portrait-grid figure:nth-child(5){transform:translateY(8px)}
.team-portrait-grid img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 18%;transition:transform .5s ease,filter .35s ease}
.team-portrait-grid figure:hover img{transform:scale(1.07);filter:saturate(1.07)}
.team-portrait-grid figcaption{position:absolute;right:5px;bottom:5px;left:5px;padding:4px 5px;background:rgba(24,60,59,.78);color:#fff;font-size:8px;letter-spacing:.03em;text-align:center}
.doctor-card{grid-template-columns:130px minmax(0,1fr);overflow:hidden;transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}
.doctor-card:hover{transform:translateY(-3px);border-color:#ccd9d1;box-shadow:0 16px 36px rgba(24,60,59,.09)}
.doctor-photo{width:130px;min-height:205px;overflow:hidden;background:#e4ebe5}
.doctor-photo img{display:block;width:100%;height:100%;min-height:205px;object-fit:cover;object-position:center 16%;transition:transform .45s ease}
.doctor-card:hover .doctor-photo img{transform:scale(1.045)}
.service-icon img{display:block;width:28px;height:28px;object-fit:contain;opacity:.83;transition:transform .3s ease}
.service-card:hover .service-icon img{transform:scale(1.12) rotate(-5deg)}
.reading-progress{position:fixed;z-index:40;top:0;left:0;width:100%;height:3px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,var(--coral),#d9a17f,var(--sage-deep));box-shadow:0 1px 7px rgba(200,117,94,.35);pointer-events:none}
.back-to-top{position:fixed;z-index:20;right:22px;bottom:22px;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.6);border-radius:50%;background:var(--ink);color:#fff;font-size:21px;box-shadow:0 8px 24px rgba(24,60,59,.25);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .22s ease,transform .22s ease,background .22s ease}
.back-to-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}
.back-to-top:hover{background:#315d58;text-decoration:none}
.will-reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s cubic-bezier(.2,.65,.25,1)}
.will-reveal.is-visible{opacity:1;transform:translateY(0)}
.service-grid .service-card:nth-child(2),.article-grid .article-card:nth-child(2){transition-delay:.08s}
.service-grid .service-card:nth-child(3),.article-grid .article-card:nth-child(3){transition-delay:.16s}
@keyframes float-orbit{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-8px) rotate(1deg)}}
@keyframes medallion-in{from{opacity:0;transform:scale(.8) rotate(-9deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@media(max-width:850px){.hero{gap:18px;grid-template-columns:1fr .82fr}.portrait-mosaic{gap:7px}.hero-shortcuts{gap:7px}.hero-shortcuts a{font-size:9px;padding:8px}.doctor-card{grid-template-columns:112px minmax(0,1fr)}.doctor-photo{width:112px}.doctor-photo img{min-height:190px}}
@media(max-width:640px){.site-header{top:0}.hero{grid-template-columns:1fr;min-height:0}.hero-shortcuts{flex-wrap:wrap;margin-bottom:18px}.hero-visual{max-width:390px;justify-self:center;padding:12px 6px 29px 12px}.portrait-mosaic{gap:7px}.portrait-mosaic figure{aspect-ratio:.82}.logo-medallion{width:68px;height:68px;left:-4px;bottom:2px;padding:6px}.visual-caption{right:0;bottom:2px;padding:7px 9px;font-size:7px}.visual-caption b{font-size:8px}.hero-index{bottom:2px}.team-portrait-grid{height:285px;max-width:420px;justify-self:stretch;gap:6px;padding:10px}.team-portrait-grid figcaption{font-size:7px}.doctor-card{grid-template-columns:83px minmax(0,1fr);padding:13px;gap:12px}.doctor-photo{width:83px;min-height:154px}.doctor-photo img{min-height:154px}.back-to-top{right:13px;bottom:13px;width:40px;height:40px}.will-reveal{transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){.will-reveal{opacity:1;transform:none}.hero-visual:before{animation:none}.logo-medallion{animation:none}}

/* Professional profile system: clearer credential hierarchy, direct contact and answer-led sections. */
.doctor-photo{display:block;text-decoration:none}
.professional-identification{font:400 11px/1.55 var(--font-body);color:var(--ink);letter-spacing:0;margin:0 0 12px}
.doctor-info>.professional-identification{font-size:10px;line-height:1.55;margin:0 0 10px}
.doctor-contact-preview{font-size:10px;color:#526860;line-height:1.6;margin:0 0 12px}
.profile-mini-cta,.profile-text-link{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.profile-mini-cta{margin-top:8px}
.profile-mini-cta span,.profile-text-link span{color:var(--coral)}
.profile-breadcrumb{display:flex;gap:10px;align-items:center;padding-top:24px;font-size:10px;color:#7a8c84}
.profile-breadcrumb a{color:var(--ink-2)}
.doctor-profile-hero{display:grid;grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr);gap:clamp(32px,7vw,90px);align-items:center;padding-top:36px;padding-bottom:72px}
.profile-portrait{max-width:360px;max-height:440px;overflow:hidden;background:var(--mist);justify-self:end}
.profile-portrait img{display:block;width:100%;height:440px;object-fit:cover;object-position:center 15%}
.profile-hero-copy{max-width:650px}
.profile-hero-copy .eyebrow{margin-bottom:18px}
.profile-hero-copy h1{font:400 13px/1.55 var(--font-body);color:var(--ink);letter-spacing:0;margin:0 0 5px}
.profile-hero-copy>.professional-identification{font-size:13px;line-height:1.55;margin-bottom:18px}
.profile-summary{max-width:570px;color:var(--text);font:clamp(23px,3vw,32px)/1.32 var(--font-display);margin:0 0 23px}
.profile-ctas{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px}
.profile-ctas .button{min-height:46px}
.profile-office{margin:16px 0 0;font-size:11px;color:#71817b;line-height:1.65}
.profile-details{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.8fr);gap:clamp(36px,7vw,100px);border-top:1px solid var(--line);padding-top:50px;padding-bottom:55px}
.profile-section h2,.profile-side-block h2{font:32px/1.2 var(--font-display);letter-spacing:-.02em;margin:0 0 18px}
.profile-section>p:not(.eyebrow),.profile-section li,.profile-side-block>p{font-size:13px;line-height:1.8;color:#52665e}
.profile-section ul{padding-left:19px;margin:18px 0 0}
.profile-section li{padding-left:4px;margin-bottom:10px}
.profile-side{border-left:1px solid var(--line);padding-left:30px}
.profile-side-block{padding:0 0 24px;margin:0 0 24px;border-bottom:1px solid var(--line)}
.profile-side-block:last-child{margin:0;padding:0;border:0}
.profile-side-block h2{font-size:21px;margin-bottom:11px}
.profile-side-block .professional-identification{font-size:11px;margin:0 0 9px}
.profile-side-note{font-size:10px!important;color:#78877f!important;line-height:1.65!important;margin:0}
.profile-side-block>p{font-size:11px;line-height:1.65;margin:0 0 14px}
.profile-return{padding-bottom:65px}
.faq-section{padding-top:84px;padding-bottom:94px}
.faq-list{border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line);padding:18px 3px}
.faq-list summary{cursor:pointer;list-style:none;font:22px/1.35 var(--font-display);color:var(--ink);padding-right:44px;position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:'+';position:absolute;right:6px;top:0;color:var(--coral);font:24px/1 var(--font-body)}
.faq-list details[open] summary:after{content:'−'}
.faq-list details>p{max-width:760px;font-size:13px;line-height:1.8;color:#5e7169;margin:13px 45px 0 0}
.faq-list details>p a{font-weight:650;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.doctor-profile-hero{grid-template-columns:1fr;gap:27px;padding-top:28px;padding-bottom:42px}.profile-portrait{width:min(100%,330px);height:300px;justify-self:start}.profile-portrait img{height:100%;object-position:center 20%}.profile-summary{font-size:25px}.profile-details{grid-template-columns:1fr;gap:28px;padding-top:34px}.profile-side{border-left:0;border-top:1px solid var(--line);padding:28px 0 0}.profile-section h2{font-size:29px}.faq-section{padding-block:65px}.faq-list summary{font-size:20px}.faq-list details>p{font-size:12px}}

/* Event photography gallery: locally served, captioned records from the clinic archive. */
.event-gallery{padding-top:72px;padding-bottom:25px}.event-gallery-heading{max-width:720px;margin-bottom:30px}.event-gallery-heading .eyebrow{margin-bottom:12px}.event-gallery-heading h2{font:clamp(32px,4vw,44px)/1.12 var(--font-display);letter-spacing:-.025em;margin:0 0 12px}.event-gallery-heading>p:last-child{font-size:12px;color:#6c7b76;max-width:640px;margin-bottom:0}.event-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.event-photo-card{margin:0;min-width:0;background:#fff;border:1px solid #e3e9e4;overflow:hidden;transition:transform .22s ease,box-shadow .22s ease}.event-photo-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(24,60,59,.1)}.event-photo-card img{display:block;width:100%;height:260px;object-fit:cover;background:#e9efea}.event-photo-card:nth-child(1) img,.event-photo-card:nth-child(2) img,.event-photo-card:nth-child(3) img,.event-photo-card:nth-child(7) img{object-position:center 35%}.event-photo-card figcaption{display:flex;flex-direction:column;align-items:flex-start;gap:7px;min-height:130px;padding:17px 18px 19px}.event-photo-card figcaption span{font-size:8px;letter-spacing:.13em;font-weight:700;color:var(--coral)}.event-photo-card figcaption strong{font:19px/1.2 var(--font-display);font-weight:400}.event-photo-card figcaption a{font-size:10px;color:#667972;border-bottom:1px solid #c7d3cc;margin-top:auto}.event-photo-credit{font-size:9px;color:#7c8984;line-height:1.65;margin-top:17px}@media(max-width:850px){.event-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-photo-card img{height:235px}}@media(max-width:640px){.event-gallery{padding-top:48px;padding-bottom:14px}.event-gallery-grid{grid-template-columns:1fr;gap:12px}.event-photo-card{display:grid;grid-template-columns:38% 1fr;min-height:170px}.event-photo-card img{height:100%;min-height:170px}.event-photo-card figcaption{min-height:0;padding:14px 13px}.event-photo-card figcaption strong{font-size:17px}}

/* Blog articles: clear editorial hierarchy and useful local reading paths */
.featured-article{display:grid;grid-template-columns:1fr 160px;align-items:center;gap:35px;padding:25px 30px;margin-bottom:45px;background:#e9efea;border-left:3px solid var(--sage-deep)}.featured-article .eyebrow{margin-bottom:9px}.featured-article h2{font:clamp(25px,3vw,35px)/1.16 var(--font-display);max-width:680px;margin:0 0 9px}.featured-article>div:first-child>p:not(.eyebrow){max-width:680px;color:#6c7b76;font-size:12px;margin:0 0 13px}.featured-mark{width:124px;height:124px;border:1px solid #b9cbc0;border-radius:50%;display:grid;place-items:center;color:var(--sage-deep);font:italic 35px var(--font-display);justify-self:center}.article-details h2 a:hover,.featured-article h2 a:hover{text-decoration-color:var(--sage-deep)}.article-row .row-arrow{transition:background .2s,color .2s,transform .2s}.article-row .row-arrow:hover{background:var(--ink);color:#fff;text-decoration:none;transform:translateX(2px)}.article-byline{display:flex;gap:18px;align-items:center;margin-top:22px}.article-byline a{color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}.article-reading{max-width:780px;padding-top:8px;padding-bottom:45px}.article-answer{padding:29px 32px;background:#e9efea;border-left:3px solid var(--sage-deep);margin-bottom:38px}.article-answer .eyebrow{margin-bottom:12px}.article-answer>p:last-child{font:21px/1.55 var(--font-display);color:var(--ink-2);margin:0}.article-reading h2{font:30px/1.2 var(--font-display);margin-bottom:15px}.article-reading ul{padding-left:22px;color:var(--text)}.article-reading li{padding-left:4px;margin-bottom:10px}.article-reading .editorial-note{margin:32px 0 26px;padding-block:5px}.article-back{display:inline-block}.article-hero{min-height:0;padding-bottom:44px}.article-hero h1{font-size:clamp(42px,5.8vw,68px)}
@media(max-width:640px){.featured-article{grid-template-columns:1fr;padding:22px 20px;gap:14px;margin-bottom:32px}.featured-mark{display:none}.article-byline{align-items:flex-start;flex-direction:column;gap:5px}.article-reading{padding-top:0}.article-answer{padding:22px 20px}.article-answer>p:last-child{font-size:18px}.article-reading h2{font-size:26px}}

/* Blog imagery and complete summaries */
.article-cover{margin:0 0 30px;overflow:hidden;border-radius:2px;background:#e9efea}.article-cover img{display:block;width:100%;height:clamp(220px,42vw,450px);object-fit:cover}.article-cover figcaption{padding:8px 12px;font-size:9px;color:#75867d}.article-answer{overflow:visible;max-height:none}.article-answer>p:not(.eyebrow){white-space:normal;overflow:visible;display:block;max-height:none;text-overflow:clip}.featured-article{grid-template-columns:1fr minmax(220px,34%)}.featured-image,.card-image,.row-image{display:block;overflow:hidden;background:#e9efea}.featured-image{height:168px}.featured-image img,.card-image img,.row-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.featured-image:hover img,.card-image:hover img,.row-image:hover img{transform:scale(1.035)}.article-list .article-row{grid-template-columns:minmax(115px,150px) 54px minmax(0,1fr) 36px;gap:23px}.row-image{height:98px}.article-card{display:flex;flex-direction:column}.article-card .card-image{height:138px;margin:0 0 20px}.article-card .article-topic{margin-top:0}.footer-bottom>span:last-child a{color:var(--ink-2);text-decoration:underline;text-underline-offset:3px}.footer-bottom{gap:18px;flex-wrap:wrap}
@media(max-width:760px){.article-list .article-row{grid-template-columns:105px 44px minmax(0,1fr) 32px;gap:13px}.row-image{height:82px}.featured-article{grid-template-columns:1fr minmax(125px,30%);gap:16px;padding:20px}.featured-image{height:132px}}
@media(max-width:520px){.article-list .article-row{grid-template-columns:88px minmax(0,1fr) 30px;gap:13px;padding-block:18px}.row-image{height:74px}.article-date{display:none}.article-details h2{font-size:19px}.article-details>p{font-size:10px}.featured-article{grid-template-columns:1fr}.featured-image{height:175px;grid-row:1}.featured-article>div:first-child{grid-row:2}.footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}.article-cover img{height:240px}}

.article-sources{padding:25px 28px;margin:32px 0;background:#fff;border:1px solid var(--line);border-left:3px solid var(--sage-deep)}.article-sources .eyebrow{margin:0 0 10px}.article-sources h2{font:23px/1.2 var(--font-display);margin:0 0 9px}.article-sources>p:not(.eyebrow){font-size:12px;line-height:1.7;color:#63766e;margin:0}.article-sources a{color:var(--ink-2);text-decoration:underline;text-underline-offset:3px;font-weight:600}.article-sources .source-extra{margin-top:8px!important}@media(max-width:640px){.article-sources{padding:21px 19px}.article-sources h2{font-size:21px}}
