:root{--forest:#204c48;--forest-deep:#173d3a;--forest-dark:#102f2d;--sage:#e7efeb;--mint:#d5e6dd;--cream:#fbf8f3;--paper:#fffdf9;--sand:#f1e8db;--peach:#f5e8dc;--rust:#ae704c;--rust-dark:#965d3b;--ink:#1d3635;--muted:#5e7471;--border:#dce7e1;--white:#fff;--shadow:0 22px 55px rgba(27,59,55,.09);--radius:18px;--radius-lg:28px;--body:'DM Sans',Arial,sans-serif;--display:'DM Serif Display',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 var(--body);-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{line-height:1.12}h1,h2,.serif{font-family:var(--display);font-weight:400;letter-spacing:-.025em}h1{font-size:clamp(3.65rem,6.1vw,6.3rem)}h2{font-size:clamp(2.55rem,4.3vw,4.55rem)}h3{font-size:1.35rem;font-weight:750}p{color:var(--muted)}.container{width:min(1220px,calc(100% - 56px));margin-inline:auto}.section{padding:105px 0}.section-sm{padding:74px 0}.bg-white{background:#fff}.bg-sage{background:var(--sage)}.bg-cream{background:var(--cream)}.bg-forest{background:var(--forest);color:#fff}.bg-forest p{color:#d3e4dc}.eyebrow{color:var(--rust);font-size:.74rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.eyebrow.light{color:#e0bc95}.lead{font-size:1.12rem;line-height:1.78}.muted{color:var(--muted)}.dark{color:var(--ink)}.text-center{text-align:center}.center{margin-inline:auto}.max-650{max-width:650px}.max-790{max-width:790px}.mt-10{margin-top:10px}.mt-20{margin-top:20px}.mt-32{margin-top:32px}.mt-44{margin-top:44px}.mb-0{margin-bottom:0}.mb-16{margin-bottom:16px}.mb-22{margin-bottom:22px}.btn-row{display:flex;flex-wrap:wrap;align-items:center;gap:13px}.button{display:inline-flex;justify-content:center;align-items:center;gap:9px;border:1.5px solid transparent;min-height:51px;padding:12px 23px;border-radius:10px;font-weight:800;font-size:.91rem;transition:transform .2s,box-shadow .2s,background .2s;white-space:nowrap}.button:hover{transform:translateY(-2px);box-shadow:0 7px 20px rgba(22,61,58,.13)}.button.primary{background:var(--rust);color:#fff}.button.primary:hover{background:var(--rust-dark)}.button.dark{background:var(--forest);color:#fff}.button.outline{border-color:var(--forest);color:var(--forest);background:transparent}.button.light{background:var(--white);color:var(--forest)}.button.ghost-light{border-color:rgba(255,255,255,.6);color:white;background:transparent}.arrow{font-size:1.2rem;line-height:0}.tag{display:inline-flex;background:#edf4ee;border-radius:100px;padding:7px 13px;font-size:.8rem;font-weight:800;color:var(--forest)}.tag.gold{background:var(--sand);color:#9b6947}.icon{height:21px;width:21px;display:inline-block;vertical-align:middle}.icon-bubble{height:49px;width:49px;display:grid;place-items:center;color:var(--forest);background:var(--sage);border-radius:13px}.icon-bubble .icon{height:23px;width:23px}
/* Header */
.topbar{background:var(--forest-deep);color:#e6efe9;font-size:.76rem;font-weight:650;letter-spacing:.035em}.topbar .container{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:8px 0}.topbar-left,.topbar-right{display:flex;align-items:center;gap:11px}.dot{height:6px;width:6px;background:#e0bd91;border-radius:50%;display:inline-block}.main-nav{z-index:30;position:sticky;top:0;background:rgba(255,253,249,.97);backdrop-filter:blur(15px);border-bottom:1px solid #e6e8e2}.nav-row{display:flex;align-items:center;gap:34px;min-height:86px}.brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0}.brand-mark{width:41px;height:41px;display:grid;place-items:center;border-radius:13px;background:var(--forest);color:#ead0a8}.brand-mark svg{width:27px;height:27px}.brand-name{display:flex;flex-direction:column;font-family:var(--display);font-size:1.82rem;line-height:.94;color:var(--forest);letter-spacing:-.035em}.brand-name small{font:750 .54rem var(--body);letter-spacing:.16em;color:#927858;margin-top:7px}.nav-links{display:flex;align-items:center;gap:23px;margin-left:auto}.nav-link{font-size:.84rem;font-weight:800;color:#3e5955;white-space:nowrap;position:relative}.nav-link.active,.nav-link:hover{color:var(--rust)}.nav-link.active:after{position:absolute;content:'';height:2px;bottom:-13px;left:0;right:0;background:var(--rust)}.nav-actions{display:flex;align-items:center;gap:11px}.nav-actions .button{min-height:43px;padding:9px 16px;font-size:.79rem}.mobile-toggle{display:none;border:0;background:transparent;color:var(--forest);font-size:1.6rem}.mobile-menu{display:none;flex-direction:column;padding:12px 28px 25px;gap:14px;border-top:1px solid var(--border)}.mobile-menu a{font-weight:750}.mobile-menu.open{display:flex}
/* Hero */
.hero{overflow:hidden;background:linear-gradient(106deg,#fcf9f4 0%,#fbf8f3 52%,#e8efe8 52%,#e8efe8 100%)}.hero-grid{display:grid;grid-template-columns:1fr .97fr;align-items:center;min-height:650px;gap:60px;padding:55px 0 65px}.hero-content{position:relative;z-index:2}.hero h1{margin:20px 0 24px;max-width:710px}.hero .lead{max-width:555px;margin:0 0 29px}.hero-footnote{margin-top:26px;display:flex;align-items:center;gap:10px;color:#667b77;font-size:.78rem;font-weight:700}.hero-visual{position:relative;min-width:0;padding:10px 30px 10px 0}.hero-image{width:100%;height:560px;object-fit:cover;object-position:center;border-radius:220px 220px 30px 30px;box-shadow:var(--shadow)}.hero-circle{position:absolute;z-index:0;width:220px;height:220px;background:#d8e8de;border-radius:50%;right:-80px;top:-50px}.hero-float{position:absolute;bottom:35px;left:-44px;background:#fff;border-radius:17px;padding:18px 21px;box-shadow:var(--shadow);display:flex;align-items:center;gap:13px;width:290px}.hero-float-icon{display:grid;place-items:center;border-radius:14px;background:var(--mint);color:var(--forest);width:48px;height:48px;flex-shrink:0}.hero-float strong{display:block;font-size:.89rem;line-height:1.3}.hero-float small{font-size:.73rem;color:var(--muted)}.hero-decor{position:absolute;right:-28px;bottom:70px;background:var(--rust);border-radius:50%;width:27px;height:27px}.service-strip{border-bottom:1px solid var(--border);background:#fff}.service-strip-items{display:grid;grid-template-columns:repeat(4,1fr)}.strip-item{display:flex;align-items:center;gap:14px;padding:24px 19px;border-right:1px solid var(--border)}.strip-item:last-child{border:0}.strip-item .icon{flex-shrink:0;color:var(--forest);height:23px;width:23px}.strip-item span{font-size:.82rem;font-weight:800;line-height:1.42;color:#3d5b55}
/* Sections */
.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:37px}.section-heading h2{margin:11px 0 0;max-width:670px}.section-heading p{max-width:370px;margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.service-card{background:#fff;padding:28px;border:1px solid #e7ece6;border-radius:20px;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column;min-height:255px}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-card h3{margin:19px 0 9px;font-size:1.11rem}.service-card p{font-size:.88rem;margin-bottom:20px;flex:1}.text-link{font-weight:800;color:var(--forest);font-size:.85rem;display:inline-flex;gap:7px;align-items:center}.text-link:hover{color:var(--rust)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split.media-first{grid-template-columns:.97fr 1fr}.photo-frame{position:relative}.photo-frame img{width:100%;height:545px;object-fit:cover;border-radius:24px}.photo-frame.soft img{border-radius:160px 22px 22px 22px}.photo-badge{position:absolute;bottom:25px;right:-23px;background:var(--forest);color:#fff;border-radius:14px;padding:18px 23px;width:210px;box-shadow:var(--shadow)}.photo-badge strong{display:block;font:normal 1.55rem var(--display)}.photo-badge span{font-size:.77rem;color:#d6e7dc}.check-list{list-style:none;padding:0;margin:24px 0 26px}.check-list li{display:flex;gap:12px;align-items:flex-start;font-size:.92rem;margin:14px 0;font-weight:650;color:#3e5b56}.check-list svg{color:var(--rust);flex-shrink:0;margin-top:3px}.check-list.light li{color:#e1efe8}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.step{position:relative;background:white;border:1px solid var(--border);padding:29px;border-radius:20px}.step-number{font:normal 2.8rem var(--display);color:var(--rust)}.step h3{margin:17px 0 9px;font-size:1.07rem}.step p{font-size:.86rem;margin:0}.step:after{content:'→';position:absolute;right:-23px;top:45%;color:var(--rust);font-size:1.6rem;z-index:2}.step:last-child:after{display:none}.care-quote{font-family:var(--display);font-size:clamp(2rem,3.7vw,3.5rem);line-height:1.23}.feature-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-tile{background:#fff;padding:25px;border-radius:17px;border:1px solid var(--border)}.feature-tile h3{margin:17px 0 8px;font-size:1.06rem}.feature-tile p{font-size:.86rem;margin:0}
/* dashboard */
.dashboard-section{background:var(--forest-dark);padding:103px 0;overflow:hidden}.dashboard-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:74px;align-items:center}.dashboard-copy h2{color:#fff}.dashboard-copy p{color:#d2e2dc}.dashboard-copy .eyebrow{color:#e7c39d}.mock-dashboard{background:#f6f9f6;color:var(--ink);border-radius:22px;border:9px solid #eaf0ea;box-shadow:0 24px 70px rgba(0,0,0,.22);overflow:hidden;transform:rotate(1.25deg)}.mock-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;background:white;border-bottom:1px solid #e6ede7}.mock-header strong{font-size:.95rem}.mock-header small{color:#65817a}.status-dot{background:#d8efe1;color:#376c53;border-radius:100px;padding:5px 10px;font-size:.67rem;font-weight:800}.mock-main{display:grid;grid-template-columns:1fr .84fr;gap:13px;padding:17px}.mock-panel{background:#fff;border:1px solid #e7ede7;border-radius:12px;padding:17px}.mock-panel h4{font-family:var(--body);font-size:.75rem;font-weight:800;letter-spacing:.025em;margin:0 0 13px}.mock-stat{display:flex;justify-content:space-between;gap:9px;align-items:center;padding:8px 0;border-bottom:1px solid #edf2ed}.mock-stat:last-child{border-bottom:0}.mock-stat span{font-size:.7rem;color:#6b817a}.mock-stat strong{font-size:.86rem}.mock-stat .good{color:#2f855b}.mock-big{font:normal 2.2rem var(--display);color:var(--forest)}.mock-activity{display:flex;gap:11px;padding:8px 0;align-items:flex-start;font-size:.7rem}.mock-activity .small-circle{width:10px;height:10px;margin-top:4px;flex-shrink:0;background:var(--mint);border-radius:50%}.mini-chart{height:83px;display:flex;gap:6px;align-items:end;margin-top:13px;border-bottom:1px solid #cbdcd3}.mini-chart i{flex:1;background:#a9ccba;border-radius:5px 5px 0 0;display:block}.mini-chart i:nth-child(2n){background:#d1b796}
/* Pricing */
.price-wrap{display:grid;grid-template-columns:.9fr 1.1fr;max-width:1010px;margin:30px auto;box-shadow:var(--shadow);border-radius:25px;overflow:hidden;background:white}.price-left{background:var(--forest);padding:43px;color:white;display:flex;flex-direction:column;align-items:flex-start}.price-left .eyebrow{color:#e9c79e}.price-number{font:normal 4.8rem/.95 var(--display);margin:18px 0 7px}.price-left p{color:#d2e3dd}.price-right{padding:44px}.price-right h3{font-size:1.45rem}.price-right ul{margin-bottom:22px}.notice{background:#fff4e9;border:1px solid #e8d7c5;color:#7a624b;padding:14px 17px;border-radius:10px;font-size:.81rem;line-height:1.6}.quote-card{border-radius:20px;background:var(--sand);padding:35px}.quote-card p{margin-bottom:0}.faqs{display:grid;grid-template-columns:.82fr 1.18fr;gap:75px}.faq-item{border-bottom:1px solid var(--border);padding:17px 0}.faq-item:first-child{border-top:1px solid var(--border)}.faq-q{width:100%;padding:0;border:0;background:transparent;display:flex;align-items:center;justify-content:space-between;gap:18px;text-align:left;font-weight:800;color:var(--ink)}.faq-q .plus{font-size:1.6rem;font-weight:400;color:var(--rust);line-height:1}.faq-a{display:none;font-size:.89rem;color:var(--muted);margin-top:13px;padding-right:30px}.faq-item.open .faq-a{display:block}.faq-item.open .plus{transform:rotate(45deg)}
/* Page hero */
.page-hero{background:var(--sage);overflow:hidden}.page-hero-inner{display:grid;grid-template-columns:1fr .88fr;gap:74px;align-items:center;padding:66px 0}.page-hero h1{font-size:clamp(3.1rem,5.5vw,5.3rem);max-width:730px;margin:16px 0 20px}.page-hero p{max-width:560px}.page-hero img{width:100%;height:360px;object-fit:cover;border-radius:22px 190px 22px 22px}.page-hero.no-img .page-hero-inner{grid-template-columns:1fr;min-height:325px}.page-hero.no-img h1{max-width:950px}.service-detail-body{display:grid;grid-template-columns:1.6fr .74fr;gap:65px}.details-panel{position:sticky;top:115px;background:white;border:1px solid var(--border);border-radius:18px;padding:27px;align-self:start}.details-panel h3{font-size:1.1rem}.detail-heading{font:normal 2.5rem var(--display);margin:23px 0 16px}.numbered-list{counter-reset:step;list-style:none;padding:0}.numbered-list li{counter-increment:step;display:flex;gap:16px;margin:30px 0}.numbered-list li:before{content:'0'counter(step);font-family:var(--display);color:var(--rust);font-size:2rem;line-height:1}.numbered-list strong{display:block;color:var(--ink)}.numbered-list p{font-size:.89rem;margin:5px 0 0}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.value-card{background:#fff;border:1px solid var(--border);border-radius:20px;padding:27px}.value-card .number{font:normal 3rem var(--display);color:var(--rust)}.value-card h3{font-size:1.1rem}.value-card p{font-size:.88rem;margin-bottom:0}
/* Form */
.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:75px}.contact-info{background:var(--forest);color:#fff;border-radius:22px;padding:36px;align-self:start}.contact-info p{color:#d1e2d9}.contact-line{display:flex;gap:14px;margin:24px 0;align-items:flex-start;font-size:.92rem}.contact-line .icon{color:#efcda6}.form-card{background:white;border:1px solid var(--border);border-radius:22px;padding:37px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.81rem;font-weight:800;color:#33514b}.field input,.field textarea,.field select{border:1px solid #d3dfd9;background:#fff;border-radius:9px;padding:12px 13px;width:100%;font-size:.91rem;color:var(--ink);outline:0;min-height:47px}.field textarea{min-height:130px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{border-color:#8aa99e;box-shadow:0 0 0 3px #e2f1e9}.small{font-size:.8rem}.form-status{margin-top:15px;display:none;border-radius:10px;background:var(--sage);color:var(--forest);padding:14px}.form-status.show{display:block}
/* CTA footer */
.end-cta{background:var(--sand);border-radius:27px;padding:62px 55px;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:45px}.end-cta h2{margin-bottom:15px}.end-cta p{margin-bottom:0}.end-cta .btn-row{justify-content:flex-end}.site-footer{background:var(--forest-deep);color:#fff;padding:69px 0 24px}.footer-cols{display:grid;grid-template-columns:1.4fr repeat(3,.8fr);gap:52px}.site-footer .brand-mark{background:#dcefe4;color:var(--forest)}.site-footer .brand-name{color:#fff}.footer-tagline{max-width:290px;color:#c3d7ce;font-size:.9rem;margin-top:23px}.footer-col h4{font-family:var(--body);font-size:.88rem;font-weight:800;margin-bottom:18px;color:#fff}.footer-col a{display:block;color:#cadbd3;font-size:.82rem;margin:11px 0}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid #3c5e58;margin-top:57px;padding-top:19px;display:flex;justify-content:space-between;gap:18px;color:#b7cdc2;font-size:.73rem}.footer-bottom a{text-decoration:underline}
/* demo portal */
.portal-page{background:#edf3ef;padding:48px 0 85px}.portal-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.portal-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.portal-card{background:#fff;border:1px solid var(--border);border-radius:18px;padding:23px}.portal-card small{display:block;color:#7a8d84;font-weight:750;font-size:.75rem}.portal-card strong{display:block;font:normal 2.2rem var(--display);color:var(--forest);margin-top:15px}.portal-card span{font-size:.75rem;color:#688175}.portal-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:19px;margin-top:20px}.portal-pane{background:#fff;border:1px solid var(--border);border-radius:18px;padding:27px}.portal-log{padding:15px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start;gap:13px}.portal-log:last-child{border:0}.portal-log strong{font-size:.84rem}.portal-log span{font-size:.76rem;color:#719081}.service-feature-image{height:175px;border-radius:13px;object-fit:cover;width:100%;margin-top:19px}.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin:19px 0}.pill{border-radius:100px;background:var(--sage);color:var(--forest);font-size:.76rem;font-weight:800;padding:7px 13px}
/* mobile */
@media(max-width:1160px){.nav-row{gap:20px}.nav-links{gap:13px}.nav-link{font-size:.76rem}.nav-actions .button{padding:8px 12px}.hero-grid{gap:35px}.split{gap:48px}}
@media(max-width:980px){.desktop-links,.desktop-action{display:none}.mobile-toggle{display:block;margin-left:auto}.nav-row{min-height:72px}.hero-grid{min-height:0}.hero-image{height:480px}.hero-float{left:-22px}.service-strip-items{grid-template-columns:repeat(2,1fr)}.strip-item:nth-child(2){border:0}.strip-item:nth-child(-n+2){border-bottom:1px solid var(--border)}.cards{grid-template-columns:repeat(2,1fr)}.steps{grid-template-columns:repeat(2,1fr)}.step:nth-child(2):after{display:none}.split,.split.media-first,.dashboard-layout,.page-hero-inner,.faqs,.contact-layout{grid-template-columns:1fr;gap:42px}.dashboard-layout{gap:50px}.page-hero img{height:300px}.footer-cols{grid-template-columns:repeat(2,1fr)}.portal-cards{grid-template-columns:repeat(2,1fr)}.portal-grid{grid-template-columns:1fr}.contact-info{max-width:720px}.section{padding:80px 0}}
@media(max-width:700px){.container{width:min(100% - 36px,1220px)}.topbar .container{justify-content:center}.topbar-right{display:none}h1{font-size:clamp(3.1rem,14vw,4.4rem)}h2{font-size:clamp(2.35rem,11vw,3.7rem)}.hero{background:var(--cream)}.hero-grid{grid-template-columns:1fr;padding:46px 0 55px;gap:35px}.hero-visual{padding:0 17px 0 11px}.hero-image{height:430px}.hero-float{left:-10px;bottom:14px;width:260px;padding:13px}.hero-circle{right:-25px}.hero-footnote{font-size:.71rem}.cards,.steps,.feature-tiles,.values,.service-strip-items{grid-template-columns:1fr}.strip-item{border-right:0!important;border-bottom:1px solid var(--border)}.strip-item:last-child{border:0}.section-heading{align-items:start;flex-direction:column;gap:14px}.section-heading p{max-width:550px}.section{padding:65px 0}.section-sm{padding:54px 0}.step:after{display:none}.photo-frame img{height:390px}.photo-badge{right:8px;bottom:8px;width:186px}.dashboard-section{padding:67px 0}.mock-dashboard{transform:none}.mock-main{grid-template-columns:1fr}.price-wrap{grid-template-columns:1fr}.price-left,.price-right{padding:31px}.faqs{gap:20px}.page-hero-inner{padding:48px 0}.page-hero h1{font-size:clamp(3rem,12vw,4.3rem)}.service-detail-body{grid-template-columns:1fr}.details-panel{position:static}.contact-layout{gap:25px}.form-grid{grid-template-columns:1fr}.form-card,.contact-info{padding:25px}.end-cta{grid-template-columns:1fr;padding:38px 26px;gap:22px}.end-cta .btn-row{justify-content:start}.footer-cols{grid-template-columns:1fr 1fr;gap:25px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column}.portal-head{flex-direction:column;align-items:start}.portal-card{padding:16px}.portal-card strong{font-size:1.8rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Keep the desktop headline balanced: two intentional lines instead of orphan words. */
@media(min-width:701px){.hero h1{font-size:clamp(3.5rem,4.65vw,4.7rem)}}

/* Integrated public site: entry to authenticated care workspace */
.nav-actions{display:flex;align-items:center;gap:15px}
.portal-login-link{color:var(--forest);font-weight:800;font-size:.88rem;white-space:nowrap;border-bottom:1px solid transparent;padding:11px 3px}
.portal-login-link:hover,.portal-login-link:focus-visible{border-color:var(--rust);color:var(--rust)}
.portal-login-link:focus-visible{outline:2px solid var(--rust);outline-offset:3px}
@media(max-width:1190px){.nav-actions{gap:9px}.portal-login-link{font-size:.8rem}}
