
/* Smilecraft motion and finish: progressive enhancement, November 2026. */
:root{--ease-out:cubic-bezier(.22,1,.36,1);--soft-shadow:0 12px 34px -24px rgba(0,56,112,.32)}
body{background:radial-gradient(ellipse at 100% 0,#fff1e5 0,transparent 620px),var(--paper)}
h1,h2,h3{text-wrap:balance}p{orphans:3;widows:3}::selection{background:#ffd9bd;color:#003870}
.site-header{background:transparent;padding:24px 0;border-bottom-color:#e8dcd3}
.site-nav a:not(.btn){position:relative;text-decoration:none!important}
.site-nav a:not(.btn)::after{content:"";position:absolute;bottom:4px;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform 240ms var(--ease-out)}
.site-nav a[aria-current="page"]:not(.btn)::after{transform:scaleX(1)}
.group-banner{width:100%;margin:30px 0 0;border:1px solid #eee2d7;border-radius:24px;box-shadow:var(--soft-shadow);isolation:isolate}
.banner-heading{position:static;height:auto;padding:38px 24px 30px;background:linear-gradient(120deg,#fff,#fff8ef)}
.banner-heading h1{font-size:clamp(38px,4.4vw,64px);line-height:1.08;max-width:20ch}
.banner-heading .eyebrow{margin-bottom:16px}
.group-image{aspect-ratio:2.54;overflow:hidden;background:#fff}
.group-image img{transform:translateY(-21.2%)}
.banner-intro{padding:32px 0 38px;gap:36px}.banner-intro .lead{max-width:42ch;line-height:1.8}
.btn{border-radius:10px;transition:background-color 180ms ease,box-shadow 240ms ease,transform 240ms var(--ease-out)}
.btn:active{transform:translateY(1px)}
.ui-arrow{transition:translate 240ms var(--ease-out)}
.welcome-strip{background:linear-gradient(110deg,#fff0e5,#fff8ee);border:1px solid #efddce;padding:30px;border-radius:16px}
.path-grid{gap:24px}.path-card{border:1px solid #e8dcd3;border-top:3px solid #fe8737;border-radius:16px;box-shadow:0 4px 20px -18px #003870;transition:border-color 240ms ease,box-shadow 240ms ease,transform 300ms var(--ease-out)}
.path-card h3{font-size:24px;line-height:1.2}.path-card-image{border-radius:9px}.path-card a{gap:8px}.path-card p{line-height:1.75}
.service-card{border-radius:14px;box-shadow:0 5px 22px -20px #003870;transition:border-color 220ms ease,box-shadow 260ms ease,transform 300ms var(--ease-out)}
.service-card span:not(.ui-arrow){line-height:1.45}
.clinic-note{padding:48px 0 64px}.clinic-note h2{line-height:1.15}
.visit-panel{border-radius:20px;background:linear-gradient(125deg,#003870,#124e80);box-shadow:0 18px 44px -30px #003870;padding:46px}
.visit-panel .btn.whatsapp{box-shadow:0 3px 10px #00264d40}.visit-panel .small{color:#e0e9f0}
.contact-card,.location-card{box-shadow:var(--soft-shadow);border-radius:16px}
.patient-sidebar{border:1px solid #efddce;border-top:3px solid #fe8737;box-shadow:var(--soft-shadow);border-radius:14px}
.at-glance,.treatment-contents,.clinical-sources,.care-next-step,.visit-information{border-radius:12px}
.treatment-contents{background:linear-gradient(115deg,#fff0e5,#fff8ef)}
.treatment-contents a{text-decoration-thickness:1px;text-underline-offset:4px}
.treatment-content details{border:1px solid #e8dcd3;border-radius:10px;background:#fff;padding:0 18px}
.treatment-content summary{padding:18px 0}.treatment-content details[open]{border-color:#cdb7a4}.treatment-content details[open] summary{color:#003870}
.service-jumps a{border-radius:999px;transition:background-color 180ms ease,border-color 180ms ease}
.site-footer{padding:42px 0 32px;border-top-color:#dfd5ca}.footer-brand{font-size:clamp(30px,3vw,40px)}
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:20;width:46px;height:46px;display:grid;place-items:center;border:1px solid #b9c8d5;border-radius:50%;background:#fff;color:#003870;box-shadow:0 5px 20px #00387020;cursor:pointer;font-size:24px;line-height:1}
.back-to-top[hidden]{display:none}.back-to-top:focus-visible{outline:3px solid #a74308;outline-offset:4px}
@media(hover:hover) and (pointer:fine){
.site-nav a:not(.btn):hover::after,.site-nav a:not(.btn):focus-visible::after{transform:scaleX(1)}
.btn:hover{transform:translateY(-2px);box-shadow:0 8px 18px -12px #00387099}
.path-card:hover,.path-card:focus-within{transform:translateY(-4px);box-shadow:0 16px 36px -25px #00387077;border-color:#cda883}
.service-card:hover,.service-card:focus-visible{transform:translateY(-4px);box-shadow:0 14px 32px -22px #00387077}
a:hover .ui-arrow,a:focus-visible .ui-arrow{translate:3px 0}
}
@media(max-width:1000px){.banner-intro{display:block}.banner-intro .lead{max-width:65ch}.path-grid{gap:16px}.path-card{padding:22px}.visit-panel{padding:34px}}
@media(max-width:700px){
.site-header{padding:18px 0;gap:14px}.site-nav{column-gap:18px;row-gap:4px}.site-nav a{font-size:13px}.site-nav .btn{margin-top:4px}
.group-banner{margin-top:20px;border-radius:18px}.banner-heading{padding:28px 16px 24px}.banner-heading h1{font-size:clamp(32px,9vw,44px);max-width:13ch}.banner-heading .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:14px}
.banner-intro{padding:24px 0 30px}.banner-intro .lead{font-size:16px}.banner-intro .cta-row{gap:12px}.banner-intro .btn{min-height:50px}
.welcome-strip{padding:24px;border-radius:14px}.path-card{padding:24px}.path-grid{gap:20px}.section{padding:48px 0}.section-heading h2{font-size:34px}.visit-panel{padding:28px 24px;border-radius:16px}.clinic-note{padding:36px 0 42px}.back-to-top{position:static;width:44px;height:44px;margin:0 20px max(24px,env(safe-area-inset-bottom)) auto}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}.btn:hover,.btn:active,.path-card:hover,.path-card:focus-within,.service-card:hover,.service-card:focus-visible{transform:none}a:hover .ui-arrow,a:focus-visible .ui-arrow{translate:none}}
@media print{.back-to-top{display:none!important}}

.site-brand img{mix-blend-mode:multiply}
