/* The reading layer has its own score. Native document flow never changes. */
.sm-line{display:block;overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}
.sm-line-text{display:block;transform-origin:0 100%;backface-visibility:hidden}
.sm-hero-line{overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em;perspective:1000px}
.sm-hero-line>span{display:block;transform-origin:left center;backface-visibility:hidden}
.sm-hero-line:nth-of-type(2)>span{transform-origin:right center}
.hero-copy h1>span:nth-of-type(2){color:#527348}
.hero-lead>.sm-line{width:max-content;max-width:100%;padding-right:.22em}
.hero-lead strong{font-weight:510;color:#43683e}
.hero-lead>.sm-line:nth-of-type(2) strong{color:#42685c}
.hero-lead>.sm-line:nth-of-type(3) strong{color:#79674e}
.sm-active .sm-line-text,.sm-active .sm-doctor-name-inner{will-change:transform}
.sm-rule-host{position:relative}
.sm-rule{display:block;position:absolute;pointer-events:none;left:0;right:0;height:1px;background:var(--sm-rule-color,var(--line));transform-origin:left center;z-index:3}
.sm-rule[data-edge=top]{top:-1px}
.sm-rule[data-edge=bottom]{bottom:-1px}
.sm-border-top{border-top-color:transparent!important}
.sm-border-bottom{border-bottom-color:transparent!important}
.sm-service-grid{perspective:1300px;isolation:isolate}
.sm-service-grid>.service-cell{transform-style:preserve-3d;backface-visibility:hidden;transform-origin:50% 90%}
.sm-service-grid>.service-cell.sm-active{will-change:transform}
.sm-clock{overflow:hidden;padding-bottom:.055em;margin-bottom:-.055em}
.sm-clock-digit{display:inline-block;transform-origin:50% 85%;backface-visibility:hidden}
.sm-doctor-name{overflow:hidden;padding-bottom:.1em;margin-bottom:-.1em}
.sm-doctor-name-inner{display:block;transform-origin:left bottom;backface-visibility:hidden}
.sm-route-text{display:block;transform-origin:left center}
.sm-route-scene h2{perspective:900px}
.hero-routes{perspective:1000px;isolation:isolate;width:min(100%,390px)}
.hero-routes>a{position:relative;isolation:isolate;min-height:89px;padding:16px 16px;margin-left:-16px;width:calc(100% + 16px);gap:24px;transform-origin:left center;backface-visibility:hidden;transition:border-color .35s ease,color .35s ease}
.hero-routes>a>.sm-route-text{position:relative;z-index:2;min-width:0}
.sm-route-ground{position:absolute!important;display:block;inset:5px 0!important;z-index:-1;pointer-events:none;background:#e2ecda4a;border-radius:9px;transform-origin:left center;transition:background-color .35s ease,box-shadow .35s ease}
.hero-routes>a::after{content:none}
.hero-routes>a>svg{position:relative;z-index:2;width:24px;height:24px;flex:none;color:#53734a;transition:transform .45s cubic-bezier(.2,.7,.2,1),color .3s ease}
.hero-routes>a:hover .sm-route-ground,.hero-routes>a:focus-visible .sm-route-ground{background:#d6e4cb;box-shadow:inset 0 0 0 1px #9db98b42}
.hero-routes>a:hover,.hero-routes>a:focus-visible{border-color:#a2bb99;color:#214a35}
.hero-routes>a:hover>svg,.hero-routes>a:focus-visible>svg{transform:translate(3px,-3px);color:#28503a}
.hero-routes>a:focus-visible{outline:2px solid #456d3e;outline-offset:5px}
.hero-routes a small{color:#4d6752;font-weight:380}
.sm-contact-link{display:block;overflow:hidden;padding:.04em 0;margin:-.04em 0}
.sm-contact-link>span{display:block;transform-origin:left center}
.services .section-heading{position:relative;min-height:365px}
.directions-art{position:absolute;left:0;top:62px;width:29%;max-width:285px;height:300px;pointer-events:none}
/* The second scene reserves a real volume for the 3D time. Its DOM fallback is
   not removed until the module has rendered, and its accessible image stays. */
.morning.section{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);column-gap:3vw;min-height:880px;padding-top:112px;padding-bottom:50px}
.morning-title{align-self:start;max-width:620px}
.morning-title h2{font-size:clamp(56px,6.4vw,106px);line-height:1.06}
.morning-emphasis{color:#d7e6c8}
.morning-clock{grid-column:2;grid-row:1/span 2;width:100%;max-width:660px;height:clamp(330px,31vw,480px);margin:0;align-self:center;justify-self:center;display:flex;align-items:center;justify-content:center;isolation:isolate}
.morning-clock .clock-number{width:100%;font-size:clamp(160px,20vw,345px);line-height:1.1;letter-spacing:-.07em;color:#d9e8ca;text-align:center;margin:0}
.clock-model-ready .morning-clock .clock-number,.morning-clock.clock-model-ready .clock-number{visibility:hidden}
.morning-copy{grid-column:1;grid-row:2;margin-top:34px;max-width:450px}
.morning-copy .large-copy{font-family:var(--display);font-size:clamp(23px,2.1vw,33px);line-height:1.32;letter-spacing:-.025em;font-weight:330}
.morning-copy>p+p{max-width:38ch;color:#c7d7c0;line-height:1.65}
.morning-copy .line-link{margin-top:22px}
.morning-foot{margin-top:55px;color:#bdd0b4}
.finale-wordmark[data-fluid-reveal-mask]{overflow:hidden;padding-bottom:.14em;margin-bottom:-.14em}
@media(max-width:600px){
  .sm-service-grid{perspective:1000px}
  .sm-service-grid>.service-cell{transform-origin:50% 75%}
  .hero-routes{width:calc(100% - 4px)}
  .hero-routes>a{min-height:80px;padding-top:14px;padding-bottom:14px;gap:17px}
  .hero-routes>a>svg{width:22px;height:22px}
  .sm-route-ground{border-radius:8px}
}
@media(prefers-reduced-motion:reduce){
  .sm-line,.sm-hero-line,.sm-doctor-name,.sm-clock,.sm-contact-link{overflow:visible}
  .sm-active .sm-line-text,.sm-active .sm-doctor-name-inner,.sm-service-grid>.service-cell.sm-active{will-change:auto}
  .hero-routes>a,.hero-routes>a>svg,.sm-route-ground{transition:none}
}
@media(max-width:1100px){.directions-art{width:29%;max-width:250px;height:285px;top:67px}.services .section-heading{min-height:360px}}
@media(max-width:780px){.directions-art{position:relative;grid-column:1;grid-row:auto;left:auto;top:auto;width:min(80%,290px);max-width:none;height:285px;margin:20px auto 0}.services .section-heading{min-height:0}}
