:root{--navy:#103e40;--ink:#163f41;--green:#246c60;--gold:#b79b65;--muted:#5b7071}
body{background:#fcfbf7;color:var(--ink)}
.container{width:min(1200px,calc(100% - 64px))}
.topbar{background:#103e40;color:#e3ebe3}
.site-header{background:rgba(252,251,247,.97);height:90px;border-color:#e1e6dd;backdrop-filter:blur(16px)}
.brand img{width:140px}.nav{gap:28px;font-size:13px}.nav-cta{border-radius:30px;background:#164f49;padding:14px 24px}
.hero.family-hero{background:radial-gradient(ellipse at 90% 15%,#e1ebdb 0,transparent 55%),#f3f3e9;padding:76px 0 72px;border:0;overflow:hidden}
.family-hero .hero-grid{grid-template-columns:1.1fr 1fr;min-height:460px;gap:48px}
.hero .eyebrow{letter-spacing:.17em;color:#47685e;font-size:11px}
.hero h1{font-size:clamp(44px,5.2vw,69px);font-weight:500;line-height:1.1;letter-spacing:-.055em;margin:28px 0 26px}
.hero h1 em{color:#397a63;font-weight:500}
.hero .hero-lead{font-size:17px;line-height:1.85;max-width:490px;color:#50665e}
.hero .btn-gold{border-radius:30px;padding:18px 25px;background:#164f49;box-shadow:0 8px 25px #174f4914}
.btn{border-radius:30px;padding:17px 24px;transition:transform .25s,background .25s,box-shadow .25s}
.btn:hover{transform:translateY(-3px);box-shadow:0 8px 24px #103e401a}
.hero .text-link{color:#164f49;font-weight:600}.hero .coverage-line{font-size:11px;color:#52695c;border-color:#d5dfd0}
.family-visual.ace-family-home{position:relative;border-radius:48% 48% 20px 20px;background:linear-gradient(150deg,#d3e4d4,#e8ebda);border:1px solid #c9dac7;padding:28px 10px 22px;box-shadow:18px 22px 0 #e6e8d8;transform:rotate(1deg)}
.family-visual.ace-family-home svg{max-height:380px;transform:rotate(-1deg)}
.family-visual .family-caption{font-size:11px;letter-spacing:.04em;color:#42624d;padding-top:10px}
.ace-at-glance{background:#103e40;color:#edf1e5;padding:30px 0}
.ace-at-glance>.container{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:40px}
.ace-at-glance .container>div{display:flex;gap:20px;align-items:center;border-right:1px solid #ffffff25;padding-right:20px}
.ace-at-glance .container>div:last-child{border:0}.ace-at-glance strong{font:500 33px Manrope,sans-serif;letter-spacing:-.05em;color:#d8dcb8}
.ace-at-glance span{font-size:11px;line-height:1.8;color:#c3d6cf}
.section-pad{padding:100px 0}.portfolio{background:#fcfbf7}
.section-heading{margin-bottom:42px}.section-heading h2,.patient h2,.leadership-copy h2,.ace-process h2,.contact h2,.product-faqs h2{font-size:clamp(34px,4vw,49px);line-height:1.15;letter-spacing:-.045em;font-weight:500}
.portfolio .product-card,.portfolio .product-card.featured,.portfolio .product-card:hover{border:1px solid #dae1d6;border-radius:18px;background:#fff;padding:25px 25px 74px;transition:transform .3s,box-shadow .3s;overflow:hidden}
.portfolio .product-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px #103e4010}
.portfolio .product-card.featured{background:#f0f4eb}.portfolio .care-art{border-radius:12px;background:#e7efe6;margin:22px 0}
.portfolio .product-card h3{font-weight:600;font-size:22px;letter-spacing:-.035em}.portfolio .product-tag{border-radius:20px;font-size:9px;letter-spacing:.06em}
.portfolio .card-link{left:25px;bottom:27px;border-top:1px solid #dce5dc;width:calc(100% - 50px);padding-top:17px}
.portfolio .product-list span{border-radius:20px;padding:7px 12px;font-size:11px}.portfolio .disclaimer{max-width:100%;font-size:11px}
.patient{background:#103e40;color:#fff}.patient h2 em{color:#c9d9aa}.patient .eyebrow{color:#c2d6c4}.patient .patient-copy>p{color:#c5d8d2;font-size:15px;line-height:1.9}
.patient .support-step-copy strong{color:#f5f6ed;font-size:15px}.patient .support-step-copy small{color:#c4d5d0;font-size:13px;line-height:1.8}
.patient .btn-gold{background:#d9dfb8;color:#103e40}.patient .patient-art{border-radius:24px;border:1px solid #ffffff24;background:#174c4a}
.ace-process{padding:90px 0;background:#eaf0e5}.ace-process>.container{display:grid;grid-template-columns:.85fr 1.2fr;gap:90px}
.ace-process h2{margin:20px 0}.ace-process h2 em{color:#397a63;font-style:normal}.ace-process .eyebrow{font-size:10px;letter-spacing:.16em}
.ace-process-steps{list-style:none;padding:0;margin:0;display:grid;gap:24px}.ace-process-steps li{position:relative;border-bottom:1px solid #ccd9c7;padding:0 0 24px 54px}.ace-process-steps li:last-child{border:0;padding-bottom:0}
.ace-process-steps li>span{position:absolute;left:0;top:0;font-size:12px;color:#537b63;border:1px solid #bbcfb6;border-radius:50%;width:34px;height:34px;display:grid;place-items:center}
.ace-process-steps h3{font-size:19px;font-weight:600;margin:0 0 10px;letter-spacing:-.025em}.ace-process-steps p{font-size:14px;line-height:1.8;color:#5b7061;margin:0;max-width:470px}
.leadership-section{background:#fcfbf7}.leadership-portrait{border-radius:18px;overflow:hidden}.leadership-copy h2 em{color:#397a63}.profile-focus{gap:9px}.profile-focus span{border-radius:20px;font-size:11px}
.product-faqs{background:#f2f2e9;padding:90px 0}.product-faqs .faq-wrap{width:min(1200px,calc(100% - 64px))}.product-faq-intro{max-width:640px;font-size:15px}
.product-faq-card{border-radius:14px;border-color:#dce2d5;padding:26px;background:#fcfbf7}.product-faq-card h3{font-weight:600;color:#246354}.product-faq-item summary{font-weight:500}.product-faq-item[open] summary{color:#246354}
.contact{background:#103e40}.contact .contact-heading p{font-size:15px;line-height:1.9;color:#c5d8d2}.contact h2 em{color:#d9dfb8}.contact .contact-form{border-radius:18px}.contact input,.contact select,.contact textarea{border-radius:7px;font-size:14px}.contact .form-submit{background:#286c5c;color:#fff}
.footer{background:#0b2e31}.whatsapp-float{box-shadow:0 6px 24px #103e4026}
.hero .new-person{animation:aceFamilyBreathe 6s ease-in-out infinite!important}.hero .new-wave{animation:aceFamilyWave 5s ease-in-out infinite!important}
@media(max-width:1000px){.nav{gap:16px}.family-hero .hero-grid{gap:30px}.hero h1{font-size:53px}.ace-at-glance>.container{gap:20px}.ace-at-glance .container>div{gap:12px}.ace-at-glance strong{font-size:27px}.ace-process>.container{gap:45px}}
@media(max-width:700px){.container,.product-faqs .faq-wrap{width:calc(100% - 40px)}.site-header{height:76px}.brand img{width:125px}.hero.family-hero{padding:42px 0 45px}.family-hero .hero-grid{grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(37px,9vw,48px)}.hero .hero-lead{font-size:16px}.family-visual.ace-family-home{width:calc(100% - 18px);max-width:410px;box-shadow:10px 12px 0 #e6e8d8}.family-visual.ace-family-home svg{max-height:285px}.ace-at-glance{padding:28px 0}.ace-at-glance>.container{grid-template-columns:1fr;gap:20px}.ace-at-glance .container>div{border-right:0;border-bottom:1px solid #ffffff20;padding:0 0 20px;gap:24px}.ace-at-glance .container>div:last-child{padding:0}.ace-at-glance strong{min-width:100px;font-size:28px}.section-pad{padding:64px 0}.ace-process{padding:60px 0}.ace-process>.container{grid-template-columns:1fr;gap:38px}.product-faqs{padding:60px 0}.hero-actions{gap:16px}.hero .coverage-line{gap:8px 16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}.hero .new-person,.hero .new-wave{animation:none!important}}
