/* Life insurance calculator: page-specific styles. Sits on top of /assets/style.css (tokens, header, footer, buttons, bands).
   All classes are prefixed cx- so nothing collides with the shared stylesheet. */
:root{--cx-acc:#6f5a1f;--cx-field:#6b6b6b;--cx-track:#cfc7b0}
.cx-sec{padding:clamp(26px,5vw,56px) 0 clamp(34px,6vw,64px)}
.cx-sec .wrap{padding-top:0;padding-bottom:0;display:block}
.cx-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;align-items:start}
.cx-grid>*{min-width:0}
.cx-form{display:grid;gap:18px}
@media(min-width:960px){.cx-grid{grid-template-columns:minmax(0,1fr) 380px;gap:48px}.cx-res{position:sticky;top:104px}}
@media(min-width:960px) and (max-height:700px){.cx-res{top:96px}}

/* mobile live readout (sticks under the header while the inputs scroll) */
.cx-mini{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:69px;z-index:30;min-height:50px;margin:0 -22px 4px;padding:6px 22px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);box-shadow:0 8px 14px -12px rgba(0,0,0,.35);color:var(--ink);text-decoration:none}
.cx-mini .l{flex:none;font-size:.82rem;font-weight:600;color:var(--soft);white-space:nowrap}
.cx-mini strong{flex:1 1 auto;min-width:0;text-align:center;font-size:1.15rem;font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:clip}
.cx-mini .go{flex:none;font-size:.85rem;font-weight:700;color:var(--cx-acc);white-space:nowrap;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:3px}
.cx-mini.off{opacity:0;pointer-events:none}
/* Oct 23: steady sticky bar on iPhone Safari. Own compositing layer so it moves with the sticky header during
   momentum scrolling; layout/style containment so amount changes never relayout the page. top stays 69px = header height. */
.cx-mini{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;contain:layout style}
@media(min-width:960px),(max-height:520px){.cx-mini{display:none}}
@media(max-width:359.98px){.cx-mini .l{display:none}}
.cx-res,#cx-math{scroll-margin-top:130px}

/* input groups */
.cx-grp{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}
.cx-grp>h3{display:flex;align-items:center;gap:12px;font-size:1.15rem;margin:0 0 4px;text-wrap:balance}
.cx-grp>h3 .n{flex:none;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--gold);color:var(--ink);font-size:.95rem;font-weight:700}
.cx-grp>.sub{margin:0 0 16px 42px;font-size:.9rem;color:var(--soft);text-wrap:pretty}
.cx-fields{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}
.cx-fields>*{min-width:0}
.cx-fld label,.cx-fld .cx-lbl{display:block;font-weight:600;font-size:1rem;line-height:1.3;margin:0 0 8px;color:var(--ink)}
.cx-opt{font-weight:400;color:var(--soft)}
.cx-hint{margin:8px 0 0;font-size:.88rem;line-height:1.45;color:var(--soft);text-wrap:pretty}
.cx-lblrow{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.cx-lblrow label{flex:1 1 auto;min-width:0}
.cx-lblrow output{flex:none;min-width:5.2em;text-align:right;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.cx-in{display:block;width:100%;box-sizing:border-box;min-height:52px;padding:0 14px;font:600 1.1rem/1.2 Inter,system-ui,sans-serif;color:var(--ink);background:#fff;border:1.5px solid var(--cx-field);border-radius:14px;-webkit-appearance:none;appearance:none}
.cx-in::placeholder{color:#767676;font-weight:500}
.cx-in:focus-visible,.cx-step button:focus-visible,.cx-range:focus-visible{outline:3px solid var(--ink);outline-offset:2px}
.cx-in:focus{border-color:var(--ink)}
.cx-in:disabled{background:#f3f0e7;color:#6b6b6b;border-color:#cfc7b0;cursor:not-allowed}
.cx-money{position:relative}
.cx-money .cur{position:absolute;left:16px;top:50%;transform:translateY(-50%);font-weight:600;color:var(--soft);pointer-events:none}
.cx-money .cx-in{padding-left:32px}
.cx-unit{position:relative}
.cx-unit .u{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-weight:500;color:var(--soft);pointer-events:none}
.cx-unit .cx-in{padding-right:64px}
select.cx-in{padding-right:40px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%230b0b0b' stroke-width='2'/%3E%3C/svg%3E") no-repeat right 16px center}
select.cx-in:disabled{background-color:#f3f0e7}
.cx-range{-webkit-appearance:none;appearance:none;display:block;width:100%;height:44px;margin:0;background:transparent;cursor:pointer;--p:33%}
.cx-range::-webkit-slider-runnable-track{height:8px;border-radius:999px;background:linear-gradient(to right,var(--ink) var(--p),var(--cx-track) var(--p))}
.cx-range::-moz-range-track{height:8px;border-radius:999px;background:linear-gradient(to right,var(--ink) var(--p),var(--cx-track) var(--p))}
.cx-range::-webkit-slider-thumb{-webkit-appearance:none;width:30px;height:30px;margin-top:-11px;border-radius:50%;background:var(--gold);border:3px solid var(--ink);box-shadow:0 2px 6px rgba(0,0,0,.25)}
.cx-range::-moz-range-thumb{width:24px;height:24px;border-radius:50%;background:var(--gold);border:3px solid var(--ink);box-shadow:0 2px 6px rgba(0,0,0,.25)}
.cx-ticks{display:flex;justify-content:space-between;margin-top:-4px;font-size:.8rem;color:var(--soft)}
.cx-step{display:inline-flex;align-items:stretch;border:1.5px solid var(--cx-field);border-radius:14px;overflow:hidden;background:#fff}
.cx-step button{flex:none;width:52px;min-height:52px;padding:0;border:0;background:#fff;color:var(--ink);font:600 1.5rem/1 Inter,sans-serif;cursor:pointer}
.cx-step button:hover{background:var(--warm)}
.cx-step button:focus-visible{outline-offset:-3px}
.cx-step .cx-in{width:64px;min-height:50px;border:0;border-radius:0;text-align:center;padding:0;border-left:1.5px solid var(--cx-field);border-right:1.5px solid var(--cx-field)}
.cx-step .cx-in:focus-visible{outline-offset:-3px}

/* result card */
.cx-card{background:var(--ink);color:#fff;border-radius:22px;padding:24px;overflow:hidden}
.cx-eye{display:inline-block;margin:0 0 10px;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);padding-bottom:6px;border-bottom:2px solid var(--gold)}
.cx-states{display:grid}
.cx-state{grid-area:1/1;visibility:hidden;min-width:0}
.cx-state.on{visibility:visible}
.cx-amtbox{height:64px;display:flex;align-items:center;overflow:hidden}
.cx-amt{margin:0;font-weight:800;font-size:52px;line-height:1;letter-spacing:-.03em;white-space:nowrap;font-variant-numeric:tabular-nums}
.cx-card p{color:rgba(255,255,255,.88);margin:0}
.cx-range-t{margin-top:2px!important;font-size:1rem}
.cx-range-t strong{color:#fff}
.cx-term-t{margin-top:6px!important;font-size:.92rem;line-height:1.45;color:rgba(255,255,255,.85)}
.cx-sum{margin-top:12px!important;padding-top:12px;border-top:1px solid rgba(255,255,255,.22);font-size:.92rem;line-height:1.5}
.cx-h{margin:0 0 8px;font-size:1.5rem;line-height:1.2;color:#fff;text-wrap:balance}
.cx-card .cx-small{font-size:.9rem;line-height:1.5;margin-top:10px!important}
.cx-card a.cx-link{color:#e3c56f;text-underline-offset:3px;text-decoration-thickness:2px;display:inline-flex;align-items:center;min-height:44px}
.cx-sample{margin-top:14px!important;font-size:.85rem;color:#e3c56f!important;visibility:hidden}
.cx-sample.on{visibility:visible}
.cx-card .cx-reset{width:100%;min-height:48px;margin-top:8px;font-size:.95rem}
.cx-fine{margin-top:14px!important;font-size:.8rem;line-height:1.5;color:rgba(255,255,255,.78)!important}

/* the math */
.cx-math{margin-top:clamp(32px,5vw,56px)}
.cx-math h2{font-size:clamp(1.55rem,3.2vw,2.15rem);max-width:none;text-wrap:balance}
.cx-math h2::before,.cx-next h2::before,.cx-more h2::before{content:"";display:block;width:44px;height:3px;background:var(--gold);margin-bottom:16px}
.cx-math .lead{margin:10px 0 22px;color:var(--soft);max-width:44rem;text-wrap:pretty}
.cx-math-grid{display:grid;gap:26px;align-items:start}
.cx-math-grid>*{min-width:0}
@media(min-width:900px){.cx-math-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px}}
.cx-bar{display:flex;height:18px;gap:2px;border-radius:999px;overflow:hidden;background:#efe9d8;margin:0 0 18px}
.cx-bar i{display:block;height:100%;flex:0 0 auto;min-width:0}
.cx-tbl{width:100%;border-collapse:collapse}
.cx-tbl th,.cx-tbl td{padding:12px 0;border-bottom:1px solid var(--line);vertical-align:top;text-align:left}
.cx-tbl th{font-weight:600;padding-right:12px}
.cx-tbl td{text-align:right;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.cx-tbl .dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;vertical-align:baseline;border:1px solid rgba(0,0,0,.25)}
.cx-tbl .m{display:block;margin-top:2px;padding-left:18px;font-size:.84rem;font-weight:400;color:var(--soft);line-height:1.4}
.cx-tbl .tot th,.cx-tbl .tot td{border-top:2px solid var(--ink);font-size:1.02rem}
.cx-tbl .sub th,.cx-tbl .sub td{color:var(--ink)}
.cx-tbl .net th,.cx-tbl .net td{background:var(--warm);border-bottom:0;font-size:1.05rem;padding:14px 12px}
.cx-tbl .net th{border-left:3px solid var(--gold);padding-left:12px}
.cx-term{padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--warm);min-height:260px}
.cx-term h3{font-size:1.1rem;margin:0 0 6px}
.cx-term .big{margin:0 0 8px;font-size:1.9rem;font-weight:800;letter-spacing:-.02em;line-height:1.15}
.cx-term p{margin:0 0 10px;font-size:.95rem;color:#262626;text-wrap:pretty}
.cx-term .fn{font-size:.85rem;color:var(--soft)}

/* next steps */
.cx-next{background:var(--warm);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:clamp(34px,6vw,64px) 0}
.cx-next .wrap,.cx-more .wrap{padding-top:0;padding-bottom:0;display:block}
.cx-next h2,.cx-more h2{font-size:clamp(1.55rem,3.2vw,2.15rem);max-width:26ch;text-wrap:balance}
.cx-next .lead{margin:10px 0 24px;color:var(--soft);max-width:44rem;text-wrap:pretty}
.cx-steps{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.cx-ns{display:flex;flex-direction:column;padding:26px;border:1px solid var(--line);border-radius:20px;background:#fff}
.cx-ns h3{font-size:1.2rem;margin:0 0 8px;text-wrap:balance}
.cx-ns p{margin:0 0 18px;color:var(--soft);font-size:.98rem;text-wrap:pretty}
.cx-ns .btn{margin-top:auto;width:100%;min-height:52px;font-size:1rem;text-align:center}
.cx-ns .alt{margin:12px 0 0;text-align:center;font-size:.92rem}
.cx-ns .alt a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:3px;font-weight:600}

/* more */
.cx-more{padding:clamp(34px,6vw,64px) 0 0}
.cx-more .prose{max-width:46rem;margin:22px 0 0}
.cx-more .prose details p,.cx-more .prose details li{font-size:.98rem}
.cx-more .prose details ul{margin:0 44px 18px 0}
.cx-relgrid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));margin-top:36px}
.cx-rel-h{font-size:1.2rem;margin:40px 0 0}
.cx-relgrid .tile.sm{min-height:0}
.cx-disc{padding:30px 0 10px}
.cx-disc .wrap{padding-top:0;padding-bottom:0;display:block}
.cx-disc p{max-width:60rem;margin:0 0 10px;font-size:.88rem;line-height:1.6;color:var(--soft);text-wrap:pretty}
.cx-disc p strong{color:var(--ink)}
.cx-disc .disc{padding:16px 0 18px}
.sr-only{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* page-wide */
.phero h1{text-wrap:balance}
.phero .lead{text-wrap:pretty}
h2,h3{text-wrap:balance}
p,li{text-wrap:pretty}
@media(max-width:480px){.cx-grp{padding:18px 16px}.cx-card{padding:22px 18px}.cx-grp>.sub{margin-left:0}.cx-term{min-height:0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{.cx-mini,.callbar,.cbis-sbar,header.site,.cx-reset{display:none!important}}

/* side column of the math section: term idea + general-context box */
.cx-side{display:grid;gap:18px;align-content:start}
.cx-ctx{padding:22px 24px;border:1px dashed #8a8a8a;border-radius:20px;background:#fff}
.cx-ctx-eye{margin:0 0 8px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.cx-ctx-t{margin:0 0 12px;font-size:1rem;line-height:1.4;color:#262626;text-wrap:balance}
.cx-ctx-rows{list-style:none;margin:0 0 8px;padding:0;border-top:1px solid var(--line)}
.cx-ctx-rows li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:.95rem}
.cx-ctx-rows strong{font-size:1.1rem;font-variant-numeric:tabular-nums;text-align:right;overflow-wrap:anywhere}
.cx-ctx-n{margin:0 0 10px;font-size:.85rem;color:var(--soft);min-height:2.6em}
.cx-ctx .fn{margin:0;font-size:.82rem;color:var(--soft);line-height:1.45}

/* next steps: one primary card */
.cx-ns-main{border:2px solid var(--gold);box-shadow:0 10px 26px rgba(178,152,77,.16)}
.cx-ns-eye{margin:0 0 6px!important;font-size:.78rem!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#76612a!important}
.cx-ns .alt{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:0 10px}
.cx-ns .alt span{color:var(--soft)}
/* short contact form (same markup as /contact-us/) */
.cx-contact{padding:clamp(34px,6vw,64px) 0}
.cx-contact .wrap{padding-top:0;padding-bottom:0;display:block}
.cx-contact-in{display:grid;gap:24px;max-width:1040px}
@media(min-width:900px){.cx-contact-in{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:48px;align-items:start}}
.cx-contact h2{font-size:clamp(1.55rem,3.2vw,2.15rem);text-wrap:balance}
.cx-contact h2::before{content:"";display:block;width:44px;height:3px;background:var(--gold);margin-bottom:16px}
.cx-contact .lead{margin:10px 0 14px;color:var(--soft);text-wrap:pretty}
.cx-contact-note{margin:0;padding:12px 14px;border-left:3px solid var(--gold);background:var(--warm);border-radius:0 12px 12px 0;font-size:.95rem;line-height:1.45}
.cx-contact .form textarea{min-height:96px;resize:vertical}
.cx-contact .form .tick span{line-height:1.45}
@media(max-width:480px){.cx-contact .form{padding:20px}}
/* life insurance basics links */
.cx-learn{display:flex;flex-wrap:wrap;align-items:center;gap:0 18px;margin-top:22px;font-size:.95rem}
.cx-learn-h{font-weight:700;margin-right:2px}
.cx-learn a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-weight:600;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:3px}
.cx-ns .alt a,.cx-learn a{min-width:44px;justify-content:center}

/* ===== content brief additions: on-page TOC, guide, examples, military box, worksheet, FAQ, print ===== */
.cx-obtn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;background:#fff;color:var(--ink);font:600 .95rem Inter,sans-serif;border:1.5px solid var(--ink);border-radius:999px;cursor:pointer;text-align:center;line-height:1.25}
.cx-obtn:hover{background:var(--ink);color:#fff}
.cx-obtn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.cx-toc{display:flex;flex-wrap:wrap;align-items:center;gap:0 14px;margin:14px 0 0;font-size:.92rem;color:var(--soft)}
.cx-toc span{font-weight:600;margin-right:2px}
.cx-toc a,.cx-toc2 a{display:inline-flex;align-items:center;min-height:44px;color:var(--ink);font-weight:600;text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:3px}
.cx-printrow{margin:6px 0 18px}
.cx-guide{padding:clamp(34px,6vw,64px) 0;border-top:1px solid var(--line)}
.cx-guide .wrap{padding-top:0;padding-bottom:0;display:block}
.cx-guide h2{font-size:clamp(1.45rem,3vw,2rem);max-width:30ch;text-wrap:balance;margin:44px 0 12px;scroll-margin-top:90px}
.cx-guide>.wrap>h2:first-child{margin-top:0;font-size:clamp(1.55rem,3.2vw,2.15rem)}
.cx-guide>.wrap>h2:first-child::before{content:"";display:block;width:44px;height:3px;background:var(--gold);margin-bottom:16px}
.cx-guide p,.cx-guide li{max-width:46rem;font-size:1rem;line-height:1.6;color:#262626}
.cx-guide .lead{color:var(--soft)}
.cx-toc2{display:flex;flex-wrap:wrap;gap:0 18px;margin:16px 0 0;padding:10px 18px;background:var(--warm);border:1px solid var(--line);border-radius:16px;max-width:46rem}
.cx-g-list{margin:0;padding-left:1.2em}
.cx-g-list li{margin:0 0 10px}
.cx-g-fine{font-size:.86rem!important;color:var(--soft)!important}
.cx-facts{display:grid;gap:14px;margin:16px 0 10px;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.cx-fact{display:flex;flex-direction:column;gap:6px;padding:18px 20px;background:var(--warm);border:1px solid var(--line);border-radius:16px}
.cx-fact strong{font-size:1.45rem;font-variant-numeric:tabular-nums;color:var(--ink)}
.cx-fact span{font-size:.95rem;line-height:1.5;color:#262626}
.cx-fact cite{font-style:normal;font-size:.84rem;line-height:1.4}
.cx-fact cite a{display:inline-block;padding:6px 0;color:#76612a;font-weight:600}
.cx-exs{display:grid;gap:16px;margin:16px 0 0;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.cx-ex{display:flex;flex-direction:column;padding:20px 22px;background:#fff;border:1px solid var(--line);border-radius:18px}
.cx-ex-eye{margin:0 0 4px;font-size:.76rem!important;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#76612a!important}
.cx-ex h3{margin:0 0 6px;font-size:1.15rem}
.cx-ex-who{font-size:.93rem!important;color:var(--soft)!important;margin:0 0 8px}
.cx-ex-tbl th,.cx-ex-tbl td{padding:8px 0;font-size:.92rem}
.cx-ex-tbl .m{padding-left:0}
.cx-ex-tbl .net th,.cx-ex-tbl .net td{padding:10px}
.cx-ex-note{font-size:.9rem!important;margin:12px 0 0}
.cx-ex-try{margin-top:auto;align-self:stretch}
.cx-ex-tbl{margin-bottom:14px}
.cx-ex .cx-ex-note+.cx-ex-try{margin-top:14px}
.cx-mil{margin:44px 0 0;padding:22px 24px;border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:16px;background:var(--warm);max-width:50rem}
.cx-mil h2{margin-top:0!important}
.cx-mil a,.cx-guide p a,.cx-guide li a{color:var(--ink);text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:3px}
.cx-ws{margin:44px 0 0;padding:22px 24px;border:1px dashed #8a8a8a;border-radius:18px;max-width:50rem;background:#fff}
.cx-ws h2{margin-top:0!important}
.cx-ws-btns{display:flex;flex-wrap:wrap;gap:10px}
.cx-ws-tbl{width:100%;border-collapse:collapse;margin:10px 0 12px}
.cx-ws-tbl th{font-weight:500;text-align:left;padding:12px 12px 12px 0;border-bottom:1px solid var(--line);font-size:.95rem;line-height:1.4}
.cx-ws-tbl th b{display:inline-block;width:1.6em;color:#76612a}
.cx-ws-tbl td{width:34%;min-width:110px;border-bottom:1px solid var(--line);vertical-align:bottom;padding:12px 0}
.cx-ws-tbl .ln{display:block;border-bottom:1.5px solid #8a8a8a;height:1.2em}
.cx-ws-tbl .ln::before{content:"$";color:var(--soft);font-size:.9rem}
.cx-ws-tbl .tot th,.cx-ws-tbl .net th{font-weight:700}
.cx-ws-tbl .net th,.cx-ws-tbl .net td{background:var(--warm)}
.cx-ws-tbl .net th{padding-left:10px;border-left:3px solid var(--gold)}
.cx-faq{max-width:46rem;margin:12px 0 0}
.cx-faq details p{font-size:.98rem}
.cx-local{margin:44px 0 0;max-width:46rem}
.cx-ex-flash{animation:cxflash 1.2s ease}
@keyframes cxflash{0%{box-shadow:0 0 0 0 rgba(178,152,77,.7)}100%{box-shadow:0 0 0 14px rgba(178,152,77,0)}}
@media(prefers-reduced-motion:reduce){.cx-ex-flash{animation:none}}
@media(max-width:480px){.cx-mil,.cx-ws{padding:18px 16px}.cx-ws-tbl td{width:38%;min-width:96px}.cx-toc2{padding:6px 14px}}

/* print: default prints the calculator and its math; body.cx-print-blank prints only the blank worksheet */
@media print{
  @page{margin:14mm}
  body{background:#fff!important;color:#000}
  header.site,.site-header,.callbar,.cbis-sbar,.cx-mini,.cx-toc,.cx-printrow,.cx-next,.cx-contact,.cx-guide,.cx-more,.crumbs,.cx-bar,footer.site .wrap>*:not(.legal),.cx-reset,.cx-sample{display:none!important}
  .cx-disc{display:block!important}
  .cx-sec,.cx-math{break-inside:auto}
  .cx-tbl tr{break-inside:avoid}
  a[href]{color:#000;text-decoration:none}
  body.cx-print-blank main>*:not(.cx-guide),body.cx-print-blank footer.site{display:none!important}
  body.cx-print-blank .cx-guide{display:block!important;border:0;padding:0}
  body.cx-print-blank .cx-guide .wrap>*:not(.cx-g),body.cx-print-blank .cx-g>*:not(.cx-ws){display:none!important}
  body.cx-print-blank .cx-ws{border:0;padding:0;margin:0}
  body.cx-print-blank .cx-ws-btns{display:none!important}
  body.cx-print-blank .cx-ws-tbl th,body.cx-print-blank .cx-ws-tbl td{padding:16px 10px 16px 0}
}
.cx-toc a,.cx-toc2 a{min-width:44px;justify-content:center}
@media(max-width:767.98px){
  .cx-toc{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;scrollbar-width:none;margin-right:-22px;padding-right:22px;-webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
  .cx-toc::-webkit-scrollbar{display:none}
}
.cx-ws-brand{display:none}
@media print{.cx-ws-brand{display:block;margin-top:10px;font-size:.85rem;font-weight:600}}
/* the on-page TOC sits in the dark hero */
.cx-toc{color:rgba(255,255,255,.82)}
.cx-toc a{color:#fff}
.cx-toc a:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.cx-toc>*{flex:none}

/* ---- Oct 23 (G): trust line, years tip, "More costs (optional)", laddering ---- */
.cx-trust{display:flex;flex-wrap:wrap;gap:4px 10px;margin:14px 0 0;font-size:.92rem;line-height:1.4;color:rgba(255,255,255,.82)}
.cx-trust .sep{color:rgba(255,255,255,.5)}
.cx-tip{margin:8px 0 0;padding:10px 12px;border-radius:12px;background:#f6f2e6;font-size:.88rem;line-height:1.45;color:var(--ink,#0b0b0b);text-wrap:pretty}
.cx-hint a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.cx-xtra{margin-top:20px;border-top:1px solid var(--line)}
.cx-xtra>summary{display:flex;align-items:center;flex-wrap:nowrap;gap:10px;min-height:48px;padding:12px 0 4px;cursor:pointer;font-weight:600;list-style:none}
.cx-xtra>summary::-webkit-details-marker{display:none}
.cx-xtra>summary:focus-visible{outline:2px solid #b2984d;outline-offset:2px;border-radius:6px}
.cx-xtra-n{font-weight:400;color:var(--soft);white-space:nowrap}
.cx-xtra>summary::after{margin-left:auto}
.cx-xtra>.cx-fields{padding-top:12px}
.cx-g-h3{scroll-margin-top:90px;margin:28px 0 8px;font-size:1.2rem;line-height:1.3}
@media print{.cx-xtra>summary::after{display:none}}
.cx-g-h3+p,.cx-g-h3+p+p,.cx-g-h3+p+p+p{margin:0 0 12px}
/* Collapsible guide sections: reuse the site FAQ accordion from style.css (details/summary, gold "+" that turns to "x").
   The heading stays inside <summary> so the outline keeps every section title visible while closed. */
.cx-dd{max-width:46rem;margin:36px 0 0;border-top:1px solid var(--line)}
.cx-dd+.cx-dd,.cx-dds>.cx-dd{margin-top:0}
.cx-dd+.cx-dd{border-top:0}
.cx-dds{max-width:46rem;margin:36px 0 0}
.cx-fams{margin-top:16px}
.cx-dd>summary{min-height:44px;padding:20px 0}
.cx-dd>summary>h2,.cx-dd>summary>h3{margin:0!important;max-width:none;font-size:clamp(1.15rem,2.4vw,1.35rem);line-height:1.3;scroll-margin-top:150px;text-wrap:balance}
.cx-dd>summary>h3{font-size:1.12rem}
.cx-dd>summary>h2::before{display:none!important}
@media(hover:hover){.cx-dd>summary:hover>h2,.cx-dd>summary:hover>h3{text-decoration:underline;text-decoration-color:var(--gold);text-decoration-thickness:2px;text-underline-offset:4px}}
.cx-dd>summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}
.cx-dd-b{padding:0 44px 22px 0}
.cx-dd-b>:first-child{margin-top:0!important}.cx-dd-b>:last-child{margin-bottom:0}
.cx-dd-b p{padding:0}
.cx-dd-b .cx-exs{margin:0}
.cx-dd-b .cx-mil{margin:0}
.cx-dd-sub{margin-top:24px}
.cx-ex h4{margin:0 0 6px;font-size:1.15rem;line-height:1.2}
@media(max-width:600px){.cx-dd-b{padding-right:0}}
@media print{.cx-dd>summary::after{display:none}}
/* Section titles added for scanning */
.cx-sec-h{font-size:clamp(1.55rem,3.2vw,2.15rem);max-width:none;margin:0 0 18px;text-wrap:balance}
.cx-sec-h::before{content:"";display:block;width:44px;height:3px;background:var(--gold);margin-bottom:16px}
h2.cx-eye{line-height:1.4;letter-spacing:.14em;max-width:none}
h3.cx-ctx-eye{line-height:1.4;letter-spacing:.1em}
.cx-disc-h{font-size:1rem;max-width:none;margin:0 0 10px;letter-spacing:0}

.cx-dds+.cx-dd{margin-top:0;border-top:0}
@media(max-width:959.98px) and (min-height:520.02px){.cx-mini{position:fixed;top:69px;left:0;right:0;margin:0;opacity:0;pointer-events:none;transition:opacity .15s linear;contain:layout style paint}.cx-mini.on{opacity:1;pointer-events:auto}}
details:not([open])>summary::after{transform:none!important;background:none!important}
@media(max-width:959.98px){html{scroll-padding-top:140px}#cx-form .cx-in{scroll-margin-top:140px}}
.cx-res .cx-res-apply,.cx-res .cx-res-book{margin-top:0!important}
.cx-res .cx-res-apply{margin-top:12px!important}
.cx-res .cx-res-book{margin-top:12px!important;background:transparent!important;color:#fff!important;border:2px solid #fff!important}
.cx-res .cx-reset{background:none!important;border:0!important;box-shadow:none!important;min-height:44px;margin-top:10px;padding:0 8px;white-space:normal;text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:4px;color:#fff}
@media(min-width:960px) and (max-height:720px){.cx-res{position:static!important}}
label[for=spouse] .cx-opt{white-space:nowrap}
.phero .lead{text-wrap:pretty}
@media(max-width:360px){#calc-h{font-size:1.35rem}}
.cx-fams+.cx-dds{margin-top:0}.cx-fams+.cx-dds>.cx-dd:first-child{border-top:0}
@media(max-width:959.98px) and (min-height:520.02px){.cx-mini:not(.on){visibility:hidden;transition:opacity .15s linear,visibility 0s .15s}.cx-mini.on{visibility:visible;transition:opacity .15s linear,visibility 0s}}

/* short answer box in the hero */
.cx-short{margin:24px 0 0;max-width:42rem;padding:16px 20px;border:1px solid rgba(255,255,255,.18);border-left:3px solid var(--gold);border-radius:12px;background:rgba(255,255,255,.06)}
.cx-short h2{margin:0 0 6px;font-size:clamp(1.1rem,2.4vw,1.3rem);line-height:1.3;color:#fff;max-width:none;letter-spacing:-.01em;text-wrap:balance}
.cx-short p{margin:0;font-size:clamp(.98rem,2vw,1.05rem);line-height:1.6;color:rgba(255,255,255,.88);text-wrap:pretty}
@media(max-width:480px){.cx-short{padding:14px 16px}}
@media print{.cx-short{display:none!important}}

/* print header/footer */
.cx-phead,.cx-pfoot{display:none}
@media print{
  .cx-phead{display:flex!important;align-items:center;justify-content:space-between;gap:16px;padding:0 0 10px;margin:0 0 16px;border-bottom:3px solid #b2984d}
  .cx-phead img{height:52px;width:auto}
  .cx-phead-r{text-align:right;line-height:1.3}
  .cx-phead-r strong{display:block;font-size:15pt;color:#0b0b0b}
  .cx-phead-r span{font-size:9pt;color:#555}
  .cx-pfoot{display:block!important;margin-top:18px;padding-top:10px;border-top:3px solid #b2984d;font-size:9pt;line-height:1.45;color:#111;break-inside:avoid}
  .cx-pfoot-t{font-weight:600;margin-bottom:8px}
  .cx-pfoot-g{display:flex;gap:18px;justify-content:space-between}
  .cx-pfoot-g>div{flex:1}
  .cx-pfoot b{color:#7a6526}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
@media print{
  body.cx-print-blank .cx-ws-tbl th,body.cx-print-blank .cx-ws-tbl td{padding:9px 10px 9px 0!important}
  body.cx-print-blank .cx-ws>h2,body.cx-print-blank .cx-ws>h3,body.cx-print-blank .cx-ws-intro{display:none!important}
  body.cx-print-blank .cx-phead{margin-bottom:10px}
  body.cx-print-blank .cx-pfoot{margin-top:12px}
}
@media print{
  .cx-ph-ws{display:none!important}
  body.cx-print-blank .cx-ph-ws{display:block!important}
  body.cx-print-blank .cx-ph-est{display:none!important}
  body:not(.cx-print-blank) .phero,body:not(.cx-print-blank) .cx-short,body:not(.cx-print-blank) .cx-col,body:not(.cx-print-blank) .cx-ctx,body:not(.cx-print-blank) .cx-next,body:not(.cx-print-blank) .cx-contact,body:not(.cx-print-blank) .cx-guide,body:not(.cx-print-blank) .cx-more,body:not(.cx-print-blank) footer.site,body:not(.cx-print-blank) .cx-sec>.wrap>h2,body:not(.cx-print-blank) .cx-sec>.wrap>p,body:not(.cx-print-blank) .cx-res-apply,body:not(.cx-print-blank) .cx-res-book,body:not(.cx-print-blank) .cx-res .btn{display:none!important}
  body:not(.cx-print-blank) .cx-grid{display:block!important}
  body:not(.cx-print-blank) .cx-sec{padding:0!important;margin:0!important}
  body:not(.cx-print-blank) .cx-res{position:static!important;width:auto!important;max-width:none!important}
  body:not(.cx-print-blank) .cx-card{padding:14px 18px!important;break-inside:avoid}
  body:not(.cx-print-blank) .cx-math{margin-top:12px!important}
  body:not(.cx-print-blank) .cx-tbl th,body:not(.cx-print-blank) .cx-tbl td{padding:5px 0!important}
  body:not(.cx-print-blank) .cx-side{display:block!important;margin-top:12px}
  body:not(.cx-print-blank) .cx-term{break-inside:avoid;padding:12px 16px!important}
  body:not(.cx-print-blank) .cx-disc{font-size:8pt!important;padding:10px 0 0!important}
  body:not(.cx-print-blank) .cx-disc h2{font-size:10pt!important;margin:0 0 4px!important}
}
@media print{
  body:not(.cx-print-blank) .cx-math .lead,body:not(.cx-print-blank) .cx-card .cx-fine{display:none!important}
  body:not(.cx-print-blank) .cx-term{min-height:0!important;height:auto!important}
}
@media print{
  .cx-pfoot-g{align-items:flex-start}
  .cx-pqr{flex:0 0 auto!important;text-align:center;margin-left:auto}
  .cx-pqr img{display:block;width:66px;height:66px;margin:0 auto 3px}
  .cx-pqr span{display:block;font-size:7pt;line-height:1.2;max-width:80px;color:#444}
}
@media print{
  .cx-pfoot{display:grid!important;grid-template-columns:1fr auto;column-gap:18px;align-items:start}
  .cx-pfoot-t,.cx-pfoot-g{grid-column:1}
  .cx-pqr{grid-column:2;grid-row:1 / span 2;margin:0!important}
  .cx-pqr img{width:84px!important;height:84px!important}
  .cx-pqr span{max-width:96px!important}
}
@media print{
  .cx-pfoot-g{display:grid!important;grid-template-columns:auto auto auto;column-gap:22px;justify-content:start}
  .cx-pfoot-g>div{white-space:nowrap;flex:none!important;width:auto!important}
}
@media print{
  .cx-pfoot{grid-template-columns:minmax(0,1fr) 100px!important}
  .cx-pqr{width:100px!important}
  .cx-pqr img{min-width:84px!important;max-width:none!important;aspect-ratio:1/1;object-fit:contain}
}
@media print{
  .cx-pfoot{column-gap:14px!important}
  .cx-pfoot-g{column-gap:18px!important}
  .cx-pfoot-g>div:first-child{white-space:normal!important;max-width:150px}
}
@media print{
  body:not(.cx-print-blank) .cx-tbl .net th,body:not(.cx-print-blank) .cx-tbl .net td{padding:10px 12px!important}
  body:not(.cx-print-blank) .cx-tbl .net th .m{padding-left:0!important;margin-left:0!important}
  body.cx-print-blank .cx-ws-tbl .net th{padding-left:12px!important}
  body.cx-print-blank .cx-ws-tbl .net td{padding-right:12px!important}
  body:not(.cx-print-blank) .cx-disc{margin-top:22px!important;padding-top:14px!important;border-top:1px solid #e6dfcc}
  body:not(.cx-print-blank) .cx-disc h2{font-size:12pt!important;margin:0 0 6px!important;line-height:1.3!important}
}
@media print{body:not(.cx-print-blank) .cx-disc{border-top:0!important;padding-top:0!important}}
@media print and (max-width:600px){
  .cx-pfoot{grid-template-columns:1fr!important}
  .cx-pfoot-g{grid-template-columns:1fr 1fr!important;row-gap:8px}
  .cx-pfoot-g>div{white-space:normal!important}
  .cx-pqr{grid-column:1!important;grid-row:auto!important;margin-top:10px!important;text-align:left}
  .cx-pqr img{margin:0 0 3px!important}
  .cx-phead,.cx-phead-r,.cx-phead-r strong{white-space:normal!important;min-width:0}
  .cx-phead{flex-wrap:wrap;gap:8px}
}
