/* ==========================================================
   datenschutzrecht.css
   Page-specific Styles für:
   sachverständigentätigkeit_im_datenschutzrecht.html
   ========================================================== */


/* ======================================================
   HERO – Sachverständigentätigkeit
====================================================== */

.page-hero--sachverstaendige{
  background:
    radial-gradient(circle at top left, rgba(31,31,31,.92), rgba(31,31,31,.55)),
    url("../img/multiple-caucasian-hands-pointing-at-business-male-2025-10-13-12-44-59-utc.jpg")
    center/cover no-repeat;

  color:#fff;
  padding:6rem 0 4rem;
}

.page-hero--sachverstaendige .hero__inner{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  text-align:left;
}

/* Titel */

.page-hero--sachverstaendige h1{
  font-size:clamp(2.4rem,2rem + 1.5vw,3rem);
  line-height:1.2;
  margin-bottom:1rem;
  letter-spacing:-0.02em;
}

/* Subtitle */

.page-hero--sachverstaendige h2{
  font-size:1.1rem;
  color:#e5e7eb;
  line-height:1.7;
  max-width:60ch;
  margin-bottom:1.5rem;
}

.page-hero--sachverstaendige p{
  color:#e5e7eb;
  line-height:1.75;
  max-width:70ch;
}


/* ======================================================
   HERO METRICS
====================================================== */

.sv-hero-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:.9rem;
  margin:1.4rem 0 1.6rem;
}

@media (max-width:720px){

  .sv-hero-metrics{
    grid-template-columns:1fr;
  }

}

.sv-metric{

  border:1px solid rgba(255,255,255,.12);
  background:rgba(2,6,23,.35);

  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);

  border-radius:18px;
  padding:1rem 1.1rem;

  transition:transform .25s ease,border-color .25s ease;

}

.sv-metric:hover{

  transform:translateY(-3px);
  border-color:rgba(255,255,255,.22);

}

.sv-metric__label{

  display:block;
  font-size:.85rem;
  color:#cbd5e1;
  margin-bottom:.2rem;

}

.sv-metric__value{

  display:block;
  font-weight:700;
  letter-spacing:-.01em;

}


/* ======================================================
   SECTION BASE
====================================================== */

.sv-section{

  padding:4.5rem 0;
  background:#f3f4f6;
  color:#1f1f1f;

}

@media (min-width:768px){

  .sv-section{
    padding:5.25rem 0;
  }

}

.sv-section__inner{

  display:flex;
  flex-direction:column;
  gap:2rem;

}

.sv-section__header{

  max-width:58rem;

}

.sv-section__title{

  color:#1f1f1f;
  font-size:clamp(1.75rem,2.2vw,2.2rem);
  line-height:1.2;
  letter-spacing:-.02em;
  margin:0 0 .75rem;

}

.sv-section__subtitle{

  color:#4b5563;
  line-height:1.75;
  margin:0;
  max-width:62ch;

}


/* ======================================================
   GRID
====================================================== */

.sv-section__grid{

  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:1.2rem;

}

.sv-grid--3{

  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));

}

@media (max-width:900px){

  .sv-grid--3{
    grid-template-columns:1fr;
  }

}


/* ======================================================
   CARDS
====================================================== */

.sv-card{

  border-radius:22px;
  background:#ffffff;
  border:1px solid #e5e7eb;

  box-shadow:0 10px 30px rgba(0,0,0,.06);

  padding:1.35rem 1.35rem 1.25rem;

  position:relative;
  overflow:hidden;

  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;

}

.sv-card:hover{

  transform:translateY(-6px);
  border-color:#9ca3af;
  box-shadow:0 18px 50px rgba(0,0,0,.10);

}

.sv-card__icon{

  width:44px;
  height:44px;

  display:grid;
  place-items:center;

  border-radius:14px;
  background:rgba(0,0,0,.06);

  margin-bottom:.85rem;

}

.sv-card__icon i{
  font-size:1.15rem;
}

.sv-card__title{

  margin:0 0 .35rem;
  color:#1f1f1f;
  font-size:1.05rem;
  letter-spacing:-.01em;

}

.sv-card__text{

  margin:0;
  color:#4b5563;
  line-height:1.7;

}


/* ======================================================
   BADGES
====================================================== */

.sv-badge-grid{

  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.8rem;

}

@media (max-width:720px){

  .sv-badge-grid{
    grid-template-columns:1fr;
  }

}

/* ======================================================
   BADGES
====================================================== */

.sv-badge-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.8rem;
}

@media (max-width:720px){
  .sv-badge-grid{
    grid-template-columns:1fr;
  }
}

.sv-badge{
  display:grid;
  grid-template-columns:auto 1fr;
  column-gap:.75rem;
  align-items:start;

  padding:1rem 1.1rem;
  border-radius:18px;
  background:#ffffff;
  border:1px solid #e5e7eb;
  box-shadow:0 10px 30px rgba(0,0,0,.06);

  transition:transform .2s ease, box-shadow .2s ease;
}

.sv-badge:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 40px rgba(0,0,0,.08);
}

.sv-badge i{
  font-size:1.05rem;
  margin-top:.2rem;
  color:#1f1f1f;
}

.sv-badge-content{
  display:flex;
  flex-direction:column;
  gap:.35rem;
  min-width:0;
}

.sv-badge-title{
  display:block;
  font-weight:700;
  color:#1f1f1f;
  line-height:1.35;
}

.sv-badge-text{
  display:block;
  color:#4b5563;
  line-height:1.65;
}

/* ======================================================
   HIGHLIGHT BOX (Verlässliche Entscheidungsgrundlage)
====================================================== */

.sv-highlight{

  display:flex;
  flex-direction:column;
  align-items:flex-start;

  padding:1.6rem 1.8rem;

  border-radius:24px;

  background:
    radial-gradient(circle at 10% 20%, rgba(255,255,255,.08), transparent 60%),
    radial-gradient(circle at 90% 10%, rgba(255,255,255,.05), transparent 55%),
    #1f1f1f;

  color:#fff;

  box-shadow:0 18px 55px rgba(0,0,0,.25);

  max-width:800px;

}

/* Titel */

.sv-highlight h3{

  margin:0 0 .45rem;

  color:#ffffff;
  font-weight:700;
  line-height:1.35;
  letter-spacing:-0.01em;

}

/* Text */

.sv-highlight p{

  margin:0;

  color:#e5e7eb;

  font-weight:400;
  line-height:1.7;

}

/* ======================================================
   CTA BOX
====================================================== */

.sv-cta-box{

  border-radius:26px;

  background:
    radial-gradient(circle at 12% 20%, rgba(255,255,255,.08), transparent 55%),
    radial-gradient(circle at 85% 25%, rgba(255,255,255,.05), transparent 60%),
    #1f1f1f;

  box-shadow:0 18px 60px rgba(0,0,0,.28);

  overflow:hidden;

  border:1px solid rgba(255,255,255,.08);

}

.sv-cta-box__content{

  padding:1.6rem;
  color:#fff;

}

@media (min-width:768px){

  .sv-cta-box__content{
    padding:2rem;
  }

}

.sv-cta-box__title{

  margin:0 0 .4rem;
  letter-spacing:-.02em;

}

.sv-cta-box__text{

  margin:0 0 1.1rem;
  color:#e5e7eb;
  line-height:1.75;

}


/* ======================================================
   FAQ
====================================================== */

.sv-faq{

  display:grid;
  gap:.7rem;

}

.sv-faq-item{

  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:18px;

  padding:.25rem .9rem;

  box-shadow:0 10px 28px rgba(0,0,0,.05);

}

.sv-faq-question{

  cursor:pointer;
  padding:.9rem .2rem;

  font-weight:700;
  list-style:none;

}

.sv-faq-answer{

  padding:0 .2rem 1rem;

  color:#4b5563;
  line-height:1.75;

}

.sv-faq-item[open]{

  border-color:#9ca3af;
  box-shadow:0 16px 40px rgba(0,0,0,.08);

}


/* ======================================================
   SCROLL ANIMATION
====================================================== */

[data-animate]{

  opacity:0;
  transform:translateY(14px);

  transition:opacity .7s ease,transform .7s ease;

}

.is-visible{

  opacity:1;
  transform:translateY(0);

}

@media (prefers-reduced-motion:reduce){

  [data-animate]{
    opacity:1;
    transform:none;
    transition:none;
  }

}

/* HERO TYPOGRAFIE KORREKTUR */

.hero__content h2{
  color:#1f1f1f;
  font-size:1.2rem;
  font-weight:700;
  margin-top:1.8rem;
  margin-bottom:.6rem;
}

.hero__content h3{
  color:#1f1f1f;
  font-size:1rem;
  font-weight:700;
  margin-top:1.2rem;
  margin-bottom:.4rem;
}

/* HERO LISTEN FORMATIERUNG */

.hero__content ul{
  margin:0 0 1.4rem 1.2rem;
  padding:0;
}

.hero__content li{
  color:#4b5563;
  line-height:1.7;
  margin-bottom:.45rem;
}

.hero-comparison{
  margin-top:1.8rem;

  padding:1.4rem 1.6rem;

  border-radius:18px;

  background:rgba(0,0,0,.35);
  border:1px solid rgba(255,255,255,.08);

  backdrop-filter:blur(6px);
}