:root{--green:#14532d;--dark:#103c25;--lime:#84bd27;--pale:#f3f9ee;--ink:#19342a;--muted:#52685b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:16px/1.65 system-ui,-apple-system,Segoe UI,Arial,sans-serif;color:var(--ink);background:white}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #79a923;outline-offset:4px}.wrap{max-width:1160px;padding:0 24px;margin:auto}.skip{position:absolute;top:-100px;left:12px;background:white;padding:8px;z-index:10}.skip:focus{top:8px}.header{background:white;position:sticky;top:0;z-index:5;border-bottom:1px solid #e7eee6}.nav{display:flex;align-items:center;gap:28px;min-height:82px}.brand{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:900;line-height:1.1;letter-spacing:.04em;color:var(--dark)}.brand small{display:block;font-size:10px;letter-spacing:.19em;margin-top:5px}.brand-icon{display:grid;place-items:center;background:var(--green);color:var(--lime);width:43px;height:43px;border-radius:12px;font-size:30px}.nav nav{display:flex;gap:24px;margin-left:auto;font-size:14px;font-weight:650}.nav nav a:hover,.text-link{color:var(--green)}.nav-cta{background:var(--green);color:white;padding:11px 17px;border-radius:8px;font-size:14px;font-weight:750}.menu{display:none;border:0;background:transparent;font-size:26px}.hero{background:linear-gradient(125deg,#f2f9eb,#e5f3dd);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:45px;padding-top:92px;padding-bottom:92px}.eyebrow{font-size:12px;letter-spacing:.16em;font-weight:850;color:#447a2b}h1,h2,h3{line-height:1.17;letter-spacing:-.035em}h1{font-size:clamp(42px,5vw,70px);margin:20px 0 22px;color:var(--dark)}h1 em{font-style:normal;color:#629b26}h2{font-size:clamp(31px,3.5vw,44px);margin:14px 0 20px;color:var(--dark)}h3{font-size:21px;margin:15px 0 10px}p{color:var(--muted);margin:0 0 20px}.hero p{font-size:19px;max-width:530px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:9px;padding:13px 20px;font-weight:750;font-size:14px}.primary{background:var(--green);color:white}.secondary{border:1px solid #abc6a5;color:var(--dark);background:white}.hero-notes{display:flex;gap:18px;flex-wrap:wrap;margin-top:34px;color:#365d39;font-size:13px;font-weight:650}.hero-art{position:relative;min-height:400px;border-radius:35px;background:radial-gradient(circle at 35% 30%,#c2e992,#6eac52 62%,#25613c);overflow:hidden;box-shadow:0 25px 55px #1b5c3233}.circle{position:absolute;border:2px solid #ffffff55;border-radius:50%}.c1{width:400px;height:400px;right:-160px;top:-100px}.c2{width:320px;height:320px;left:-150px;bottom:-120px}.hero-symbol{font-size:200px;color:#f3ffe9;position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);text-shadow:0 10px 35px #205b3540}.art-label{position:absolute;left:25px;right:25px;bottom:25px;background:white;padding:22px;border-radius:16px;display:flex;flex-direction:column;gap:2px}.art-label strong{font-size:21px;color:var(--dark)}.art-label span{color:var(--muted);font-size:14px}.section{padding:90px 0;scroll-margin-top:80px}.tinted{background:#f6faf3}.about-grid,.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.feature-panel{padding:42px;background:#eaf5e5;border-radius:22px}.feature-icon{font-size:45px;color:var(--green)}.text-link{font-weight:800}.intro{max-width:680px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:35px}.service{padding:26px;background:white;border:1px solid #e4ede1;border-radius:16px;box-shadow:0 5px 15px #154a2510}.service>span{display:grid;place-items:center;width:48px;height:48px;background:#e7f4db;color:var(--green);border-radius:12px;font-size:25px}.service h3{font-size:18px}.service p{font-size:14px;margin:0}.specialty-list{display:flex;gap:11px;flex-wrap:wrap}.specialty-list span{background:#edf6e8;border:1px solid #d6e8cc;padding:13px 18px;border-radius:9px;font-weight:700}.insurance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:32px}.insurance-grid span{padding:24px;text-align:center;border:1px solid #dce8d5;border-radius:12px;background:white;font-weight:850;color:var(--green);font-size:19px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-card{padding:35px;background:#f5f9f1;border-radius:16px}.contact-card a:not(.btn){font-weight:700;color:var(--green)}footer{background:var(--dark);color:white;padding:36px 0}.footer-grid{display:flex;justify-content:space-between;gap:20px}footer p{color:#c9dccc;font-size:13px;margin:8px 0 0}footer a{font-size:14px}@media(max-width:850px){.nav{flex-wrap:wrap;gap:10px;min-height:72px}.menu{display:block;margin-left:auto}.nav-cta{display:none}.nav nav{display:none;order:3;width:100%;flex-direction:column;margin:0;padding:10px 0 20px;gap:12px}.nav nav.open{display:flex}.hero-grid,.about-grid,.split{grid-template-columns:1fr;gap:30px}.hero-grid{padding-top:58px;padding-bottom:58px}.hero-art{min-height:300px}.service-grid{grid-template-columns:repeat(2,1fr)}.insurance-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.wrap{padding:0 18px}.section{padding:60px 0}.hero-notes{gap:10px}.service-grid,.contact-grid{grid-template-columns:1fr}.service{padding:22px}.footer-grid{flex-direction:column}.hero-art{min-height:260px}.hero-symbol{font-size:145px}}

/* Official New Life Medical Centre logo */
.brand-logo{width:48px;height:48px;object-fit:contain;border-radius:50%;background:#fff;flex-shrink:0}
.hero-logo{display:block;width:min(150px,30vw);height:auto;aspect-ratio:1;object-fit:contain;border-radius:50%;background:#fff}
.feature-logo{width:56px;height:56px;object-fit:contain;border-radius:50%;background:#fff}
.footer-logo{width:32px;height:32px;object-fit:contain;vertical-align:middle;margin-right:8px;border-radius:50%;background:#fff}

/* Facebook links */
.social-contact{margin:18px 0 0}.social-contact a{display:inline-flex;align-items:center;gap:8px;font-weight:750;color:var(--green)}.footer-facebook{display:inline-block;margin-top:8px;color:#e3f7d8;font-weight:750}.footer-facebook:hover,.social-contact a:hover{text-decoration:underline}

/* Dedicated dental clinic */
.dental-section{background:#f1f8ec}.dental-grid{display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr;gap:65px;align-items:center}.dental-logo-panel{border-radius:22px;overflow:hidden;background:#06471f;box-shadow:0 18px 40px #16462b22}.dental-logo-panel img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}.dental-content p{max-width:600px}.service .text-link{display:inline-block;margin-top:14px;font-size:13px}.footer-social-divider{color:#c9dccc;margin:0 8px}@media(max-width:850px){.dental-grid{grid-template-columns:1fr;gap:28px}.dental-logo-panel{max-width:430px}}

/* Dedicated Eye Care and Optical Clinic */
.eye-section{background:#fff}.eye-grid{display:grid;grid-template-columns:1.15fr minmax(260px,.85fr);gap:65px;align-items:center}.eye-logo-panel{border-radius:22px;overflow:hidden;background:#eff9dc;box-shadow:0 18px 40px #16462b22}.eye-logo-panel img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}.eye-content p{max-width:600px}@media(max-width:850px){.eye-grid{grid-template-columns:1fr;gap:28px}.eye-logo-panel{max-width:430px}}

/* Physiotherapy and wellness */
.physio-section{background:#f1f8ec}.physio-grid{display:grid;grid-template-columns:minmax(260px,.85fr) 1.15fr;gap:65px;align-items:center}.physio-logo-panel{border-radius:22px;overflow:hidden;background:#fff;box-shadow:0 18px 40px #16462b22}.physio-logo-panel img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover}.physio-content p{max-width:600px}@media(max-width:850px){.physio-grid{grid-template-columns:1fr;gap:28px}.physio-logo-panel{max-width:430px}}

/* Insurance partner logos — version 7 */
.insurance-logo-grid{align-items:stretch}
.insurance-card{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;min-width:0;padding:18px 12px;border:1px solid #dce8d5;border-radius:14px;background:#fff;text-align:center;box-shadow:0 5px 15px #154a2510}
.insurance-card img{display:block;width:100%;height:115px;object-fit:contain}
.insurance-card strong{font-size:16px;color:var(--dark)}
.insurance-card small{color:var(--muted);font-size:12px}
.pmec-card strong{font-size:25px;color:var(--green)}
@media(max-width:520px){.insurance-logo-grid{grid-template-columns:1fr 1fr;gap:10px}.insurance-card{padding:12px 8px}.insurance-card img{height:85px}.insurance-card strong{font-size:14px}}

/* Version 14 additions */
.table-scroll{overflow-x:auto;margin:22px 0}.clinic-table{width:100%;border-collapse:collapse;background:#fff;border-radius:14px;overflow:hidden}.clinic-table th,.clinic-table td{text-align:left;padding:14px 18px;border-bottom:1px solid #e2eee6}.clinic-table th{background:#155b34;color:#fff}.clinic-table tr:nth-child(even){background:#f5faf5}.fine-print{font-size:.88rem;color:#496455;line-height:1.65;margin:14px 0}.appointment-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(240px,1fr);gap:24px}.appointment-form,.booking-aside{background:white;padding:26px;border-radius:18px;box-shadow:0 10px 30px #0b3b1a0d}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label{font-weight:650;color:#184a2b;display:flex;flex-direction:column;gap:7px}.form-grid input,.form-grid select{width:100%;min-width:0;padding:13px;border:1px solid #b9d3c2;border-radius:10px;background:#fff;font:inherit;color:#163a25}.form-grid input:focus,.form-grid select:focus{outline:2px solid #83c841;outline-offset:1px}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gallery-grid a{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;background:#f4faf4;border:1px solid #d8eadb;padding:20px;border-radius:16px;color:#165733;text-decoration:none}.gallery-grid a:hover{box-shadow:0 10px 24px #143b201a}.gallery-grid img{width:100%;max-width:145px;height:135px;object-fit:contain;border-radius:12px}.gallery-grid span{font-size:.9rem;text-decoration:underline}.floating-whatsapp{position:fixed;right:20px;bottom:20px;background:#1c873e;color:#fff;padding:13px 19px;border-radius:999px;box-shadow:0 8px 24px #143b2055;font-weight:700;z-index:20;text-decoration:none}.department-hero{padding:55px 0 28px;background:#f0f8f0}.department-grid{display:grid;grid-template-columns:1fr 200px;gap:24px;align-items:center}.department-grid img{max-width:180px;width:100%;border-radius:50%}.department-body{padding:35px 0 75px}.department-body ul{line-height:2}.department-links{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}@media(max-width:760px){.appointment-layout,.form-grid,.department-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.clinic-table th,.clinic-table td{padding:11px}.floating-whatsapp{bottom:12px;right:12px}}@media(max-width:430px){.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid a{padding:10px}.gallery-grid img{height:95px}}

/* Vision, mission, values and social media */
.purpose-section{background:#fff}.purpose-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:26px}.purpose-card{background:#f2f9f2;border:1px solid #d8ead8;border-radius:18px;padding:26px;box-shadow:0 5px 16px #17492a0b}.purpose-card h3{color:#14532d;margin:8px 0 12px}.purpose-card p,.purpose-card li{line-height:1.75}.purpose-card ul{padding-left:19px}.purpose-card li{margin:0 0 8px}.purpose-mark{font-size:28px;color:#4c9b42}.social-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin-top:24px}.social-tile{border:1px solid #d4e7d5;background:#fff;border-radius:16px;padding:22px 10px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;text-decoration:none;color:#194e2a}.social-tile small{font-size:12px;color:#57715c}.social-tile.linked:hover{border-color:#3c913c;box-shadow:0 6px 20px #14532d19;transform:translateY(-2px)}.social-tile.pending{background:#f6f8f6;opacity:.78}.social-glyph{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#17542d;color:white;font-size:23px;font-weight:800}.social-tile.pending .social-glyph{background:#6c7f70}@media(max-width:850px){.purpose-grid{grid-template-columns:1fr}.social-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:500px){.social-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Version 18: concise navigation and recognisable WhatsApp icon */
.nav nav{gap:27px}.nav nav a{white-space:nowrap}.wa-icon{width:20px;height:20px;flex:none;vertical-align:middle}.btn:has(.wa-icon),.floating-whatsapp{gap:9px}.floating-whatsapp{display:inline-flex;align-items:center;justify-content:center}.floating-whatsapp .wa-icon{width:25px;height:25px}.department-nav{display:flex;align-items:center;gap:22px;margin-left:auto;font-size:14px;font-weight:650}.department-nav a:hover{color:var(--green)}
@media(max-width:850px){.department-nav{order:3;width:100%;margin:0 0 12px;justify-content:center;flex-wrap:wrap;gap:12px 22px}.floating-whatsapp{padding:12px 15px}}
@media(max-width:430px){.floating-whatsapp span{display:none}.floating-whatsapp{width:54px;height:54px;border-radius:50%;padding:0}.floating-whatsapp .wa-icon{width:29px;height:29px}}


/* Version 19: accessible hover, keyboard and touch dropdown navigation */
.nav .site-nav{display:flex;align-items:center;gap:12px;margin-left:auto;font-size:14px;font-weight:650}
.nav-group{position:relative;display:flex;align-items:center;gap:1px}
.nav .site-nav .nav-primary{display:block;padding:13px 3px;white-space:nowrap;color:var(--dark)}
.dropdown-toggle{background:transparent;border:0;color:var(--green);cursor:pointer;font-size:18px;line-height:1;padding:10px 6px;border-radius:6px}
.dropdown-toggle:hover,.dropdown-toggle:focus-visible,.nav .site-nav .nav-primary:hover{color:#4d8a22;background:#f3f9ee}
.nav .site-nav .nav-dropdown{position:absolute;top:100%;left:0;z-index:30;min-width:235px;max-width:290px;display:block;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .15s ease,transform .15s ease,visibility .15s;background:white;list-style:none;margin:0;padding:8px;border:1px solid #dce8d5;border-radius:12px;box-shadow:0 14px 34px #103c2526}
.nav .site-nav .nav-dropdown li{margin:0;padding:0}
.nav .site-nav .nav-dropdown a{display:block;padding:9px 12px;border-radius:7px;color:var(--dark);white-space:normal;line-height:1.35}
.nav .site-nav .nav-dropdown a:hover,.nav .site-nav .nav-dropdown a:focus-visible{background:#eef7e7;color:var(--green)}
@media(hover:hover) and (min-width:851px){.nav-group:hover>.nav-dropdown{visibility:visible;opacity:1;pointer-events:auto;transform:none}}
@media(min-width:851px){.nav-group:focus-within>.nav-dropdown,.nav-group.is-open>.nav-dropdown{visibility:visible;opacity:1;pointer-events:auto;transform:none}}
@media(max-width:850px){
 .nav .site-nav{display:none;order:3;width:100%;flex-direction:column;align-items:stretch;gap:2px;margin:0;padding:8px 0 16px}
 .nav .site-nav.open{display:flex}
 .nav-group{display:grid;grid-template-columns:1fr auto;gap:0;border-bottom:1px solid #e5eee1}
 .nav .site-nav .nav-primary{padding:11px 8px}
 .dropdown-toggle{padding:11px 16px}
 .nav .site-nav .nav-dropdown{grid-column:1/-1;position:static;min-width:0;max-width:none;display:none;visibility:visible;opacity:1;pointer-events:auto;transform:none;transition:none;box-shadow:none;border:0;border-radius:0;background:#f6faf3;margin:0 0 8px;padding:4px 10px}
 .nav-group.is-open>.nav-dropdown{display:block}
 .nav .site-nav .nav-dropdown a{padding:10px 14px}
}
@media(prefers-reduced-motion:reduce){.nav .site-nav .nav-dropdown{transition:none}}

/* Version 20: interactive client feedback and additional services */
.client-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:24px}
.client-feature{background:#fff;border:1px solid #dfeadb;border-radius:18px;padding:26px;box-shadow:0 6px 22px #123e2010}
.client-feature h3{margin:10px 0}.client-feature p{line-height:1.65}.client-feature .btn{margin-top:8px;display:inline-flex;max-width:100%;white-space:normal;text-align:center}.client-feature-icon{font-size:30px}
.client-feedback-message{display:flex;flex-direction:column;gap:8px;margin-top:16px;font-weight:600}.client-feedback-message textarea{width:100%;min-height:125px;resize:vertical;padding:12px;border:1px solid #cbd9c7;border-radius:10px;font:inherit;background:white}
@media(max-width:760px){.client-service-grid{grid-template-columns:1fr}.client-feature{padding:20px}}

/* Version 21 — payment methods */
.payment-section{background:#f8fbf7}.payment-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:24px}.payment-card{min-width:0;border:1px solid #d6e8d8;border-radius:16px;background:#fff;padding:22px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:7px;box-shadow:0 4px 18px #14532d0b}.payment-card strong{font-size:15px;color:#194e2a}.payment-card small{color:#65796b;font-size:12px}.payment-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:14px;background:#eaf5e8;color:#17542d;font-size:30px;font-weight:850;font-style:normal}.payment-airtel{background:#ed1c24;color:#fff;border-radius:50%;font-family:Arial,sans-serif}.payment-mtn{background:#ffcb05;color:#161616;font-size:20px;border-radius:50%}.payment-zamtel{background:#0b855a;color:#fff;border-radius:50%}.payment-visa{font-style:italic;font-size:19px;letter-spacing:-1px;background:#eaf0ff;color:#173b89}.payment-mastercard{background:#f5f5f5;gap:0}.payment-mastercard i{width:27px;height:27px;border-radius:50%;display:block;background:#eb001b}.payment-mastercard i+i{background:#f79e1b;margin-left:-9px;opacity:.88}@media(max-width:900px){.payment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){.payment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-card{padding:16px 8px}}

/* Version 23: lighter typography and icon-first presentation */
:root{--compact-text:#476254}
.section{padding-top:58px;padding-bottom:58px}
.section h2{font-size:clamp(1.65rem,2.8vw,2.25rem);line-height:1.18;letter-spacing:-.025em}
.section .intro{font-size:.94rem;line-height:1.55;max-width:660px;margin-bottom:22px;color:var(--compact-text)}
.eyebrow{font-size:.68rem;letter-spacing:.11em}
.service{padding:20px 18px}
.service h3{font-size:1.03rem;line-height:1.3;margin:10px 0 6px}
.service p{font-size:.88rem;line-height:1.5;color:var(--compact-text);margin:5px 0}
.service .text-link{font-size:.81rem;margin-top:8px}
.service-icon{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;border-radius:12px;background:#e7f5e3;color:#176333;font-size:1.35rem;line-height:1}
.payment-grid{gap:10px}.payment-card{padding:14px 8px;gap:6px;border-radius:13px}
.payment-icon{width:46px;height:46px;font-size:24px;border-radius:12px}
.payment-airtel,.payment-mtn,.payment-zamtel{border-radius:50%}
.payment-mtn{font-size:16px}.payment-visa{font-size:16px}
.payment-card strong{font-size:.78rem;line-height:1.3}
.social-grid{gap:10px}.social-tile{padding:14px 8px;gap:6px;border-radius:13px}
.social-glyph{width:39px;height:39px;font-size:19px}.social-tile strong{font-size:.8rem}
.gallery-grid a{padding:14px 10px;gap:8px}.gallery-grid strong{font-size:.9rem}.gallery-grid span{font-size:.76rem}
.purpose-card{padding:20px}.purpose-card p,.purpose-card li{font-size:.9rem;line-height:1.55}
.insurance-card{padding:12px 9px;gap:7px}.insurance-card img{height:88px}.insurance-card strong{font-size:.88rem}.pmec-card strong{font-size:1.2rem}
.nav .site-nav .nav-primary{font-size:.86rem}.nav .site-nav .nav-dropdown a{font-size:.85rem}
.btn{font-size:.88rem}.fine-print{font-size:.8rem}
@media(max-width:600px){.section{padding-top:44px;padding-bottom:44px}.payment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.social-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}.social-tile{padding:10px 3px}.social-glyph{width:34px;height:34px;font-size:16px}.social-tile strong{font-size:.63rem;overflow-wrap:anywhere}.payment-card strong{font-size:.69rem}.payment-icon{width:40px;height:40px;font-size:21px}.payment-mtn,.payment-visa{font-size:13px}.gallery-grid a{padding:10px 6px}}

/* Version 24 — interactive homepage and patient tools */
.hero{padding:32px 0 28px;background:linear-gradient(135deg,#eef8ec,#ffffff)}
.hero-slider{border:1px solid #d7e9d7;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 12px 36px rgba(15,72,39,.09)}
.hero-slides{position:relative}.hero-slide{display:none;min-height:360px;align-items:center;justify-content:space-between;gap:26px;padding:42px 6%;background:linear-gradient(115deg,#fff 58%,#e4f5df)}.hero-slide.is-active{display:flex;animation:slideFade .35s ease}.hero-slide-copy{max-width:660px}.hero-slide h1,.hero-slide h2{font-size:clamp(1.7rem,4vw,3.2rem);line-height:1.14;color:#144a2a;margin:12px 0}.hero-slide p{font-size:1.03rem;max-width:480px}.hero-slide .actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:23px}.slide-image{width:min(28%,245px);max-height:230px;object-fit:contain;border-radius:50%;background:white;padding:12px}.slide-symbol{font-size:9rem;color:#287e42;line-height:1}.slider-controls{display:flex;align-items:center;justify-content:center;gap:18px;padding:13px;background:#f4faf3}.slider-arrow{border:1px solid #b9d9be;border-radius:50%;background:white;color:#18582f;font-size:1.5rem;width:36px;height:36px;cursor:pointer}.slider-dots{display:flex;gap:9px}.slider-dot{width:11px;height:11px;border-radius:50%;border:0;background:#bad6bf;cursor:pointer}.slider-dot.is-active{background:#216d38;transform:scale(1.15)}@keyframes slideFade{from{opacity:.45}to{opacity:1}}
.specialist-cards,.home-care-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:22px}.specialist-card,.home-care-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:22px;border:1px solid #d7e9d7;border-radius:17px;background:#fff}.specialist-card h3,.home-care-card h3{margin:0;color:#174c2b;font-size:1.13rem}.specialist-card p,.home-care-card p{margin:0;font-size:.92rem}.specialist-icon,.home-care-icon{display:grid;place-items:center;width:47px;height:47px;border-radius:14px;background:#e6f6e5;color:#1d7839;font-size:1.65rem}.specialist-schedule{font-size:.8rem;color:#476e55;min-height:38px}.specialist-card .btn,.home-care-card .btn{margin-top:auto;font-size:.82rem;padding:10px 12px}.home-care-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.faq-list{max-width:900px;margin:20px auto}.faq-list details{border:1px solid #d7e9d7;border-radius:13px;background:#fff;margin-bottom:10px;padding:0 18px}.faq-list summary{cursor:pointer;padding:17px 8px;font-weight:650;color:#194f2c;list-style-position:inside}.faq-list details[open]{background:#f9fdf8}.faq-list p{margin:0 8px 10px}.faq-list a{display:inline-block;margin:0 8px 16px;color:#186b38;font-weight:600}
@media(max-width:850px){.specialist-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-slide{min-height:300px;padding:32px 5%}.slide-image{width:25%}}
@media(max-width:570px){.hero{padding:15px 0}.hero-slide{flex-direction:column-reverse;align-items:flex-start;min-height:390px;gap:10px;padding:24px}.slide-image{width:100px;height:100px;align-self:flex-end}.slide-symbol{font-size:5rem;align-self:flex-end}.hero-slide h1,.hero-slide h2{font-size:1.85rem}.hero-slide .actions{gap:8px}.specialist-cards,.home-care-grid{grid-template-columns:1fr}.specialist-card,.home-care-card{padding:18px}}
@media(prefers-reduced-motion:reduce){.hero-slide.is-active{animation:none}}

/* V25 patient information */
.info-shortcuts{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.info-shortcuts a{display:inline-flex;padding:10px 14px;background:#fff;border:1px solid #cce5cd;border-radius:10px;color:#14532d;text-decoration:none;font-weight:600}.faq-search-label{display:block;font-weight:650;margin:18px auto 6px;max-width:900px}.faq-search{display:block;width:100%;max-width:900px;margin:0 auto 12px;border:1px solid #aacdac;border-radius:10px;padding:13px 15px;font:inherit}.faq-list details[hidden]{display:none}.faq-anchor{display:block;scroll-margin-top:110px}.faq-list details{scroll-margin-top:110px}

/* V26: accessible pictograms and compact clinic timetable */
.service-icon,.specialist-icon{font-family:system-ui,'Segoe UI Emoji','Apple Color Emoji',sans-serif;font-size:1.45rem;line-height:1.2}
.clinic-symbol{display:inline-flex;align-items:center;justify-content:center;width:1.8em;margin-right:.4em;font-size:1.15em;vertical-align:middle}
.payment-mobile-icon{font-family:system-ui,'Segoe UI Emoji',sans-serif;font-size:1.35rem!important;background:#eef8ed!important;color:#14532d!important}
#specialists td:first-child{font-weight:600}
@media(max-width:570px){.service-icon,.specialist-icon{font-size:1.3rem}.clinic-symbol{margin-right:.25em}}

/* Version 27: supplied mobile-money branding */
.payment-brand-logo{display:block;width:68px;height:58px;max-width:100%;object-fit:contain;border-radius:8px;background:#fff}
@media(max-width:600px){.payment-brand-logo{width:56px;height:50px}}

/* V28: consistent hamburger navigation for desktop, tablet and mobile */
.header{z-index:100}
.nav{position:relative;display:flex;align-items:center;flex-wrap:nowrap;gap:12px;min-height:72px}
.brand{min-width:0;margin-right:auto}
.menu{display:flex!important;align-items:center;justify-content:center;flex:0 0 46px;width:46px;height:46px;margin-left:auto;border:1px solid #d8e8d2;border-radius:10px;background:#f3f9ee;color:var(--dark);font-size:26px;cursor:pointer;line-height:1}
.menu:hover,.menu:focus-visible{background:#e5f3dc}
.nav-cta{display:none!important}
.nav .site-nav{display:none!important;position:absolute;top:calc(100% - 2px);right:0;left:auto;width:min(390px,calc(100vw - 32px));max-height:min(78vh,650px);overflow-y:auto;overscroll-behavior:contain;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:10px 14px 16px;background:#fff;border:1px solid #dbe9d6;border-radius:0 0 15px 15px;box-shadow:0 20px 45px #103c2526;z-index:120}
.nav .site-nav.open{display:flex!important}
.nav-group{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-bottom:1px solid #e6eee3;gap:0}
.nav .site-nav .nav-primary{padding:13px 9px;font-size:15px;white-space:normal}
.dropdown-toggle{padding:12px 16px;font-size:22px}
.nav .site-nav .nav-dropdown{grid-column:1/-1;position:static;display:none;visibility:visible;opacity:1;pointer-events:auto;transform:none;transition:none;box-shadow:none;border:0;border-radius:8px;background:#f6faf3;min-width:0;max-width:none;margin:0 0 8px;padding:4px 8px}
.nav-group.is-open>.nav-dropdown{display:block}
.nav .site-nav .nav-dropdown a{padding:11px 12px;font-size:14px}
@media(hover:hover){.nav-group:hover>.nav-dropdown{display:none;visibility:visible;opacity:1;pointer-events:auto;transform:none}.nav-group.is-open:hover>.nav-dropdown{display:block}}
@media(min-width:851px){.nav-group:focus-within>.nav-dropdown{display:none}.nav-group.is-open:focus-within>.nav-dropdown{display:block}}
@media(max-width:850px){.nav{flex-wrap:nowrap}.nav .site-nav{order:initial;width:min(390px,calc(100vw - 32px));padding:10px 14px 16px;margin:0}.nav .site-nav.open{display:flex}.nav-group{display:grid}}
@media(max-width:520px){.brand{font-size:13px}.brand small{font-size:9px}.brand-logo{width:40px;height:40px}.nav .site-nav{right:-2px;width:calc(100vw - 36px)}.menu{width:44px;height:44px;flex-basis:44px}}
img,video,iframe{max-width:100%}

/* Version 30 — premium, compact payment and insurance presentation */
.payment-hub{background:linear-gradient(145deg,#f3f9f0 0%,#ffffff 56%,#f2f8ee 100%)}
.payment-hub-head{display:flex;justify-content:space-between;align-items:end;gap:18px;flex-wrap:wrap;margin-bottom:24px}
.payment-hub-head h2{margin:7px 0 7px}.payment-hub-head p{margin:0;font-size:.95rem}
.payment-help{display:inline-flex;align-items:center;gap:8px;padding:11px 15px;border-radius:999px;background:#14532d;color:#fff;font-size:.83rem;font-weight:750;box-shadow:0 8px 22px #14532d24}
.payment-help:hover{background:#0d3e22;color:#fff}
.pay-panel{padding:26px;border:1px solid #dce9d8;border-radius:22px;background:#fff;box-shadow:0 10px 35px #153e2510;margin-bottom:18px}
.pay-panel-heading{display:flex;align-items:center;gap:13px;margin-bottom:19px}.pay-panel-heading h3{margin:0 0 3px;font-size:1.1rem;color:#123e26}.pay-panel-heading p{margin:0;font-size:.8rem}
.pay-panel-icon{width:42px;height:42px;display:grid;place-items:center;background:#eaf5e5;color:#14532d;border-radius:12px;font-size:23px;font-weight:700;flex:none}
.premium-payment-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}
.premium-payment-tile,.premium-insurance-tile{min-width:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;border:1px solid #e8eee6;border-radius:15px;background:#fcfefb;padding:16px 8px;text-align:center;transition:transform .2s,border-color .2s,box-shadow .2s}
.premium-payment-tile:hover,.premium-insurance-tile:hover{transform:translateY(-2px);border-color:#a5d28d;box-shadow:0 6px 18px #14532d14}
.premium-payment-tile img{display:block;width:100%;max-width:90px;height:72px;object-fit:contain;border-radius:7px}
.premium-payment-tile span{font-size:.78rem;font-weight:750;color:#244d33;line-height:1.25}
.pay-logo{width:90px;max-width:100%;height:72px;display:flex;align-items:center;justify-content:center;border-radius:10px}
.cash-logo{font-size:35px;background:#eef7ea}.visa-logo{font-size:27px;font-weight:950;font-style:italic;color:#193b8f;background:#f0f4ff;letter-spacing:-1.5px}
.mastercard-logo{background:#f6f7f5}.mastercard-logo i{width:32px;height:32px;border-radius:50%;background:#eb001b;display:block}.mastercard-logo i+i{background:#f79e1b;margin-left:-11px;opacity:.9}
.premium-insurance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}
.premium-insurance-tile{padding:18px 12px;min-height:151px;gap:7px}.premium-insurance-tile img{width:100%;height:87px;object-fit:contain}.premium-insurance-tile strong{font-size:.85rem;color:#173f27}
.payment-footnote{font-size:.75rem;color:#607264;line-height:1.5;margin:6px 4px 0}
@media(max-width:800px){.premium-payment-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:560px){.pay-panel{padding:15px;border-radius:17px}.premium-payment-grid,.premium-insurance-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.premium-payment-tile{padding:11px 5px}.premium-payment-tile img,.pay-logo{height:58px}.premium-insurance-tile{min-height:127px;padding:10px 6px}.premium-insurance-tile img{height:75px}.payment-hub-head{align-items:start}.payment-help{font-size:.76rem}}

/* Version 31: authentic clinic photography */
.hero-slide .slide-image.clinic-photo{width:36%;max-width:390px;height:270px;max-height:none;object-fit:cover;object-position:center;border-radius:20px;padding:0;background:transparent;box-shadow:0 15px 32px #16472c20}
.about-clinic-photo{width:100%;max-height:300px;object-fit:cover;border-radius:18px;grid-column:1/-1;order:3;margin-top:12px}
#dental .clinic-photo,#eye .clinic-photo{width:100%;height:310px;object-fit:cover;border-radius:18px;box-shadow:0 10px 24px #0b45211a}
.outreach-feature-photo{display:block;width:100%;max-height:340px;object-fit:cover;object-position:center 40%;border-radius:18px;margin:18px 0 24px}
.gallery-grid img.clinic-photo{max-width:none;height:160px;object-fit:cover;border-radius:12px}
.clinic-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.clinic-photo-grid figure{margin:0;background:white;border:1px solid #dcece0;border-radius:16px;overflow:hidden}
.clinic-photo-grid img{display:block;width:100%;height:220px;object-fit:cover}
.clinic-photo-grid figcaption{padding:12px 15px;font-weight:650;color:#175b36}
.department-grid img.clinic-photo{max-width:none;width:100%;height:205px;object-fit:cover;border-radius:16px}
@media(max-width:760px){.clinic-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clinic-photo-grid img{height:160px}.hero-slide .slide-image.clinic-photo{width:100%;height:160px;max-width:none;align-self:stretch}.about-clinic-photo{max-height:230px}}
@media(max-width:450px){.clinic-photo-grid{gap:10px}.clinic-photo-grid img{height:125px}.clinic-photo-grid figcaption{font-size:.8rem;padding:9px}}

/* V34: concise overview with optional expanded clinical service information */
.service-more{margin-top:12px;border-top:1px solid rgba(22,100,64,.16);padding-top:9px;font-size:.91rem}
.service-more summary{cursor:pointer;color:#116b49;font-weight:700;list-style-position:inside;padding:7px 0;touch-action:manipulation}
.service-more summary:hover,.service-more summary:focus-visible{color:#084d35;text-decoration:underline}
.service-more p{line-height:1.55;margin:8px 0;color:#3d5047;font-size:.9rem}
.department-description{max-width:75ch;line-height:1.7;color:#3d5047}
.detail-heading{margin-top:1.8rem}
@media(max-width:600px){.service-more summary{padding:10px 0}.service-more p{font-size:.92rem}}

/* V35: inline MORE at the end of a real service description */
.service-inline-description{line-height:1.65;color:#3d5047}
.inline-more-toggle{display:inline;padding:0;border:0;background:transparent;color:#0d7045;font:inherit;font-size:.88em;font-weight:800;letter-spacing:.02em;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.inline-more-toggle:hover,.inline-more-toggle:focus-visible{color:#064c2f;outline-offset:3px}
.inline-more-rest[hidden]{display:none!important}
.inline-less-toggle{margin-left:3px}


/* Version 36: small, unobtrusive social and payment strips */
.social-section{background:#f5faf3!important;padding:19px 0 23px!important;border-top:1px solid #dce9d8}
.social-section h2{font-size:1.05rem!important;margin:0 0 10px!important}
.social-grid{display:flex!important;flex-wrap:wrap;align-items:center;gap:9px!important;margin:0!important}
.social-tile{display:inline-flex!important;flex-direction:row!important;gap:6px!important;align-items:center;padding:5px 10px!important;border-radius:999px!important;min-height:38px!important;box-shadow:none!important}
.social-glyph{width:25px!important;height:25px!important;font-size:14px!important;flex:none}
.social-tile strong{font-size:.72rem!important;white-space:nowrap}
.payment-hub{padding-top:28px!important;padding-bottom:25px!important}
.payment-hub-head{margin-bottom:12px!important}.payment-hub-head h2{font-size:1.45rem!important;margin:3px 0!important}
.payment-hub-head p{font-size:.8rem!important}
.pay-panel{padding:13px 16px!important;margin-bottom:10px!important;border-radius:15px!important;box-shadow:none!important}
.pay-panel-heading{margin-bottom:10px!important;gap:9px!important}.pay-panel-heading h3{font-size:.95rem!important}
.pay-panel-heading p{font-size:.72rem!important}.pay-panel-icon{width:30px!important;height:30px!important;font-size:16px!important}
.premium-payment-grid{display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:7px!important}
.premium-insurance-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important}
.premium-payment-tile,.premium-insurance-tile{padding:7px 5px!important;gap:4px!important;border-radius:10px!important;min-height:0!important}
.premium-payment-tile img,.pay-logo{height:42px!important;max-width:66px!important;width:100%!important;object-fit:contain!important}
.premium-payment-tile span{font-size:.67rem!important}
.premium-insurance-tile img{height:48px!important;width:100%!important;object-fit:contain!important}
.premium-insurance-tile strong{font-size:.7rem!important}
.cash-logo{font-size:22px!important}.visa-logo{font-size:19px!important}.mastercard-logo i{width:22px!important;height:22px!important}
.payment-footnote{font-size:.7rem!important}
@media(max-width:600px){
 .social-grid{gap:6px!important}.social-tile{padding:5px 8px!important;min-height:34px!important}.social-glyph{width:22px!important;height:22px!important;font-size:12px!important}.social-tile strong{font-size:.65rem!important}
 .payment-hub{padding:23px 0!important}.pay-panel{padding:10px!important}
 .premium-payment-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}
 .premium-insurance-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important}
 .premium-insurance-tile{padding:5px 2px!important}.premium-insurance-tile img{height:36px!important}.premium-insurance-tile strong{font-size:.59rem!important;overflow-wrap:anywhere}
 .premium-payment-tile img,.pay-logo{height:36px!important;max-width:55px!important}
 .premium-payment-tile span{font-size:.63rem!important}
 .payment-help{padding:8px 10px!important;font-size:.72rem!important}
}

/* Ensure hidden MORE controls truly disappear despite inline button styling. */
.inline-more-toggle[hidden]{display:none!important}

/* V38: compact expandable timetable, appointments and feedback */
#specialists,#appointment,#feedback{padding-top:18px;padding-bottom:18px;}
.compact-feature-panel{border:1px solid #c9ded0;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 3px 12px rgba(11,62,38,.05);}
.compact-feature-summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:17px 20px;color:#164c30;}
.compact-feature-summary::-webkit-details-marker{display:none;}
.compact-feature-summary:focus-visible{outline:3px solid #6ea936;outline-offset:-3px;}
.compact-feature-heading{font-size:clamp(1.05rem,2vw,1.3rem);font-weight:750;flex:1;}
.compact-feature-hint{font-size:.82rem;color:#52735d;}
.compact-feature-arrow{font-size:1.5rem;line-height:1;transition:transform .2s;}
.compact-feature-panel[open] .compact-feature-arrow{transform:rotate(180deg);}
.compact-feature-content{border-top:1px solid #e3ece5;padding:20px;}
.compact-feature-content .intro{margin-top:0;}
@media(max-width:600px){.compact-feature-summary{padding:14px;gap:8px;flex-wrap:wrap}.compact-feature-hint{order:3;flex-basis:100%;}.compact-feature-content{padding:14px;}}

/* Keep FAQs compact until the visitor requests them. */
.compact-faq-panel{max-width:100%;}
.compact-faq-panel>.compact-feature-summary{cursor:pointer;list-style:none;}
.compact-faq-panel>.compact-feature-summary::-webkit-details-marker{display:none;}
.compact-faq-content{padding:1rem 0 .3rem;}
.compact-faq-content>.eyebrow,.compact-faq-content>h2{display:none;}
.compact-faq-content .faq-list{margin-top:.75rem;}

/* V40 pre-domain professional polish: restrained spacing and consistent UI. */
:root{--surface:#fff;--line:#e2ebe4;--shadow-soft:0 4px 18px rgba(14,58,35,.055)}
html{scroll-padding-top:88px}
body{-webkit-font-smoothing:antialiased}
.section{padding-top:clamp(30px,4.5vw,56px);padding-bottom:clamp(30px,4.5vw,56px)}
.section .intro{margin-top:6px;margin-bottom:20px;max-width:68ch}
.section h2{line-height:1.2;letter-spacing:-.025em}
.section h3{line-height:1.3}
#about,#purpose,#procedures,#outreach,#team,#home-care,#patient-services,#gallery,#clinic-photos,#contact{scroll-margin-top:90px}
.service-grid{gap:15px}
.service{border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-soft);transition:box-shadow .18s ease,border-color .18s ease}
.service:hover{box-shadow:0 8px 24px rgba(14,58,35,.09);border-color:#c4dac8}
.service p{line-height:1.58}
.inline-more-toggle{font-weight:800;text-underline-offset:3px;cursor:pointer}
.inline-more-rest[hidden],.inline-more-toggle[hidden]{display:none!important}
#specialists,#appointment,#feedback,#help-centre{padding-top:10px!important;padding-bottom:10px!important}
#specialists .compact-feature-panel,#appointment .compact-feature-panel,#feedback .compact-feature-panel,#help-centre .compact-feature-panel{box-shadow:var(--shadow-soft);border-radius:12px}
.compact-feature-summary{padding:13px 18px}
.compact-feature-content{padding:18px}
#insurance{padding-top:24px!important;padding-bottom:24px!important}
#social{padding-top:16px!important;padding-bottom:18px!important}
#social h2{font-size:1rem;margin:0 0 10px}
#social .social-grid{gap:8px;justify-content:center}
#social .social-tile{min-height:0}
#gallery .gallery-grid,#clinic-photos .clinic-photo-grid{gap:12px}
img{max-width:100%}
button,a{-webkit-tap-highlight-color:transparent}
@media(max-width:720px){
 .wrap{padding-left:17px;padding-right:17px}
 .section{padding-top:30px;padding-bottom:30px}
 .service-grid{gap:11px}
 .service{padding:17px}
 .compact-feature-summary{padding:13px 14px}
 .compact-feature-hint{font-size:.74rem}
 #insurance{padding-top:18px!important;padding-bottom:18px!important}
 #social{padding-top:12px!important;padding-bottom:14px!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.service{transition:none}}

/* V43: Compact information hub and article area */
.information-hub-cta{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.35rem 1.5rem;border:1px solid #dce9df;border-radius:16px;background:#f7fbf7}.information-hub-cta h2{margin:.3rem 0}.information-hub-cta p{margin:.35rem 0 0;max-width:55ch}.information-hub-cta .btn{flex-shrink:0}.article-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.2rem 0}.article-topic{background:#fff;border:1px solid #e0ebe3;border-radius:14px;padding:1rem}.article-topic h3{margin:0 0 .4rem}.article-topic p{margin:0}@media(max-width:680px){.information-hub-cta{flex-direction:column;align-items:flex-start}.article-topic-grid{grid-template-columns:1fr}}

/* V44 — Compact, individually clickable service directory */
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}
.service-accordion{padding:0!important;overflow:hidden;border-radius:12px;box-shadow:none!important}
.service-accordion .service-heading{display:flex;align-items:center;gap:10px;padding:12px 14px;cursor:pointer;list-style:none;min-height:66px}
.service-accordion .service-heading::-webkit-details-marker{display:none}
.service-accordion .service-heading h3{margin:0;flex:1;font-size:.94rem}
.service-accordion .service-icon{width:35px;height:35px;flex:0 0 35px;font-size:1.1rem}
.service-chevron{font-size:1.3rem;color:#126e43;transition:transform .2s}
.service-accordion[open] .service-chevron{transform:rotate(180deg)}
.service-accordion[open]{border-color:#8bc6a0;box-shadow:0 5px 18px rgba(14,58,35,.07)!important}
.service-accordion-content{border-top:1px solid #e1eee3;padding:10px 15px 14px}
.service-accordion-content p{font-size:.88rem;line-height:1.6}
.service-accordion summary:focus-visible{outline:3px solid #3dba6e;outline-offset:-3px}
@media(max-width:900px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.service-grid{grid-template-columns:1fr;gap:8px}.service-accordion .service-heading{min-height:55px;padding:9px 12px}}

/* Version 45: welcome introduction and service-specific enquiry links */
.welcome-introduction{padding:clamp(28px,4vw,52px) 0;background:#f6fbf8}
.welcome-introduction .container{max-width:920px}
.welcome-introduction h2{margin:.5rem 0 1rem;line-height:1.2}
.welcome-introduction p{max-width:780px;margin:.65rem 0;line-height:1.65}
.service-whatsapp{display:inline-block;margin-top:.35rem;font-weight:650}

/* V46: compact mission, vision and values */
#purpose .purpose-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start;margin-top:18px}
#purpose .purpose-disclosure{background:#fff;border:1px solid #dce8df;border-radius:12px;overflow:hidden;box-shadow:0 3px 12px rgba(12,57,33,.045)}
#purpose .purpose-disclosure summary{display:flex;align-items:center;gap:10px;cursor:pointer;padding:14px 15px;font-weight:700;color:#175b35;list-style:none;min-height:55px}
#purpose .purpose-disclosure summary::-webkit-details-marker{display:none}
#purpose .purpose-mini-icon{font-size:19px;line-height:1;color:#438a45}
#purpose .purpose-mini-label{flex:1}
#purpose .purpose-chevron{font-size:22px;transition:transform .18s ease}
#purpose .purpose-disclosure[open] .purpose-chevron{transform:rotate(180deg)}
#purpose .purpose-detail{padding:0 15px 15px;color:#334b3b;line-height:1.6}
#purpose .purpose-detail p{margin:0}
#purpose .purpose-detail ul{padding-left:20px;margin:0}
#purpose .purpose-detail li{margin:5px 0}
@media(max-width:700px){#purpose .purpose-grid{grid-template-columns:1fr;gap:8px}#purpose .purpose-disclosure summary{min-height:48px;padding:11px 13px}}


/* Version 47 — subtle, professional animated icons */
@keyframes nlmcIconBreathe {0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.045)}}
@keyframes nlmcIconReveal {from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.service-icon,.specialist-icon,.home-care-icon,.purpose-mini-icon,.feature-icon,.client-feature-icon,.pay-panel-icon{transform-origin:center;animation:nlmcIconBreathe 3.8s ease-in-out infinite;will-change:transform}
.service-accordion:nth-child(3n+2) .service-icon,.specialist-card:nth-child(3n+2) .specialist-icon{animation-delay:-1.3s}
.service-accordion:nth-child(3n) .service-icon,.specialist-card:nth-child(3n) .specialist-icon{animation-delay:-2.5s}
.service-accordion:hover .service-icon,.service-accordion:focus-within .service-icon,.specialist-card:hover .specialist-icon,.home-care-card:hover .home-care-icon{animation-play-state:paused;transform:translateY(-3px) scale(1.1);transition:transform .2s ease}
.service-icon,.specialist-icon,.home-care-icon,.purpose-mini-icon,.feature-icon,.client-feature-icon,.pay-panel-icon{transition:transform .2s ease,filter .2s ease}
a:has(.wa-icon) .wa-icon,.floating-whatsapp .wa-icon{transition:transform .22s ease}
a:has(.wa-icon):hover .wa-icon,.floating-whatsapp:hover .wa-icon{transform:scale(1.13) rotate(-7deg)}
a:has(img):hover img{transition:transform .2s ease;transform:scale(1.035)}
@media(prefers-reduced-motion:reduce){.service-icon,.specialist-icon,.home-care-icon,.purpose-mini-icon,.feature-icon,.client-feature-icon,.pay-panel-icon{animation:none!important;will-change:auto!important}a:has(img):hover img,.service-accordion:hover .service-icon,.service-accordion:focus-within .service-icon,.specialist-card:hover .specialist-icon,.home-care-card:hover .home-care-icon{transform:none!important}}

/* v48: crisp animated SVG service icons (static-site compatible) */
.site-icon{width:1.4em;height:1.4em;display:inline-block;vertical-align:middle;flex-shrink:0;transition:transform .28s ease,stroke .28s ease;stroke:currentColor}
.service-icon:has(.site-icon),.purpose-mini-icon:has(.site-icon){display:inline-flex;align-items:center;justify-content:center}
.service-heading:hover .site-icon,.service:hover .site-icon,.purpose-mini:hover .site-icon{transform:translateY(-2px) scale(1.12)}
@media(prefers-reduced-motion:reduce){.site-icon{transition:none!important;animation:none!important}}

/* V49: restrained, consistent clinic icon presentation */
.site-icon{width:1.25em;height:1.25em;stroke-width:1.8;animation:none!important;filter:none!important;transition:transform .18s ease}
.service-icon,.purpose-mini-icon{filter:none!important;box-shadow:none!important}
.service-heading:hover .site-icon,.service:hover .site-icon,.purpose-mini:hover .site-icon{transform:translateY(-1px)}
@media(prefers-reduced-motion:reduce){.site-icon{transition:none!important}}

/* Actual clinic physiotherapy photograph as service thumbnail */
.service-photo-icon{display:block;width:100%;height:100%;min-width:0;object-fit:cover;border-radius:inherit;}
.service-heading .service-icon:has(.service-photo-icon){overflow:hidden;border-radius:10px;}
.specialist-icon:has(.service-photo-icon){overflow:hidden;border-radius:10px;}

/* V51: compact health content library */
.media-tabs{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.1rem}.media-tabs a,.media-channel{display:inline-block;border:1px solid #b4d9bd;border-radius:999px;padding:.48rem .9rem;color:#176d37;text-decoration:none;font-weight:650;background:#fff}.media-tabs a:hover,.media-channel:hover{background:#e9f8ec}.media-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:1rem;margin-top:1rem}.media-card{overflow:hidden;border:1px solid #dce9df;border-radius:14px;background:#fff;box-shadow:0 3px 15px rgba(0,0,0,.04)}.media-card>img{width:100%;aspect-ratio:16/9;object-fit:cover}.media-card-body{padding:1rem}.media-card-body h3{margin:.2rem 0 .5rem}.media-card-body p{line-height:1.55}.media-card-body a{font-weight:700;color:#14723c}.media-meta{font-size:.78rem;color:#53685a}.media-empty{padding:1.1rem;border:1px dashed #c9dccf;border-radius:12px;background:#fff;color:#4a6050}.media-empty[hidden]{display:none}.media-intro{padding-bottom:2rem}.media-preview{margin-top:1rem;padding:1rem 1.15rem;border:1px solid #dce9df;border-radius:12px;background:#fff;display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.media-preview p{margin:.2rem 0}.media-preview a{font-weight:700;color:#176d37}.media-card a:focus-visible,.media-tabs a:focus-visible{outline:3px solid #78c68c;outline-offset:2px}

/* Version 52: compact health library */
.media-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 4px;padding:5px;border-radius:14px;background:#eef7ef;width:fit-content;max-width:100%}
.media-tabs .library-tab{appearance:none;border:0;border-radius:10px;background:transparent;color:#20583b;font:inherit;font-weight:700;padding:10px 20px;cursor:pointer;transition:background .18s,color .18s}
.media-tabs .library-tab:hover,.media-tabs .library-tab:focus-visible{background:#d8ebdf;outline-offset:2px}
.media-tabs .library-tab.active{background:#176c42;color:white;box-shadow:0 2px 7px #0b4b2525}
.library-panel{padding-top:30px!important;padding-bottom:34px!important}
.library-panel[hidden]{display:none!important}
.media-intro{padding-bottom:22px!important}
@media(max-width:560px){.media-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.media-tabs .library-tab{padding:10px 5px;font-size:13px}}

/* V53: core values — icons and keywords only */
.core-values-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.core-value-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;text-align:center;padding:14px 8px;border:1px solid rgba(24,116,68,.14);border-radius:12px;background:#f7fcf8;color:#155d39;font-size:.88rem;font-weight:650}
.core-value-icon{width:27px;height:27px;flex-shrink:0}
@media(max-width:520px){.core-values-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.core-value-item{padding:12px 6px}}

/* v54: concise regulatory and partnership identifiers */
.trust-strip{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 22px;margin:12px auto 18px;padding:9px 14px;border:1px solid #d9e9dd;border-radius:12px;background:#f7fbf8;color:#24523a;font-size:.79rem;line-height:1.5;text-align:center}
.trust-strip strong{color:#17653c}
.footer-credentials{font-size:.78rem;line-height:1.55;opacity:.9;margin-top:10px}
@media(max-width:620px){.trust-strip{font-size:.73rem;gap:4px;padding:8px 10px}}

/* V56: visibly deeper green-tinted backgrounds, distinct from white cards. */
:root{--pale:#dcebd3}
.hero{background:linear-gradient(125deg,#d6e9ca 0%,#c4dfb7 100%)}
.tinted{background:#dcebd3}
.feature-panel{background:#cce3c1}
.contact-card{background:#d5e8ca}
.specialty-list span{background:#d4e9c8}
.media-tabs{background:#d1e5c9}
.trust-strip{background:#dcebd3}
/* Keep content surfaces white for strong contrast and readability. */
.service,.media-card,.media-preview,.insurance-grid span{background:#fff}

/* Version 57: matching vector icons for specialty cards */
.specialist-icon .site-icon{width:27px;height:27px;stroke-width:1.8;animation:none;filter:none}


/* V58 — accessible, consistent clinic typography */
:root{--font-body:"Inter",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;--font-heading:"Plus Jakarta Sans","Inter",system-ui,sans-serif}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-family:var(--font-body);font-size:16px;line-height:1.65;font-weight:400;letter-spacing:0}
h1,h2,h3,h4,h5,h6,.brand,.art-label strong{font-family:var(--font-heading);letter-spacing:-.025em}
h1{font-size:clamp(2.25rem,4vw,2.75rem);line-height:1.17;font-weight:800}
h2{font-size:clamp(1.55rem,2.8vw,1.875rem);line-height:1.23;font-weight:750}
h3{font-size:clamp(1.125rem,1.8vw,1.25rem);line-height:1.35;font-weight:700}
p,li{line-height:1.65}
.service p,.service-description,.service-summary,.service-details,.media-card p{font-size:max(15px,.9375rem);line-height:1.6}
nav,.nav nav,.nav-cta,.btn,button,input,textarea,select{font-family:var(--font-body)}
.nav nav,.nav-cta,.btn,button{font-size:14px;font-weight:650}
input,textarea,select{font-size:16px}
.eyebrow,.core-value-item,.specialty-list span{letter-spacing:.01em}
@media(max-width:620px){h1{font-size:clamp(2rem,8vw,2.5rem)}h2{font-size:clamp(1.5rem,6vw,1.8rem)}.service p,.service-description,.service-summary,.service-details{font-size:15px}.nav nav{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* V59: compact, accessible specialty service expansion */
.specialist-services{margin:10px 0 12px;text-align:left;border-top:1px solid #dce8d7;padding-top:9px;font-size:.9rem}
.specialist-services summary{cursor:pointer;font-weight:700;color:var(--green);list-style:revert;padding:3px 0}
.specialist-services ul{padding-left:19px;margin:8px 0;line-height:1.55}
.specialist-services li{margin-bottom:5px}
.specialist-detail-link{display:inline-block;color:var(--green);font-weight:650;margin:5px 0 3px}

/* V62 shop */
.shop-nav{color:var(--green)!important;font-weight:800!important}.shop-hero{padding:65px 0 45px;background:#dcebd3}.shop-hero h1{font-size:clamp(34px,4vw,54px);margin:12px 0}.shop-hero p{max-width:760px}.shop-tabs{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}.shop-filter,.shop-outline{border:1px solid #b6cdb0;background:#fff;color:var(--dark);border-radius:9px;padding:10px 15px;font:inherit;font-weight:700;cursor:pointer}.shop-filter.active{background:var(--green);color:#fff}.shop-section{padding:48px 0 75px}.shop-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;align-items:start}.shop-heading h2{font-size:28px}.shop-products{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.shop-product{border:1px solid #dce8d7;border-radius:15px;padding:22px;background:#fff;display:flex;flex-direction:column;align-items:start;box-shadow:0 4px 15px #103c2510}.shop-product-icon{height:56px;width:56px;border-radius:14px;background:#e2efd9;display:grid;place-items:center;color:var(--green);font-size:30px;margin-bottom:12px}.shop-product-category{font-size:12px;color:#4b754b;font-weight:800;text-transform:uppercase;letter-spacing:.05em}.shop-product h3{margin:8px 0;font-size:19px}.shop-product p{font-size:14px;margin:0 0 14px}.shop-product .shop-price{font-size:12px;color:#456849;font-weight:650;margin-top:auto}.shop-add,.shop-checkout{background:var(--green);color:#fff;border:0;border-radius:9px;padding:12px 16px;font:inherit;font-weight:750;cursor:pointer;width:100%}.shop-add:hover,.shop-checkout:hover{background:#0f4224}.shop-cart{position:sticky;top:105px;background:#f1f7ec;border:1px solid #d5e5ce;border-radius:17px;padding:22px}.shop-cart h2{font-size:22px}.shop-cart h2 span{font-size:15px;background:#d9eaca;border-radius:50%;padding:4px 9px}.shop-cart-line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #d9e6d3;font-size:14px}.shop-quantity{display:flex;align-items:center;gap:8px}.shop-quantity button{border:1px solid #b8cfb3;background:#fff;border-radius:6px;min-width:30px;height:30px;cursor:pointer}.shop-cart-actions{margin:16px 0}.shop-cart label{display:block;font-size:13px;font-weight:750;margin:12px 0 5px}.shop-cart input,.shop-cart select{width:100%;padding:11px;border:1px solid #b8cfb3;border-radius:8px;background:#fff;font:inherit}.shop-checkout{margin-top:17px}.shop-checkout:disabled,.shop-outline:disabled{opacity:.5;cursor:not-allowed}.shop-disclaimer{font-size:12px;margin-top:14px}.shop-safety{margin-top:24px;padding:18px;border-left:4px solid var(--green);background:#f1f7ec;border-radius:8px}.shop-safety h3{margin:0 0 8px;font-size:18px}.shop-safety p{font-size:14px;margin:0}@media(max-width:850px){.shop-layout{grid-template-columns:1fr}.shop-cart{position:static}}@media(max-width:520px){.shop-products{grid-template-columns:1fr}.shop-hero{padding:42px 0 32px}}

/* V63: Environmental Wellness service breakdown */
.environmental-service-list{margin:.65rem 0 1rem;padding-left:1.25rem;display:grid;gap:.5rem;line-height:1.55}
.environmental-service-list li{padding-left:.15rem}
.environmental-service-list strong{color:var(--green)}

/* V64: comfortable inset for homepage welcome remarks */
.welcome-introduction .container{width:100%;max-width:960px;margin-inline:auto;padding-inline:clamp(28px,5vw,72px);box-sizing:border-box}
@media(max-width:600px){.welcome-introduction .container{padding-inline:26px}}

/* V65: compact global navigation search */
.site-search-trigger{flex:none;display:grid;place-items:center;width:39px;height:39px;border:1px solid #cbdcca;background:#f1f8eb;color:#14532d;border-radius:10px;cursor:pointer}
.site-search-trigger:hover,.site-search-trigger[aria-expanded=true]{background:#dcebd3}
.site-search-panel[hidden]{display:none!important}
.site-search-panel{position:fixed;z-index:80;top:84px;right:max(18px,calc((100vw - 1160px)/2 + 24px));width:min(440px,calc(100vw - 36px));background:white;border:1px solid #d3e2d0;border-radius:15px;box-shadow:0 18px 50px #103c2533;padding:18px}
.site-search-panel label{display:block;font-weight:750;color:#103c25;margin-bottom:8px}
.site-search-panel input{width:100%;font:inherit;font-size:15px;padding:11px 13px;border:1px solid #b6cdb4;border-radius:9px;outline-offset:2px}
.site-search-results{max-height:310px;overflow:auto;margin-top:10px}
.site-search-results a{display:block;padding:10px;border-radius:8px;border-bottom:1px solid #edf2ea}
.site-search-results a:hover,.site-search-results a:focus-visible{background:#edf7e7}
.site-search-results strong,.site-search-results small{display:block}
.site-search-results strong{color:#14532d;font-size:14px}
.site-search-results small{color:#52685b;font-size:12px;line-height:1.5}
.site-search-results p{font-size:13px;margin:10px 3px}
@media(max-width:850px){.site-search-trigger{margin-left:0}.site-search-panel{top:73px;right:18px}}

/* V66: expandable insurance access guidance */
.insurance-intro{margin:12px 0 16px;color:var(--muted);line-height:1.6}.premium-insurance-grid .insurance-detail{display:block;min-width:0;padding:0;overflow:hidden}.insurance-provider-summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:9px;padding:13px 12px;cursor:pointer;min-height:78px}.insurance-provider-summary::-webkit-details-marker{display:none}.insurance-provider-summary img{max-width:75px;max-height:43px;object-fit:contain}.insurance-provider-summary strong{font-size:14px}.insurance-expand{color:var(--green);font-size:20px;transition:transform .2s}.insurance-detail[open] .insurance-expand{transform:rotate(180deg)}.insurance-requirements{padding:0 15px 16px;text-align:left;font-size:13px;line-height:1.55}.insurance-requirements h4{margin:4px 0 8px;color:var(--green)}.insurance-requirements p{margin:0 0 9px}.insurance-requirements a{overflow-wrap:anywhere}.insurance-provider-summary:focus-visible{outline:3px solid var(--green);outline-offset:-3px}@media(max-width:600px){.insurance-provider-summary{flex-wrap:wrap}.insurance-requirements{font-size:13px}}

/* V67: keep all insurance icons compact; details appear below the entire icon row. */
.premium-insurance-grid{align-items:start!important;grid-auto-rows:auto!important}
.premium-insurance-grid .insurance-detail{align-self:start!important;min-height:0!important}
.premium-insurance-grid .insurance-detail .insurance-requirements{display:none!important}
.premium-insurance-grid .insurance-detail[open]{min-height:0!important}
.insurance-active-panel{margin-top:12px;border:1px solid #bad5b4;border-radius:12px;background:#f5faef;padding:17px 19px;color:var(--ink)}
.insurance-active-panel[hidden]{display:none!important}
.insurance-active-panel h4{color:var(--green);margin:0 0 9px}
.insurance-active-panel p{margin:0 0 10px;line-height:1.6}
.insurance-active-panel a{overflow-wrap:anywhere}
.insurance-detail.is-selected{border-color:var(--green)!important;background:#edf6e7!important}
@media(max-width:600px){.insurance-active-panel{padding:13px 14px}}

/* V68: clear department-to-shop callouts */
.service-shop-callout{margin:1.25rem 0 1.75rem;padding:1rem 1.25rem;border-left:4px solid var(--lime);background:var(--pale);border-radius:10px}
.service-shop-callout p{margin:0 0 .85rem}
.service-shop-link{font-weight:700}

/* V69: readable comprehensive service lists within existing compact accordions */
.expanded-service-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.38rem 1.2rem;padding-left:1.35rem;margin:.65rem 0 1rem;line-height:1.5}
.expanded-service-list li{padding-left:.1rem}
@media(max-width:700px){.expanded-service-list{grid-template-columns:1fr;gap:.4rem}}

/* V70: concise, scan-friendly service lists */
.expanded-service-list,.specialist-services ul,.service-detail ul{padding-left:1.25rem;line-height:1.55}
.expanded-service-list li,.specialist-services li,.service-detail li{margin-bottom:.28rem;padding-left:.1rem}
.expanded-service-list li::marker,.specialist-services li::marker{color:var(--green)}


/* V71: consistent professional green chevron bullets for clinical service lists. */
.expanded-service-list,.specialist-services ul,.service-detail ul,.environmental-service-list{list-style:none!important;padding-left:0!important;}
.expanded-service-list li,.specialist-services li,.service-detail li,.environmental-service-list li{position:relative;padding-left:1.45rem!important;margin-bottom:.36rem;}
.expanded-service-list li::before,.specialist-services li::before,.service-detail li::before,.environmental-service-list li::before{content:"";position:absolute;left:.12rem;top:.55em;width:.46rem;height:.46rem;border-top:2px solid #24834b;border-right:2px solid #24834b;transform:rotate(45deg);border-radius:1px;}
@media(max-width:700px){.expanded-service-list li,.specialist-services li,.service-detail li,.environmental-service-list li{padding-left:1.35rem!important;}}

/* V74: clean service directory, accessible expandable extras */
#services .additional-service[hidden]{display:none!important}
#services .more-services-button{display:block;margin:22px auto 0;min-width:180px;text-align:center;cursor:pointer}

/* V77: stronger green contrast for expanded menu details */
.nav .site-nav .nav-dropdown{background:#d9ebce;border:1px solid #bad5aa;}
.nav .site-nav .nav-dropdown a{color:#16452a;font-weight:650;border-radius:7px;}
.nav .site-nav .nav-dropdown a:hover,.nav .site-nav .nav-dropdown a:focus-visible{background:#b7d89f;color:#103c25;}
.nav .site-nav .nav-group.is-open>.nav-primary{color:#14532d;font-weight:800;}
