/* Only the approved homepage banner; existing header and other sections are untouched. */
body>main>#cems-home-banner{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:1fr auto;justify-content:stretch;min-height:clamp(510px,38vw,640px);height:auto;padding:0;margin:0;overflow:hidden;background:#08283c;color:#fff;text-align:left}
#cems-home-banner::before,#cems-home-banner::after{display:none}
#cems-home-banner .cems-banner__visual{position:absolute;inset:18px 3% 84px 55%;z-index:-1;display:block;margin:0}
#cems-home-banner .cems-banner__visual img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;opacity:1;filter:drop-shadow(0 24px 18px #0005);mix-blend-mode:normal}
#cems-home-banner .cems-banner__shade{position:absolute;inset:0;z-index:-2;background:radial-gradient(ellipse at 77% 45%,#285165 0,transparent 52%),linear-gradient(135deg,#061d2e,#0d3347);pointer-events:none}
#cems-home-banner .cems-banner__copy{position:relative;align-self:center;width:52%;max-width:940px;margin:0;padding:30px 0 24px 4.5%;box-sizing:border-box;text-shadow:none}
#cems-home-banner .cems-banner__eyebrow{margin:0 0 16px;color:#ff843e;font-size:12px;font-weight:700;line-height:1.5;letter-spacing:2px}
body>main>#cems-home-banner h1{max-width:none;margin:0 0 16px;color:#fff;font-family:Arial,sans-serif;font-size:clamp(32px,3vw,52px);font-weight:700;line-height:1.09;letter-spacing:-1.6px;text-shadow:none;text-transform:none}
#cems-home-banner .cems-banner__lead{margin:0 0 14px;color:#fff;font-size:clamp(18px,1.4vw,23px);font-weight:600;line-height:1.4}
#cems-home-banner .cems-banner__description{margin:0;color:#e4edf2;font-size:clamp(15px,1vw,17px);font-weight:400;line-height:1.6}
#cems-home-banner .cems-banner__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
#cems-home-banner .cems-banner__button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:46px;padding:12px 16px;border:1px solid #f87931;border-radius:5px;background:#f87931;color:#102a3b;font-size:15px;font-weight:700;line-height:1.4;text-decoration:none;text-shadow:none;box-sizing:border-box;transition:background .18s ease,border-color .18s ease}
#cems-home-banner .cems-banner__button--secondary{border:1px solid #d9e7ef;background:#0b293a66;color:#fff}
#cems-home-banner .cems-banner__button:hover{background:#ff9758;border-color:#ff9758}
#cems-home-banner .cems-banner__button--secondary:hover{background:#fff;color:#0b293a;border-color:#fff}
#cems-home-banner .cems-banner__button:focus-visible{outline:3px solid #fff;outline-offset:5px}
#cems-home-banner .cems-banner__footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 4.5%;padding:16px 0;border-top:1px solid #d8e7f040;background:transparent}
#cems-home-banner .cems-banner__assurances{display:flex;align-items:center;flex-wrap:wrap;gap:20px;list-style:none;padding:0;margin:0;color:#eef5fa}
#cems-home-banner .cems-banner__assurances li{display:flex;align-items:center;gap:12px;margin:0;font-size:14px;line-height:1.5}
#cems-home-banner .cems-banner__assurances li+li{border-left:1px solid #ffffff66;padding-left:20px}
#cems-home-banner .cems-banner__assurances svg{width:26px;height:26px;flex:0 0 26px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
#cems-home-banner .cems-banner__slogan{margin:0;max-width:330px;color:#e2edf3;font-size:13px;line-height:1.5;text-align:right}
@media(min-width:1700px){#cems-home-banner .cems-banner__copy{padding-top:36px;padding-bottom:28px}}
@media(max-width:900px){
 body>main>#cems-home-banner{display:flex;flex-direction:column;min-height:0;background:#08283c}
 #cems-home-banner .cems-banner__shade{display:none}
 #cems-home-banner .cems-banner__copy{order:0;align-self:stretch;width:100%;max-width:800px;padding:28px 28px 18px;margin:0 auto}
 body>main>#cems-home-banner h1{font-size:clamp(28px,4.5vw,38px);letter-spacing:-.8px;line-height:1.13}
 #cems-home-banner .cems-banner__eyebrow{font-size:12px;letter-spacing:1.6px;margin-bottom:18px}
 #cems-home-banner .cems-banner__lead{font-size:18px}
 #cems-home-banner .cems-banner__description{font-size:16px}
 #cems-home-banner .cems-banner__visual{position:relative;order:1;z-index:0;inset:auto;height:clamp(230px,40vw,320px);width:100%;max-width:800px;margin:0 auto 8px;padding:0 20px 8px;box-sizing:border-box;overflow:hidden;background:radial-gradient(ellipse at center,#285165 0,transparent 70%)}
 #cems-home-banner .cems-banner__visual img{object-fit:contain;object-position:center}
 #cems-home-banner .cems-banner__footer{order:2;flex-direction:column;align-items:flex-start;margin:0 28px;padding:16px 0;gap:12px}
 #cems-home-banner .cems-banner__slogan{text-align:left;max-width:none}
}
@media(max-width:520px){
 #cems-home-banner .cems-banner__copy{padding:24px 20px 16px}
 body>main>#cems-home-banner h1{font-size:28px}
 #cems-home-banner .cems-banner__lead{font-size:17px}
 #cems-home-banner .cems-banner__description{font-size:14px;line-height:1.6}
 #cems-home-banner .cems-banner__actions{flex-direction:column;margin-top:16px;gap:10px}
 #cems-home-banner .cems-banner__button{width:100%;font-size:15px}
 #cems-home-banner .cems-banner__visual{height:58vw;min-height:190px;max-height:240px}
 #cems-home-banner .cems-banner__footer{margin:0 20px}
 #cems-home-banner .cems-banner__assurances{gap:10px 16px;align-items:center;flex-direction:row}
 #cems-home-banner .cems-banner__assurances li{font-size:12px;gap:7px}
 #cems-home-banner .cems-banner__assurances svg{width:22px;height:22px;flex-basis:22px}
 #cems-home-banner .cems-banner__assurances li+li{border:0;padding:0}
}
@media(prefers-reduced-motion:reduce){#cems-home-banner .cems-banner__button{transition:none}}
