@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{--olive:#2d3527;--ink:#20271c;--paper:#f2ecdf;--muted:#434a3b;--line:#d9d4c5;--accent:#a6b577;--light:#faf7f0}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 'Manrope',Arial,sans-serif}header{display:flex;align-items:center;justify-content:space-between;padding:24px 5vw;border-bottom:1px solid var(--line)}a{color:inherit}header a{text-decoration:none}.brand{font:600 35px 'Cormorant Garamond',Georgia,serif;letter-spacing:-1px}.brand span{display:block;font:12px 'Manrope',Arial;letter-spacing:1.3px;margin-top:2px}.edition{font-size:13px;letter-spacing:2px}.edition span{letter-spacing:0;font-size:12px;margin-left:8px;border:1px solid var(--line);padding:4px 9px;border-radius:20px}main{max-width:1440px;margin:auto;padding:34px 5vw 0}.heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;margin:0 0 10px}h1{font:500 42px/1.12 'Cormorant Garamond',Georgia,serif;max-width:740px;margin:0}.italic{font-style:italic;display:block}.intro{color:var(--muted);font-size:14px;margin:0 0 3px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 365px;gap:30px;align-items:start}section.person{background:var(--light);padding:26px 28px;border:1px solid var(--line);border-radius:8px}h2{font:600 25px/1.3 'Cormorant Garamond',Georgia,serif;margin:0 0 20px}.number{font:500 12px 'Manrope',Arial;border:1px solid var(--line);border-radius:50%;display:inline-grid;place-items:center;width:28px;height:28px;vertical-align:middle;margin-right:9px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}label{font-size:14px;font-weight:600;display:block}.wide{grid-column:1/-1}input,select{display:block;width:100%;background:white;border:1px solid #c9cbbb;border-radius:5px;padding:11px 12px;color:var(--ink);font:500 16px 'Manrope',Arial;margin-top:7px;min-height:46px}input:focus,select:focus,summary:focus-visible,button:focus-visible{outline:2px solid #738347;outline-offset:2px}small,.footnote{display:block;font-size:12px;font-weight:400;line-height:1.5;color:var(--muted);margin-top:6px}.additional{margin-top:20px;border-top:1px solid var(--line);padding-top:15px}.additional summary{font-size:14px}.additional .formgrid{padding-top:15px}.children{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.children label{font-size:12px}.coverage{margin-top:29px}.sectionhead{display:flex;align-items:center;justify-content:space-between;gap:15px}.sectionhead>span{font-size:12px;white-space:nowrap}summary{cursor:pointer}.group{border-top:1px solid #cbd0bc}.group>summary{font-size:16px;font-weight:700;list-style:none;display:flex;justify-content:space-between;align-items:center;padding:17px 5px}.group>summary::-webkit-details-marker{display:none}.group>summary:after{content:'+';font-weight:400;font-size:22px}.group[open]>summary:after{content:'−'}.product{border:1px solid var(--line);border-radius:6px;margin:0 0 10px;background:var(--light);padding:17px}.product.chosen{border-color:#7c8d57;background:#fbfaf5}.producttop{display:flex;align-items:flex-start;gap:12px}.check{accent-color:var(--olive);width:20px;height:20px;min-height:20px;flex:0 0 auto;margin:3px 0 0}.productname{font-size:14px;font-weight:600;line-height:1.5;flex:1}.productname label{cursor:pointer}.productprice{font-size:14px;font-weight:700;white-space:nowrap}.inputs{display:grid;grid-template-columns:1fr 120px;gap:15px;margin:13px 0 4px;padding-left:32px}.inputs label{font-size:12px}.inputs small{font-size:12px}.inputs .fixedtext{font-size:14px;grid-column:1/-1}.product details{padding:10px 0 0 32px}.product details summary{font-size:12px;color:var(--muted)}.description{font-size:13px;color:var(--muted);padding-top:5px;line-height:1.7}.description p{margin:7px 0}.lineerror{color:#9b4328;font-size:12px;padding-left:32px}.benefit{padding-left:32px;font-size:12px;color:#855124}.result{background:var(--olive);color:var(--paper);border-radius:9px;padding:30px 26px}.result .eyebrow{color:#c1c7af;font-size:11px}.amount{font:500 63px/1.15 'Cormorant Garamond',Georgia,serif;letter-spacing:-1px;font-variant-numeric:tabular-nums;margin:17px 0 0}.period{margin:0;font-size:14px;color:#d2d5c4}#annual{font-size:12px;color:#c1c7af;margin-top:12px}.rule{height:1px;background:#535c46;margin:25px 0 20px}.breakline{display:flex;justify-content:space-between;gap:16px;font-size:12px;margin:12px 0}.breakline span{max-width:210px}.breakline b{white-space:nowrap}#messages{font-size:12px;line-height:1.6}.message{background:#454b36;border-left:2px solid #c9aa6a;padding:11px;margin:16px 0;color:#f3e2bc}.review{border-top:1px solid #535c46;margin-top:22px;padding-top:13px}.review p{margin:8px 0;font-size:12px;display:flex;justify-content:space-between;gap:10px}.review b{text-align:right;max-width:170px;font-weight:500}.resultnote{font-size:12px;line-height:1.7;color:#c1c7af;margin:25px 0 0}aside{position:sticky;top:20px}.versionnote{font-size:12px;color:var(--muted);padding:8px 5px;line-height:1.7}.knowledge{border-top:1px solid var(--line);margin:40px 0;padding-top:25px}.knowledgegrid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px}.knowledge summary{font-size:14px;font-weight:600}.knowledge p,.knowledge a{font-size:13px;color:var(--muted)}#documents a{display:block;margin:10px 0}.methodrows{font-size:12px;border-top:1px solid var(--line);margin-top:12px;padding-top:9px}.methodrows p{display:flex;justify-content:space-between;gap:10px}footer{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding:25px 0}footer .brand{font-size:28px}footer p{font-size:12px;color:var(--muted);max-width:650px}.fatal{padding:25px;color:#953a26}@media(min-width:1400px){main{padding-left:60px;padding-right:60px}}@media(max-width:1050px){.workspace{grid-template-columns:minmax(0,1fr) 310px;gap:20px}.result{padding:24px 20px}.amount{font-size:54px}.heading{display:block}.intro{margin-top:15px}.person{padding:22px!important}.inputs{grid-template-columns:1fr 95px}.children{grid-template-columns:1fr 1fr}}@media(max-width:760px){header{padding:18px 5vw}.brand{font-size:30px}.edition{font-size:11px;letter-spacing:1px}main{padding-top:25px}h1{font-size:35px}.workspace{grid-template-columns:1fr}aside{position:static;grid-row:2}.formgrid{gap:15px}.person{padding:20px!important}.knowledgegrid{grid-template-columns:1fr;gap:20px}.result{padding:26px}.breakline{font-size:14px}.breakline span{max-width:70%}.review p{font-size:13px}.heading .eyebrow{font-size:10px}.product{padding:13px}.productprice{font-size:12px}.inputs{padding-left:0;grid-template-columns:1fr 95px}.product details,.benefit,.lineerror{padding-left:0}footer{align-items:flex-start}.sectionhead>span{font-size:11px}.amount{font-size:64px}}@media(max-width:390px){.formgrid{grid-template-columns:1fr}.wide{grid-column:auto}.producttop{flex-wrap:wrap}.productprice{margin-left:32px}.children{grid-template-columns:1fr 1fr}}

[hidden]{display:none!important}.comparison{margin-top:40px;border-top:1px solid var(--line);padding-top:25px}.comparison>label{max-width:520px}.tablewrap{overflow-x:auto;margin-top:20px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:right;padding:13px 18px;border-bottom:1px solid var(--line);white-space:nowrap}th:first-child{text-align:left}thead{background:var(--olive);color:var(--paper)}tbody tr:nth-child(even){background:var(--light)}
.sourcecheck{border-top:1px solid var(--line);padding:22px 0}.sourcecheck summary{font-size:14px;font-weight:600}.sourcecheck p{font-size:13px;color:var(--muted);max-width:950px}
dialog{width:min(1120px,95vw);max-height:90vh;border:1px solid #bcb69e;border-radius:16px;padding:28px;background:#f7f3e8;color:#2d3527;overflow:auto}dialog::backdrop{background:rgb(25 31 21 / .7)}.dialogtop{display:flex;justify-content:space-between;align-items:center;gap:16px}.dialogtop h2{margin:0}.dialogtop button,.listbutton,.lead-card button,table button{background:#2d3527;color:#f7f3e8;border:0;border-radius:8px;padding:12px 18px;font:inherit;cursor:pointer}.listbutton{margin-top:12px;text-align:left;font-size:1rem}.listlinks{display:flex;gap:12px;flex-wrap:wrap}.benefit-library{margin:40px 0;padding:28px;border:1px solid #bcb69e;border-radius:12px}.listfilters{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:20px 0}.listtable{max-height:48vh;overflow:auto}.listtable th{position:sticky;top:0;background:#ede7d8;z-index:1}.listtable td{white-space:normal;min-width:110px;font-size:1rem;vertical-align:top}.listtable td:first-child{min-width:260px}.listtable small{display:block;margin-top:7px;color:#5c6353;font-size:.875rem}.listfilters[hidden],[hidden]{display:none!important}.landing{max-width:1100px}.landinggrid{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:42px 0}.lead-card{padding:32px;background:#ede7d8;border-radius:16px;border:1px solid #bcb69e}.lead-card label{margin-bottom:18px}.consent{display:flex;align-items:flex-start;gap:12px;font-weight:400;line-height:1.5}.consent input{width:22px;height:22px;flex-shrink:0;margin-top:3px}.lead-card button{width:100%}.lead-card button:disabled{opacity:.6}.honeypot{position:absolute;left:-10000px}.privacy{padding:20px;margin-top:32px;border-top:1px solid #bcb69e}.privacy p{font-size:1rem;line-height:1.6}.owner-link{font-size:.875rem;margin-left:20px}.lead-card #lead-message{color:#8e321f}dialog a,.privacy a{color:#2d3527;text-decoration:underline}button:focus-visible,a:focus-visible{outline:3px solid #b79447;outline-offset:3px}@media(max-width:700px){dialog{padding:18px}.listfilters,.landinggrid{grid-template-columns:1fr;gap:18px}.lead-card{padding:22px}.dialogtop{align-items:flex-start}.dialogtop h2{font-size:1.4rem}header{flex-wrap:wrap}.owner-link{margin:10px 15px 0 0}}

header{flex-wrap:wrap;gap:12px}.team-card{max-width:640px}.team-card input{width:100%}

.inline-form{display:inline;margin:0}.inline-form button{font:inherit;background:transparent;border:1px solid var(--line);padding:8px 12px;border-radius:8px;cursor:pointer}.credential{font-family:monospace;font-size:1.1rem;overflow-wrap:anywhere;padding:16px;background:#fff;border:1px solid var(--line)}

/* Readable text on pale table headers and supporting copy. */
.listtable th{color:#20271c}.listtable small{color:#434a3b}.description,.product details summary{color:#343c2e}input::placeholder{color:#59604f;opacity:1}input[data-field="amount"],#list-amount,#cc-amount{font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.025em}

.family-guide{margin:24px 0;padding:26px 28px;background:var(--light);border:1px solid var(--line);border-radius:8px}.family-guide p{font-size:14px}.family-guide details{margin:18px 0}.family-guide details .formgrid{margin-top:16px}.family-table td,.family-table th{white-space:normal;text-align:left}.family-table tbody th{min-width:175px}.family-table td:last-child{min-width:220px}.family-guide button:disabled{opacity:.55;cursor:default}.duration-note{font-size:12px;color:#434a3b;margin:10px 0 0;padding-left:32px}input[readonly]{background:#ede7d8;cursor:default}.planning-money{font-weight:700;font-variant-numeric:tabular-nums}

.payment-comparison{margin:24px 0;padding:24px;background:var(--light);border:1px solid var(--line);border-radius:8px}.payment-comparison p{font-size:14px}.payment-comparison th,.payment-comparison td{white-space:normal;min-width:135px}.payment-selected{background:#e4e9d8!important;font-weight:700}.family-optin{display:flex;align-items:flex-start;gap:12px;font-size:16px}.family-optin input{width:22px;height:22px;min-height:22px;flex:0 0 auto;margin:2px 0 0;accent-color:var(--olive)}#payment-saving{color:#f2ecdf;font-size:14px;line-height:1.6}

.age-guide,.pdf-export{margin:24px 0;padding:26px 28px;background:var(--light);border:1px solid var(--line);border-radius:8px}.age-guide h3{font-size:18px;margin:20px 0 8px}.age-guide article{padding:5px 0;border-top:1px solid var(--line)}.age-guide article a{display:inline-block;margin:4px 0;text-decoration:underline}.age-guide p{font-size:14px}.pdf-export label{max-width:520px}.pdf-export button:disabled{opacity:.55;cursor:default}

.guide-finances{margin-top:22px}.guide-amounts th,.guide-amounts td{white-space:normal;text-align:left;vertical-align:top;min-width:160px}.guide-amounts small{font-size:14px}.guide-amounts tbody th{font-weight:600}
.pdf-export{background:#faf9f5;border:1px solid #dbe2dd;border-top:3px solid #a58b57;padding:34px;margin:40px 0;border-radius:5px;color:#153f39}.pdf-export .eyebrow{color:#806738}.pdf-export h2{font-family:Georgia,serif;font-size:1.8rem;line-height:1.3;margin:0 0 14px}.pdf-heading>p{color:#536a64}.pdf-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:24px 0}.pdf-fields label{display:block;font-size:.875rem}.pdf-fields input{display:block;width:100%;background:white;color:#153f39;border:1px solid #b7c7be;border-radius:3px;padding:13px;margin-top:8px;font-size:1rem}.pdf-export button{background:#153f39;color:white;border:0;padding:15px 24px;border-radius:3px}.pdf-export button:disabled{opacity:.5;cursor:not-allowed}.pdf-export .footnote,#pdf-status{font-size:.875rem;line-height:1.6;color:#536a64}@media(max-width:800px){.pdf-fields{grid-template-columns:1fr}.pdf-export{padding:24px 20px}.pdf-export button{width:100%}}
.advisor-identity{display:flex;flex-direction:column;align-items:flex-end;gap:2px;line-height:1.5;font-size:.875rem;color:#153f39}.advisor-identity>span:first-child{font-size:.8rem;color:#536a64}.advisor-identity a{color:#536a64;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.pdf-fields input[readonly]{background:#edf2ee;color:#153f39;border-color:#d3dfd7}@media(max-width:900px){header{flex-wrap:wrap}.advisor-identity{flex-basis:100%;align-items:flex-start;padding:14px 0;border-top:1px solid #d3dfd7}}

/* Account controls need explicit foregrounds on their light surfaces. */
.inline-form button{background:#faf7f0;color:#20271c;border:1px solid #6c775e;font-weight:600;min-height:44px;line-height:1.4}
.inline-form button:hover{background:#e2e7d7;color:#20271c;border-color:#2d3527}
.inline-form button:focus-visible{outline:3px solid #526038;outline-offset:3px}
.tablewrap td{color:#20271c}
.tablewrap th{color:#20271c;background:#e4e4d5}
.tablewrap .inline-form{display:inline-block;margin:3px 5px 3px 0}
.owner-link{color:#20271c;font-weight:600;text-decoration:underline;text-underline-offset:4px}

.care-highlight{padding:18px 20px;background:#e6eadb;color:#20271c;border:1px solid #83916a;border-radius:8px;font-weight:600}.care-dialog #care-notes{margin-top:24px}.care-dialog #care-notes h3{font-size:1.4rem}.care-dialog #care-notes p{font-size:1rem;line-height:1.7}.care-dialog .listtable{max-height:43vh}

.owner-navigation{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0 1.5rem;width:100%;font-family:inherit}.owner-navigation a,.owner-primary{display:inline-block;padding:.7rem 1rem;border:1px solid #536345;border-radius:6px;background:#f7f4eb;color:#263322;font-weight:650;text-decoration:none;line-height:1.4}.owner-navigation a:hover,.owner-navigation a:focus-visible,.owner-primary{background:#394b30;color:#fff}.owner-navigation a:focus-visible,.owner-primary:focus-visible{outline:3px solid #917443;outline-offset:3px}

.riding-subtitle{display:block;font-family:inherit;font-size:.62em;line-height:1.3;color:#536345;margin-top:14px}.riding-notice{padding:24px 28px;margin:28px 0;background:#f5f1e6;border:1px solid #b6ad8a;border-left:4px solid #9d8146;border-radius:6px;color:#263322}.riding-notice .eyebrow{font-size:.7rem;letter-spacing:.12em;margin:0 0 12px;color:#6d582d}.riding-notice h2{font-size:1.55rem;line-height:1.25;margin:0 0 16px}.riding-notice ul{padding-left:22px;margin:0}.riding-notice li{margin:10px 0;font-size:1rem;line-height:1.6}.riding-notice p:last-child{font-size:.875rem;line-height:1.7;margin-bottom:0;color:#536345}@media(max-width:650px){.riding-notice{padding:20px 18px}.riding-notice h2{font-size:1.35rem}.riding-subtitle{font-size:.65em}}

.riding-packages{padding:30px;margin:28px 0 38px;background:#edf1e8;border:1px solid #bfcbb8;border-radius:8px}.riding-packages-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.riding-packages-heading h2{font-size:2.1rem;line-height:1.2;margin:10px 0}.riding-packages-heading>div>p:last-child{font-size:.95rem;line-height:1.7;max-width:650px}.riding-packages-heading>a{font-size:.85rem;line-height:1.6;min-width:170px;text-underline-offset:4px}.riding-pricing-context{font-size:.875rem;line-height:1.7;margin:12px 0 24px}.riding-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.riding-package-card{background:#fbfaf5;color:#263322;border:1px solid #c6cebc;border-radius:6px;padding:22px;min-width:0}.riding-package-card.is-selected{border:2px solid #526a43;padding:21px;background:#fffef8}.riding-package-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.riding-package-top h3{font-size:1.8rem;line-height:1.2;margin:0}.riding-package-top>span{background:#e2ead8;color:#263322;padding:4px 8px;border-radius:4px;font-size:.7rem;font-weight:600}.riding-package-band{font-size:.8rem;color:#626d53;line-height:1.6;margin:12px 0}.riding-package-price{font:500 2.1rem Georgia,serif;line-height:1.3;margin:20px 0;color:#263322;overflow-wrap:anywhere}.riding-package-price small{display:block;font:400 .75rem Arial,sans-serif;color:#626d53;margin-top:6px}.riding-package-summary{font-size:.875rem;line-height:1.65;min-height:70px}.riding-package-card>button{width:100%;min-height:48px;border-radius:5px;padding:12px 10px;background:#394b30;color:#fff;font-size:.875rem;line-height:1.4}.riding-package-card>button[aria-pressed=true]{background:#e2ead8;color:#263322;border:1px solid #526a43}.riding-package-card>button:disabled{background:#e3e4db;color:#5b6252;cursor:not-allowed}.riding-package-card>details{margin:18px 0 0;padding:0;border-top:1px solid #ced5c4}.riding-package-card summary{padding:15px 0 0;font-size:.8rem;line-height:1.5;cursor:pointer}.riding-package-card dl{margin:12px 0 0}.riding-package-card dl>div{padding:10px 0;border-bottom:1px solid #dbe1d2}.riding-package-card dt{font-size:.8rem;line-height:1.6}.riding-package-card dd{margin:4px 0 0;font-weight:600;font-size:.85rem;line-height:1.5}.riding-package-unavailable{background:#f3ecdb;color:#5a482a;padding:12px;font-size:.8rem;line-height:1.6}.riding-package-state{font-size:.9rem;line-height:1.7;margin:24px 0 12px}.riding-period-price{font-size:.8rem;line-height:1.5}.riding-packages>.footnote{font-size:.8rem;line-height:1.8;margin-bottom:0}@media(max-width:1000px){.riding-packages{padding:24px}.riding-package-grid{gap:12px}.riding-package-card{padding:18px}.riding-package-card.is-selected{padding:17px}.riding-package-price{font-size:1.8rem}}@media(max-width:760px){.riding-packages{padding:22px 18px}.riding-packages-heading{display:block}.riding-packages-heading>a{display:inline-block;margin-bottom:15px}.riding-package-grid{grid-template-columns:1fr}.riding-package-summary{min-height:0}.riding-package-price{font-size:2rem}.riding-package-card{padding:22px}.riding-package-card.is-selected{padding:21px}}

.hockey-packages .riding-package-grid{grid-template-columns:repeat(2,minmax(0,1fr))}@media(max-width:700px){.hockey-packages .riding-package-grid{grid-template-columns:1fr}}

.advisor-sport-navigation{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;width:100%}.advisor-sport-navigation a{padding:9px 14px;border:1px solid #bfcbb8;border-radius:4px;font-size:.85rem;color:#263322;background:#edf1e8}

.calculation-autosave{padding:16px 20px;background:#edf1e8;border:1px solid #c3ccb7;border-radius:6px;margin:22px 0}.calculation-autosave p{margin:0;font-size:.85rem;line-height:1.7}.calculation-autosave[data-status=error]{background:#f6eedb}.calculation-autosave button{margin-top:10px}.saved-calculations{display:grid;gap:20px;margin:28px 0}.saved-calculation{border:1px solid #c3ccb7;border-radius:8px;padding:24px;background:#fbfaf5}.saved-calculation h2{font-size:1.6rem;margin:0 0 12px}.saved-calculation .quote{font-size:1.5rem;margin:10px 0}.saved-calculation ul{padding-left:20px}.saved-pdf-link{display:inline-block;padding:10px 18px;margin:10px 0;background:#2d3527;color:#fff;border-radius:4px}.saved-calculation small{display:block;line-height:1.7}
