
:root{--navy:#071a2d;--lime:#b7ed38;--ink:#142433;--soft:#f4f8f3;--line:#dbe5d9}.plan-hero{padding:9rem 0 6rem;background:radial-gradient(circle at 80% 20%,rgba(183,237,56,.18),transparent 28%),linear-gradient(135deg,#071a2d,#0d3853);color:#fff}.plan-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center}.plan-hero h1{color:#fff;max-width:820px}.privacy-note{font-size:.88rem;color:rgba(255,255,255,.68)}.plan-orbit{width:min(420px,90vw);aspect-ratio:1;border:1px solid rgba(255,255,255,.2);border-radius:50%;margin:auto;position:relative;display:grid;place-items:center}.plan-orbit:before,.plan-orbit:after{content:"";position:absolute;border:1px solid rgba(183,237,56,.3);border-radius:50%;inset:12%}.plan-orbit:after{inset:25%}.plan-orbit div{width:140px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:var(--navy);z-index:2}.plan-orbit strong{font-size:3.4rem;line-height:.8}.plan-orbit span{text-transform:uppercase;letter-spacing:.16em;font-weight:800}.plan-orbit i{position:absolute;font-style:normal;font-weight:800;color:#fff}.plan-orbit i:nth-of-type(1){top:8%}.plan-orbit i:nth-of-type(2){right:0;bottom:24%}.plan-orbit i:nth-of-type(3){left:0;bottom:24%}.plan-progress{padding:1.4rem 0;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:5}.progress-rail{height:9px;background:#e7eee5;border-radius:999px;overflow:hidden}.progress-rail span{display:block;height:100%;width:0;background:linear-gradient(90deg,#7faf28,var(--lime));transition:width .25s}.plan-progress p{margin:.6rem 0 0;text-align:right;font-size:.86rem}.plan-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.plan-form-grid label,.checkin-card label,.custom-anchor{display:grid;gap:.5rem;font-weight:800}.plan-form-grid input,.plan-form-grid select,.plan-form-grid textarea,.checkin-card textarea,.checkin-card select,.custom-anchor input{width:100%;padding:1rem;border:1px solid #cbd8c8;border-radius:.85rem;font:inherit;background:#fff}.full{grid-column:1/-1}.soft{background:var(--soft)}.phase-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.phase-card{padding:1.6rem;background:#fff;border:1px solid var(--line);border-radius:1.35rem;box-shadow:0 16px 40px rgba(7,26,45,.06)}.phase-card span{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:#5f7e4c;font-weight:800}.phase-card label{display:grid;gap:.4rem;margin-top:1rem;font-weight:700}.phase-card input,.phase-card textarea{padding:.85rem;border:1px solid #cbd8c8;border-radius:.7rem;font:inherit}.anchor-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.9rem}.anchor{display:flex;gap:.8rem;align-items:flex-start;padding:1rem;border:1px solid var(--line);border-radius:1rem;background:#fff}.anchor input{margin-top:.25rem}.custom-anchor{grid-template-columns:1fr auto;align-items:end;margin-top:1.4rem}.custom-anchor input{grid-column:1}.dark-panel{background:var(--navy);color:#fff}.dark-panel h2{color:#fff}.dark-panel .section-heading p{color:rgba(255,255,255,.72)}.checkin-card{display:grid;gap:1rem;max-width:860px;padding:2rem;border:1px solid rgba(255,255,255,.15);border-radius:1.4rem;background:rgba(255,255,255,.06)}.checkin-card label{color:#fff}.checkin-history{display:grid;gap:.8rem}.history-item{padding:1rem;border-left:3px solid var(--lime);background:rgba(255,255,255,.07)}.history-item strong{color:var(--lime)}.summary-head{display:flex;align-items:end;justify-content:space-between;gap:2rem}.plan-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:2rem}.summary-card{padding:1.4rem;border:1px solid var(--line);border-radius:1rem;background:#fff}.summary-card.full{grid-column:1/-1}.summary-card h3{margin-top:0}.summary-card ul{padding-left:1.2rem}.plan-disclaimer{margin-top:2rem;padding:1.2rem;border-left:4px solid var(--lime);background:var(--soft)}
@media(max-width:900px){.plan-hero-grid,.plan-form-grid,.phase-grid,.anchor-grid,.plan-summary{grid-template-columns:1fr}.full,.summary-card.full{grid-column:auto}.summary-head{align-items:flex-start;flex-direction:column}.custom-anchor{grid-template-columns:1fr}.custom-anchor button{justify-self:start}.plan-orbit{max-width:320px}.plan-progress{position:static}}
@media print{header,footer,.plan-hero,.plan-progress,#builder,.soft,.anchor-grid,.custom-anchor,.dark-panel,.summary-head .button-row{display:none!important}.summary-section{padding:0}.plan-summary{grid-template-columns:1fr 1fr}.plan-disclaimer{font-size:10pt}}
