/* Shared public pages: homepage palette, typography, shapes and rhythm. */
.marketing-page{font-size:1.0625rem;line-height:1.6}
.marketing-page h1{font-size:clamp(2.7rem,4.7vw,4.6rem);line-height:1.09;letter-spacing:-.04em;max-width:16ch;text-wrap:balance}
.marketing-page h2{font-size:clamp(2rem,3.1vw,2.9rem);line-height:1.14;letter-spacing:-.035em;text-wrap:balance}
.marketing-page h3{font-size:1.4rem;line-height:1.3;letter-spacing:-.025em}
.marketing-page p{line-height:1.65;max-width:65ch}.marketing-page p+p{margin-top:18px}
.marketing-page .eyebrow{color:var(--cyan);font-size:.875rem;letter-spacing:.12em;margin-bottom:22px}
.marketing-page .text-link,.mp-index a{color:#006e61;text-decoration:underline;text-underline-offset:5px}
.mp-container{width:min(1280px,calc(100% - 96px));margin-inline:auto}
.mp-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:center;padding-block:64px 56px}
.mp-hero-copy>p:not(.eyebrow){margin-top:24px;max-width:62ch}.mp-hero-copy>h1+p{font-size:1.1875rem}
.mp-hero-mark{padding:clamp(20px,3vw,44px);aspect-ratio:1.18;display:flex;align-items:center;justify-content:center;border-radius:28px;background:radial-gradient(ellipse at center,#e6efeb 0,#f5f6f5 65%);position:relative}
.mp-hero-mark:after{content:'';position:absolute;inset:18px;border:1px solid #d5dfd9;border-radius:20px;pointer-events:none}.mp-hero-mark img{width:100%;height:auto;position:relative;z-index:1}
.mp-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:28px}
.mp-chapter{padding-block:56px}.mp-chapter h2{margin-bottom:24px}.mp-chapter h3{margin-block:20px 16px}
.mp-warm{background:var(--soft);border-radius:28px;max-width:calc(1440px - 64px);margin-inline:auto}
.mp-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(32px,5vw,72px);align-items:start}.mp-split h3{color:#006e61}.mp-prose{max-width:680px}
.mp-index{padding-block:20px;border-block:1px solid var(--line);margin-bottom:24px}.mp-index nav{display:flex;gap:8px 12px;flex-wrap:wrap;align-items:center}
.mp-index nav a{min-height:44px;display:inline-flex;align-items:center;font-size:.9375rem;padding:8px 16px;border:1px solid var(--line);border-radius:100px;text-decoration:none;background:#fff}.mp-index nav a:hover{background:var(--soft);border-color:var(--cyan)}.mp-jump{display:none}
.mp-packages{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0;margin:28px 0 0;counter-reset:package}
.mp-packages li{font-size:1.6rem;font-weight:700;line-height:1.2;padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--soft);counter-increment:package}.mp-packages li:before{content:'0' counter(package);display:block;color:var(--beige);font-size:.875rem;letter-spacing:.05em;font-weight:400;margin-bottom:24px}
.mp-framework{list-style:none;margin:28px 0 0;padding:8px 32px;background:var(--soft);border:1px solid var(--line);border-radius:22px}.mp-framework li{display:grid;grid-template-columns:44px minmax(120px,.65fr) minmax(0,2fr);gap:24px;padding:28px 0;align-items:start}.mp-framework li+li{border-top:1px solid #d7dfda}.mp-framework li>span{color:var(--beige);font-size:1.2rem;line-height:1.4}.mp-framework li>h3{margin:0;color:var(--charcoal)}
.mp-controls{margin:0;padding:32px;border:1px solid var(--line);border-radius:20px;background:white;align-self:center}.mp-controls figcaption{font-size:1.5rem;font-weight:600}.mp-controls ul{list-style:none;padding:0;margin:24px 0;display:grid;gap:12px}.mp-controls li{border-top:1px solid var(--line);padding-top:12px;font-size:1.125rem;color:#006e61}.mp-controls p{font-size:.9375rem}
.mp-revenue{margin:28px 0}.mp-revenue figcaption{font-size:.875rem;margin-bottom:16px}.mp-revenue ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0;padding:0}.mp-revenue li{position:relative;padding:24px 12px;border:1px solid var(--line);border-radius:14px;background:var(--soft);font-weight:600;text-align:center}.mp-revenue li+li:before{content:'→';position:absolute;left:-23px;top:24px;color:var(--cyan)}
.mp-renewal{padding:32px;background:var(--soft);border:1px solid var(--line);border-radius:22px}.mp-renewal>strong{font-size:clamp(4rem,6vw,6rem);line-height:1.1;letter-spacing:-.04em;color:var(--cyan)}.mp-renewal>strong+p{margin-top:12px;font-size:1.125rem;font-weight:600}
.mp-close{background:var(--charcoal);color:white;padding-block:52px;max-width:calc(1440px - 64px);margin:16px auto 48px;border-radius:28px}.mp-close h2{color:#fff;max-width:24ch;margin-bottom:24px}.mp-close p{max-width:70ch}.mp-close .button{background:#fff;color:var(--charcoal);border-color:#fff}.mp-close .button:hover{background:#e8f3ee}.mp-close .text-link{color:#fff}
.marketing-page section[id]{scroll-margin-top:calc(var(--public-header-height,106px) + 16px)}html:has(body.marketing-page){scroll-padding-top:0}.no-js .mp-index nav{display:flex}.no-js .mp-jump{display:none}
@media(max-width:1023px){.mp-container{width:calc(100% - 64px)}.mp-hero{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:28px;padding-block:48px}.mp-hero h1{font-size:clamp(2.5rem,5vw,3.4rem)}.mp-chapter{padding-block:44px}.mp-hero-mark{padding:22px;border-radius:22px}.mp-hero-mark:after{inset:12px;border-radius:14px}.mp-framework li{grid-template-columns:32px 110px minmax(0,1fr);gap:16px}.mp-packages li{padding:24px 20px;font-size:1.35rem}.mp-revenue ol{gap:24px}.mp-revenue li+li:before{left:-21px}}
@media(max-width:767px){.mp-container{width:calc(100% - 48px)}.mp-hero{grid-template-columns:1fr;gap:28px;padding-block:40px}.marketing-page h1,.mp-hero h1{font-size:clamp(2.3rem,8.5vw,3rem);line-height:1.12;max-width:20ch}.mp-hero-copy>h1+p{font-size:1.125rem}.mp-hero-mark{aspect-ratio:2;max-width:420px;width:100%;justify-self:center;padding:24px 48px}.mp-hero-mark img{width:min(100%,240px)}.mp-split{grid-template-columns:1fr;gap:8px}.mp-chapter{padding-block:36px}.mp-warm,.mp-close{max-width:calc(100% - 32px);border-radius:20px}.mp-warm .mp-container,.mp-close .mp-container{width:calc(100% - 40px)}.mp-index nav{display:none}.mp-jump{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.mp-jump label{grid-column:1/-1;font-size:.9375rem;font-weight:600}.mp-jump select{min-width:0;width:100%;min-height:50px;padding:10px;border:1px solid #82908d;font:inherit;font-size:1rem;background:#fff;color:var(--charcoal);border-radius:8px}.mp-jump select:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}.mp-framework{padding:4px 20px}.mp-framework li{grid-template-columns:28px minmax(0,1fr);gap:12px}.mp-framework li p{grid-column:2}.mp-packages{grid-template-columns:1fr;gap:12px}.mp-packages li{display:flex;gap:20px;align-items:center;padding:24px;font-size:1.5rem}.mp-packages li:before{margin:0}.mp-revenue ol{grid-template-columns:1fr;gap:24px}.mp-revenue li{padding:18px}.mp-revenue li+li:before{content:'↓';left:50%;top:-27px;transform:translateX(-50%)}.mp-controls{padding:24px}.mp-renewal{padding:28px;margin-top:20px}.mp-actions{align-items:stretch;flex-direction:column;gap:18px}.mp-actions .button{align-self:stretch}.mp-close{padding-block:36px;margin-block:16px 32px}.marketing-page section[id]{scroll-margin-top:calc(var(--public-header-height,106px) + 16px)}}
.mp-hero h1{max-width:none}
@media(min-width:1024px){.mp-hero h1{font-size:clamp(2.7rem,4.1vw,4.1rem)}}

.mp-framework li>span,.mp-packages li:before{color:#765f49}

.mp-service-grid{margin-top:28px}.mp-service-grid .service h3{margin-top:22px}.mp-service-grid .service p{font-size:1rem}.mp-service-grid summary{min-height:44px}.mp-hero-mark{overflow:hidden}

.mp-hero-copy>.mp-hero-context{font-size:1rem;margin-top:24px}.mp-hero .mp-actions{margin-top:24px}
