@import url("https://fonts.googleapis.com/css2?family=K2D:wght@300;400;500;600;700;800&display=swap");
:root {
    --blue:#f58220;
    --blue2:#0b3159;
    --navy:#0b3159;
    --ink:#0b3159;
    --muted:#66758b;
    --line:#dce5f2;
    --soft:#f7f8fa;
    --soft2:#f2f4f6;
    --green:#22b573;
    --orange:#ff9b54;
    --teal:#35c4b5;
    --shadow:0 12px 28px rgba(38,77,132,.10)
}
* {
    box-sizing:border-box
}
html {
    scroll-behavior:smooth
}
body {
    margin:0;
    font-family:"K2D",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
    color:var(--ink);
    background:#fff;
    font-size:14px;
    line-height:1.55
}
a {
    text-decoration:none;
    color:inherit
}
button,input,select,textarea {
    font-family:"K2D",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
    font-size:inherit
}
button {
    cursor:pointer
}
.container {
    width:min(1180px,calc(100% - 48px));
    margin:auto
}
.site-header {
    height:72px;
    background:#fff;
    border-bottom:1px solid #e9eef6;
    position:sticky;
    top:0;
    z-index:50
}
.nav-wrap {
    height:100%;
    width:min(1240px,calc(100% - 40px));
    margin:auto;
    display:flex;
    align-items:center;
    gap:22px
}
.ig-brand {
    display:flex;
    align-items:center;
    gap:9px;
    min-width:205px
}
.ig-brand strong {
    display:block;
    font-size:16px;
    letter-spacing:-.2px
}
.ig-brand small {
    display:block;
    font-size:6.5px;
    color:#768399;
    letter-spacing:.25px;
    margin-top:-2px
}
.ig-logo {
    width:34px;
    height:34px;
    border-radius:7px;
    background:linear-gradient(180deg,#f58220,#d9680d);
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:3px;
    padding:7px;
    box-shadow:0 4px 9px rgba(36,104,238,.22)
}
.ig-logo i {
    width:4px;
    background:#fff;
    border-radius:3px
}
.ig-logo i:nth-child(1) {
    height:14px
}
.ig-logo i:nth-child(2) {
    height:20px
}
.ig-logo i:nth-child(3) {
    height:10px
}
.main-nav {
    display:flex;
    align-self:stretch;
    align-items:center;
    gap:24px;
    margin-left:auto
}
.main-nav a {
    height:100%;
    display:flex;
    align-items:center;
    color:#34455e;
    font-size:13px;
    font-weight:600;
    position:relative;
    white-space:nowrap
}
.main-nav a.active,.main-nav a:hover {
    color:var(--blue)
}
.main-nav a.active:after {
    content:"";
    height:2px;
    background:var(--blue);
    position:absolute;
    left:0;
    right:0;
    bottom:0
}
.nav-actions {
    display:flex;
    align-items:center;
    gap:8px
}
.btn {
    border:1px solid transparent;
    border-radius:8px;
    padding:11px 18px;
    font-weight:700;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    transition:.18s ease
}
.btn-primary {
    background:var(--blue);
    color:#fff
}
.btn-primary:hover {
    background:#d9680d
}
.btn-light {
    background:#fff;
    border-color:#d8e1ee;
    color:var(--ink)
}
.btn-white {
    background:#fff;
    color:var(--ink)
}
.btn-outline-white {
    border-color:rgba(255,255,255,.45);
    color:#fff;
    background:transparent
}
.btn.small {
    padding:8px 13px;
    font-size:12px
}
.btn.full {
    width:100%
}
.icon-btn {
    width:38px;
    height:38px;
    border:1px solid #d8e1ee;
    border-radius:8px;
    display:grid;
    place-items:center;
    font-size:21px
}
.mobile-toggle {
    display:none;
    margin-left:auto;
    border:0;
    background:transparent;
    font-size:24px;
    color:var(--ink)
}
.eyebrow {
    font-size:10px;
    color:var(--blue);
    font-weight:800;
    letter-spacing:2.4px
}
.eyebrow.light {
    color:#a8c9ff
}
.hero {
    background:linear-gradient(107deg,#f6faff 0%,#eaf4ff 60%,#e2f0ff 100%);
    min-height:500px;
    display:flex;
    align-items:center;
    border-bottom:1px solid #e6eef9
}
.hero-grid {
    display:grid;
    grid-template-columns:1.12fr .88fr;
    align-items:center;
    gap:50px;
    padding:64px 0
}
.hero h1 {
    font-size:58px;
    line-height:1.02;
    letter-spacing:-2.4px;
    margin:18px 0;
    color:#0b3159;
    max-width:690px
}
.hero h1 .accent {
    color:#f58220
}
.hero p {
    font-size:17px;
    color:#53657d;
    max-width:700px;
    margin:0 0 25px
}
.hero-actions {
    display:flex;
    gap:12px
}
.hero-visual {
    position:relative;
    min-height:300px
}
.chart-panel {
    position:absolute;
    right:0;
    top:0;
    width:390px;
    height:280px;
    border-radius:34px;
    background:linear-gradient(135deg,#b9ddff,#f2f7ff);
    border:1px solid #fff;
    box-shadow:0 12px 38px rgba(58,111,186,.13);
    padding:28px 30px
}
.chart-panel .market-label {
    font-size:12px;
    font-weight:700
}
.chart-panel .growth {
    font-size:23px;
    font-weight:800;
    margin-top:4px
}
.hero-bars {
    position:absolute;
    bottom:18px;
    left:35px;
    right:35px;
    height:170px;
    display:flex;
    align-items:flex-end;
    gap:14px
}
.hero-bars i {
    display:block;
    flex:1;
    border-radius:8px 8px 0 0;
    background:#f58220
}
.hero-bars i:nth-child(1) {
    height:40%;
    background:#91c5ff
}
.hero-bars i:nth-child(2) {
    height:68%
}
.hero-bars i:nth-child(3) {
    height:53%;
    background:#61a4ef
}
.hero-bars i:nth-child(4) {
    height:96%;
    background:#0b3159
}
.hero-bars i:nth-child(5) {
    height:78%;
    background:#164f7d
}
.float-card {
    position:absolute;
    left:-38px;
    bottom:30px;
    background:#fff;
    border-radius:12px;
    padding:15px 22px;
    box-shadow:0 14px 28px rgba(47,79,124,.16);
    display:flex;
    align-items:center;
    gap:15px;
    min-width:195px
}
.float-card .round-icon {
    width:42px;
    height:42px;
    border-radius:10px;
    background:#edf5ff;
    display:grid;
    place-items:center;
    color:var(--blue);
    font-size:20px
}
.float-card b {
    font-size:24px;
    display:block;
    line-height:1
}
.float-card small {
    color:#7c899d
}
.hero-search {
    margin-top:26px
}
.search-shell {
    display:flex;
    align-items:center;
    background:#fff;
    border:1px solid #d7e2f0;
    border-radius:10px;
    padding:7px;
    max-width:650px;
    box-shadow:var(--shadow)
}
.search-shell input {
    flex:1;
    border:0;
    outline:0;
    padding:9px 12px;
    color:var(--ink)
}
.popular {
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:12px;
    font-size:11px;
    color:#62718a
}
.popular b {
    color:#42526a
}
.pill {
    padding:5px 12px;
    border:1px solid #e0e7f0;
    border-radius:999px;
    background:#fff;
    color:#718097
}
.stats-strip {
    margin-top:-1px;
    background:#fff
}
.stats-grid {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    border:1px solid #e5ebf3;
    border-top:0;
    box-shadow:0 7px 20px rgba(20,55,102,.05)
}
.stats-grid.four {
    grid-template-columns:repeat(4,1fr)
}
.stat {
    padding:17px 26px;
    display:flex;
    gap:14px;
    align-items:center;
    border-right:1px solid #e6edf5
}
.stat:last-child {
    border-right:0
}
.stat-icon {
    width:37px;
    height:37px;
    border-radius:10px;
    background:#edf5ff;
    color:var(--blue);
    display:grid;
    place-items:center;
    font-weight:800
}
.stat:nth-child(2) .stat-icon {
    background:#edfbf8;
    color:#25ae9d
}
.stat:nth-child(3) .stat-icon {
    background:#fff5eb;
    color:#ff8a3c
}
.stat:nth-child(4) .stat-icon {
    background:#eef1ff;
    color:#596ee8
}
.stat:nth-child(5) .stat-icon {
    background:#edfbf8;
    color:#19a997
}
.stat strong {
    font-size:21px;
    line-height:1;
    display:block
}
.stat b {
    font-size:12px;
    display:block;
    margin-top:4px
}
.stat small {
    font-size:12px;
    color:#7b8797
}
.section {
    padding:70px 0
}
.section.soft {
    background:#f4f9ff
}
.section-head {
    margin-bottom:28px
}
.section-head h2 {
    font-size:34px;
    line-height:1.1;
    margin:7px 0;
    color:#0b3159;
    letter-spacing:-1px
}
.section-head p {
    margin:0;
    color:#6b788c
}
.cards4 {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px
}
.explore-card {
    border:1px solid #dbe5f0;
    border-radius:13px;
    padding:25px;
    min-height:190px;
    background:#fff
}
.card-icon {
    width:39px;
    height:39px;
    border-radius:10px;
    display:grid;
    place-items:center;
    background:#eef6ff;
    color:var(--blue);
    font-size:18px
}
.explore-card:nth-child(2) .card-icon {
    background:#ecfbf8;
    color:#1db49e
}
.explore-card:nth-child(3) .card-icon {
    background:#fff4e9;
    color:#ee8640
}
.explore-card:nth-child(4) .card-icon {
    background:#f0efff;
    color:#665ade
}
.explore-card h3 {
    font-size:17px;
    margin:24px 0 8px
}
.explore-card p {
    font-size:13px;
    color:#748198;
    min-height:58px
}
.explore-card a {
    color:var(--blue);
    font-weight:700;
    font-size:12px
}
.coverage-grid {
    display:grid;
    grid-template-columns:330px 1fr;
    gap:62px;
    align-items:center
}
.coverage-orb {
    height:260px;
    position:relative
}
.coverage-orb:before {
    content:"";
    position:absolute;
    width:190px;
    height:190px;
    border-radius:50%;
    background:linear-gradient(145deg,#9bd4ff,#2d70e8);
    left:55px;
    top:35px
}
.coverage-card {
    position:absolute;
    background:#fff;
    border-radius:10px;
    box-shadow:var(--shadow);
    left:15px;
    top:90px;
    padding:16px 20px;
    min-width:120px
}
.coverage-card strong {
    font-size:24px;
    display:block
}
.coverage-card small {
    display:block;
    color:#79869a
}
.market-card {
    border:1px solid #dbe5f0;
    border-radius:14px;
    background:#fff;
    padding:24px
}
.market-card h3 {
    font-size:15px;
    margin:0 0 4px
}
.market-card>small {
    color:#8490a0
}
.bar-row {
    display:grid;
    grid-template-columns:120px 1fr 52px;
    gap:13px;
    align-items:center;
    margin:13px 0;
    font-size:12px
}
.bar-track {
    height:10px;
    background:#eef4fb;
    border-radius:999px;
    overflow:hidden
}
.bar-fill {
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#93c9ff,#f58220)
}
.ecosystem-row {
    display:grid;
    grid-template-columns:repeat(8,1fr);
    gap:16px;
    margin-top:35px
}
.eco-item {
    text-align:center;
    position:relative
}
.eco-item:after {
    content:"";
    height:1px;
    background:#cad8eb;
    position:absolute;
    top:25px;
    left:75%;
    width:55%
}
.eco-item:last-child:after {
    display:none
}
.eco-circle {
    width:52px;
    height:52px;
    margin:auto;
    border-radius:50%;
    border:1px solid #dbe6f3;
    background:#f5f9ff;
    display:grid;
    place-items:center;
    color:var(--blue);
    font-size:19px
}
.eco-item b {
    font-size:12px;
    line-height:1.25;
    display:block;
    margin-top:11px
}
.eco-count {
    display:block;
    margin-top:4px;
    color:#7b8797;
    font-size:13px;
    font-weight:600
}
.eco-empty {
    grid-column:1/-1;
    border:1px dashed #d5e0ee;
    border-radius:12px;
    padding:22px;
    text-align:center;
    color:#758399;
    background:#fafcff
}
.cta-band {
    background:linear-gradient(115deg,#0b3159,#164f7d);
    color:#fff;
    padding:55px 0
}
.cta-inner {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:35px
}
.cta-band h2 {
    font-size:34px;
    line-height:1.05;
    margin:9px 0 13px
}
.cta-band p {
    max-width:590px;
    color:#cfe0f9
}
.cta-actions {
    display:flex;
    gap:12px
}
.site-footer {
    background:#0b3159;
    color:#fff;
    padding:46px 0 0
}
.footer-grid {
    display:grid;
    grid-template-columns:1.45fr .75fr .75fr .75fr;
    gap:60px
}
.footer-brand strong {
    color:#fff
}
.footer-brand small {
    color:#a9c3e9
}
.footer-grid p {
    color:#c0d2ec;
    font-size:12px;
    max-width:310px;
    margin:20px 0
}
.footer-grid h4 {
    font-size:10px;
    letter-spacing:1.6px;
    color:#b9cef0;
    margin:0 0 14px
}
.footer-grid>div>a,.footer-link {
    display:block;
    color:#d3e2f5;
    font-size:12px;
    margin:9px 0;
    background:none;
    border:0;
    padding:0
}
.footer-bottom {
    text-align:center;
    border-top:1px solid rgba(255,255,255,.12);
    margin-top:45px;
    padding:17px;
    color:#a9bfdd;
    font-size:10px
}
.page-hero {
    background:linear-gradient(110deg,#f6faff,#e7f2ff);
    padding:82px 0 72px
}
.page-hero-grid {
    display:grid;
    grid-template-columns:1.15fr .85fr;
    align-items:center;
    gap:45px
}
.page-hero h1 {
    font-size:54px;
    line-height:1.02;
    letter-spacing:-2px;
    margin:16px 0;
    color:#0a356e;
    max-width:650px
}
.page-hero p {
    font-size:17px;
    color:#566880;
    max-width:670px
}
.page-hero .hero-visual {
    min-height:300px
}
.filter-box {
    margin:30px auto 45px;
    border:1px solid #cddff5;
    border-radius:14px;
    background:#f9fbff;
    padding:22px
}
.filter-title {
    display:flex;
    align-items:center;
    gap:10px;
    font-size:16px;
    font-weight:800
}
.filter-box>p {
    font-size:11px;
    color:#7c899b;
    margin:2px 0 16px
}
.filter-grid {
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:12px;
    align-items:end
}
.filter-grid.five {
    grid-template-columns:repeat(5,1fr)
}
.filter-grid.four {
    grid-template-columns:repeat(4,1fr)
}
label.field {
    display:block;
    font-size:11px;
    font-weight:700;
    color:#1b3b67
}
label.field select,label.field input {
    width:100%;
    margin-top:7px;
    border:1px solid #d3dfed;
    border-radius:8px;
    background:#fff;
    padding:11px 12px;
    outline:none;
    color:#506078
}
.reset-link {
    display:inline-block;
    margin-top:10px;
    color:var(--blue);
    font-size:11px;
    font-weight:700
}
.overview {
    padding:5px 0 35px
}
.overview h2 {
    font-size:34px;
    margin:0 0 4px;
    letter-spacing:-1px
}
.overview>p {
    color:#7a8799;
    margin:0 0 28px
}
.overview-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px
}
.donut-wrap {
    display:flex;
    align-items:center;
    gap:26px
}
.donut {
    width:145px;
    height:145px;
    border-radius:50%;
    background:conic-gradient(#1e73ed 0 18%,#57a5ee 18% 32%,#50bdb2 32% 44%,#f6b249 44% 54%,#e45c9d 54% 68%,#dfe8f2 68%);
    position:relative
}
.donut:after {
    content:"";
    position:absolute;
    inset:28px;
    background:#fff;
    border-radius:50%
}
.donut-label {
    position:absolute;
    inset:0;
    display:grid;
    place-items:center;
    z-index:2;
    text-align:center;
    font-size:25px;
    font-weight:800
}
.donut-label small {
    display:block;
    font-size:12px!important;
    color:#788596;
    font-weight:500
}
.legend {
    min-width:190px
}
.legend div {
    display:flex;
    justify-content:space-between;
    gap:20px;
    font-size:11px;
    margin:8px 0
}
.legend i {
    width:8px;
    height:8px;
    border-radius:50%;
    display:inline-block;
    margin-right:7px;
    background:#1e73ed
}
.data-card {
    margin:0 0 65px;
    border:1px solid #d8e3ef;
    border-radius:14px;
    overflow:hidden;
    background:#fff
}
.data-top {
    padding:18px 20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px
}
.data-top h3 {
    margin:0;
    font-size:15px
}
.data-top small {
    color:#7d899a
}
.data-actions {
    display:flex;
    gap:9px
}
.data-actions input {
    border:1px solid #d8e1ed;
    border-radius:8px;
    padding:9px 12px;
    width:180px
}
.table-wrap {
    overflow:auto
}
.data-table {
    width:100%;
    border-collapse:collapse;
    font-size:11px
}
.data-table th {
    background:#edf4fb;
    text-align:left;
    color:#6d7b8e;
    font-size:12px;
    letter-spacing:.3px;
    padding:12px 18px
}
.data-table td {
    padding:13px 18px;
    border-bottom:1px solid #edf1f6;
    color:#53647a
}
.data-table td strong {
    color:#0c356e
}
.badge {
    display:inline-block;
    padding:4px 9px;
    border-radius:999px;
    font-size:12px;
    font-weight:700
}
.badge.ok {
    color:#16895e;
    background:#eafaf3
}
.badge.est {
    color:#c87527;
    background:#fff3e7
}
.table-bottom {
    padding:14px 18px;
    display:flex;
    justify-content:space-between;
    color:#748196;
    font-size:10px
}
.pager {
    display:flex;
    gap:6px
}
.pager span {
    border:1px solid #d9e2ee;
    border-radius:6px;
    padding:5px 9px
}
.pager .active {
    background:var(--blue);
    color:#fff
}
.demo-overlay {
    position:fixed;
    inset:0;
    background:rgba(23,52,91,.64);
    backdrop-filter:blur(5px);
    z-index:100;
    display:none;
    align-items:center;
    justify-content:center;
    padding:20px
}
.demo-overlay.open {
    display:flex
}
.demo-modal {
    position:relative;
    width:min(540px,100%);
    background:#fff;
    border-radius:14px;
    padding:28px 30px;
    box-shadow:0 28px 70px rgba(0,0,0,.28)
}
.demo-close {
    position:absolute;
    right:20px;
    top:18px;
    border:0;
    background:none;
    color:#8090a5;
    font-size:20px
}
.demo-modal h2 {
    font-size:27px;
    margin:7px 0 4px
}
.demo-modal>p {
    font-size:12px;
    color:#6d7c91;
    margin:0 0 18px
}
.form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px
}
.demo-modal label {
    display:block;
    font-size:10px;
    font-weight:700;
    margin-bottom:10px
}
.demo-modal input,.demo-modal select,.demo-modal textarea {
    width:100%;
    border:1px solid #d5dfeb;
    border-radius:7px;
    padding:10px 11px;
    margin-top:6px;
    font-size:12px
}
.demo-modal textarea {
    height:85px;
    resize:vertical
}
.form-message {
    font-size:11px;
    color:#16895e;
    margin-top:9px
}
.ad-process {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px
}
.process-card {
    background:#fff;
    border:1px solid #dce6f0;
    border-radius:13px;
    padding:22px;
    min-height:150px
}
.step {
    display:flex;
    align-items:center;
    gap:9px
}
.step-no {
    width:34px;
    height:34px;
    border-radius:7px;
    background:var(--blue);
    color:#fff;
    display:grid;
    place-items:center;
    font-weight:800
}
.process-card h3 {
    margin:17px 0 8px
}
.process-card p {
    color:#758195;
    font-size:12px
}
.audience-grid {
    display:grid;
    grid-template-columns:1.8fr .95fr;
    gap:22px
}
.audience-summary {
    border:1px solid #dce5f0;
    border-radius:13px;
    padding:22px;
    background:#fff
}
.audience-tags {
    display:flex;
    flex-wrap:wrap;
    gap:7px
}
.audience-tags span {
    background:#eef4ff;
    color:#3165c8;
    padding:6px 10px;
    border-radius:999px;
    font-size:10px;
    font-weight:700
}
.summary-row {
    display:flex;
    justify-content:space-between;
    border-top:1px solid #eef2f6;
    padding:12px 0;
    font-size:12px
}
.summary-row strong {
    font-size:16px
}
.login-page {
    min-height:100vh;
    background:linear-gradient(135deg,#f6faff,#e9f3ff);
    display:grid;
    place-items:center;
    padding:30px
}
.login-card {
    width:min(430px,100%);
    background:#fff;
    border:1px solid #dbe5f0;
    border-radius:16px;
    padding:32px;
    box-shadow:var(--shadow)
}
.login-card h1 {
    margin:24px 0 4px
}
.login-card p {
    color:#748198
}
.input {
    width:100%;
    border:1px solid #d5dfeb;
    border-radius:8px;
    padding:11px 12px
}
.notice {
    padding:11px;
    border-radius:8px;
    margin:13px 0
}
.notice-error {
    background:#fff0f0;
    color:#a33
}
.admin-shell {
    background:#f5f8fc;
    min-height:100vh
}
.admin-top {
    background:#0b3159;
    color:#fff;
    padding:16px 24px;
    display:flex;
    align-items:center;
    gap:25px
}
.admin-top a {
    color:#e4eefc;
    font-size:13px
}
.admin-top .spacer {
    margin-left:auto
}
.admin-main {
    width:min(1180px,calc(100% - 40px));
    margin:28px auto
}
.admin-card {
    background:#fff;
    border:1px solid #dbe4ef;
    border-radius:12px;
    padding:20px;
    margin-bottom:18px
}
.admin-table {
    width:100%;
    border-collapse:collapse
}
.admin-table th,.admin-table td {
    padding:11px;
    border-bottom:1px solid #edf2f6;
    text-align:left
}
.admin-form-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px
}
.tiny {
    font-size:11px;
    color:#7b8797
}
@media(max-width:1050px) {
    .main-nav {
        display:none;
        position:absolute;
        top:72px;
        left:0;
        right:0;
        background:#fff;
        box-shadow:var(--shadow);
        padding:15px 24px;
        flex-direction:column;
        align-items:flex-start;
        height:auto
    }
    .main-nav.open {
        display:flex
    }
    .main-nav a {
        height:auto;
        padding:7px 0
    }
    .nav-actions {
        margin-left:auto
    }
    .mobile-toggle {
        display:block
    }
    .hero h1,.page-hero h1 {
        font-size:46px
    }
    .cards4 {
        grid-template-columns:repeat(2,1fr)
    }
    .ecosystem-row {
        grid-template-columns:repeat(4,1fr)
    }
    .eco-item:after {
        display:none
    }
    .filter-grid,.filter-grid.five {
        grid-template-columns:repeat(3,1fr)
    }
}
@media(max-width:760px) {
    .page-hero-grid {
        padding-left:15px!important;
        padding-right:15px!important
    }
    .container {
        width:min(100% - 28px,1180px)
    }
    .site-header {
        height:64px
    }
    .nav-wrap {
        width:calc(100% - 24px)
    }
    .ig-brand {
        min-width:auto
    }
    .ig-brand small {
        display:none
    }
    .nav-actions .btn-light,.nav-actions .btn-primary {
        display:none
    }
    .hero-grid,.page-hero-grid {
        grid-template-columns:1fr;
        padding:42px 0
    }
    .hero h1,.page-hero h1 {
        font-size:40px
    }
    .hero-visual {
        min-height:300px
    }
    .chart-panel {
        width:92%;
        right:0
    }
    .float-card {
        left:0
    }
    .stats-grid,.stats-grid.four {
        grid-template-columns:1fr 1fr
    }
    .stat {
        border-bottom:1px solid #e6edf5
    }
    .cards4 {
        grid-template-columns:1fr
    }
    .coverage-grid,.overview-grid,.audience-grid {
        grid-template-columns:1fr
    }
    .ecosystem-row {
        grid-template-columns:1fr 1fr
    }
    .cta-inner {
        display:block
    }
    .cta-actions {
        margin-top:20px
    }
    .footer-grid {
        grid-template-columns:1fr 1fr
    }
    .filter-grid,.filter-grid.five,.filter-grid.four {
        grid-template-columns:1fr 1fr
    }
    .ad-process {
        grid-template-columns:1fr
    }
    .form-grid {
        grid-template-columns:1fr
    }
    .data-top {
        align-items:flex-start;
        flex-direction:column
    }
    .bar-row {
        grid-template-columns:95px 1fr 44px
    }
}
@media(max-width:480px) {
    .hero h1,.page-hero h1 {
        font-size:34px
    }
    .search-shell {
        display:block
    }
    .search-shell .btn {
        width:100%
    }
    .filter-grid,.filter-grid.five,.filter-grid.four {
        grid-template-columns:1fr
    }
    .stats-grid,.stats-grid.four {
        grid-template-columns:1fr
    }
    .footer-grid {
        grid-template-columns:1fr
    }
    .hero-actions,.cta-actions {
        flex-direction:column;
        align-items:stretch
    }
    .section {
        padding:48px 0
    }
}
.admin-header {
    background:#0b3159;
    color:#fff
}
.admin-header .container {
    min-height:68px;
    display:flex;
    align-items:center;
    gap:24px
}
.admin-nav {
    margin-left:auto;
    display:flex;
    gap:17px;
    align-items:center;
    flex-wrap:wrap
}
.admin-nav a {
    color:#dce9fb;
    font-size:12px;
    font-weight:600
}
.admin-content {
    padding:30px 0 60px
}
.brand {
    display:flex;
    align-items:center;
    gap:8px
}
.brand-icon {
    width:34px;
    height:34px;
    border-radius:7px;
    background:#f58220;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:3px;
    padding:7px
}
.brand-icon span {
    width:4px;
    background:#fff;
    border-radius:2px
}
.brand-icon span:nth-child(1) {
    height:14px
}
.brand-icon span:nth-child(2) {
    height:20px
}
.brand-icon span:nth-child(3) {
    height:10px
}
.brand b {
    display:block
}
.brand small {
    display:block;
    font-size:7px
}
.brand-light {
    color:#fff
}
.grid {
    display:grid;
    gap:18px
}
.grid-4 {
    grid-template-columns:repeat(4,1fr)
}
.admin-stat {
    background:#fff;
    border:1px solid #dbe4ef;
    border-radius:12px;
    padding:22px
}
.admin-stat b {
    font-size:29px;
    display:block
}
.admin-stat span {
    color:#6d7b8e
}
.actions {
    display:flex;
    gap:10px;
    flex-wrap:wrap
}
.btn-outline {
    border-color:#cbd8e8;
    background:#fff;
    color:#19406f
}
.section-kicker {
    font-size:10px;
    letter-spacing:1.8px;
    color:#f58220;
    font-weight:800
}
.admin-content table {
    width:100%;
    border-collapse:collapse;
    background:#fff
}
.admin-content th,.admin-content td {
    padding:11px 12px;
    border-bottom:1px solid #e8eef5;
    text-align:left
}
.admin-content input,.admin-content select,.admin-content textarea {
    max-width:100%;
    border:1px solid #d4dfeb;
    border-radius:7px;
    padding:9px 10px
}
.admin-content textarea {
    min-height:110px
}
.admin-content .card,.admin-content .panel {
    background:#fff;
    border:1px solid #dbe4ef;
    border-radius:12px;
    padding:20px
}
.admin-content .table-card {
    background:#fff;
    border:1px solid #dbe4ef;
    border-radius:12px;
    overflow:auto
}
.admin-content .section-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-end
}
.admin-content .section-head h2 {
    margin:0 0 5px
}
.admin-content .section-head p {
    margin:0
}
.login-card .ig-brand {
    margin-bottom:20px
}
@media(max-width:800px) {
    .grid-4 {
        grid-template-columns:1fr 1fr
    }
    .admin-header .container {
        align-items:flex-start;
        flex-direction:column;
        padding:15px 0
    }
    .admin-nav {
        margin:0
    }
    .admin-form-grid {
        grid-template-columns:1fr
    }
}
/* V8.5 frontend table pagination */ .table-bottom {
    gap:16px;
    flex-wrap:wrap
}
.table-summary {
    display:flex;
    align-items:center;
    gap:18px;
    flex-wrap:wrap
}
.per-page-form {
    margin:0
}
.per-page-form label {
    display:flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    color:#52647a;
    font-weight:600
}
.per-page-form select {
    height:34px;
    min-width:72px;
    border:1px solid #d9e3ef;
    border-radius:7px;
    background:#fff;
    padding:0 28px 0 10px;
    color:#0b315f;
    font-weight:600
}
.pager {
    display:flex;
    align-items:center;
    gap:6px
}
.pager a,.pager span {
    min-width:32px;
    height:32px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border:1px solid #d9e3ef;
    border-radius:7px;
    text-decoration:none;
    color:#0b315f;
    background:#fff
}
.pager .active {
    background:#f58220;
    color:#fff;
    border-color:#f58220
}
.pager .page-total {
    border:0;
    background:transparent;
    min-width:auto
}
.pager a.disabled {
    pointer-events:none;
    opacity:.4
}
.social-links {
    display:flex;
    align-items:center;
    gap:9px;
    margin-top:18px
}
.social-links a {
    width:34px;
    height:34px;
    border:1px solid rgba(255,255,255,.22);
    border-radius:8px;
    display:grid;
    place-items:center;
    color:#fff;
    margin:0;
    transition:.2s ease
}
.social-links a:hover {
    background:#fff;
    color:#0b3159;
    transform:translateY(-2px)
}
.social-links svg {
    width:16px;
    height:16px;
    fill:currentColor;
    display:block
}
/* V8.7 Infragateway logo branding */ .brand-logo-img {
    width:74px;
    height:58px;
    object-fit:contain;
    display:block
}
.ig-brand {
    min-width:92px
}
.footer-logo-img {
    width:110px;
    height:auto;
    background:#fff;
    border-radius:10px;
    padding:5px
}
.site-header {
    border-bottom-color:#e4e7eb
}
.btn-primary {
    box-shadow:0 5px 14px rgba(245,130,32,.20)
}
.hero {
    background:linear-gradient(107deg,#fffaf5 0%,#f7f8fa 55%,#eef3f7 100%)
}
.cta-band {
    background:linear-gradient(115deg,#0b3159,#164f7d)
}
.site-footer {
    background:#0b3159
}
.main-nav a.active,.main-nav a:hover,.eyebrow,.explore-card a {
    color:#f58220
}
.main-nav a.active:after {
    background:#f58220
}
/* v8.9 CMS pages */ .cms-page-hero {
    padding:78px 0 56px;
    background:linear-gradient(180deg,#f6f9fc 0%,#fff 100%);
    border-top:1px solid #e5edf5
}
.cms-page-hero h1 {
    max-width:900px;
    margin:8px 0 14px;
    font-size:clamp(38px,5vw,64px);
    line-height:1.05;
    color:var(--navy,#0b3158)
}
.cms-page-hero p {
    max-width:780px;
    font-size:18px;
    color:#667a91
}
.cms-page-body {
    padding:50px 0 90px
}
.cms-content-card {
    max-width:960px;
    margin:0 auto;
    background:#fff;
    border:1px solid #e1eaf3;
    border-radius:18px;
    padding:42px;
    box-shadow:0 15px 45px rgba(10,46,82,.06)
}
.cms-prose {
    font-size:17px;
    line-height:1.85;
    color:#344b62;
    white-space:normal
}
.admin-form-card {
    background:#fff;
    border:1px solid #dde7f0;
    border-radius:16px;
    padding:24px;
    display:grid;
    gap:18px
}
.admin-form-card label {
    display:grid;
    gap:7px;
    font-weight:600;
    color:#173a5d
}
.admin-form-card input,.admin-form-card textarea,.admin-form-card select {
    width:100%;
    border:1px solid #cddbea;
    border-radius:9px;
    padding:11px 12px;
    font:inherit;
    background:#fff
}
.admin-form-card textarea {
    resize:vertical
}
.admin-form-card small {
    font-weight:400;
    color:#7890a7
}
.admin-form-card .form-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px
}
@media(max-width:760px) {
    .hero {
        padding-left:15px!important;
        padding-right:15px!important;
    }
    .admin-form-card .form-grid {
        grid-template-columns:1fr
    }
    .cms-content-card {
        padding:24px
    }
    .cms-page-hero {
        padding:52px 0 36px
    }
}
/* V9.0 admin sidebar + frontend-controlled market metric */ .notice-success {
    background:#eef9f4;
    color:#157457;
    border:1px solid #cbe9db
}
.admin-shell {
    background:#f6f8fb;
    min-height:100vh;
    color:#173a5d
}
.admin-layout {
    min-height:100vh;
    display:flex
}
.admin-sidebar {
    position:fixed;
    left:0;
    top:0;
    bottom:0;
    width:250px;
    background:#0b3159;
    color:#fff;
    display:flex;
    flex-direction:column;
    z-index:90;
    box-shadow:12px 0 28px rgba(11,49,89,.08)
}
.admin-sidebar-brand {
    height:92px;
    padding:14px 18px;
    border-bottom:1px solid rgba(255,255,255,.11);
    display:flex;
    align-items:center
}
.admin-sidebar-brand>a {
    display:flex;
    align-items:center;
    gap:11px;
    color:#fff;
    min-width:0
}
.admin-sidebar-brand img {
    width:62px;
    height:56px;
    object-fit:contain;
    background:#fff;
    border-radius:9px;
    padding:3px
}
.admin-sidebar-brand strong {
    display:block;
    font-size:14px;
    letter-spacing:.4px
}
.admin-sidebar-brand small {
    display:block;
    font-size:12px;
    letter-spacing:1.4px;
    color:#b8cce1;
    margin-top:2px
}
.admin-sidebar-close {
    display:none;
    margin-left:auto;
    border:0;
    background:transparent;
    color:#fff;
    font-size:27px
}
.admin-side-nav {
    padding:18px 12px;
    overflow:auto;
    flex:1
}
.admin-nav-label {
    padding:14px 12px 7px;
    color:#809fbd;
    font-size:12px;
    font-weight:800;
    letter-spacing:1.8px
}
.admin-side-nav a {
    display:flex;
    align-items:center;
    gap:11px;
    padding:11px 12px;
    border-radius:9px;
    color:#dce8f3;
    font-size:13px;
    font-weight:600;
    margin:2px 0;
    transition:.15s
}
.admin-side-nav a:hover {
    background:rgba(255,255,255,.07);
    color:#fff
}
.admin-side-nav a.active {
    background:#f58220;
    color:#fff;
    box-shadow:0 7px 18px rgba(245,130,32,.24)
}
.nav-ico {
    width:20px;
    text-align:center;
    font-size:15px
}
.admin-sidebar-foot {
    padding:14px 18px 20px;
    border-top:1px solid rgba(255,255,255,.1);
    display:grid;
    gap:7px
}
.admin-sidebar-foot a {
    color:#c8d9e9;
    font-size:12px;
    padding:5px 0
}
.admin-sidebar-foot a:hover {
    color:#fff
}
.admin-main-area {
    margin-left:250px;
    width:calc(100% - 250px);
    min-height:100vh
}
.admin-mobile-top {
    height:70px;
    background:#fff;
    border-bottom:1px solid #e4ebf2;
    padding:0 28px;
    display:flex;
    align-items:center;
    gap:13px;
    position:sticky;
    top:0;
    z-index:40
}
.admin-mobile-top strong {
    display:block;
    font-size:16px;
    color:#0b3159
}
.admin-mobile-top small {
    display:block;
    font-size:10px;
    color:#7c8ca0
}
.admin-menu-toggle {
    display:none;
    border:1px solid #dce5ee;
    background:#fff;
    border-radius:8px;
    width:38px;
    height:38px;
    color:#0b3159;
    font-size:19px
}
.admin-content {
    padding:30px 34px 60px
}
.admin-main-inner {
    max-width:1320px;
    margin:0 auto
}
.admin-page-head,.admin-content .section-head {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    gap:20px;
    margin-bottom:20px
}
.admin-page-head h1,.admin-content .section-head h2 {
    margin:3px 0 4px;
    color:#0b3159
}
.admin-page-head p,.admin-content .section-head p {
    margin:0;
    color:#708297
}
.admin-stat {
    border-top:3px solid #f58220;
    box-shadow:0 5px 18px rgba(11,49,89,.045)
}
.admin-stat b {
    color:#0b3159
}
.admin-content .card,.admin-content .panel,.admin-content .table-card,.admin-form-card {
    box-shadow:0 5px 18px rgba(11,49,89,.035)
}
.admin-content th {
    background:#eef3f8;
    color:#486079;
    font-size:11px;
    text-transform:none
}
.admin-content td {
    color:#52677c
}
.admin-content input:focus,.admin-content select:focus,.admin-content textarea:focus {
    outline:none;
    border-color:#f58220;
    box-shadow:0 0 0 3px rgba(245,130,32,.10)
}
.admin-settings-card {
    grid-template-columns:280px 1fr;
    align-items:start
}
.settings-preview {
    background:#f3f7fb;
    border:1px solid #dce6ef;
    border-radius:13px;
    padding:20px
}
.settings-preview>span {
    font-size:12px;
    letter-spacing:1.5px;
    font-weight:800;
    color:#f58220
}
.settings-preview-box {
    margin-top:12px;
    background:#cfe8ff;
    border-radius:12px;
    padding:20px;
    color:#0b3159
}
.settings-preview-box small {
    display:block;
    font-size:12px;
    font-weight:600
}
.settings-preview-box strong {
    display:block;
    font-size:27px;
    margin-top:3px
}
.admin-settings-card form {
    display:grid;
    gap:18px
}
.login-brand {
    display:flex;
    align-items:center;
    gap:12px;
    margin-bottom:22px
}
.login-brand img {
    width:82px;
    height:70px;
    object-fit:contain
}
.login-brand strong {
    display:block;
    color:#0b3159;
    font-size:18px
}
.login-brand small {
    display:block;
    color:#768399;
    font-size:12px;
    letter-spacing:1.4px
}
.login-card {
    border-top:4px solid #f58220
}
.admin-sidebar-backdrop {
    display:none
}
@media(max-width:960px) {
    .admin-sidebar {
        transform:translateX(-100%);
        transition:.2s
    }
    .admin-main-area {
        margin-left:0;
        width:100%
    }
    .admin-menu-toggle,.admin-sidebar-close {
        display:block
    }
    .admin-menu-open .admin-sidebar {
        transform:translateX(0)
    }
    .admin-menu-open .admin-sidebar-backdrop {
        display:block;
        position:fixed;
        inset:0;
        background:rgba(6,25,45,.45);
        z-index:80
    }
    .admin-content {
        padding:24px 18px 50px
    }
    .admin-settings-card {
        grid-template-columns:1fr
    }
    .admin-mobile-top {
        padding:0 18px
    }
}
@media(max-width:650px) {
    .admin-content .grid-4 {
        grid-template-columns:1fr
    }
    .admin-page-head,.admin-content .section-head {
        align-items:flex-start;
        flex-direction:column
    }
    .admin-mobile-top {
        height:64px
    }
    .admin-sidebar {
        width:268px
    }
    .admin-content {
        padding:20px 14px 45px
    }
}
/* V9.2 - Full responsive pass */ html,body {
    max-width:100%;
    overflow-x:hidden
}
img,svg,video,canvas {
    max-width:100%;
    height:auto
}
.mobile-nav-actions {
    display:none
}
.table-wrap {
    -webkit-overflow-scrolling:touch
}
.data-table {
    min-width:760px
}
.admin-content .table-card {
    -webkit-overflow-scrolling:touch
}
.modal-open {
    overflow:hidden
}
@media (max-width:1200px) {
    .container {
        width:min(100% - 36px,1180px)
    }
    .nav-wrap {
        width:calc(100% - 28px);
        gap:14px
    }
    .main-nav {
        gap:16px
    }
    .main-nav a {
        font-size:12px
    }
    .nav-actions {
        gap:6px
    }
    .nav-actions .btn {
        padding:10px 12px
    }
    .hero-grid,.page-hero-grid {
        gap:34px
    }
    .hero h1 {
        font-size:52px
    }
    .page-hero h1 {
        font-size:49px
    }
    .footer-grid {
        gap:36px
    }
    .filter-grid {
        grid-template-columns:repeat(4,minmax(0,1fr))
    }
    .filter-grid.five {
        grid-template-columns:repeat(4,minmax(0,1fr))
    }
}
@media (max-width:1050px) {
    .site-header {
        height:68px
    }
    .brand-logo-img {
        width:66px;
        height:52px
    }
    .nav-wrap {
        position:relative
    }
    .main-nav {
        display:none;
        position:fixed;
        top:68px;
        left:0;
        right:0;
        bottom:0;
        background:#fff;
        padding:18px 22px 28px;
        flex-direction:column;
        align-items:stretch;
        gap:0;
        height:auto;
        overflow-y:auto;
        box-shadow:0 16px 32px rgba(11,49,89,.14);
        z-index:70
    }
    .main-nav.open {
        display:flex
    }
    .main-nav a {
        height:auto;
        padding:13px 8px;
        border-bottom:1px solid #edf1f5;
        font-size:14px
    }
    .main-nav a.active:after {
        display:none
    }
    .main-nav a.active {
        background:#fff7f0;
        color:#f58220;
        border-radius:8px;
        padding-left:12px
    }
    .mobile-nav-actions {
        display:grid;
        grid-template-columns:1fr;
        gap:10px;
        margin-top:18px
    }
    .mobile-nav-actions>a {
        border:1px solid #dce5ee!important;
        border-radius:8px!important;
        padding:11px 13px!important;
        background:#fff
    }
    .mobile-nav-actions .btn {
        width:100%;
        border-bottom:0;
        color:#fff!important;
        background:#f58220!important
    }
    .mobile-toggle {
        display:block;
        order:3;
        margin-left:4px
    }
    .nav-actions {
        margin-left:auto
    }
    .nav-actions .btn-light,.nav-actions .btn-primary {
        display:none
    }
    .nav-open {
        overflow:hidden
    }
    .hero-grid,.page-hero-grid {
        grid-template-columns:1fr 1fr
    }
    .hero h1,.page-hero h1 {
        font-size:44px
    }
    .hero-visual {
        min-width:0
    }
    .chart-panel {
        width:100%
    }
    .float-card {
        left:-10px
    }
    .stats-grid {
        grid-template-columns:repeat(3,1fr)
    }
    .stats-grid.four {
        grid-template-columns:repeat(2,1fr)
    }
    .stat:nth-child(3n) {
        border-right:0
    }
    .cards4 {
        grid-template-columns:repeat(2,1fr)
    }
    .coverage-grid {
        grid-template-columns:280px 1fr;
        gap:34px
    }
    .ecosystem-row {
        grid-template-columns:repeat(4,1fr)
    }
    .footer-grid {
        grid-template-columns:1.2fr repeat(3,1fr);
        gap:26px
    }
    .filter-grid,.filter-grid.five,.filter-grid.four {
        grid-template-columns:repeat(3,minmax(0,1fr))
    }
    .audience-grid {
        grid-template-columns:1fr
    }
    .ad-process {
        grid-template-columns:repeat(2,1fr)
    }
}
@media (max-width:820px) {
    .container {
        width:calc(100% - 28px)
    }
    .hero {
        min-height:auto
    }
    .hero-grid,.page-hero-grid {
        grid-template-columns:1fr;
        padding:44px 0;
        gap:28px
    }
    .page-hero {
        padding:0
    }
    .page-hero-grid {
        padding:48px 0
    }
    .hero h1,.page-hero h1 {
        font-size:clamp(38px,8vw,46px);
        letter-spacing:-1.5px
    }
    .hero p,.page-hero p {
        font-size:15px
    }
    .hero-visual,.page-hero .hero-visual {
        min-height:285px;
        max-width:560px;
        width:100%;
        margin:0 auto
    }
    .chart-panel {
        width:100%;
        height:250px;
        position:absolute
    }
    .hero-bars {
        height:145px
    }
    .float-card {
        left:12px;
        bottom:14px
    }
    .stats-grid,.stats-grid.four {
        grid-template-columns:repeat(2,1fr)
    }
    .stat {
        border-bottom:1px solid #e6edf5
    }
    .stat:nth-child(2n) {
        border-right:0
    }
    .stat:nth-last-child(-n+2) {
        border-bottom:0
    }
    .section {
        padding:54px 0
    }
    .section-head h2,.overview h2 {
        font-size:30px
    }
    .coverage-grid,.overview-grid {
        grid-template-columns:1fr
    }
    .coverage-orb {
        max-width:330px;
        margin:0 auto;
        width:100%
    }
    .cards4 {
        grid-template-columns:repeat(2,1fr)
    }
    .footer-grid {
        grid-template-columns:1fr 1fr;
        gap:34px
    }
    .footer-grid>div:first-child {
        grid-column:1/-1
    }
    .cta-inner {
        align-items:flex-start
    }
    .cta-band h2 {
        font-size:30px
    }
    .filter-box {
        padding:18px;
        margin:22px auto 32px
    }
    .filter-grid,.filter-grid.five,.filter-grid.four {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .filter-grid>.btn {
        min-height:43px
    }
    .donut-wrap {
        justify-content:flex-start
    }
    .data-top {
        align-items:flex-start;
        flex-direction:column
    }
    .data-actions {
        width:100%;
        flex-wrap:wrap
    }
    .data-actions form {
        flex:1;
        min-width:220px
    }
    .data-actions input {
        width:100%
    }
    .data-actions .btn {
        white-space:nowrap
    }
    .table-bottom {
        align-items:flex-start;
        gap:14px
    }
    .table-summary {
        width:100%;
        justify-content:space-between
    }
    .pager {
        margin-left:auto
    }
    .ad-process {
        grid-template-columns:1fr 1fr
    }
    .audience-grid {
        grid-template-columns:1fr
    }
    .cms-page-body {
        padding:36px 0 60px
    }
    .cms-content-card {
        padding:28px
    }
}
@media (max-width:600px) {
    body {
        font-size:13px
    }
    .container {
        width:calc(100% - 22px)
    }
    .site-header {
        height:62px
    }
    .nav-wrap {
        width:calc(100% - 18px)
    }
    .brand-logo-img {
        width:58px;
        height:46px
    }
    .main-nav {
        top:62px;
        padding:12px 14px 24px
    }
    .icon-btn {
        width:36px;
        height:36px
    }
    .mobile-toggle {
        font-size:22px
    }
    .hero-grid,.page-hero-grid {
        padding:34px 0
    }
    .hero h1,.page-hero h1 {
        font-size:36px;
        line-height:1.06
    }
    .hero p,.page-hero p {
        font-size:14px
    }
    .eyebrow {
        letter-spacing:1.7px
    }
    .hero-actions,.cta-actions {
        display:grid;
        grid-template-columns:1fr
    }
    .hero-actions .btn,.cta-actions .btn {
        width:100%
    }
    .hero-search {
        margin-top:20px
    }
    .search-shell {
        display:grid;
        grid-template-columns:1fr;
        padding:7px
    }
    .search-shell .btn {
        width:100%
    }
    .popular {
        overflow-x:auto;
        white-space:nowrap;
        padding-bottom:4px;
        scrollbar-width:none
    }
    .popular::-webkit-scrollbar {
        display:none
    }
    .hero-visual,.page-hero .hero-visual {
        min-height:245px
    }
    .chart-panel {
        height:225px;
        border-radius:22px;
        padding:22px
    }
    .hero-bars {
        left:24px;
        right:24px;
        height:120px;
        gap:9px
    }
    .float-card {
        left:8px;
        bottom:8px;
        min-width:168px;
        padding:12px 15px
    }
    .float-card b {
        font-size:20px
    }
    .stats-grid,.stats-grid.four {
        grid-template-columns:1fr
    }
    .stat {
        border-right:0!important;
        border-bottom:1px solid #e6edf5!important;
        padding:15px 18px
    }
    .stat:last-child {
        border-bottom:0!important
    }
    .stat strong {
        font-size:19px
    }
    .section {
        padding:42px 0
    }
    .section-head {
        margin-bottom:20px
    }
    .section-head h2,.overview h2 {
        font-size:27px
    }
    .cards4 {
        grid-template-columns:1fr
    }
    .explore-card {
        min-height:0
    }
    .explore-card p {
        min-height:0
    }
    .coverage-grid {
        gap:22px
    }
    .coverage-orb {
        height:230px
    }
    .ecosystem-row {
        grid-template-columns:repeat(2,1fr);
        gap:20px 12px
    }
    .eco-item b {
        font-size:10px
    }
    .cta-band {
        padding:42px 0
    }
    .cta-band h2 {
        font-size:27px
    }
    .cta-band h2 br {
        display:none
    }
    .footer-grid {
        grid-template-columns:1fr;
        gap:28px
    }
    .footer-grid>div:first-child {
        grid-column:auto
    }
    .footer-bottom {
        margin-top:30px;
        padding:15px 10px
    }
    .footer-logo-img {
        width:96px
    }
    .filter-grid,.filter-grid.five,.filter-grid.four {
        grid-template-columns:1fr
    }
    .filter-box>p {
        font-size:12px
    }
    .filter-title {
        font-size:15px
    }
    label.field {
        font-size:12px
    }
    label.field select,label.field input {
        min-height:44px
    }
    .overview {
        padding-bottom:26px
    }
    .market-card {
        padding:18px
    }
    .bar-row {
        grid-template-columns:minmax(76px,92px) minmax(90px,1fr) auto;
        gap:8px
    }
    .bar-row span {
        overflow-wrap:anywhere
    }
    .donut-wrap {
        flex-direction:column;
        align-items:flex-start
    }
    .legend {
        width:100%;
        min-width:0
    }
    .legend div {
        gap:10px
    }
    .donut {
        width:130px;
        height:130px
    }
    .donut:after {
        inset:25px
    }
    .data-card {
        border-radius:10px;
        margin-bottom:44px
    }
    .data-top {
        padding:15px
    }
    .data-actions {
        display:grid;
        grid-template-columns:1fr;
        width:100%
    }
    .data-actions form {
        min-width:0
    }
    .data-actions .btn {
        width:100%
    }
    .table-wrap {
        border-top:1px solid #edf1f6
    }
    .data-table {
        min-width:720px
    }
    .data-table th,.data-table td {
        padding:11px 12px
    }
    .table-bottom {
        padding:13px 14px;
        flex-direction:column
    }
    .table-summary {
        align-items:flex-start;
        flex-direction:column;
        gap:10px
    }
    .per-page-form label {
        flex-wrap:wrap
    }
    .pager {
        margin-left:0;
        width:100%;
        justify-content:center
    }
    .pager a,.pager span {
        min-width:34px;
        height:34px
    }
    .ad-process {
        grid-template-columns:1fr
    }
    .process-card {
        min-height:0
    }
    .audience-summary {
        padding:18px
    }
    .summary-row {
        gap:15px
    }
    .summary-row strong {
        text-align:right
    }
    .demo-overlay {
        padding:8px;
        align-items:flex-start;
        overflow-y:auto
    }
    .demo-modal {
        margin:8px auto;
        padding:22px 16px 18px;
        border-radius:12px;
        max-height:none
    }
    .demo-close {
        right:12px;
        top:10px;
        font-size:24px
    }
    .demo-modal h2 {
        font-size:24px
    }
    .form-grid {
        grid-template-columns:1fr;
        gap:0
    }
    .demo-modal input,.demo-modal select,.demo-modal textarea {
        font-size:16px;
        min-height:43px
    }
    .demo-modal textarea {
        height:76px
    }
    .demo-modal label {
        font-size:11px
    }
    .cms-page-hero {
        padding:42px 0 30px
    }
    .cms-page-hero h1 {
        font-size:36px
    }
    .cms-page-hero p {
        font-size:15px
    }
    .cms-content-card {
        padding:20px;
        border-radius:12px
    }
    .cms-prose {
        font-size:15px;
        line-height:1.75
    }
}
@media (max-width:380px) {
    .hero h1,.page-hero h1,.cms-page-hero h1 {
        font-size:31px
    }
    .container {
        width:calc(100% - 18px)
    }
    .hero-visual,.page-hero .hero-visual {
        min-height:225px
    }
    .chart-panel {
        height:205px;
        padding:18px
    }
    .hero-bars {
        height:105px
    }
    .float-card {
        left:4px;
        bottom:4px
    }
    .ecosystem-row {
        grid-template-columns:1fr 1fr
    }
    .social-links {
        flex-wrap:wrap
    }
}
/* V9.3 - Mobile overflow / clipping fix */ .hero-grid,.page-hero-grid,.hero-grid>*,.page-hero-grid>* {
    min-width:0
}
.search-shell {
    width:100%;
    min-width:0
}
.search-shell input {
    width:100%;
    min-width:0;
    max-width:100%
}
.hero-search,.popular,.hero-visual,.chart-panel {
    max-width:100%
}
@media (max-width:820px) {
    .hero-grid,.page-hero-grid {
        grid-template-columns:minmax(0,1fr)
    }
    .hero-grid>div:first-child,.page-hero-grid>div:first-child {
        width:100%;
        min-width:0
    }
    .hero-search {
        width:100%;
        max-width:100%
    }
    .search-shell {
        max-width:100%;
        overflow:hidden
    }
    .popular {
        display:flex;
        flex-wrap:wrap;
        white-space:normal;
        overflow:visible;
        gap:8px 7px
    }
    .popular b {
        width:100%;
        margin-bottom:1px
    }
    .pill {
        flex:0 0 auto
    }
    .hero-visual,.page-hero .hero-visual {
        position:relative;
        overflow:visible;
        box-sizing:border-box
    }
    .chart-panel {
        left:0;
        right:auto;
        width:100%;
        box-sizing:border-box
    }
    .hero-bars {
        max-width:calc(100% - 48px)
    }
}
@media (max-width:600px) {
    .hero {
        overflow:hidden
    }
    .hero-grid,.page-hero-grid {
        width:100%;
        max-width:100%
    }
    .hero h1,.page-hero h1,.hero p,.page-hero p {
        max-width:100%;
        overflow-wrap:anywhere
    }
    .search-shell {
        display:flex;
        flex-direction:column;
        gap:7px;
        padding:7px;
        width:100%
    }
    .search-shell input {
        display:block;
        flex:none;
        padding:10px 9px;
        font-size:13px;
        text-overflow:ellipsis
    }
    .search-shell .btn {
        display:flex;
        width:100%;
        min-height:42px
    }
    .popular {
        margin-top:12px;
        padding-bottom:0;
        overflow:visible;
        white-space:normal
    }
    .popular b {
        width:auto;
        margin-right:2px
    }
    .hero-visual,.page-hero .hero-visual {
        width:100%;
        max-width:100%;
        min-height:252px;
        margin:4px 0 0
    }
    .chart-panel {
        position:absolute;
        left:0;
        right:0;
        width:100%;
        height:230px;
        padding:20px;
        border-radius:20px;
        overflow:hidden
    }
    .chart-panel .market-label {
        font-size:11px;
        line-height:1.35;
        max-width:190px
    }
    .chart-panel .growth {
        font-size:22px;
        line-height:1.65;
        margin-top:5px
    }
    .hero-bars {
        left:20px;
        right:20px;
        bottom:14px;
        width:auto;
        max-width:none;
        height:116px;
        gap:9px
    }
    .float-card {
        left:8px;
        right:auto;
        bottom:7px;
        max-width:calc(100% - 16px);
        min-width:0;
        padding:11px 14px;
        gap:11px
    }
    .float-card .round-icon {
        width:40px;
        height:40px;
        flex:0 0 40px
    }
    .float-card small {
        font-size:10px
    }
    .float-card b {
        font-size:19px
    }
}
@media (max-width:380px) {
    .container {
        width:calc(100% - 20px)
    }
    .hero-grid,.page-hero-grid {
        padding-left:0;
        padding-right:0
    }
    .search-shell input {
        font-size:12px
    }
    .popular {
        gap:6px
    }
    .pill {
        padding:5px 10px;
        font-size:10px
    }
    .hero-visual,.page-hero .hero-visual {
        min-height:235px
    }
    .chart-panel {
        height:215px;
        padding:17px
    }
    .hero-bars {
        left:17px;
        right:17px;
        height:100px;
        gap:7px
    }
    .float-card {
        left:6px;
        bottom:6px;
        padding:10px 12px
    }
}
/* V9.5: relevant image-style icons for KPI/stat cards */ .stat-icon.stat-image {
    width:44px;
    height:44px;
    padding:0;
    background:transparent!important;
    overflow:hidden;
    border-radius:12px;
    flex:0 0 44px
}
.stat-icon.stat-image img {
    display:block;
    width:44px;
    height:44px;
    object-fit:contain
}
@media(max-width:480px) {
    .stat-icon.stat-image,.stat-icon.stat-image img {
        width:42px;
        height:42px
    }
    .stat-icon.stat-image {
        flex-basis:42px
    }
}
/* V9.6 home page relevant image icons */ .home-image-icon {
    padding:0!important;
    background:transparent!important;
    overflow:hidden
}
.home-image-icon img {
    display:block;
    width:42px;
    height:42px;
    object-fit:contain
}
.home-card-image {
    display:flex!important;
    align-items:center;
    justify-content:center;
    padding:0!important;
    background:transparent!important;
    overflow:visible
}
.home-card-image img {
    display:block;
    width:54px;
    height:54px;
    object-fit:contain
}
.eco-circle.eco-image {
    padding:0;
    background:transparent;
    border:0;
    box-shadow:none;
    overflow:visible
}
.eco-circle.eco-image img {
    display:block;
    width:58px;
    height:58px;
    object-fit:contain
}
@media(max-width:600px) {
    .home-card-image img {
        width:50px;
        height:50px
    }
    .eco-circle.eco-image img {
        width:52px;
        height:52px
    }
}
.data-card {
    margin:auto;
    float:none;
    margin-bottom:50px
}
.donut-label {
    padding-top:23px;
    font-size: 19px;
}
.donut-label small {
    display: block;
    font-size: 12px!important;
    color: #000;
    margin-top: -83px;
}
/* V10.0 requested updates */ .site-header {
    position:sticky!important;
    top:0!important;
    z-index:999!important;
    box-shadow:0 3px 14px rgba(11,49,89,.06)
}
.data-table th,.data-table td,.admin-content table th,.admin-content table td {
    font-size:12px!important;
    line-height:1.35
}
.admin-content table {
    font-size:11px
}
/* Ad Intelligence extended page */ .ad-section {
    padding:68px 0
}
.ad-section.soft {
    background:#f4f9ff
}
.ad-section .section-head {
    max-width:760px
}
.ad-kicker {
    font-size:12px;
    color:#f58220;
    font-weight:800;
    letter-spacing:2px;
    text-transform:uppercase
}
.ad-grid-3 {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:16px
}
.ad-grid-4 {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px
}
.ad-card {
    background:#fff;
    border:1px solid #dce7f2;
    border-radius:12px;
    padding:20px;
    min-height:135px;
    box-shadow:0 4px 14px rgba(11,49,89,.035)
}
.ad-card h3 {
    font-size:15px;
    margin:12px 0 6px
}
.ad-card p {
    font-size:11px;
    color:#6e7d91;
    margin:0
}
.ad-mini-icon {
    width:34px;
    height:34px;
    border-radius:9px;
    background:#eef5ff;
    display:grid;
    place-items:center;
    color:#0b3159;
    font-weight:800
}
.ad-card small {
    font-size:12px;
    color:#688099
}
.media-tabs {
    display:flex;
    justify-content:center;
    gap:10px;
    margin:22px 0 18px;
    flex-wrap:wrap
}
.media-tab {
    padding:8px 16px;
    border-radius:7px;
    background:#eef5ff;
    border:1px solid #d8e6f5;
    font-size:10px;
    font-weight:700
}
.media-tab.active {
    background:#2868ea;
    color:#fff
}
.media-platforms {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px
}
.media-platform {
    background:#fff;
    border:1px solid #dce7f2;
    border-radius:9px;
    padding:13px 16px;
    display:flex;
    gap:10px;
    align-items:center
}
.media-platform b {
    display:block;
    font-size:11px
}
.media-platform small {
    font-size:12px;
    color:#7b8797
}
.planning-board {
    background:#fff;
    border:1px solid #dbe6f2;
    border-radius:14px;
    padding:20px;
    box-shadow:0 8px 24px rgba(11,49,89,.05)
}
.planning-filters {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px;
    margin-bottom:14px
}
.planning-select {
    border:1px solid #dce5f0;
    border-radius:7px;
    padding:9px 10px;
    font-size:10px;
    color:#64758a;
    background:#fff
}
.metric-row {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px
}
.metric-box {
    border:1px solid #e3eaf2;
    background:#f9fbfe;
    border-radius:8px;
    padding:13px
}
.metric-box small {
    display:block;
    font-size:12px;
    color:#79879a
}
.metric-box b {
    font-size:17px
}
.dash-grid {
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
    margin-top:12px
}
.dash-card {
    border:1px solid #e0e8f1;
    border-radius:9px;
    padding:15px;
    min-height:170px
}
.dash-card h4 {
    font-size:11px;
    margin:0 0 12px
}
.mini-bar {
    display:flex;
    align-items:center;
    gap:8px;
    margin:8px 0;
    font-size:12px
}
.mini-bar span:first-child {
    width:80px
}
.mini-bar i {
    height:6px;
    background:#2868ea;
    border-radius:99px;
    display:block
}
.matrix-wrap {
    display:grid;
    grid-template-columns:150px 1fr;
    gap:12px;
    align-items:center
}
.matrix {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px
}
.matrix>div {
    min-height:100px;
    border:1px solid #dce7f2;
    border-radius:10px;
    padding:16px;
    text-align:center;
    font-size:11px;
    background:#fff
}
.matrix .hot {
    background:#fff4ea
}
.matrix .good {
    background:#eefbf7
}
.compare-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px
}
.compare-box {
    border:1px solid #dce6f0;
    border-radius:12px;
    padding:20px;
    background:#fff
}
.compare-box h3 {
    font-size:14px;
    margin-top:0
}
.compare-line {
    padding:11px 12px;
    border:1px solid #e2e9f1;
    border-radius:7px;
    margin:8px 0;
    font-size:10px
}
.compare-box.highlight {
    background:#f7faff
}
.measurement-tabs {
    display:flex;
    justify-content:center;
    gap:16px;
    margin-bottom:22px;
    font-size:10px;
    flex-wrap:wrap
}
.measurement-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:10px
}
.measure-card {
    background:#fff;
    border:1px solid #dce7f2;
    border-radius:8px;
    text-align:center;
    padding:18px
}
.measure-card b {
    font-size:16px;
    display:block
}
.measure-card small {
    font-size:12px;
    color:#718098
}
.privacy-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:12px
}
.privacy-card {
    border:1px solid #dce7f2;
    border-radius:11px;
    padding:18px;
    background:#fff;
    min-height:140px
}
.privacy-card h3 {
    font-size:12px;
    margin:10px 0 5px
}
.privacy-card p {
    font-size:12px;
    color:#718098;
    margin:0
}
.ad-bottom-cta {
    background:linear-gradient(105deg,#0b3159,#103f7e);
    color:#fff;
    padding:55px 0
}
.ad-bottom-cta h2 {
    font-size:34px;
    line-height:1.05;
    margin:8px 0 12px;
    color:#fff
}
.ad-bottom-cta p {
    max-width:600px;
    color:#cfdef0
}
.ad-cta-actions {
    display:flex;
    gap:10px;
    margin-top:20px
}
.ad-benefits {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px;
    margin-top:30px
}
.ad-benefit {
    border:1px solid rgba(255,255,255,.15);
    border-radius:8px;
    padding:12px;
    font-size:10px;
    color:#e2ecf7
}
@media(max-width:900px) {
    .ad-grid-3,.ad-grid-4,.privacy-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .media-platforms,.measurement-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .planning-filters,.metric-row {
        grid-template-columns:repeat(2,1fr)
    }
    .matrix-wrap {
        grid-template-columns:1fr
    }
    .compare-grid {
        grid-template-columns:1fr
    }
    .ad-benefits {
        grid-template-columns:repeat(2,1fr)
    }
}
@media(max-width:600px) {
    .ad-grid-3,.ad-grid-4,.privacy-grid,.media-platforms,.measurement-grid,.planning-filters,.metric-row,.dash-grid,.matrix,.ad-benefits {
        grid-template-columns:1fr
    }
    .ad-section {
        padding:48px 0
    }
    .ad-bottom-cta h2 {
        font-size:28px
    }
    .ad-cta-actions {
        flex-direction:column
    }
}
/* V10.1 - Robust fixed frontend header */ .has-site-header {
    padding-top:72px
}
.has-site-header .site-header {
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    z-index:9999!important;
    background:#fff!important;
    box-shadow:0 3px 14px rgba(11,49,89,.08)
}
@media(max-width:1000px) {
    .has-site-header {
        padding-top:68px
    }
}
@media(max-width:600px) {
    .has-site-header {
        padding-top:62px
    }
}
/* V10.2 Data Methodology */ .dm-hero {
    background:linear-gradient(110deg,#f8fbff 0%,#eaf4ff 58%,#dceeff 100%);
    padding:72px 0 64px;
    border-bottom:1px solid #e3edf7
}
.dm-hero-grid {
    display:grid;
    grid-template-columns:1.08fr .92fr;
    gap:60px;
    align-items:center
}
.dm-hero h1 {
    font-size:50px;
    line-height:.98;
    letter-spacing:-2px;
    margin:15px 0 20px;
    color:#0b3159
}
.dm-hero h1 span {
    color:#216be5
}
.dm-hero p {
    max-width:690px;
    color:#5e6f84;
    font-size:14px
}
.dm-tags {
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    margin:22px 0
}
.dm-tags span {
    font-size:10px;
    padding:6px 10px;
    border:1px solid #d8e4f0;
    background:#fff;
    border-radius:6px;
    color:#53657d
}
.dm-actions {
    display:flex;
    gap:10px
}
.dm-hero-visual {
    position:relative;
    min-height:315px
}
.dm-source-card {
    position:absolute;
    right:28px;
    top:6px;
    width:310px;
    background:#fff;
    border:1px solid #dce7f2;
    border-radius:14px;
    padding:18px;
    box-shadow:0 16px 38px rgba(11,49,89,.12)
}
.dm-source-head {
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:14px
}
.dm-source-head b {
    font-size:12px
}
.dm-source-head small {
    font-size:12px;
    color:#8391a3
}
.dm-source-row {
    display:grid;
    grid-template-columns:24px 80px 1fr;
    align-items:center;
    gap:7px;
    margin:9px 0;
    font-size:12px
}
.dm-source-row i {
    width:22px;
    height:22px;
    border-radius:5px;
    background:#eef5ff;
    display:grid;
    place-items:center;
    color:#2868ea;
    font-style:normal
}
.dm-source-row em {
    height:6px;
    border-radius:99px;
    background:linear-gradient(90deg,#2868ea,#77aef8);
    display:block
}
.dm-trust-card {
    position:absolute;
    right:0;
    bottom:35px;
    background:#2868ea;
    color:#fff;
    padding:13px 17px;
    border-radius:9px;
    box-shadow:0 10px 22px rgba(40,104,234,.24);
    font-size:10px
}
.dm-trust-card b,.dm-trust-card small {
    display:block
}
.dm-trust-card small {
    opacity:.8;
    font-size:12px;
    margin-left:18px
}
.dm-section {
    padding:66px 0
}
.dm-soft {
    background:#f4f9ff
}
.dm-head {
    margin-bottom:28px;
    max-width:820px
}
.dm-kicker {
    font-size:12px;
    color:#2868ea;
    font-weight:800;
    letter-spacing:2px
}
.dm-head h2 {
    font-size:31px;
    line-height:1.08;
    margin:6px 0 8px;
    letter-spacing:-1px
}
.dm-head p {
    color:#748196;
    font-size:11px;
    margin:0
}
.dm-process-grid {
    display:grid;
    grid-template-columns:repeat(7,1fr);
    gap:10px
}
.dm-process-card {
    background:#fff;
    border:1px solid #dde7f1;
    border-radius:10px;
    padding:16px;
    min-height:190px
}
.dm-process-card small {
    font-size:7px;
    color:#8795a8;
    letter-spacing:1px
}
.dm-process-card h3 {
    font-size:12px;
    margin:8px 0
}
.dm-process-card p {
    font-size:8.5px;
    color:#768599;
    line-height:1.55
}
.dm-step-icon {
    width:31px;
    height:31px;
    border-radius:8px;
    background:#eef5ff;
    color:#2868ea;
    display:grid;
    place-items:center;
    font-size:10px;
    font-weight:800;
    margin-bottom:12px
}
.dm-source-pills {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:10px
}
.dm-source-pills span {
    background:#fff;
    border:1px solid #dce7f2;
    border-radius:8px;
    padding:12px 14px;
    font-size:12px;
    color:#445a74
}
.dm-note {
    font-size:12px;
    color:#8b98a8;
    margin-top:14px
}
.dm-field-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px
}
.dm-field-grid div {
    border:1px solid #dce6ef;
    background:#fff;
    border-radius:4px;
    padding:9px;
    text-align:center;
    font-size:12px;
    font-weight:600
}
.dm-compare-grid,.dm-quality-grid,.dm-layer-grid,.dm-confidence-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px
}
.dm-box,.dm-quality-panel {
    background:#fff;
    border:1px solid #dce6f0;
    border-radius:11px;
    padding:18px
}
.dm-box h3,.dm-quality-panel small {
    font-size:12px;
    letter-spacing:1px;
    color:#6e7f94
}
.dm-box>div,.dm-quality-panel>div {
    padding:9px 11px;
    margin-top:8px;
    background:#f9fbfe;
    border:1px solid #edf1f6;
    border-radius:5px;
    font-size:12px
}
.dm-box .good {
    background:#eef7ff;
    color:#2466c8;
    font-weight:700
}
.dm-merge-flow {
    text-align:center;
    max-width:760px;
    margin:auto
}
.dm-chip-row {
    display:flex;
    justify-content:center;
    gap:12px
}
.dm-chip-row span {
    border:1px solid #dce6f0;
    background:#fff;
    border-radius:7px;
    padding:11px 24px;
    font-size:12px
}
.dm-arrow {
    font-size:24px;
    color:#2868ea;
    margin:12px 0
}
.dm-arrow small {
    display:block;
    font-size:12px;
    color:#68798f
}
.dm-master-card {
    max-width:420px;
    margin:auto;
    background:#fff;
    border:1px solid #dce6f0;
    border-radius:10px;
    padding:18px
}
.dm-master-card b,.dm-master-card span {
    display:block
}
.dm-master-card b {
    font-size:12px
}
.dm-master-card span {
    font-size:12px;
    color:#7b899b;
    margin-top:6px
}
.dm-hierarchy-grid {
    display:grid;
    grid-template-columns:1fr 1.4fr;
    gap:28px
}
.dm-tree {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:6px
}
.dm-tree b {
    background:#2868ea;
    color:#fff;
    border-radius:6px;
    padding:10px 14px;
    font-size:12px
}
.dm-tree span {
    background:#fff;
    border:1px solid #dce6f0;
    border-radius:5px;
    padding:7px 16px;
    font-size:12px;
    margin-left:18px
}
.dm-hierarchy-table {
    background:#fff;
    border:1px solid #dce6ef;
    border-radius:10px;
    overflow:hidden
}
.dm-hierarchy-table div {
    display:grid;
    grid-template-columns:1fr 1fr;
    border-bottom:1px solid #eef2f6
}
.dm-hierarchy-table div:last-child {
    border-bottom:0
}
.dm-hierarchy-table span,.dm-hierarchy-table b {
    padding:9px 12px;
    font-size:12px
}
.dm-dimensions {
    display:grid!important;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    background:transparent!important;
    border:0!important;
    padding:0!important
}
.dm-dimensions span,.dm-stack span {
    display:block;
    border:1px solid #e2e9f1;
    background:#fff;
    border-radius:5px;
    padding:8px;
    text-align:center;
    font-size:12px
}
.dm-stack {
    display:flex!important;
    flex-direction:column;
    gap:6px;
    background:transparent!important;
    border:0!important;
    padding:0!important
}
.dm-stack span:first-child {
    background:#2868ea;
    color:#fff
}
.dm-four-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:14px
}
.dm-four-grid>div {
    border:1px solid #dce7f2;
    background:#fff;
    border-radius:10px;
    padding:18px
}
.dm-four-grid i {
    font-style:normal;
    width:28px;
    height:28px;
    border-radius:7px;
    background:#eef5ff;
    color:#2868ea;
    display:grid;
    place-items:center;
    font-size:12px;
    font-weight:800
}
.dm-four-grid h3 {
    font-size:12px;
    margin:12px 0 6px
}
.dm-four-grid p {
    font-size:12px;
    color:#758499
}
.dm-record-card {
    max-width:640px;
    margin:auto;
    background:#fff;
    border:1px solid #dce7f2;
    border-radius:12px;
    box-shadow:0 10px 26px rgba(11,49,89,.05);
    padding:18px
}
.dm-record-head {
    display:flex;
    justify-content:space-between;
    border-bottom:1px solid #edf2f7;
    padding-bottom:12px;
    margin-bottom:14px
}
.dm-record-head b {
    font-size:11px
}
.dm-record-head span {
    font-size:12px;
    color:#f58220
}
.dm-record-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px 30px
}
.dm-record-grid small,.dm-record-grid b {
    display:block
}
.dm-record-grid small {
    font-size:7px;
    color:#8a97a7
}
.dm-record-grid b {
    font-size:12px;
    margin-top:3px
}
.dm-connect-grid {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:12px
}
.dm-connect-grid>div {
    border:1px solid #dce7f2;
    background:#fff;
    border-radius:9px;
    padding:14px;
    text-align:center
}
.dm-connect-grid b {
    display:block;
    font-size:12px;
    color:#2868ea;
    margin-bottom:8px
}
.dm-connect-grid span {
    display:block;
    border:1px solid #edf1f5;
    border-radius:4px;
    padding:6px;
    margin:5px 0;
    font-size:12px
}
.dm-confidence-grid>div {
    border-radius:12px;
    padding:20px;
    border:1px solid
}
.dm-confidence-grid h3 {
    font-size:12px;
    margin:0 0 8px
}
.dm-confidence-grid p {
    font-size:12px;
    margin:0;
    color:#68798f
}
.dm-confidence-grid .verified {
    background:#f3fffb;
    border-color:#bfeadd
}
.dm-confidence-grid .estimated {
    background:#fff9f3;
    border-color:#f1d6b7
}
.dm-action-grid {
    display:grid;
    grid-template-columns:repeat(5,1fr);
    border:1px solid #dce7f2;
    border-radius:10px;
    overflow:hidden
}
.dm-action-grid>div {
    text-align:center;
    padding:22px 14px;
    border-right:1px solid #e5ebf3;
    background:#fff;
    font-size:16px;
    color:#2868ea
}
.dm-action-grid>div:last-child {
    border-right:0
}
.dm-action-grid b,.dm-action-grid span {
    display:block
}
.dm-action-grid b {
    font-size:12px;
    color:#0b3159;
    margin:7px 0 4px
}
.dm-action-grid span {
    font-size:7px;
    color:#7a889a
}
@media(max-width:1100px) {
    .dm-process-grid {
        grid-template-columns:repeat(4,1fr)
    }
    .dm-connect-grid {
        grid-template-columns:repeat(3,1fr)
    }
    .main-nav {
        gap:15px
    }
    .main-nav a {
        font-size:12px
    }
    .ig-brand {
        min-width:150px
    }
}
@media(max-width:820px) {
    .dm-hero-grid {
        grid-template-columns:1fr
    }
    .dm-hero-visual {
        min-height:300px
    }
    .dm-source-pills,.dm-four-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .dm-hierarchy-grid {
        grid-template-columns:1fr
    }
    .dm-process-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .dm-action-grid {
        grid-template-columns:1fr 1fr
    }
    .dm-action-grid>div {
        border-bottom:1px solid #e5ebf3
    }
}
@media(max-width:600px) {
    .dm-hero {
        padding:48px 0
    }
    .dm-hero h1 {
        font-size:38px
    }
    .dm-source-card {
        left:0;
        right:0;
        width:100%
    }
    .dm-trust-card {
        right:8px
    }
    .dm-head h2 {
        font-size:27px
    }
    .dm-source-pills,.dm-four-grid,.dm-process-grid,.dm-compare-grid,.dm-quality-grid,.dm-layer-grid,.dm-confidence-grid,.dm-connect-grid,.dm-record-grid,.dm-action-grid {
        grid-template-columns:1fr
    }
    .dm-field-grid {
        grid-template-columns:1fr 1fr
    }
    .dm-chip-row {
        flex-direction:column
    }
    .dm-section {
        padding:48px 0
    }
    .dm-actions {
        flex-direction:column;
        align-items:flex-start
    }
}
/* =========================================================    GLOBAL MINIMUM FONT SIZE — 11PX    Keep this block at the very end of the stylesheet. ========================================================= */ :where(small, .eyebrow, .stat small, .float-card small, .eco-count,        .market-label, .data-card small, .market-card small,        .table-summary, .page-total, .field, .filter-box p,        .site-footer small, table, th, td, input, select, textarea,        button, .badge, .tiny, .section-kicker, .admin-nav-label,        .settings-preview > span, .login-brand small, .ad-kicker,        .ad-card small, .media-tab, .media-platform small,        .planning-select, .metric-box small, .mini-bar,        .compare-line, .measurement-tabs, .measure-card small,        .privacy-card p, .ad-benefit, .dm-kicker, .dm-head p,        .dm-process-card small, .dm-process-card p, .dm-source-pills span,        .dm-note, .dm-field-grid div, .dm-four-grid p, .dm-record-head span,        .dm-record-grid small, .dm-record-grid b, .dm-confidence-grid p,        .dm-action-grid b, .dm-action-grid span) {
    font-size: max(11px, 1em) !important;
}
.data-table, .data-table th, .data-table td, .admin-content table, .admin-content table th, .admin-content table td {
    font-size: 11px !important;
}

/* V3 final: dynamic dataset graphs, totals and stats */
.dynamic-stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important}
.dataset-graphs{padding-top:52px!important;padding-bottom:28px!important}
.dataset-graph-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.dataset-graph-card{min-height:285px}
.graph-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.graph-card-head h3{margin:0;font-size:15px}.graph-card-head span{font-size:11px;font-weight:800;color:#f58220;letter-spacing:.7px}
.mini-bars{display:grid;gap:10px}.mini-bar-row{display:grid;grid-template-columns:minmax(95px,145px) 1fr 70px;align-items:center;gap:10px;font-size:11px}.mini-bar-row>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mini-bar-row>div{height:9px;background:#eef4fb;border-radius:99px;overflow:hidden}.mini-bar-row i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#2d73df,#f58220)}.mini-bar-row b{text-align:right}
.mini-line-chart svg{width:100%;height:190px;background:linear-gradient(180deg,#fbfdff,#f7faff);border-radius:10px;border:1px solid #edf2f7}.mini-line-labels{display:grid;grid-template-columns:repeat(auto-fit,minmax(58px,1fr));gap:5px;margin-top:8px}.mini-line-labels span{font-size:11px;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#66758b}
.sum-row th{background:#f7faff!important;color:#0b3159!important;font-weight:800!important;border-top:2px solid #dbe6f2!important}
.empty-chart{min-height:150px;display:grid;place-items:center;color:#7c899b;border:1px dashed #dbe5f0;border-radius:10px;background:#fafcff}
@media(max-width:820px){.dataset-graph-grid{grid-template-columns:1fr}.mini-bar-row{grid-template-columns:90px 1fr 60px}}

/* V3 final: admin data-table controls */
.admin-table-toolbar{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;margin:0 0 14px}.admin-search-form,.admin-bulk-form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin-search-form input{min-width:260px}.admin-bulk-form .danger{color:#b42318;border-color:#f0b7b2}.admin-sort{color:inherit;font-weight:700;white-space:nowrap}.admin-data-table input[type=checkbox]{width:16px;height:16px;accent-color:#f58220}.admin-table-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:14px 4px;color:#617188;font-size:11px}.admin-table-footer form label{display:flex;align-items:center;gap:8px}.admin-table-footer select{height:34px}.admin-pager{display:flex;gap:5px}.admin-pager a{min-width:32px;height:32px;display:grid;place-items:center;border:1px solid #d9e3ef;border-radius:7px;background:#fff}.admin-pager a.active{background:#f58220;color:#fff;border-color:#f58220}
@media(max-width:700px){.admin-search-form{width:100%}.admin-search-form input{min-width:0;flex:1}.admin-table-toolbar{align-items:stretch}.admin-bulk-form{width:100%}.admin-bulk-form .btn{flex:1}}

.admin-select-all-data{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;white-space:nowrap}.admin-select-all-data input{width:16px;height:16px}.admin-bulk-form button:disabled{opacity:.45;cursor:not-allowed}

/* Channel Expansion */
.ce-page{color:#0b3159}.ce-page h1,.ce-page h2,.ce-page h3{color:#0b3159}.ce-hero{background:radial-gradient(circle at 78% 20%,#dceeff 0,#eef7ff 30%,#fff 66%);padding:72px 0 76px}.ce-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:80px;align-items:center}.ce-kicker{font-size:11px;font-weight:800;letter-spacing:2px;color:#2d73df;margin-bottom:12px}.ce-hero h1{font-size:55px;line-height:.98;margin:0 0 24px;letter-spacing:-2px}.ce-hero h1 span{color:#1769db}.ce-hero p{max-width:590px;font-size:15px;line-height:1.75;color:#53657b}.ce-muted{font-size:12px!important}.ce-actions{display:flex;gap:10px;margin:24px 0 16px}.ce-pill{display:inline-block;border:1px solid #dce6f3;border-radius:20px;padding:7px 12px;background:#fff;font-size:11px;font-weight:700}.ce-dashboard{background:#fff;border:1px solid #dce7f4;border-radius:14px;padding:22px;box-shadow:0 20px 45px rgba(35,92,150,.13);transform:rotate(-.5deg)}.ce-dash-head,.ce-dash-row,.ce-dash-bottom{display:flex;justify-content:space-between;align-items:center}.ce-dash-head{margin-bottom:18px}.ce-dash-head span,.ce-dash-row b{color:#12a67a;font-size:11px}.ce-dash-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px}.ce-dash-stats>div{background:#f1f7ff;border-radius:8px;padding:12px}.ce-dash-stats>div+div{background:#effaf7}.ce-dash-stats b{display:block;font-size:22px}.ce-dash-row{padding:9px 0;border-bottom:1px solid #edf1f5;font-size:12px}.ce-dash-bottom{margin-top:14px;border:1px solid #e4ebf4;border-radius:8px;padding:10px}.ce-dash-bottom div{text-align:center;flex:1}.ce-dash-bottom b,.ce-dash-bottom small{display:block}.ce-section{padding:70px 0}.ce-soft{background:#f3f9fd}.ce-section h2{font-size:32px;margin:0 0 7px}.ce-lead{color:#68788b;margin-top:0}.ce-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:34px}.ce-step,.ce-price-card,.ce-compare>div,.ce-case-grid>div,.ce-pilot,.ce-enterprise,.ce-why>div{border:1px solid #dce6f1;background:#fff;border-radius:10px}.ce-step{padding:20px;min-height:165px;position:relative}.ce-step i{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:6px;background:#216ee6;color:#fff;font-style:normal;font-weight:800}.ce-step>span{float:right}.ce-step h3{font-size:14px;margin:20px 0 7px}.ce-step p{font-size:11px;line-height:1.6;color:#738195}.ce-pricing{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.ce-price-card{padding:26px;position:relative}.ce-price-card.featured{border:2px solid #2772e6}.ce-popular{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:#2772e6;color:#fff;border-radius:20px;padding:5px 18px;font-size:10px;font-weight:800}.ce-price-card>small{font-weight:800}.ce-price-card h3{font-size:25px;margin:10px 0}.ce-price-card h3 em{font-size:11px;font-weight:500;font-style:normal;color:#718096}.ce-price-card p{color:#718096;font-size:11px}.ce-price-card ul{list-style:none;padding:0;margin:22px 0;min-height:230px}.ce-price-card li{padding:7px 0 7px 18px;font-size:11px;position:relative}.ce-price-card li:before{content:'✓';position:absolute;left:0;color:#16ad88}.ce-price-card .btn{width:100%}.ce-compare{display:grid;grid-template-columns:1fr 1fr;margin-top:30px}.ce-compare>div{padding:24px;border-radius:10px 0 0 10px;background:#f8fafc}.ce-compare>.good{border-color:#b8d5f4;border-radius:0 10px 10px 0;background:#f8fcff}.ce-compare h3{font-size:14px}.ce-compare p{background:#fff;border:1px solid #e5ebf2;border-radius:5px;padding:9px 12px;font-size:11px;margin:7px 0}.ce-compare .good p{color:#315c75}.ce-bluebar{background:#246ee7;color:#fff;border-radius:8px;text-align:center;font-weight:700;padding:17px;margin-top:24px}.ce-case-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;margin-top:30px}.ce-case-grid>div{padding:18px}.ce-case-grid small{display:block;font-weight:800;margin-bottom:12px}.ce-case-grid b{display:block;background:#eef6ff;padding:12px;border-radius:5px}.ce-case-grid p{font-size:11px;line-height:1.6}.ce-case-grid .btn{margin-top:12px}.ce-table{margin-top:18px;border:1px solid #dce6f1;border-radius:8px;overflow:hidden;background:#fff}.ce-table>div{display:grid;grid-template-columns:1.5fr .8fr 1fr 1fr .8fr;padding:11px 14px;border-bottom:1px solid #edf1f5;font-size:11px}.ce-table .head{font-weight:800;background:#f8fafc}.ce-table .ready{color:#0b9d75;font-weight:700}.ce-center-note{text-align:center;font-size:11px;color:#8a97a8}.ce-narrow{max-width:1000px}.ce-pilot{padding:30px;text-align:center;margin-top:28px}.ce-pilot-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:20px}.ce-pilot-grid>div{padding:10px;border-right:1px solid #e6edf4}.ce-pilot-grid>div:last-child{border:0}.ce-pilot-grid small,.ce-pilot-grid b,.ce-pilot-grid em{display:block}.ce-pilot-grid b{font-size:22px;margin:8px 0}.ce-pilot-grid em{font-size:11px;font-style:normal;color:#8290a0}.ce-pilot>p{font-size:11px;color:#8290a0}.ce-enterprise{padding:28px;display:flex;justify-content:space-between;align-items:flex-start;gap:30px;margin-top:28px}.ce-enterprise h3{margin-top:0}.ce-enterprise h3 span{color:#2671e5}.ce-enterprise-list{display:grid;grid-template-columns:1fr 1fr;gap:10px 35px;font-size:11px;color:#506276}.ce-why{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}.ce-why>div{padding:22px}.ce-why i{font-style:normal;font-size:20px;color:#2671e5}.ce-why h3{font-size:13px;margin:15px 0 7px}.ce-why p{font-size:11px;color:#718096;line-height:1.6}
@media(max-width:1000px){.ce-hero-grid{grid-template-columns:1fr;gap:45px}.ce-steps{grid-template-columns:repeat(2,1fr)}.ce-pricing{grid-template-columns:1fr}.ce-price-card ul{min-height:0}.ce-why{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.ce-hero{padding:48px 0}.ce-hero h1{font-size:40px}.ce-section{padding:48px 0}.ce-section h2{font-size:27px}.ce-steps,.ce-case-grid,.ce-compare,.ce-pilot-grid,.ce-why,.ce-enterprise-list{grid-template-columns:1fr}.ce-compare>div,.ce-compare>.good{border-radius:10px;margin-bottom:12px}.ce-pilot-grid>div{border-right:0;border-bottom:1px solid #e6edf4}.ce-enterprise{flex-direction:column}.ce-table{overflow-x:auto}.ce-table>div{min-width:650px}.ce-actions{flex-wrap:wrap}}
