.ns-page{max-width:1000px!important;padding-block:40px 48px;color:#23485e}
.ns-banner{min-height:260px;display:flex;align-items:center;padding:32px 0;border-bottom:1px solid #d4e3e9;background:#eef7fa url('/sas-portal/assets/media/main-heroes/stories.jpg') center/cover no-repeat;color:#23485e}
.ns-banner>.site-shell{width:min(1000px,calc(100% - 48px))}
.ns-kicker{font-size:11px;color:#257b89;margin:0 0 10px}
body:has(.site-header25) .ns-banner h1{font-size:34px!important;line-height:1.25!important;letter-spacing:0;margin:0 0 12px!important}
.ns-banner p:last-child{font-size:14px;line-height:1.8;color:#577284;margin:0;max-width:430px}
.ns-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:64px;align-items:start}
.ns-page .ns-form{display:grid!important;grid-template-columns:1fr!important;gap:20px!important}
.ns-page .ns-form label{display:grid!important;gap:7px!important;font-size:12px;line-height:1.7;font-weight:500;color:#426377;margin:0!important}
.ns-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.ns-page .ns-form input:not([type=checkbox]):not([type=hidden]),.ns-page .ns-form select{width:100%!important;box-sizing:border-box;min-width:0;height:42px;min-height:42px!important;padding:10px 12px!important;background:#fff;border:1px solid #c8dce6!important;border-radius:4px!important;font:inherit;font-size:13px;line-height:1.5;color:#254c63;margin:0!important}
.ns-page .ns-form input:focus-visible,.ns-page .ns-form select:focus-visible{outline:2px solid #80b4c4;outline-offset:2px}
.ns-interests{padding:0!important;margin:0;border:0;min-width:0}
.ns-interests legend{font-size:12px;font-weight:500;color:#426377;margin-bottom:12px}
.ns-interests>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}
.ns-page .ns-form .ns-interests label,.ns-page .ns-form .ns-consent{display:flex!important;align-items:flex-start!important;gap:9px!important;background:none!important;border:0!important;border-radius:0!important;padding:0!important;text-align:left!important}
.ns-page .ns-form input[type=checkbox]{display:inline-block!important;appearance:auto!important;-webkit-appearance:checkbox!important;width:16px!important;height:16px!important;min-width:16px!important;min-height:16px!important;max-width:16px!important;flex:0 0 16px;margin:3px 0 0!important;padding:0!important;position:static!important;accent-color:#237786}
.ns-page .ns-form .ns-frequency{max-width:250px}
.ns-page .ns-form .ns-consent{font-size:11px;font-weight:400;color:#657f8e;line-height:1.9}
.ns-consent a{color:#24778d;text-underline-offset:3px}
.ns-submit{display:inline-flex!important;align-items:center;justify-content:center;gap:16px;background:#237786!important;border:1px solid #237786!important;border-radius:4px!important;padding:12px 20px!important;min-height:44px;color:#fff!important;font:inherit;font-size:13px;font-weight:600;justify-self:start;text-decoration:none;cursor:pointer}
.ns-submit svg{width:17px;height:17px}
.ns-aside{border-left:1px solid #d4e3e9;padding-left:32px}
.ns-aside-icon{display:block;color:#287a8b;margin-bottom:18px}
.ns-aside-icon svg{width:28px;height:28px}
body:has(.site-header25) .ns-page .ns-aside h2{font-size:23px!important;line-height:1.4!important;letter-spacing:0;margin:0 0 18px!important}
.ns-aside ul{padding-left:18px;font-size:13px;line-height:1.9;color:#4b6b7e;margin:0 0 24px}
.ns-aside li{padding-bottom:8px}
.ns-aside p{font-size:12px;line-height:1.9;color:#6c8593}
.ns-message{padding:14px 16px;margin-bottom:20px;border-left:3px solid #368e76;background:#edf7f2;font-size:13px;line-height:1.8}
.ns-message[role=alert]{border-color:#b9763e;background:#fff6ed}
@media(max-width:760px){.ns-page{padding-block:28px}.ns-banner{min-height:220px;background-position:left center}.ns-layout{grid-template-columns:1fr;gap:32px}.ns-aside{border-left:0;border-top:1px solid #d4e3e9;padding:24px 0 0}body:has(.site-header25) .ns-banner h1{font-size:28px!important}}
@media(max-width:420px){.ns-fields{grid-template-columns:1fr}.ns-interests>div{gap:10px}.ns-page .ns-form .ns-frequency{max-width:none}}

/* Newsletter benefits and optional free-account route. No newsletter submission behavior changed. */
.ns-aside .ns-benefits-intro{margin:0 0 20px;font-size:13px;color:#4b6b7e;line-height:1.8}
.ns-aside .ns-benefits{padding-left:18px;margin-bottom:18px}
.ns-benefits li{padding-bottom:14px}
.ns-benefits strong{display:block;font-size:13px;color:#23485e;line-height:1.65}
.ns-benefits li>span{display:block;font-size:12px;color:#6c8593;line-height:1.8;margin-top:3px}
.ns-account-card{margin-top:26px;padding:22px;background:#edf6fa;border:1px solid #cbdfe9;border-top:3px solid #ee8427;border-radius:10px}
.ns-account-kicker{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:650;color:#237786;letter-spacing:.04em}
.ns-account-kicker svg{width:18px;height:18px}
.ns-aside .ns-account-card h3{font-size:20px!important;font-weight:700;line-height:1.4;letter-spacing:0;color:#23485e;margin:12px 0}
.ns-aside .ns-account-card p{font-size:12px;color:#4b6b7e;line-height:1.8;margin:0 0 14px}
.ns-aside .ns-account-card .ns-account-choice{font-size:11px;color:#637f90}
.ns-account-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:11px 14px;box-sizing:border-box;border-radius:5px;background:#ff8619;color:#123c52!important;text-decoration:none!important;font-size:12px;font-weight:700;line-height:1.5}
.ns-account-cta svg{width:18px;height:18px;flex-shrink:0}
.ns-account-cta:hover{background:#f59740}
.ns-account-cta:focus-visible,.ns-account-login a:focus-visible{outline:2px solid #237786;outline-offset:3px}
.ns-aside .ns-account-card .ns-account-login{margin:13px 0 0;font-size:11px}
.ns-account-login a{color:#176a83;text-underline-offset:3px}
@media(max-width:760px){.ns-account-card{max-width:520px}.ns-aside .ns-benefits-intro{max-width:560px}}

.ns-page .ns-form label.ns-account-option{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:12px;padding:18px;background:#eef7fa;border:1px solid #cbdfe8;border-radius:10px;cursor:pointer}
.ns-account-option input{flex:0 0 auto;margin-top:4px;width:18px;height:18px;accent-color:#237786}
.ns-account-option span{display:grid;gap:6px}.ns-account-option strong{font-size:14px;line-height:1.5;color:#143e56}.ns-account-option small{font-size:12px;line-height:1.6;color:#506e80}
.ns-account-benefits{list-style:none;padding:0;margin:18px 0;display:grid;gap:15px}.ns-account-benefits li{display:grid;gap:3px}.ns-account-benefits strong{font-size:14px;color:#143e56}.ns-account-benefits span{font-size:13px;line-height:1.6}

/* Keep both consent and optional account controls aligned beside their copy. */
html body main.site-page .ns-page .ns-form label.ns-account-option,html body main.site-page .ns-page .ns-form label.ns-consent{display:grid!important;grid-template-columns:20px minmax(0,1fr)!important;align-items:start!important;column-gap:12px!important;row-gap:0!important;text-align:left!important}
html body main.site-page .ns-page .ns-form label.ns-account-option>input[type=checkbox],html body main.site-page .ns-page .ns-form label.ns-consent>input[type=checkbox]{grid-column:1!important;grid-row:1!important;display:block!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;margin:3px 0 0!important;padding:0!important;align-self:start!important;justify-self:start!important;appearance:auto!important;accent-color:#237d87;flex:none!important}
html body main.site-page .ns-page .ns-form label.ns-account-option>span,html body main.site-page .ns-page .ns-form label.ns-consent>span{grid-column:2!important;grid-row:1!important;display:block!important;min-width:0!important;margin:0!important;padding:0!important}
html body main.site-page .ns-page .ns-form label.ns-account-option strong{display:block!important;font-size:14px!important;line-height:1.6!important;margin:0!important}
html body main.site-page .ns-page .ns-form label.ns-account-option small{display:block!important;font-size:13px!important;line-height:1.65!important;font-weight:400!important;margin:5px 0 0!important}
html body main.site-page .ns-page .ns-form label.ns-account-option{padding:18px!important;border-radius:10px!important}

/* Compact paired choices: same checkbox column, type scale and padding. */
html body main.site-page .ns-page .ns-form label.ns-consent,
html body main.site-page .ns-page .ns-form label.ns-account-option{box-sizing:border-box!important;grid-template-columns:18px minmax(0,1fr)!important;column-gap:12px!important;padding:14px 16px!important;border:1px solid #d0e0e8!important;border-radius:8px!important;background:#fff!important;cursor:pointer}
html body main.site-page .ns-page .ns-form label.ns-account-option{background:#f0f7fa!important}
html body main.site-page .ns-page .ns-form label.ns-consent strong,
html body main.site-page .ns-page .ns-form label.ns-account-option strong{display:block!important;font-size:13px!important;line-height:1.55!important;font-weight:600!important;color:#23485e!important;margin:0!important}
html body main.site-page .ns-page .ns-form label.ns-consent small,
html body main.site-page .ns-page .ns-form label.ns-account-option small{display:block!important;font-size:12px!important;line-height:1.65!important;font-weight:400!important;color:#587486!important;margin:4px 0 0!important}
html body main.site-page .ns-page .ns-form label.ns-consent>input[type=checkbox],
html body main.site-page .ns-page .ns-form label.ns-account-option>input[type=checkbox]{margin-top:2px!important}
html body main.site-page .ns-page .ns-form label.ns-consent:focus-within,
html body main.site-page .ns-page .ns-form label.ns-account-option:focus-within{border-color:#237786!important;box-shadow:0 0 0 2px #23778620}
