.customers-page{
  display:grid;
  gap:18px;
}

.page-hero{
  padding:44px 0 18px;
}

.customers-hero-grid,
.customers-grid{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(320px, .85fr);
  gap:18px;
  align-items:start;
}

.customers-focus-grid{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:18px;
  align-items:start;
}

.customers-stage{
  grid-template-columns:minmax(0, 1fr);
}

.customers-shell .admin-app-main{
  padding:22px;
}

.customers-topbar{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
}

.customers-topbar h1{
  margin:8px 0 0;
  font-family:"Cormorant Garamond", serif;
  font-size:58px;
  line-height:.92;
}

.page-hero-copy,
.page-hero-side,
.page-toolbar-card,
.summary-card,
.page-panel{
  border:1px solid rgba(17,17,17,.08);
  background:rgba(255,255,255,.78);
  box-shadow:var(--shadow);
}

.page-hero-copy{
  padding:42px;
}

.page-hero-copy h1,
.page-hero-side h2,
.page-toolbar-card h2,
.mini-head h3,
.summary-card strong,
.segment-card strong,
.retention-list strong,
.customer-list h4,
.support-list strong{
  margin:0;
  font-family:"Cormorant Garamond", serif;
  font-weight:600;
}

.page-hero-copy h1{
  max-width:12ch;
  font-size:clamp(3rem, 6vw, 5rem);
  line-height:.95;
}

.page-hero-side{
  padding:30px;
}

.page-hero-side h2{
  font-size:48px;
  line-height:1;
}

.hero-side-stats{
  display:grid;
  gap:14px;
  margin-top:24px;
}

.hero-side-stats article,
.summary-card,
.segment-card,
.retention-list article,
.customer-list article,
.support-list article{
  padding:16px 18px;
  border:1px solid rgba(17,17,17,.08);
  background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(247,244,236,.84));
}

.hero-side-stats span,
.summary-card span,
.segment-card span,
.retention-list p,
.customer-list p,
.support-list p{
  display:block;
  color:var(--muted);
}

.hero-side-stats span,
.summary-card span,
.segment-card span{
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.hero-side-stats strong,
.summary-card strong{
  display:block;
  margin-top:10px;
  font-size:34px;
  line-height:1;
}

.page-section{
  padding:0 0 18px;
}

.toolbar-copy,
.mini-copy{
  margin:12px 0 0;
  color:var(--muted);
  line-height:1.8;
}

.month-strip{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

.page-panel.location-panel{
  padding:16px 16px 18px;
}

.seo-kpi-grid{
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:12px;
  margin-bottom:14px;
}

.seo-kpi-card{
  position:relative;
  overflow:hidden;
  padding:16px 16px 15px;
  border:1px solid rgba(17,17,17,.08);
  border-radius:20px;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.1), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,244,236,.9));
  box-shadow:0 14px 28px rgba(17,17,17,.05);
}

.seo-kpi-card::after{
  content:"";
  position:absolute;
  left:16px;
  right:16px;
  bottom:0;
  height:4px;
  border-radius:999px 999px 0 0;
  background:linear-gradient(90deg, rgba(17,17,17,.12), rgba(17,17,17,.02));
}

.seo-kpi-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
}

.seo-kpi-card span{
  display:block;
  color:var(--muted);
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.seo-kpi-head b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:24px;
  padding:5px 9px;
  border-radius:999px;
  border:1px solid rgba(17,17,17,.08);
  background:rgba(255,255,255,.72);
  color:rgba(17,17,17,.58);
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.seo-kpi-card strong{
  display:block;
  margin-top:10px;
  font-family:"Cormorant Garamond", serif;
  font-size:40px;
  line-height:.95;
}

.seo-kpi-card small{
  display:block;
  margin-top:10px;
  color:var(--gold-deep);
  font-size:12px;
  line-height:1.5;
}

.seo-kpi-card.is-live::after{
  background:linear-gradient(90deg, rgba(91,201,119,.9), rgba(91,201,119,.24));
}

.seo-kpi-card.is-live .seo-kpi-head b{
  border-color:rgba(91,201,119,.22);
  background:rgba(91,201,119,.1);
  color:#3d7a50;
}

.seo-kpi-card.is-session::after{
  background:linear-gradient(90deg, rgba(82,136,214,.78), rgba(82,136,214,.2));
}

.seo-kpi-card.is-session .seo-kpi-head b{
  border-color:rgba(82,136,214,.18);
  background:rgba(82,136,214,.08);
  color:#355b95;
}

.seo-kpi-card.is-users::after{
  background:linear-gradient(90deg, rgba(17,17,17,.82), rgba(17,17,17,.16));
}

.seo-kpi-card.is-daily::after{
  background:linear-gradient(90deg, rgba(212,175,55,.88), rgba(212,175,55,.18));
}

.seo-kpi-card.is-weekly::after{
  background:linear-gradient(90deg, rgba(121,103,176,.72), rgba(121,103,176,.16));
}

.seo-kpi-card.is-monthly::after{
  background:linear-gradient(90deg, rgba(183,128,77,.76), rgba(183,128,77,.18));
}

.location-month-strip{
  justify-content:flex-start;
  margin-bottom:14px;
  padding:8px;
  border:1px solid rgba(17,17,17,.08);
  border-radius:24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,244,236,.9));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 14px 28px rgba(17,17,17,.04);
}

.location-month-strip .month-chip{
  min-width:120px;
  padding:12px 14px;
  border-radius:18px;
  border:1px solid transparent;
  background:transparent;
  color:var(--muted);
  display:grid;
  justify-items:start;
  gap:6px;
  text-align:left;
  transition:background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.location-month-strip .month-chip:hover{
  transform:translateY(-1px);
  color:var(--ink);
  background:rgba(255,255,255,.62);
}

.location-month-strip .month-chip.active,
.location-month-strip .month-chip[aria-selected="true"]{
  border-color:rgba(17,17,17,.1);
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.18), transparent 40%),
    linear-gradient(135deg, #151515, #2a2a2a);
  color:var(--white);
  box-shadow:0 14px 26px rgba(17,17,17,.12);
}

.location-month-strip .month-chip span{
  font-size:14px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.location-month-strip .month-chip small{
  color:rgba(17,17,17,.48);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.location-month-strip .month-chip.active small,
.location-month-strip .month-chip[aria-selected="true"] small{
  color:rgba(255,255,255,.68);
}

.page-panel{
  padding:24px;
}

.mini-head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
}

.mini-head h3{
  font-size:34px;
}

.customer-market-list{
  display:grid;
  gap:12px;
}

.customer-map-shell{
  margin-bottom:14px;
  padding:12px;
  border:1px solid rgba(17,17,17,.08);
  border-radius:28px;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.16), transparent 32%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(244,238,226,.9));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.86),
    0 18px 36px rgba(17,17,17,.06);
}

.customer-map-frame{
  position:relative;
  padding:14px;
  border:1px solid rgba(17,17,17,.07);
  border-radius:22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(247,244,236,.52)),
    rgba(255,255,255,.64);
}

.customer-map-meta{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:18px;
  margin-bottom:14px;
}

.customer-map-meta span{
  display:block;
  color:rgba(17,17,17,.48);
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.customer-map-meta strong{
  display:block;
  margin-top:8px;
  font-family:"Cormorant Garamond", serif;
  font-size:32px;
  line-height:.96;
}

.customer-map-meta p{
  max-width:32ch;
  margin:0;
  color:var(--muted);
  font-size:13px;
  line-height:1.7;
  text-align:right;
}

.customer-map{
  position:relative;
  min-height:480px;
  border:1px solid rgba(17,17,17,.08);
  border-radius:24px;
  overflow:hidden;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.16), transparent 28%),
    linear-gradient(180deg, rgba(248,244,235,.95), rgba(255,255,255,.92));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.75),
    0 18px 30px rgba(17,17,17,.05);
}

.customer-map::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 15% 16%, rgba(255,255,255,.56), transparent 24%),
    radial-gradient(circle at 84% 18%, rgba(212,175,55,.12), transparent 26%),
    linear-gradient(180deg, rgba(16,16,16,.02), rgba(16,16,16,.05));
  pointer-events:none;
  z-index:450;
}

.customer-map::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);
  pointer-events:none;
  z-index:451;
}

.customer-map.is-fallback{
  display:grid;
  place-items:center;
  padding:24px;
  text-align:center;
  color:var(--muted);
  line-height:1.8;
}

.customer-market-list{
  margin-bottom:12px;
  display:grid;
  gap:14px;
}

.customer-market-list article{
  position:relative;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:22px;
  padding:18px 20px;
  border:1px solid rgba(17,17,17,.08);
  border-radius:24px;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.96), rgba(247,244,236,.88));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.82),
    0 16px 30px rgba(17,17,17,.05);
}

.customer-market-list article::after{
  content:"";
  position:absolute;
  left:20px;
  right:20px;
  bottom:0;
  height:4px;
  border-radius:999px 999px 0 0;
  background:linear-gradient(90deg, rgba(212,175,55,.7), rgba(17,17,17,.06));
}

.customer-market-main{
  display:flex;
  align-items:center;
  gap:16px;
  min-width:0;
  flex:1 1 auto;
}

.customer-market-rank{
  width:48px;
  height:48px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.22), transparent 40%),
    linear-gradient(135deg, rgba(17,17,17,.98), rgba(41,41,41,.92));
  color:var(--white);
  font-size:12px;
  letter-spacing:.12em;
  text-transform:uppercase;
  flex-shrink:0;
  box-shadow:0 14px 24px rgba(17,17,17,.12);
}

.customer-market-meta{
  display:grid;
  gap:7px;
}

.customer-market-meta strong{
  font-family:"Cormorant Garamond", serif;
  font-size:30px;
  line-height:.92;
  font-weight:600;
}

.customer-market-meta p{
  margin:0;
  color:rgba(17,17,17,.56);
  font-size:11px;
  letter-spacing:.16em;
  line-height:1.5;
  text-transform:uppercase;
}

.customer-market-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:fit-content;
  margin-top:2px;
  padding:7px 10px;
  border-radius:999px;
  background:rgba(68, 159, 96, .1);
  color:#3e7a53;
  font-size:10px;
  letter-spacing:.14em;
  text-transform:uppercase;
}

.customer-market-live::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:#67c27e;
  box-shadow:0 0 0 5px rgba(103,194,126,.14);
}

.customer-market-value{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, auto));
  gap:14px;
  align-items:center;
  flex-shrink:0;
}

.customer-market-stat{
  min-width:126px;
  padding:14px 15px 13px;
  border-radius:20px;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.12), transparent 46%),
    linear-gradient(180deg, rgba(255,255,255,.9), rgba(247,244,236,.82));
  border:1px solid rgba(17,17,17,.07);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.78),
    0 12px 24px rgba(17,17,17,.05);
  text-align:left;
}

.customer-market-stat em{
  display:block;
  color:rgba(17,17,17,.5);
  font-style:normal;
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.customer-market-stat strong{
  display:block;
  margin-top:8px;
  font-family:"Cormorant Garamond", serif;
  font-size:32px;
  line-height:.92;
}

.customer-market-stat.visits-stat{
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.18), transparent 46%),
    linear-gradient(180deg, rgba(255,251,240,.96), rgba(244,235,209,.82));
  border-color:rgba(191,163,106,.2);
}

.customer-market-stat.visits-stat em{
  color:#8d7442;
}

.customer-market-stat.visits-stat strong{
  color:#6f582f;
}

.customer-market-stat.sessions-stat{
  background:
    radial-gradient(circle at top right, rgba(17,17,17,.08), transparent 46%),
    linear-gradient(180deg, rgba(255,255,255,.94), rgba(236,239,242,.88));
  border-color:rgba(17,17,17,.08);
}

.customer-market-stat.sessions-stat em{
  color:#616161;
}

.customer-market-stat.sessions-stat strong{
  color:#171717;
}

.seo-detail-grid{
  display:grid;
  grid-template-columns:minmax(300px, .9fr) minmax(0, 1.1fr);
  gap:14px;
}

.seo-detail-panel{
  padding:18px;
  border:1px solid rgba(17,17,17,.08);
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(247,244,236,.86));
}

.seo-detail-head span,
.seo-metric-card span{
  display:block;
  color:var(--muted);
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.seo-detail-head strong{
  display:block;
  margin-top:10px;
  font-family:"Cormorant Garamond", serif;
  font-size:34px;
  line-height:.96;
}

.seo-detail-copy{
  margin:14px 0 0;
  color:var(--muted);
  font-size:14px;
  line-height:1.75;
  max-width:56ch;
}

.seo-source-list{
  display:grid;
  gap:12px;
  margin-top:16px;
}

.seo-source-list article{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  gap:14px;
  align-items:center;
  padding:16px;
  border:1px solid rgba(17,17,17,.08);
  border-radius:20px;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.1), transparent 34%),
    rgba(255,255,255,.8);
  box-shadow:0 12px 24px rgba(17,17,17,.04);
}

.seo-source-rank{
  width:42px;
  height:42px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, #151515, #2a2a2a);
  color:var(--white);
  font-size:11px;
  letter-spacing:.12em;
  text-transform:uppercase;
  flex-shrink:0;
}

.seo-source-main{
  min-width:0;
}

.seo-source-list strong{
  display:block;
  font-size:16px;
  font-weight:500;
}

.seo-source-list p{
  margin:6px 0 0;
  color:var(--muted);
  font-size:14px;
  line-height:1.6;
}

.seo-source-meter{
  width:100%;
  height:7px;
  margin-top:12px;
  border-radius:999px;
  background:rgba(17,17,17,.08);
  overflow:hidden;
}

.seo-source-meter span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg, #d4af37, #151515);
  width:var(--seo-share, 50%);
}

.seo-source-value{
  min-width:112px;
  text-align:right;
  align-self:center;
}

.seo-source-value strong{
  font-family:"Cormorant Garamond", serif;
  font-size:32px;
  line-height:.95;
}

.seo-source-value span{
  display:block;
  margin-top:4px;
  color:rgba(17,17,17,.46);
  font-size:11px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.seo-graph-controls{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:16px;
}

.seo-graph-chip{
  border:1px solid rgba(17,17,17,.08);
  border-radius:999px;
  padding:10px 14px;
  background:rgba(255,255,255,.78);
  color:var(--muted);
  font-size:12px;
  letter-spacing:.1em;
  text-transform:uppercase;
  transition:background .2s ease, color .2s ease, border-color .2s ease, transform .2s ease;
}

.seo-graph-chip:hover{
  transform:translateY(-1px);
  color:var(--ink);
}

.seo-graph-chip.active,
.seo-graph-chip[aria-selected="true"]{
  border-color:rgba(17,17,17,.12);
  background:linear-gradient(135deg, #151515, #2a2a2a);
  color:var(--white);
  box-shadow:0 12px 24px rgba(17,17,17,.1);
}

.seo-graph-shell{
  margin-top:16px;
  padding:18px;
  border:1px solid rgba(17,17,17,.08);
  border-radius:24px;
  background:
    radial-gradient(circle at top right, rgba(212,175,55,.12), transparent 30%),
    rgba(255,255,255,.8);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.76),
    0 16px 28px rgba(17,17,17,.05);
}

.seo-graph-summary span{
  display:block;
  color:var(--muted);
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
}

.seo-graph-summary{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding-bottom:14px;
  border-bottom:1px solid rgba(17,17,17,.08);
}

.seo-graph-summary strong{
  display:block;
  margin-top:12px;
  font-family:"Cormorant Garamond", serif;
  font-size:46px;
  line-height:.94;
}

.seo-graph-summary small{
  display:block;
  margin-top:10px;
  color:var(--muted);
  font-size:13px;
  line-height:1.6;
}

.seo-graph-summary-side{
  display:grid;
  justify-items:end;
  gap:10px;
  padding-top:4px;
}

.seo-graph-summary-side span{
  font-size:11px;
  letter-spacing:.14em;
}

.seo-graph-delta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:88px;
  padding:9px 12px;
  border-radius:999px;
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
  background:rgba(17,17,17,.06);
}

.seo-graph-delta.is-up{
  background:rgba(93, 173, 117, .14);
  color:#2f6a42;
}

.seo-graph-delta.is-down{
  background:rgba(193, 93, 76, .14);
  color:#8b3d30;
}

.seo-graph-stat-row{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-top:16px;
}

.seo-graph-stat-card{
  padding:14px 14px 13px;
  border:1px solid rgba(17,17,17,.07);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.94), rgba(247,244,236,.84));
}

.seo-graph-stat-card span{
  display:block;
  color:rgba(17,17,17,.48);
  font-size:10px;
  letter-spacing:.16em;
  text-transform:uppercase;
}

.seo-graph-stat-card strong{
  display:block;
  margin-top:10px;
  font-family:"Cormorant Garamond", serif;
  font-size:30px;
  line-height:.92;
}

.seo-graph-stat-card small{
  display:block;
  margin-top:8px;
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}

.seo-graph-plot{
  margin-top:14px;
  padding:14px 14px 10px;
  border:1px solid rgba(17,17,17,.08);
  border-radius:20px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(247,244,236,.82));
}

.seo-graph{
  display:block;
  width:100%;
  height:280px;
  margin-top:0;
}

.seo-graph-grid line{
  stroke:rgba(17,17,17,.08);
  stroke-width:1;
}

.seo-graph-y-labels text{
  fill:rgba(17,17,17,.46);
  font-size:11px;
}

.seo-graph-guides line{
  stroke:rgba(17,17,17,.1);
  stroke-width:1;
  stroke-dasharray:4 6;
}

.seo-graph-area{
  fill:url(#seoGraphGradient);
}

.seo-graph-line{
  fill:none;
  stroke:#151515;
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.seo-graph-point{
  fill:#fff;
  stroke:#151515;
  stroke-width:2.5;
}

.seo-graph [data-seo-point-month]{
  cursor:pointer;
}

.seo-graph-point.is-active{
  fill:#d4af37;
  stroke:#151515;
}

.seo-graph-hit{
  fill:transparent;
}

.seo-graph-label{
  fill:var(--muted);
  font-size:12px;
  letter-spacing:.04em;
}

.seo-graph-value-tag{
  fill:var(--ink);
  font-size:12px;
  font-weight:500;
}

.seo-graph-tag-bg{
  fill:rgba(255,255,255,.96);
  stroke:rgba(17,17,17,.08);
  stroke-width:1;
}

.leaflet-container{
  font-family:"DM Sans", sans-serif;
  background:transparent;
}

.customer-map .leaflet-pane.leaflet-tile-pane{
  filter:sepia(.12) saturate(.86) contrast(1.02) brightness(1.01);
}

.customer-map .leaflet-control-attribution{
  margin:0 10px 10px 0;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.74);
  color:rgba(17,17,17,.52);
  backdrop-filter:blur(14px);
  box-shadow:0 8px 18px rgba(17,17,17,.08);
}

.customer-map .leaflet-control-attribution a{
  color:inherit;
}

.customer-map-marker{
  background:transparent;
  border:0;
}

.customer-map-marker-dot{
  position:relative;
  display:block;
  width:var(--marker-size, 18px);
  height:var(--marker-size, 18px);
  border-radius:999px;
  background:radial-gradient(circle at 35% 35%, #f4dc8b 0%, #d4af37 48%, #a47f18 100%);
  border:2px solid rgba(17,17,17,.88);
  box-shadow:
    0 0 0 6px rgba(212,175,55,.14),
    0 14px 28px rgba(17,17,17,.18);
}

.customer-map-marker-dot::before{
  content:"";
  position:absolute;
  inset:-7px;
  border-radius:inherit;
  border:1px solid rgba(212,175,55,.35);
  opacity:.9;
}

.customer-map-marker.is-lead .customer-map-marker-dot{
  box-shadow:
    0 0 0 9px rgba(212,175,55,.18),
    0 18px 34px rgba(17,17,17,.22);
}

.customer-map-marker.is-lead .customer-map-marker-dot::after{
  content:"";
  position:absolute;
  inset:-16px;
  border-radius:inherit;
  border:1px solid rgba(212,175,55,.28);
  opacity:.9;
}

.customer-live-marker{
  background:transparent;
  border:0;
}

.customer-live-marker-pin{
  position:relative;
  display:block;
  width:14px;
  height:14px;
  border-radius:999px;
  background:#5bc977;
  border:2px solid rgba(255,255,255,.96);
  box-shadow:
    0 0 0 0 rgba(91,201,119,.42),
    0 10px 18px rgba(17,17,17,.16);
  animation:customer-live-pulse 1.8s ease-out infinite;
}

.customer-live-marker-pin::before{
  content:"";
  position:absolute;
  inset:-6px;
  border-radius:inherit;
  border:1px solid rgba(91,201,119,.24);
}

.customer-live-marker.is-primary .customer-live-marker-pin{
  background:#d4af37;
  box-shadow:
    0 0 0 0 rgba(212,175,55,.42),
    0 10px 18px rgba(17,17,17,.18);
  animation:customer-live-pulse-gold 1.8s ease-out infinite;
}

.customer-live-marker.is-primary .customer-live-marker-pin::before{
  border-color:rgba(212,175,55,.28);
}

@keyframes customer-live-pulse{
  0%{
    box-shadow:0 0 0 0 rgba(91,201,119,.42);
  }
  70%{
    box-shadow:0 0 0 12px rgba(91,201,119,0);
  }
  100%{
    box-shadow:0 0 0 0 rgba(91,201,119,0);
  }
}

@keyframes customer-live-pulse-gold{
  0%{
    box-shadow:0 0 0 0 rgba(212,175,55,.42);
  }
  70%{
    box-shadow:0 0 0 12px rgba(212,175,55,0);
  }
  100%{
    box-shadow:0 0 0 0 rgba(212,175,55,0);
  }
}

.leaflet-popup-content-wrapper,
.leaflet-popup-tip{
  background:rgba(247,244,236,.97);
  color:var(--ink);
  box-shadow:0 18px 36px rgba(17,17,17,.12);
}

.leaflet-popup-content-wrapper{
  border:1px solid rgba(17,17,17,.08);
  border-radius:20px;
}

.leaflet-popup-content{
  margin:14px 16px;
}

.customer-map-popup strong{
  display:block;
  font-size:16px;
}

.customer-map-popup span{
  display:block;
  margin-top:6px;
  color:var(--muted);
  font-size:13px;
}

.customer-map-popup small{
  display:block;
  margin-top:8px;
  color:var(--gold-deep);
  font-size:12px;
  letter-spacing:.08em;
  text-transform:uppercase;
}

@media (max-width: 1080px){
  .customers-hero-grid,
  .customers-grid,
  .customers-focus-grid{
    grid-template-columns:1fr;
  }

  .seo-kpi-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  .customer-map-meta{
    align-items:flex-start;
    flex-direction:column;
  }

  .customer-map-meta p{
    text-align:left;
  }
}

@media (max-width: 760px){
  .seo-kpi-grid{
    grid-template-columns:1fr;
  }

  .seo-detail-grid{
    grid-template-columns:1fr;
  }

  .seo-graph-summary{
    flex-direction:column;
  }

  .seo-graph-summary-side{
    justify-items:start;
  }

  .seo-graph-stat-row{
    grid-template-columns:1fr;
  }

  .page-hero-copy,
  .page-hero-side,
  .page-toolbar-card,
  .page-panel{
    padding:22px;
  }

  .page-toolbar-card,
  .mini-head{
    flex-direction:column;
  }

  .month-strip{
    justify-content:flex-start;
  }

  .customer-market-list article,
  .seo-source-list article{
    flex-direction:column;
    align-items:flex-start;
  }

  .customer-market-value,
  .seo-source-value{
    text-align:left;
  }

  .seo-source-list article{
    grid-template-columns:1fr;
  }

  .customer-market-value{
    grid-template-columns:1fr;
    width:100%;
  }

  .customers-topbar h1{
    font-size:44px;
  }
}
