:root{
  --navy:#061f3a;--navy-2:#0a3158;--gold:#d6a744;--gold-light:#e8c36f;
  --cream:#f6f2eb;--white:#fff;--ink:#10263d;--muted:#607080;
  --header:92px;--shadow:0 18px 45px rgba(2,22,42,.18);--radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 16px)}
body{margin:0;font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.65}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2{font-family:"Playfair Display",Georgia,serif;line-height:1.03;margin:0 0 24px}
h1{font-size:clamp(3.5rem,6.4vw,7rem);letter-spacing:-.045em}
h2{font-size:clamp(2.35rem,4vw,4.5rem);letter-spacing:-.028em}
p{margin:0 0 20px}
.container{width:min(1180px,calc(100% - 48px));margin:auto}
.narrow{max-width:850px}.center{text-align:center}.section{padding:110px 0}.soft{background:var(--cream)}
.navy{background:var(--navy);color:#fff}.section-label,.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;color:var(--gold);margin-bottom:20px}.gold{color:var(--gold-light)}
.skip-link{position:fixed;left:14px;top:-70px;background:#fff;color:#000;padding:10px 14px;z-index:2000}.skip-link:focus{top:14px}
.site-header{position:sticky;top:0;z-index:1000;height:var(--header);background:rgba(5,29,54,.985);box-shadow:0 1px 0 rgba(255,255,255,.08)}
.header-inner{width:min(1450px,calc(100% - 48px));height:100%;margin:auto;display:flex;align-items:center;gap:30px}
.brand{display:flex;align-items:center;gap:15px;text-decoration:none;color:#fff;min-width:max-content}
.brand-mark{width:52px;height:52px;border:1.5px solid var(--gold);border-radius:50%;display:grid;place-items:center;position:relative;flex:0 0 auto}
.brand-mark span,.brand-mark span:before{display:block;background:var(--gold);width:16px;height:16px;transform:rotate(45deg);border-radius:1px}
.brand-mark span:before{content:"";transform:rotate(90deg)}
.brand-copy{display:flex;flex-direction:column}.brand-copy strong{font-family:"Playfair Display",Georgia,serif;font-size:1.38rem;font-weight:600;line-height:1.1}.brand-copy small{color:var(--gold-light);text-transform:uppercase;letter-spacing:.19em;font-size:.62rem;margin-top:7px}
.primary-nav{margin-left:auto;display:flex;align-items:center;gap:28px;height:100%}
.primary-nav a{position:relative;color:#fff;text-decoration:none;text-transform:uppercase;letter-spacing:.07em;font-size:.77rem;font-weight:600;padding:35px 0 29px;white-space:nowrap}
.primary-nav a::after{content:"";position:absolute;left:50%;right:50%;bottom:22px;height:2px;background:var(--gold);transition:left .22s ease,right .22s ease}
.primary-nav a:hover::after,.primary-nav a:focus-visible::after,.primary-nav a.active::after{left:0;right:0}
.header-cta{background:var(--gold-light);color:var(--navy);padding:15px 22px;text-decoration:none;text-transform:uppercase;font-weight:800;letter-spacing:.06em;border-radius:6px;font-size:.79rem;white-space:nowrap}
.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:27px;height:2px;background:#fff;margin:6px}
.hero{position:relative;min-height:calc(100vh - var(--header));height:min(820px,calc(100vh - var(--header)));overflow:hidden;display:flex;align-items:center;background:#e6edf1}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,250,242,.96) 0%,rgba(255,250,242,.83) 27%,rgba(255,250,242,.12) 53%,rgba(0,0,0,0) 72%)}
.hero-inner{position:relative;z-index:2;width:min(1450px,calc(100% - 48px));margin:auto}.hero-content{max-width:620px}.hero-copy{font-size:1.14rem;max-width:560px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;text-decoration:none;padding:15px 24px;border-radius:5px;text-transform:uppercase;letter-spacing:.06em;font-weight:750;font-size:.8rem;border:1px solid transparent;cursor:pointer}
.button-primary{background:var(--navy);color:#fff}.button-primary:hover{background:var(--navy-2)}
.button-ghost{border-color:var(--navy);color:var(--navy);background:rgba(255,255,255,.7)}
.split{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:center}
.info-card{background:#fff;border:1px solid rgba(6,31,58,.12);padding:42px;border-radius:var(--radius);box-shadow:var(--shadow)}
.info-icon{display:block;font-size:2rem;color:var(--gold);margin-bottom:18px}.info-card strong{font-family:"Playfair Display";font-size:2rem}.info-card ul{padding-left:18px;color:var(--muted)}
.story-grid{display:grid;grid-template-columns:360px 1fr;gap:85px;align-items:center}
.portrait-placeholder{aspect-ratio:4/5;background:linear-gradient(145deg,var(--navy),#345a78);border-radius:var(--radius);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;box-shadow:var(--shadow)}
.portrait-placeholder span{font-family:"Playfair Display";font-size:5rem;color:var(--gold-light)}.portrait-placeholder small{text-transform:uppercase;letter-spacing:.12em;opacity:.75;text-align:center;padding:0 20px}
blockquote{margin:38px 0 0;border-left:3px solid var(--gold);padding-left:28px;font-family:"Playfair Display";font-size:1.55rem;color:var(--navy)}
.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:46px}.impact-grid article{border:1px solid rgba(255,255,255,.15);border-radius:14px;padding:34px}.impact-number{display:block;color:rgba(255,255,255,.35);font-size:.78rem;letter-spacing:.16em}.impact-grid strong{display:block;color:var(--gold-light);font-family:"Playfair Display";font-size:2rem;margin:6px 0 10px}.impact-grid p{color:#dce7ef;margin:0}
.site-footer{background:#03162a;color:#fff;padding:42px 0}.footer-inner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:45px}.footer-inner>p{margin:0}.copyright{opacity:.65;font-size:.8rem}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
.checkout-page{min-height:100vh;background:var(--cream);display:grid;place-items:center;padding:30px}.checkout-card{width:min(650px,100%);background:#fff;padding:55px;border-radius:var(--radius);box-shadow:var(--shadow)}.checkout-card h1{font-size:clamp(3rem,7vw,4.4rem)}.back-link{text-decoration:none;color:var(--navy);font-weight:700}.checkout-options{display:grid;gap:14px;margin:30px 0}.payment-button{width:100%;background:var(--navy);color:#fff}.payment-button.paypal{background:#123f70}.small-note{font-size:.9rem;color:var(--muted)}.disclosure{font-size:.82rem;color:var(--muted);border-top:1px solid #ddd;padding-top:20px;margin-top:24px}code{background:#f2f2f2;padding:2px 5px;border-radius:4px}
@media(max-width:1180px){:root{--header:82px}.primary-nav{position:fixed;inset:var(--header) 0 auto 0;background:var(--navy);padding:22px 28px;display:none;flex-direction:column;align-items:stretch;gap:0;height:auto;box-shadow:var(--shadow)}.primary-nav.open{display:flex}.primary-nav a{padding:15px;border-bottom:1px solid rgba(255,255,255,.1)}.primary-nav a::after{display:none}.primary-nav a.active{color:var(--gold-light);border-left:3px solid var(--gold);padding-left:18px}.menu-toggle{display:block;margin-left:auto}.header-cta{display:none}.hero-shade{background:linear-gradient(90deg,rgba(255,250,242,.96) 0%,rgba(255,250,242,.82) 42%,rgba(255,250,242,.14) 70%)}.hero-content{max-width:53%}.story-grid{grid-template-columns:300px 1fr;gap:50px}}
@media(max-width:760px){:root{--header:76px}.header-inner,.hero-inner,.container{width:calc(100% - 32px)}.brand-mark{width:43px;height:43px}.brand-copy strong{font-size:1.08rem}.brand-copy small{font-size:.51rem;letter-spacing:.1em}.section{padding:78px 0}.hero{height:auto;min-height:0;display:block;background:var(--cream)}.hero-image{position:relative;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center}.hero-shade{display:none}.hero-inner{padding:50px 0 64px}.hero-content{max-width:none}h1{font-size:clamp(3.25rem,17vw,5rem)}.hero-copy{font-size:1rem}.hero-actions .button{width:100%}.split,.story-grid{grid-template-columns:1fr;gap:42px}.portrait-placeholder{max-width:340px;margin:auto}.impact-grid{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr;text-align:center}.footer-brand{justify-content:center}.checkout-card{padding:34px 24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}.reveal{opacity:1;transform:none}}
.timeline-item.timeline-active .timeline-marker{background:var(--gold);color:var(--navy);transform:scale(1.06);transition:transform .25s ease,background .25s ease,color .25s ease}
/* Milestone 3: eBook experience */
.lead{font-size:1.16rem;color:var(--muted)}
.ebook-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.ebook-title{font-size:clamp(3.4rem,5.5vw,6.2rem)}
.device-stage{position:relative;min-height:580px;display:grid;place-items:center}.tablet-device{width:min(500px,78%);aspect-ratio:4/3;background:#101820;border:12px solid #18242d;border-radius:24px;padding:12px;box-shadow:0 30px 60px rgba(1,20,38,.28);overflow:hidden}.tablet-device img{width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:8px}.phone-device{position:absolute;width:150px;aspect-ratio:9/19.5;right:4%;bottom:4%;background:#111b24;border:8px solid #111b24;border-radius:28px;padding:5px;box-shadow:0 24px 45px rgba(1,20,38,.32);overflow:hidden}.phone-device:before{content:"";position:absolute;width:48px;height:10px;border-radius:0 0 10px 10px;background:#111b24;left:50%;top:0;transform:translateX(-50%);z-index:2}.phone-device img{width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:20px}.price-line{display:flex;align-items:baseline;gap:10px;margin:30px 0}.price-line strong{font-family:"Playfair Display";font-size:2.7rem;color:var(--navy)}.price-line span{color:var(--muted);font-weight:600}
.preview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:44px}.preview-card{border:1px solid rgba(6,31,58,.14);background:#fff;padding:0;border-radius:12px;overflow:hidden;text-align:left;cursor:pointer;box-shadow:0 12px 30px rgba(2,22,42,.08);transition:transform .2s ease,box-shadow .2s ease}.preview-card:hover,.preview-card:focus-visible{transform:translateY(-5px);box-shadow:var(--shadow)}.preview-card img{aspect-ratio:3/4;object-fit:cover;object-position:top}.preview-card span{display:block;padding:16px;font-weight:700;color:var(--navy)}
.purchase-grid{display:grid;grid-template-columns:1fr .7fr;gap:80px;align-items:center}.payment-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.payment-choice{background:var(--gold-light);color:var(--navy)}.paypal-choice{background:#fff;color:#123f70}.payment-disabled{opacity:.78}.order-summary{background:#fff;color:var(--ink);padding:38px;border-radius:16px}.order-summary h3{font-family:"Playfair Display";font-size:2rem;margin-top:0}.order-summary dl{margin:0}.order-summary dl>div{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #ddd}.order-summary .order-total{font-size:1.3rem;font-weight:800;border-bottom:0}.order-summary p{font-size:.82rem;color:var(--muted);margin-top:20px}
.preview-modal{width:min(900px,92vw);height:min(90vh,1000px);padding:50px 20px 20px;border:0;border-radius:14px;background:#fff;box-shadow:0 40px 90px rgba(0,0,0,.4)}.preview-modal::backdrop{background:rgba(3,22,42,.82)}.preview-modal img{width:100%;height:100%;object-fit:contain}.preview-modal button{position:absolute;right:15px;top:8px;border:0;background:none;font-size:2rem;cursor:pointer;color:var(--navy)}.thank-you-mark{display:grid;place-items:center;width:74px;height:74px;margin:0 auto 25px;border-radius:50%;background:var(--gold-light);color:var(--navy);font-size:2.4rem;font-weight:800}
@media(max-width:900px){.ebook-hero-grid,.purchase-grid{grid-template-columns:1fr;gap:45px}.device-stage{min-height:450px}.preview-grid{grid-template-columns:repeat(2,1fr)}.purchase-grid{align-items:start}}
@media(max-width:560px){.device-stage{min-height:340px}.tablet-device{width:88%;border-width:8px;padding:7px;border-radius:16px}.phone-device{width:92px;border-width:5px;border-radius:20px;right:0}.preview-grid{grid-template-columns:1fr 1fr;gap:12px}.preview-card span{font-size:.78rem;padding:11px}.payment-actions .button{width:100%}.ebook-title{font-size:clamp(3rem,15vw,4.5rem)}}


/* Milestone 3.5: Power of 30 and Nurse Angels */
.page-hero{padding:110px 0 86px;background:linear-gradient(135deg,var(--navy),#0d4778);color:#fff}
.page-hero h1{font-size:clamp(3.3rem,6vw,6.4rem)}
.page-hero .lead{color:#dce8f2;max-width:760px}
.page-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.growth-visual{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.growth-node{aspect-ratio:1;border-radius:50%;display:grid;place-items:center;text-align:center;background:rgba(255,255,255,.08);border:1px solid rgba(232,195,111,.75);color:var(--gold-light);font-weight:800;font-size:clamp(1rem,2vw,1.55rem);box-shadow:0 14px 30px rgba(0,0,0,.12)}
.growth-node small{display:block;color:#fff;font-size:.6rem;letter-spacing:.08em;text-transform:uppercase}
.stat-card{background:var(--cream);border:1px solid rgba(6,31,58,.12);border-radius:18px;padding:38px;text-align:center}
.stat-card strong{display:block;font-family:"Playfair Display";font-size:clamp(4rem,8vw,7rem);line-height:.9;color:var(--navy)}
.three-column{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.feature-card{padding:34px;border:1px solid rgba(6,31,58,.13);border-radius:16px;background:#fff}
.feature-card h3{font-family:"Playfair Display";font-size:1.7rem;margin:0 0 12px}
.nurse-hero{position:relative;min-height:640px;display:flex;align-items:center;background:var(--navy);overflow:hidden;color:#fff}
.nurse-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.nurse-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,22,42,.98) 0%,rgba(3,22,42,.86) 42%,rgba(3,22,42,.2) 75%)}
.nurse-hero .container{position:relative;z-index:2}
.nurse-hero-copy{max-width:650px}
.nurse-hero h1{font-size:clamp(3.3rem,6vw,6.5rem)}
.nurse-hero .lead{color:#dce8f2}
.tribute-list{display:grid;gap:28px}
.tribute-block{padding:34px 38px;border-left:4px solid var(--gold);background:var(--cream);border-radius:0 14px 14px 0}
.tribute-block h2{font-size:clamp(2rem,3vw,3rem);color:var(--navy);margin-bottom:15px}
.tribute-closing{padding:110px 0;background:var(--navy);color:#fff;text-align:center}
.tribute-closing h2{color:var(--gold-light)}
.fee-row dt,.fee-row dd{color:#6b5630}
.nav-more{position:relative}
@media(max-width:1180px){.page-hero-grid{grid-template-columns:1fr}.growth-visual{max-width:650px}.three-column{grid-template-columns:1fr}.nurse-hero{min-height:560px}.nurse-hero:after{background:linear-gradient(90deg,rgba(3,22,42,.97),rgba(3,22,42,.65))}}
@media(max-width:760px){.growth-visual{grid-template-columns:repeat(2,1fr)}.nurse-hero{min-height:0;padding:90px 0}.nurse-hero img{opacity:.28}.tribute-block{padding:26px 22px}}


/* Milestone 4 refinements */
.scroll-indicator{position:absolute;left:50%;bottom:22px;z-index:8;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:7px;color:inherit;text-decoration:none;text-transform:uppercase;letter-spacing:.12em;font-size:.61rem;font-weight:700}
.scroll-mouse{width:25px;height:39px;border:1.5px solid currentColor;border-radius:15px;display:flex;justify-content:center;padding-top:7px}
.scroll-mouse span{width:3px;height:7px;border-radius:3px;background:currentColor;animation:scroll-dot 1.7s ease-in-out infinite}
@keyframes scroll-dot{0%{transform:translateY(0);opacity:0}25%{opacity:1}75%{opacity:1}100%{transform:translateY(14px);opacity:0}}
.page-hero,.letter-hero,.impact-hero,.nurse-hero{position:relative}
.ripple-visual{position:relative;width:min(620px,85vw);aspect-ratio:1;margin:auto}
.ripple-ring,.ripple-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;display:grid;place-items:center}
.ripple-ring{border:1px solid rgba(232,195,111,.65);background:rgba(255,255,255,.025);box-shadow:inset 0 0 35px rgba(232,195,111,.04)}
.ripple-ring span{position:absolute;right:4%;top:14%;color:var(--gold-light);font-weight:800;background:var(--navy);padding:3px 8px;border-radius:12px}
.ring-5{width:100%;height:100%;animation:ripple-pulse 5s ease-in-out infinite}
.ring-4{width:80%;height:80%;animation:ripple-pulse 5s .25s ease-in-out infinite}
.ring-3{width:61%;height:61%;animation:ripple-pulse 5s .5s ease-in-out infinite}
.ring-2{width:43%;height:43%;animation:ripple-pulse 5s .75s ease-in-out infinite}
.ring-1{width:26%;height:26%;animation:ripple-pulse 5s 1s ease-in-out infinite}
.ripple-core{width:105px;height:105px;background:var(--gold-light);color:var(--navy);font-weight:900;box-shadow:0 0 45px rgba(232,195,111,.28);z-index:3}
.ripple-core small{display:block;font-size:.55rem;text-transform:uppercase;letter-spacing:.08em;text-align:center;padding:0 8px}
@keyframes ripple-pulse{0%,100%{opacity:.65;transform:translate(-50%,-50%) scale(.985)}50%{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.letter-hero{min-height:620px;padding:120px 0;background:linear-gradient(135deg,var(--navy),#0d4778);color:#fff;display:flex;align-items:center}
.letter-hero-grid{display:grid;grid-template-columns:1fr .62fr;gap:70px;align-items:center}
.letter-hero h1,.impact-hero h1{font-size:clamp(4rem,7vw,7rem)}
.letter-hero .lead,.impact-hero .lead{color:#dce8f2}
.signature-card{background:rgba(255,255,255,.08);border:1px solid rgba(232,195,111,.48);padding:45px;border-radius:18px}
.signature-card p{font-family:"Playfair Display";font-size:2rem;line-height:1.25}
.signature-card strong{color:var(--gold-light)}
.letter-layout{display:grid;grid-template-columns:250px 1fr;gap:75px;align-items:start}
.letter-index{position:sticky;top:calc(var(--header) + 28px);display:grid;border-left:1px solid #d9dfe4}
.letter-index a{padding:10px 0 10px 20px;text-decoration:none;color:var(--muted);font-size:.88rem}
.letter-index a:hover{color:var(--navy)}
.letter-content{min-width:0}.letter-chapter{padding:0 0 85px}.letter-chapter h2{font-size:clamp(2.5rem,4.5vw,4.8rem)}
.pull-quote{padding:55px 0 100px}.pull-quote blockquote{font-size:clamp(2rem,4vw,4rem)}
.comparison-cards{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:35px 0}
.comparison-cards article{padding:30px;background:var(--cream);border-radius:14px;border:1px solid rgba(6,31,58,.12)}
.comparison-cards span,.comparison-cards strong,.comparison-cards em{display:block}.comparison-cards strong{font-size:1.2rem}.comparison-cards em{font-family:"Playfair Display";font-size:2rem;color:var(--navy);font-style:normal;margin-top:8px}
.financial-note{padding:20px 24px;background:#fff7df;border-left:4px solid var(--gold);font-size:.9rem}
.father-quote{padding:65px;background:var(--navy);color:#fff;border-radius:18px}.father-quote h2{color:var(--gold-light)}
.yes-you-can{font-family:"Playfair Display";font-size:clamp(2.7rem,6vw,6rem);line-height:1.05;margin:45px 0;color:var(--navy)}.yes-you-can strong{color:var(--gold)}
.closing-question{font-family:"Playfair Display";font-size:1.8rem}
.impact-hero{min-height:580px;padding:120px 0;background:radial-gradient(circle at 50% 15%,#1b5c89,var(--navy) 65%);color:#fff;display:flex;align-items:center}
.impact-dashboard{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:45px}
.impact-dashboard article{padding:35px 24px;border:1px solid rgba(6,31,58,.13);border-radius:15px;text-align:center;background:#fff}
.impact-dashboard strong{display:block;font-family:"Playfair Display";font-size:3.4rem;color:var(--navy)}
.impact-dashboard span{color:var(--muted);font-size:.85rem}
.impact-flow{display:grid;gap:12px;text-align:center}.impact-flow div{padding:18px;background:#fff;border:1px solid rgba(6,31,58,.13);border-radius:10px}.impact-flow span{color:var(--gold);font-weight:900}
.impact-trust-card{padding:32px;border:1px solid rgba(255,255,255,.16);border-radius:15px}.impact-trust-card h3{font-family:"Playfair Display";font-size:1.7rem;color:var(--gold-light)}.impact-trust-card p{color:#dce8f2}
.voices-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:40px}.voices-grid article{padding:32px;background:var(--cream);border-radius:15px}.voices-grid p{font-family:"Playfair Display";font-size:1.35rem}.voices-grid span{font-size:.78rem;color:var(--muted)}
.report-placeholder{padding:45px;background:var(--navy);color:#fff;border-radius:16px;display:grid;gap:8px}.report-placeholder span{color:var(--gold-light);font-size:3rem;font-family:"Playfair Display"}.report-placeholder strong{font-size:1.25rem}.report-placeholder small{opacity:.72}
.letter-home-teaser{background:#fff}
@media(max-width:1180px){.letter-hero-grid,.letter-layout{grid-template-columns:1fr}.letter-index{position:static;grid-template-columns:repeat(3,1fr);border-left:0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:12px 0}.letter-index a{padding:8px}.impact-dashboard{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.scroll-indicator{display:none}.letter-hero{min-height:0;padding:90px 0}.letter-index{grid-template-columns:1fr 1fr}.comparison-cards,.impact-dashboard,.voices-grid{grid-template-columns:1fr}.father-quote{padding:34px 25px}.ripple-ring span{font-size:.7rem}.ripple-core{width:82px;height:82px}.impact-hero{min-height:0;padding:90px 0}}
@media(prefers-reduced-motion:reduce){.scroll-mouse span,.ripple-ring{animation:none}}


/* Milestone 4.1 — compact dropdown navigation */
.primary-nav{gap:clamp(14px,1.4vw,26px)}
.primary-nav>a,
.nav-dropdown-toggle{
  position:relative;
  color:#fff;
  background:none;
  border:0;
  padding:10px 0 12px;
  font:inherit;
  font-size:.78rem;
  font-weight:600;
  letter-spacing:.035em;
  text-transform:uppercase;
  cursor:pointer;
  white-space:nowrap;
}
.primary-nav>a::after,
.nav-dropdown-toggle::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:4px;
  height:2px;
  background:var(--gold);
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .22s ease;
}
.primary-nav>a:hover::after,
.primary-nav>a.active::after,
.nav-dropdown:hover>.nav-dropdown-toggle::after,
.nav-dropdown.active>.nav-dropdown-toggle::after,
.nav-dropdown.open>.nav-dropdown-toggle::after{
  transform:scaleX(1);
}
.nav-dropdown{position:relative;display:flex;align-items:center}
.nav-dropdown-toggle span{margin-left:4px;font-size:.7rem}
.nav-dropdown-menu{
  position:absolute;
  top:calc(100% + 4px);
  left:50%;
  min-width:215px;
  transform:translate(-50%,10px);
  padding:10px;
  border-radius:12px;
  background:#fff;
  box-shadow:0 18px 45px rgba(4,22,40,.22);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease, transform .18s ease, visibility .18s ease;
  z-index:60;
}
.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown.open .nav-dropdown-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}
.nav-dropdown-menu a{
  display:block;
  padding:11px 13px;
  border-radius:8px;
  color:var(--navy);
  text-decoration:none;
  font-size:.84rem;
  font-weight:600;
}
.nav-dropdown-menu a:hover,
.nav-dropdown-menu a.active{
  background:var(--cream);
  color:var(--navy);
}

/* Nurse Angels hero: real visual behind editable HTML text */
.nurse-hero{
  min-height:690px;
  isolation:isolate;
  background:var(--navy);
}
.nurse-hero img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:68% center;
  z-index:-3;
}
.nurse-hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(3,22,42,.97) 0%,rgba(3,22,42,.90) 36%,rgba(3,22,42,.46) 63%,rgba(3,22,42,.10) 100%),
    linear-gradient(0deg,rgba(3,22,42,.28),rgba(3,22,42,.05));
  z-index:-2;
}
.nurse-hero .container{
  width:100%;
}
.nurse-hero-copy{
  max-width:650px;
}
.nurse-hero-copy h1{
  color:#fff;
  text-shadow:0 3px 20px rgba(0,0,0,.28);
}
.nurse-hero-copy h2{
  color:var(--gold-light);
  margin-top:24px;
  font-size:clamp(2rem,3.4vw,3.5rem);
}
.nurse-hero-copy .lead{
  color:#eef4f8;
}

@media(max-width:1180px){
  .primary-nav{gap:15px}
  .primary-nav>a,.nav-dropdown-toggle{font-size:.71rem}
}
@media(max-width:980px){
  .nav-dropdown{
    display:block;
    width:100%;
  }
  .nav-dropdown-toggle{
    width:100%;
    text-align:left;
    padding:14px 0;
  }
  .nav-dropdown-menu{
    position:static;
    transform:none;
    min-width:0;
    padding:0 0 4px 14px;
    box-shadow:none;
    background:transparent;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    display:none;
  }
  .nav-dropdown.open .nav-dropdown-menu{display:block}
  .nav-dropdown-menu a{
    color:#fff;
    padding:10px 0;
    background:transparent;
  }
  .nav-dropdown-menu a:hover,
  .nav-dropdown-menu a.active{
    color:var(--gold-light);
    background:transparent;
  }
  .nav-dropdown:hover .nav-dropdown-menu{display:none}
  .nav-dropdown.open:hover .nav-dropdown-menu{display:block}
}
@media(max-width:760px){
  .nurse-hero{
    min-height:600px;
  }
  .nurse-hero img{
    object-position:62% center;
  }
  .nurse-hero-overlay{
    background:linear-gradient(90deg,rgba(3,22,42,.95),rgba(3,22,42,.72));
  }
}


/* Milestone 4.2 */
.primary-nav>a,
.nav-dropdown-toggle{
  line-height:1.35;
  padding-top:14px;
  padding-bottom:18px;
}
.primary-nav>a::after,
.nav-dropdown-toggle::after{
  bottom:6px;
  height:2px;
}
.nav-dropdown-toggle{
  display:inline-flex;
  align-items:center;
  gap:4px;
}
.nav-dropdown-menu{top:calc(100% - 1px)}

.power-hero .page-hero-grid{grid-template-columns:1.05fr .95fr}
.power-story-graphic{
  display:grid;
  grid-template-columns:1fr auto 1fr auto 1fr;
  gap:14px;
  align-items:center;
}
.power-step{
  min-height:150px;
  padding:24px 15px;
  border:1px solid rgba(232,195,111,.7);
  border-radius:18px;
  background:rgba(255,255,255,.07);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.power-step strong{font-family:"Playfair Display";font-size:3.4rem;color:var(--gold-light)}
.power-step span{font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;color:#fff}
.power-arrow{color:var(--gold-light);font-size:2.2rem}
.power-copy-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}
.power-copy h2{font-size:clamp(2.4rem,4vw,4rem)}
.power-ladder{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:42px}
.power-ladder article{
  padding:30px;
  background:#fff;
  border:1px solid rgba(6,31,58,.12);
  border-radius:16px;
  box-shadow:0 10px 28px rgba(6,31,58,.05);
}
.power-ladder span{display:block;color:var(--gold);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em}
.power-ladder strong{display:block;font-family:"Playfair Display";font-size:2.6rem;color:var(--navy);margin:8px 0}
.power-ladder p{margin:0;color:var(--muted)}
.power-disclaimer{margin-top:22px;font-size:.82rem;color:var(--muted);font-style:italic}

.nurse-hero img{object-position:72% center}
.nurse-hero-overlay{
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg,rgba(3,22,42,.98) 0%,rgba(3,22,42,.92) 38%,rgba(3,22,42,.47) 66%,rgba(3,22,42,.08) 100%),
    linear-gradient(0deg,rgba(3,22,42,.2),rgba(3,22,42,.04));
  z-index:-2;
}

@media(max-width:1180px){
  .power-hero .page-hero-grid,
  .power-copy-grid{grid-template-columns:1fr}
  .power-story-graphic{max-width:720px}
  .power-ladder{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .power-story-graphic{grid-template-columns:1fr}
  .power-arrow{transform:rotate(90deg)}
  .power-ladder{grid-template-columns:1fr}
  .nurse-hero img{object-position:64% center}
}


/* Milestone 4.3 — final visual corrections */

/* 1. Dropdown: remove the inherited animated line from submenu links. */
.nav-dropdown-menu a::after,
.nav-dropdown-menu a:hover::after,
.nav-dropdown-menu a:focus-visible::after,
.nav-dropdown-menu a.active::after{
  content:none !important;
  display:none !important;
}
.nav-dropdown-menu a{
  position:static;
  text-decoration:none !important;
}
.nav-dropdown-menu a.active{
  background:var(--cream);
  color:var(--navy);
  text-decoration:none !important;
}

/* Keep the top-level active line beneath the wording. */
.nav-dropdown-toggle::after,
.primary-nav > a::after{
  bottom:5px !important;
}
.nav-dropdown-toggle{
  padding-bottom:19px !important;
}

/* 2. eBook hero: move the entire composition upward and reduce empty space. */
.ebook-hero{
  min-height:calc(100vh - var(--header));
  padding:34px 0 46px !important;
  display:flex;
  align-items:center;
  position:relative;
}
.ebook-hero-grid{
  width:100%;
  align-items:center;
  gap:64px;
}
.device-stage{
  min-height:500px;
}
.tablet-device{
  width:min(475px,76%);
}
.tablet-device img{
  object-fit:contain !important;
  object-position:center !important;
  background:#fff;
}
.phone-device{
  right:7%;
  bottom:8%;
  width:142px;
}
.phone-device img{
  object-fit:contain !important;
  object-position:center !important;
  background:#fff;
  padding:5px;
}
.ebook-hero .scroll-indicator{
  bottom:10px;
}

/* 3. Nurse hero: move copy inward and soften the gradient to show more nurse. */
.nurse-hero{
  min-height:690px;
}
.nurse-hero .container{
  width:min(1280px,calc(100% - 96px)) !important;
  margin-inline:auto;
}
.nurse-hero-copy{
  max-width:590px;
  margin-left:clamp(24px,4vw,72px);
}
.nurse-hero-overlay{
  background:
    linear-gradient(
      90deg,
      rgba(3,22,42,.84) 0%,
      rgba(3,22,42,.72) 30%,
      rgba(3,22,42,.46) 49%,
      rgba(3,22,42,.18) 67%,
      rgba(3,22,42,.03) 84%
    ),
    linear-gradient(0deg,rgba(3,22,42,.10),rgba(3,22,42,.02)) !important;
}
.nurse-hero img{
  object-position:70% center !important;
}
.nurse-hero-copy h1{
  font-size:clamp(3.4rem,5.4vw,6rem);
}
.nurse-hero-copy h2{
  margin-top:18px;
}

/* Responsive corrections */
@media(max-width:1180px){
  .ebook-hero{
    min-height:auto;
    padding:42px 0 62px !important;
  }
  .device-stage{
    min-height:430px;
  }
  .nurse-hero .container{
    width:min(100% - 56px,1050px) !important;
  }
  .nurse-hero-copy{
    margin-left:0;
  }
}
@media(max-width:760px){
  .ebook-hero{
    padding:34px 0 54px !important;
  }
  .device-stage{
    min-height:330px;
  }
  .tablet-device{
    width:84%;
  }
  .phone-device{
    width:90px;
    right:2%;
    bottom:3%;
  }
  .phone-device img{
    padding:3px;
  }
  .nurse-hero{
    min-height:590px;
  }
  .nurse-hero .container{
    width:calc(100% - 40px) !important;
  }
  .nurse-hero-overlay{
    background:
      linear-gradient(
        90deg,
        rgba(3,22,42,.84) 0%,
        rgba(3,22,42,.67) 52%,
        rgba(3,22,42,.30) 100%
      ) !important;
  }
  .nurse-hero img{
    object-position:64% center !important;
  }
}


/* Milestone 4.4 — Nurse Angels continuous tribute */
.hero-tribute-preview{
  margin-top:28px;
  max-width:520px;
  padding:20px 22px;
  border-left:3px solid var(--gold);
  background:rgba(255,255,255,.06);
  backdrop-filter:blur(4px);
}
.hero-tribute-preview span{
  display:block;
  margin-bottom:6px;
  color:var(--gold-light);
  font-family:"Playfair Display";
  font-size:1.45rem;
}
.hero-tribute-preview p{
  margin:0;
  color:#edf4f8;
}
.tribute-read-button{
  margin-top:24px;
  display:inline-flex;
  align-items:center;
  gap:14px;
}
.tribute-read-button span{
  font-size:1.15rem;
  animation:tribute-arrow 1.6s ease-in-out infinite;
}
@keyframes tribute-arrow{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(6px)}
}
.nurse-scroll{
  bottom:18px;
}
.nurse-letter-intro{
  padding:90px 0 68px;
  background:#fff;
  scroll-margin-top:calc(var(--header) + 16px);
}
.nurse-letter-intro h2{
  font-size:clamp(3.2rem,6vw,6rem);
  color:var(--navy);
}
.letter-signature{
  margin-top:22px;
  color:var(--gold);
  font-family:"Playfair Display";
  font-size:1.45rem;
  font-style:italic;
}
.nurse-letter{
  padding:22px 0 100px;
  background:linear-gradient(180deg,#fff 0%,var(--cream) 100%);
}
.tribute-passage{
  position:relative;
  display:grid;
  grid-template-columns:74px 1fr;
  gap:28px;
  padding:54px 0;
  border-top:1px solid rgba(6,31,58,.13);
}
.tribute-passage:last-child{
  border-bottom:1px solid rgba(6,31,58,.13);
}
.tribute-number{
  color:rgba(6,31,58,.28);
  font-family:"Playfair Display";
  font-size:2.2rem;
  line-height:1;
}
.tribute-kicker{
  margin:0 0 12px;
  color:var(--gold);
  font-family:"Playfair Display";
  font-size:clamp(1.7rem,3vw,2.5rem);
}
.tribute-passage > p:last-child{
  margin:0;
  color:var(--navy);
  font-family:"Playfair Display";
  font-size:clamp(1.35rem,2.3vw,2rem);
  line-height:1.55;
}
.nurse-thank-you{
  padding:110px 0;
  background:var(--navy);
  color:#fff;
}
.nurse-thank-you h2{
  color:var(--gold-light);
  font-size:clamp(3rem,6vw,5.8rem);
}
.nurse-thank-you p{
  color:#e8f0f6;
  font-size:1.08rem;
}
.never-alone{
  margin:42px 0 12px;
  color:#fff;
  font-family:"Playfair Display";
  font-size:clamp(2.6rem,5vw,5.2rem);
  line-height:1.08;
}
.stuart-signoff{
  margin-bottom:34px;
  color:var(--gold-light) !important;
  font-family:"Playfair Display";
  font-size:1.35rem !important;
}
@media(max-width:760px){
  .hero-tribute-preview{
    max-width:100%;
  }
  .tribute-passage{
    grid-template-columns:1fr;
    gap:12px;
    padding:42px 0;
  }
  .tribute-number{
    font-size:1.45rem;
  }
}
@media(prefers-reduced-motion:reduce){
  .tribute-read-button span{animation:none}
}


/* Milestone 4.5 — wider editorial Nurse Angels tribute */
.tribute-wide{
  width:min(1080px,calc(100% - 72px));
}
.nurse-letter-intro{
  padding:86px 0 72px;
}
.nurse-editorial{
  background:linear-gradient(180deg,#fff 0%,#f8f4ea 100%);
}
.editorial-passage{
  padding:76px 0;
  border-top:1px solid rgba(6,31,58,.12);
}
.editorial-passage:last-child{
  border-bottom:1px solid rgba(6,31,58,.12);
}
.editorial-inner{
  width:min(1120px,calc(100% - 96px));
  margin-inline:auto;
  display:grid;
  grid-template-columns:90px minmax(0,1fr);
  gap:34px;
  align-items:start;
}
.editorial-left .editorial-inner{
  padding-right:7%;
}
.editorial-right{
  background:rgba(255,255,255,.62);
}
.editorial-right .editorial-inner{
  padding-left:7%;
}
.editorial-passage .tribute-number{
  font-size:2.35rem;
  color:rgba(6,31,58,.22);
}
.editorial-passage .tribute-kicker{
  margin:0 0 14px;
  font-size:clamp(2.2rem,4vw,4.1rem);
  color:var(--gold);
}
.editorial-passage p:last-child{
  max-width:920px;
  margin:0;
  font-family:"Playfair Display";
  font-size:clamp(1.45rem,2.2vw,2rem);
  line-height:1.68;
  color:var(--navy);
}
.nurse-thank-you .tribute-wide{
  width:min(980px,calc(100% - 72px));
}
.nurse-thank-you > .container > p{
  max-width:840px;
  margin-inline:auto;
}
@media(max-width:900px){
  .editorial-inner{
    width:min(100% - 48px,900px);
    grid-template-columns:64px minmax(0,1fr);
    gap:22px;
  }
  .editorial-left .editorial-inner,
  .editorial-right .editorial-inner{
    padding-left:0;
    padding-right:0;
  }
}
@media(max-width:620px){
  .tribute-wide{
    width:calc(100% - 36px);
  }
  .editorial-passage{
    padding:52px 0;
  }
  .editorial-inner{
    width:calc(100% - 36px);
    grid-template-columns:1fr;
    gap:8px;
  }
  .editorial-passage .tribute-number{
    font-size:1.35rem;
  }
  .editorial-passage .tribute-kicker{
    font-size:2.15rem;
  }
  .editorial-passage p:last-child{
    font-size:1.24rem;
    line-height:1.62;
  }
}


/* Milestone 4.6 — final visual polish before launch */

/* Stuart dropdown: sit slightly lower below the navigation. */
.nav-dropdown-menu{
  top:calc(100% + 10px) !important;
}

/* Home hero secondary Stuart link: slightly lower for better separation. */
.hero-story-link{
  transform:translateY(5px);
}

/* Realistic, less dominant device frames. */
.tablet-device,
.phone-device{
  background:linear-gradient(145deg,#59616a,#2d3339 55%,#6b747d);
  border:1px solid rgba(255,255,255,.45);
  box-shadow:
    0 20px 38px rgba(6,31,58,.22),
    inset 0 0 0 1px rgba(0,0,0,.16);
}
.tablet-device{
  padding:9px !important;
  border-radius:25px !important;
}
.tablet-device img{
  display:block;
  width:100%;
  height:100%;
  border-radius:17px !important;
  object-fit:contain !important;
  background:#fff;
}
.device-camera{
  position:absolute;
  top:4px;
  left:50%;
  width:4px;
  height:4px;
  transform:translateX(-50%);
  border-radius:50%;
  background:#15191d;
  z-index:3;
}

.phone-device{
  width:168px !important;
  padding:7px !important;
  border-radius:28px !important;
  right:2% !important;
  bottom:5% !important;
}
.phone-device img{
  display:block;
  width:100%;
  height:100%;
  padding:2px !important;
  border-radius:21px !important;
  object-fit:contain !important;
  object-position:center !important;
  background:#fff;
}
.phone-speaker{
  position:absolute;
  top:4px;
  left:50%;
  width:28px;
  height:3px;
  transform:translateX(-50%);
  border-radius:4px;
  background:#171b1f;
  z-index:3;
}

/* Give the Power of 30 statistic proper breathing room. */
.stat-card{
  margin-top:34px;
  margin-bottom:28px;
  padding:46px 40px !important;
}
.stat-card strong{
  margin-bottom:20px;
}
.stat-card p{
  margin:0 auto 18px;
  max-width:460px;
}
.stat-card small{
  display:block;
  margin-top:16px;
  line-height:1.55;
}

/* Replace the bare Read Anywhere card with a useful feature panel. */
.ebook-benefits{
  display:grid;
  gap:0;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(6,31,58,.12);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
}
.ebook-benefits article{
  display:grid;
  grid-template-columns:48px 1fr;
  gap:18px;
  align-items:start;
  padding:25px 28px;
  border-bottom:1px solid rgba(6,31,58,.10);
}
.ebook-benefits article:last-of-type{
  border-bottom:0;
}
.benefit-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--cream);
  color:var(--gold);
  font-size:1.15rem;
  font-weight:800;
}
.ebook-benefits strong{
  display:block;
  margin-bottom:5px;
  color:var(--navy);
  font-family:"Playfair Display";
  font-size:1.35rem;
}
.ebook-benefits p{
  margin:0;
  color:var(--muted);
  font-size:.93rem;
}
.benefits-link{
  padding:20px 28px;
  background:var(--navy);
  color:#fff !important;
}
.benefits-link:hover{
  color:var(--gold-light) !important;
}

@media(max-width:1180px){
  .phone-device{
    width:150px !important;
    right:4% !important;
  }
}
@media(max-width:760px){
  .hero-story-link{
    transform:none;
  }
  .phone-device{
    width:112px !important;
    right:1% !important;
    bottom:2% !important;
    padding:5px !important;
  }
  .phone-device img{
    border-radius:17px !important;
  }
  .tablet-device{
    padding:7px !important;
  }
  .ebook-benefits article{
    grid-template-columns:40px 1fr;
    padding:22px 20px;
  }
  .benefits-link{
    padding:18px 20px;
  }
  .stat-card{
    margin-top:24px;
    padding:34px 24px !important;
  }
}


/* Milestone 4.7 — dropdown hover bridge fix */

/* Remove the dead space between the top-level button and submenu. */
.nav-dropdown{
  position:relative;
  padding-bottom:10px;
  margin-bottom:-10px;
}

/* Invisible bridge keeps hover active while the cursor moves downward. */
.nav-dropdown::after{
  content:"";
  position:absolute;
  left:-12px;
  right:-12px;
  top:100%;
  height:18px;
  background:transparent;
}

/* Position menu directly beneath the hover bridge. */
.nav-dropdown-menu{
  top:calc(100% + 6px) !important;
  z-index:999;
}

/* Keep submenu open while either the parent or submenu itself is hovered. */
.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu,
.nav-dropdown.open .nav-dropdown-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}

/* Better keyboard focus treatment. */
.nav-dropdown-menu a:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:2px;
}

/* Mobile navigation should not use the desktop hover bridge. */
@media(max-width:980px){
  .nav-dropdown{
    padding-bottom:0;
    margin-bottom:0;
  }
  .nav-dropdown::after{
    display:none;
  }
  .nav-dropdown-menu{
    top:auto !important;
  }
}


/* Milestone 4.8 — Larger phone book cover */

/* Increase the physical size of the phone slightly */
.phone-device{
    width:182px !important;
    right:1% !important;
    bottom:4% !important;
}

/* Let the cover artwork fill much more of the screen */
.phone-device img{
    width:96% !important;
    height:96% !important;
    margin:2% !important;
    padding:0 !important;
    object-fit:cover !important;
    object-position:top center !important;
    background:#fff;
}

/* Tablet keeps full cover visible */
.tablet-device img{
    object-fit:contain !important;
}

@media (max-width:1180px){
    .phone-device{
        width:164px !important;
    }
}

@media (max-width:760px){
    .phone-device{
        width:124px !important;
    }
    .phone-device img{
        width:97% !important;
        height:97% !important;
        margin:1.5% !important;
    }
}


/* Milestone 4.9 — Stuart review version
   Phone cover scaled back to a balanced size.
*/

.phone-device{
    width:176px !important;
    right:1.5% !important;
    bottom:4.5% !important;
    overflow:hidden !important;
}

.phone-device img{
    width:88% !important;
    height:88% !important;
    margin:6% !important;
    padding:0 !important;
    object-fit:contain !important;
    object-position:center !important;
    background:#fff;
    border-radius:18px !important;
}

@media (max-width:1180px){
    .phone-device{
        width:158px !important;
    }
    .phone-device img{
        width:89% !important;
        height:89% !important;
        margin:5.5% !important;
    }
}

@media (max-width:760px){
    .phone-device{
        width:118px !important;
    }
    .phone-device img{
        width:90% !important;
        height:90% !important;
        margin:5% !important;
        border-radius:14px !important;
    }
}


/* Milestone 5.0 — corrected eBook device artwork for Stuart review */

/* Tablet: keep the full approved artwork with a thinner, realistic frame. */
.tablet-device{
  width:min(520px,80%) !important;
  aspect-ratio:4/3 !important;
  padding:8px !important;
  border-radius:24px !important;
  background:linear-gradient(145deg,#525a62,#2c3238 60%,#68727b) !important;
  border:1px solid rgba(255,255,255,.45) !important;
}
.tablet-device img{
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  border-radius:17px !important;
  background:#fff !important;
}

/* Phone: realistic width and a portrait crop made specifically for this screen. */
.phone-device{
  width:156px !important;
  aspect-ratio:9/19.5 !important;
  right:4% !important;
  bottom:5% !important;
  padding:7px !important;
  border-radius:28px !important;
  overflow:hidden !important;
  background:linear-gradient(145deg,#525a62,#2c3238 60%,#68727b) !important;
  border:1px solid rgba(255,255,255,.45) !important;
}
.phone-device img{
  width:100% !important;
  height:100% !important;
  margin:0 !important;
  padding:0 !important;
  object-fit:contain !important;
  object-position:center !important;
  border-radius:20px !important;
  background:#fff !important;
}
.phone-speaker{
  top:4px !important;
  width:30px !important;
  height:4px !important;
}

@media(max-width:1180px){
  .phone-device{
    width:144px !important;
    right:5% !important;
  }
}
@media(max-width:760px){
  .tablet-device{
    width:86% !important;
  }
  .phone-device{
    width:104px !important;
    right:1% !important;
    bottom:2% !important;
    padding:5px !important;
  }
  .phone-device img{
    border-radius:16px !important;
  }
}


/* ============================================================
   RELEASE CANDIDATE 1 — AUTHORITATIVE NAVIGATION + DEVICE RULES
   ============================================================ */
.site-header,.header-inner,.primary-nav{overflow:visible!important}
.nav-dropdown{position:relative!important;display:flex!important;align-items:center!important;height:100%!important;padding:0!important;margin:0!important}
.nav-dropdown::after{content:""!important;position:absolute!important;left:-18px!important;right:-18px!important;top:70%!important;height:42px!important;background:transparent!important;pointer-events:auto!important}
.nav-dropdown-toggle{position:relative!important;display:inline-flex!important;align-items:center!important;gap:6px!important;height:100%!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;color:#fff!important;font:inherit!important;font-size:.78rem!important;font-weight:700!important;line-height:1!important;letter-spacing:.035em!important;text-transform:uppercase!important;cursor:pointer!important;white-space:nowrap!important}
.nav-dropdown-toggle::after,.primary-nav>a::after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:18px!important;height:2px!important;background:var(--gold)!important;transform:scaleX(0)!important;transform-origin:center!important;transition:transform .2s ease!important}
.primary-nav>a:hover::after,.primary-nav>a:focus-visible::after,.primary-nav>a.active::after,.nav-dropdown:hover>.nav-dropdown-toggle::after,.nav-dropdown:focus-within>.nav-dropdown-toggle::after,.nav-dropdown.open>.nav-dropdown-toggle::after,.nav-dropdown.active>.nav-dropdown-toggle::after{transform:scaleX(1)!important}
.nav-dropdown-menu{position:absolute!important;top:calc(100% - 8px)!important;left:50%!important;min-width:230px!important;padding:10px!important;margin:0!important;border:1px solid rgba(6,31,58,.08)!important;border-radius:12px!important;background:#fff!important;box-shadow:0 18px 45px rgba(4,22,40,.24)!important;transform:translate(-50%,8px)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important;z-index:5000!important}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu,.nav-dropdown.open .nav-dropdown-menu{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,0)!important}
.nav-dropdown-menu a{display:block!important;position:static!important;padding:12px 14px!important;margin:0!important;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--navy)!important;text-decoration:none!important;text-transform:none!important;letter-spacing:0!important;font-size:.9rem!important;font-weight:700!important;line-height:1.35!important;white-space:nowrap!important}
.nav-dropdown-menu a::after{content:none!important;display:none!important}
.nav-dropdown-menu a:hover,.nav-dropdown-menu a:focus-visible,.nav-dropdown-menu a.active{background:var(--cream)!important;color:var(--navy)!important;text-decoration:none!important;outline:none!important}
.nav-dropdown-menu a:focus-visible{box-shadow:0 0 0 2px var(--gold) inset!important}

.device-stage{position:relative!important;min-height:500px!important;display:grid!important;place-items:center!important}
.tablet-device,.phone-device{position:absolute!important;overflow:hidden!important;background:linear-gradient(145deg,#555e66,#2c3238 60%,#69737c)!important;border:1px solid rgba(255,255,255,.5)!important;box-shadow:0 20px 42px rgba(6,31,58,.22),inset 0 0 0 1px rgba(0,0,0,.14)!important}
.tablet-device{width:min(520px,82%)!important;aspect-ratio:4/3!important;padding:8px!important;border-radius:24px!important;left:4%!important;bottom:4%!important}
.tablet-device img{width:100%!important;height:100%!important;margin:0!important;padding:0!important;border-radius:17px!important;object-fit:contain!important;object-position:center!important;background:#fff!important}
.phone-device{width:150px!important;aspect-ratio:9/19.5!important;padding:7px!important;border-radius:28px!important;right:4%!important;bottom:3%!important;z-index:4!important}
.phone-device img{width:100%!important;height:100%!important;margin:0!important;padding:0!important;border-radius:20px!important;object-fit:contain!important;object-position:center!important;background:#fff!important}
.device-camera{position:absolute!important;top:4px!important;left:50%!important;width:4px!important;height:4px!important;transform:translateX(-50%)!important;border-radius:50%!important;background:#161a1d!important;z-index:5!important}
.phone-speaker{position:absolute!important;top:4px!important;left:50%!important;width:30px!important;height:4px!important;transform:translateX(-50%)!important;border-radius:6px!important;background:#171b1f!important;z-index:5!important}
.ebook-hero{min-height:calc(100vh - var(--header))!important;padding:32px 0 48px!important;display:flex!important;align-items:center!important}
.ebook-hero-grid{align-items:center!important}
.stat-card{margin-top:38px!important;margin-bottom:30px!important}
.nurse-hero .container{width:min(1280px,calc(100% - 96px))!important}
.nurse-hero-copy{max-width:620px!important;margin-left:clamp(24px,4vw,72px)!important}
.nurse-hero-overlay{background:linear-gradient(90deg,rgba(3,22,42,.84) 0%,rgba(3,22,42,.70) 31%,rgba(3,22,42,.43) 50%,rgba(3,22,42,.16) 68%,rgba(3,22,42,.02) 84%)!important}
@media(max-width:1180px){
.nav-dropdown{display:block!important;width:100%!important;height:auto!important}.nav-dropdown::after{display:none!important}.nav-dropdown-toggle{width:100%!important;height:auto!important;justify-content:space-between!important;padding:15px!important;border-bottom:1px solid rgba(255,255,255,.1)!important}.nav-dropdown-toggle::after{display:none!important}.nav-dropdown-menu{position:static!important;min-width:0!important;padding:0 0 6px 18px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;display:none!important}.nav-dropdown.open .nav-dropdown-menu{display:block!important}.nav-dropdown-menu a{color:#fff!important;padding:12px 15px!important;border-bottom:1px solid rgba(255,255,255,.08)!important}.nav-dropdown-menu a:hover,.nav-dropdown-menu a:focus-visible,.nav-dropdown-menu a.active{background:transparent!important;color:var(--gold-light)!important}.phone-device{width:138px!important}}
@media(max-width:760px){.device-stage{min-height:340px!important}.tablet-device{width:86%!important;left:0!important}.phone-device{width:102px!important;right:0!important;padding:5px!important}.phone-device img{border-radius:16px!important}.nurse-hero .container{width:calc(100% - 40px)!important}.nurse-hero-copy{margin-left:0!important}}


/* ============================================================
   RC1.1 — MOBILE NAVIGATION CONTAINMENT AND ALIGNMENT
   ============================================================ */

@media(max-width:1180px){

  /* Keep the entire menu inside the phone/tablet viewport. */
  .primary-nav{
    position:fixed !important;
    top:var(--header) !important;
    left:0 !important;
    right:0 !important;
    bottom:auto !important;
    width:100% !important;
    max-width:100vw !important;
    max-height:calc(100dvh - var(--header)) !important;
    margin:0 !important;
    padding:20px 22px 28px !important;
    box-sizing:border-box !important;
    overflow-x:hidden !important;
    overflow-y:auto !important;
    overscroll-behavior:contain !important;
    align-items:stretch !important;
    gap:0 !important;
  }

  /* All top-level items begin on the same vertical line. */
  .primary-nav > a,
  .nav-dropdown-toggle{
    width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:16px 14px !important;
    text-align:left !important;
    justify-content:flex-start !important;
    border-left:0 !important;
    border-right:0 !important;
    border-bottom:1px solid rgba(255,255,255,.10) !important;
    color:#fff !important;
    line-height:1.3 !important;
  }

  /* Put the arrow at the far right without changing text alignment. */
  .nav-dropdown-toggle{
    display:flex !important;
  }
  .nav-dropdown-toggle span{
    margin-left:auto !important;
    flex:0 0 auto !important;
  }

  .nav-dropdown{
    width:100% !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    box-sizing:border-box !important;
    overflow:visible !important;
  }

  /* The submenu becomes an indented block within the menu. */
  .nav-dropdown-menu{
    position:static !important;
    inset:auto !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 0 4px 18px !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    transform:none !important;
    border:0 !important;
    border-radius:0 !important;
    background:rgba(255,255,255,.035) !important;
    box-shadow:none !important;
  }

  .nav-dropdown-menu a{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    margin:0 !important;
    padding:14px 14px !important;
    box-sizing:border-box !important;
    overflow-wrap:anywhere !important;
    white-space:normal !important;
    text-align:left !important;
    color:#fff !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;
    border-radius:0 !important;
  }

  .nav-dropdown-menu a.active,
  .nav-dropdown-menu a:hover,
  .nav-dropdown-menu a:focus-visible{
    padding-left:14px !important;
    color:var(--gold-light) !important;
    background:transparent !important;
    border-left:0 !important;
  }

  /* Avoid the older active-link left border shifting some items. */
  .primary-nav > a.active{
    padding-left:14px !important;
    border-left:0 !important;
    color:var(--gold-light) !important;
  }
}

/* Narrow phones */
@media(max-width:480px){
  .header-inner{
    padding-left:16px !important;
    padding-right:16px !important;
  }

  .brand-copy strong{
    font-size:clamp(1.15rem,5.5vw,1.55rem) !important;
  }

  .brand-copy small{
    font-size:.58rem !important;
    letter-spacing:.16em !important;
  }

  .primary-nav{
    padding:16px 14px 24px !important;
  }

  .primary-nav > a,
  .nav-dropdown-toggle{
    padding:15px 12px !important;
  }

  .nav-dropdown-menu{
    padding-left:14px !important;
  }

  .nav-dropdown-menu a{
    padding:13px 12px !important;
  }
}


/* =========================================================
   THE JOURNEY VERSION 2.0
   ========================================================= */
.header-actions{display:flex;align-items:center;gap:12px}
.language-badge{color:#fff;text-decoration:none;font-size:.72rem;font-weight:700;padding:10px 12px;border:1px solid rgba(255,255,255,.2);border-radius:8px}
.v2-hero{min-height:720px;position:relative;overflow:hidden;color:#fff;display:flex;align-items:center}
.v2-hero .hero-media,.v2-hero .hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.v2-hero .hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,22,42,.92),rgba(3,22,42,.62) 45%,rgba(3,22,42,.22))}
.v2-hero .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .65fr;gap:70px;align-items:center}
.v2-hero h1{font-size:clamp(3.4rem,5.8vw,6.6rem);color:#fff}.v2-hero h1 em{color:var(--gold-light)}
.stuart-hero-card{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);padding:20px;border-radius:18px;backdrop-filter:blur(7px)}
.stuart-hero-card img{width:100%;max-height:380px;object-fit:cover;object-position:center 34%;border-radius:12px}
.stuart-hero-card blockquote{font-family:"Playfair Display";font-size:1.35rem;margin:18px 0 8px}.stuart-hero-card span{color:var(--gold-light)}
.portrait-frame{border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}.portrait-frame img{width:100%;height:100%;object-fit:cover}
.v2-meet{align-items:stretch}.campaign-manifesto{display:grid;gap:12px;padding:55px;background:var(--navy);color:#fff;border-radius:18px;font-family:"Playfair Display";font-size:clamp(1.8rem,3vw,3rem)}
.campaign-manifesto strong{color:var(--gold-light);font-size:1.25em}
.language-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:34px 0}
.language-grid article{padding:18px;border:1px solid rgba(6,31,58,.12);border-radius:12px;background:#fff;font-size:1rem}
.newsletter-section{background:var(--navy);color:#fff}.newsletter-section h2{color:#fff}.newsletter-section p{color:#dce8f2}
.newsletter-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.newsletter-form{display:grid;gap:14px}.newsletter-form label{display:grid;gap:7px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.newsletter-form input{width:100%;box-sizing:border-box;padding:14px 15px;border:1px solid rgba(255,255,255,.24);border-radius:9px;background:rgba(255,255,255,.08);color:#fff;font-size:1rem}.newsletter-form small{color:#b9c8d4}
.impact-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:40px 0}.impact-pillars article{padding:30px;border:1px solid rgba(255,255,255,.16);border-radius:15px}.section:not(.navy) .impact-pillars article{background:#fff;border-color:rgba(6,31,58,.12)}
.impact-pillars h3{font-family:"Playfair Display";font-size:1.5rem;color:var(--gold-light)}.section:not(.navy) .impact-pillars h3{color:var(--navy)}
.about-hero,.manifesto-hero{padding:110px 0;background:linear-gradient(135deg,var(--navy),#0d4778);color:#fff}.about-hero h1,.manifesto-hero h1{color:#fff;font-size:clamp(3.5rem,6vw,6.5rem)}
.manifesto-hero{text-align:center}.honour-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0;list-style:none}.honour-list li{padding:16px 18px;background:var(--cream);border-radius:10px}
.power-message{display:grid;gap:18px}.power-message strong{display:block;padding:24px;border:1px solid rgba(232,195,111,.65);border-radius:14px;background:rgba(255,255,255,.06);color:var(--gold-light);font-family:"Playfair Display";font-size:2rem}
.compact-columns{grid-template-columns:1fr}.tribute-image{grid-column:1/-1;margin-bottom:24px;border-radius:16px;overflow:hidden}.tribute-image img{width:100%;height:380px;object-fit:cover}
.editorial-inner{grid-template-columns:90px minmax(0,1fr)!important}.editorial-inner .tribute-image{grid-column:1/-1}
@media(max-width:1180px){
  .header-actions .language-badge{display:none}.v2-hero .hero-grid,.newsletter-grid{grid-template-columns:1fr}.stuart-hero-card{max-width:520px}
  .language-grid{grid-template-columns:repeat(2,1fr)}.impact-pillars{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .v2-hero{min-height:0;padding:90px 0}.stuart-hero-card{display:none}.language-grid,.impact-pillars{grid-template-columns:1fr}.campaign-manifesto{padding:32px 24px}
  .tribute-image img{height:240px}.honour-list{grid-template-columns:1fr}
}


/* ==========================================================
   THE JOURNEY VERSION 2.1 REVIEW
   ========================================================== */

/* Home hero: less text and no portrait card */
.compact-home-hero{min-height:670px}
.hero-grid-single{grid-template-columns:minmax(0,760px)!important}
.compact-home-hero .hero-copy{max-width:760px}
.compact-home-hero h1{font-size:clamp(3.5rem,6vw,6.5rem);max-width:740px}
.hero-language-line{margin:20px 0 0;color:var(--gold-light);font-weight:700;letter-spacing:.04em}
.stjoes-support{background:#fff}
.stjoes-note{padding:34px;border-radius:16px;background:var(--cream);border:1px solid rgba(6,31,58,.12)}
.stjoes-note strong{display:block;color:var(--navy);font-family:"Playfair Display";font-size:1.6rem;margin-bottom:8px}

/* Power of 30 editorial page */
.power-editorial-hero{background:linear-gradient(135deg,var(--navy),#0d4778);color:#fff;padding:120px 0 90px}
.power-editorial-hero h1{color:#fff;font-size:clamp(4rem,7vw,7rem)}
.power-editorial-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:72px;align-items:center}
.power-editorial-grid.reverse{grid-template-columns:.8fr 1.2fr}
.power-copy-block h2{font-size:clamp(3rem,5vw,5.5rem)}
.power-copy-block p{font-size:1.08rem;line-height:1.85}
.power-pullquote{padding:48px;background:var(--navy);color:#fff;border-radius:18px}
.power-pullquote span{display:block;font-family:"Playfair Display";font-size:clamp(2rem,3.4vw,3.7rem);line-height:1.2}
.power-pullquote small{display:block;margin-top:20px;color:var(--gold-light)}
.power-trust-visual{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:34px;background:var(--navy);border-radius:18px}
.power-trust-visual strong{grid-column:1/-1;color:var(--gold-light);font-family:"Playfair Display";font-size:3rem}
.power-trust-visual span{padding:16px;background:rgba(255,255,255,.08);border-radius:10px;color:#fff;text-align:center}
.communication-timeline{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:30px;padding:20px;background:var(--cream);border-radius:12px}
.communication-timeline i{color:var(--gold);font-style:normal;font-weight:900}
.power-closing{margin:40px 0;font-family:"Playfair Display";font-size:clamp(2.2rem,4vw,4.5rem);color:var(--navy)}

/* It's About Us compact messages */
.about-us-messages{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.about-us-messages article{padding:24px 20px;background:var(--navy);color:#fff;border-radius:14px;min-height:150px}
.about-us-messages span{display:block;color:var(--gold-light);font-size:1.5rem;margin-bottom:14px}
.about-us-messages strong{display:block;font-family:"Playfair Display";font-size:1.5rem;line-height:1.2}
.about-us-messages p{margin:7px 0 0;color:#dce8f2}

/* Nurse Angels side-by-side cards */
.nurse-editorial{display:grid;gap:28px;padding:70px 0;background:linear-gradient(180deg,#fff,#f8f4ea)}
.nurse-story-card{width:min(1180px,calc(100% - 72px));margin-inline:auto;display:grid;grid-template-columns:1fr 1fr;min-height:390px;background:#fff;border:1px solid rgba(6,31,58,.11);border-radius:18px;overflow:hidden;box-shadow:0 14px 35px rgba(6,31,58,.07)}
.nurse-card-image{min-height:390px}
.nurse-card-image img{width:100%;height:100%;object-fit:cover}
.nurse-card-copy{display:flex;flex-direction:column;justify-content:center;padding:46px}
.nurse-card-copy .tribute-kicker{font-size:clamp(2rem,3.5vw,3.7rem)}
.nurse-card-copy>p:last-child{font-family:"Playfair Display";font-size:clamp(1.25rem,1.7vw,1.65rem);line-height:1.6;color:var(--navy)}
.nurse-story-card.image-right .nurse-card-image{order:2}
.nurse-story-card.image-right .nurse-card-copy{order:1}

/* Definitive desktop nav alignment */
@media(min-width:1181px){
  .header-inner{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;column-gap:24px!important}
  .primary-nav{display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(12px,1.05vw,22px)!important;height:var(--header)!important}
  .primary-nav>a,.nav-dropdown-toggle{display:inline-flex!important;align-items:center!important;height:var(--header)!important;padding:0!important;margin:0!important;line-height:1!important}
  .nav-dropdown{height:var(--header)!important}
  .nav-dropdown-menu{top:calc(100% - 6px)!important}
}

@media(max-width:1180px){
  .power-editorial-grid,.power-editorial-grid.reverse{grid-template-columns:1fr}
  .about-us-messages{grid-template-columns:1fr}
  .nurse-story-card{grid-template-columns:1fr;width:min(100% - 40px,760px)}
  .nurse-card-image{min-height:300px}
  .nurse-story-card.image-right .nurse-card-image,.nurse-story-card.image-right .nurse-card-copy{order:initial}
}
@media(max-width:760px){
  .compact-home-hero{min-height:600px}
  .nurse-card-copy{padding:30px 24px}
  .communication-timeline{align-items:flex-start;flex-direction:column}
  .communication-timeline i{transform:rotate(90deg)}
}


/* ==========================================================
   THE JOURNEY VERSION 2.2 REVIEW
   ========================================================== */

.mayor-section{
  align-items:center;
}

.mayor-photo{
  margin:0;
  background:#fff;
}

.mayor-photo img{
  display:block;
  width:100%;
  height:auto;
  max-height:720px;
  object-fit:contain;
  object-position:center;
  background:#fff;
}

.mayor-photo figcaption{
  padding:14px 18px 17px;
  color:var(--muted);
  background:#fff;
  border-top:1px solid rgba(6,31,58,.10);
  font-size:.82rem;
  line-height:1.45;
}

/* Each Nurse Angels chapter is now one complete image-and-text card. */
.nurse-editorial{
  display:grid !important;
  gap:32px !important;
  padding:78px 0 !important;
}

.nurse-story-card{
  width:min(1160px,calc(100% - 72px)) !important;
  margin-inline:auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  align-items:stretch !important;
  min-height:400px !important;
  overflow:hidden !important;
  background:#fff !important;
  border:1px solid rgba(6,31,58,.11) !important;
  border-radius:18px !important;
  box-shadow:0 16px 38px rgba(6,31,58,.08) !important;
}

.nurse-card-image{
  min-height:400px !important;
}

.nurse-card-image img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:400px !important;
  object-fit:cover !important;
  object-position:center !important;
}

.nurse-card-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:48px !important;
}

.nurse-card-copy .tribute-number{
  margin-bottom:16px !important;
}

.nurse-card-copy .tribute-kicker{
  margin:0 0 18px !important;
  color:var(--gold) !important;
  font-size:clamp(2.3rem,3.7vw,4rem) !important;
}

.nurse-card-copy > p{
  margin:0 !important;
  color:var(--navy) !important;
  font-family:"Playfair Display" !important;
  font-size:clamp(1.25rem,1.8vw,1.68rem) !important;
  line-height:1.62 !important;
}

.nurse-story-card.image-right .nurse-card-image{
  order:2 !important;
}

.nurse-story-card.image-right .nurse-card-copy{
  order:1 !important;
}

@media(max-width:900px){
  .nurse-story-card{
    width:min(100% - 40px,760px) !important;
    grid-template-columns:1fr !important;
  }

  .nurse-story-card.image-right .nurse-card-image,
  .nurse-story-card.image-right .nurse-card-copy{
    order:initial !important;
  }

  .nurse-card-image,
  .nurse-card-image img{
    min-height:300px !important;
  }
}

@media(max-width:600px){
  .mayor-photo figcaption{
    font-size:.75rem;
  }

  .nurse-card-copy{
    padding:30px 24px !important;
  }

  .nurse-card-image,
  .nurse-card-image img{
    min-height:240px !important;
  }
}


/* ==========================================================
   THE JOURNEY VERSION 2.3 REVIEW
   ========================================================== */

/* Home hero: reveal Niagara Falls and keep copy off the tablet artwork. */
.compact-home-hero .hero-overlay-light{
  background:rgba(255,255,255,.03) !important;
}

.compact-home-hero .hero-grid{
  display:block !important;
}

.compact-home-hero .hero-copy{
  width:min(560px,calc(100% - 40px)) !important;
  max-width:560px !important;
  padding:34px 38px !important;
  border:1px solid rgba(255,255,255,.65) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 18px 42px rgba(6,31,58,.16) !important;
  backdrop-filter:blur(5px) !important;
}

.compact-home-hero .hero-copy h1{
  color:var(--navy) !important;
  font-size:clamp(3rem,5vw,5.5rem) !important;
}

.compact-home-hero .hero-copy .lead{
  max-width:500px !important;
  color:#33495f !important;
  font-size:1.03rem !important;
  line-height:1.65 !important;
}

.compact-home-hero .hero-copy .section-label{
  color:#b17c16 !important;
}

.compact-home-hero .hero-language-line{
  color:#8a6113 !important;
}

.compact-home-hero .button-ghost{
  border-color:var(--navy) !important;
  color:var(--navy) !important;
  background:rgba(255,255,255,.72) !important;
}

/* Text-only Stuart journey hero. */
.journey-hero-text{
  min-height:590px !important;
  display:flex !important;
  align-items:center !important;
  position:relative !important;
  padding:100px 0 !important;
  text-align:center !important;
  background:
    radial-gradient(circle at 50% 15%,rgba(33,91,132,.65),transparent 44%),
    linear-gradient(135deg,var(--navy),#0d4778) !important;
}

.journey-hero-text h1{
  color:#fff !important;
  font-size:clamp(4rem,7vw,7rem) !important;
}

.journey-hero-text .lead{
  max-width:780px !important;
  margin-inline:auto !important;
  color:#e4edf4 !important;
}

.journey-scroll{
  bottom:28px !important;
}

/* Newsletter page and reusable CTA. */
.newsletter-hero{
  padding:105px 0 !important;
  color:#fff !important;
  background:linear-gradient(135deg,var(--navy),#0d4778) !important;
}

.newsletter-hero h1{
  color:#fff !important;
  font-size:clamp(3.6rem,6vw,6.5rem) !important;
}

.newsletter-hero-grid{
  display:grid !important;
  grid-template-columns:1fr .8fr !important;
  gap:70px !important;
  align-items:center !important;
}

.newsletter-page-form{
  padding:34px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.08) !important;
}

.newsletter-page-link{
  color:var(--gold-light) !important;
  text-decoration:none !important;
  font-size:.85rem !important;
}

.newsletter-topics,
.newsletter-archive{
  display:grid !important;
  grid-template-columns:repeat(3,1fr) !important;
  gap:20px !important;
  margin-top:38px !important;
}

.newsletter-topics article,
.newsletter-archive article{
  padding:28px !important;
  border:1px solid rgba(6,31,58,.12) !important;
  border-radius:15px !important;
  background:#fff !important;
}

.newsletter-topics h3,
.newsletter-archive h3{
  color:var(--navy) !important;
  font-family:"Playfair Display" !important;
  font-size:1.5rem !important;
}

.newsletter-archive span{
  color:var(--gold) !important;
  font-size:.72rem !important;
  font-weight:800 !important;
  letter-spacing:.09em !important;
  text-transform:uppercase !important;
}

.newsletter-advertising{
  color:#fff !important;
  background:var(--navy) !important;
}

.newsletter-advertising h2,
.newsletter-advertising h3{
  color:#fff !important;
}

.newsletter-advertising p,
.newsletter-advertising li{
  color:#dce8f2 !important;
}

.advertising-principles{
  padding:34px !important;
  border:1px solid rgba(255,255,255,.18) !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.06) !important;
}

.advertising-principles li{
  margin-bottom:12px !important;
}

.newsletter-cta{
  background:var(--cream) !important;
}

.newsletter-cta-actions{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:center !important;
  gap:16px !important;
}

.footer-newsletter-link,
.site-footer a{
  color:inherit !important;
}

/* Desktop menu order/alignment. */
@media(min-width:1181px){
  .primary-nav>a,
  .nav-dropdown-toggle{
    justify-content:center !important;
  }

  .nav-dropdown-menu{
    left:50% !important;
    top:calc(100% - 4px) !important;
  }
}

@media(max-width:980px){
  .compact-home-hero .hero-copy{
    margin-inline:auto !important;
  }

  .newsletter-hero-grid{
    grid-template-columns:1fr !important;
  }

  .newsletter-topics,
  .newsletter-archive{
    grid-template-columns:repeat(2,1fr) !important;
  }
}

@media(max-width:620px){
  .compact-home-hero .hero-copy{
    width:calc(100% - 28px) !important;
    padding:26px 22px !important;
  }

  .compact-home-hero .hero-copy h1{
    font-size:2.75rem !important;
  }

  .newsletter-topics,
  .newsletter-archive{
    grid-template-columns:1fr !important;
  }
}


/* ==========================================================
   THE JOURNEY — LAUNCH CANDIDATE RC1
   ========================================================== */

/* Home hero: natural Niagara Falls with a soft mist veil */
.compact-home-hero .hero-overlay,
.compact-home-hero .hero-overlay-light{
  background:
    linear-gradient(90deg,
      rgba(245,250,253,.92) 0%,
      rgba(245,250,253,.74) 24%,
      rgba(245,250,253,.32) 45%,
      rgba(245,250,253,.08) 63%,
      rgba(245,250,253,0) 78%
    ) !important;
}

.compact-home-hero .hero-grid{
  display:block !important;
}

.compact-home-hero .hero-copy,
.compact-home-hero .hero-copy-mist{
  width:min(610px,calc(100% - 40px)) !important;
  max-width:610px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  backdrop-filter:none !important;
}

.compact-home-hero .hero-copy h1{
  color:var(--navy) !important;
  max-width:600px !important;
  text-shadow:0 1px 0 rgba(255,255,255,.75) !important;
}

.compact-home-hero .hero-copy .lead{
  max-width:545px !important;
  color:#243b50 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.8) !important;
}

.compact-home-hero .hero-copy .section-label{
  color:#9f6e13 !important;
}

.hero-actions-three{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:12px !important;
}

.button-language{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:14px 18px !important;
  border:1px solid rgba(6,31,58,.24) !important;
  border-radius:9px !important;
  background:rgba(255,255,255,.75) !important;
  color:var(--navy) !important;
  text-decoration:none !important;
  font-size:.78rem !important;
  font-weight:800 !important;
  letter-spacing:.035em !important;
  text-transform:uppercase !important;
  backdrop-filter:blur(4px) !important;
}

.button-language:hover{
  background:#fff !important;
}

/* About Stuart uses the individual Stuart portrait only */
.about-hero .portrait-frame img{
  object-fit:contain !important;
  background:#fff !important;
}

/* Text-only Stuart pages */
.letter-hero-text-only{
  grid-template-columns:1fr !important;
  max-width:900px !important;
}

.letter-hero-text-only .signature-card{
  display:none !important;
}

/* Final Nurse Angels cards */
.nurse-editorial{
  display:grid !important;
  gap:34px !important;
  padding:76px 0 !important;
}

.nurse-story-card{
  width:min(1180px,calc(100% - 72px)) !important;
  margin-inline:auto !important;
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  min-height:400px !important;
  overflow:hidden !important;
  border:1px solid rgba(6,31,58,.11) !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 16px 40px rgba(6,31,58,.08) !important;
}

.nurse-card-image{
  min-height:400px !important;
}

.nurse-card-image img{
  width:100% !important;
  height:100% !important;
  min-height:400px !important;
  object-fit:cover !important;
}

.nurse-card-copy{
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  padding:48px !important;
}

.nurse-card-copy .tribute-kicker{
  margin:0 0 18px !important;
  color:var(--gold) !important;
  font-size:clamp(2.3rem,3.5vw,4rem) !important;
}

.nurse-card-copy>p{
  margin:0 !important;
  color:var(--navy) !important;
  font-family:"Playfair Display" !important;
  font-size:clamp(1.2rem,1.7vw,1.65rem) !important;
  line-height:1.62 !important;
}

.nurse-story-card.image-right .nurse-card-image{order:2 !important}
.nurse-story-card.image-right .nurse-card-copy{order:1 !important}

/* Final desktop navigation alignment */
@media(min-width:1181px){
  .header-inner{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:22px !important;
  }

  .primary-nav{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:clamp(10px,1vw,20px) !important;
    height:var(--header) !important;
    white-space:nowrap !important;
  }

  .primary-nav>a,
  .nav-dropdown-toggle{
    height:var(--header) !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
    margin:0 !important;
  }

  .nav-dropdown{
    height:var(--header) !important;
  }

  .nav-dropdown-menu{
    top:calc(100% - 5px) !important;
    left:50% !important;
  }
}

@media(max-width:900px){
  .compact-home-hero .hero-copy,
  .compact-home-hero .hero-copy-mist{
    width:min(560px,calc(100% - 32px)) !important;
  }

  .nurse-story-card{
    width:min(100% - 40px,760px) !important;
    grid-template-columns:1fr !important;
  }

  .nurse-story-card.image-right .nurse-card-image,
  .nurse-story-card.image-right .nurse-card-copy{
    order:initial !important;
  }
}

@media(max-width:620px){
  .compact-home-hero .hero-overlay,
  .compact-home-hero .hero-overlay-light{
    background:
      linear-gradient(180deg,
        rgba(245,250,253,.90) 0%,
        rgba(245,250,253,.68) 45%,
        rgba(245,250,253,.22) 72%,
        rgba(245,250,253,.02) 100%
      ) !important;
  }

  .hero-actions-three{
    align-items:stretch !important;
  }

  .hero-actions-three .button,
  .hero-actions-three .button-language{
    width:100% !important;
  }

  .nurse-card-copy{
    padding:30px 24px !important;
  }

  .nurse-card-image,
  .nurse-card-image img{
    min-height:250px !important;
  }
}


/* ==========================================================
   THE JOURNEY — LAUNCH CANDIDATE RC2
   Final Nurse Angels artwork + It's About Us principles
   ========================================================== */

.final-nurse-series{
  display:grid !important;
  gap:34px !important;
  padding:78px 0 !important;
  background:linear-gradient(180deg,#ffffff 0%,#fbf8f1 100%) !important;
}

.final-nurse-series .nurse-story-card{
  width:min(1220px,calc(100% - 72px)) !important;
  grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr) !important;
  min-height:430px !important;
}

.final-nurse-series .nurse-card-image{
  min-height:430px !important;
  background:#e9eef2 !important;
}

.final-nurse-series .nurse-card-image img{
  width:100% !important;
  height:100% !important;
  min-height:430px !important;
  object-fit:cover !important;
  object-position:center !important;
}

.final-nurse-series .nurse-card-copy{
  padding:52px !important;
}

.nurse-card-theme{
  margin:0 0 5px !important;
  color:var(--navy) !important;
  font-family:"Playfair Display" !important;
  font-size:clamp(1.45rem,2vw,2rem) !important;
  font-weight:700 !important;
}

.final-nurse-series .tribute-kicker{
  margin:0 0 20px !important;
}

.final-nurse-series .nurse-card-copy>p:last-child{
  font-family:"Playfair Display" !important;
  font-size:clamp(1.16rem,1.55vw,1.5rem) !important;
  line-height:1.7 !important;
}

/* Premium horizontal three-part statement band. */
.about-us-principles{
  grid-column:1/-1 !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  margin-top:34px !important;
  overflow:hidden !important;
  border:1px solid rgba(6,31,58,.09) !important;
  border-radius:18px !important;
  background:linear-gradient(110deg,#fbf8f1,#ffffff) !important;
  box-shadow:0 12px 34px rgba(6,31,58,.06) !important;
}

.about-us-principles article{
  display:grid !important;
  grid-template-columns:76px minmax(0,1fr) !important;
  gap:20px !important;
  align-items:center !important;
  min-height:190px !important;
  padding:32px 34px !important;
  position:relative !important;
}

.about-us-principles article+article::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:28px !important;
  bottom:28px !important;
  width:1px !important;
  background:rgba(180,126,24,.35) !important;
}

.principle-icon{
  width:68px !important;
  height:68px !important;
  display:grid !important;
  place-items:center !important;
  border-radius:50% !important;
  color:var(--gold) !important;
  background:var(--navy) !important;
  font-size:2.1rem !important;
  line-height:1 !important;
}

.about-us-principles h3{
  margin:0 0 10px !important;
  color:var(--navy) !important;
  font-family:"Playfair Display" !important;
  font-size:clamp(1.35rem,1.8vw,1.9rem) !important;
  line-height:1.25 !important;
}

.about-us-principles h3 em{
  display:block !important;
  color:#b57e18 !important;
  font-weight:600 !important;
}

.about-us-principles p{
  margin:0 !important;
  color:#364b5e !important;
  line-height:1.55 !important;
}

@media(max-width:980px){
  .about-us-principles{
    grid-template-columns:1fr !important;
  }

  .about-us-principles article{
    min-height:0 !important;
  }

  .about-us-principles article+article::before{
    left:28px !important;
    right:28px !important;
    top:0 !important;
    bottom:auto !important;
    width:auto !important;
    height:1px !important;
  }

  .final-nurse-series .nurse-story-card{
    grid-template-columns:1fr !important;
    width:min(100% - 40px,820px) !important;
  }

  .final-nurse-series .nurse-story-card.image-right .nurse-card-image,
  .final-nurse-series .nurse-story-card.image-right .nurse-card-copy{
    order:initial !important;
  }
}

@media(max-width:620px){
  .about-us-principles article{
    grid-template-columns:58px minmax(0,1fr) !important;
    padding:26px 22px !important;
  }

  .principle-icon{
    width:54px !important;
    height:54px !important;
    font-size:1.7rem !important;
  }

  .final-nurse-series .nurse-card-copy{
    padding:32px 24px !important;
  }

  .final-nurse-series .nurse-card-image,
  .final-nurse-series .nurse-card-image img{
    min-height:260px !important;
  }
}


/* ==========================================================
   THE JOURNEY — LAUNCH CANDIDATE RC3
   Newsletter navigation dropdown
   ========================================================== */

.newsletter-nav-menu{
  min-width:225px !important;
}

@media(min-width:1181px){
  .newsletter-nav-dropdown .nav-dropdown-menu{
    left:auto !important;
    right:0 !important;
    transform:translateY(8px) !important;
  }

  .newsletter-nav-dropdown:hover .nav-dropdown-menu,
  .newsletter-nav-dropdown:focus-within .nav-dropdown-menu,
  .newsletter-nav-dropdown.open .nav-dropdown-menu{
    transform:translateY(0) !important;
  }
}


/* ==========================================================
   THE JOURNEY — LAUNCH CANDIDATE RC4
   Definitive navigation underline-state correction
   ========================================================== */

@media(min-width:1181px){
  /* Reset every top-level underline first. */
  .primary-nav > a::after,
  .nav-dropdown > .nav-dropdown-toggle::after{
    transform:scaleX(0) !important;
  }

  /* Direct links: underline only on hover, keyboard focus, or current page. */
  .primary-nav > a:hover::after,
  .primary-nav > a:focus-visible::after,
  .primary-nav > a.active::after,
  .primary-nav > a[aria-current="page"]::after{
    transform:scaleX(1) !important;
  }

  /*
    Dropdowns: do not use .open or :focus-within for the underline.
    Those states can remain after clicking the toggle and caused the
    Newsletter underline to appear stuck.
  */
  .nav-dropdown:hover > .nav-dropdown-toggle::after,
  .nav-dropdown > .nav-dropdown-toggle:focus-visible::after,
  .nav-dropdown.active > .nav-dropdown-toggle::after,
  .nav-dropdown > .nav-dropdown-toggle[aria-current="page"]::after{
    transform:scaleX(1) !important;
  }

  /* A focused toggle must not remain underlined after focus moves/clicks. */
  .nav-dropdown:not(.active):not(:hover)
  > .nav-dropdown-toggle:not(:focus-visible)::after{
    transform:scaleX(0) !important;
  }
}


/* ==========================================================
   THE JOURNEY — LAUNCH CANDIDATE RC5
   Home-page Newsletter active-state correction
   ========================================================== */

@media(min-width:1181px){
  body:not(.newsletter-page) .newsletter-nav-dropdown:not(.active)
  > .nav-dropdown-toggle::after{
    transform:scaleX(0) !important;
  }
}


/* ==========================================================
   THE JOURNEY — LAUNCH CANDIDATE RC6
   Mobile-first homepage optimization
   ========================================================== */

@media(max-width:760px){

  /* Shorter, cleaner mobile header */
  .site-header{
    min-height:96px !important;
  }

  .header-inner{
    min-height:96px !important;
    padding:14px 20px !important;
  }

  .brand{
    gap:13px !important;
  }

  .brand-mark{
    width:66px !important;
    height:66px !important;
    flex:0 0 66px !important;
  }

  .brand-copy strong{
    font-size:clamp(1.72rem,7vw,2.15rem) !important;
    line-height:1.02 !important;
  }

  .brand-copy small{
    margin-top:7px !important;
    font-size:.68rem !important;
    letter-spacing:.18em !important;
  }

  .menu-toggle{
    width:52px !important;
    height:52px !important;
  }

  /* Mobile hero becomes an intentional composition, not a scaled desktop hero */
  .compact-home-hero{
    min-height:auto !important;
    padding:0 !important;
    display:block !important;
    background:#eef4f7 !important;
  }

  .compact-home-hero .hero-media{
    position:absolute !important;
    inset:0 !important;
    overflow:hidden !important;
  }

  .compact-home-hero .hero-media img{
    width:138% !important;
    max-width:none !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:67% center !important;
    transform:none !important;
  }

  /* Soft mist over the left/text side; keep the book visual visible on the right */
  .compact-home-hero .hero-overlay,
  .compact-home-hero .hero-overlay-light{
    background:
      linear-gradient(90deg,
        rgba(248,251,253,.97) 0%,
        rgba(248,251,253,.93) 46%,
        rgba(248,251,253,.70) 68%,
        rgba(248,251,253,.18) 88%,
        rgba(248,251,253,0) 100%
      ) !important;
  }

  .compact-home-hero .hero-grid{
    position:relative !important;
    z-index:2 !important;
    padding:56px 22px 38px !important;
  }

  .compact-home-hero .hero-copy,
  .compact-home-hero .hero-copy-mist{
    width:min(100%,520px) !important;
    max-width:520px !important;
    margin:0 !important;
    padding:0 !important;
  }

  .compact-home-hero .hero-copy .section-label{
    max-width:330px !important;
    margin:0 0 22px !important;
    font-size:.78rem !important;
    line-height:1.45 !important;
    letter-spacing:.16em !important;
  }

  .compact-home-hero .hero-copy h1{
    max-width:520px !important;
    margin:0 0 24px !important;
    font-size:clamp(3rem,12vw,4.25rem) !important;
    line-height:.98 !important;
    letter-spacing:-.035em !important;
  }

  .compact-home-hero .hero-copy .lead{
    max-width:440px !important;
    margin:0 0 28px !important;
    font-size:1.02rem !important;
    line-height:1.55 !important;
  }

  /* Smaller, tighter CTAs */
  .hero-actions-three{
    width:min(100%,440px) !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:10px !important;
  }

  .hero-actions-three .button,
  .hero-actions-three .button-language{
    width:100% !important;
    min-height:54px !important;
    padding:14px 16px !important;
    border-radius:8px !important;
    font-size:.82rem !important;
    letter-spacing:.08em !important;
  }

  .hero-actions-three .button-language{
    min-height:50px !important;
    background:rgba(255,255,255,.84) !important;
  }

  /* Remove desktop scroll cue from the first mobile screen */
  .compact-home-hero .scroll-indicator{
    display:none !important;
  }
}

@media(max-width:430px){
  .site-header,
  .header-inner{
    min-height:88px !important;
  }

  .header-inner{
    padding:12px 16px !important;
  }

  .brand-mark{
    width:58px !important;
    height:58px !important;
    flex-basis:58px !important;
  }

  .brand-copy strong{
    font-size:1.72rem !important;
  }

  .brand-copy small{
    font-size:.59rem !important;
  }

  .compact-home-hero .hero-grid{
    padding:42px 18px 30px !important;
  }

  .compact-home-hero .hero-copy .section-label{
    margin-bottom:18px !important;
    font-size:.70rem !important;
  }

  .compact-home-hero .hero-copy h1{
    margin-bottom:20px !important;
    font-size:clamp(2.75rem,12.3vw,3.55rem) !important;
  }

  .compact-home-hero .hero-copy .lead{
    margin-bottom:24px !important;
    font-size:.96rem !important;
  }
}


/* ==========================================================
   THE JOURNEY — LAUNCH CANDIDATE RC7
   Dedicated mobile homepage composition
   ========================================================== */
.mobile-book-visual,.mobile-hero-short-copy{display:none}

@media(max-width:760px){
  .compact-home-hero{
    min-height:auto!important;
    padding:0!important;
    background:linear-gradient(180deg,#f7fafc 0%,#eef4f7 100%)!important;
  }

  .compact-home-hero .hero-media,
  .compact-home-hero .hero-overlay,
  .compact-home-hero .hero-overlay-light{
    display:none!important;
  }

  .compact-home-hero .hero-grid{
    padding:48px 22px 34px!important;
  }

  .compact-home-hero .hero-copy,
  .compact-home-hero .hero-copy-mist{
    width:min(100%,540px)!important;
    max-width:540px!important;
    margin-inline:auto!important;
  }

  .compact-home-hero .hero-copy .section-label{
    margin-bottom:20px!important;
    color:#a16e12!important;
    font-size:.72rem!important;
    letter-spacing:.17em!important;
  }

  .compact-home-hero .hero-copy h1{
    margin:0 0 22px!important;
    color:var(--navy)!important;
    font-size:clamp(2.9rem,11.8vw,4.15rem)!important;
    line-height:.98!important;
    letter-spacing:-.04em!important;
    text-shadow:none!important;
  }

  .desktop-hero-copy{display:none!important}

  .mobile-hero-short-copy{
    display:block!important;
    max-width:430px!important;
    margin:0 0 26px!important;
    color:#344a5f!important;
    font-size:1rem!important;
    line-height:1.58!important;
  }

  .hero-actions-three{
    width:min(100%,430px)!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .hero-actions-three .button,
  .hero-actions-three .button-language{
    width:100%!important;
    min-height:52px!important;
    padding:13px 16px!important;
    font-size:.79rem!important;
    border-radius:7px!important;
  }

  .hero-actions-three .button-language{
    background:#fff!important;
    border-color:rgba(6,31,58,.18)!important;
    box-shadow:0 5px 16px rgba(6,31,58,.05)!important;
  }

  .mobile-book-visual{
    position:relative!important;
    display:block!important;
    min-height:390px!important;
    overflow:hidden!important;
    background:#dfe9ef!important;
  }

  .mobile-book-visual-bg,
  .mobile-book-visual-bg img,
  .mobile-book-visual-overlay{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
  }

  .mobile-book-visual-bg img{
    object-fit:cover!important;
    object-position:68% center!important;
    transform:scale(1.08)!important;
  }

  .mobile-book-visual-overlay{
    background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,0) 46%,rgba(2,24,44,.18))!important;
  }

  .mobile-book-visual-copy{
    position:absolute!important;
    left:20px!important;
    right:20px!important;
    bottom:20px!important;
    z-index:2!important;
    padding:12px 15px!important;
    border-radius:8px!important;
    background:rgba(255,255,255,.82)!important;
    backdrop-filter:blur(5px)!important;
  }

  .mobile-book-visual-copy p{
    margin:0!important;
    color:var(--navy)!important;
    font-family:"Playfair Display"!important;
    font-size:1.2rem!important;
    line-height:1.25!important;
    text-align:center!important;
  }

  .compact-home-hero .scroll-indicator{display:none!important}
}

@media(max-width:430px){
  .compact-home-hero .hero-grid{padding:40px 18px 28px!important}
  .compact-home-hero .hero-copy h1{font-size:clamp(2.7rem,12vw,3.5rem)!important}
  .mobile-hero-short-copy{font-size:.95rem!important}
  .mobile-book-visual{min-height:340px!important}
  .mobile-book-visual-copy p{font-size:1.08rem!important}
}


/* ==========================================================
   THE JOURNEY — LAUNCH CANDIDATE RC8
   About Stuart consolidated story page
   ========================================================== */
.about-stuart-story-section{
  background:#fff;
}
.about-stuart-story-wrap{
  max-width:980px;
}
.about-stuart-story{
  max-width:860px;
  margin:0 auto;
  color:#273b4d;
  font-size:1.08rem;
  line-height:1.86;
  letter-spacing:.002em;
}
.about-stuart-story p{
  margin:0 0 1.55rem;
}
.about-stuart-story p:last-child{
  margin-bottom:0;
}
.about-stuart-story-actions{
  max-width:860px;
  margin:2.2rem auto 0;
  padding-top:1.6rem;
  border-top:1px solid rgba(7,31,58,.12);
  display:flex;
  align-items:center;
  gap:1.25rem;
  flex-wrap:wrap;
}
@media(max-width:760px){
  .about-stuart-hero .split{
    gap:1.75rem;
  }
  .about-stuart-story{
    font-size:1rem;
    line-height:1.75;
  }
  .about-stuart-story p{
    margin-bottom:1.35rem;
  }
  .about-stuart-story-actions{
    align-items:flex-start;
    flex-direction:column;
  }
}


/* ==========================================================
   THE JOURNEY LAUNCH CANDIDATE RC9
   Stuart-first story pages + quiet sidebar cards
   ========================================================== */
.story-page-hero{
  padding:96px 0 64px;
  background:linear-gradient(135deg,var(--navy),#0d4778);
  color:#fff;
  text-align:center;
}
.story-page-hero h1{
  margin:0;
  color:#fff;
  font-size:clamp(3.5rem,6.5vw,6.7rem);
  letter-spacing:-.03em;
}
.story-page-subtitle{
  margin:12px 0 0;
  color:var(--gold-light);
  font-family:"Playfair Display",serif;
  font-size:clamp(1.45rem,2.4vw,2.25rem);
}
.story-with-sidebar-section{background:#fff}
.story-with-sidebar{
  display:grid;
  grid-template-columns:minmax(0,1fr) 330px;
  gap:72px;
  align-items:start;
  max-width:1180px;
}
.stuart-continuous-story{
  max-width:790px;
  color:#24394b;
  font-size:1.12rem;
  line-height:1.95;
}
.stuart-continuous-story p{margin:0 0 1.55em}
.stuart-continuous-story p:first-child{font-size:1.18rem;color:var(--navy)}
.story-sidebar{
  position:sticky;
  top:calc(var(--header) + 30px);
  display:grid;
  gap:32px;
}
.story-side-card{
  padding:30px 28px;
  border:1px solid rgba(6,31,58,.10);
  border-radius:18px;
  background:linear-gradient(145deg,#ffffff,#fbf8f1);
  box-shadow:0 14px 34px rgba(6,31,58,.07);
}
.side-card-icon{
  width:54px;
  min-width:54px;
  height:54px;
  display:grid;
  place-items:center;
  margin-bottom:18px;
  border-radius:50%;
  background:var(--navy);
  color:var(--gold-light);
  font-weight:800;
  font-size:1rem;
  letter-spacing:-.02em;
}
.story-side-card h2{
  margin:0 0 10px;
  color:var(--navy);
  font-family:"Playfair Display",serif;
  font-size:1.45rem;
  line-height:1.2;
}
.story-side-card p{margin:0;color:#526575;line-height:1.65;font-size:.95rem}
.story-signature-ending{
  padding:82px 0 88px;
  background:var(--navy);
  color:#fff;
  text-align:center;
}
.story-signature-ending p{
  margin:0 0 10px;
  color:#dce8f2;
  font-weight:700;
  letter-spacing:.14em;
  font-size:clamp(1rem,1.5vw,1.22rem);
}
.story-signature-ending h2{
  margin:18px 0 34px;
  color:var(--gold-light);
  font-size:clamp(3rem,6vw,6.25rem);
  line-height:1;
}
.power-signature-ending h2{font-size:clamp(2.8rem,5.5vw,5.7rem)}
@media(max-width:980px){
  .story-with-sidebar{grid-template-columns:1fr;gap:48px}
  .stuart-continuous-story{max-width:none}
  .story-sidebar{position:static;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
}
@media(max-width:640px){
  .story-page-hero{padding:70px 0 48px}
  .story-with-sidebar-section{padding-top:54px}
  .story-sidebar{grid-template-columns:1fr;gap:22px}
  .story-side-card{padding:26px 24px}
  .stuart-continuous-story{font-size:1.03rem;line-height:1.83}
  .story-signature-ending{padding:64px 0}
}

/* RC10 — Power of 30 story-marker alignment */
@media(min-width:981px){
  .power-story-aligned .story-sidebar{
    position:relative;
    top:auto;
    display:block;
    align-self:stretch;
    min-height:100%;
  }
  .power-story-aligned .story-side-card{
    position:absolute;
    left:0;
    right:0;
    width:100%;
    box-sizing:border-box;
    transition:top .18s ease-out;
  }
}


/* RC12 — compact five-card Power of 30 alignment */
@media(min-width:981px){
  .power-story-aligned .story-side-card{padding:20px 22px;border-radius:17px;}
  .power-story-aligned .side-card-icon{width:44px;min-width:44px;height:44px;margin-bottom:13px;font-size:.86rem;}
  .power-story-aligned .story-side-card h2{font-size:1.24rem;margin-bottom:7px;}
  .power-story-aligned .story-side-card p{font-size:.88rem;line-height:1.48;}
}


/* RC13 — Power of 30 final editorial alignment */
@media(min-width:981px){
  .story-with-sidebar-section:has(.power-story-aligned){
    padding-top:72px;
    padding-bottom:92px;
  }
  .power-story-aligned{
    grid-template-columns:minmax(0,1fr) 382px;
    gap:64px;
    max-width:1240px;
  }
  .power-story-aligned .stuart-continuous-story{
    max-width:760px;
    font-size:1.08rem;
    line-height:1.9;
  }
  .power-story-aligned .stuart-continuous-story p{
    margin-bottom:1.42em;
  }
  .power-story-aligned .story-side-card{
    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    grid-template-rows:auto auto;
    column-gap:18px;
    row-gap:5px;
    padding:22px 24px;
    border-radius:18px;
    min-height:0;
  }
  .power-story-aligned .side-card-icon{
    grid-column:1;
    grid-row:1 / span 2;
    width:52px;
    min-width:52px;
    height:52px;
    margin:0;
    align-self:start;
    font-size:.83rem;
  }
  .power-story-aligned .story-side-card h2{
    grid-column:2;
    grid-row:1;
    margin:0;
    font-size:1.18rem;
    line-height:1.18;
  }
  .power-story-aligned .story-side-card p{
    grid-column:2;
    grid-row:2;
    margin:0;
    font-size:.84rem;
    line-height:1.52;
  }
  .power-signature-ending{
    padding-top:108px;
    padding-bottom:112px;
  }
  .power-signature-ending h2{
    margin-top:22px;
    margin-bottom:38px;
  }
}


/* RC15 Hero tagline */
.hero-copy-mist{
  text-align:center !important;
  margin-top:100px !important;
}
.hero-tagline{
  margin:0 0 18px;
  color:#1d5d96;
  font-family:"Playfair Display",serif;
  font-size:clamp(1.8rem,2.6vw,2.3rem);
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
}

/* RC16 homepage tagline refinement */
.hero-copy-mist{
  text-align:left !important;
  margin-top:0 !important;
}
.hero-tagline{
  margin:0 0 18px;
  color:#061f3a;
  font-size:clamp(1.8rem,2.6vw,2.3rem);
  letter-spacing:.04em;
  text-align:left;
}


/* ==========================================================
   RC17 — homepage tagline + site-wide spacing polish
   ========================================================== */
.hero-tagline{
  margin:0 0 14px !important;
  color:var(--navy) !important;
  font-family:"Playfair Display",Georgia,serif !important;
  font-size:clamp(1.5rem,2vw,2rem) !important;
  font-weight:600 !important;
  line-height:1.12 !important;
  letter-spacing:-.015em !important;
  text-transform:none !important;
  text-align:left !important;
  white-space:nowrap;
}
.compact-home-hero .hero-copy .section-label{
  margin-top:0 !important;
  margin-bottom:18px !important;
}

/* Consistent vertical rhythm across primary content pages. */
.section{
  padding-top:100px;
  padding-bottom:100px;
}
.section .container > h2,
.section .container > .section-label,
.section .container > .eyebrow{
  scroll-margin-top:calc(var(--header) + 24px);
}
.split,
.story-grid{
  row-gap:64px;
}
.info-card,
.feature-card,
.tribute-block,
.story-side-card{
  margin-top:0;
  margin-bottom:0;
}
.newsletter-cta{
  padding-top:92px !important;
  padding-bottom:92px !important;
}
.story-with-sidebar-section{
  padding-top:84px;
  padding-bottom:96px;
}
.about-stuart-story-section{
  padding-top:88px;
  padding-bottom:96px;
}

/* Keep Power of 30 cards comfortably above the blue closing banner. */
@media(min-width:981px){
  .story-with-sidebar-section:has(.power-story-aligned){
    padding-bottom:112px;
  }
}

@media(max-width:760px){
  .hero-tagline{
    font-size:clamp(1.05rem,4.2vw,1.35rem) !important;
    letter-spacing:-.01em !important;
    white-space:nowrap;
  }
  .section{
    padding-top:72px;
    padding-bottom:72px;
  }
  .newsletter-cta{
    padding-top:68px !important;
    padding-bottom:68px !important;
  }
  .story-with-sidebar-section,
  .about-stuart-story-section{
    padding-top:62px;
    padding-bottom:72px;
  }
}

@media(max-width:430px){
  .hero-tagline{
    font-size:1rem !important;
    letter-spacing:-.02em !important;
  }
}

/* RC18 — homepage Niagara line correction */
.compact-home-hero .hero-copy h2.hero-tagline{
  margin:0 0 12px 0 !important;
  color:#062747 !important;
  font-family:"Playfair Display",Georgia,serif !important;
  font-size:clamp(1.25rem,1.55vw,1.65rem) !important;
  font-weight:600 !important;
  line-height:1.15 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  text-align:left !important;
  white-space:nowrap !important;
  max-width:none !important;
}
@media(max-width:760px){
  .compact-home-hero .hero-copy h2.hero-tagline{
    font-size:clamp(.86rem,3.5vw,1.05rem) !important;
    white-space:nowrap !important;
  }
}
@media(max-width:430px){
  .compact-home-hero .hero-copy h2.hero-tagline{
    font-size:.78rem !important;
    letter-spacing:-.015em !important;
  }
}
