/* NHIS shared "join" band: the dark premium-black call-to-action box (Contact and About pages). Classes start with nhx-. */
.nhx-wrap{width:min(100% - 48px,1200px);margin:0 auto;padding-bottom:88px}
.nhx-cta{position:relative;overflow:hidden;isolation:isolate;box-sizing:border-box;min-height:340px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:56px 250px;border-radius:44px;color:#fff;font-family:inherit;background:#0a0a0b radial-gradient(90% 120% at 50% 40%,#17171c 0%,#0c0c0e 55%,#050506 100%)}
.nhx-cta *{box-sizing:border-box}
.nhx-rib{position:absolute;inset:0;z-index:-1;background:url(../media/cta-ribbons.svg) center/cover no-repeat;pointer-events:none}
.nhx-wrap .nhx-cta h2,.nhx-wrap .nhx-cta p,.nhx-btns{position:relative;z-index:1}
.nhx-wrap .nhx-cta h2{margin:0 0 12px;padding:0;font-weight:600;font-size:46px;line-height:1.08;font-family:inherit;letter-spacing:-.025em;text-transform:none;color:#fff;max-width:14em}
.nhx-wrap .nhx-wrap .nhx-cta h2 span{color:#f6e0eb}
.nhx-wrap .nhx-cta p{margin:0 0 26px;padding:0;font-size:16px;line-height:1.55;color:#d6d1d6;max-width:420px}
.nhx-btns{display:flex;flex-wrap:nowrap;gap:14px;justify-content:center}
.nhx-wrap .nhx-cta a.nhx-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:999px;border:1.5px solid transparent;font-weight:600;font-size:15px;line-height:1.2;font-family:inherit;text-decoration:none;white-space:nowrap;text-align:center;transition:transform .2s ease,background-color .2s ease}
.nhx-wrap .nhx-cta a.nhx-btn:hover{transform:translateY(-1px)}
.nhx-wrap .nhx-cta a.nhx-btn:focus-visible{outline:2px solid #fff;outline-offset:3px}
.nhx-wrap .nhx-cta a.nhx-btn--solid{background:#fff;border-color:#fff;color:#0a0a0b}
.nhx-wrap .nhx-cta a.nhx-btn--line{background:transparent;border-color:rgba(255,255,255,.7);color:#fff}
.nhx-wrap .nhx-cta a.nhx-btn--line:hover{background:rgba(255,255,255,.1)}

/* decoration in the side areas: brand shapes, two photo tiles, a little face */
.nhx-d{position:absolute;pointer-events:none;height:auto}
.nhx-d--l{left:0;top:0;width:240px}
.nhx-d--r{right:0;top:0;width:220px}
.nhx-tile{position:absolute;overflow:hidden;pointer-events:none}
.nhx-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.nhx-tile--l{left:-26px;bottom:-62px;width:214px;height:262px;border-radius:46px;transform:rotate(-9deg);background:linear-gradient(160deg,#5bb8d6,#3a97b8)}
.nhx-tile--r{right:-26px;bottom:-72px;width:214px;height:272px;border-radius:46px;transform:rotate(9deg);background:linear-gradient(200deg,#c4b4f4,#9b86e0)}
.nhx-face{position:absolute;left:186px;bottom:34px;width:76px;height:76px;transform:rotate(-8deg);pointer-events:none}

/* tablets */
@media (max-width:1000px){
 .nhx-cta{padding:52px 190px}
 .nhx-wrap .nhx-cta h2{font-size:38px}
 .nhx-wrap .nhx-cta a.nhx-btn{padding:0 20px;min-height:50px;font-size:14px}
 .nhx-tile--l{left:-30px;width:176px;height:216px;border-radius:40px;bottom:-54px}
 .nhx-tile--r{right:-30px;width:176px;height:224px;border-radius:40px;bottom:-60px}
 .nhx-face{left:150px;width:62px;height:62px;bottom:30px}
 .nhx-d--l{width:190px}.nhx-d--r{width:170px}
}
/* phones: the two buttons stay side by side; the photo tiles drop to the bottom corners */
@media (max-width:700px){
 .nhx-wrap{width:min(100% - 28px,1200px);padding-bottom:56px}
 .nhx-cta{min-height:0;padding:46px 16px 150px;border-radius:30px}
 .nhx-wrap .nhx-cta h2{font-size:clamp(25px,7.4vw,34px);margin-bottom:10px}
 .nhx-wrap .nhx-cta p{font-size:14.5px;margin-bottom:22px}
 .nhx-btns{width:100%;max-width:400px;gap:10px}
 .nhx-wrap .nhx-cta a.nhx-btn{flex:1 1 0;min-width:0;padding:0 8px;min-height:48px;font-size:clamp(12.5px,3.6vw,14.5px)}
 .nhx-tile--l{left:-18px;bottom:-46px;width:124px;height:158px;border-radius:30px}
 .nhx-tile--r{right:-18px;bottom:-50px;width:124px;height:160px;border-radius:30px}
 .nhx-face{left:calc(50% - 90px);bottom:22px;width:46px;height:46px}
 .nhx-d--l{width:96px;left:-12px;top:-8px}.nhx-d--r{width:84px;top:-4px}
 .nhx-cta{padding-top:54px}
}
@media (max-width:360px){
 .nhx-cta{padding-left:12px;padding-right:12px}
 .nhx-btns{gap:8px}
}
