/* Homepage-only refinements */
.site-preloader{background:radial-gradient(circle at 50% 42%,#343d35 0%,#202b23 65%,#172019 100%)}
.preloader-inner small{color:#d3e3d0}.preloader-line{background:#50604e}
.about-band .about-image{transform:translateY(32px)}
.clinic-process-description{color:#647267;font-size:14px;line-height:1.75;margin:8px 0 22px}
.clinic-step-meta{display:block;font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#779647;margin-top:7px}
.clinic-auto-slider{display:flex!important;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;scroll-behavior:smooth;overscroll-behavior-x:contain;padding-bottom:10px}
.clinic-auto-slider::-webkit-scrollbar{display:none}
.clinic-auto-slider>.service-card{flex:0 0 calc((100% - 24px)/2);scroll-snap-align:start;min-width:0}
.home-clinic-gallery.clinic-auto-slider>.service-card{flex-basis:calc((100% - 48px)/3)}
.clinic-slider-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:14px}
.clinic-slider-controls button{border:1px solid #b9d49c;border-radius:50%;background:white;color:#336d24;width:38px;height:38px;cursor:pointer;font-size:20px;transition:background .2s,transform .2s}
.clinic-slider-controls button:hover{background:#eaf5df;transform:translateY(-2px)}
.clinic-slider-status{font-size:12px;color:#62834c;font-weight:700;min-width:45px;text-align:center}
@media(max-width:850px){.clinic-auto-slider>.service-card,.home-clinic-gallery.clinic-auto-slider>.service-card{flex-basis:85%}.about-band .about-image{transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){.clinic-auto-slider{scroll-behavior:auto}}
/* Centered infinite coverflow: transforms never scroll the document. */
.clinic-auto-slider{position:relative!important;display:block!important;height:420px;overflow:hidden!important;scroll-snap-type:none!important;scroll-behavior:auto!important;padding:15px 0 30px!important;isolation:isolate}
.clinic-auto-slider>.service-card,.home-clinic-gallery.clinic-auto-slider>.service-card{position:absolute!important;left:50%;top:12px;width:min(34%,360px)!important;height:360px;min-width:0!important;display:block;opacity:0;pointer-events:none;transform:translateX(calc(-50% + var(--offset)*82%)) scale(.75);transition:transform .55s ease,opacity .55s ease,filter .55s ease;filter:blur(2px);margin:0!important;overflow:hidden}
.clinic-auto-slider>.service-card.is-center{opacity:1;filter:none;pointer-events:auto;transform:translateX(-50%) scale(1)}
.clinic-auto-slider>.service-card.is-neighbor{opacity:.5;filter:blur(1px);pointer-events:auto;transform:translateX(calc(-50% + var(--offset)*85%)) scale(.83)}
.clinic-auto-slider>.service-card:not(.is-center):not(.is-neighbor):not(.is-far){opacity:.24;transform:translateX(calc(-50% + var(--offset)*82%)) scale(.72)}
.clinic-auto-slider>.service-card .service-image{height:220px}
.clinic-slider-controls{justify-content:center!important;margin-top:0!important}
.about-band .about-grid{align-items:start;gap:5%}
.about-band .about-grid>div:nth-child(2)>h2{margin:10px 0 14px!important;font-size:clamp(2.5rem,4.3vw,4.6rem);line-height:1.05}
.about-band .about-grid>div:nth-child(2)>p{margin:0 0 12px!important;line-height:1.55}
.about-band .care-steps-heading{margin-top:10px!important}
.about-band .clinic-process-description{margin:6px 0 10px!important;line-height:1.5}
.about-band .about-image{transform:translateY(90px)!important}
.clinic-timeline-step:not(.is-active) .clinic-timeline-number{background:#fff!important;color:#82ad42!important}
.clinic-timeline-step.is-active .clinic-timeline-number{background:#86af43!important;color:#fff!important}
@media(max-width:850px){.clinic-auto-slider{height:365px}.clinic-auto-slider>.service-card,.home-clinic-gallery.clinic-auto-slider>.service-card{width:64%!important;height:315px;transform:translateX(calc(-50% + var(--offset)*78%)) scale(.75)}.clinic-auto-slider>.service-card.is-neighbor{transform:translateX(calc(-50% + var(--offset)*78%)) scale(.8)}.clinic-auto-slider>.service-card .service-image{height:185px}.about-band .about-image{transform:none!important}}
@media(prefers-reduced-motion:reduce){.clinic-auto-slider>.service-card{transition:none}}
/* Five-step alignment refinement: desktop only, no changes to sliders or content. */
@media (min-width:851px){
  .about-band .about-grid>div:nth-child(2){position:relative}
  .about-band .about-grid>div:nth-child(2)>.eyebrow{margin-top:0!important}
  .about-band .about-grid>div:nth-child(2)>h2{margin-top:0!important;margin-bottom:8px!important;line-height:1.02!important}
  .about-band .about-grid>div:nth-child(2)>p{margin-top:0!important;margin-bottom:8px!important;line-height:1.45!important}
  .about-band .care-steps-heading{margin-top:4px!important}
  .about-band .clinic-process-description{margin:4px 0 8px!important}
  .about-band .about-image{transform:translateY(150px)!important}
}

/* Treatment carousel: image-led cards with captions only on the active slide. */
#treatments .clinic-auto-slider{height:440px!important}
#treatments .clinic-auto-slider>.service-card{height:390px!important;width:min(36%,400px)!important;background:#fff!important;border:1px solid #dce8d4!important;box-shadow:0 15px 35px rgba(25,54,28,.10)!important;filter:none!important}
#treatments .clinic-auto-slider>.service-card.is-neighbor{opacity:.68!important;filter:none!important;transform:translateX(calc(-50% + var(--offset)*102%)) scale(.85)!important}
#treatments .clinic-auto-slider>.service-card.is-center{opacity:1!important;transform:translateX(-50%) scale(1)!important}
#treatments .clinic-auto-slider>.service-card:not(.is-center):not(.is-neighbor){opacity:0!important;pointer-events:none!important}
#treatments .clinic-auto-slider>.service-card .service-image{height:245px!important;width:100%!important;overflow:hidden;border-radius:14px}
#treatments .clinic-auto-slider>.service-card .service-image img{width:100%;height:100%;object-fit:cover}
#treatments .clinic-auto-slider>.service-card:not(.is-center) .number,#treatments .clinic-auto-slider>.service-card:not(.is-center) .service-bottom,#treatments .clinic-auto-slider>.service-card:not(.is-center)>p{opacity:0!important}
#home-dentists .dentist-no-images{max-width:1100px;grid-template-columns:repeat(2,minmax(0,1fr))}
#home-dentists .dentist-no-images .dentist-reveal-card{min-height:160px!important;padding:28px!important;background:linear-gradient(135deg,#f2f8ed,#e5f0db)!important;border:1px solid #d3e5c8;box-shadow:0 10px 30px #24452712}
#home-dentists .dentist-no-images .dentist-reveal-card:after{display:none!important}
#home-dentists .dentist-no-images .dentist-reveal-content{position:relative!important;inset:auto!important;transform:none!important;padding:0!important;color:#1d3823!important}
#home-dentists .dentist-no-images .dentist-reveal-content h3{color:#1d3823!important;font-size:24px!important}
#home-dentists .dentist-no-images .dentist-reveal-content small{color:#668b3e!important;font-size:14px!important}
@media(max-width:700px){#treatments .clinic-auto-slider>.service-card{width:76%!important}#home-dentists .dentist-no-images{grid-template-columns:1fr}}

/* Matching, full-image rotating showcase for treatments and clinic gallery. */
#treatments .showcase-slider,#home-gallery .showcase-slider{height:365px!important;overflow:hidden!important;position:relative!important;isolation:isolate}
#treatments .showcase-slider>.service-card,#home-gallery .showcase-slider>.service-card{position:absolute!important;top:8px!important;left:50%!important;width:min(34%,360px)!important;height:335px!important;min-width:0!important;padding:8px!important;border-radius:18px!important;background:#fff!important;box-shadow:0 12px 28px rgba(0,0,0,.09)!important;transition:transform .55s ease,opacity .55s ease!important}
#treatments .showcase-slider>.service-card .service-image,#home-gallery .showcase-slider>.service-card .service-image{height:100%!important;width:100%!important;border-radius:12px!important;overflow:hidden!important;background:#f4f7f2!important}
#treatments .showcase-slider>.service-card .service-image img,#home-gallery .showcase-slider>.service-card .service-image img{height:100%!important;width:100%!important;object-fit:cover!important;object-position:center!important;display:block!important}
#treatments .showcase-slider>.service-card.is-center,#home-gallery .showcase-slider>.service-card.is-center{opacity:1!important;filter:none!important;transform:translateX(-50%) scale(1)!important;pointer-events:auto!important}
#treatments .showcase-slider>.service-card.is-neighbor,#home-gallery .showcase-slider>.service-card.is-neighbor{opacity:.42!important;filter:blur(1.5px)!important;transform:translateX(calc(-50% + var(--offset)*95%)) scale(.85)!important;pointer-events:auto!important}
#treatments .showcase-slider>.service-card:not(.is-center):not(.is-neighbor),#home-gallery .showcase-slider>.service-card:not(.is-center):not(.is-neighbor){opacity:0!important;pointer-events:none!important}
#treatments .showcase-slider>.service-card .number,#treatments .showcase-slider>.service-card .service-bottom,#treatments .showcase-slider>.service-card>p,#home-gallery .showcase-slider>.service-card .service-bottom{display:none!important}
.showcase-caption{text-align:center;max-width:760px;margin:12px auto 16px;min-height:70px;animation:showcaseCaption .35s ease}
.showcase-caption h3{font-size:clamp(20px,2.2vw,27px);line-height:1.25;margin:0 0 7px;color:var(--primary,#36852c)}
.showcase-caption p{margin:0;color:#526052;line-height:1.6;font-size:16px}
#treatments .clinic-slider-controls,#home-gallery .clinic-slider-controls{margin:0 auto 12px!important;justify-content:center!important}
#treatments .clinic-slider-controls button,#home-gallery .clinic-slider-controls button{width:45px;height:45px;border-color:var(--primary,#36852c);color:var(--primary,#36852c)}
@keyframes showcaseCaption{from{opacity:.2;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:700px){#treatments .showcase-slider,#home-gallery .showcase-slider{height:310px!important}#treatments .showcase-slider>.service-card,#home-gallery .showcase-slider>.service-card{width:74%!important;height:280px!important}#treatments .showcase-slider>.service-card.is-neighbor,#home-gallery .showcase-slider>.service-card.is-neighbor{transform:translateX(calc(-50% + var(--offset)*83%)) scale(.83)!important}.showcase-caption{padding:0 12px;min-height:85px}}
@media(prefers-reduced-motion:reduce){#treatments .showcase-slider>.service-card,#home-gallery .showcase-slider>.service-card{transition:none!important}.showcase-caption{animation:none}}

/* Ensure both showcase images fill their entire cards. */
#treatments .showcase-slider>.service-card .service-image img,#home-gallery .showcase-slider>.service-card .service-image img{width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:cover!important;object-position:center!important}

/* FIX 2026-10-16: override legacy treatment two-column grid layout.
   The old #treatments .service-card rule reserves 58% of the slide
   for hidden captions, leaving the image confined to 42%. */
#treatments .showcase-slider > .service-card,
#home-gallery .showcase-slider > .service-card {
    display: block !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
}
#treatments .showcase-slider > .service-card > .service-image,
#home-gallery .showcase-slider > .service-card > .service-image {
    display: block !important;
    position: relative !important;
    grid-row: auto !important;
    grid-column: auto !important;
    float: none !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
}
#treatments .showcase-slider > .service-card > .service-image > img,
#home-gallery .showcase-slider > .service-card > .service-image > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
}
