/* Full-width illustrated banner, based on the supplied carousel reference. */
.public-body{--brand-gradient:linear-gradient(110deg,#0824ff 0%,#0064ff 62%,#00aceb 100%)}
.public-body .topbar{background:linear-gradient(100deg,#092bdf,#056bec);color:#edf6ff;border:0}
.public-body .topbar a{color:white}
.public-body .top-divider{background:#ffffff55}
.public-body .site-header{border-bottom:0}
.public-body .brand-carousel{background:linear-gradient(105deg,#0b1974 8%,#122e9f 56%,#1b43bf 100%);overflow:hidden;isolation:isolate;padding-bottom:85px;border-bottom:0}
.brand-carousel:before{display:none}
.carousel-viewport{display:grid;touch-action:pan-y pinch-zoom;max-width:1120px}
.brand-carousel .hero-grid{grid-area:1/1;width:100%;padding:40px 0 15px;min-height:520px;grid-template-columns:1fr 1.12fr;gap:45px;margin:0;align-items:center}
.carousel-slide{visibility:hidden;opacity:0;pointer-events:none;transition:opacity .45s ease;min-width:0}
.carousel-slide.is-current{visibility:visible;opacity:1;pointer-events:auto}
.brand-carousel .hero-copy{position:relative;z-index:1}
.brand-carousel .hero-title{font-family:Manrope,Arial,sans-serif;font-size:clamp(32px,3vw,44px);line-height:1.25;letter-spacing:-1.25px;color:#fff;font-weight:800;margin:18px 0}
.brand-carousel .hero-copy>p{font-size:14px;max-width:460px;line-height:1.85;color:#d2e3ff;margin:0}
.brand-carousel .hero-label{display:block;font-size:9px;font-weight:600;letter-spacing:1.7px;background:none;border:0;padding:0;color:#9fdcff;border-radius:0}
.brand-carousel .hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:27px;align-items:center}
.public-body .brand-carousel .hero-actions .btn{font-size:12px;padding:13px 22px;border-radius:4px;line-height:1.5;font-weight:550;box-shadow:none}
.public-body .brand-carousel .hero-actions .btn-primary{background:#071e46;color:#fff;border-color:#071e46}
.public-body .brand-carousel .hero-actions .btn-primary:hover{background:#006cdd;border-color:#42beff}
.public-body .brand-carousel .hero-actions .btn-outline{background:transparent;color:#fff;border-color:#a8c5ff}
.public-body .brand-carousel .hero-actions .btn-outline:hover{background:#ffffff15;border-color:#fff}
.public-body .brand-carousel a:focus-visible,.public-body .brand-carousel button:focus-visible{outline-color:#72e5ff}
.carousel-art{position:relative;height:465px;min-width:0;display:flex;align-items:center;justify-content:center}
.carousel-art>img{width:100%;height:100%;max-width:600px;object-fit:contain;filter:drop-shadow(0 20px 22px #06175826)}
.carousel-toolbar{display:flex;align-items:center;justify-content:center;gap:25px;position:relative;z-index:2;padding-top:7px;padding-bottom:12px}
.carousel-toolbar[hidden]{display:none}
.carousel-selectors{display:flex;align-items:center;gap:0}
.carousel-selector{position:relative;display:grid;place-items:center;width:32px;height:36px;padding:0;border:0;background:none;color:#fff}
.carousel-selector:before{content:'';display:block;width:7px;height:7px;border:1px solid #c0dcff;border-radius:50%;background:transparent;transition:background .2s,box-shadow .2s}
.carousel-selector.is-current:before{background:#65e4ff;border-color:#65e4ff;box-shadow:0 0 0 4px #59cbff20}
.carousel-selector:hover:before{background:#fff}
.carousel-navigation{display:flex;align-items:center;gap:10px;color:white}
.carousel-count{display:none}
.carousel-arrow{height:32px;width:32px;border:1px solid #9bbcff80;background:none;color:#fff;border-radius:50%;font-size:18px;line-height:1;transition:background .2s}
.carousel-arrow:hover{background:#ffffff20}
.carousel-pause{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:none;border:0;color:#d9edff;font-size:10px;min-width:65px;padding:9px 4px}
.carousel-pause [data-pause-icon]{font-size:9px;letter-spacing:-2px;width:13px}
.carousel-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.carousel-landscape{position:absolute;bottom:-1px;left:0;right:0;height:100px;pointer-events:none;z-index:0;overflow:hidden}
.carousel-wave{position:absolute;inset:0;width:100%;height:100%}
.carousel-dotscape{position:absolute;bottom:-50px;left:33%;width:400px;height:130px;border-radius:50%;background-image:radial-gradient(circle,#00b9ff 1.5px,transparent 2px);background-size:10px 10px;transform:rotate(-10deg)}
.carousel-dotscape:after{content:'';position:absolute;left:380px;bottom:5px;width:240px;height:160px;border-radius:50%;background-image:radial-gradient(circle,#00b9ff 1.4px,transparent 2px);background-size:10px 10px;transform:rotate(15deg)}
.public-body .brand-carousel+.domain-card{margin-top:25px}
/* Rich blue accents continue beyond the carousel. */
.public-body .foundation-strip{border-bottom:2px solid #dbeaff}
.foundation-strip .line-icon{color:#0966f3}
.solution-card{border-top:3px solid #1174ff;background:linear-gradient(150deg,#fff 45%,#edf7ff)}
.solution-card:nth-child(even){border-top-color:#00b3e7;background:linear-gradient(150deg,#fff 45%,#eafaff)}
.public-body .pricing-section{background:radial-gradient(ellipse at 0 30%,#dceaff,transparent 50%),radial-gradient(ellipse at 100% 85%,#d5f7ff,transparent 50%),#f5f9ff}
.public-body .plan-card.featured{border-width:2px;box-shadow:0 18px 45px #064bff16}
.benefit-feature{background:radial-gradient(ellipse at 80% 100%,#c2f1ff,transparent 75%),linear-gradient(135deg,#f4f8ff,#e7f1ff)}
.public-body .icon-tile{background:var(--brand-gradient);color:white;border:0;box-shadow:0 6px 18px #0665ef20}
.public-body .subhero{background:radial-gradient(ellipse at 90% 0%,#caf2ff,transparent 60%),linear-gradient(130deg,#fff,#e8f1ff);border-bottom:2px solid #daeaff}
.public-body .cta-band{background:radial-gradient(ellipse at 95% 10%,#00a9ee,transparent 65%),linear-gradient(110deg,#0826e9,#0365ee);color:white}
.public-body .cta-band h2{color:white}
.public-body .cta-band .eyebrow{color:#bceeff}
.public-body .cta-copy{color:#e5f2ff}
.public-body .cta-band .btn{background:white;color:#0759e8;border-color:white;box-shadow:0 10px 30px #001aa521}
.public-body .cta-band .btn:hover{background:#e6f7ff}
.public-body .site-footer{border-top:4px solid #00aceb;background:linear-gradient(180deg,#fff 50%,#f3f8ff)}

@media(min-width:1600px){.brand-carousel .hero-grid{min-height:570px}.carousel-art{height:500px}}
@media(max-width:1100px){.carousel-viewport{max-width:1020px}.brand-carousel .hero-grid{gap:30px;min-height:480px}.brand-carousel .hero-title{font-size:36px}.carousel-art{height:420px}.brand-carousel .hero-label{font-size:8px;letter-spacing:1.2px}.brand-carousel .hero-copy>p{font-size:13px}}
@media(max-width:800px){.brand-carousel .hero-grid{gap:22px;min-height:440px;grid-template-columns:1fr 1fr;padding-top:30px;padding-bottom:20px}.brand-carousel .hero-title{font-size:30px;letter-spacing:-.8px;line-height:1.3}.brand-carousel .hero-label{font-size:7px;letter-spacing:1px}.brand-carousel .hero-copy>p{font-size:12px}.carousel-art{height:340px}.public-body .brand-carousel .hero-actions .btn{font-size:10px;padding:11px 15px}.brand-carousel .hero-actions{gap:10px;margin-top:23px}.public-body .brand-carousel{padding-bottom:75px}.carousel-landscape{height:85px}.carousel-dotscape{left:18%;width:300px}.carousel-dotscape:after{left:250px;width:190px}.public-body .brand-carousel+.domain-card{margin-top:15px}}
@media(max-width:560px){.public-body .brand-carousel{padding-bottom:65px}.brand-carousel .hero-grid{grid-template-columns:1fr;align-content:space-between;gap:20px;padding-top:40px;padding-bottom:0;min-height:0;text-align:left}.brand-carousel .hero-title{font-size:33px;letter-spacing:-.9px;line-height:1.25;margin:17px 0}.brand-carousel .hero-title br{display:none}.brand-carousel .hero-copy>p{font-size:13px;line-height:1.8;max-width:420px;margin:0}.brand-carousel .hero-label{font-size:7px;letter-spacing:1.1px}.brand-carousel .hero-actions{justify-content:flex-start;margin-top:23px;gap:12px}.public-body .brand-carousel .hero-actions .btn{font-size:11px;padding:12px 17px}.carousel-art{height:290px;width:100%;max-width:400px;margin:0 auto}.carousel-art>img{max-width:350px}.carousel-toolbar{gap:18px;padding-top:8px;padding-bottom:12px;flex-direction:row}.carousel-selector{width:29px}.carousel-navigation{gap:8px}.carousel-arrow{width:30px;height:30px}.carousel-pause{font-size:9px;min-width:58px}.carousel-landscape{height:60px}.carousel-dotscape{left:9%;height:105px;width:230px;bottom:-60px}.carousel-dotscape:after{left:175px;width:140px;height:140px}.public-body .brand-carousel+.domain-card{margin-top:15px}}
@media(max-width:380px){.brand-carousel .hero-title{font-size:29px}.brand-carousel .hero-label{font-size:6px;letter-spacing:.8px}.brand-carousel .hero-copy>p{font-size:12px}.public-body .brand-carousel .hero-actions .btn{font-size:10px;padding:11px 13px}.brand-carousel .hero-actions{gap:10px}.carousel-art{height:260px}.carousel-toolbar{gap:12px}.carousel-selector{width:26px}.carousel-arrow{width:28px;height:28px}.carousel-pause{min-width:53px}}
@media(prefers-reduced-motion:reduce){.carousel-slide{transition:none}}
