/* A quiet, tinted canvas inspired by Qservers, using InstantCARE's own palette. */
body,#landing{background:#f5faf8!important}
#landing>.how-section,#landing .cta{background:transparent!important}
body>header{background:#f5faf8!important}
.mobile-install-widget{display:none}
.about-home-link{align-items:center}.about-home-link h2{font-size:clamp(28px,3vw,40px)}
.about-back{display:inline-block;margin:28px 0;color:#087d71;font-weight:600}
#about-page{padding-top:15px;padding-bottom:70px;min-height:65vh}
#about-page .about{width:100%;padding:35px 0;display:grid;grid-template-columns:1fr 1.2fr;gap:55px}
#about-page .about p,.about-principles p{font-size:17px;line-height:1.8;color:#49635c}
.about-principles{padding:30px;border:1px solid #deebe4;border-radius:24px;background:#fff;max-width:820px}
.reveal-word{display:inline-block;white-space:nowrap}.reveal-char{display:inline-block}
.heading-reveal.is-revealing .reveal-char{animation:care-letter-in .65s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--char-index)*24ms)}
@keyframes care-letter-in{from{opacity:0;transform:translateY(.65em) rotateX(-35deg);filter:blur(3px)}to{opacity:1;transform:none;filter:blur(0)}}
/* Replace the old typewriter with the same one-time letter reveal. */
.hero-title .animated-online,.hero-title .static-online{animation:none!important;clip-path:none!important;width:auto!important;border:0!important;opacity:1!important}
@media(max-width:760px){
 body>header,.patient-topbar,.patient-bottom-nav{zoom:1.0625}
 body>header{gap:8px!important;padding:14px!important}
 header .brand-word{font-size:22px!important;letter-spacing:-1.1px!important}
 header .brand .brand-mark{width:26px!important;height:26px!important}
 header .nav-actions{gap:5px!important}
 header .nav-actions [data-auth=login]{order:0}
 header .nav-actions [data-auth=signup]{order:1}
 header .nav-actions .btn.small{display:inline-flex!important;border-radius:99px!important;min-height:38px!important;font-size:12px!important;padding:9px 12px!important}
 header .nav-actions .text-btn{padding:9px 11px!important;font-size:12px!important}
 header .mobile-menu-toggle{width:26px!important}
 .mobile-install-widget{display:block;position:fixed;right:18px;bottom:85px;z-index:31}
 body.patient-session .mobile-install-widget,body:has(#account[open]) .mobile-install-widget{display:none}
 body:has(#landing):not(.patient-session):not(:has(#account[open]))>.support-widget{display:none}
 .mobile-install-toggle{display:flex;align-items:center;gap:9px;background:#123f36;color:#fff;border:1px solid #4c7c69;border-radius:99px;box-shadow:0 5px 18px #184c3526;padding:12px 17px;font:600 14px Inter,Arial,sans-serif}
 .mobile-install-toggle>span{display:grid;place-items:center;width:27px;height:27px;background:#c8eadb;border-radius:50%;color:#164f42;font-size:22px}
 .mobile-install-panel{position:absolute;right:0;bottom:65px;width:270px;padding:20px;border:1px solid #dcebe4;background:#fff;border-radius:20px;box-shadow:0 8px 30px #164f3c20}
 .mobile-install-panel[hidden]{display:none}.mobile-install-panel p{font-size:14px}.mobile-install-panel small{display:block;margin-top:12px;font-size:12px;line-height:1.5;color:#577167}
 #about-page .about{display:block}#about-page{padding:15px 24px 40px}.about-principles{padding:22px}
 .about-page header .nav-actions{display:flex}.about-page header .nav-actions a{font-size:12px!important;min-height:38px;padding:9px 12px}
}
@media(prefers-reduced-motion:reduce){.heading-reveal.is-revealing .reveal-char{animation:none!important}}
.heading-reveal .reveal-word,.heading-reveal .reveal-char{color:inherit!important;font-size:inherit!important;line-height:inherit!important;letter-spacing:inherit!important}
.hero .animated-online .reveal-char,.hero .static-online .reveal-char{animation-play-state:running!important}
.hero-title .animated-online,.hero-title .static-online{overflow:visible!important}
/* A clean header and a full-height mobile navigation drawer. */
body>header{border:0!important;border-radius:0!important;box-shadow:none!important;margin:0!important;padding:24px 5%!important;max-width:none!important;display:flex;align-items:center;gap:25px}
#primary-navigation .menu-links{display:flex;align-items:center;gap:22px}#primary-navigation .menu-details{display:none}
.about-home-link{padding-top:20px!important;padding-bottom:24px!important;order:1!important}
.about-link-card{display:flex;align-items:center;gap:18px;padding:23px 27px;background:#e8f3ee;border:1px solid #d6e8df;border-radius:18px;color:#164e45;text-decoration:none;width:100%;box-sizing:border-box}
.about-link-icon{display:grid;place-items:center;width:45px;height:45px;border-radius:14px;background:#fff;color:#108c80;font-size:26px;flex-shrink:0}.about-link-card strong{display:block;font-size:19px;line-height:1.4}.about-link-card small{display:block;color:#526f63;font-size:14px;margin-top:4px}.about-link-arrow{margin-left:auto;font-size:26px}.about-link-card:hover{background:#dceee5}.about-link-card:focus-visible{outline:3px solid #108c80;outline-offset:4px}
.footer-social{margin-top:20px}.footer-social>strong{display:block;font-size:13px;margin-bottom:10px;color:inherit}.social-placeholders{display:flex;gap:10px}.social-placeholders button{display:grid;place-items:center;width:35px;height:35px;border:1px solid currentColor;border-radius:50%;padding:8px;background:transparent;color:inherit;opacity:.8}.social-placeholders svg{width:19px;height:19px}
@media(max-width:760px){
 body>header,.patient-topbar,.patient-bottom-nav{zoom:1}
 body>header{position:relative!important;padding:18px 16px!important;gap:7px!important;min-height:78px!important;z-index:45}
 header .brand{position:relative;z-index:52;flex-shrink:0}header .brand-word{font-size:22px!important}header .brand-mark{width:25px!important;height:25px!important}
 header .nav-actions{margin-left:auto;gap:4px!important;position:relative;z-index:52}
 header .nav-actions .text-btn,header .nav-actions .btn.small{padding:9px 10px!important;font-size:12px!important;min-height:38px!important}
 header .mobile-menu-toggle{position:relative;z-index:52;display:flex!important;flex-direction:column;justify-content:center;gap:5px;width:35px!important;height:44px;min-width:35px;padding:7px!important}
 .menu-bar{display:block;width:23px;height:2px;border-radius:2px;background:currentColor;transition:transform .3s ease,opacity .2s ease}
 .mobile-menu-toggle[aria-expanded=true] .menu-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}.mobile-menu-toggle[aria-expanded=true] .menu-bar:nth-child(2){opacity:0;transform:translateX(8px)}.mobile-menu-toggle[aria-expanded=true] .menu-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 header #primary-navigation{display:block!important;position:fixed!important;inset:0!important;width:100%;height:calc(100dvh / .9);overflow-y:auto;box-sizing:border-box;padding:100px 30px 45px!important;background:#0c695e!important;color:#fff;border:0!important;border-radius:0!important;box-shadow:none!important;z-index:50;transform:translateX(105%);visibility:hidden;transition:transform .35s cubic-bezier(.22,.7,.2,1),visibility .35s}
 header #primary-navigation.is-open{transform:translateX(0);visibility:visible}
 #primary-navigation .menu-links{display:flex;flex-direction:column;align-items:stretch;gap:0}
 header #primary-navigation a{color:#fff;padding:15px 0!important;border-radius:0;border-bottom:1px solid #ffffff24;font-size:18px;line-height:1.4}
 header #primary-navigation .menu-links a::after{content:'↗';float:right;color:#b8e7d8;font-size:18px}
 header #primary-navigation a:hover,header #primary-navigation a:focus-visible{background:#ffffff0c}
 #primary-navigation .menu-details{display:block;padding-top:25px}#primary-navigation h3{font-size:22px;color:#fff;margin:20px 0 10px}header #primary-navigation .menu-details a{display:block;font-size:16px;border:0;padding:9px 0!important}.menu-details p{font-size:16px;line-height:1.7;color:#e0eee9;margin:10px 0 24px}.menu-details .social-placeholders{margin-top:18px}
 body.menu-open{overflow:hidden}body.menu-open header .brand{color:#fff}body.menu-open header .brand-word,body.menu-open header .brand-word>span{color:#fff!important}body.menu-open header .mobile-menu-toggle{color:#fff!important}body.menu-open header .nav-actions{visibility:hidden}
 .about-home-link{padding:16px 20px 20px!important}.about-link-card{padding:17px 18px;gap:12px;border-radius:16px}.about-link-card strong{font-size:18px}.about-link-card small{font-size:13px}.about-link-icon{width:39px;height:39px;font-size:23px}
 .footer-intro,.footer-social{display:block!important}.footer-social{margin:18px 0 6px}.footer-social .social-placeholders{display:flex!important}
}
@media(max-width:350px){header .brand-word{font-size:19px!important}header .brand .brand-mark{width:22px!important;height:22px!important}body>header{padding-left:10px!important;padding-right:10px!important;gap:4px!important}header .nav-actions .text-btn,header .nav-actions .btn.small{padding:8px!important;font-size:11px!important}}
@media(prefers-reduced-motion:reduce){header #primary-navigation,.menu-bar{transition:none!important}}
@media(max-width:760px){body.menu-open header .brand-mark path{fill:#fff}}
/* Softly raised header container, shared by home and About. */
body>header{box-sizing:border-box;max-width:1320px!important;width:calc(100% - 40px)!important;margin:18px auto 12px!important;padding:19px 25px!important;border:1px solid #e3ece7!important;border-radius:25px!important;background:#f5faf8!important;box-shadow:8px 8px 20px #b6c9bf45,-8px -8px 20px #ffffff!important;gap:20px}
.mobile-install-widget[hidden]{display:none!important}
@media(max-width:760px){
 body>header{width:calc(100% - 24px)!important;margin:12px auto 8px!important;padding:12px!important;min-height:65px!important;border-radius:20px!important;gap:6px!important;box-shadow:6px 6px 15px #b6c9bf4d,-6px -6px 15px #fff!important}
 header .brand-word{font-size:21px!important}header .brand .brand-mark{width:24px!important;height:24px!important}header .nav-actions{gap:4px!important}header .nav-actions .text-btn,header .nav-actions .btn.small{padding:9px!important;font-size:12px!important}header .mobile-menu-toggle{min-width:30px!important;width:30px!important}
 .mobile-install-toggle{padding:9px 13px;gap:7px;font-size:13px;box-shadow:3px 4px 12px #164f3c24}
 .mobile-install-toggle>span{width:24px;height:24px;font-size:19px}
 .mobile-install-panel{bottom:57px;width:225px;padding:15px 17px;border-radius:16px;box-sizing:border-box}
 .mobile-install-panel>strong{display:block;font-size:14px;color:#174f44}.mobile-install-panel>small{margin-top:5px;font-size:12px;line-height:1.45}
}
@media(max-width:350px){header .brand-word{font-size:18px!important}header .brand .brand-mark{width:21px!important;height:21px!important}body>header{gap:3px!important;padding:10px!important}header .nav-actions .text-btn,header .nav-actions .btn.small{padding:8px!important;font-size:11px!important}}
