.scan-section{
  position:relative;
  padding:clamp(82px, 9vw, 134px) 0;
  overflow:hidden;
}

.scan-section .container{
  width:min(1180px, calc(100% - 48px));
  margin-inline:auto;
}

.scan-section h2,
.scan-section h3{
  line-height:1.03;
  letter-spacing:-.055em;
  color:var(--ink);
}

.scan-section p{
  line-height:1.65;
  color:var(--muted);
  text-align:justify;
}

.scan-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:9px;
  margin-bottom:18px;
  padding:7px 14px;
  border-radius:999px;
  background:rgba(0,113,227,.08);
  color:var(--blue);
  border:1px solid rgba(0,113,227,.10);
  font-size:.75rem;
  font-weight:750;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.scan-eyebrow::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:999px;
  background:var(--blue);
  box-shadow:0 0 18px rgba(0,113,227,.62);
}

.scan-title{
  max-width:650px;
  margin:0 0 38px;
  font-size:clamp(3rem, 5.2vw, 3rem);
  text-wrap:balance;
}

.scan-grid{
  display:grid;
  gap:18px;
}

.scan-grid.four{
  grid-template-columns:repeat(4, minmax(0, 1fr));
}

.scan-card{
  position:relative;
  min-height:230px;
  padding:30px;
  overflow:hidden;
  border-radius:var(--radius-lg);
  background:rgba(255,255,255,.78);
  border:1px solid var(--line);
  box-shadow:var(--shadow-soft);
  backdrop-filter:blur(18px) saturate(170%);
  transition:transform .32s var(--ease), box-shadow .32s var(--ease), border-color .32s var(--ease), background .32s var(--ease);
}

.scan-card::before{
  content:"";
  position:absolute;
  right:24px;
  top:24px;
  width:44px;
  height:44px;
  border-radius:16px;
  background:
    linear-gradient(135deg, rgba(0,113,227,.16), rgba(0,212,255,.08)),
    rgba(255,255,255,.66);
  border:1px solid rgba(0,113,227,.12);
}

.scan-card:hover{
  transform:translateY(-6px);
  background:#fff;
  border-color:rgba(0,113,227,.18);
  box-shadow:var(--shadow-hover);
}

.scan-card h3{
  max-width:82%;
  margin-bottom:14px;
  color:var(--ink);
  font-size:1.24rem;
  letter-spacing:-.035em;
}

.scan-card p{
  font-size:.97rem;
}

@media (max-width: 1024px){
  .scan-grid.four{grid-template-columns:repeat(2, minmax(0, 1fr));}
}

@media (max-width: 768px){
  .scan-section .container{width:min(100% - 32px, 1180px);}
  .scan-section{padding:68px 0;}
  .scan-grid.four{grid-template-columns:1fr;}
  .scan-card{min-height:auto; padding:26px;}
}
