/* EquitorialStar homepage refresh: a warmer visual rhythm around the CMS content. */
.homepage-shell { overflow: clip; }
.home-proof-strip { position: relative; z-index: 2; color: rgb(226 232 240); background: rgb(15 35 56); }
.home-proof-item { display: flex; align-items: flex-start; gap: .8rem; min-width: 0; }
.home-proof-item svg { flex: 0 0 auto; width: 1.35rem; height: 1.35rem; margin-top: .1rem; color: rgb(44 211 238); }
.home-proof-item strong, .home-proof-item small { display: block; }
.home-proof-item strong { color: white; font-size: .82rem; font-weight: 700; }
.home-proof-item small { margin-top: .2rem; color: rgb(148 163 184); font-size: .75rem; line-height: 1.5; }
.home-about-section { position: relative; }
.home-about-section::before { position: absolute; top: 0; right: 7%; width: 13rem; height: 13rem; border: 1px solid rgb(8 145 178 / .14); border-radius: 999px; content: ""; pointer-events: none; }
.home-service-card { isolation: isolate; background: rgb(255 255 255 / .72); transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.home-service-card::after { position: absolute; right: 1.5rem; bottom: 1.5rem; width: 2.4rem; height: 2px; background: rgb(8 145 178); content: ""; opacity: .35; transition: width .2s ease, opacity .2s ease; }
.home-service-card:hover, .home-service-card:focus-within { border-color: rgb(8 145 178 / .5); box-shadow: 0 18px 40px rgb(15 35 56 / .1); transform: translateY(-4px); }
.home-service-card:hover::after, .home-service-card:focus-within::after { width: 4rem; opacity: 1; }
.home-newsletter-band { position: relative; overflow: hidden; background: radial-gradient(circle at 85% 25%, rgb(34 211 238 / .2), transparent 20rem), linear-gradient(120deg, rgb(15 35 56), rgb(20 68 78)); }
.home-newsletter-band::before { position: absolute; right: -5rem; bottom: -10rem; width: 24rem; height: 24rem; border: 1px solid rgb(255 255 255 / .1); border-radius: 999px; content: ""; }
.home-newsletter-pill { border: 1px solid rgb(255 255 255 / .18); border-radius: 999px; padding: .45rem .75rem; }
.home-newsletter-card { position: relative; z-index: 1; border: 1px solid rgb(255 255 255 / .2); border-radius: 1.25rem; padding: 1.35rem; background: rgb(255 255 255 / .96); box-shadow: 0 22px 50px rgb(2 15 28 / .22); }
.home-newsletter-card label { color: rgb(15 35 56); font-family: Sora, Inter, sans-serif; font-size: .92rem; font-weight: 700; }
.home-newsletter-card input { min-width: 0; flex: 1 1 auto; border: 1px solid rgb(203 213 225); border-radius: 999px; padding: .8rem 1rem; color: rgb(15 35 56); font-size: .9rem; outline: none; }
.home-newsletter-card input:focus { border-color: rgb(8 145 178); box-shadow: 0 0 0 3px rgb(8 145 178 / .15); }
.home-newsletter-card button { flex: 0 0 auto; border: 0; border-radius: 999px; padding: .8rem 1rem; color: rgb(15 35 56); background: rgb(245 158 11); font-size: .85rem; font-weight: 800; cursor: pointer; transition: background .2s ease, transform .2s ease; }
.home-newsletter-card button:hover, .home-newsletter-card button:focus-visible { background: rgb(251 191 36); transform: translateY(-1px); }
.home-newsletter-card #homepage-newsletter-msg { margin-top: .75rem; color: rgb(8 145 178); font-size: .78rem; line-height: 1.5; }
.home-newsletter-card #homepage-newsletter-msg.is-error { color: rgb(185 28 28); }
@media (max-width: 640px) { .home-proof-item { padding-block: .15rem; } .home-newsletter-card button { width: 100%; } }
