/* Scoped CrewFill UK broadcast illustration. */
.cfb-section{padding:90px 0!important;background:#f1f9fc;color:#0a2533}
.cfb-wrap{width:min(1400px,100%);padding:0 32px;margin:auto}
.cfb-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:30px}
.cfb-eyebrow{font:800 11px "Manrope","Segoe UI",sans-serif;color:#0c7ea8;letter-spacing:.14em;display:block;margin-bottom:16px}
.cfb-heading h2{font:750 clamp(28px,3.4vw,47px)/1.13 "Manrope","Segoe UI",sans-serif;letter-spacing:-1.7px;margin:0}
.cfb-heading h2 span{color:#0c7ea8}
.cfb-heading>p{font:400 14px/1.8 "Inter","Segoe UI",sans-serif;color:#506d7d;max-width:400px;margin:0 0 4px}
.cfb-panel{position:relative;border:1px solid #204251;border-radius:26px;background:#081e2c;box-shadow:0 24px 65px -34px #164a5b65;overflow:hidden;isolation:isolate}
.cfb-panel:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 51% 49%,#10516a40,transparent 65%);z-index:-1}
.cfb-panel-top{display:flex;justify-content:space-between;align-items:center;padding:25px 32px 0;gap:16px;position:relative;z-index:2}
.cfb-brand{font:750 10px "Manrope","Segoe UI",sans-serif;letter-spacing:.1em;color:#eaf6fc;display:flex;align-items:center;gap:0}
.cfb-brand>span{color:#39c2ee}.cfb-brand>i{height:15px;width:1px;background:#33505e;margin:0 10px}
.cfb-sample{color:#91adbb;font:400 10px "Inter","Segoe UI",sans-serif;display:flex;align-items:center;gap:7px}
.cfb-sample>i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#46b7db}
.cfb-canvas{position:relative;margin-top:-10px;height:clamp(550px,67vw,850px)}
.cfb-svg{display:block;width:100%;height:100%;overflow:visible}
.cfb-network-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.cfb-panel[data-renderer=static] .cfb-network-canvas{display:none}
.cfb-land{fill:url(#cfb-land-fill);stroke:#3f829c;stroke-width:.85;vector-effect:non-scaling-stroke}
.cfb-land-shadow{fill:#04131e;stroke:#153b4c;stroke-width:1.8;vector-effect:non-scaling-stroke}
.cfb-context-land{fill:#102b3a;stroke:#254754;stroke-width:.75;opacity:.65}
.cfb-map-grid{stroke:#2c7084;stroke-width:.35;opacity:.14;vector-effect:non-scaling-stroke}
.cfb-map-coast-glow{fill:none;stroke:#58d0f0;stroke-width:1;opacity:.14}
.cfb-worker{fill:#42768a;opacity:.3}
.cfb-worker.cfb-reached{fill:#61d9fc;opacity:1}
.cfb-worker.cfb-available{fill:#66e2c2;opacity:1}
.cfb-city-label{fill:#779dac;font:400 11px "Inter","Segoe UI",sans-serif}
.cfb-message{position:absolute;z-index:2;transition:top .65s ease,left .65s ease;left:5%;top:21%;width:235px;padding:20px;border-radius:14px;border:1px solid #31556899;background:linear-gradient(145deg,#102e40f5,#092334f5);box-shadow:0 16px 48px #03121e40}
.cfb-message,.cfb-response{will-change:opacity,transform}
.cfb-message-eyebrow{display:block;font:650 8px "Inter","Segoe UI",sans-serif;letter-spacing:.11em;color:#6d99ad;margin-bottom:14px}
.cfb-message>strong{display:block;min-height:47px;font:750 18px/1.3 "Manrope","Segoe UI",sans-serif;color:#f1f9fe;letter-spacing:-.35px}
.cfb-message>p{font:400 10px/1.7 "Inter","Segoe UI",sans-serif;color:#9cb8c6;margin:6px 0 14px}
.cfb-message-status{display:inline-flex;color:#84dbf4;background:#153e52;border:1px solid #25556a;padding:5px 8px;border-radius:5px;font:550 9px "Inter","Segoe UI",sans-serif}
.cfb-response{position:absolute;z-index:2;right:4%;bottom:25%;display:flex;gap:10px;align-items:center;padding:14px 18px;border:1px solid #285e5d;border-radius:10px;background:#0d3038ed;opacity:0;transform:translateY(10px);transition:opacity .5s,transform .5s;pointer-events:none}
.cfb-panel.cfb-responding .cfb-response{opacity:1;transform:translateY(0)}
.cfb-response>span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#194c4c;color:#6ce8c6}
.cfb-response strong{display:block;color:#c5f2e7;font:650 11px "Inter","Segoe UI",sans-serif}
.cfb-response small{display:block;color:#84b6b4;font:400 9px "Inter","Segoe UI",sans-serif;margin-top:5px}
.cfb-legend{position:absolute;z-index:2;bottom:24px;left:32px;display:flex;gap:18px;color:#7f9eac;font:400 9px "Inter","Segoe UI",sans-serif}
.cfb-legend span{display:flex;align-items:center;gap:6px}.cfb-legend i{display:block;width:5px;height:5px;border-radius:50%}
.cfb-key-worker{background:#61d9fc}.cfb-key-response{background:#66e2c2}
.cfb-geography{position:absolute;z-index:2;bottom:24px;right:32px;color:#4b7182;font:500 9px "Inter","Segoe UI",sans-serif;letter-spacing:.22em}
.cfb-dashboard{position:relative;border-top:1px solid #24414e;background:#091d2a;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 32px}
.cfb-metrics{display:flex;gap:clamp(28px,7vw,100px)}.cfb-metrics>div{min-width:100px}
.cfb-metrics strong{font:500 clamp(27px,3.5vw,43px)/1 "Manrope","Segoe UI",sans-serif;letter-spacing:-1.6px;color:#e4f6fe;font-variant-numeric:tabular-nums}
.cfb-metrics strong.cfb-response-total{color:#6ae0c2}
.cfb-metrics span{display:block;font:400 9px "Inter","Segoe UI",sans-serif;color:#8fabb9;margin-top:9px}
.cfb-announcement{margin:0!important;padding:0 32px 19px;color:#92b1c1;font:400 10px/1.7 "Inter","Segoe UI",sans-serif}
.cfb-disclaimer{font:400 10px/1.8 "Inter","Segoe UI",sans-serif;color:#687f8a;margin:18px 0 0!important;max-width:820px}
@media(max-width:950px){.cfb-message{left:3%;top:11%;width:205px;padding:14px}.cfb-heading>p{max-width:300px;font-size:12px}.cfb-response{right:3%;bottom:19%;padding:12px}.cfb-dashboard{padding:20px}.cfb-metrics{gap:26px}.cfb-metrics>div{min-width:85px}.cfb-metrics span{max-width:115px;line-height:1.5}.cfb-panel-top{padding:22px 22px 0}.cfb-announcement{padding-left:22px;padding-right:22px}}
@media(max-width:680px){.cfb-section{padding:60px 0!important}.cfb-wrap{padding:0 16px}.cfb-heading{display:block;margin-bottom:22px}.cfb-heading>p{margin-top:16px;max-width:none;font-size:12px}.cfb-heading h2{font-size:32px;letter-spacing:-1.1px}.cfb-panel{border-radius:18px}.cfb-panel-top{display:block;padding:19px 18px 0}.cfb-brand{font-size:9px}.cfb-sample{font-size:8px;margin-top:11px}.cfb-canvas{height:640px;margin-top:0}.cfb-svg{width:140%;margin-left:-20%}.cfb-message{left:14px;top:5%;width:172px;padding:12px}.cfb-message-eyebrow{font-size:6px;letter-spacing:.05em;margin-bottom:8px}.cfb-message>strong{font-size:12px}.cfb-message>p{font-size:8px}.cfb-message-status{font-size:8px}.cfb-response{right:12px;bottom:12%;padding:11px}.cfb-response strong{font-size:9px}.cfb-response small{font-size:8px}.cfb-response>span{height:22px;width:22px}.cfb-legend{left:18px;bottom:20px;font-size:8px;gap:12px}.cfb-geography{right:18px;bottom:41px;font-size:7px}.cfb-dashboard{display:block;padding:20px 18px}.cfb-metrics{justify-content:space-between;gap:10px}.cfb-metrics>div{min-width:0;flex:1}.cfb-metrics strong{font-size:31px}.cfb-metrics span{font-size:8px;line-height:1.6}.cfb-controls{margin-top:19px;justify-content:flex-end}.cfb-announcement{font-size:9px;padding:0 18px 18px}.cfb-disclaimer{font-size:9px}.cfb-city-label{font-size:13px}}
@media(prefers-reduced-motion:reduce){.cfb-panel *{animation:none!important;transition:none!important}}
/* Keep the geographic plate large rather than letterboxed on narrow screens. */
@media(max-width:680px){.cfb-svg{width:200%;margin-left:-50%}}
@media(max-width:950px){.cfb-message>strong{font-size:16px;min-height:42px}}
@media(max-width:680px){.cfb-message>strong{font-size:14px;min-height:37px}}
@media(max-width:680px){.cfb-network-canvas{width:200%;margin-left:-50%}}

/* Preview-specific composition. Existing live map styles remain untouched. */
.cfg-panel{background:#040e18;border-color:#1c3444;box-shadow:0 28px 70px -38px #062b4566}
.cfg-panel:before{background:radial-gradient(ellipse at 19% 35%,#17475b22,transparent 58%)}
.cfg-panel .cfb-canvas{height:clamp(570px,63vw,780px);margin-top:6px}
.cfg-panel .cfb-svg{overflow:visible}
.cfg-panel .cfg-graticule{fill:none;stroke:#6ba0b9;stroke-width:.65;opacity:.105}
.cfg-panel .cfb-land{fill:url(#cfb-land-fill);stroke:#6aa7be;stroke-width:.65}
.cfg-panel #cfb-land-fill stop:first-child{stop-color:#265a6c}
.cfg-panel #cfb-land-fill stop:last-child{stop-color:#102c3e}
.cfg-panel .cfb-land-shadow{fill:#020d16;stroke:#102b3c;opacity:.55}
.cfg-panel .cfb-context-land{fill:#0c2737;stroke:#254757;opacity:.6}
.cfg-panel .cfb-map-coast-glow{stroke:#a3dded;opacity:.12;stroke-width:.7}
.cfg-panel .cfb-worker{fill:#5991a6;opacity:.32}
.cfg-panel .cfb-city-label{fill:#99b7c7;font-size:10px;letter-spacing:.02em}
.cfg-panel .cfb-panel-top{padding-top:28px}
.cfg-panel .cfb-message{border-color:#33576c88;background:linear-gradient(135deg,#10283ced,#071b2ae8);box-shadow:0 14px 36px #01070d44}
.cfg-panel .cfb-response{background:#0b2832eb;border-color:#2a595d}
.cfg-panel .cfb-dashboard{background:#05131f;border-top-color:#1b3445}
.cfg-panel .cfb-announcement{background:#05131f}
.cfg-panel .cfb-legend{color:#8eacbd}
.cfg-panel .cfb-geography{color:#658595}
@media(max-width:950px){.cfg-panel .cfb-canvas{height:660px}}
@media(max-width:680px){
 .cfg-panel .cfb-canvas{height:640px;margin-top:5px}
 .cfg-panel .cfb-panel-top{padding-top:22px}
 .cfg-panel .cfb-city-label{font-size:12px}
 .cfg-panel .cfb-message{top:4%;left:14px;width:172px}
}

/* Curved surface preview: fallback and Canvas share one responsive viewport. */
.cfg-curved-panel .cfb-canvas{height:clamp(580px,63vw,780px)}
.cfg-curved-panel .cfg-fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.cfg-curved-panel .cfb-network-canvas{display:none}
.cfg-curved-panel[data-curved-renderer=canvas] .cfb-network-canvas{display:block}
.cfg-curved-panel[data-curved-renderer=canvas] .cfb-network-canvas{pointer-events:auto;cursor:grab;touch-action:pan-y;user-select:none}
.cfg-curved-panel.cfg-dragging .cfb-network-canvas{cursor:grabbing}
.cfg-curved-panel .cfb-network-canvas:focus-visible{outline:2px solid #6ed5f4;outline-offset:-5px}
.cfg-curved-panel .cfb-network-canvas[data-input-modality=pointer]:focus{outline:none}
.cfg-curved-panel .cfb-message{pointer-events:none}
.cfg-curved-panel[data-curved-renderer=canvas] .cfg-fallback{visibility:hidden}
.cfg-globe-access{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.cfg-curved-panel .cfb-message{left:5%;top:19%;transition:none}
@media(max-width:680px){.cfg-curved-panel .cfb-canvas{height:640px}.cfg-curved-panel .cfg-fallback{width:200%;margin-left:-50%}.cfg-curved-panel .cfb-message{left:14px;top:3%}}

/* One continuous dark section: the globe is the backdrop, not a separate card. */
.cfb-section.cfg-section{padding:0!important;background:#040e18;color:#f0f7fb;overflow:hidden}
.cfg-section>.cfb-wrap{width:100%;max-width:none;padding:0;margin:0}
.cfg-section .cfg-curved-panel{border:0;border-radius:0;box-shadow:none;background:#040e18;overflow:hidden}
.cfg-section .cfg-curved-panel:before{display:none}
.cfg-section .cfb-panel-top{position:absolute;inset:0 0 auto;z-index:4;padding:30px clamp(24px,4.5vw,72px) 0;pointer-events:none}
.cfg-section .cfg-curved-panel .cfb-canvas{height:clamp(700px,68vw,920px);margin:0;overflow:hidden}
.cfg-section .cfb-canvas:after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(90deg,#040e18ed 0%,#040e18bb 20%,#040e1859 40%,transparent 65%),linear-gradient(0deg,#040e18aa,transparent 20%)}
.cfg-section .cfb-heading.cfg-copy{position:absolute;z-index:3;left:clamp(24px,4.5vw,72px);bottom:20%;top:auto;display:block;max-width:min(57%,660px);margin:0;pointer-events:none}
.cfg-section .cfg-copy .cfb-eyebrow{color:#6bcce9;font-size:10px;letter-spacing:.16em;margin-bottom:22px}
.cfg-section .cfg-copy h2{font-size:clamp(42px,4.8vw,72px);line-height:1.06;letter-spacing:-2.4px;font-weight:750;color:#f5f9fc;text-shadow:0 2px 24px #020b1466}
.cfg-section .cfg-copy h2 span{color:#d5f1fb}
.cfg-section .cfg-copy>p{color:#a6bdcb;font-size:14px;line-height:1.85;max-width:390px;margin:24px 0 0}
.cfg-section .cfg-activity-stack{position:absolute;z-index:3;right:clamp(24px,4.5vw,72px);top:30%;width:240px;display:flex;flex-direction:column;gap:14px;pointer-events:none}
.cfg-section .cfg-activity-stack .cfb-message,.cfg-section .cfg-activity-stack .cfb-response{position:relative;inset:auto;width:100%;margin:0}
.cfg-section .cfg-activity-stack .cfb-message{padding:20px;box-shadow:0 18px 45px #0005;background:linear-gradient(135deg,#102a3eeb,#071a29ed);border-color:#42657888}
.cfg-section .cfg-activity-stack .cfb-response{padding:15px 16px;background:#0b2832ed;border-color:#34676b88}
.cfg-section .cfb-legend{left:clamp(24px,4.5vw,72px);bottom:27px;z-index:3}
.cfg-section .cfb-geography{right:clamp(24px,4.5vw,72px);bottom:27px;z-index:3}
.cfg-section .cfg-curved-panel .cfb-dashboard{background:#040e18;border-top:1px solid #24404f88;padding:28px clamp(24px,4.5vw,72px)}
.cfg-section .cfg-curved-panel .cfb-announcement{background:#040e18;padding:0 clamp(24px,4.5vw,72px) 20px;color:#8da8b9}
.cfg-section .cfb-disclaimer{background:#040e18;color:#698899;max-width:none;margin:0!important;padding:0 clamp(24px,4.5vw,72px) 28px}
@media(max-width:950px){
 .cfg-section .cfb-heading.cfg-copy{max-width:55%;bottom:22%}
 .cfg-section .cfg-copy h2{font-size:44px;letter-spacing:-1.6px}
 .cfg-section .cfg-copy>p{font-size:12px;max-width:320px}
 .cfg-section .cfg-activity-stack{width:200px;top:32%}
 .cfg-section .cfg-activity-stack .cfb-message{padding:16px}
}
@media(max-width:680px){
 .cfg-section .cfg-curved-panel .cfb-canvas{height:960px}
 .cfg-section .cfb-panel-top{padding:24px 22px 0}
 .cfg-section .cfb-heading.cfg-copy{left:24px;top:115px;bottom:auto;max-width:calc(100% - 48px)}
 .cfg-section .cfg-copy h2{font-size:clamp(35px,9.2vw,48px);letter-spacing:-1.4px}
 .cfg-section .cfg-copy .cfb-eyebrow{margin-bottom:17px;font-size:9px}
 .cfg-section .cfg-copy>p{font-size:12px;margin-top:19px;max-width:310px}
 .cfg-section .cfb-canvas:after{background:linear-gradient(180deg,#040e1840,transparent 40%,#040e1866),linear-gradient(90deg,#040e18a6,transparent 85%)}
 .cfg-section .cfg-curved-panel .cfb-network-canvas,.cfg-section .cfg-curved-panel .cfg-fallback{top:135px;bottom:auto;height:800px;width:200%;margin-left:-50%}
 .cfg-section .cfg-activity-stack{right:22px;top:auto;bottom:85px;width:190px;gap:12px}
 .cfg-section .cfg-activity-stack .cfb-message{padding:14px}
 .cfg-section .cfg-activity-stack .cfb-response{padding:12px}
 .cfg-section .cfb-geography{font-size:7px}
}

/* Current homepage wording and navigation, with the globe as its hero backdrop. */
body.cfg-home-page>nav{background:rgba(4,14,24,.94);border-bottom-color:#213b4c;backdrop-filter:blur(14px)}
.cfg-home-page>nav .logo{color:#f1f8fc}
.cfg-home-page>nav .logo span{color:#40c4eb}
.cfg-home-page>nav .nav-links a{color:#b4c9d6}
.cfg-home-page>nav .nav-links a:hover{color:#fff}
.cfg-home-page>nav .nav-links .btn-primary{color:#062131}
.cfg-home-page .cfg-home-hero{scroll-margin-top:74px}
.cfg-home-page .cfg-home-hero .cfb-canvas{height:clamp(770px,65vw,920px)}
.cfg-home-page .cfb-heading.cfg-home-copy{left:clamp(24px,3vw,48px);top:clamp(64px,6.5vw,110px);bottom:auto;max-width:min(42%,470px);text-align:left}
.cfg-home-page .cfg-home-copy .rise{opacity:1;transform:none;animation:none}
.cfg-home-page .cfg-home-copy .eyebrow{color:#6bcce9;font-size:10px;letter-spacing:.15em;margin-bottom:22px}
.cfg-home-page .cfg-home-copy h1{font-family:'Manrope','Segoe UI',sans-serif;font-size:clamp(36px,3.8vw,54px);font-weight:750;line-height:1.08;letter-spacing:-1.7px;color:#f5f9fc;margin:0;max-width:470px;text-wrap:balance}
.cfg-home-page .cfg-home-copy h1 em{font-style:normal;color:#66cde9}
.cfg-home-page .cfg-home-copy .sub{font-size:14px;line-height:1.85;color:#a9c0cf;max-width:390px;margin:22px 0 0}
.cfg-home-page .cfg-home-copy .hero-ctas{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px;pointer-events:auto;width:fit-content;max-width:100%}
.cfg-home-page .cfg-home-copy .btn{font-size:14px;padding:14px 23px;pointer-events:auto}
.cfg-home-page .cfg-home-copy .btn-primary{color:#062131}
.cfg-home-page .cfg-home-copy .btn-ghost{color:#e2f2fa;border-color:#58788b;background:#071a2655}
.cfg-home-page .cfg-home-copy .btn-ghost:hover{border-color:#7ed7f0;background:#103447;color:#fff}
.cfg-home-page .cfg-home-copy .hero-note{color:#86a6b8;font-size:12px;line-height:1.7;max-width:430px;margin:21px 0 0}
.cfg-home-page .cfg-home-hero .cfg-activity-stack{top:28%}
@media(max-width:950px){
 .cfg-home-page .cfb-heading.cfg-home-copy{max-width:45%;top:64px;bottom:auto}
 .cfg-home-page .cfg-home-copy h1{font-size:38px;letter-spacing:-1.3px}
 .cfg-home-page .cfg-home-copy .sub{font-size:13px;line-height:1.8;max-width:350px}
 .cfg-home-page .cfg-home-copy .hero-note{font-size:11px}
 .cfg-home-page .cfg-home-copy .btn{font-size:12px;padding:12px 17px}
}
@media(max-width:680px){
 .cfg-home-page .cfg-home-hero .cfb-canvas{height:1120px}
 .cfg-home-page .cfb-heading.cfg-home-copy{top:56px;bottom:auto;max-width:calc(100% - 48px)}
 .cfg-home-page .cfg-home-copy h1{font-size:clamp(35px,9vw,46px);letter-spacing:-1.2px}
 .cfg-home-page .cfg-home-copy .sub{font-size:13px;line-height:1.8;margin-top:20px;max-width:380px}
 .cfg-home-page .cfg-home-copy .hero-ctas{margin-top:22px;gap:10px}
 .cfg-home-page .cfg-home-copy .hero-note{font-size:11px;line-height:1.7;margin-top:18px}
 .cfg-home-page .cfg-home-hero .cfb-network-canvas,.cfg-home-page .cfg-home-hero .cfg-fallback{top:180px;height:900px}
 .cfg-home-page .cfg-home-hero .cfg-activity-stack{top:auto;bottom:85px}
}
