:root{

  --blue:#2563eb;
  --blue-dark:#1d4ed8;
  --blue-light:#eff6ff;
  --blue-border:#bfdbfe;

  --text-1:#0f172a;
  --text-2:#334155;
  --text-3:#64748b;

  --border:#e2e8f0;
  --white:#ffffff;

  --shadow-sm:
  0 2px 8px rgba(37,99,235,.08);

  --shadow-md:
  0 8px 24px rgba(37,99,235,.12);

  --shadow-lg:
  0 18px 48px rgba(37,99,235,.18);

  --radius:24px;
}

/* ===================================
   HERO
=================================== */


.privacy-hero .container,
.terms-hero .container,
.disclaimer-hero .container,
.abuse-hero .container,
.unlimited-hero .container{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
}
.abuse-hero{

  position:relative;
  overflow:hidden;

  padding:100px 0;

  background:
  linear-gradient(
  145deg,
  #ffffff 0%,
  #eff6ff 40%,
  #dbeafe 100%);
}

.abuse-hero::before{

  content:'';

  position:absolute;

  width:700px;
  height:700px;

  top:-250px;
  right:-180px;

  border-radius:50%;

  background:
  radial-gradient(
  circle,
  rgba(37,99,235,.15),
  transparent 70%);
}

.hero-badge{

  display:inline-flex;
  align-items:center;
  gap:8px;

  padding:8px 18px;

  background:#fff;

  border:
  1px solid var(--blue-border);

  border-radius:999px;

  color:var(--blue);

  font-size:.8rem;
  font-weight:700;

  margin-bottom:24px;
}

.badge-dot{

  width:8px;
  height:8px;

  border-radius:50%;

  background:var(--blue);
}

.breadcrumb{

  display:flex;
  justify-content:center;
  gap:10px;

  flex-wrap:wrap;

  margin-bottom:24px;

  color:var(--text-3);
}

.breadcrumb a{

  color:var(--blue);

  text-decoration:none;
}

.abuse-hero h1{

  text-align:center;

  font-size:
  clamp(2.5rem,5vw,4rem);

  font-weight:800;

  margin-bottom:20px;
}

.abuse-hero h1 span{
  color:var(--blue);
}

.hero-subtitle{

  max-width:760px;

  margin:auto;

  text-align:center;

  line-height:1.9;

  color:var(--text-3);
}

.update-badge{

  width:max-content;

  margin:30px auto 0;

  display:flex;
  align-items:center;
  gap:10px;

  padding:12px 18px;

  border-radius:999px;

  background:#fff;

  border:
  1px solid var(--blue-border);
}

.update-badge svg{

  width:18px;
  height:18px;

  color:var(--blue);
}

/* ===================================
   LAYOUT
=================================== */

.abuse-wrapper{

  padding:90px 0;

  background:#f8fbff;
}

.abuse-layout{

  display:grid;

  grid-template-columns:
  300px 1fr;

  gap:40px;

  align-items:start;
}

.abuse-sidebar{

  position:sticky;

  top:100px;
}
.toc-card{

  background:#fff;

  border:
  1px solid var(--border);

  border-radius:24px;

  padding:28px;

  box-shadow:var(--shadow-sm);
}

.toc-card h3{

  font-size:1.15rem;

  font-weight:800;

  margin-bottom:20px;
}

.toc-nav{

  display:flex;

  flex-direction:column;

  gap:8px;
}

.toc-nav a{

  text-decoration:none;

  color:var(--text-2);

  padding:12px 14px;

  border-radius:12px;

  transition:.3s;

  font-weight:600;
}

.toc-nav a:hover{

  background:var(--blue-light);

  color:var(--blue);
}

/* ===================================
   SUPPORT CARD
=================================== */

.support-card{

  margin-top:24px;

  background:#fff;

  border:
  1px solid var(--border);

  border-radius:24px;

  padding:28px;

  text-align:center;

  box-shadow:var(--shadow-sm);
}

.support-icon{

  width:70px;
  height:70px;

  margin:0 auto 18px;

  border-radius:18px;

  display:flex;
  align-items:center;
  justify-content:center;

  background:var(--blue-light);
}

.support-icon svg{

  width:32px;
  height:32px;

  color:var(--blue);
}

.support-card h4{

  font-size:1.2rem;

  margin-bottom:10px;
}

.support-card p{

  color:var(--text-3);

  line-height:1.7;

  margin-bottom:20px;
}

.support-btn{

  display:block;

  text-decoration:none;

  background:var(--blue);

  color:#fff;

  padding:14px;

  border-radius:14px;

  font-weight:700;

  margin-bottom:12px;
}

.ticket-btn{

  display:block;

  text-decoration:none;

  border:1px solid var(--blue);

  color:var(--blue);

  padding:14px;

  border-radius:14px;

  font-weight:700;
}
.abuse-content{
  min-width:0;
}

.policy-card{

  background:#fff;

  border:
  1px solid var(--border);

  border-radius:28px;

  padding:50px;

  box-shadow:var(--shadow-md);
}

.policy-section{

  margin-bottom:60px;
}

.policy-section:last-child{
  margin-bottom:0;
}

.policy-section h2{

  font-size:2rem;

  font-weight:800;

  color:var(--text-1);

  margin-bottom:20px;
}

.policy-section h3{

  font-size:1.2rem;

  margin-top:25px;
  margin-bottom:14px;

  color:var(--text-1);
}

.policy-section p{

  color:var(--text-3);

  line-height:1.9;

  margin-bottom:18px;
}

.policy-section ul{

  padding-left:24px;
}

.policy-section li{

  color:var(--text-2);

  line-height:1.8;

  margin-bottom:12px;
}

.policy-contact-box{

  margin-top:30px;

  border:
  1px solid var(--border);

  border-radius:18px;

  overflow:hidden;
}

.policy-contact-row{

  display:flex;

  justify-content:space-between;

  padding:18px 22px;

  border-bottom:
  1px solid var(--border);
}

.contact-row:last-child{
  border-bottom:none;
}

.contact-row span{
  color:var(--text-3);
   margin-right: 15px;
  }

.contact-row strong{
  color:var(--text-1);
}
.abuse-cta{

  margin-top:40px;

  background:
  linear-gradient(
  135deg,
  #2563eb,
  #1d4ed8);

  border-radius:30px;

  padding:70px 50px;

  text-align:center;

  color:#fff;

  position:relative;

  overflow:hidden;
}

.abuse-cta::before{

  content:'';

  position:absolute;

  width:350px;
  height:350px;

  top:-100px;
  right:-100px;

  border-radius:50%;

  background:
  rgba(255,255,255,.08);
}

.cta-label{

  display:inline-block;

  padding:8px 16px;

  border-radius:999px;

  background:
  rgba(255,255,255,.12);

  border:
  1px solid rgba(255,255,255,.15);

  margin-bottom:20px;

  font-size:.8rem;

  font-weight:700;
}

.abuse-cta h2{

  font-size:2.3rem;

  font-weight:800;

  margin-bottom:16px;
}

.abuse-cta p{

  max-width:700px;

  margin:auto;

  line-height:1.9;
}

.cta-actions{

  display:flex;

  justify-content:center;

  gap:16px;

  flex-wrap:wrap;

  margin-top:30px;
}

.primary-btn{

  background:#fff;

  color:var(--blue);

  text-decoration:none;

  padding:15px 28px;

  border-radius:14px;

  font-weight:800;
}

.secondary-btn{

  color:#fff;

  text-decoration:none;

  padding:15px 28px;

  border-radius:14px;

  border:
  1px solid rgba(255,255,255,.3);

  font-weight:800;
}

/* ==========================
   RESPONSIVE
========================== */

@media(max-width:1024px){

  .abuse-layout{
    grid-template-columns:1fr;
  }

  .abuse-sidebar{
    position:relative;
    top:auto;
  }

}

@media(max-width:768px){

  .policy-card{
    padding:32px;
  }

  .abuse-cta{
    padding:50px 30px;
  }

  .contact-row{

    flex-direction:column;

    gap:8px;

    align-items:flex-start;
  }

}

@media(max-width:576px){

  .policy-card{
    padding:24px;
  }

  .policy-section h2{
    font-size:1.6rem;
  }

  .abuse-cta h2{
    font-size:1.8rem;
  }

  .cta-actions{
    flex-direction:column;
  }

  .primary-btn,
  .secondary-btn{
    width:100%;
  }

}