/* MSJ PDF DESIGN V1.0.0
   Visual system recreated from MSJ_Website_Design_Concept.pdf.
   No external fonts or libraries required. */
:root{
  --msj-navy:#03172a;
  --msj-navy-2:#08284b;
  --msj-blue:#0c5f9a;
  --msj-blue-2:#0b4c82;
  --msj-blue-3:#123d70;
  --msj-gold:#f8b51c;
  --msj-gold-2:#ffc325;
  --msj-wine:#5b1d29;
  --msj-white:#fff;
  --msj-muted:#c7d5e4;
  --msj-border:rgba(255,255,255,.12);
  --msj-heading:"Arial Narrow","Roboto Condensed","Liberation Sans Narrow",Impact,sans-serif;
  --msj-body:"Arial Narrow","Roboto Condensed","Liberation Sans Narrow",Arial,sans-serif;
}
html{scroll-behavior:smooth}
body.msj-pdf-theme{margin:0;background:var(--msj-navy);color:#fff;font-family:var(--msj-body);font-stretch:condensed}
body.msj-pdf-theme *,body.msj-pdf-theme *::before,body.msj-pdf-theme *::after{box-sizing:border-box}
body.msj-pdf-theme a{color:inherit;text-decoration:none}
body.msj-pdf-theme img{max-width:100%;display:block}
.msj-skip{position:fixed;left:-9999px;top:8px;z-index:9999;background:#fff;color:#000!important;padding:10px 14px}
.msj-skip:focus{left:8px}
.msj-campaign-shell{width:min(1760px,calc(100% - 92px));margin-inline:auto;position:relative;z-index:2}

/* Header */
.msj-campaign-header{height:88px;background:var(--msj-navy);border-bottom:1px solid rgba(255,255,255,.025);position:relative;z-index:100}
.msj-header-inner{height:100%;display:grid;grid-template-columns:minmax(310px,1fr) auto 150px;align-items:center;gap:34px}
.msj-campaign-brand{display:flex;align-items:center;gap:15px;min-width:0}
.msj-campaign-brand img{width:58px;height:58px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 2px rgba(248,181,28,.22)}
.msj-campaign-brand strong{font:800 24px/1 var(--msj-heading);letter-spacing:.018em;color:#fff;white-space:nowrap}
.msj-campaign-nav{display:flex;align-items:stretch;height:100%;gap:28px}
.msj-campaign-nav a{position:relative;display:flex;align-items:center;font:800 15px/1 var(--msj-heading);color:#fff;white-space:nowrap;transition:color .15s ease}
.msj-campaign-nav a:hover,.msj-campaign-nav a.active{color:var(--msj-gold)}
.msj-campaign-nav a.active::after{content:"";height:4px;background:var(--msj-gold);position:absolute;left:0;right:0;bottom:19px}
.msj-vote-button{justify-self:end;display:inline-flex;align-items:center;justify-content:center;background:var(--msj-gold);color:var(--msj-navy)!important;border-radius:9px;min-width:130px;height:52px;font:900 17px/1 var(--msj-heading);box-shadow:0 5px 0 rgba(0,0,0,.08)}
.msj-vote-button:hover{background:#ffc533}
.msj-menu-button{display:none;border:0;background:none;color:#fff;align-items:center;gap:5px;padding:8px}.msj-menu-button span{display:block;width:22px;height:2px;background:#fff}.msj-menu-button b{margin-left:6px;font:800 14px var(--msj-heading)}
.msj-preview-banner{padding:10px 20px;background:#fff2a6;color:#1c2430;display:flex;justify-content:center;gap:18px;font-family:Arial,sans-serif;font-size:13px}

/* Global campaign background */
.msj-campaign-main{min-height:calc(100vh - 140px)}
.msj-campaign-page{position:relative;overflow:hidden;min-height:calc(100vh - 140px);padding:58px 0 48px;background:linear-gradient(112deg,#073b6a 0%,#0d5c96 58%,#0b4b80 100%);border-bottom:2px solid var(--msj-gold)}
.msj-campaign-page::before{content:"";position:absolute;inset:0;background:
  radial-gradient(circle at 73% 45%,transparent 0 18%,rgba(255,255,255,.085) 18.3% 18.7%,transparent 19% 27%,rgba(255,255,255,.05) 27.3% 27.7%,transparent 28%),
  linear-gradient(34deg,transparent 0 58%,rgba(255,255,255,.035) 58% 72%,transparent 72% 100%);pointer-events:none}
.msj-campaign-page::after{content:"";position:absolute;inset:auto -5% -18% -15%;height:49%;transform:skewX(-24deg);background:rgba(1,28,55,.2);pointer-events:none}
.msj-bg-shapes{position:absolute;inset:0;pointer-events:none}
.msj-bg-shapes::before{content:"";position:absolute;width:200px;height:90px;left:12px;top:35px;background-image:radial-gradient(rgba(255,255,255,.11) 1.2px,transparent 1.2px);background-size:13px 13px;opacity:.55}
.msj-bg-shapes::after{content:"";position:absolute;width:180px;height:90px;right:18px;bottom:68px;background-image:radial-gradient(rgba(255,255,255,.11) 1.2px,transparent 1.2px);background-size:13px 13px;opacity:.55}
.msj-kicker{margin:0 0 18px;color:var(--msj-gold);font:900 17px/1 var(--msj-heading);letter-spacing:.01em}
.msj-section-title{margin:0;color:#fff;font:900 clamp(42px,4vw,68px)/.98 var(--msj-heading);letter-spacing:-.015em;text-transform:uppercase;position:relative;padding-bottom:18px;max-width:1350px}
.msj-section-title::after{content:"";width:90px;height:5px;background:var(--msj-gold);position:absolute;left:0;bottom:0}
.msj-section-intro{max-width:1150px;margin:16px 0 34px;font-size:clamp(18px,1.55vw,27px);line-height:1.32;color:#d3dfeb}
.msj-panel-heading{margin:0 0 13px;font:900 29px/1 var(--msj-heading);color:#fff}

/* Buttons */
.msj-button-row{display:flex;gap:20px;align-items:center;margin-top:42px}
.msj-btn{height:56px;padding:0 31px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;font:900 17px/1 var(--msj-heading);letter-spacing:.01em;transition:transform .15s ease,background .15s ease}
.msj-btn:hover{transform:translateY(-1px)}
.msj-btn-gold{background:var(--msj-gold);color:var(--msj-navy)!important;border:2px solid var(--msj-gold)}
.msj-btn-outline{border:2px solid var(--msj-gold);color:#fff!important;background:rgba(3,23,42,.22)}

/* Home */
.msj-home-page{padding-top:18px;padding-bottom:24px}
.msj-home-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(540px,.88fr);gap:60px;align-items:center;min-height:calc(100vh - 170px)}
.msj-home-copy{padding:28px 0 22px}
.msj-home-copy h1{margin:0;max-width:900px;font:900 clamp(56px,5.7vw,98px)/.95 var(--msj-heading);letter-spacing:-.035em;color:#fff;text-transform:uppercase}
.msj-home-copy h1 span,.msj-home-copy h1 strong{display:block}.msj-home-copy h1 strong{color:var(--msj-gold);font-weight:900}
.msj-home-copy .msj-lead{max-width:820px;margin:28px 0 0;font-size:clamp(20px,1.7vw,30px);line-height:1.35;color:#c7d6e4}
.msj-stat-row{display:grid;grid-template-columns:repeat(3,1fr);max-width:760px;margin-top:50px;background:rgba(5,44,82,.42);border-radius:14px;overflow:hidden}
.msj-stat-row>div{padding:22px 24px;min-height:118px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid rgba(255,255,255,.04)}
.msj-stat-row>div:last-child{border-right:0}.msj-stat-row b{color:var(--msj-gold);font:900 37px/1 var(--msj-heading)}.msj-stat-row span{margin-top:14px;font:800 14px/1 var(--msj-heading);color:#fff}
.msj-home-candidates{align-self:center}
.msj-home-callout{background:rgba(80,24,38,.94);border-radius:16px;padding:18px 28px;margin:0 2px 18px;display:flex;flex-direction:column;box-shadow:0 8px 22px rgba(0,0,0,.08)}
.msj-home-callout strong{font:900 clamp(24px,2vw,38px)/1 var(--msj-heading);color:#fff}.msj-home-callout em{font-style:normal;color:var(--msj-gold)}.msj-home-callout span{margin-top:8px;font-size:16px;color:#fff}
.msj-mini-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-items:end}
.msj-mini-card{background:#06284d;border-radius:18px;overflow:hidden;box-shadow:0 14px 28px rgba(0,0,0,.15);border-top:4px solid var(--msj-gold)}
.msj-mini-card img{width:100%;aspect-ratio:.72;object-fit:cover;object-position:center top}
.msj-mini-card>div{padding:10px 8px 12px;text-align:center;background:#061c36}.msj-mini-card strong{display:block;font:900 15px/1.05 var(--msj-heading);white-space:nowrap}.msj-mini-card span{display:block;margin-top:5px;color:var(--msj-gold);font:900 12px/1 var(--msj-heading)}

/* About */
.msj-about-grid{display:grid;grid-template-columns:.96fr 1.14fr;gap:72px;align-items:start;margin-top:14px}
.msj-vision-panel{background:rgba(3,39,75,.58);padding:28px 34px 36px;border-radius:0 0 20px 20px;min-height:390px}.msj-vision-panel h2{margin:0 0 22px;color:var(--msj-gold);font:900 28px var(--msj-heading)}.msj-vision-panel strong{display:block;font:800 27px/1.25 var(--msj-heading);color:#fff}.msj-vision-panel p{font-size:21px;line-height:1.45;color:#d0dce8;margin:36px 0 0}
.msj-value-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.msj-dark-card{background:rgba(5,43,82,.88);border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:26px 30px;color:#fff;box-shadow:0 18px 30px rgba(2,24,47,.1)}
.msj-dark-card b{display:block;color:var(--msj-gold);font:900 36px/1 var(--msj-heading);margin-bottom:14px}.msj-dark-card h2,.msj-dark-card h3{margin:0 0 6px;font:900 27px/1.03 var(--msj-heading)}.msj-dark-card p{margin:0;color:#c9d6e4;font-size:20px;line-height:1.26}
.msj-mandate-bar{margin-top:28px;background:rgba(25,100,165,.86);border-radius:17px;padding:23px 30px;display:grid;grid-template-columns:330px 1fr;gap:25px;align-items:center}.msj-mandate-bar strong{color:var(--msj-gold);font:900 22px var(--msj-heading)}.msj-mandate-bar span{font-size:19px;line-height:1.25;color:#fff}

/* Manifesto */
.msj-priority-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:28px;margin-top:10px;align-items:stretch}
.msj-priority-card:nth-child(1){grid-column:span 2}.msj-priority-card:nth-child(2){grid-column:span 2}.msj-priority-card:nth-child(3){grid-column:span 2}.msj-priority-card:nth-child(4){grid-column:2/span 2}.msj-priority-card:nth-child(5){grid-column:4/span 2}
.msj-priority-card{min-height:240px}.msj-priority-card b{font-size:34px}.msj-priority-card h2{font-size:28px}.msj-priority-card p{font-size:18px;line-height:1.32}
.msj-cta-card{grid-column:6;grid-row:2;background:var(--msj-gold);border-radius:20px;color:#17253a;padding:25px 20px;text-align:center;display:flex;flex-direction:column;justify-content:center}.msj-cta-card h2{margin:0 0 15px;font:900 25px var(--msj-heading)}.msj-cta-card p{margin:0;font:800 18px/1.2 var(--msj-heading)}.msj-cta-card strong{font-weight:900}

/* Candidate list */
.msj-candidate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px;margin-top:12px}
.msj-candidate-card{position:relative;background:rgba(4,41,77,.86);border-radius:20px;padding:22px 22px 82px;display:grid;grid-template-columns:42% 58%;min-height:510px;overflow:hidden;box-shadow:0 16px 30px rgba(1,22,43,.15)}
.msj-candidate-photo{border-top:4px solid var(--msj-gold);border-radius:14px;overflow:hidden;align-self:start}.msj-candidate-photo img{width:100%;aspect-ratio:.72;object-fit:cover;object-position:center top}
.msj-candidate-copy{padding:28px 0 0 24px}.msj-candidate-copy>span{color:var(--msj-gold);font:900 20px var(--msj-heading)}.msj-candidate-copy h2{margin:25px 0 9px;font:900 34px/1 var(--msj-heading);color:#fff}.msj-candidate-copy small{font:800 15px var(--msj-heading);color:#cbd9e6}.msj-candidate-copy p{font-size:18px;line-height:1.35;color:#cbd8e5;margin:28px 0 18px}.msj-candidate-copy .msj-btn{height:48px;padding:0 24px;font-size:15px;width:100%}
.msj-candidate-principles{position:absolute;left:22px;right:22px;bottom:20px;border-radius:14px;background:rgba(17,71,121,.76);padding:17px 16px;text-align:center;font:800 15px/1.25 var(--msj-heading);color:#fff}

/* Candidate profile */
.msj-profile-page{padding-top:30px;padding-bottom:30px}
.msj-profile-grid{display:grid;grid-template-columns:minmax(420px,.62fr) 1.38fr;gap:72px;align-items:center;min-height:calc(100vh - 205px)}
.msj-profile-photo{max-width:610px;border-radius:22px;overflow:hidden;box-shadow:0 22px 44px rgba(0,0,0,.17)}.msj-profile-photo img{width:100%;height:auto}
.msj-profile-copy{padding-right:4%}.msj-profile-copy .msj-kicker{font-size:20px;margin-bottom:14px}.msj-profile-copy .msj-section-title{font-size:clamp(52px,5vw,82px);margin-bottom:28px}.msj-profile-copy section{margin-top:26px}.msj-profile-copy h2{margin:0 0 14px;font:900 28px var(--msj-heading);color:#fff}.msj-profile-copy p{margin:0;color:#d0dce7;font-size:20px;line-height:1.44;max-width:1100px}.msj-profile-copy ul{list-style:none;margin:0;padding:0;display:grid;gap:17px}.msj-profile-copy li{position:relative;padding-left:34px;color:#fff;font-size:20px;line-height:1.32}.msj-profile-copy li::before{content:"";position:absolute;left:7px;top:.55em;width:12px;height:12px;border-radius:50%;background:var(--msj-gold)}

/* Get involved */
.msj-accountability-strip{margin:34px 0 28px;background:rgba(91,29,41,.95);border-radius:14px;padding:18px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}.msj-accountability-strip strong{font:900 26px var(--msj-heading)}.msj-accountability-strip em{font-style:normal;color:var(--msj-gold)}.msj-accountability-strip span{font:900 17px var(--msj-heading)}
.msj-involved-grid{display:grid;grid-template-columns:1fr 310px;gap:42px}.msj-involved-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.msj-involved-actions .msj-dark-card{min-height:195px}.msj-involved-actions .msj-dark-card b{font-size:34px}.msj-involved-actions .msj-dark-card h2{font-size:25px}.msj-involved-actions .msj-dark-card p{font-size:18px}
.msj-involved-form{margin-top:-3px;background:rgba(4,38,71,.9);border-radius:16px;padding:20px 25px}.msj-involved-form h2{margin:0 0 10px;font:900 25px var(--msj-heading)}.msj-involved-form-row{display:grid;grid-template-columns:1.3fr 1fr 1fr .65fr;gap:13px}.msj-involved-form input,.msj-involved-form textarea{width:100%;border:1px solid rgba(255,255,255,.03);background:#1a4c79;color:#fff;border-radius:8px;padding:15px 16px;font:700 16px var(--msj-body);outline:none}.msj-involved-form input::placeholder,.msj-involved-form textarea::placeholder{color:#c1ceda}.msj-involved-form input:focus,.msj-involved-form textarea:focus{border-color:var(--msj-gold)}.msj-involved-message-row{display:grid;grid-template-columns:1fr 150px;gap:13px;margin-top:13px}.msj-involved-message-row textarea{min-height:66px;resize:vertical}.msj-involved-message-row button{border:0;border-radius:8px;background:var(--msj-gold);color:var(--msj-navy);font:900 19px var(--msj-heading);cursor:pointer}.msj-consent{display:flex;align-items:flex-start;gap:8px;margin-top:12px;font-family:Arial,sans-serif;font-size:12px;color:#cbd8e5}.msj-consent input{width:auto;margin-top:2px}.msj-consent a{text-decoration:underline}.msj-trap{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.msj-follow-card{background:rgba(5,43,82,.9);border-radius:20px;padding:28px 34px;display:flex;flex-direction:column;align-items:flex-start;min-height:440px}.msj-follow-card h2{margin:0 0 34px;color:var(--msj-gold);font:900 27px var(--msj-heading)}.msj-follow-card strong{font:900 19px var(--msj-heading)}.msj-follow-card span{margin-top:22px;font-size:18px;color:#cbd9e6}.msj-follow-card p{font-size:17px;line-height:1.35;color:#cbd9e6;margin:16px 0 18px}.msj-follow-card img{width:150px;height:150px;align-self:center;border:7px solid #fff}.msj-follow-card small{align-self:center;font:900 12px var(--msj-heading);margin-top:6px}
.msj-form-success,.msj-form-errors{font-family:Arial,sans-serif;font-size:13px;padding:12px 14px;margin:0 0 14px;border-radius:8px}.msj-form-success{background:#e9fff2;color:#155d36}.msj-form-errors{background:#fff0f2;color:#8c1831}.msj-form-errors ul{margin:7px 0 0 18px;padding:0}

/* Contact: keep requested white backdrop, campaign header/footer remain */
.msj-contact-clean{background:#fff;color:#14233a;min-height:calc(100vh - 140px);padding:62px 0 90px;border-bottom:2px solid var(--msj-gold)}
.msj-contact-kicker{margin:0 0 10px;color:#0b659f;font:900 16px var(--msj-heading)}.msj-contact-clean h1{margin:0 0 34px;font:900 clamp(48px,5vw,78px)/1 var(--msj-heading);color:var(--msj-navy);position:relative;padding-bottom:16px}.msj-contact-clean h1::after{content:"";position:absolute;left:0;bottom:0;width:88px;height:5px;background:var(--msj-gold)}
.msj-contact-panel{max-width:1050px;background:#fff;border:1px solid #d9e0e8;border-top:5px solid var(--msj-gold);box-shadow:0 20px 55px rgba(3,23,42,.09);padding:30px}.msj-contact-panel form{display:grid;gap:18px}.msj-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.msj-contact-panel label{display:grid;gap:7px}.msj-contact-panel label>span{font:900 14px var(--msj-heading);color:var(--msj-navy)}.msj-contact-panel input,.msj-contact-panel select,.msj-contact-panel textarea{width:100%;border:1px solid #cbd4df;background:#fff;color:#14233a;padding:13px 14px;font:600 15px Arial,sans-serif;outline:none}.msj-contact-panel input:focus,.msj-contact-panel select:focus,.msj-contact-panel textarea:focus{border-color:#0b659f;box-shadow:0 0 0 3px rgba(11,101,159,.09)}.msj-contact-file small{font-family:Arial,sans-serif;color:#697586}.msj-contact-submit{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:4px}.msj-contact-submit a{color:#6d1e2c!important;font:900 14px var(--msj-heading)}.msj-contact-submit button{border:0;background:var(--msj-gold);color:var(--msj-navy);padding:15px 26px;font:900 17px var(--msj-heading);cursor:pointer}

/* Footer */
.msj-campaign-footer{background:var(--msj-navy);min-height:52px;color:#aebfd0;font:700 13px var(--msj-body)}.msj-footer-inner{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:24px}.msj-footer-inner i{font-style:normal;margin:0 12px;color:#72879b}

/* Legacy public pages inside new shell */
.msj-pdf-theme .section,.msj-pdf-theme .legal-shell,.msj-pdf-theme .form-section{position:relative;z-index:2}

@media (max-width:1320px){
  .msj-campaign-shell{width:min(calc(100% - 52px),1760px)}
  .msj-header-inner{grid-template-columns:minmax(280px,1fr) auto 124px;gap:20px}.msj-campaign-brand strong{font-size:20px}.msj-campaign-nav{gap:18px}.msj-campaign-nav a{font-size:13px}.msj-vote-button{min-width:116px;height:48px;font-size:15px}
  .msj-home-grid{grid-template-columns:1fr 520px;gap:38px}.msj-home-copy h1{font-size:clamp(52px,5.2vw,78px)}
  .msj-candidate-card{grid-template-columns:40% 60%;padding:18px 18px 76px}.msj-candidate-copy{padding-left:18px}.msj-candidate-copy h2{font-size:28px}.msj-candidate-copy p{font-size:16px}.msj-candidate-principles{left:18px;right:18px}
}
@media (max-width:1080px){
  .msj-campaign-header{height:auto;min-height:78px}.msj-header-inner{min-height:78px;grid-template-columns:1fr auto auto}.msj-campaign-brand img{width:50px;height:50px}.msj-campaign-brand strong{font-size:18px}.msj-menu-button{display:flex;flex-direction:column;justify-content:center;position:relative;padding-right:52px}.msj-menu-button b{position:absolute;right:0;top:50%;transform:translateY(-50%)}
  .msj-campaign-nav{display:none;position:absolute;top:78px;left:0;right:0;height:auto;background:var(--msj-navy);padding:12px 26px 22px;flex-direction:column;gap:0;box-shadow:0 16px 24px rgba(0,0,0,.22)}.msj-campaign-nav.open{display:flex}.msj-campaign-nav a{padding:14px 4px;font-size:16px}.msj-campaign-nav a.active::after{left:4px;right:auto;bottom:8px;width:48px;height:3px}
  .msj-home-grid{grid-template-columns:1fr;gap:32px;min-height:0}.msj-home-copy{padding-top:18px}.msj-home-candidates{max-width:760px}.msj-mini-card img{aspect-ratio:.82}
  .msj-about-grid{grid-template-columns:1fr;gap:28px}.msj-vision-panel{min-height:0}.msj-mandate-bar{grid-template-columns:1fr;gap:8px}
  .msj-priority-grid{grid-template-columns:repeat(2,1fr)}.msj-priority-card:nth-child(n),.msj-cta-card{grid-column:auto;grid-row:auto}.msj-cta-card{min-height:220px}
  .msj-candidate-grid{grid-template-columns:1fr}.msj-candidate-card{grid-template-columns:280px 1fr;min-height:420px}.msj-candidate-photo img{aspect-ratio:.72}.msj-candidate-copy h2{font-size:38px}.msj-candidate-copy p{font-size:19px}
  .msj-profile-grid{grid-template-columns:360px 1fr;gap:45px}.msj-profile-copy p,.msj-profile-copy li{font-size:18px}
  .msj-involved-grid{grid-template-columns:1fr}.msj-follow-card{min-height:0;display:grid;grid-template-columns:1fr auto;column-gap:20px}.msj-follow-card h2,.msj-follow-card p,.msj-follow-card strong,.msj-follow-card span{grid-column:1}.msj-follow-card img,.msj-follow-card small{grid-column:2;grid-row:1/5}.msj-follow-card small{grid-row:5;align-self:start}
}
@media (max-width:760px){
  .msj-campaign-shell{width:calc(100% - 32px)}.msj-header-inner{grid-template-columns:1fr auto}.msj-campaign-brand strong{font-size:15px}.msj-vote-button{display:none}.msj-menu-button{padding-right:0}.msj-menu-button b{display:none}
  .msj-campaign-page{padding:38px 0 40px}.msj-kicker{font-size:14px}.msj-section-title{font-size:clamp(38px,12vw,58px)}.msj-section-intro{font-size:18px;margin-bottom:26px}
  .msj-home-page{padding-top:22px}.msj-home-copy h1{font-size:clamp(48px,15vw,72px)}.msj-home-copy .msj-lead{font-size:19px}.msj-button-row{flex-direction:column;align-items:stretch;margin-top:30px}.msj-btn{width:100%}.msj-stat-row{margin-top:30px}.msj-stat-row>div{padding:18px 12px;min-height:100px}.msj-stat-row b{font-size:29px}.msj-stat-row span{font-size:11px}.msj-home-callout{padding:16px 18px}.msj-home-callout strong{font-size:23px}.msj-mini-cards{grid-template-columns:1fr;gap:14px}.msj-mini-card{display:grid;grid-template-columns:128px 1fr;align-items:center}.msj-mini-card img{aspect-ratio:.78}.msj-mini-card>div{text-align:left;padding:12px 18px}.msj-mini-card strong{font-size:18px}.msj-mini-card span{font-size:13px}
  .msj-value-grid{grid-template-columns:1fr}.msj-dark-card{padding:22px}.msj-dark-card h2,.msj-dark-card h3{font-size:24px}.msj-dark-card p{font-size:17px}.msj-vision-panel{padding:24px}.msj-vision-panel strong{font-size:23px}.msj-vision-panel p{font-size:17px;margin-top:24px}.msj-mandate-bar{padding:20px}.msj-mandate-bar strong{font-size:19px}.msj-mandate-bar span{font-size:16px}
  .msj-priority-grid{grid-template-columns:1fr;gap:18px}.msj-priority-card{min-height:0}.msj-cta-card{min-height:190px}
  .msj-candidate-card{grid-template-columns:1fr;padding:16px 16px 76px}.msj-candidate-photo{max-width:320px}.msj-candidate-copy{padding:18px 0 0}.msj-candidate-copy h2{font-size:34px;margin-top:12px}.msj-candidate-copy p{margin-top:16px}.msj-candidate-principles{left:16px;right:16px}
  .msj-profile-grid{grid-template-columns:1fr;gap:30px}.msj-profile-photo{max-width:460px;margin:auto}.msj-profile-copy{padding:0}.msj-profile-copy .msj-section-title{font-size:48px}.msj-profile-copy h2{font-size:25px}.msj-profile-copy p,.msj-profile-copy li{font-size:17px}
  .msj-accountability-strip{flex-direction:column;align-items:flex-start;padding:17px 20px}.msj-accountability-strip strong{font-size:22px}.msj-involved-actions{grid-template-columns:1fr;gap:15px}.msj-involved-actions .msj-dark-card{min-height:0}.msj-involved-form{padding:18px}.msj-involved-form-row{grid-template-columns:1fr}.msj-involved-message-row{grid-template-columns:1fr}.msj-involved-message-row button{height:54px}.msj-follow-card{display:flex}.msj-follow-card img,.msj-follow-card small{align-self:center}.msj-follow-card h2{margin-bottom:22px}
  .msj-contact-clean{padding:42px 0 60px}.msj-contact-panel{padding:20px}.msj-contact-grid{grid-template-columns:1fr}.msj-contact-submit{flex-direction:column-reverse;align-items:stretch}.msj-contact-submit button{width:100%}.msj-contact-submit a{text-align:center}
  .msj-footer-inner{padding:12px 0;flex-direction:column;align-items:flex-start;gap:5px}.msj-campaign-footer{min-height:0}
}
/* MSJ_CANDIDATE_IMAGE_FIX_V1_0_2_BEGIN */
/* Card files are pre-cropped proportionally to 1008x1400. Never distort them in CSS. */
.msj-mini-card img,
.msj-candidate-photo img {
    display:block !important;
    width:100% !important;
    height:auto !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center top !important;
    image-rendering:auto !important;
}
/* Profile files retain their original high-resolution proportions. */
.msj-profile-photo img {
    display:block !important;
    width:100% !important;
    height:auto !important;
    max-height:none !important;
    aspect-ratio:auto !important;
    object-fit:contain !important;
    object-position:center top !important;
    image-rendering:auto !important;
}
/* Prevent grid/flex rules from forcing the image element itself into a different ratio. */
.msj-candidate-photo { height:auto !important; }
/* MSJ_CANDIDATE_IMAGE_FIX_V1_0_2_END */
