/* Homepage services snapshot. The searchable directory stays on services.html.
   Page-scoped styles only; uses the existing Motion Plus reveal/pause behavior. */
.hm-home .hs-services-section{padding-block:2.6rem 3.9rem;background:linear-gradient(180deg,#fff 0%,#f7fbfd 60%,#f3f9fb 100%);border-bottom:1px solid #dbeaf0;scroll-margin-top:1rem}
.hm-home .hs-section-heading{display:flex;align-items:end;margin-bottom:2rem;gap:2.25rem}
.hs-section-heading>div:first-child{min-width:0;flex:1 1 auto}
.hm-home .hs-section-heading h2{font-size:clamp(2rem,3.1vw,3rem);max-width:43rem}
.hs-section-intro{flex:0 1 24rem;min-width:0;max-width:27rem}
.hm-home .hs-section-intro>p{font-size:1.125rem;line-height:1.7;margin:0 0 .9rem}
.hm-home .hs-section-intro .text-link{font-size:1.0625rem;line-height:1.5;min-height:2.75rem;padding-block:.2rem;max-width:100%}
.hs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,20rem),1fr));gap:1.2rem;align-items:stretch}
.hs-card-wrap{min-width:0;display:flex}
.hs-card{--hs-accent:#16738f;--hs-tint:#e9f5fa;display:flex;flex-direction:column;position:relative;width:100%;height:100%;min-width:0;min-height:18.2rem;padding:1.55rem 1.65rem 1.2rem;background:#fff;border:1px solid #cbdfe7;border-radius:1.1rem;box-shadow:0 5px 20px #1e526406;color:#163e48;text-decoration:none;transition:transform .4s cubic-bezier(.16,1,.3,1),box-shadow .4s,border-color .3s,background .3s}
.hs-card-fillings{--hs-accent:#b71364;--hs-tint:#fcecf3}
.hs-card-gums{--hs-accent:#87671c;--hs-tint:#fff7d9}
.hs-card-crowns{--hs-accent:#87671c;--hs-tint:#fff7d9}
.hs-card-root-canals{--hs-accent:#16738f;--hs-tint:#e9f5fa}
.hs-card-extractions{--hs-accent:#b71364;--hs-tint:#fcecf3}
.hs-card-top{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.15rem}
.hs-card-icon{display:grid;place-items:center;flex:none;width:3.25rem;height:3.25rem;border-radius:.9rem;background:var(--hs-tint);color:var(--hs-accent);transition:transform .45s cubic-bezier(.16,1,.3,1),border-radius .35s}
.hs-card-icon .icon{width:1.8rem;height:1.8rem}
.hs-card-number{font-size:1rem;line-height:1;font-weight:650;letter-spacing:.06em;color:#73868f}
.hm-home .hs-card h3{font-size:1.5rem;line-height:1.23;letter-spacing:-.025em;font-weight:750;margin:0 0 .8rem;color:#163e48}
.hm-home .hs-card>p{font-size:1.125rem;line-height:1.65;margin:0 0 1.25rem;color:#4b6772}
.hs-card-link{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;padding-top:.8rem;border-top:1px solid #e3edf1;font-size:1rem;line-height:1.4;font-weight:650;color:#24576b}
.hs-card-link>span:first-child{min-width:0}
.hs-card-arrow{width:2rem;height:2rem;flex:none;display:grid;place-items:center;border-radius:50%;background:#f0f7fa;color:#1e6078;transition:background .3s,color .3s,transform .4s}
.hs-card-arrow .icon{width:1.1rem;height:1.1rem}
.hs-card:focus-visible{outline:3px solid #b71364;outline-offset:4px;border-color:#b71364}
@media(hover:hover) and (pointer:fine){
 .hs-card:hover{transform:translateY(-6px);box-shadow:0 16px 35px #194c6512;border-color:var(--hs-accent)}
 .hs-card:hover .hs-card-icon{transform:rotate(-6deg) scale(1.05);border-radius:1.15rem}
 .hs-card:hover .hs-card-arrow{background:var(--hs-accent);color:#fff;transform:translate(2px,-2px)}
 .hs-card:hover .hs-card-link>span:first-child{text-decoration:underline;text-underline-offset:4px}
}
.hs-grid .hs-urgent{min-width:0;display:grid;grid-template-columns:3.25rem minmax(0,1fr) auto;grid-column:1/-1;margin:0!important;border-radius:1.1rem;border:1px solid #cddfe7;background:#edf6fa;padding:1.55rem 1.65rem;gap:1.25rem}
.hm-home .hs-urgent>div{min-width:0}
.hm-home .hs-urgent-label{display:block;font-size:1rem;line-height:1.5;font-weight:700;color:#92516c;letter-spacing:.07em;margin:0 0 .35rem}
.hm-home .hs-urgent h3{font-size:1.55rem;line-height:1.3;margin:0 0 .5rem;color:#163e48}
.hm-home .hs-urgent p{font-size:1.125rem;line-height:1.65;max-width:44rem;margin:0 0 .5rem}
.hm-home .hs-urgent .hc-urgent-icon{display:grid;background:#fff1f6;color:#b71364;width:3.25rem;height:3.25rem;border-radius:.9rem}
.hm-home .hs-urgent .hc-quiet-link{font-size:1.0625rem;line-height:1.5;min-height:2.75rem;display:inline-flex;align-items:center;gap:.6rem;color:#24576b}
.hm-home .hs-urgent>.btn{flex:0 1 auto;white-space:normal;min-height:3.35rem;margin:0;max-width:100%}
.hs-next-step{display:flex;justify-content:space-between;align-items:center;gap:1.5rem 2rem;margin-top:1.75rem;padding:.2rem .2rem 0}
.hs-next-step>div{min-width:0}
.hs-next-step>div:first-child{flex:1 1 27rem}
.hs-next-step strong{display:block;font-size:1.1875rem;line-height:1.45;font-weight:700;color:#163e48}
.hm-home .hs-next-step p{font-size:1.0625rem;line-height:1.65;margin:.3rem 0 0;max-width:33rem}
.hs-next-step .hc-actions{flex:0 1 auto;gap:.8rem 1.1rem;justify-content:flex-end}
.hm-home .hs-next-step .btn{font-size:1.0625rem;min-height:3.3rem;padding:.8rem 1.1rem}
.hs-call-link{display:inline-flex;align-items:center;gap:.5rem;font-size:1.0625rem;font-weight:650;line-height:1.5;color:#24576b;min-height:3rem;max-width:100%;text-decoration:underline;text-underline-offset:5px}
.hs-call-link .icon{width:1.2rem;height:1.2rem}
.hs-call-link:hover{color:#b71364}
/* Separate the quick service list from the existing hands-on comparison. */
.hm-home .hs-services-section+.hm-explorer-section{padding-top:4.1rem}
@media(max-width:1050px){
 .hs-grid{gap:1rem}.hs-card{padding:1.4rem 1.35rem 1.1rem}
 .hm-home .hs-card h3{font-size:1.4rem}.hs-next-step{align-items:flex-start;flex-wrap:wrap}.hs-next-step .hc-actions{justify-content:flex-start}
}
@media(max-width:850px){
 .hm-home .hs-section-heading{flex-direction:column;align-items:flex-start;gap:1.25rem}
 .hs-section-intro{flex:auto;max-width:40rem}.hs-section-heading>div:first-child{flex:auto}
 .hm-home .hs-section-heading h2{font-size:2.25rem}
 .hs-grid .hs-urgent{grid-template-columns:3.25rem minmax(0,1fr)}.hm-home .hs-urgent>.btn{grid-column:2;justify-self:start}
}
@media(max-width:600px){
 .hm-home .hs-services-section{padding-block:1.9rem 2.7rem}
 .hm-home .hs-section-heading{margin-bottom:1.5rem;gap:1rem}
 .hm-home .hs-section-heading h2{font-size:2.1rem}
 .hs-grid{grid-template-columns:minmax(0,1fr);gap:1rem}
 .hs-card{min-height:0;padding:1.3rem 1.4rem 1.05rem}
 .hs-card-top{margin-bottom:1rem}.hm-home .hs-card h3{font-size:1.5rem}
 .hm-home .hs-card>p{margin-bottom:1.05rem}.hs-card-link{padding-top:.7rem}
 .hs-grid .hs-urgent{display:flex;flex-direction:column;align-items:stretch;padding:1.3rem 1.4rem;gap:1rem}
 .hm-home .hs-urgent>div{min-width:0;grid-column:1/-1}
 .hs-grid .hs-urgent>.hc-urgent-icon{grid-row:1;grid-column:1}
 .hm-home .hs-urgent>.btn{grid-column:1/-1;margin:0;justify-self:start}
 .hm-home .hs-urgent h3{font-size:1.5rem}
 .hs-next-step{gap:1.1rem;margin-top:1.5rem}.hs-next-step .hc-actions{gap:.6rem;flex:1 1 100%;align-items:stretch}
 .hs-next-step .hc-actions>a{justify-content:center;flex:1 1 14rem}
 .hm-home .hs-services-section+.hm-explorer-section{padding-top:3rem}
}
.hs-section-intro,.hs-card,.hs-urgent,.hs-next-step{overflow-wrap:break-word}
.hs-card .icon,.hs-urgent .icon,.hs-next-step .icon{flex-shrink:0}
html.motion-paused .hs-services-section *,html.motion-paused .hs-services-section *:before,html.motion-paused .hs-services-section *:after{transition:none!important;animation:none!important}
@media(prefers-reduced-motion:reduce){.hs-services-section *,.hs-services-section *:before,.hs-services-section *:after{transition:none!important;animation:none!important}.hs-card:hover,.hs-card:hover .hs-card-icon,.hs-card:hover .hs-card-arrow{transform:none!important}}
@media print{.hs-services-section{background:#fff!important}.hs-card-wrap,.hs-urgent{break-inside:avoid}.hs-grid{grid-template-columns:1fr 1fr}.hs-card{box-shadow:none!important;transform:none!important}.hs-next-step{display:none}}
