.benchmark-hero{
  background:
    radial-gradient(
      circle at 85% 20%,
      rgba(0,155,114,.12),
      transparent 34%
    );
}

.benchmark-toolbar{
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:16px;
  margin-bottom:20px;
}

.benchmark-filter{
  display:grid;
  grid-template-columns:minmax(190px,1fr) minmax(180px,.7fr) minmax(180px,.7fr) auto;
  gap:10px;
  align-items:end;
  flex:1;
}

.benchmark-filter label,
.comparison-selector label,
.benchmark-admin-layout label{
  display:grid;
  gap:6px;
  font-weight:750;
}

.benchmark-filter input,
.benchmark-filter select,
.comparison-selector select,
.benchmark-admin-layout input{
  width:100%;
  border:1px solid var(--border);
  border-radius:12px;
  padding:11px;
  background:#fff;
}

.benchmark-snapshot-note{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:16px;
  padding:12px 15px;
  border:1px solid var(--border);
  border-radius:14px;
  background:#f7fafc;
}

.benchmark-snapshot-note span{
  color:var(--muted);
}

.benchmark-snapshot-note a{
  margin-left:auto;
  color:var(--emerald);
  font-weight:800;
}

.ranking-list{
  display:grid;
  gap:13px;
}

.ranking-row{
  display:grid;
  grid-template-columns:76px minmax(0,1fr) 120px auto;
  gap:18px;
  align-items:center;
}

.ranking-position{
  display:grid;
  justify-items:center;
  gap:2px;
  padding:12px;
  border-radius:15px;
  background:#edf3f8;
}

.ranking-position span,
.ranking-score span{
  color:var(--muted);
  font-size:.68rem;
  text-transform:uppercase;
  font-weight:800;
}

.ranking-position strong{
  color:var(--navy);
  font-size:1.35rem;
}

.ranking-company{
  display:flex;
  align-items:center;
  gap:13px;
  min-width:0;
}

.ranking-company h2{
  margin:0;
}

.ranking-company p{
  margin:5px 0 0;
  color:var(--muted);
}

.ranking-title{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

.benchmark-pills{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-top:9px;
}

.benchmark-pills span{
  display:inline-flex;
  padding:5px 8px;
  border-radius:999px;
  background:#eaf8f3;
  color:#087254;
  font-size:.7rem;
  font-weight:800;
}

.ranking-score{
  display:grid;
  justify-items:center;
  align-content:center;
  width:100px;
  height:100px;
  border-radius:25px;
  background:#0B2345;
  color:#fff;
}

.ranking-score strong{
  font-size:2rem;
  line-height:1;
}

.ranking-score small{
  opacity:.7;
}

.ranking-actions{
  display:grid;
  gap:8px;
}

.comparison-selector{
  margin-bottom:20px;
}

.comparison-select-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin:14px 0;
}

.comparison-actions{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
}

.comparison-table-wrap{
  overflow-x:auto;
  border:1px solid var(--border);
  border-radius:18px;
  background:#fff;
}

.comparison-table{
  width:100%;
  min-width:900px;
  border-collapse:collapse;
}

.comparison-table th,
.comparison-table td{
  padding:15px;
  border-right:1px solid var(--border);
  border-bottom:1px solid var(--border);
  text-align:center;
  vertical-align:middle;
}

.comparison-table th:first-child{
  position:sticky;
  left:0;
  z-index:2;
  min-width:180px;
  background:#f7fafc;
  text-align:left;
}

.comparison-company-heading{
  display:grid;
  justify-items:center;
  gap:7px;
  min-width:170px;
}

.comparison-primary{
  color:var(--emerald);
  font-size:1.5rem;
  font-weight:900;
}

.comparison-table small{
  color:var(--muted);
}

.benchmark-disclaimer{
  color:var(--muted);
  font-size:.82rem;
  text-align:center;
}

.benchmark-metrics{
  margin-bottom:20px;
}

.benchmark-ineligible{
  margin-bottom:20px;
  border-color:#ead493;
  background:#fff9e5;
}

.benchmark-business-layout,
.benchmark-admin-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);
  gap:18px;
  align-items:start;
  margin-bottom:20px;
}

.benchmark-detail-list{
  display:grid;
}

.benchmark-detail-list>div{
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:13px 0;
  border-top:1px solid var(--border);
}

.benchmark-detail-list span{
  color:var(--muted);
}

.benchmark-leader-list{
  display:grid;
}

.benchmark-leader-list a{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  padding:12px 0;
  border-top:1px solid var(--border);
  color:inherit;
  text-decoration:none;
}

.benchmark-leader-list span{
  color:var(--emerald);
  font-weight:900;
}

.benchmark-leader-list b{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:12px;
  background:#eaf8f3;
  color:#087254;
}

.benchmark-checkbox{
  display:flex!important;
  align-items:flex-start;
  gap:11px!important;
  padding:13px;
  border:1px solid var(--border);
  border-radius:13px;
}

.benchmark-checkbox input{
  width:18px!important;
  height:18px;
  margin-top:2px;
  flex:0 0 auto;
}

.benchmark-checkbox span{
  display:grid;
  gap:3px;
}

.benchmark-checkbox small{
  color:var(--muted);
  font-weight:500;
}

.profile-benchmark-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  gap:18px;
  align-items:center;
}

.profile-benchmark-card h2{
  margin:5px 0;
}

.profile-benchmark-card p{
  margin:0;
  color:var(--muted);
}

.profile-benchmark-metrics{
  display:flex;
  gap:8px;
}

.profile-benchmark-metrics>div{
  display:grid;
  justify-items:center;
  min-width:75px;
  padding:11px;
  border-radius:14px;
  background:#edf3f8;
}

.profile-benchmark-metrics span{
  color:var(--muted);
  font-size:.67rem;
  text-transform:uppercase;
  font-weight:800;
}

.profile-benchmark-metrics strong{
  font-size:1.1rem;
}

.profile-benchmark-actions{
  display:grid;
  gap:8px;
}

.directory-benchmark-links{
  display:flex;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:9px;
  margin-bottom:18px;
}

@media(max-width:1050px){
  .benchmark-filter{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .ranking-row{
    grid-template-columns:70px minmax(0,1fr) 100px;
  }

  .ranking-actions{
    grid-column:2/-1;
    grid-template-columns:repeat(2,max-content);
    justify-content:end;
  }

  .comparison-select-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .profile-benchmark-card{
    grid-template-columns:1fr;
  }

  .profile-benchmark-actions{
    grid-template-columns:repeat(2,max-content);
  }
}

@media(max-width:760px){
  .benchmark-toolbar{
    align-items:stretch;
    flex-direction:column;
  }

  .benchmark-filter{
    grid-template-columns:1fr;
  }

  .ranking-row{
    grid-template-columns:60px minmax(0,1fr);
  }

  .ranking-score{
    grid-column:1;
    grid-row:2;
    width:60px;
    height:60px;
    border-radius:17px;
  }

  .ranking-score strong{
    font-size:1.35rem;
  }

  .ranking-actions{
    grid-column:2;
    justify-content:start;
  }

  .comparison-select-grid,
  .benchmark-business-layout,
  .benchmark-admin-layout{
    grid-template-columns:1fr;
  }

  .profile-benchmark-metrics{
    flex-wrap:wrap;
  }

  .profile-benchmark-actions{
    grid-template-columns:1fr;
  }
}
