@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#173f39;--paper:#faf9f2;--muted:#5d7168;--line:#d8dfd4;--teal:#185a4f;--coral:#f9ad94}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'DM Sans',Arial,sans-serif}h1,h2,h3,h4,p{margin:0}h1,h2,h3,.brand{font-family:Manrope,Arial,sans-serif}h1{font-size:clamp(3rem,5.8vw,6.1rem);font-weight:500;line-height:1.06;letter-spacing:-.065em;margin:24px 0}h2{font-size:clamp(2rem,3.4vw,3.5rem);line-height:1.15;letter-spacing:-.05em;font-weight:500}h3{font-size:1.55rem;line-height:1.25;letter-spacing:-.04em}em{font-family:Georgia,serif;font-weight:400}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a,button{touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b35a32;outline-offset:4px}main:focus{outline:none}.skip{position:fixed;top:-100px;z-index:20;background:white;padding:12px}.skip:focus{top:0}.demo-bar{background:var(--ink);color:#f8faeb;text-align:center;font-size:11px;letter-spacing:.04em;padding:8px 20px}.demo-bar a{margin-left:12px}header{display:flex;justify-content:space-between;align-items:center;padding:24px 5%;border-bottom:1px solid var(--line);gap:20px;background:var(--paper)}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-size:20px;font-weight:800;line-height:1.05;letter-spacing:-.05em}.brand-home{display:block}.brand-icon{font-size:49px;color:var(--teal);line-height:1}nav{display:flex;align-items:center;gap:30px}nav>a:not(.button){text-decoration:none;font-size:14px}nav .staff{font-size:11px!important;border-bottom:1px solid}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;background:var(--teal);color:white;border:1px solid var(--teal);border-radius:7px;padding:17px 24px;text-decoration:none;font-size:14px;font-weight:600;transition:transform .2s,background .2s}.button:hover{background:#0a4038;transform:translateY(-2px)}.button.small{padding:12px 18px;gap:12px}.text{border:0;background:none;padding:8px 0;color:var(--ink);font-size:14px}.text:hover{text-decoration:underline}.hero{padding:65px 5% 70px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;max-width:1600px;margin:auto}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.16em;display:block;line-height:1.7}.eyebrow i{display:inline-block;width:7px;height:7px;background:var(--teal);border-radius:50%;margin-right:7px}.lede{font-size:17px;line-height:1.8;color:var(--muted);max-width:490px}.actions{display:flex;gap:25px;align-items:center;margin:30px 0 40px}.plain-link{font-size:13px}.hero-note{display:flex;align-items:center;gap:14px;font-size:11px;color:var(--muted)}.hero-note>span{font-size:36px;color:var(--teal)}.hero-note strong{font-weight:500}.hero-art{width:100%;display:block;animation:arrive .8s ease-out}.art-wrap{position:relative}.art-label{position:absolute;bottom:23px;left:0;background:#fffef9;padding:17px 23px;display:flex;gap:13px;border:1px solid #dce0d1;border-radius:12px;box-shadow:0 12px 30px #173f3912;font-size:13px;font-weight:600}.art-label small{display:block;font-size:10px;font-weight:400;color:var(--muted)}.mini-icon{display:grid;place-items:center;background:#f9b49a;width:40px;height:40px;border-radius:50%;font-size:25px}.announcement{margin:0 5%;padding:30px 35px;display:flex;align-items:center;gap:25px;background:#e7edcf;border-radius:10px}.announcement h2{font-size:24px;margin:4px 0}.announcement p{font-size:13px;max-width:650px}.announcement-icon{font-size:40px}.announcement .button{margin-left:auto;white-space:nowrap}.outline{background:transparent;color:var(--ink)}.outline:hover{color:white}.section{padding:90px 5%;max-width:1600px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:35px;gap:20px}.section-heading h2{margin-top:12px}.section-heading p{font-size:13px;color:var(--muted)}.clinic-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.clinic-card{background:var(--card);border-radius:9px;overflow:hidden;text-decoration:none;padding:23px;transition:transform .25s}.clinic-card:hover{transform:translateY(-7px)}.card-top{display:flex;justify-content:space-between;font-size:9px;font-weight:700;letter-spacing:.12em}.card-top span:last-child{font-size:18px}.clinic-symbol{font-size:92px;line-height:1.6;text-align:center;font-family:Georgia,serif}.clinic-card h3{min-height:62px;font-size:23px;max-width:220px}.clinic-card p{font-size:11px;margin:12px 0 28px}.card-foot{border-top:1px solid #173f3940;padding-top:15px;display:flex;justify-content:space-between;font-size:11px}.care-section{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:75px 7%;background:var(--ink);color:#fcfaed}.care-section h2{margin:20px 0}.care-section p{max-width:420px;color:#d1dfd5;font-size:14px;margin-bottom:30px}.light{background:#d6e9ac;color:var(--ink);border-color:#d6e9ac}.light:hover{color:white}.service-list{padding-top:20px}.service-list a{display:flex;gap:25px;align-items:center;padding:25px 0;border-bottom:1px solid #ffffff35;text-decoration:none;font-size:21px}.service-list a span:first-child{font-size:10px;color:#ccdcba}.service-list a span:last-child{margin-left:auto}.service-list small{display:block;font-size:10px;margin-top:20px;color:#c2d0c7}.welcome{text-align:center;padding:90px 20px}.welcome h2{margin:20px 0}.welcome p{font-size:14px;color:var(--muted);margin-bottom:25px}footer{border-top:1px solid var(--line);padding:50px 5% 25px;display:grid;grid-template-columns:1fr 1fr;gap:35px}footer p{font-size:12px;margin:20px 0}footer small{font-size:10px;color:var(--muted)}footer>div:nth-child(2){display:grid;justify-content:end;gap:10px;font-size:12px}.footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;margin:0;font-size:10px}.clinic-hero{background:var(--card);padding:35px 5% 60px}.clinic-hero>a{font-size:12px}.clinic-hero-grid{display:grid;grid-template-columns:2fr 1fr;gap:10%;align-items:center;max-width:1400px;margin:auto}.clinic-hero h1{max-width:850px}.clinic-hero .button{margin-top:25px}.giant-symbol{font-size:220px;text-align:center}.detail-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.detail-grid h2{margin:15px 0 30px}.service-row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:20px 0}.info-panel{background:#ecefdf;border-radius:10px;padding:35px}.info-panel h4{font-size:12px;margin:25px 0 8px}.info-panel p{font-size:14px}.info-panel a{display:inline-block;font-size:13px;margin-top:20px}.muted{font-size:11px!important;color:var(--muted);margin-top:16px}.flow{padding:40px 5% 80px}.flow>a{font-size:12px}.flow-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin-top:45px}.flow h1{font-size:clamp(3rem,4.8vw,5rem)}.notice{padding:20px;background:#e9edda;border-left:3px solid #598071;border-radius:4px;font-size:13px;margin:25px 0}.notice p{margin-top:8px}.form-panel{border:1px solid var(--line);background:#fffef9;border-radius:12px;padding:32px;min-width:0}.form-panel h2{font-size:27px;margin:10px 0 24px}.form-panel p{margin:15px 0}label{display:block;font-size:12px;font-weight:600;margin:18px 0}input:not([type=checkbox]),select,textarea{display:block;width:100%;border:1px solid #b9c8bb;border-radius:5px;background:#fffefa;color:var(--ink);padding:13px;margin-top:7px;font-size:14px;min-height:48px}textarea{min-height:95px;resize:vertical}.check{display:flex;gap:10px;align-items:start;font-weight:400}.check input{margin-top:5px;accent-color:var(--teal);width:18px;height:18px;flex-shrink:0}.form-panel .button{margin-top:12px}.form-panel .text{display:block;margin-top:10px}.success-mark{display:block;font-size:45px;color:var(--teal)}.search-page{max-width:1000px;min-height:65vh}.search-result{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);text-decoration:none}.search-result small{display:block;font-size:12px;color:var(--muted)}.admin{max-width:1200px}.admin h1{font-size:clamp(3rem,5vw,5rem)}.admin-toolbar{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin:25px 0}.import-label{font-size:14px;font-weight:400;cursor:pointer}.import-label input{max-width:220px;font-size:11px;padding:5px}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:30px}legend{font-family:Manrope,sans-serif;font-weight:700}.prose{max-width:950px}.prose h1{font-size:clamp(3rem,5vw,5rem)}.prose h2{font-size:27px;margin:35px 0 15px}.prose p{color:var(--muted)}.prose .button{margin-top:30px}dialog{border:1px solid var(--line);border-radius:14px;padding:45px;max-width:560px;width:calc(100% - 30px);color:var(--ink);background:var(--paper)}dialog::backdrop{background:#102f2bd0;backdrop-filter:blur(5px)}dialog h2{font-size:34px;margin:20px 0}dialog p{margin:20px 0}dialog .close{position:absolute;top:10px;right:15px;border:0;background:none;font-size:30px;color:var(--ink);width:40px;height:40px}#toast:not(:empty){position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:15px 25px;z-index:30;border-radius:8px;max-width:90%;font-size:13px}@keyframes arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}@media(min-width:1600px){header,footer{padding-left:calc((100% - 1440px)/2);padding-right:calc((100% - 1440px)/2)}}@media(max-width:1000px){nav{gap:18px}nav .staff{display:none}.hero{gap:15px;padding-top:40px}.hero h1{font-size:clamp(3rem,6.5vw,5rem)}.clinic-grid{grid-template-columns:repeat(2,1fr)}.clinic-card h3{min-height:30px;max-width:none}.clinic-symbol{line-height:1.35}.art-label{left:10px;font-size:11px;padding:12px}.actions{gap:15px;flex-wrap:wrap}.care-section{gap:5%}.service-list a{font-size:18px}.announcement{padding:24px}.announcement-icon{display:none}}@media(max-width:650px){.demo-bar{font-size:9px;padding:7px 14px}.demo-bar a{display:none}header{padding:18px 5%;align-items:center;flex-wrap:wrap}.brand{font-size:17px}.brand-icon{font-size:38px}nav{gap:16px;flex-wrap:wrap;width:100%;justify-content:space-between}nav>a:not(.button),nav .text{font-size:12px}nav .button{font-size:11px;padding:10px}nav .staff{display:block;font-size:10px!important}.hero{grid-template-columns:1fr;padding:40px 6%}.hero h1{font-size:58px}.lede{font-size:15px}.hero-note{margin-top:-15px}.hero-art{max-height:430px}.art-wrap{margin-top:5px}.art-label{bottom:0;left:8px}.announcement{flex-wrap:wrap;padding:24px;gap:15px;margin:0 6%}.announcement h2{font-size:25px}.announcement .button{margin-left:0;padding:12px 16px;font-size:12px}.section{padding:55px 6%}.section-heading{display:block}.section-heading p{margin-top:20px}.clinic-grid{gap:12px}.clinic-card{padding:17px}.clinic-card h3{font-size:21px;min-height:53px}.clinic-symbol{font-size:70px}.card-top{font-size:7px}.clinic-card p{min-height:35px;margin-bottom:15px}.card-foot{font-size:10px}.care-section{grid-template-columns:1fr;padding:50px 6%;gap:20px}.care-section h2{font-size:38px}.service-list a{font-size:20px}.welcome{padding:60px 6%}footer{grid-template-columns:1fr;padding:35px 6%}footer>div:nth-child(2){justify-content:start}.clinic-hero{padding:25px 6% 40px}.clinic-hero-grid{grid-template-columns:1fr}.clinic-hero h1{font-size:48px}.giant-symbol{display:none}.detail-grid,.flow-grid,.admin-grid{grid-template-columns:1fr;gap:30px}.info-panel{padding:25px}.flow{padding:30px 6% 55px}.flow-grid{margin-top:25px}.form-panel{padding:24px}.admin-toolbar{gap:18px}.admin-toolbar .button{width:100%}.prose h1{font-size:48px}.eyebrow{font-size:9px}dialog{padding:40px 24px 25px}dialog h2{font-size:30px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Desktop readability: keep mobile composition while enlarging supporting copy. */
@media (min-width: 1001px) {
  body { font-size: 18px; }
  header { flex-wrap: wrap; }
  nav { gap: 24px; flex-wrap: wrap; }
  nav > a:not(.button), nav .text, .button, .plain-link { font-size: 16px; }
  nav .staff { font-size: 14px !important; }
  .lede { font-size: 20px; }
  .eyebrow, .demo-bar { font-size: 12px; }
  .hero-note, .art-label, .announcement p, .section-heading p,
  .clinic-card p, .card-foot, .care-section p, .welcome p,
  .info-panel p, .info-panel a, .search-result small,
  footer p, footer > div:nth-child(2), label, .notice { font-size: 16px; }
  .art-label small, .service-list small, footer small, .footer-bottom,
  .muted { font-size: 13px !important; }
  .card-top { font-size: 11px; }
  .info-panel h4 { font-size: 15px; }
  input:not([type=checkbox]), select, textarea { font-size: 16px; }
  .clinic-card h3 { min-height: 88px; }
  .announcement { flex-wrap: wrap; }
}

/* Rich motion, with user-controlled rotation and static reduced-motion fallback. */
.hero-carousel{position:relative;min-width:0}.carousel-stage{position:relative;aspect-ratio:620/580;overflow:hidden;border-radius:24px}.hero-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transform:scale(.96) translateY(14px);transition:opacity 1.1s ease,transform 1.4s cubic-bezier(.2,.65,.2,1),visibility 1.1s}.hero-slide.active{opacity:1;visibility:visible;transform:scale(1) translateY(0)}.hero-slide .hero-art{animation:none;transform-origin:center}.motion-playing .hero-slide.active .hero-art{animation:scene-drift 6.5s ease-in-out both}.scene-sun,.scene-spark,.scene-heart{transform-box:fill-box;transform-origin:center}.motion-playing .scene-spark{animation:scene-turn 12s linear infinite}.motion-playing .scene-heart{animation:scene-breathe 3s ease-in-out infinite}.carousel-caption{position:relative;margin:-45px 25px 0;background:#fffef9;border:1px solid var(--line);border-radius:12px;padding:17px 22px;box-shadow:0 12px 25px #173f3910;min-height:90px}.carousel-caption strong{display:block;font-size:20px;letter-spacing:-.03em;margin-top:3px}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 8px}.carousel-controls button{border:1px solid #b8c8b9;background:transparent;border-radius:50%;color:var(--ink);min-width:44px;min-height:44px;transition:background .2s,transform .2s}.carousel-controls button:hover{background:#e3ebd5;transform:translateY(-2px)}.carousel-controls .carousel-pause{border-radius:30px;padding:8px 16px;font-size:12px;margin-right:auto;min-width:125px}.carousel-pause:disabled{cursor:default;opacity:.8}.carousel-dots{display:flex;gap:0}.carousel-dots button{border:0;min-width:30px}.carousel-dots span{display:block;width:7px;height:7px;border-radius:50%;background:#9daf9f;margin:auto;transition:width .3s,background .3s}.carousel-dots [aria-current=true] span{width:20px;border-radius:10px;background:var(--teal)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.motion-reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease var(--reveal-delay,0ms),transform .85s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}.motion-reveal.is-visible{opacity:1;transform:translateY(0)}.clinic-card.is-visible:hover{transform:translateY(-9px)}.clinic-symbol{transition:transform .6s cubic-bezier(.2,.7,.2,1)}.clinic-card:hover .clinic-symbol{transform:rotate(-8deg) scale(1.08)}.card-foot span,.service-list a span:last-child{transition:transform .3s}.clinic-card:hover .card-foot span,.service-list a:hover span:last-child{transform:translateX(5px)}dialog[open]{animation:dialog-arrive .35s ease both}.hero>div:first-child{animation:copy-arrive .8s ease both}.hero>div:first-child .lede{animation:copy-arrive 1s ease both}.giant-symbol{animation:symbol-arrive .9s cubic-bezier(.2,.7,.2,1) both}@keyframes scene-drift{from{transform:scale(1)}to{transform:scale(1.045)}}@keyframes scene-turn{to{transform:rotate(360deg)}}@keyframes scene-breathe{50%{transform:scale(1.08)}}@keyframes dialog-arrive{from{opacity:0;transform:translateY(15px) scale(.97)}to{opacity:1;transform:none}}@keyframes copy-arrive{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes symbol-arrive{from{opacity:0;transform:rotate(-15deg) scale(.85)}to{opacity:1;transform:none}}@media(max-width:650px){.carousel-caption{margin:-25px 20px 0;min-height:80px;padding:13px 17px}.carousel-caption strong{font-size:19px}.carousel-controls{gap:4px}.carousel-controls .carousel-pause{font-size:11px;min-width:112px}.carousel-stage .hero-art{max-height:none}}@media(prefers-reduced-motion:reduce){.motion-reveal{opacity:1;transform:none}.hero-slide{transform:none}.hero-slide .hero-art,.scene-spark,.scene-heart{transform:none!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Photography-led refinement for a more credible clinical presentation. */
.hero-photo{width:100%;height:100%;object-fit:cover;display:block;border-radius:12px}.art-wrap{min-width:0}.hero-carousel .carousel-stage{border-radius:12px;aspect-ratio:1.05;background:#e9ece5}.hero-carousel .hero-slide{transform:scale(1.01);transition:opacity 1.3s ease,visibility 1.3s}.hero-carousel .hero-slide.active{transform:scale(1)}.hero-carousel .carousel-caption{margin:-44px 20px 0;border-radius:6px;box-shadow:0 8px 24px #173f390d}.hero-carousel .carousel-controls button{border-radius:5px}.hero-carousel .carousel-pause{border-radius:5px}.clinic-card{background:#f4f5ee;border:1px solid var(--line);border-top:4px solid var(--card);border-radius:6px}.clinic-wordmark{display:flex;justify-content:space-between;align-items:end;padding:30px 0 26px;border-bottom:1px solid var(--line);margin-bottom:25px;gap:10px}.clinic-wordmark>span{font-size:9px;letter-spacing:.12em;font-weight:700;max-width:90px}.clinic-wordmark strong{font-size:42px;line-height:1;font-weight:400;color:#6d8479;font-family:Manrope,Arial,sans-serif}.clinic-card h3{font-size:24px;min-height:64px}.clinic-card p{font-size:14px;min-height:45px}.clinic-card:hover{box-shadow:0 12px 25px #173f390a}.clinic-hero{background:#edf0e7}.clinic-hero-grid{grid-template-columns:1.3fr 1fr;gap:7%}.clinic-hero h1{font-size:clamp(3rem,4.6vw,5rem)}.clinic-photo{margin:25px 0 0;min-width:0}.clinic-photo img{width:100%;height:330px;object-fit:cover;border-radius:8px}.clinic-photo figcaption{font-size:11px;color:var(--muted);margin-top:6px}.announcement{background:#eef1e4;border:1px solid #dce3d2;border-radius:6px}.announcement-icon{font-size:28px}.hero>div:first-child .hero-note>span{font-size:28px}.hero-slide .hero-art{border-radius:12px}.scene-spark,.scene-heart{animation:none!important}.hero-note{font-size:13px}.clinic-card.is-visible:hover{transform:translateY(-4px)}@media(min-width:1001px){.clinic-card h3{min-height:90px}.hero{gap:55px}}@media(max-width:650px){.clinic-hero-grid{grid-template-columns:1fr}.clinic-photo img{height:245px}.hero-carousel .carousel-stage{aspect-ratio:1.15}.clinic-wordmark{padding:22px 0;margin-bottom:20px}.clinic-wordmark strong{font-size:34px}.clinic-wordmark>span{font-size:8px}.clinic-card h3{font-size:21px;min-height:80px}.clinic-card p{font-size:12px;min-height:42px}.hero-carousel .carousel-caption{margin:-25px 14px 0}.hero-carousel .carousel-caption strong{font-size:17px}}

/* Useful visual context and care summaries for each clinic. */
.clinic-card-photo{position:relative;aspect-ratio:1.6;overflow:hidden;border-radius:5px;margin:18px 0 24px;background:#e4e9df}.clinic-card-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s ease}.clinic-card-photo>span{position:absolute;bottom:7px;left:7px;background:#fffdf2ed;color:#244d42;font-size:9px;padding:3px 7px;border-radius:3px}.clinic-card:hover .clinic-card-photo img{transform:scale(1.035)}.clinic-card-services{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 24px}.clinic-card-services span{background:#e7ecdf;color:#244d42;border-radius:4px;padding:5px 9px;font-size:11px;line-height:1.5}.clinic-card p{min-height:0;margin:12px 0 18px}.clinic-card h3{min-height:64px}.clinic-card{display:flex;flex-direction:column}.card-foot{margin-top:auto}@media(min-width:1001px){.clinic-card h3{min-height:90px}.clinic-card-services span{font-size:12px}}@media(max-width:650px){.clinic-card-photo{aspect-ratio:1.2;margin:15px 0 20px}.clinic-card-photo>span{font-size:8px;left:4px;bottom:4px;padding:2px 4px}.clinic-card h3{min-height:80px}.clinic-card-services{gap:5px}.clinic-card-services span{font-size:10px;padding:4px 6px}}@media(prefers-reduced-motion:reduce){.clinic-card:hover .clinic-card-photo img{transform:none}}

/* Contemporary care modules: layered surfaces, clear hierarchy and useful detail. */
.modern-care{background:radial-gradient(ellipse at 90% 10%,#e2e9dd80,transparent 60%),#f0f2ea;color:var(--ink);grid-template-columns:.8fr 1.2fr;gap:40px;padding:65px 5%;align-items:stretch}.care-feature{background:linear-gradient(140deg,#204d42,#173e35);color:#fffdf3;border:1px solid #476b5e;border-radius:22px;padding:36px 32px 0;overflow:hidden;position:relative;display:flex;flex-direction:column}.care-feature>.eyebrow{font-size:10px;color:#d8e9c3}.care-feature h2{font-size:clamp(2rem,3.3vw,3.5rem);margin:25px 0 20px;line-height:1.15}.care-feature>p{color:#d3e1d8;font-size:16px;line-height:1.8;margin-bottom:25px}.care-feature>.button{align-self:flex-start;background:#e4efc8;color:#173f39;border-color:#e4efc8;margin-bottom:32px;gap:20px}.care-feature>.button:hover{background:#f4f8e7}.care-feature-photo{position:relative;margin:auto -32px 0;min-height:220px}.care-feature-photo>img{height:240px;width:100%;object-fit:cover;object-position:50% 32%;display:block}.care-feature-photo::after{content:'';position:absolute;inset:30% 0 0;background:linear-gradient(transparent,#102d28d9)}.care-feature-photo>div{position:absolute;bottom:22px;left:30px;right:20px;z-index:1}.care-feature-photo strong{display:block;font-size:16px;font-weight:500}.care-feature-photo span{display:block;font-size:12px;color:#e0e9d8;margin-top:3px}.care-options-heading{padding:5px 0 25px}.care-options-heading h2{font-size:clamp(1.9rem,2.8vw,2.7rem);margin:10px 0 0}.care-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.care-card{display:flex;flex-direction:column;text-decoration:none;background:#fffefa;color:var(--ink);border:1px solid #dce3d5;border-radius:16px;padding:25px;box-shadow:0 6px 14px #173f3905;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.care-card:hover{transform:translateY(-5px);box-shadow:0 18px 28px #173f3910;border-color:#a5bda8}.care-card:focus-visible{outline-offset:4px}.care-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.care-icon{width:49px;height:49px;display:grid;place-items:center;border-radius:14px;background:#eaf0df;color:#30644e}.care-icon svg{width:27px;height:27px}.care-card:nth-child(2) .care-icon{background:#e6efec}.care-card:nth-child(3) .care-icon{background:#f5eddf}.care-card:nth-child(4) .care-icon{background:#efebe4}.care-card-arrow{font-size:18px;color:#67806b;transition:transform .3s}.care-card:hover .care-card-arrow{transform:translate(3px,-3px)}.care-card h3{font-size:22px;line-height:1.25;margin-bottom:12px;letter-spacing:-.035em}.care-card p,.care-section .care-card p{font-size:14px;line-height:1.75;color:#596f63;margin:0 0 24px;max-width:none}.care-card-link{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:18px;border-top:1px solid #e5e9df;font-size:12px;font-weight:600}.care-card-link>span{transition:transform .3s}.care-card:hover .care-card-link>span{transform:translateX(4px)}.care-demo-note{font-size:11px!important;color:#5d7168!important;margin:20px 0 0!important}.detail-grid{grid-template-columns:1.35fr 1fr;gap:6%}.detail-grid .care-card-grid{gap:15px}.detail-grid .care-card{padding:22px}.detail-grid .care-card h3{font-size:21px}.info-panel{background:linear-gradient(145deg,#fffef9,#f0f3e8);border:1px solid #d5dfcf;box-shadow:0 16px 35px #173f3908;border-radius:18px;align-self:start;padding:32px;position:relative}.info-panel::before{content:'';display:block;height:4px;width:44px;background:#72a18a;border-radius:10px;margin-bottom:22px}.info-panel h3{font-size:27px}.info-panel h4{border-top:1px solid #dce4d6;padding-top:22px}.info-panel a{font-weight:600}.clinic-hero{background:radial-gradient(ellipse at 0 0,#e4edda,transparent 75%),#f2f4ed}.clinic-photo img{border-radius:18px;box-shadow:0 18px 35px #173f3915;border:5px solid #fffdf5}.form-panel{border-radius:18px;box-shadow:0 18px 40px #173f3908;border-color:#d5dfd0}.form-panel input:not([type=checkbox]),.form-panel select,.form-panel textarea{border-radius:9px;background:#fafbf5;border-color:#ccd8c8}.flow{background:radial-gradient(ellipse at top right,#e9efdf70,transparent 65%)}.flow .notice{border-radius:12px;background:#edf2e3}.form-panel .button{border-radius:9px}.search-result{padding:24px;border:1px solid #dce4d5;border-radius:12px;background:#fffef9;margin:12px 0;box-shadow:0 4px 12px #173f3904;transition:transform .2s}.search-result:hover{transform:translateX(4px)}.welcome{margin:50px 5%;padding:70px 7%;border:1px solid #d6e2cb;border-radius:22px;background:radial-gradient(ellipse at 15% 20%,#e3edda,transparent 65%),#f3f5eb}.welcome h2{max-width:700px;margin:20px auto}.button{box-shadow:0 5px 10px #173f3908}.carousel-caption{box-shadow:0 14px 30px #173f3912!important}.clinic-card{box-shadow:0 5px 12px #173f3904;transition:transform .3s,box-shadow .3s}.clinic-card:hover{box-shadow:0 16px 28px #173f3910}.admin .form-panel{box-shadow:0 6px 20px #173f3905}.care-card.motion-reveal{transition:opacity .75s ease var(--reveal-delay,0ms),transform .6s ease,box-shadow .3s,border-color .3s}@media(min-width:1600px){.modern-care{padding-left:calc((100% - 1440px)/2);padding-right:calc((100% - 1440px)/2)}}@media(max-width:1100px){.modern-care{grid-template-columns:1fr;gap:30px}.care-feature{display:grid;grid-template-columns:1fr 1fr;column-gap:25px;padding:30px}.care-feature>.eyebrow,.care-feature>h2,.care-feature>p,.care-feature>.button{grid-column:1}.care-feature h2{font-size:38px}.care-feature-photo{grid-column:2;grid-row:1/5;margin:-30px -30px -30px 0;min-height:100%;height:100%}.care-feature-photo>img{height:100%;min-height:350px}.care-feature>.button{justify-self:start;margin-bottom:0}.care-card p,.care-section .care-card p{font-size:15px}.detail-grid{grid-template-columns:1fr;gap:35px}}@media(max-width:650px){.modern-care{padding:40px 6%;gap:30px}.care-feature{display:flex;padding:27px 24px 0}.care-feature h2{font-size:37px}.care-feature>p{font-size:15px}.care-feature>.button{margin-bottom:28px}.care-feature-photo{margin:0 -24px;height:205px;min-height:0;display:block}.care-feature-photo>img{height:205px;min-height:0}.care-card-grid{grid-template-columns:1fr;gap:14px}.care-card{padding:24px}.care-card-top{margin-bottom:18px}.care-card h3{font-size:24px}.care-card-link{font-size:13px}.care-options-heading{padding-bottom:22px}.care-options-heading h2{font-size:30px}.detail-grid .care-card-grid{grid-template-columns:1fr}.info-panel{padding:26px}.welcome{margin:25px 6%;padding:45px 20px;border-radius:16px}}@media(prefers-reduced-motion:reduce){.care-card:hover,.search-result:hover,.care-card:hover .care-card-arrow,.care-card:hover .care-card-link>span{transform:none}}

/* Light translucent surfaces, with readable fallbacks where blur is unsupported. */
.care-card{background:rgba(255,254,250,.78);border-color:rgba(194,208,185,.65);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.carousel-caption{background:rgba(255,254,249,.86);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.info-panel{background:linear-gradient(145deg,rgba(255,254,249,.88),rgba(236,242,226,.7));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.announcement{background:rgba(232,239,216,.65);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.modern-care{background:radial-gradient(ellipse at 90% 10%,#d3e1c780,transparent 60%),radial-gradient(ellipse at 50% 90%,#e0ebe280,transparent 55%),#f0f2ea}
@media(max-width:650px){
 .care-card-arrow,.care-card-link>span,.card-top>span:last-child,.card-foot>span{display:none}
 .care-card-top{justify-content:flex-start}
}
@media(prefers-reduced-transparency:reduce){
 .care-card,.carousel-caption,.info-panel{background:#fffefa;-webkit-backdrop-filter:none;backdrop-filter:none}
 .announcement{background:#eef1e4;-webkit-backdrop-filter:none;backdrop-filter:none}
}

/* Stronger frosted glass, keeping the dark text and solid primary actions. */
.care-card{background:rgba(255,254,250,.58);border-color:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(22px) saturate(135%);backdrop-filter:blur(22px) saturate(135%);box-shadow:0 10px 30px #173f390a,inset 0 1px 0 #ffffffcc}
.care-card:hover{background:rgba(255,254,250,.72);border-color:#ffffff;box-shadow:0 18px 32px #173f3912,inset 0 1px 0 #ffffff}
.carousel-caption{background:rgba(255,254,249,.64);border-color:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(24px) saturate(135%);backdrop-filter:blur(24px) saturate(135%);box-shadow:0 14px 30px #173f3918,inset 0 1px 0 #ffffffcc!important}
.info-panel{background:linear-gradient(145deg,rgba(255,254,249,.65),rgba(229,239,214,.45));border-color:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(22px) saturate(130%);backdrop-filter:blur(22px) saturate(130%);box-shadow:0 16px 40px #173f390e,inset 0 1px 0 #ffffffcc}
.announcement{background:rgba(224,235,204,.45);border-color:rgba(255,255,255,.85);-webkit-backdrop-filter:blur(20px) saturate(135%);backdrop-filter:blur(20px) saturate(135%);box-shadow:0 8px 24px #173f3907,inset 0 1px 0 #ffffffb3}
/* A compact floating navigation shell rather than a flat full-width strip. */
header{position:sticky;top:12px;z-index:15;margin:18px 3% 0;padding:16px 24px;border:1px solid #ffffffc9;border-radius:20px;background:rgba(250,249,242,.7);-webkit-backdrop-filter:blur(24px) saturate(140%);backdrop-filter:blur(24px) saturate(140%);box-shadow:0 12px 35px #173f3910,inset 0 1px 0 #ffffffbf;gap:20px}
header .brand{padding:3px 4px;flex-shrink:0}header .brand-icon{font-size:43px}header .brand{font-size:19px}header nav{gap:6px;flex-wrap:wrap;justify-content:flex-end}header nav>a:not(.button),header nav>.text{padding:11px 14px;border-radius:10px;transition:background .25s,color .25s,box-shadow .25s;text-decoration:none;border:0;font-size:14px;white-space:nowrap}header nav>a:not(.button):hover,header nav>.text:hover{background:#dce9cf80;color:#143e33;box-shadow:inset 0 1px 0 #ffffffbf;text-decoration:none}header nav .button{border-radius:12px;padding:13px 19px;font-size:14px;margin-left:6px;box-shadow:0 5px 12px #173f3912}header nav .staff{font-size:12px!important;margin-left:6px;background:#ffffff55;border:1px solid #d2dfc65e!important}header .brand-icon{transition:transform .4s}header .brand:hover .brand-icon{transform:rotate(45deg)}
@media(min-width:1600px){header{max-width:1480px;margin-left:auto;margin-right:auto;padding:16px 28px}}
@media(max-width:1000px){header{padding:14px 20px;flex-wrap:wrap;gap:12px}header nav{width:100%;justify-content:space-between}header nav .staff{display:block}}
@media(max-width:650px){header{top:8px;margin:10px 4% 0;padding:13px 15px;border-radius:16px;gap:10px}header .brand{font-size:17px;padding:0}header .brand-icon{font-size:34px}header nav{gap:4px;justify-content:flex-start}header nav>a:not(.button),header nav>.text{font-size:12px;padding:9px 8px;border-radius:8px}header nav .button{font-size:11px;padding:10px 11px;margin-left:auto;gap:6px;border-radius:9px}header nav .staff{font-size:11px!important;margin-left:0}html{scroll-padding-top:180px}}
@media(prefers-reduced-transparency:reduce){header,.care-card,.carousel-caption,.info-panel{background:#faf9f2;-webkit-backdrop-filter:none;backdrop-filter:none}.announcement{background:#eef1e4;-webkit-backdrop-filter:none;backdrop-filter:none}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){header,.care-card,.carousel-caption,.info-panel{background:rgba(250,249,242,.96)}.announcement{background:#eef1e4}}
@media(prefers-reduced-motion:reduce){header .brand:hover .brand-icon{transform:none}}

/* Shared outer edges across the navigation and primary page sections. */
:root{--page-gutter:clamp(20px,5vw,80px);--page-width:1440px}
header{width:calc(100% - var(--page-gutter)*2);max-width:var(--page-width);margin:18px auto 0;padding:16px 24px}
.hero,.section{width:calc(100% - var(--page-gutter)*2);max-width:var(--page-width);margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}
.announcement{width:calc(100% - var(--page-gutter)*2);max-width:var(--page-width);margin-left:auto;margin-right:auto;padding:30px 32px}
.modern-care{width:calc(100% - var(--page-gutter)*2);max-width:var(--page-width);margin:0 auto;padding:32px;border-radius:22px}
.welcome{width:calc(100% - var(--page-gutter)*2);max-width:var(--page-width);margin:50px auto;padding:65px 35px}
.clinic-hero,.flow{padding-left:max(var(--page-gutter),calc((100% - var(--page-width))/2));padding-right:max(var(--page-gutter),calc((100% - var(--page-width))/2))}
/* All navigation items share one treatment and highlight on interaction. */
header nav>a:not(.brand),header nav>.text,header nav .button,header nav .staff{
 display:inline-flex;align-items:center;justify-content:center;min-height:46px;margin-left:0;padding:11px 15px;border:1px solid transparent!important;border-radius:10px;background:transparent;color:var(--ink);box-shadow:none;font-size:14px!important;font-weight:500;text-decoration:none;transition:background .2s,color .2s,box-shadow .2s,border-color .2s;transform:none
}
header nav>a:hover,header nav>.text:hover,header nav .button:hover,header nav .staff:hover,
header nav>a:focus-visible,header nav>.text:focus-visible,header nav .button:focus-visible,header nav .staff:focus-visible{
 background:var(--teal);color:#fffef6;border-color:var(--teal)!important;box-shadow:0 5px 12px #173f3914;transform:none;text-decoration:none
}
@media(max-width:1000px){.modern-care{padding:25px}.announcement{padding:25px}.hero{padding-top:40px}.section{padding-top:60px;padding-bottom:60px}}
@media(max-width:650px){:root{--page-gutter:20px}header{top:8px;margin-top:10px;padding:13px 15px}header nav{gap:3px}header nav>a:not(.brand),header nav>.text,header nav .button,header nav .staff{padding:9px 8px;min-height:42px;font-size:11px!important;border-radius:8px}.modern-care{padding:22px 16px;border-radius:16px}.announcement{padding:22px}.hero{padding-top:35px;padding-bottom:40px}.section{padding-top:45px;padding-bottom:45px}.welcome{margin:25px auto;padding:40px 22px}.clinic-hero,.flow{padding-left:var(--page-gutter);padding-right:var(--page-gutter)}}

@media(max-width:650px){.booking-arrow{display:none}}

/* Dedicated mobile navigation: a compact brand bar and an expanding link panel. */
.mobile-nav-actions{display:none}
@media(max-width:650px){
 header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px;gap:0;border-radius:18px;background:rgba(250,249,242,.8);border-color:#ffffffdd;box-shadow:0 8px 28px #173f3914}
 header .brand{font-size:15px;gap:7px;padding:3px 1px;letter-spacing:-.055em}
 header .brand-icon{font-size:33px}
 .mobile-nav-actions{display:flex;align-items:center;gap:7px}
 .mobile-quick-book{display:flex;align-items:center;justify-content:center;min-height:42px;text-decoration:none;border:1px solid #b7cdb2;background:#e7efdc99;padding:8px 10px;border-radius:24px;font-size:11px;font-weight:600;color:var(--ink);box-shadow:inset 0 1px 0 #ffffffcc}
 .mobile-nav-toggle{display:flex;align-items:center;justify-content:center;gap:7px;min-height:42px;border:1px solid #cedcc5;background:#ffffff80;padding:8px 10px;border-radius:24px;font-size:11px;font-weight:600;color:var(--ink)}
 .mobile-quick-book:hover,.mobile-nav-toggle:hover{background:#dbe8ce}
 .menu-bars{display:block;width:17px;height:13px;position:relative}
 .menu-bars>span{position:absolute;left:0;height:1.5px;background:currentColor;border-radius:2px;width:17px;transition:transform .25s,top .25s}
 .menu-bars>span:first-child{top:3px}.menu-bars>span:last-child{top:10px;width:12px}
 .nav-is-open .menu-bars>span:first-child{top:6px;transform:rotate(45deg)}
 .nav-is-open .menu-bars>span:last-child{top:6px;transform:rotate(-45deg);width:17px}
 header.mobile-nav-ready nav{display:none}
 header.mobile-nav-ready.nav-is-open nav{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #cddbc6;animation:mobile-menu-enter .25s ease both}
 header nav>a:not(.brand),header nav>.text,header nav .button,header nav .staff{margin:0;min-height:48px;padding:13px 12px;font-size:13px!important;justify-content:flex-start;border:1px solid #d3dfcb!important;border-radius:12px;background:#ffffff70;color:var(--ink);font-weight:500;line-height:1.35;text-align:left}
 header nav .button{grid-column:1/-1;background:#e3ecd899;border-color:#bdcfb3!important;justify-content:center;font-weight:600}
 header nav .staff{grid-column:1/-1;justify-content:center;background:transparent;font-size:12px!important}
 header nav>a:hover,header nav>.text:hover,header nav .button:hover,header nav .staff:hover{background:var(--teal);color:#fffef6}
 html{scroll-padding-top:105px}
}
@media(max-width:360px){header .brand{font-size:14px}header .brand-icon{font-size:27px}.mobile-nav-actions{gap:5px}.mobile-quick-book,.mobile-nav-toggle{padding:8px;font-size:10px}.mobile-nav-toggle{gap:5px}}
@keyframes mobile-menu-enter{from{opacity:0;transform:translateY(-7px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-transparency:reduce){header,.mobile-nav-toggle,.mobile-quick-book,header.nav-is-open nav>a,header.nav-is-open nav>button{background:#faf9f2}}
@media(prefers-reduced-motion:reduce){header.nav-is-open nav{animation:none!important}.menu-bars>span{transition:none}}

/* A dedicated mobile menu, not a compressed desktop link grid. */
.mobile-menu-intro,.mobile-menu-footer{display:none}
@media(max-width:650px){
 header{top:8px;border-radius:20px;padding:13px 14px;background:rgba(250,249,242,.94);box-shadow:0 8px 30px #173f3914;border:1px solid #ffffff}
 header .brand{font-size:16px;gap:8px}header .brand-icon{font-size:35px}
 .mobile-quick-book{background:transparent;border-color:#ccd9c3;font-size:11px;font-weight:600;min-height:43px;padding:8px 11px;box-shadow:none}
 .mobile-nav-toggle{background:#e4ecdb;border-color:#d5e0cb;border-radius:13px;min-height:43px;padding:10px 12px;font-size:11px;gap:9px}
 .nav-is-open .mobile-nav-toggle{background:#214e42;color:#fffdf5;border-color:#214e42}
 header.mobile-nav-ready.nav-is-open nav{display:flex;flex-direction:column;gap:0;padding:0;margin:16px 0 0;border-top:1px solid #d7e1d0;max-height:calc(100dvh - 140px);overflow-y:auto;overscroll-behavior:contain}
 .mobile-menu-intro{display:block;padding:24px 5px 20px}.mobile-menu-intro .eyebrow{font-size:9px;letter-spacing:.15em;color:#6d826c}.mobile-menu-intro strong{display:block;font-family:Manrope,Arial,sans-serif;font-size:27px;line-height:1.25;letter-spacing:-.045em;font-weight:500;margin-top:7px}
 header nav>a:not(.brand),header nav>.text,header nav .button,header nav .staff{display:flex;width:100%;min-height:62px;padding:18px 16px;margin:0;border:0!important;border-bottom:1px solid #dce5d5!important;border-radius:0;background:transparent;font-size:18px!important;line-height:1.3;justify-content:flex-start;font-weight:500;text-align:left;box-shadow:none}
 header nav>.text>span{display:none}
 header nav>a:hover,header nav>.text:hover,header nav>a:focus-visible,header nav>.text:focus-visible{border-radius:12px;background:#e4ecdb;color:#173f39;box-shadow:none}
 header nav .button{margin-top:14px;background:#e6eedc;border:1px solid #d1dfc6!important;border-radius:13px;font-size:16px!important;min-height:55px;justify-content:center;font-weight:600}
 header nav .button:hover{background:#214e42;color:#fffdf5}
 header nav .staff{border:0!important;margin-top:6px;min-height:48px;font-size:13px!important;color:#607665;justify-content:center;padding:12px}
 .mobile-menu-footer{display:block;text-align:center;font-size:10px;color:#778974;padding:15px 0 5px;border-top:1px solid #dce5d5;margin-top:6px;letter-spacing:.03em}
 .action-arrow,.booking-arrow,.button>span[aria-hidden=true],.button>span:last-child:not(:first-child){display:none!important}
 .button{gap:0}
}
@media(max-width:360px){header{padding:12px 10px}header .brand{font-size:14px}header .brand-icon{font-size:29px}.mobile-quick-book{padding:8px;font-size:10px}.mobile-nav-toggle{padding:9px;font-size:10px;gap:6px}}
@media(max-width:650px){.button>span{display:none!important}}

/* Plain-text navigation and actions across desktop and mobile. */
.care-card-arrow{display:none!important}
.carousel-controls .carousel-prev,.carousel-controls .carousel-next{border-radius:8px;min-width:62px;padding:8px 10px;font-size:12px}
@media(max-width:650px){.card-top>span:first-child{display:inline}.carousel-controls{flex-wrap:wrap}}
