/* One Pulse 55+ · v1.3.0
 * Additive styles: existing One Pulse pages, official-site images and theme remain intact.
 * System fonts only. No external font, analytics, image or JavaScript dependencies.
 */
.s55-hero{padding:70px 0 62px;background:radial-gradient(ellipse at 90% 7%,#dedbf055,transparent 55%),linear-gradient(120deg,#fcfbff,#f1f4fc);border-bottom:1px solid var(--line)}
.s55-hero-grid{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);gap:64px;align-items:center}
.s55-hero-copy,.s55-purpose-card{min-width:0}
.s55-hero h1{font:500 clamp(64px,6.6vw,96px)/1 var(--serif);letter-spacing:-.055em;margin:15px 0 20px;max-width:none;text-wrap:nowrap}
.s55-hero h1 span{color:var(--purple)}
.s55-subtitle{font:500 clamp(24px,2.4vw,34px)/1.25 var(--serif);color:#3d4772;letter-spacing:-.025em;margin:0 0 23px}
.s55-hero .lead{font:650 18px/1.65 var(--sans);color:var(--blue2);margin:0 0 15px}
.s55-hero-copy>p:not(.eyebrow):not(.s55-subtitle):not(.lead):not(.quiet-note):not(.s55-hero-phone){max-width:58ch;font-size:17px;color:#485570}
.s55-hero .hero-actions{margin-top:25px;gap:20px}
.s55-hero .quiet-note{font-size:12px;margin-top:12px;max-width:65ch}
.s55-hero-phone{font-size:15px;color:#465773;margin:18px 0 0}
.s55-hero-phone a{font-weight:750;display:inline-flex;align-items:center;min-height:44px}
.s55-purpose-card{position:relative;isolation:isolate;overflow:hidden;padding:39px 34px 29px;border-radius:26px;color:white;background:linear-gradient(135deg,#263f80,#4c3d79 64%,#663a83);box-shadow:0 18px 45px #263f8025}
.s55-purpose-card::before{content:"";z-index:-1;position:absolute;top:-120px;right:-150px;width:390px;height:390px;border:1px solid #ffffff28;border-radius:50%;box-shadow:0 0 0 32px #ffffff05,0 0 0 65px #ffffff05,0 0 0 98px #ffffff04}
.s55-purpose-card h2{font:500 clamp(38px,4.3vw,59px)/1.06 var(--serif);letter-spacing:-.032em;color:white;margin:36px 0 24px}
.s55-purpose-card h2 em{color:#e2d5f6;font-weight:400}
.s55-purpose-card>p{font-size:16px;color:#edeef8;max-width:34ch}
.s55-purpose-card .s55-card-label{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#dce4ff;font-weight:700;margin:0}
.s55-purpose-list{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:28px 0}
.s55-purpose-list span{border:1px solid #ffffff38;background:#ffffff0c;border-radius:9px;padding:12px;font-size:14px;font-weight:650}
.s55-purpose-card .s55-card-foot{border-top:1px solid #ffffff32;padding-top:19px;margin-bottom:0;font-size:13px;color:#e4def4;max-width:100%}
.s55-jumpnav{background:white;border-bottom:1px solid var(--line)}
.s55-jumpnav .container{display:flex;gap:4px 20px;flex-wrap:wrap;padding-block:13px}
.s55-jumpnav a{display:inline-flex;align-items:center;min-height:44px;padding:7px 0;font-size:14px;font-weight:700;text-decoration:none;border-bottom:2px solid transparent}
.s55-jumpnav a:hover{border-bottom-color:var(--purple);color:var(--purple)}
.page-55-plus main .section-head{max-width:1000px}
.page-55-plus .split-head{max-width:none}
.page-55-plus main .eyebrow{line-height:1.7}
.page-55-plus main .section-head p:not(.eyebrow){font-size:16px}
.page-55-plus main .public-boundary{font-size:16px;line-height:1.7}
.page-55-plus main .public-boundary p{margin:.55rem 0 0}
.page-55-plus .status{font-size:11px;max-width:100%;white-space:normal;line-height:1.5}
.page-55-plus .meta-pill{font-size:12px}
.s55-audience-grid .card,.s55-service-grid .card{padding:25px;min-width:0;background:white}
.s55-audience-grid .card{border-top:4px solid #d0c6e3}
.s55-audience-grid .card h3{font:500 28px/1.2 var(--serif);margin:12px 0}
.s55-audience-grid .card p:not(.eyebrow),.s55-service-grid .card p:not(.eyebrow){font-size:16px;line-height:1.75}
.s55-audience-grid .eyebrow,.s55-service-grid .eyebrow{font-size:10px;letter-spacing:.08em;line-height:1.7;margin:0 0 12px;color:#5c427f}
.s55-opening .public-boundary{margin-top:26px}
.s55-service-grid{gap:17px;align-items:stretch}
.s55-service-grid .card{display:flex;flex-direction:column;border-top:3px solid var(--blue)}
.s55-service-grid .card:nth-child(3n+2){border-top-color:var(--purple)}
.s55-service-grid .card h3{font:500 29px/1.17 var(--serif);letter-spacing:-.015em;margin:0 0 12px}
.s55-service-grid .card .link{font-size:15px;padding-top:15px;margin-top:auto;min-height:44px}
.s55-service-grid .s55-gated-card{background:#fffcf4;border-top-color:#a77622}
.s55-service-grid .s55-gated-card>div{margin-top:13px}
.s55-details{border:1px solid #cdd4e3;border-radius:13px;background:#fff;margin:25px 0 0;overflow:hidden}
.s55-details summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 22px;min-height:58px;font-size:17px;font-weight:650;color:var(--blue2);line-height:1.5}
.s55-details summary::-webkit-details-marker{display:none}
.s55-details summary::after{content:"+";font-size:26px;font-weight:400;color:var(--purple);flex:none}
.s55-details[open] summary::after{content:"−"}
.s55-details[open] summary{border-bottom:1px solid var(--line)}
.s55-details summary:hover{background:#f8f7fc}
.s55-details summary:focus-visible{outline-offset:-5px}
.s55-details-body{padding:4px 23px 22px;font-size:16px}
.s55-lane-list>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);gap:20px;padding:18px 0;border-top:1px solid var(--line)}
.s55-lane-list h3{font-size:18px;margin:0;line-height:1.45}
.s55-lane-list p{margin:0;color:var(--muted)}
.s55-four-ms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.s55-four-ms article{border-top:3px solid var(--blue);padding:22px 17px 20px;background:#f6f8fd;border-radius:0 0 13px 13px}
.s55-four-ms span{font-size:13px;font-weight:750;letter-spacing:.12em;color:var(--purple)}
.s55-four-ms h3{font:500 27px/1.2 var(--serif);margin:20px 0 10px}
.s55-four-ms p{font-size:16px;color:#4f5d76}
.s55-meaning{background:#f3eff9;border:1px solid #ded7e9;border-left:5px solid var(--purple);border-radius:0 16px 16px 0;padding:24px 28px;margin-top:20px;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr);gap:0 35px;align-items:center}
.s55-meaning .eyebrow{grid-column:1/-1;font-size:10px;margin:0 0 13px;color:var(--purple)}
.s55-meaning h3{font:500 33px/1.12 var(--serif);letter-spacing:-.025em;margin:0}
.s55-meaning p:last-child{font-size:16px;color:#4e5570;margin:0}
.s55-benefits{background:#f2f5fc;border-block:1px solid #e0e6f3}
.s55-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;list-style:none;padding:0;margin:26px 0 28px}
.s55-process li{background:white;border:1px solid #d7dfed;border-radius:13px;padding:20px}
.s55-process li>span{font-weight:750;font-size:12px;letter-spacing:.12em;color:var(--blue)}
.s55-process h3{font:500 25px var(--serif);margin:15px 0 8px}
.s55-process p{font-size:16px;color:var(--muted);margin:0}
.s55-benefits .text-link{min-height:44px;display:inline-flex;align-items:center}
.s55-legacy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.s55-legacy-grid>article,.s55-choice-card{background:white;border:1px solid #dfdae9;border-radius:14px;padding:24px}
.s55-legacy-grid h3{font:500 26px/1.2 var(--serif);margin:0 0 12px}
.s55-legacy-grid p{font-size:16px;color:var(--muted);margin:0}
.s55-choice-card{background:#443c72;border-color:#443c72}
.s55-choice-card h3{color:white}.s55-choice-card p{color:#f0ebfa}
.s55-curriculum{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 25px;list-style:none;padding:0;margin:0}
.s55-curriculum li{padding:24px 0;border-bottom:1px solid var(--line)}
.s55-curriculum span{font-size:11px;text-transform:uppercase;letter-spacing:.11em;font-weight:750;color:var(--purple)}
.s55-curriculum h3{font:500 24px/1.2 var(--serif);margin:10px 0}
.s55-curriculum p{color:var(--muted);font-size:16px;margin:0}
.s55-iop-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:55px;align-items:center}
.s55-iop-grid h2{font:500 clamp(32px,3.2vw,44px)/1.13 var(--serif);letter-spacing:-.026em;margin:0 0 24px}
.s55-iop-note{border:1px solid #e6d8b9;border-top:4px solid #a07834;background:#fffcf3;border-radius:0 0 15px 15px;padding:28px}
.s55-iop-note h3{font:500 29px/1.2 var(--serif);margin:0 0 16px}
.s55-iop-note .text-link{display:inline-block;padding-block:10px}
.s55-first-steps{counter-reset:steps;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px}
.s55-first-steps li{counter-increment:steps;padding:0 0 20px 55px;position:relative;border-bottom:1px solid var(--line)}
.s55-first-steps li::before{content:counter(steps);position:absolute;left:0;top:2px;width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:var(--blue2);color:#fff;font-weight:650;font-size:14px}
.s55-first-steps h3{font:500 26px/1.22 var(--serif);margin:0 0 12px}
.s55-first-steps p{font-size:16px;color:var(--muted);margin:0}
.s55-access-note{padding:24px 0 0;border-top:2px solid #cabfdd;margin-top:24px;font-size:16px;max-width:90ch}
.s55-faq-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:60px;align-items:start}
.s55-faq-list .s55-details{margin:0 0 12px}
.s55-faq-list .s55-details-body p{font-size:16px;color:#4f5c74}
.s55-contact-section{background:linear-gradient(120deg,#f0edf7,#f0f4fd);border-top:1px solid #ded9eb}
.s55-contact-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:52px;align-items:center}
.s55-contact-grid h2{font:500 clamp(34px,4vw,52px)/1.1 var(--serif);letter-spacing:-.03em;margin:0 0 24px}
.s55-contact-grid>div>p:not(.eyebrow){font-size:17px;color:#4d5b74}
.s55-contact-box{padding:30px;border:1px solid #d5d8e8;border-radius:18px;background:white}
.s55-contact-box .contact-list dt{font-size:14px}
.s55-contact-box .contact-list dd{font-size:20px;margin-left:0;overflow-wrap:anywhere}
.s55-contact-box .contact-list a{display:inline-flex;align-items:center;min-height:44px;font-weight:750}
.s55-contact-box .small{font-size:14px;line-height:1.75;color:var(--muted)}
.s55-source-note{font-size:12px;color:#52617a;border-top:1px solid #d9dcea;margin:34px 0 0;padding-top:18px}
/* Crosslinks on the pre-existing website. */
.s55-mini-status{margin-top:18px}.s55-catalog-section{background:#f6f5fb}
.s55-catalog-feature{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:52px;align-items:center;padding:40px;background:white;border:1px solid #dedbea;border-radius:24px}
.s55-catalog-feature h2{font:500 clamp(40px,4.5vw,62px)/1.03 var(--serif);letter-spacing:-.04em;margin:0;color:var(--purple)}
.s55-catalog-subtitle{font:500 27px/1.25 var(--serif);color:#475371}
.s55-catalog-feature .eyebrow{font-size:11px}
.s55-catalog-feature>div>p:not(.eyebrow):not(.s55-catalog-subtitle){font-size:16px;color:var(--muted)}
.s55-catalog-options{display:grid;gap:16px}.s55-catalog-options article{padding:0 0 18px 18px;border-left:3px solid #c4b3d9;border-bottom:1px solid var(--line)}
.s55-catalog-options article:last-child{border-bottom:0;padding-bottom:0}
.s55-catalog-options h3{font:500 24px/1.2 var(--serif);margin:8px 0}
.s55-catalog-options .eyebrow{font-size:9px;line-height:1.7;margin:0}
.s55-catalog-options p:not(.eyebrow){font-size:15px;margin:0;color:var(--muted)}
.s55-catalog-options a{font-size:14px;display:inline-flex;align-items:center;min-height:44px;font-weight:650}
.s55-related-card{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,.8fr);gap:38px;align-items:center;border:1px solid #ddd6e8;border-left:5px solid var(--purple);background:#f8f6fc;border-radius:0 18px 18px 0;padding:32px}
.s55-related-card h2{font:500 32px/1.2 var(--serif);margin:0 0 14px}
.s55-related-card p:not(.eyebrow){font-size:16px;color:var(--muted)}
.s55-related-actions{display:flex;flex-direction:column;align-items:flex-start;gap:20px}
.s55-inline-link{border-top:1px solid var(--line);padding-top:17px}
.s55-inline-link a{display:inline-flex;align-items:center;min-height:44px}
/* Make the existing Larger text control effective across every new reading panel. */
body.large-text.page-55-plus main p:not(.eyebrow):not(.s55-subtitle):not(.s55-card-label),body.large-text.page-55-plus .s55-details summary{font-size:19px}
body.large-text.page-55-plus .s55-hero .lead{font-size:21px}
body.large-text.page-55-plus .s55-purpose-list span,body.large-text.page-55-plus .s55-jumpnav a{font-size:17px}
@media(max-width:1100px){.s55-hero-grid{gap:32px}.s55-hero h1{font-size:clamp(54px,7.1vw,80px)}.s55-purpose-card{padding:30px}.s55-catalog-feature{gap:30px;padding:32px}.s55-contact-grid,.s55-iop-grid{gap:34px}}
@media(max-width:900px){.s55-hero-grid{grid-template-columns:1fr 1fr;gap:24px}.s55-hero h1{font-size:60px;text-wrap:balance}.s55-purpose-card h2{font-size:43px}.s55-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.s55-process,.s55-four-ms{grid-template-columns:repeat(2,minmax(0,1fr))}.s55-faq-grid{grid-template-columns:1fr;gap:4px}.s55-curriculum{grid-template-columns:repeat(2,minmax(0,1fr))}.s55-catalog-feature{grid-template-columns:1fr}.s55-catalog-options{grid-template-columns:repeat(3,minmax(0,1fr))}.s55-catalog-options article{border-bottom:0}.s55-related-card{grid-template-columns:1fr}.s55-related-actions{flex-direction:row;flex-wrap:wrap;align-items:center}}
@media(max-width:760px){.s55-hero{padding:42px 0}.s55-hero-grid{grid-template-columns:1fr;gap:32px}.s55-hero h1{font-size:clamp(52px,11vw,78px);white-space:nowrap}.s55-subtitle{font-size:29px}.s55-hero-copy>p:not(.eyebrow):not(.s55-subtitle):not(.lead):not(.quiet-note):not(.s55-hero-phone){font-size:17px}.s55-hero .lead{font-size:18px}.s55-hero .hero-actions{gap:14px}.s55-hero .hero-actions .text-link{font-size:14px}.s55-hero .eyebrow{font-size:11px}.s55-purpose-card h2{font-size:48px;margin-top:24px}.s55-purpose-card>p{max-width:50ch}.s55-jumpnav .container{gap:0 20px}.s55-jumpnav a{font-size:13px}.s55-audience-grid,.s55-service-grid{grid-template-columns:1fr}.s55-audience-grid .card,.s55-service-grid .card{padding:24px}.s55-service-grid .eyebrow{font-size:11px}.s55-meaning,.s55-iop-grid,.s55-contact-grid{grid-template-columns:1fr;gap:20px}.s55-meaning{padding:24px}.s55-meaning .eyebrow{grid-column:auto;margin:0}.s55-meaning h3{font-size:29px}.s55-first-steps{grid-template-columns:1fr;gap:22px}.s55-lane-list>div{grid-template-columns:1fr;gap:10px}.s55-details summary{padding:18px;font-size:16px}.s55-details-body{padding:3px 19px 20px}.s55-catalog-options{grid-template-columns:1fr}.s55-catalog-feature{padding:26px}.s55-catalog-feature h2{font-size:48px}.s55-contact-box{padding:22px}.s55-contact-box .contact-list dd{font-size:18px}.s55-contact-grid h2{font-size:39px}.s55-related-card{padding:25px}.s55-related-card h2{font-size:29px}}
@media(max-width:520px){.s55-four-ms,.s55-process,.s55-legacy-grid,.s55-curriculum{grid-template-columns:1fr}.s55-process li{display:grid;grid-template-columns:31px minmax(0,1fr);column-gap:14px;padding:18px}.s55-process h3{font-size:25px;margin:0 0 6px}.s55-process li>span{margin-top:5px}.s55-process p{grid-column:2}.s55-hero .page-meta{gap:8px}.s55-hero .meta-pill{font-size:11px}.s55-hero .btn{width:100%;font-size:15px}.s55-hero .quiet-note{font-size:12px}.s55-hero h1{font-size:clamp(48px,12.7vw,66px)}.s55-hero .s55-subtitle{font-size:27px}.s55-purpose-card{padding:27px}.s55-purpose-card h2{font-size:46px}.s55-catalog-feature{padding:23px}.s55-related-card .btn{font-size:14px;width:100%}.s55-related-actions{align-items:stretch;flex-direction:column}.s55-related-actions .status{align-self:flex-start}}
@media print{.s55-jumpnav{display:none}.s55-hero{padding:0!important;background:white!important}.s55-hero-grid,.s55-contact-grid{grid-template-columns:1fr}.s55-purpose-card{background:#fff!important;color:#111;border:1px solid #aaa;box-shadow:none;break-inside:avoid}.s55-purpose-card h2,.s55-purpose-card p,.s55-purpose-card em{color:#111!important}.s55-purpose-card::before{display:none}.s55-purpose-list span{border-color:#aaa}.s55-hero-phone a{color:#111}.page-55-plus .section{break-before:auto}.s55-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.s55-four-ms,.s55-process{grid-template-columns:repeat(2,minmax(0,1fr))}.s55-first-steps,.s55-curriculum{grid-template-columns:repeat(2,minmax(0,1fr))}.s55-contact-section,.s55-benefits{background:white!important}.s55-faq-grid,.s55-iop-grid,.s55-meaning,.s55-lane-list>div{grid-template-columns:1fr}.s55-details{break-inside:auto}.s55-details summary::after{display:none}.s55-choice-card{background:#fff;border:1px solid #aaa}.s55-choice-card h3,.s55-choice-card p{color:#111}.s55-source-note{font-size:9pt}}
/* The reading control takes precedence over the mobile hero's narrower selectors. */
body.large-text.page-55-plus #main p:not(.eyebrow):not(.s55-subtitle):not(.s55-card-label){font-size:19px}
body.large-text.page-55-plus #main .s55-hero .lead{font-size:21px}
