
.hero-intro{
  max-width:760px;
  margin:0 auto;
  text-align:center;
}

.hero-intro h1{
  font-size:32px;
  font-weight:800;
  letter-spacing:-.3px;
}

.hero-intro h1 span{
  color:var(--accent);
}

.hero-intro p{
  font-size:15px;
  color:var(--text-muted);
}

/* =====================================================
   POLICY SECTION
===================================================== */
.policy-section{
  padding:90px 0;
}

.policy-card{
  max-width:920px;
  margin:0 auto;
  padding:44px;

  background:var(--glass-bg);
  backdrop-filter:blur(26px) saturate(160%);
  border-radius:32px;

  border:1px solid var(--glass-border);
  box-shadow:0 50px 120px rgba(0,0,0,.16);
  position:relative;
}

/* Premium edge */
.policy-card::before{
  content:"";
  position:absolute;
  inset:0;
  padding:1px;
  border-radius:inherit;

  background:linear-gradient(
    135deg,
    rgba(48,104,124,.45),
    rgba(96,165,250,.25),
    transparent 70%
  );

  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
          mask-composite:exclude;
}

/* =====================================================
   TEXT
===================================================== */
.policy-intro{
  font-size:15px;
  color:#334155;
  margin-bottom:26px;
}

/* BLOCK */
.policy-block{
  position:relative;
  padding-left:26px;
  margin-bottom:28px;
}

.policy-block::before{
  content:"";
  position:absolute;
  left:6px;
  top:8px;
  bottom:8px;
  width:2px;
  background:linear-gradient(
    180deg,
    rgba(48,104,124,.35),
    transparent
  );
}

.policy-block h3{
  position:relative;
  font-size:18px;
  font-weight:800;
  margin-bottom:10px;
}

.policy-block h3::before{
  content:"";
  position:absolute;
  left:-26px;
  top:6px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--accent);
}

.policy-block p{
  font-size:14px;
  color:var(--text-muted);
  line-height:1.75;
}

/* LIST */
.policy-list{
  list-style:none;
  padding:0;
  margin:12px 0;
}

.policy-list li{
  position:relative;
  padding-left:20px;
  font-size:14px;
  color:var(--text-muted);
  margin-bottom:6px;
}

.policy-list li::before{
  content:"•";
  position:absolute;
  left:0;
  color:var(--accent);
  font-size:20px;
}

/* LINKS */
.policy-contact a{
  color:var(--accent);
  font-weight:600;
  text-decoration:none;
}

/* =====================================================
   BADGES & FOOTER
===================================================== */
.legal-badge{
  display:inline-block;
  margin-bottom:18px;
  padding:6px 14px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  background:rgba(48,104,124,.12);
  color:var(--accent);
}

.legal-footer{
  margin-top:44px;
  padding-top:22px;
  border-top:1px dashed rgba(0,0,0,.15);
  font-size:13px;
  color:#64748b;
}

/* =====================================================
   RESPONSIVE
===================================================== */
@media(max-width:768px){
  .policy-card{
    padding:28px;
    border-radius:24px;
  }
  .hero-intro h1{
    font-size:26px;
  }
}

@media(max-width:420px){
  .hero-intro h1{
    font-size:24px;
  }
}
