/* CityEngine public release 3.0. Scoped to these public pages; no shared control styles are replaced. */
:root{--ink:#10233f;--body:#465e7c;--muted:#5b718a;--blue:#075edb;--blue-dark:#0649ad;--teal:#087b7e;--gold:#eaa51b;--line:#dbe6f1;--paper:#fff;--soft:#edf5ff;--ground:#f6faff;--shadow:0 24px 60px rgba(31,78,121,.09);--radius:24px;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.7;background:radial-gradient(ellipse at 5% 0%,#dff7ff 0,transparent 30%),radial-gradient(ellipse at 97% 0%,#fff2d9 0,transparent 22%),linear-gradient(180deg,#fff,#f2f8ff 65%,#f7fbff);-webkit-text-size-adjust:100%}a{color:var(--blue);text-underline-offset:4px}a:hover{color:var(--blue-dark)}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}button:disabled{cursor:default;opacity:.6}button,input,select,textarea{max-width:100%}a,button,summary,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #0566cc;outline-offset:4px}[hidden]{display:none!important}img{max-width:100%;height:auto}h1,h2,h3,h4,p,figure{margin-top:0}h1,h2,h3{text-wrap:balance;line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,5.6vw,4.5rem);font-weight:800;margin-bottom:24px;max-width:19ch;line-height:1.01;letter-spacing:-.055em}h2{font-size:clamp(1.75rem,3.15vw,2.5rem);font-weight:750;margin-bottom:20px}h3{font-size:1.25rem;letter-spacing:-.02em;line-height:1.25;margin-bottom:12px}p{color:var(--body);margin-bottom:19px}p:last-child{margin-bottom:0}strong{color:var(--ink)}ul,ol{padding-left:1.25rem;color:var(--body)}li+li{margin-top:8px}::selection{background:#cce4ff;color:var(--ink)}.wrap{width:min(1280px,calc(100% - 48px));margin-inline:auto}.narrow{max-width:840px}.skip-link{position:absolute;top:-100px;left:24px;background:var(--ink);color:white;padding:12px 18px;z-index:10000;border-radius:8px}.skip-link:focus{top:12px}
/* Brand and navigation */
.site-header{width:min(1280px,calc(100% - 48px));margin:18px auto 0;background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:21px;box-shadow:0 13px 38px rgba(31,78,121,.07);position:relative;z-index:20}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:10px 22px}.brand-link{display:block;line-height:0;flex:0 0 auto}.brand-logo{width:240px;height:80px;object-fit:contain}.workspace-links{display:flex;gap:9px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.workspace-links a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;color:#294b74;background:#f4f9ff;border:1px solid #d8e6f4;border-radius:11px;text-decoration:none;font-weight:700;font-size:.76rem;white-space:nowrap}.workspace-links a:last-child{background:linear-gradient(135deg,#075edb,#087b9a);color:white;border-color:transparent}.workspace-links a:hover{box-shadow:0 5px 18px #10233f12}.main-nav{border-top:1px solid #e6edf5;display:flex;gap:30px;align-items:center;padding:9px 25px}.main-nav a{font-size:.85rem;font-weight:700;color:#345273;text-decoration:none;padding:8px 0}.main-nav a[aria-current=page]{color:var(--blue);text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:2px}.main-nav a:hover{color:var(--blue)}.mobile-menu{display:none}.mobile-menu>summary{list-style:none;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:10px;font-size:.84rem;font-weight:750}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-links{position:absolute;top:calc(100% + 8px);left:0;right:0;background:white;border:1px solid var(--line);border-radius:16px;padding:16px 24px 22px;box-shadow:var(--shadow)}.mobile-links a{display:block;min-height:44px;padding:9px 0;color:var(--ink);font-weight:650;text-decoration:none;font-size:.94rem}.mobile-links a[aria-current=page]{color:var(--blue)}.mobile-label{display:block;margin-top:13px;padding-top:15px;border-top:1px solid var(--line);color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:25px;font-size:.78rem;color:var(--muted)}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs span[aria-hidden]{color:#8da4bd}
/* Page introductions */
.hero{padding:50px 0 48px}.hero--home{padding:26px 0 24px}.hero-panel{display:grid;grid-template-columns:1.06fr 1fr;gap:45px;align-items:center;padding:48px;border-radius:30px;border:1px solid #d9e7f3;background:linear-gradient(140deg,#fff 15%,#eff7ff 100%);box-shadow:var(--shadow)}.hero-panel h1{font-size:clamp(2.7rem,5.3vw,4.75rem);max-width:13ch}.hero-copy{min-width:0}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#0a65c7;margin-bottom:17px;display:flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:25px;height:3px;background:var(--gold);flex:0 0 auto}.lead{font-size:1.13rem;line-height:1.8;max-width:70ch;color:#4a6380}.hero-panel .lead{font-size:1.04rem}.hero-art{margin:0;min-width:0}.hero-art img{display:block;width:100%;border-radius:21px;box-shadow:0 20px 45px rgba(31,78,121,.15)}.hero-art figcaption{font-size:.74rem;margin:13px 2px 0;color:var(--muted)}.hero--inner .hero-inner{display:grid;grid-template-columns:1.3fr .7fr;gap:50px;align-items:center}.hero-aside{border-left:3px solid var(--gold);padding:7px 0 7px 24px}.hero-aside p{font-size:.94rem}.hero-aside .small-label{font-size:.71rem;color:var(--teal);font-weight:750;letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px}.hero--inner h1{max-width:20ch}.hero--simple h1{max-width:24ch}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:26px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:47px;padding:12px 20px;border:1px solid transparent;border-radius:11px;text-decoration:none;font-size:.91rem;font-weight:750;line-height:1.4;transition:background-color .15s,box-shadow .15s}.button--primary{background:linear-gradient(135deg,#075edb,#075bb7);color:white;box-shadow:0 7px 19px #075edb1c}.button--primary:hover{background:#0649ad;color:white}.button--secondary{background:white;color:var(--ink);border-color:#c9d9e9}.button--secondary:hover{background:#eaf3ff;color:var(--ink)}.button--light{background:white;color:var(--ink)}.button--light:hover{background:#e7f1ff;color:var(--ink)}.text-link{display:inline-block;min-height:42px;padding:7px 0;font-size:.93rem;font-weight:700;text-decoration:none}.text-link:after{content:" →"}.hero-topics{display:flex;flex-wrap:wrap;gap:7px 22px;margin:22px 0 0;color:#4e6782;font-size:.79rem;font-weight:650}.hero-topics span:before{content:"";display:inline-block;vertical-align:middle;width:6px;height:6px;border-radius:50%;background:#0b8b9b;margin-right:7px}
/* Content rhythm and distinct layouts */
.section{padding:54px 0}.section--white{background:rgba(255,255,255,.85);border-top:1px solid #e2ebf4;border-bottom:1px solid #e2ebf4}.section--compact{padding:32px 0}.section-heading{max-width:790px;margin-bottom:31px}.section-heading p{max-width:72ch}.section-heading--row{display:flex;justify-content:space-between;gap:30px;align-items:end;max-width:none}.section-heading--row>div{max-width:750px}.section-heading--row>a{flex-shrink:0}.section-heading h2{margin-bottom:13px}.split{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:start}.split>*{min-width:0}.kicker{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--teal);font-weight:800;margin-bottom:14px}.inset-note{border-radius:19px;background:#eaf3ff;border:1px solid #d3e4f7;padding:29px;min-width:0}.inset-note h3{font-size:1.3rem}.inset-note p{font-size:.94rem}.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:42px;row-gap:28px}.capability{border-top:2px solid #b6d7f5;padding-top:21px}.capability-index{display:inline-block;font-size:.72rem;font-weight:800;color:var(--teal);letter-spacing:.08em;margin-bottom:14px}.capability h3{font-size:1.23rem}.capability p{font-size:.94rem}.audience-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.audience-card{background:white;border:1px solid var(--line);border-radius:18px;padding:25px;display:flex;flex-direction:column;min-width:0}.audience-card h3{font-size:1.2rem}.audience-card p{font-size:.91rem;flex:1}.audience-card a{font-size:.85rem}.card{background:white;border:1px solid var(--line);border-radius:20px;padding:29px;min-width:0}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card h3{font-size:1.3rem}.card p{font-size:.95rem}.check-list{padding-left:20px;margin-bottom:0}.check-list li{padding-left:3px}.principles{display:grid;grid-template-columns:1fr 1fr;gap:24px 44px;margin-top:30px}.principle{border-left:3px solid #80b9ea;padding-left:21px}.principle h3{font-size:1.12rem}.principle p{font-size:.92rem}.roles-table{width:100%;border-collapse:collapse;background:white;font-size:.92rem}.roles-table th,.roles-table td{padding:20px 22px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.roles-table th{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;background:#f3f8fe}.roles-table td{color:var(--body)}.roles-table td:first-child{font-weight:750;color:var(--ink);width:22%}.table-frame{border:1px solid var(--line);border-radius:18px;overflow:hidden}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:28px}.comparison>article{padding:30px 32px;border:1px solid var(--line);background:white;border-radius:20px}.comparison>article:first-child{border-top:4px solid var(--teal)}.comparison>article:last-child{border-top:4px solid var(--blue)}.example{padding:32px 35px;border:1px solid #d4e2f2;border-radius:22px;background:linear-gradient(120deg,#eaf4ff,#f5fbff);margin-top:25px}.example .kicker{color:#38638a}.example h3{font-size:1.35rem}.example p{max-width:95ch}.steps{list-style:none;counter-reset:step;margin:0;padding:0}.steps li{counter-increment:step;display:grid;grid-template-columns:70px 1fr;column-gap:28px;position:relative;margin:0;padding:0 0 34px}.steps li:before{content:counter(step,decimal-leading-zero);display:grid;place-items:center;width:57px;height:57px;background:#e7f2ff;border:1px solid #cbdff4;border-radius:16px;color:var(--blue);font-size:1.05rem;font-weight:800}.steps li:not(:last-child):after{content:"";position:absolute;left:28px;top:67px;bottom:9px;width:1px;background:#c8daed}.steps h3{font-size:1.25rem;margin-top:5px}.steps p{max-width:80ch}.section-rail{display:grid;grid-template-columns:260px 1fr;gap:55px}.section-rail aside p{font-size:.94rem}.cta-band{background:linear-gradient(120deg,#10294b,#12385b);border-radius:24px;padding:39px 43px;display:flex;justify-content:space-between;align-items:center;gap:35px;margin:8px 0 56px;border-left:5px solid var(--gold)}.cta-band h2{color:white;font-size:1.8rem;margin-bottom:12px}.cta-band p{color:#d4e3f4;max-width:76ch}.cta-band .button{flex-shrink:0}.link-band{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:25px 30px;background:white;border:1px solid var(--line);border-radius:17px}.link-band h3{margin-bottom:7px;font-size:1.15rem}.link-band p{font-size:.9rem}.link-band a{flex-shrink:0}.quiet-note{font-size:.85rem;color:var(--muted);max-width:100ch;margin-top:22px}
/* Network directory and map */
.network-summary{display:flex;gap:24px;flex-wrap:wrap;align-items:center;margin-bottom:19px}.network-summary>span{color:var(--body);font-size:.85rem;display:flex;gap:8px;align-items:baseline}.network-summary strong{font-size:1.5rem;font-weight:800}.directory-source{font-size:.75rem;color:var(--muted);margin-bottom:20px}.directory-toolbar{padding:22px 24px;background:white;border:1px solid var(--line);border-radius:18px;margin-bottom:22px}.directory-controls{display:grid;grid-template-columns:2fr 1fr 1.4fr 1fr;gap:16px;align-items:end}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field label{font-weight:750;font-size:.79rem;color:#29476a}.field input,.field select,.field textarea{width:100%;min-width:0;min-height:47px;border:1px solid #bdcfe1;border-radius:10px;padding:11px 12px;background:white;color:var(--ink);line-height:1.45;font-size:1rem}.field textarea{resize:vertical;min-height:155px}.field small{color:var(--muted);font-size:.77rem}.field input::placeholder,.field textarea::placeholder{color:#667c96}.filter-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:15px}.filter-foot p{font-size:.84rem;margin:0}.reset-button{border:0;background:transparent;color:var(--blue);font-size:.84rem;font-weight:700;min-height:40px;padding:8px 4px;text-decoration:underline;text-underline-offset:4px}.map-shell{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.8fr);gap:22px;align-items:stretch}.map-panel,.selection-panel{background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden;min-width:0}.map-heading{padding:20px 23px 15px;display:flex;justify-content:space-between;gap:20px;align-items:start}.map-heading h2,.map-heading h3{font-size:1.18rem;margin-bottom:5px}.map-heading p{font-size:.77rem}.map-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:.72rem;color:var(--body);padding:0 23px 15px}.map-legend span{display:inline-flex;align-items:center;gap:7px}.legend-dot{display:inline-block;width:9px;height:9px;border-radius:50%;background:#15956d}.legend-dot--soon{background:#1b71d8}.map-anchor{position:relative}.map-placeholder{min-height:465px;padding:50px 30px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:radial-gradient(circle at 30% 25%,#d8efff,transparent 45%),linear-gradient(135deg,#eff7ff,#f8fbff);border-top:1px solid var(--line)}.map-placeholder p{max-width:48ch;font-size:.92rem}.map-placeholder h3{font-size:1.8rem;max-width:18ch}.map-placeholder .eyebrow{font-size:.7rem}.map-placeholder .button{margin-top:7px}#network-map{height:465px;background:#e7f0f7;z-index:1}.map-tools{display:flex;gap:12px;flex-wrap:wrap;padding:13px 20px;border-top:1px solid var(--line)}.map-tools button{min-height:39px;border:1px solid #d1dfed;border-radius:9px;background:white;color:#29476a;font-size:.78rem;font-weight:700;padding:8px 12px}.map-status{font-size:.74rem;line-height:1.55;margin:0;padding:0 21px 16px;color:var(--muted)}.selection-head{padding:20px 24px;border-bottom:1px solid var(--line);background:#f9fcff}.selection-head h2{font-size:1.13rem;margin-bottom:6px}.selection-head p{font-size:.78rem}.market-selection{padding:25px;overflow-wrap:anywhere}.market-selection h3{font-size:1.7rem;margin-bottom:12px}.market-selection p{font-size:.9rem}.market-selection .eyebrow{font-size:.67rem}.market-selection .selection-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0}.market-selection .selection-meta div{padding:12px;background:#f1f7fe;border-radius:10px}.market-selection .selection-meta span{font-size:.67rem;display:block;text-transform:uppercase;color:var(--muted);letter-spacing:.05em}.market-selection .selection-meta strong{font-size:.83rem}.market-selection .selection-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.market-selection .selection-note{font-size:.77rem;color:var(--muted);margin-top:18px}.market-selection .button{font-size:.84rem}.selection-placeholder{display:flex;flex-direction:column;justify-content:center;min-height:300px}.selection-placeholder .placeholder-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#e7f2ff;color:var(--blue);font-size:1.3rem;margin-bottom:24px}.ce-map-pin{width:18px;height:18px;border:3px solid white;border-radius:50%;background:#1b71d8;box-shadow:0 2px 8px #17385455}.ce-map-pin--live{background:#138965}.ce-map-pin--soon{background:#1b71d8}.ce-map-pin--selected{box-shadow:0 0 0 5px #f2b136a8,0 2px 8px #17385455;transform:scale(1.15)}.ce-map-cluster{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#0d5eb8;color:white;border:3px solid #fff;box-shadow:0 0 0 4px #0d5eb827;font-size:12px;font-weight:800}.ce-map-cluster span{display:block}.leaflet-container{font-family:inherit!important;font-size:.86rem}.leaflet-control-attribution{font-size:10px!important}.leaflet-control-attribution a{color:#0756a9}.map-list-details{margin-top:25px;border:1px solid var(--line);border-radius:19px;background:#fff;padding:0 22px 22px}.map-list-details>summary{padding:20px 0;font-weight:750;color:var(--ink);font-size:.96rem}.map-list-details:not([open]){padding-bottom:0}.directory-list-heading{margin:32px 0 21px;display:flex;justify-content:space-between;gap:25px;align-items:baseline}.directory-list-heading h2{font-size:1.5rem;margin:0}.directory-list-heading a{font-size:.85rem;font-weight:650}.market-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.market-card{border:1px solid var(--line);border-radius:17px;background:white;padding:23px;display:flex;flex-direction:column;min-width:0}.market-card[data-status=live]{border-top:3px solid var(--teal);padding-top:21px}.market-card.is-selected{box-shadow:0 0 0 3px #dfb04855}.market-top{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px}.state-label{font-size:.69rem;color:var(--muted);font-weight:750;text-transform:uppercase;letter-spacing:.09em}.status-pill{display:inline-block;font-size:.67rem;font-weight:800;padding:4px 9px;border-radius:20px;line-height:1.5}.status-pill--live{background:#e7f5ed;color:#126548}.status-pill--soon{background:#edf4fe;color:#215a9c}.market-card h3{font-size:1.18rem;margin-bottom:4px;overflow-wrap:anywhere}.market-domain{font-size:.83rem;margin-bottom:12px;overflow-wrap:anywhere}.market-region{font-size:.75rem;color:var(--muted);margin-bottom:17px;flex:1}.market-actions{display:flex;flex-direction:column;gap:8px}.market-actions .button{min-height:42px;padding:10px 13px;font-size:.81rem}.market-login{display:inline-block;text-align:center;font-size:.76rem;font-weight:650;padding:6px 0;min-height:34px}.market-locate{border:0;background:transparent;color:#335b84;min-height:36px;padding:6px 0;font-size:.77rem;font-weight:700;text-decoration:underline;text-underline-offset:3px}.market-no-point{font-size:.73rem;color:var(--muted);margin:4px 0;text-align:center}.empty-results{padding:35px;border:1px dashed #b8cde2;border-radius:18px;background:white;text-align:center;margin-top:20px}.empty-results h3{font-size:1.3rem}.empty-results p{font-size:.92rem}.directory-note{font-size:.8rem;max-width:110ch;color:var(--muted);margin-top:21px}.region-list{display:flex;flex-wrap:wrap;gap:8px}.region-list span{padding:7px 12px;border:1px solid #d3e2f0;background:white;border-radius:20px;font-size:.77rem;color:#375a7f}
/* Contact, help and policies */
.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:30px;align-items:start}.contact-panel{padding:32px;background:white;border:1px solid var(--line);border-radius:22px;min-width:0}.contact-panel h2{font-size:1.6rem}.email-display{font-size:clamp(.94rem,1.65vw,1.19rem);font-weight:750;overflow-wrap:anywhere;text-decoration:none}.contact-form{display:grid;gap:19px;margin-top:23px}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.form-help{font-size:.8rem;color:var(--muted);margin:0}.form-result{background:#edf6ff;border:1px solid #cfe1f5;border-radius:14px;padding:21px;margin-top:25px}.form-result p{font-size:.87rem}.form-result textarea{display:block;width:100%;min-height:190px;resize:vertical;background:white;border:1px solid #b5cbe2;border-radius:9px;padding:13px;color:var(--body);font-size:.86rem}.contact-route{padding:20px 0;border-bottom:1px solid var(--line)}.contact-route:last-child{border:0;padding-bottom:0}.contact-route h3{font-size:1.03rem;margin-bottom:7px}.contact-route p{font-size:.87rem}.support-links{margin-top:25px;padding-top:24px;border-top:1px solid var(--line)}.support-links a{display:block;padding:7px 0;font-size:.87rem;font-weight:650}.faq-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:48px}.faq-side{position:sticky;top:24px;align-self:start}.faq-nav{display:flex;flex-direction:column;gap:0;margin:15px 0 25px}.faq-nav a{padding:8px 0;font-size:.86rem;font-weight:650}.faq-side h2{font-size:1.28rem}.faq-side p{font-size:.88rem}.faq-group+.faq-group{margin-top:40px}.faq-group>h2{font-size:1.4rem;margin-bottom:17px}.faq-item{border-bottom:1px solid var(--line);background:white}.faq-item:first-of-type{border-top:1px solid var(--line)}.faq-item summary{list-style:none;padding:20px 37px 20px 0;position:relative;font-size:1rem;line-height:1.5;font-weight:700;min-height:64px}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";position:absolute;right:4px;top:17px;font-size:1.45rem;font-weight:400;color:var(--blue)}.faq-item[open] summary:after{content:"−"}.faq-answer{padding:0 35px 22px 0}.faq-answer p{font-size:.94rem}.legal-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:45px;align-items:start}.legal-nav{background:white;border:1px solid var(--line);border-radius:17px;padding:22px;position:sticky;top:24px}.legal-nav h2{font-size:.77rem;letter-spacing:.09em;text-transform:uppercase;margin-bottom:14px}.legal-nav a{display:block;padding:7px 0;font-size:.8rem;line-height:1.5;color:var(--body);text-decoration:none}.legal-nav a:hover{color:var(--blue)}.legal-content{min-width:0;background:white;border:1px solid var(--line);border-radius:23px;padding:39px 44px}.legal-content>section+section{margin-top:33px}.legal-content h2{font-size:1.28rem;line-height:1.3;margin-bottom:15px;letter-spacing:-.02em}.legal-content p,.legal-content li{font-size:.95rem;overflow-wrap:anywhere}.policy-meta{font-size:.82rem;margin-top:-20px;color:var(--muted)}.policy-intro{border-left:3px solid var(--gold);padding-left:19px;font-size:.93rem;max-width:95ch}.noscript-note{padding:15px 18px;border:1px solid #cddff2;border-radius:11px;background:#edf6ff;color:var(--body);font-size:.84rem;margin:20px 0}
/* Footer */
.site-footer{background:#0d2544;color:#cfdef1;padding:48px 0 25px;margin-top:18px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:38px}.footer-brand{display:inline-block;padding:5px 12px;background:white;border-radius:11px;line-height:0;margin-bottom:18px}.footer-brand img{width:211px;height:auto}.footer-copy{font-size:.85rem;color:#bacde3;max-width:33ch;overflow-wrap:anywhere}.footer-copy a{color:inherit}.footer-title{font-size:.71rem;text-transform:uppercase;letter-spacing:.1em;color:#e6effa;font-weight:750;margin:9px 0 17px}.footer-links{list-style:none;margin:0;padding:0}.footer-links li{margin:0}.footer-links a{display:inline-block;padding:6px 0;font-size:.83rem;color:#cedef0;text-decoration:none}.footer-links a:hover{color:white;text-decoration:underline}.footer-bottom{border-top:1px solid #2c4564;margin-top:33px;padding-top:23px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px}.footer-bottom p{font-size:.74rem;color:#b8cbe1;margin:0}
/* Responsive layouts */
@media(max-width:1100px){.hero-panel{padding:36px;gap:30px}.hero-panel h1{font-size:3.75rem}.audience-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.map-shell{grid-template-columns:minmax(0,1.5fr) minmax(275px,.8fr)}.directory-controls{grid-template-columns:2fr 1fr}.footer-grid{gap:27px}.legal-layout{grid-template-columns:210px minmax(0,1fr);gap:30px}.main-nav{gap:25px}.section-rail{grid-template-columns:220px 1fr;gap:35px}.hero--inner .hero-inner{gap:35px}.hero--inner h1{font-size:3.5rem}}
@media(max-width:850px){.workspace-links,.main-nav{display:none}.mobile-menu{display:block}.brand-row{padding:8px 18px}.brand-logo{width:225px;height:75px}.hero-panel{grid-template-columns:1fr;gap:30px;padding:33px}.hero-panel h1{font-size:clamp(3rem,7.5vw,4.5rem);max-width:16ch}.hero-art{max-width:680px}.hero-art img{max-height:350px;object-fit:contain;background:white}.hero--inner .hero-inner{grid-template-columns:1fr;gap:24px}.hero-aside{max-width:80ch}.map-shell{grid-template-columns:1fr}.selection-placeholder{min-height:0}.market-selection{display:block}.market-selection .selection-actions{max-width:500px}.selection-panel{margin-top:0}.market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 35px}.split{gap:35px}.card-grid{grid-template-columns:1fr}.card-grid .card{padding:27px}.contact-grid{grid-template-columns:1fr}.contact-grid>.contact-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-sidebar>.contact-panel{height:100%}.contact-sidebar .contact-panel{padding:25px}.faq-layout{grid-template-columns:210px minmax(0,1fr);gap:32px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px 40px}.section-heading--row{display:block}.section-heading--row>a{margin-top:10px}.cta-band{padding:32px}.cta-band h2{font-size:1.6rem}.roles-table th,.roles-table td{padding:17px}.comparison{gap:20px}.comparison>article{padding:26px}.section-rail{grid-template-columns:1fr;gap:27px}.section-rail aside{max-width:700px}.hero{padding-top:35px}.hero--home{padding-top:23px}}
@media(max-width:650px){.wrap,.site-header{width:calc(100% - 32px)}.site-header{margin-top:12px;border-radius:17px}.brand-row{padding:6px 13px;gap:15px}.brand-logo{width:198px;height:66px}.breadcrumbs{margin-top:20px;font-size:.74rem}.hero{padding:31px 0 29px}.hero--home{padding:17px 0 20px}.hero-panel{padding:27px 23px;border-radius:24px}.hero-panel h1{font-size:3.15rem}.hero-panel .lead{font-size:.98rem}.hero-art img{border-radius:15px}.hero--inner h1,.hero--simple h1{font-size:2.65rem}.lead{font-size:1.03rem;line-height:1.75}.hero-aside{padding-left:19px}.hero-aside p{font-size:.9rem}.eyebrow{font-size:.66rem;letter-spacing:.1em}.hero-topics{gap:6px 16px;font-size:.74rem}.section{padding:36px 0}.section--compact{padding:25px 0}.section-heading{margin-bottom:24px}.section-heading p{font-size:.95rem}.split,.comparison,.principles,.faq-layout,.legal-layout{grid-template-columns:1fr;gap:25px}.audience-grid{gap:14px}.audience-card{padding:23px}.audience-card h3{font-size:1.1rem}.audience-card p{font-size:.87rem}.capability-grid{gap:25px}.capability h3{font-size:1.12rem}.capability p{font-size:.9rem}.table-frame{overflow-x:auto}.roles-table{min-width:520px;font-size:.87rem}.roles-table td:first-child{width:25%}.comparison>article{padding:26px}.example{padding:26px}.cta-band{display:block;padding:29px 26px;margin-bottom:37px}.cta-band .button{margin-top:23px}.link-band{display:block;padding:24px}.link-band a{margin-top:12px}.directory-toolbar{padding:18px}.directory-controls{gap:14px}.network-summary{gap:20px}.network-summary strong{font-size:1.3rem}.network-summary>span{font-size:.79rem}.map-heading{padding:18px 20px 12px}.map-legend{padding-left:20px;padding-right:20px}.map-placeholder{min-height:350px;padding:35px 23px}.map-placeholder h3{font-size:1.6rem}#network-map{height:390px}.map-shell{gap:17px}.map-list-details{padding-inline:17px}.market-selection{padding:22px}.directory-list-heading{display:block}.directory-list-heading a{display:inline-block;margin-top:9px}.market-grid{gap:13px}.market-card{padding:20px}.market-card[data-status=live]{padding-top:18px}.contact-grid>.contact-sidebar{grid-template-columns:1fr}.contact-panel{padding:27px 23px}.faq-side{position:static}.faq-nav{display:flex;flex-direction:row;flex-wrap:wrap;gap:3px 21px;margin:12px 0}.faq-nav a{font-size:.82rem}.faq-side .support-links{display:none}.faq-group+.faq-group{margin-top:32px}.legal-nav{position:static;padding:20px}.legal-nav a{display:inline-block;padding-right:15px}.legal-content{padding:29px 24px}.policy-meta{margin-top:0}.steps li{grid-template-columns:52px 1fr;gap:18px}.steps li:before{width:46px;height:46px;border-radius:13px;font-size:.92rem}.steps li:not(:last-child):after{left:23px;top:56px}.steps h3{font-size:1.14rem;margin-top:0}.steps p{font-size:.94rem}.footer-grid{gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-copy{max-width:54ch}.footer-grid>div:last-child{grid-column:1/-1}.footer-grid>div:last-child .footer-links{display:flex;flex-wrap:wrap;gap:7px 24px}.footer-grid>div:last-child .footer-title{margin-bottom:10px}.footer-links a{min-height:37px;font-size:.81rem}.footer-bottom{font-size:.7rem}.site-footer{padding-top:35px}.policy-intro{font-size:.9rem}}
@media(max-width:430px){.brand-logo{width:180px;height:60px}.mobile-menu>summary{font-size:.8rem;padding:9px 12px}.hero-panel{padding:24px 21px}.hero-panel h1{font-size:2.9rem}.hero--inner h1,.hero--simple h1{font-size:2.35rem}.actions{gap:10px}.actions .button{font-size:.84rem;padding:12px 16px;flex-grow:1}.hero-art figcaption{font-size:.67rem}.hero-topics{font-size:.7rem}.audience-grid,.capability-grid,.market-grid,.directory-controls,.form-row{grid-template-columns:1fr}.audience-card p{font-size:.91rem}.market-card{padding:22px}.market-card[data-status=live]{padding-top:20px}.map-list-details{padding-inline:14px}.network-summary{gap:10px 18px}.network-summary>span{font-size:.74rem}.network-summary strong{font-size:1.21rem}.filter-foot{gap:12px;align-items:start}.filter-foot p{font-size:.77rem}.map-heading h2,.map-heading h3{font-size:1.08rem}.market-selection h3{font-size:1.5rem}.legal-nav a{display:block;padding-right:0}.contact-panel{padding:25px 21px}.legal-content{padding:26px 21px}.footer-grid{column-gap:20px}.footer-title{font-size:.65rem}.footer-links a{font-size:.79rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.ce-map-pin--selected{transform:none}}
@media print{.site-header,.site-footer,.breadcrumbs,.actions,.cta-band,.directory-toolbar,.map-panel,.map-tools,.contact-form,.legal-nav,.faq-side,.skip-link{display:none!important}body{background:white;font-size:11pt}.wrap{width:100%}.hero,.section{padding:15px 0}.hero-panel{box-shadow:none;border:0;padding:0}.hero h1,.hero-panel h1{font-size:30pt}.hero-inner,.hero-panel,.split,.contact-grid,.map-shell,.legal-layout,.faq-layout{display:block!important}.hero-art{max-width:430px}.market-grid{grid-template-columns:repeat(2,1fr)}.legal-content{border:0;padding:0}.card,.market-card,.audience-card{break-inside:avoid;box-shadow:none}.map-list-details>*:not(summary){display:block!important}.faq-item>*:not(summary){display:block!important}a{color:inherit}.selection-panel{display:none}}

/* Shared map component hooks and eight-function layout. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.ce-pin-dot{display:block;width:100%;height:100%;border-radius:50%;background:inherit}.ce-cluster-content{display:flex!important;align-items:center;justify-content:center;width:100%;height:100%;line-height:1}.ce-cluster-number{font-size:13px;font-weight:800}.market-selection-domain{font-weight:700;margin-top:16px;margin-bottom:7px}.market-selection-region{font-size:.78rem!important;color:var(--muted);margin-bottom:18px}.market-selection-actions{display:flex;flex-direction:column;gap:9px;margin-top:22px}.market-selection-note{font-size:.77rem!important;color:var(--muted);margin-top:20px}.capability-grid--four{grid-template-columns:repeat(4,minmax(0,1fr));column-gap:30px}.capability-grid--four h3{font-size:1.15rem}@media(max-width:1100px){.capability-grid--four{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:430px){.capability-grid--four{grid-template-columns:1fr}}


/* V3: dark surfaces, vivid destinations, and white button labels.
   The approved page structure, brand images, and interaction hooks are retained. */
:root {
  color-scheme: dark;
  --ink: #f6f8ff;
  --body: #c5d3e9;
  --muted: #a8bad5;
  --blue: #86b7ff;
  --blue-dark: #c4dcff;
  --teal: #5ce4d4;
  --gold: #ffc86b;
  --line: #2b3d5c;
  --paper: #111c31;
  --soft: #142540;
  --ground: #050914;
  --panel: #111c31;
  --shadow: 0 24px 65px #00000045;
  --blue-fill: linear-gradient(135deg, #2058d6, #1738a2);
  --violet-fill: linear-gradient(135deg, #702ad5, #4b209e);
  --teal-fill: linear-gradient(135deg, #087a72, #075b57);
  --cyan-fill: linear-gradient(135deg, #086e97, #075575);
  --rose-fill: linear-gradient(135deg, #b83058, #8d2347);
  --amber-fill: linear-gradient(135deg, #9a570a, #743f07);
  --quiet-fill: linear-gradient(135deg, #203452, #15233c);
  --button-fill: var(--blue-fill);
  --button-edge: #02040b;
  --button-label-shadow: -.45px 0 #000, .45px 0 #000, 0 -.45px #000, 0 .65px #000, 0 1px 2px #00000070;
  --page-accent: #83b7ff;
  --page-glow: #2558e12b;
}
body {
  background:
    radial-gradient(ellipse at 5% 0, #143b7b48, transparent 32%),
    radial-gradient(ellipse at 95% 8%, #54207a33, transparent 32%),
    linear-gradient(180deg, #070d1b, #080f20 46%, #050914);
  color: var(--ink);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
body[data-page="network"] { --page-accent: #5ce4d4; --page-glow: #078d852b; }
body[data-page="for-businesses"] { --page-accent: #c4a3ff; --page-glow: #762fd635; }
body[data-page="how-it-works"] { --page-accent: #73dfff; --page-glow: #047da733; }
body[data-page="about"] { --page-accent: #ffd178; --page-glow: #9c620c2b; }
body[data-page="contact"] { --page-accent: #ff96b3; --page-glow: #b52e6230; }
body[data-page="privacy"] { --page-accent: #69e1c9; --page-glow: #07846729; }
body[data-page="terms"] { --page-accent: #b4baff; --page-glow: #5144ba33; }
::selection { background: #3249a1; color: #fff; }
h1, h2, h3, h4, strong { color: var(--ink); }
p, ul, ol { color: var(--body); }

/* Every ordinary navigation link has a visible button surface. */
a,
.button,
.text-link,
.reset-button,
.market-locate,
.map-tools button,
.mobile-menu > summary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  max-width: 100%;
  padding: 11px 17px;
  border: 1px solid var(--button-edge);
  border-radius: 12px;
  background: var(--button-fill);
  box-shadow: inset 0 1px 0 #ffffff28, 0 3px 0 #00000028, 0 9px 22px #00000026;
  color: #fff;
  font-size: .86rem;
  font-weight: 750;
  line-height: 1.45;
  text-align: center;
  text-decoration: none;
  text-shadow: var(--button-label-shadow);
  -webkit-text-stroke: .2px #00000080;
  overflow-wrap: anywhere;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
}
a:hover, .button:hover, .text-link:hover, .reset-button:hover,
.market-locate:hover, .map-tools button:hover, .mobile-menu > summary:hover {
  color: #fff;
  text-decoration: none;
  border-color: #7697cd;
  box-shadow: inset 0 1px 0 #ffffff38, 0 4px 0 #00000028, 0 12px 28px #00000040;
  transform: translateY(-1px);
}
a:active, .button:active, .text-link:active { transform: translateY(0); }
a:focus-visible, button:focus-visible, summary:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid #70efff;
  outline-offset: 4px;
}
.button--primary, .button--primary:hover { background: var(--button-fill); color: #fff; }
.button--secondary, .button--secondary:hover { background: var(--violet-fill); color: #fff; border-color: var(--button-edge); }
.button--light, .button--light:hover { background: var(--teal-fill); color: #fff; }
.text-link { margin: 8px 10px 0 0; padding: 11px 16px; }
.text-link:after { content: "↗"; font-size: 1rem; }
.button:disabled, .map-tools button:disabled, button:disabled:hover {
  opacity: 1; background: #1c2940; color: #9fb0ca; border-color: #33435e;
  box-shadow: none; transform: none; text-shadow: none; -webkit-text-stroke: 0;
}
.skip-link { background: var(--blue-fill); color: #fff; }

/* Original logo artwork remains on its own crisp, light brand plate. */
.site-header {
  background: linear-gradient(135deg, #12213bed, #0d1629f5);
  border-color: #364c73;
  box-shadow: 0 17px 45px #00000038, inset 0 1px 0 #ffffff0d;
}
.site-header:before {
  content: ""; position: absolute; top: -1px; left: 22px; right: 22px; height: 3px;
  border-radius: 0 0 9px 9px;
  background: linear-gradient(90deg, #4d89ff, #42dfeb 25%, #a571ff 53%, #ff718d 77%, #ffca69);
}
.brand-row { padding: 15px 22px; }
.brand-link, .brand-link:hover, .footer-brand, .footer-brand:hover {
  display: inline-block; min-height: 0; padding: 3px 10px; background: #fff;
  border: 1px solid #e5edfa; border-radius: 13px; line-height: 0;
  box-shadow: 0 4px 18px #00000020; text-shadow: none;
  -webkit-text-stroke: 0; transform: none;
}
.brand-logo { width: 225px; height: 75px; }
.workspace-links { gap: 10px; }
.workspace-links a, .workspace-links a:hover {
  min-height: 44px; padding: 11px 15px; color: #fff;
  border: 1px solid #02040b; background: var(--blue-fill);
  box-shadow: inset 0 1px 0 #ffffff29, 0 5px 18px #00000033;
}
.workspace-links a:nth-child(2) { background: var(--violet-fill); }
.workspace-links a:nth-child(3) { background: var(--teal-fill); }
.main-nav {
  gap: 10px; padding: 14px 22px; border-color: #2c4165;
  background: #080f2080; border-radius: 0 0 20px 20px;
}
.main-nav a, .main-nav a:hover {
  padding: 10px 16px; min-height: 43px; color: #fff; font-size: .83rem;
  background: var(--quiet-fill); border: 1px solid #02040b;
  border-radius: 10px; text-decoration: none;
}
.main-nav a[aria-current="page"] {
  color: #fff; background: var(--blue-fill); text-decoration: none;
  border-color: #87b8ff; box-shadow: inset 0 1px 0 #ffffff45, 0 0 0 1px #214b98;
}
.main-nav a:nth-child(2):hover { background: var(--teal-fill); }
.main-nav a:nth-child(3):hover { background: var(--violet-fill); }
.main-nav a:nth-child(4):hover { background: var(--cyan-fill); }
.main-nav a:nth-child(5):hover { background: var(--amber-fill); }
.main-nav a:nth-child(7):hover { background: var(--rose-fill); }
.mobile-menu > summary { background: var(--violet-fill); color: #fff; border-color: #02040b; }
.mobile-links { background: #101c32; border-color: #45628d; box-shadow: 0 25px 55px #00000088; }
.mobile-links a, .mobile-links a[aria-current="page"] {
  display: flex; min-height: 46px; padding: 10px 15px; margin: 7px 0;
  color: #fff; background: var(--quiet-fill); border: 1px solid #02040b;
}
.mobile-links a[aria-current="page"] { background: var(--blue-fill); border-color: #83b7ff; }
.mobile-label { color: #b4c7e3; border-color: #334967; }
.breadcrumbs { color: #acbed9; gap: 12px; }
.breadcrumbs a { color: #fff; padding: 7px 13px; font-size: .75rem; min-height: 38px; background: var(--quiet-fill); }
.breadcrumbs span[aria-hidden] { color: #8099be; }

/* The hero is dark and saturated; content keeps ample breathing room. */
.hero-panel {
  border-color: #435cb0;
  background:
    radial-gradient(ellipse at 100% 0, #743ae64d, transparent 62%),
    radial-gradient(ellipse at 15% 100%, #00889b2b, transparent 50%),
    linear-gradient(125deg, #101f4a 0, #152552 52%, #251547 100%);
  box-shadow: 0 25px 65px #00000050, inset 0 1px 0 #ffffff14;
  position: relative;
}
.hero-panel h1 { color: #fff; letter-spacing: -.055em; }
.hero-highlight { color: #78f3e9; }
.hero-panel .lead { color: #d9e5ff; }
.eyebrow, .kicker { color: var(--page-accent); }
.eyebrow:before { background: #ffcb70; box-shadow: 0 0 15px #ffb12640; }
.hero-panel .eyebrow { color: #a9dbff; }
.hero-panel .button--primary { background: var(--blue-fill); border-color: #02040b; }
.hero-panel .button--secondary { background: var(--violet-fill); border-color: #02040b; }
.hero-art img { border: 1px solid #8ba4e79c; box-shadow: 0 22px 48px #00000055, 0 0 35px #3480ff26; }
.hero-art figcaption { color: #bbcde9; }
.hero-topics { color: #d1e2fb; gap: 10px; }
.hero-topics span { padding: 7px 10px; background: #0b173a99; border: 1px solid #3a5788; border-radius: 9px; }
.hero-topics span:before { background: #63e6d6; width: 7px; height: 7px; }
.hero-topics span:nth-child(2):before { background: #ffc66f; }
.lead { color: #cbd9ef; }
.hero--inner .hero-inner, .hero--simple > .wrap {
  padding: 38px 40px; border: 1px solid #334b73; border-radius: 27px;
  background: radial-gradient(ellipse at 95% 0, var(--page-glow), transparent 65%), linear-gradient(130deg, #111f39, #11172c);
  box-shadow: 0 18px 42px #00000030;
}
.hero-aside {
  border-left: 3px solid var(--page-accent); padding: 20px 23px;
  background: #080f2180; border-radius: 0 15px 15px 0;
}
.hero-aside .small-label { color: var(--page-accent); }
.hero-aside p { color: #d0dff6; }

/* A distinct editorial illustration on every supporting page. */
.hero--inner .hero-inner--visual {
  grid-template-columns: minmax(0, 1.02fr) minmax(0, 1fr);
  gap: 38px; align-items: center;
}
.hero-inner--visual h1 { font-size: clamp(2.25rem, 3.6vw, 3.4rem); line-height: 1.06; }
.hero-inner--visual .lead { font-size: 1.02rem; line-height: 1.75; }
.hero-inner--visual .hero-aside { margin-top: 25px; padding: 15px 19px; }
.hero-inner--visual .hero-aside p { font-size: .85rem; line-height: 1.65; }
.hero-inner--visual .hero-aside .small-label { margin-bottom: 7px; font-size: .65rem; }
.page-art { min-width: 0; margin: 0; }
.page-art img {
  display: block; width: 100%; height: auto;
  object-fit: contain; background: #071224; border: 1px solid #49628c;
  border-radius: 21px;
  box-shadow: 0 18px 38px #00000050, 0 0 30px var(--page-glow);
}
.page-art figcaption { margin: 12px 3px 0; font-size: .72rem; line-height: 1.6; color: #b6c9e5; }
.visual-feature { align-items: center; }
.visual-feature > div { min-width: 0; }
.media-feature { background: radial-gradient(ellipse at 0 50%, #54339020, transparent 65%); }
.media-feature .kicker { color: #c5a5ff; }
.media-feature .button { background: var(--violet-fill); }
.hero-art img { background: #071224; }
@media (max-width: 850px) {
  .hero--inner .hero-inner--visual { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .hero-inner--visual h1 { max-width: 22ch; }
  .hero-inner--visual .page-art { width: 100%; max-width: 700px; }
  .visual-feature { grid-template-columns: minmax(0, 1fr); gap: 28px; }
}
@media (max-width: 650px) {
  .hero-inner--visual h1 { font-size: clamp(2.05rem, 7.5vw, 2.65rem); }
  .hero-inner--visual .lead { font-size: .96rem; }
  .page-art img { border-radius: 16px; }
  .page-art figcaption { font-size: .68rem; }
}

/* Repeating color families identify each capability and audience. */
.section--white {
  background: linear-gradient(120deg, #0b1428e6, #11142be6);
  border-color: #223450;
}
.capability, .audience-card, .card, .principle { --accent: #77a9ff; --accent-dim: #18376a; --button-fill: var(--blue-fill); }
.capability:nth-child(4n+2), .audience-card:nth-child(4n+2), .card:nth-child(4n+2), .principle:nth-child(4n+2) {
  --accent: #c4a2ff; --accent-dim: #392361; --button-fill: var(--violet-fill);
}
.capability:nth-child(4n+3), .audience-card:nth-child(4n+3), .card:nth-child(4n+3), .principle:nth-child(4n+3) {
  --accent: #5ce5cf; --accent-dim: #123e42; --button-fill: var(--teal-fill);
}
.capability:nth-child(4n+4), .audience-card:nth-child(4n+4), .card:nth-child(4n+4), .principle:nth-child(4n+4) {
  --accent: #ff9aad; --accent-dim: #4f213c; --button-fill: var(--rose-fill);
}
.capability:nth-child(5) { --accent: #ffd079; --accent-dim: #4b3217; }
.capability:nth-child(6) { --accent: #72ddff; --accent-dim: #153e57; }
.capability:nth-child(7) { --accent: #b5b9ff; --accent-dim: #2b2b64; }
.capability:nth-child(8) { --accent: #81edac; --accent-dim: #173e32; }
.capability-grid, .capability-grid--four { gap: 19px; }
.capability, .audience-card, .card {
  padding: 25px; border: 1px solid #2e4264; border-top: 3px solid var(--accent);
  border-radius: 19px; background: linear-gradient(145deg, var(--accent-dim), #111b30 46%);
  box-shadow: inset 0 1px 0 #ffffff0d, 0 12px 28px #00000022;
}
.capability h3, .audience-card h3, .card h3 { color: #f7f9ff; }
.capability p, .audience-card p, .card p { color: #c8d6eb; }
.capability-index {
  min-width: 42px; padding: 7px 10px; border: 1px solid var(--accent);
  border-radius: 10px; color: var(--accent); background: #080f2399;
  text-align: center; margin-bottom: 18px;
}
.audience-card .text-link, .card .text-link { margin-right: 0; align-self: flex-start; }
.inset-note { border-color: #67502c; background: linear-gradient(140deg, #2a231a, #151d30 70%); border-top: 3px solid #ffc66f; }
.inset-note h3 { color: #ffe0a6; }
.principle { border-color: var(--accent); background: linear-gradient(90deg, var(--accent-dim), #111b3000); padding: 20px 23px; border-radius: 0 14px 14px 0; }
.roles-table { background: #101b30; }
.roles-table th { background: #192b4b; color: #c8dfff; }
.roles-table tr:nth-child(even) td { background: #14223a; }
.roles-table td { color: #c6d5ed; }
.roles-table td:first-child { color: #f0f5ff; }
.table-frame { border-color: #355078; }
.comparison > article { background: #111d34; border-color: #324867; }
.comparison > article:first-child { border-top-color: #51e4d1; }
.comparison > article:last-child { border-top-color: #a782ff; }
.example { background: linear-gradient(120deg, #142c4a, #22203f); border-color: #49619a; }
.example .kicker { color: #82dfff; }
.steps li:before { color: #fff; background: var(--blue-fill); border: 1px solid #02040b; text-shadow: var(--button-label-shadow); box-shadow: 0 5px 18px #00000035; }
.steps li:nth-child(4n+2):before { background: var(--violet-fill); }
.steps li:nth-child(4n+3):before { background: var(--teal-fill); }
.steps li:nth-child(4n+4):before { background: var(--rose-fill); }
.steps li:not(:last-child):after { background: linear-gradient(#5f84dc, #293958); }
.cta-band {
  background: linear-gradient(120deg, #153b80, #34205c 60%, #143c47);
  border: 1px solid #5364a9; border-left: 4px solid #ffcc73;
  box-shadow: 0 20px 40px #00000035;
}
.cta-band h2 { color: #fff; }
.cta-band p { color: #dae5fc; }
.cta-band .button { background: var(--teal-fill); color: #fff; border-color: #02040b; }
.link-band { background: linear-gradient(120deg, #17243d, #22203c); border-color: #445178; border-left: 3px solid #b495ff; }
.quiet-note { color: #aebfda; }

/* Network panels: status remains separate from decorative accent colors. */
.network-summary { gap: 12px; }
.network-summary > span { padding: 12px 17px; background: #111f38; border: 1px solid #36527c; border-radius: 13px; color: #d1ddf1; }
.network-summary > span:nth-child(1) { background: linear-gradient(130deg, #152f62, #15213a); border-color: #4b79ca; }
.network-summary > span:nth-child(2) { background: linear-gradient(130deg, #103d37, #112c31); border-color: #2d8d7c; }
.network-summary > span:nth-child(3) { background: linear-gradient(130deg, #302451, #1b2038); border-color: #7661a9; }
.network-summary strong { color: #fff; }
.directory-source, .directory-note { color: #aabfdb; }
.directory-toolbar { background: linear-gradient(120deg, #14223b, #152039); border-color: #3d547b; box-shadow: 0 12px 30px #00000022; }
.field label { color: #e1ebff; }
.field input, .field select, .field textarea, .form-result textarea {
  color: #f3f7ff; background: #081326; border-color: #5b7399;
  box-shadow: inset 0 2px 5px #00000035;
}
.field input::placeholder, .field textarea::placeholder { color: #a6b7d0; }
.field select option { color: #f3f7ff; background: #0e1b30; }
.field small, .form-help { color: #afc0da; }
.reset-button { background: var(--violet-fill); color: #fff; font-size: .8rem; padding: 9px 13px; }
.map-panel, .selection-panel { background: #111e34; border-color: #3b557c; box-shadow: 0 15px 35px #00000025; }
.map-heading { background: linear-gradient(115deg, #163b70, #1b2b50); }
.map-heading h2, .map-heading h3 { color: #fff; }
.map-heading p { color: #ccddf4; }
.map-legend { background: linear-gradient(115deg, #163b70, #1b2b50); color: #deebff; }
.legend-dot { background: #52e1ae; box-shadow: 0 0 0 2px #061b22; }
.legend-dot--soon { background: #75b6ff; }
.map-placeholder {
  border-color: #3a537d;
  background: radial-gradient(circle at 25% 25%, #254e794d, transparent 50%), linear-gradient(140deg, #0b192d, #1c1d3a);
}
.map-placeholder p { color: #c4d7f1; }
#network-map { background: #11213a; }
.map-tools { background: #101c31; border-color: #324968; }
.map-tools button { color: #fff; background: var(--cyan-fill); border-color: #02040b; padding: 10px 13px; min-height: 42px; }
.map-tools button:nth-child(2) { background: var(--violet-fill); }
.map-status { background: #101c31; color: #b1c4e0; }
.selection-head { background: linear-gradient(120deg, #30215a, #202342); border-color: #5a4c85; }
.selection-head h2 { color: #fff; }
.selection-head p { color: #d4d3f4; }
.market-selection .eyebrow { color: #b9b6ff; }
.market-selection .selection-meta div { background: #172b48; }
.market-selection-domain a { background: var(--blue-fill); color: #fff; }
.market-selection-region, .market-selection-note { color: #b6c8e3; }
.selection-placeholder .placeholder-icon { background: var(--violet-fill); color: #fff; border: 1px solid #02040b; }
.ce-map-pin, .ce-map-pin--soon { background: #245bd9; border-color: #fff; }
.ce-map-pin--live { background: #087b56; }
.ce-map-pin--selected { box-shadow: 0 0 0 5px #ffc45cbb, 0 3px 10px #061432aa; }
.ce-map-cluster { color: #fff; background: #5331b8; border-color: #fff; box-shadow: 0 0 0 4px #774ee83b, 0 5px 12px #07112460; }
.ce-public-v3 .leaflet-bar a, .ce-public-v3 .leaflet-bar a:hover {
  color: #fff; background: #183c79; border-color: #344969; box-shadow: none;
  min-height: 30px; padding: 0; border-radius: 0; transform: none;
}
/* Map attribution remains compact and readable on the provider's light strip. */
.ce-public-v3 .leaflet-control-attribution { color: #1e293b; background: #fffffff2; }
.ce-public-v3 .leaflet-control-attribution a, .ce-public-v3 .leaflet-control-attribution a:hover {
  display: inline; min-height: 0; padding: 0; border: 0; border-radius: 0;
  background: transparent; color: #154780; font-size: inherit; font-weight: 600;
  box-shadow: none; text-shadow: none; -webkit-text-stroke: 0; transform: none;
  text-decoration: underline;
}
.map-list-details { background: #0e192d; border-color: #355077; }
.map-list-details > summary {
  color: #fff; padding: 16px 18px; margin: 15px 0; background: var(--quiet-fill);
  border: 1px solid #02040b; border-radius: 12px; text-shadow: var(--button-label-shadow);
  box-shadow: inset 0 1px 0 #ffffff20;
}
.market-card {
  background: linear-gradient(140deg, #142443, #101b30); border-color: #3e567e;
  border-top: 3px solid #6f9cf0; box-shadow: 0 12px 24px #00000025;
}
.market-card[data-status="live"] { background: linear-gradient(140deg, #153a35, #101e30); border-color: #3b746a; border-top-color: #4bdfad; }
.market-card.is-selected { border-color: #ffd078; box-shadow: 0 0 0 2px #dca64d55, 0 12px 28px #00000035; }
.market-state { color: #bfd2ef; }
.market-region, .market-no-point { color: #aebfdb; }
.status-pill--live { background: #0e4836; color: #9ef2ca; border: 1px solid #39876b; }
.status-pill--soon { background: #1b356b; color: #bad8ff; border: 1px solid #4c72ac; }
.market-domain a, .market-domain a:hover { color: #fff; background: var(--quiet-fill); min-height: 38px; padding: 8px 12px; font-size: .8rem; }
.market-actions .button { min-height: 44px; }
.market-login { background: var(--teal-fill); color: #fff; border: 1px solid #02040b; padding: 10px 12px; min-height: 42px; border-radius: 10px; }
.market-locate { background: var(--violet-fill); color: #fff; border: 1px solid #02040b; border-radius: 10px; padding: 10px 12px; min-height: 42px; text-decoration: none; }
.empty-results { color: #f1f6ff; background: #14223a; border-color: #526a91; }
.region-list span { background: #142944; color: #d1e7ff; border-color: #3e638c; }
.region-list span:nth-child(3n+2) { background: #292044; color: #e0d1ff; border-color: #68518e; }
.region-list span:nth-child(3n+3) { background: #16352f; color: #c0f2df; border-color: #3d7b69; }

/* Contact, help and policy pages use the same dark materials. */
.contact-panel { background: linear-gradient(135deg, #17263f, #111b30); border-color: #445b80; }
.contact-sidebar > .contact-panel:first-child { border-top: 3px solid #ff8ca9; }
.contact-grid > .contact-panel { border-top: 3px solid #b493ff; }
.email-display { color: #fff; background: var(--rose-fill); font-size: .96rem; padding: 12px 15px; }
.contact-panel .button--primary { background: var(--rose-fill); }
.contact-form .button--primary { background: var(--violet-fill); }
.contact-route { border-color: #354a6b; }
.support-links { border-color: #3e5172; display: flex; flex-direction: column; gap: 9px; }
.support-links a { display: flex; justify-content: flex-start; min-height: 44px; padding: 10px 14px; color: #fff; background: var(--quiet-fill); }
.support-links a:nth-child(2) { background: var(--violet-fill); }
.support-links a:nth-child(3) { background: var(--teal-fill); }
.form-result { background: #162945; border-color: #4b70a5; }
.faq-nav { gap: 8px; }
.faq-nav a { color: #fff; background: var(--quiet-fill); padding: 11px 13px; text-align: left; justify-content: flex-start; }
.faq-item, .faq-item:first-of-type { background: #111d34; border: 1px solid #354e75; border-radius: 13px; margin-bottom: 12px; }
.faq-item summary {
  padding: 18px 45px 18px 20px; border-radius: 12px; color: #fff;
  background: linear-gradient(120deg, #1b3155, #1e2747);
  text-shadow: var(--button-label-shadow); -webkit-text-stroke: .2px #00000080;
}
.faq-item summary:after { right: 17px; top: 15px; color: #a8d7ff; }
.faq-item[open] { border-color: #7a8bd4; }
.faq-item[open] summary { border-radius: 12px 12px 0 0; }
.faq-answer { padding: 18px 22px 22px; }
.legal-nav { background: #111e34; border-color: #3b547b; }
.legal-nav a, .legal-nav a:hover {
  color: #fff; background: var(--quiet-fill); border: 1px solid #02040b;
  padding: 10px 12px; margin: 7px 0; min-height: 42px; font-size: .78rem;
  display: flex; justify-content: flex-start; text-align: left;
}
.legal-content { background: linear-gradient(145deg, #14223a, #101a2e); border-color: #3c5479; }
.legal-content h2 { color: #f6f8ff; }
.legal-content a { font-size: .85rem; min-height: 40px; padding: 8px 12px; }
.legal-content p a, .policy-intro a { margin-block: 4px; }
.policy-meta { color: #b8c9e1; }
.policy-intro { border-color: var(--page-accent); }
.noscript-note { color: #d4e5ff; background: #142747; border-color: #416293; }
.noscript-note a { color: #fff; }

/* Footer destinations are grouped buttons, never a column of faint text links. */
.site-footer {
  background: radial-gradient(ellipse at 0 0, #153a713b, transparent 58%), linear-gradient(120deg, #070d1b, #13132b);
  border-top: 1px solid #3d4975; color: #d1dff4; position: relative;
}
.site-footer:before {
  content: ""; position: absolute; top: -1px; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #468cff, #4edcd5 30%, #ac7cf5 60%, #ef789b 80%, #ffca6c);
}
.footer-copy { color: #b8cce6; }
.footer-copy a { background: var(--quiet-fill); color: #fff; min-height: 40px; padding: 10px 12px; font-size: .78rem; margin-top: 5px; }
.footer-title { color: #e6efff; }
.footer-grid > div:nth-child(2) { --button-fill: var(--blue-fill); }
.footer-grid > div:nth-child(3) { --button-fill: var(--violet-fill); }
.footer-grid > div:nth-child(4) { --button-fill: var(--teal-fill); }
.footer-links li + li { margin-top: 8px; }
.footer-links a, .footer-links a:hover {
  display: flex; justify-content: flex-start; min-height: 40px; padding: 10px 12px;
  color: #fff; background: var(--button-fill); border: 1px solid #02040b;
  border-radius: 10px; font-size: .78rem; text-decoration: none; text-align: left;
}
.footer-bottom { border-color: #334565; }
.footer-bottom p { color: #aabdd8; }

/* Final interaction states also win over later-loaded map vendor styles. */
.button:disabled, .map-tools button:disabled,
.contact-panel .button--primary:disabled,
.contact-form .button--primary:disabled,
.button:disabled:hover, .map-tools button:disabled:hover {
  opacity: 1; background: #1c2940; color: #9fb0ca; border-color: #33435e;
  box-shadow: none; transform: none; text-shadow: none; -webkit-text-stroke: 0;
}
.ce-public-v3 .leaflet-bar a:focus,
.ce-public-v3 .leaflet-bar a:focus-visible {
  background: #183c79; color: #fff;
}
.ce-public-v3 .leaflet-bar a.leaflet-disabled,
.ce-public-v3 .leaflet-bar a.leaflet-disabled:hover,
.ce-public-v3 .leaflet-bar a.leaflet-disabled:focus {
  color: #9fb0ca; background: #1c2940; text-shadow: none; -webkit-text-stroke: 0;
}
.ce-public-v3 .leaflet-control a:focus-visible,
.ce-public-v3 .ce-map-pin:focus-visible,
.ce-public-v3 .ce-map-cluster:focus-visible {
  outline: 3px solid #061022; outline-offset: 2px;
  box-shadow: 0 0 0 6px #70efff;
}
.ce-public-v3 .leaflet-tooltip { background: #111c31; color: #f6f8ff; border-color: #5b7399; box-shadow: 0 5px 17px #00000040; }
.ce-public-v3 .leaflet-tooltip-top:before { border-top-color: #111c31; }
.ce-public-v3 .leaflet-tooltip-bottom:before { border-bottom-color: #111c31; }
.ce-public-v3 .leaflet-tooltip-left:before { border-left-color: #111c31; }
.ce-public-v3 .leaflet-tooltip-right:before { border-right-color: #111c31; }

@media (max-width: 1100px) {
  .main-nav { gap: 8px; padding-inline: 18px; }
  .main-nav a { padding-inline: 13px; }
  .capability-grid--four { gap: 18px; }
}
@media (max-width: 850px) {
  .brand-row { padding: 12px 18px; }
  .brand-logo { width: 208px; height: 69px; }
  .hero-art img { background: transparent; }
  .hero--inner .hero-inner, .hero--simple > .wrap { padding: 31px 33px; }
}
@media (max-width: 650px) {
  .brand-row { padding: 11px 13px; gap: 12px; }
  .brand-link { padding: 2px 7px; border-radius: 10px; }
  .brand-logo { width: 184px; height: 61px; }
  .hero--inner .hero-inner, .hero--simple > .wrap { padding: 27px 24px; border-radius: 22px; }
  .hero-aside { padding: 17px 20px; }
  .hero-topics { gap: 8px; }
  .hero-topics span { font-size: .73rem; }
  .capability, .audience-card, .card { padding: 23px; }
  .network-summary { gap: 9px; }
  .network-summary > span { padding: 10px 13px; font-size: .76rem; }
  .map-list-details > summary { padding: 13px; font-size: .88rem; }
  .faq-nav { gap: 8px; }
  .faq-nav a { padding: 9px 12px; font-size: .79rem; }
  .faq-item summary { padding-left: 17px; font-size: .95rem; }
  .legal-nav a { display: inline-flex; margin: 4px 5px 4px 0; }
  .footer-grid > div:last-child .footer-links { gap: 9px; }
  .footer-grid > div:last-child .footer-links li + li { margin-top: 0; }
  .footer-links a { min-height: 42px; }
}
@media (max-width: 430px) {
  .brand-row { gap: 10px; padding: 10px 11px; }
  .brand-logo { width: 151px; height: 50px; }
  .mobile-menu > summary { min-height: 44px; padding: 9px 12px; }
  .hero-panel { padding: 26px 22px; }
  .hero-panel h1 { font-size: 2.75rem; }
  .actions { gap: 11px; }
  .actions .button { min-height: 47px; }
  .hero--inner .hero-inner, .hero--simple > .wrap { padding: 25px 22px; }
  .capability-grid--four { gap: 16px; }
  .market-card, .market-card[data-status="live"] { padding: 23px; }
  .legal-nav a { display: flex; margin-right: 0; }
  .email-display { font-size: .87rem; }
  .footer-grid { column-gap: 17px; }
  .footer-links a { padding: 10px; font-size: .75rem; }
}
@media (prefers-reduced-motion: reduce) {
  a, .button, .text-link, .reset-button, .market-locate, .map-tools button, .mobile-menu > summary { transition: none; }
  a:hover, .button:hover, .text-link:hover, .reset-button:hover, .market-locate:hover, .map-tools button:hover, .mobile-menu > summary:hover { transform: none; }
}
@media (forced-colors: active) {
  a, button, summary { forced-color-adjust: auto; text-shadow: none; -webkit-text-stroke: 0; }
  .brand-link, .footer-brand { background: #fff; }
}
@media print {
  :root { color-scheme: light; --ink: #101827; --body: #243146; --muted: #3a475b; --line: #b9c3d0; }
  body, .section--white, .hero-panel, .hero--inner .hero-inner, .hero--simple > .wrap,
  .card, .audience-card, .capability, .market-card, .inset-note, .legal-content,
  .contact-panel, .faq-item, .faq-item summary, .example, .principle, .hero-aside,
  .status-pill, .capability-index, .network-summary > span, .hero-topics span,
  .roles-table th, .roles-table td {
    background: #fff !important; color: #101827 !important; box-shadow: none !important; border-color: #adb9c9 !important;
  }
  h1, h2, h3, h4, p, strong, .lead, .hero-highlight, .eyebrow, .kicker, .capability-index,
  .market-region, .market-no-point, .status-pill, .policy-meta, .page-art figcaption { color: #101827 !important; }
  a, .button, .text-link, summary { background: transparent !important; color: #101827 !important; text-shadow: none !important; -webkit-text-stroke: 0 !important; box-shadow: none !important; border-color: #8b98aa !important; }
  .hero--inner .hero-inner, .hero--simple > .wrap { padding: 0; border: 0; }
}
