.cx-page { --cx-soft:#eaf1e9; }
.cx-page em { font-family:Georgia,serif; font-weight:400; }
.cx-page h1,.cx-page h2 { text-wrap:balance; }
.cx-page .eyebrow { margin-bottom:18px; }
.cx-page h1 { font-size:clamp(2.65rem,4.7vw,4.4rem); }
.cx-page h2 { font-size:clamp(2.1rem,3.6vw,3.55rem); }
.cx-split,.cx-heading { display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,6vw,80px); align-items:center; }
.cx-split > *,.cx-heading > * { min-width:0; }
.cx-heading { align-items:end; margin-bottom:36px; }
.cx-heading > p,.cx-split > div > p:not(.eyebrow) { color:var(--muted); }
.cx-hero,.cx-dark,.cx-close { background:radial-gradient(ellipse at 90% 10%,#285e4a 0,transparent 65%),var(--navy); color:white; }
.cx-hero { padding:clamp(44px,6vw,80px) 0; }
.cx-hero .breadcrumbs { margin-bottom:30px; color:#d5e7dc; }
.cx-hero .breadcrumbs a,.cx-hero .breadcrumbs span { color:inherit; }
.cx-hero .eyebrow,.cx-dark .eyebrow { color:#b9e8d1; }
.cx-hero .cx-split > div > .lead { color:#e0ede5; margin-top:22px; }
.cx-hero em,.cx-dark em,.cx-close em { color:#b9e8d1; }
.cx-section { padding-block:clamp(52px,6.7vw,94px); }
.cx-wash { background:var(--cx-soft); }
.cx-hero-panel { transform:rotate(1deg); }
.cx-panel-note { color:#d6e9dd; margin-top:16px; font-size:.92rem; }
.cx-cash { margin:0; padding:clamp(21px,3vw,34px); background:white; color:var(--ink); border-radius:12px; box-shadow:0 18px 40px #09291e17; }
.cx-cash figcaption { font:normal 1.7rem/1.2 Georgia,serif; margin-bottom:16px; }
.cx-cash small { display:block; font:normal .83rem/1.5 Arial,sans-serif; margin-top:6px; color:var(--muted); }
.cx-cash-row { display:flex; justify-content:space-between; gap:15px; padding:10px 0; border-top:1px solid var(--line); font-variant-numeric:tabular-nums; }
.cx-total { color:var(--accent); font-weight:700; }
.cx-cash > p { font-size:.85rem; color:var(--muted); margin-top:12px; }
.cx-waterfall { height:78px; display:flex; align-items:end; gap:14%; padding:0 18px; margin-top:18px; border-bottom:1px solid var(--line); }
.cx-waterfall i { width:14%; background:#71a48a; border-radius:4px 4px 0 0; }
.cx-waterfall i:nth-child(3) { background:#b8c7b9; }
.cx-situations { display:grid; grid-template-columns:1fr 1fr; gap:30px; }
.cx-situations article { padding:26px 0; border-top:3px solid var(--accent); }
.cx-situations p { margin:12px 0; color:var(--muted); }
.cx-situations a { font-weight:700; color:var(--accent); line-height:1.6; display:inline-block; padding:8px 0; }
.cx-solution { display:grid; grid-template-columns:1.05fr 1fr; gap:clamp(28px,5vw,70px); padding:clamp(24px,4vw,48px); background:white; border:1px solid var(--line); border-radius:14px; margin-top:24px; align-items:center; }
.cx-solution h2 { font-size:clamp(2rem,3vw,2.9rem); }
.cx-solution .lead { margin-top:18px; }
.cx-list { margin:20px 0; }
.cx-list li { position:relative; padding:9px 0 9px 21px; border-bottom:1px solid var(--line); line-height:1.55; }
.cx-list li::before { content:""; position:absolute; top:17px; left:0; width:7px; height:7px; background:var(--accent); border-radius:50%; }
.cx-solution .btn { margin-top:24px; }
.cx-solution img { border:1px solid var(--line); border-radius:6px; }
.cx-solution blockquote { margin:25px 0 12px; font:italic 1.8rem/1.35 Georgia,serif; color:var(--forest,#113c32); }
.cx-solution-integrated { border-top:4px solid var(--accent); }
.cx-disclaimer { margin-top:8px; font-size:.82rem; color:var(--muted); }
.cx-priorities { background:#edf4eb; border:1px solid #c5dac8; border-radius:12px; padding:clamp(20px,3vw,32px); color:var(--ink); }
.cx-priority-title { display:flex; justify-content:space-between; align-items:start; gap:18px; }
.cx-priority-title > span { max-width:19ch; font-size:1rem; font-weight:700; line-height:1.4; }
.cx-priority-title > strong { font:italic 1.7rem Georgia,serif; color:var(--accent); white-space:nowrap; }
.cx-priorities > p { color:var(--muted); font-size:.8rem; margin:10px 0 18px; }
.cx-priorities > div:not(.cx-priority-title) { border-top:1px solid #bcd2c2; padding:16px 0; }
.cx-priorities b { color:var(--accent); font-size:.82rem; }
.cx-priorities h3 { margin:7px 0; font-size:1.2rem; }
.cx-priorities p { line-height:1.55; }
.cx-priorities small { display:block; color:var(--muted); margin-top:10px; line-height:1.5; }
.cx-priorities footer { font-size:.86rem; line-height:1.5; border-top:1px solid #bcd2c2; padding-top:12px; }
.cx-journey,.cx-deliveries { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px; }
.cx-journey article { border-top:2px solid #71a48a; padding-top:20px; }
.cx-journey h3 { font-size:1.25rem; }
.cx-journey p { margin-top:10px; color:var(--muted); }
.cx-close { padding:clamp(45px,5.5vw,75px) 0; }
.cx-close h2,.cx-close p { max-width:800px; }
.cx-close p { margin:20px 0 24px; color:#dfede4; font-size:1.1rem; }
.cx-subnav { background:white; border-bottom:1px solid var(--line); }
.cx-subnav .wrap { display:flex; flex-wrap:wrap; gap:0 24px; }
.cx-subnav a { display:inline-flex; align-items:center; min-height:48px; font-size:.86rem; font-weight:700; color:var(--accent); }
.cx-reading { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; }
.cx-reading > div { border-left:3px solid #75a28a; padding:0 0 0 18px; }
.cx-reading strong { font:normal 1.6rem Georgia,serif; }
.cx-reading p { margin-top:10px; color:var(--muted); }
.cx-deliveries { grid-template-columns:repeat(2,minmax(0,1fr)); }
.cx-deliveries article { padding:clamp(22px,3vw,34px); background:white; border:1px solid var(--line); border-radius:10px; }
.cx-deliveries article > p { margin-top:9px; color:var(--muted); }
.cx-insight { margin:24px 0; background:var(--cx-soft); border-left:3px solid var(--accent); padding:20px; }
.cx-insight h3 { font-size:1.1rem; margin-bottom:8px; }
.cx-cycle { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; margin:35px 0; }
.cx-cycle li { border-top:2px solid #90bea0; padding-top:17px; }
.cx-cycle h3 { font-size:1.12rem; }
.cx-cycle p { color:#d4e4da; margin-top:10px; font-size:.95rem; }
.cx-dark .cx-heading > p { color:#d4e4da; }
.cx-planning { display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,6vw,70px); padding-top:28px; align-items:center; }
.cx-planning > div > p { margin:12px 0; }
.cx-planning ol { list-style:disc; padding-left:20px; line-height:1.7; }
.cx-planning li { margin:12px 0; }
.cx-planning > div > small { color:#d2e4d8; line-height:1.5; display:block; margin-top:18px; }
.cx-meeting { list-style:decimal; padding-left:25px; }
.cx-meeting li { padding:14px 0 14px 12px; border-bottom:1px solid var(--line); }
.cx-meeting h3 { font-size:1.2rem; }
.cx-meeting p { color:var(--muted); margin-top:8px; }
.cx-account-demo { padding:clamp(20px,3vw,32px); background:white; border:1px solid var(--line); border-radius:10px; }
.cx-account { display:grid; grid-template-columns:1fr auto; gap:8px 14px; border-bottom:1px solid var(--line); padding:16px 0; font-size:.94rem; }
.cx-account small { display:block; color:var(--muted); margin-top:6px; line-height:1.5; }
.cx-account em { grid-column:1/-1; font-style:normal; color:#7d571f; font-size:.85rem; }
.cx-account .cx-ok { color:var(--accent); }
.cx-page .btn .arrow { width:12px; height:12px; font-size:0; position:relative; }
.cx-page .btn .arrow::before { content:""; position:absolute; width:10px; height:1.5px; background:currentColor; transform:rotate(-45deg); top:6px; }
.cx-page .btn .arrow::after { content:""; position:absolute; right:1px; top:2px; width:6px; height:6px; border-top:1.5px solid; border-right:1.5px solid; }
@media(max-width:1000px) {
 .cx-cycle { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .cx-journey { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:820px) {
 .cx-split,.cx-heading,.cx-solution,.cx-planning { grid-template-columns:minmax(0,1fr); gap:28px; }
 .cx-hero-panel { transform:none; }
}
@media(max-width:560px) {
 .cx-situations,.cx-deliveries,.cx-reading,.cx-cycle { grid-template-columns:minmax(0,1fr); }
 .cx-journey { gap:25px 18px; }
 .cx-journey h3 { font-size:1.1rem; }
 .cx-subnav a { font-size:.82rem; }
 .cx-account { grid-template-columns:minmax(0,1fr); }
 .cx-page .btn { max-width:100%; }
}
.cx-bar-labels { display:flex; justify-content:space-between; gap:8px; font-size:.74rem; color:var(--muted); margin-top:7px; }
.cx-hero .cx-hero-panel .cx-panel-note { color:#d6e9dd; }
