/* Home refinements: warm editorial recognition section + high-contrast availability marquee. */
.availability-bar {
  min-height:56px; height:56px; background:linear-gradient(110deg,#214E4B 0%,#286760 53%,#20534F 100%);
  color:#FAFBF6; border-top:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(20,38,43,.17); font-size:.86rem; font-weight:600;
  letter-spacing:.043em; box-shadow:inset 0 0 24px rgba(145,228,176,.07);
}
.availability-bar__track { animation:availabilityScroll 34s linear infinite; }
.availability-bar__message {
  display:grid; flex:none; grid-template-columns:max-content 6px max-content 6px max-content;
  align-items:center; column-gap:clamp(26px,3.1vw,46px);
  padding-inline:clamp(44px,5.4vw,92px); row-gap:0; white-space:nowrap;
  text-decoration:none; color:inherit;
}
.availability-bar__status {
  display:inline-flex; align-items:center; gap:10px;
  padding:7px 16px; border-radius:999px;
  border:1px solid rgba(216,253,216,.47); background:rgba(206,245,215,.13);
  color:#F4F9E8; font-weight:700;
  text-shadow:0 0 11px rgba(223,254,225,.56);
  box-shadow:0 0 17px rgba(204,244,214,.22),inset 0 0 9px rgba(223,255,225,.06);
  animation:homeAvailabilityGlow 3.4s ease-in-out infinite;
}
.availability-bar__status::before {
  content:"";flex:none;width:7px;height:7px;border-radius:50%;
  background:#CDF5D1; box-shadow:0 0 8px rgba(201,255,218,.95),0 0 18px rgba(161,240,187,.48);
}
.availability-bar__location { font-weight:550; }
.availability-bar__dot {width:6px;height:6px;background:#F6D9AD;box-shadow:0 0 9px rgba(252,223,172,.35);}
.availability-bar__cta {
  color:#FFF0D4; font-weight:750; text-decoration:underline!important;
  text-decoration-thickness:1.5px!important;text-underline-offset:4px!important;
  transition:color .2s ease,text-shadow .2s ease; border-radius:3px;
}
.availability-bar__cta:hover,.availability-bar__cta:focus-visible {
  color:#FFF; text-shadow:0 0 9px rgba(255,247,219,.6);
}
@keyframes homeAvailabilityGlow {
  0%,100% {box-shadow:0 0 13px rgba(207,245,216,.17),inset 0 0 8px rgba(223,255,225,.05);}
  50% {box-shadow:0 0 24px rgba(207,245,216,.34),inset 0 0 12px rgba(223,255,225,.10);}
}
@media(max-width:640px){
  .availability-bar{height:48px;min-height:48px;font-size:.76rem;letter-spacing:.025em;}
  .availability-bar__message{column-gap:clamp(20px,4.5vw,28px);padding-inline:30px;grid-template-columns:max-content 6px max-content 6px max-content;}
  .availability-bar__status{padding:6px 12px;}
}
@media(prefers-reduced-motion:reduce){
  .availability-bar{overflow-x:auto;}
  .availability-bar__track{animation:none!important;min-width:max-content;width:max-content;justify-content:flex-start;}
  .availability-bar__message{display:grid;white-space:nowrap;padding-inline:20px;}
  .availability-bar__message[aria-hidden="true"]{display:none;}
  .availability-bar__status{animation:none;}
}

/* The "I'm fine" editorial section intentionally replaces the old thought ticker and duplicate tile grid. */
.page[data-page="home"] .home-recognition {
  background:#EDEFE9; position:relative; isolation:isolate; overflow:hidden;
  padding:clamp(68px,8.5vw,116px) 0;
  border-top:1px solid rgba(20,38,43,.06);
}
.page[data-page="home"] .home-recognition::before{
  content:"";position:absolute;z-index:-1;pointer-events:none;
  width:min(37vw,420px);height:min(37vw,420px);border-radius:50%;
  left:-13%;top:-135px;background:rgba(223,206,196,.18);
}
.home-recognition__grid {
  display:grid; grid-template-columns:minmax(0,.87fr) minmax(0,1.13fr);
  gap:clamp(38px,6.5vw,88px); align-items:center;
}
.home-recognition__visual{width:100%;min-width:0;justify-self:center;}
.home-recognition__photo-frame{
  position:relative; margin:0 auto; width:100%;max-width:485px; padding:8px;
  background:rgba(255,255,255,.78); border:1px solid rgba(20,38,43,.10);
  border-radius:22px;box-shadow:0 17px 38px rgba(20,38,43,.11);
}
.home-recognition__photo-frame::before {
  content:"";position:absolute;z-index:-1;pointer-events:none;
  inset:14px 8px -11px -11px; background:rgba(147,168,150,.27);
  border-radius:20px;transform:rotate(-1.25deg);
}
.recognition__photo {
  display:block; width:100%; height:auto!important; max-height:none!important;
  aspect-ratio:6/5!important; object-fit:cover!important;
  object-position:50% 25%!important; border:0!important;
  border-radius:15px!important; box-shadow:none!important;
}

.home-recognition__copy{width:100%;min-width:0;max-width:660px;}
.home-recognition__copy>.eyebrow{margin-bottom:14px;}
.home-recognition__headline{
  max-width:16ch;font-size:clamp(2.4rem,4.1vw,3.85rem);
  line-height:1.04;letter-spacing:-.028em;margin:0;
}
.home-recognition__intro{
  max-width:52ch;font-size:clamp(1rem,1.25vw,1.1rem);
  line-height:1.68;margin:20px 0 28px;color:var(--ink-soft);
}
.home-recognition__reasons-label{
  display:block;font-size:.73rem;line-height:1.3;margin:0 0 12px;
  letter-spacing:.14em;color:var(--euc-deep);
}
.home-recognition__reasons{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px; padding:0;margin:0;list-style:none;
}
.home-recognition__reasons li {
  display:flex;align-items:center;gap:11px;min-width:0;
  padding:12px 14px; min-height:60px; background:rgba(255,255,255,.66);
  border:1px solid rgba(20,38,43,.075);border-radius:12px;
  color:var(--ink-soft);font-family:var(--f-sans);
  font-size:clamp(.91rem,1.08vw,1.0rem);line-height:1.38;
}
.home-recognition__reasons li::before{
  content:"";width:7px;height:7px;border-radius:50%;flex:0 0 7px;
  background:#78A18A;box-shadow:0 0 0 3px rgba(147,168,150,.13);
}
.home-recognition__next{margin-top:26px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;}
.home-recognition__next p{
  max-width:24ch;font-family:var(--f-display);
  font-size:clamp(1.05rem,1.5vw,1.3rem);font-style:italic;line-height:1.25;color:var(--ink);
  margin:0;
}
.home-recognition__next .btn{white-space:normal;text-align:center;}
@media(max-width:1050px){
  .home-recognition__grid{gap:clamp(28px,4vw,48px);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);}
  .home-recognition__headline{font-size:clamp(2.1rem,3.65vw,3.2rem);}
}
@media(max-width:900px){
  .home-recognition__grid{grid-template-columns:1fr;gap:34px;}
  .home-recognition__visual{justify-self:center;}
  .home-recognition__photo-frame{max-width:610px;}
  .home-recognition__copy{max-width:660px;justify-self:center;}
  .home-recognition__headline{font-size:clamp(2.25rem,6vw,3.6rem);}
}
@media(max-width:600px){
  .page[data-page="home"] .home-recognition{padding:60px 0 70px;}
  .home-recognition__grid{gap:30px;}
  .home-recognition__reasons{grid-template-columns:1fr;gap:8px;}
  .home-recognition__reasons li{min-height:52px;padding:11px 13px;}
  .home-recognition__next{align-items:stretch;flex-direction:column;gap:16px;}
  .home-recognition__next .btn{width:100%;}
}


/* Home-only visual hierarchy: warm tan hero, clean cream welcome,
   muted blush recognition, sage outcomes, cool-mist virtual practice. */
.page[data-page="home"] > .hero {background:#F3EFE7!important;border-bottom:1px solid rgba(20,38,43,.065);}
.page[data-page="home"] > .hero h1 em {color:#315A58;}
.page[data-page="home"] > .home-welcome {background:#FBF8F3;}
.page[data-page="home"] > .home-recognition {background:#F1E6E1;border-top:1px solid rgba(20,38,43,.065);}
.page[data-page="home"] > .outcomes-band {background:#E7EFE7;}
.page[data-page="home"] > .home-location {background:#E6EEEE;border-top:1px solid rgba(20,38,43,.07);}

/* Extend the existing white credentials card and center its CTA inside. */
.home-welcome .welcome-credentials-card {
  margin-top:28px;padding:clamp(19px,2.65vw,28px);
  border:1px solid rgba(110,136,117,.17);border-radius:19px;
  background:rgba(255,255,255,.88);
  box-shadow:0 12px 30px rgba(20,38,43,.055);
}
.home-welcome .welcome-credentials-card .welcome-creds {
  margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;
}
.home-welcome .welcome-credentials-action {
  display:flex;justify-content:center;align-items:center;margin-top:18px;
  padding-top:23px;padding-bottom:4px;border-top:1px solid rgba(20,38,43,.11);
}
.home-welcome .welcome-meet-button {
  display:inline-flex;justify-content:center;text-align:center;
  box-shadow:0 0 0 1px rgba(98,164,139,.13),0 0 22px rgba(84,149,124,.24),0 7px 17px rgba(20,38,43,.11);
  transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;
}
.home-welcome .welcome-meet-button:hover,.home-welcome .welcome-meet-button:focus-visible {
  transform:translateY(-1px);
  box-shadow:0 0 0 2px rgba(112,179,153,.22),0 0 30px rgba(84,149,124,.33),0 10px 22px rgba(20,38,43,.12);
}
@media(prefers-reduced-motion:reduce){
  .home-welcome .welcome-meet-button {transition:none;}
  .home-welcome .welcome-meet-button:hover {transform:none;}
}

/* In the recognition section, copy comes first and the taller mug portrait sits on the right. */
.home-recognition__grid {
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:clamp(36px,4.5vw,64px);align-items:center;
}
.home-recognition__copy {order:1;max-width:none;}
.home-recognition__visual {order:2;justify-self:stretch;align-self:center;}
.home-recognition__photo-frame {max-width:465px;}
.recognition__photo {
  aspect-ratio:4/5!important;object-fit:cover!important;
  object-position:50% 29%!important;
}
.home-recognition__headline {
  max-width:none;
  font-size:clamp(2.15rem,2.6vw,2.8rem);
  line-height:1.08;letter-spacing:-.035em;
}
@media(min-width:1320px) {.home-recognition__headline {white-space:nowrap;}}
@media(max-width:1080px) {
  .home-recognition__grid {grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);}
  .home-recognition__headline {font-size:clamp(2.0rem,3.15vw,2.6rem);}
}
@media(max-width:900px) {
  .home-recognition__grid {grid-template-columns:1fr;gap:32px;}
  .home-recognition__copy {order:1;max-width:690px;justify-self:center;}
  .home-recognition__visual {order:2;justify-self:center;width:100%;max-width:550px;}
  .home-recognition__headline {white-space:normal;font-size:clamp(2.15rem,5.2vw,3.0rem);}
  .home-recognition__photo-frame {max-width:520px;}
}
@media(max-width:600px) {
  .home-recognition__headline {font-size:clamp(2.2rem,9.8vw,2.8rem);}
  .recognition__photo {aspect-ratio:4/5!important;}
}

/* A unified, calm font system and balanced card treatment for the practice section. */
.page[data-page="home"] .home-location {padding-block:clamp(68px,8vw,104px);}
.home-location .practice-split {
  background:rgba(255,255,255,.83);border:1px solid rgba(48,93,99,.14);
  border-radius:22px;box-shadow:0 15px 35px rgba(20,38,43,.06);
  padding:clamp(28px,4.7vw,54px);
  gap:clamp(30px,5vw,68px);align-items:center;
  grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);
}
.home-location .practice-split .eyebrow,
.home-location .practice-split .practice-heading,
.home-location .practice-split .practice-details p,
.home-location .practice-split .practice-details .btn {
  font-family:var(--f-sans)!important;
  font-size:clamp(1.03rem,1.22vw,1.13rem)!important;
  line-height:1.6!important;
}
.home-location .practice-split .eyebrow {
  font-weight:650;letter-spacing:.09em;color:#3D6F64;margin:0 0 12px;
}
.home-location .practice-split .practice-heading {
  font-style:normal;font-weight:600;letter-spacing:-.012em;
  max-width:none!important;margin:0!important;color:var(--ink);
}
.home-location .practice-split .practice-details {
  border-left:1px solid rgba(47,93,99,.18);
  padding-left:clamp(26px,3.3vw,48px);
}
.home-location .practice-split .practice-details p {
  color:var(--ink-soft);margin:0;
}
.home-location .practice-split .practice-details p + p {
  margin-top:25px!important;
}
.home-location .practice-split .practice-details .btn {
  display:inline-flex;max-width:100%;font-weight:650;
  white-space:normal;text-align:center;
}
@media(max-width:900px) {
  .home-location .practice-split {grid-template-columns:1fr;gap:25px;}
  .home-location .practice-split .practice-details {
    border-left:0;border-top:1px solid rgba(47,93,99,.18);
    padding:25px 0 0;
  }
}
@media(max-width:600px) {
  .home-welcome .welcome-credentials-card {padding:20px;}
  .home-welcome .welcome-credentials-action {padding-top:22px;margin-top:15px;}
  .home-welcome .welcome-meet-button {width:100%;}
  .home-location .practice-split {padding:24px 21px;}
  .home-location .practice-split .practice-details .btn {width:100%;}
}

/* Keep the virtual-practice call to action visible inside its bright card. */
.page[data-page="home"] .home-location .practice-details .btn--white-teal {
  background:#2F5D63!important;
  color:#fff!important;
  border:1px solid rgba(47,93,99,.8)!important;
  box-shadow:0 8px 22px rgba(35,89,93,.17);
  transition:background-color .2s ease,box-shadow .2s ease;
}
.page[data-page="home"] .home-location .practice-details .btn--white-teal:hover,
.page[data-page="home"] .home-location .practice-details .btn--white-teal:focus-visible {
  background:#234E54!important;
  box-shadow:0 10px 26px rgba(35,89,93,.24);
}
