/* Firestorm Editorial Signal, immutable 2026-09-03 */
.signal-utility{height:34px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1280px)/2));background:#102f36;color:#dce9e8;font-size:11px;font-weight:800;letter-spacing:.02em}
.signal-masthead{position:relative;z-index:30;width:min(calc(100% - 48px),1280px);height:90px;margin:auto;display:grid;grid-template-columns:minmax(285px,330px) 1fr auto;align-items:center;gap:28px;background:#fff;border-bottom:1px solid #dfe4e3}
.signal-brand{display:flex;align-items:center;gap:12px;color:#102f36;text-decoration:none;min-width:0}
.signal-brand>img{display:block;width:50px;height:50px;object-fit:cover;border-radius:13px;flex:0 0 50px}
.signal-wordmark{display:block;font-family:Manrope,Arial,sans-serif;font-weight:800;line-height:.93;letter-spacing:-.05em;font-size:20px}
.signal-wordmark span,.signal-wordmark strong{display:block;font:inherit}
.signal-masthead #nav.signal-nav{display:flex;align-items:center;justify-content:flex-end;gap:27px;margin:0;padding:0;background:transparent;border:0}
.signal-nav a{color:#102f36;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}
.signal-nav a:hover,.signal-nav a:focus-visible{color:#246bfe}
.signal-nav .nav-check-mobile{display:none}
.signal-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border-radius:9px;background:#ef5b3f;color:#fff;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}
.signal-masthead .menu{display:none}
.signal-category-rail{height:48px;display:flex;align-items:center;gap:28px;padding:0 max(24px,calc((100vw - 1280px)/2));overflow-x:auto;background:#edf5f3;border-bottom:1px solid #c8ddd8;scrollbar-width:none}
.signal-category-rail::-webkit-scrollbar{display:none}
.signal-category-rail a{color:#102f36;text-decoration:none;font-size:12px;font-weight:800;white-space:nowrap}
.signal-category-rail a:first-child{color:#246bfe}
.signal-home-hero{position:relative;z-index:0;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:64px;align-items:center;width:min(calc(100% - 48px),1280px);min-height:690px;margin:auto;padding:72px 0;background:#fff}
.signal-home-hero::before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:linear-gradient(116deg,#fbf7ef 0%,#fbf7ef 60%,#dcefed 60%,#dcefed 100%)}
.signal-home-hero .hero-copy{max-width:720px}
.signal-home-hero .eyebrow{color:#ef5b3f;font-size:11px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}
.signal-home-hero h1{max-width:720px;margin:18px 0 22px;color:#102f36;font-family:Georgia,'Times New Roman',serif;font-size:clamp(3.7rem,5.5vw,6rem);font-weight:700;line-height:.91;letter-spacing:-.06em}
.signal-home-hero .hero-lede{max-width:650px;margin:0;color:#53676c;font-size:17px;line-height:1.65}
.signal-home-hero .hero-actions{display:flex;align-items:center;gap:12px;margin-top:27px}
.signal-home-hero .hero-actions a{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 20px;border-radius:9px;text-decoration:none;font-size:13px;font-weight:800}
.signal-home-hero .hero-actions .primary{background:#102f36;color:#fff}
.signal-home-hero .hero-actions .secondary{border:1px solid #9daead;color:#102f36}
.signal-proof{display:flex;flex-wrap:wrap;gap:10px 20px;margin:26px 0 0;padding:18px 0 0;border-top:1px solid #d8e1de;list-style:none}
.signal-proof li{color:#48646a;font-size:11px;font-weight:700}
.signal-proof li::before{content:'✓';margin-right:6px;color:#176b4c}
.signal-home-image{margin:0;background:#fff;border:1px solid #d4dedb;border-radius:18px;overflow:hidden;box-shadow:0 26px 65px rgba(21,57,65,.17)}
.signal-home-image img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.signal-home-image figcaption{padding:14px 18px;color:#597076;background:#fff;font-size:12px;font-weight:800}
.signal-footer{display:block;grid-template-columns:none;padding:46px 0;background:#102f36;color:#dce9e8}
.signal-footer-inner{width:min(calc(100% - 48px),1280px);margin:auto;display:grid;grid-template-columns:minmax(250px,330px) minmax(220px,1fr) auto;align-items:center;gap:34px}
.signal-footer-brand{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none}
.signal-footer-brand img{display:block;width:42px;height:42px;object-fit:cover;border-radius:11px;flex:0 0 42px}
.signal-footer .signal-wordmark{font-size:17px;color:#fff}
.signal-footer p{margin:0;color:#bfcfce;font-size:12px;line-height:1.55}
.signal-footer nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px 20px}
.signal-footer nav a{color:#fff;text-decoration:none;font-size:11px;font-weight:800}
@media(max-width:980px){
 .signal-utility{padding:0 18px}.signal-utility span:last-child{display:none}
 .signal-masthead{width:calc(100% - 36px);height:76px;display:flex;gap:12px}
 .signal-brand>img{width:42px;height:42px;flex-basis:42px;border-radius:11px}.signal-wordmark{font-size:16px}
 .signal-masthead .menu{display:block;margin-left:auto;min-width:46px;min-height:46px;border:1px solid #102f36;border-radius:10px;background:#fff;color:#102f36;font-weight:800}
 .signal-masthead #nav.signal-nav{display:none;position:absolute;top:72px;left:0;right:0;z-index:50;padding:14px;background:#fff;border:1px solid #dfe4e3;border-radius:0 0 12px 12px;box-shadow:0 18px 35px rgba(16,47,54,.14)}
 .signal-masthead #nav.signal-nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .signal-masthead #nav.signal-nav a{padding:12px;border-bottom:1px solid #edf1ef}
 .signal-nav .nav-check-mobile{display:block}.signal-header-cta{display:none}
 .signal-category-rail{height:42px;gap:22px;padding:0 18px}
 .signal-home-hero{grid-template-columns:1fr;gap:32px;width:calc(100% - 36px);min-height:auto;padding:48px 0 54px}
 .signal-home-hero::before{height:100%;background:#fbf7ef}
 .signal-home-hero h1{font-size:clamp(3.15rem,13vw,4.5rem)}
 .signal-home-hero .hero-lede{font-size:15px}
 .signal-home-hero .hero-actions{display:grid;grid-template-columns:1fr 1fr}
 .signal-proof{gap:9px 16px}
 .signal-home-image{margin:0 9px}
 .signal-footer-inner{grid-template-columns:1fr;gap:22px}.signal-footer nav{justify-content:flex-start}
}
@media(max-width:520px){
 .signal-utility{font-size:10px}.signal-home-hero .hero-actions{grid-template-columns:1fr}.signal-home-hero .hero-actions a{width:100%}
 .signal-home-hero h1{font-size:3.25rem}.signal-home-image figcaption{font-size:11px}
}
