/* =========================================================
   ex-zurueck-agentur.de – style.css
   (aus Inline-CSS extrahiert + Bugfix)
   ========================================================= */

/* ===== Variables / Base ===== */
:root{
  --text:#ffffff;
  --muted:rgba(255,255,255,.86);

  /* premium glass */
  --glass:rgba(255,255,255,.10);
  --glassStrong:rgba(255,255,255,.14);
  --line:rgba(255,255,255,.22);

  --shadow:0 22px 80px rgba(0,0,0,.40);
  --shadowSoft:0 16px 40px rgba(0,0,0,.25);

  --btnBlue1:#2f5bff;
  --btnBlue2:#7c3aed;

  --radius:24px;
  --max:1120px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;height:100%}
body{
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial,sans-serif;
  background:#070b14;
  color:var(--text);
}
a{text-decoration:none;color:inherit}
.container{max-width:var(--max);margin:auto;padding:clamp(16px,3vw,30px)}
:focus-visible{outline:3px solid rgba(255,255,255,.92);outline-offset:3px}

/* ===== HERO ===== */
.hero{
  min-height:100svh;
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  isolation:isolate;
}

/* background image ONLY (put your file here) */
.hero::before{
  content:"";
  position:absolute; inset:0;
  background: url("/assets/hero.webp");
  background-size:cover;
  background-position:center;
  filter:saturate(1.05) contrast(1.05);
  transform:scale(1.03);
  z-index:-3;
}

/* premium overlays for legibility + luxury gradient */
.hero::after{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(900px 520px at 18% 12%, rgba(47,91,255,.28), transparent 55%),
    radial-gradient(900px 520px at 86% 22%, rgba(124,58,237,.22), transparent 60%),
    linear-gradient(180deg, rgba(0,0,0,.18) 0%, rgba(0,0,0,.48) 55%, rgba(0,0,0,.70) 100%);
  z-index:-2;
}

/* subtle film grain */
.grain{
  pointer-events:none;
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.14'/%3E%3C/svg%3E");
  mix-blend-mode:overlay;
  opacity:.12;
  z-index:-1;
}

/* ===== TOPBAR ===== */
.topbar{
  position:absolute;
  top:0; left:0; right:0;
  padding:16px;
  z-index:10;
}
.top-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 16px;
  border-radius:999px;
  background:var(--glass);
  border:1px solid var(--line);
  backdrop-filter: blur(16px);
  box-shadow:var(--shadowSoft);
}
.brand{
  display:flex; align-items:center; gap:10px;
  font-weight:900;
  font-size:18px;
  letter-spacing:.2px;
  white-space:nowrap;
}
.logo{
  width:30px;height:30px;border-radius:999px;
  background:radial-gradient(circle at 30% 25%, #62ffda 0%, #4aa3ff 35%, #6a37ff 75%);
  border:1px solid rgba(255,255,255,.28);
  box-shadow:0 14px 40px rgba(0,0,0,.25);
}
.nav-actions{display:flex; gap:10px; align-items:center}

/* ===== Buttons ===== */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:10px 16px;
  border-radius:14px;
  font-weight:900;
  border:1px solid transparent;
  transition:transform .08s ease, filter .2s ease, border-color .2s ease;
  user-select:none;
  white-space:nowrap;
}
.btn:active{transform:translateY(1px)}
.btn.glass{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.22);
}
.btn.glass:hover{border-color:rgba(255,255,255,.38);filter:brightness(1.02)}
.btn.cta{
  background:linear-gradient(135deg,var(--btnBlue1),var(--btnBlue2));
  border-color:rgba(255,255,255,.18);
  box-shadow:0 18px 55px rgba(60,80,255,.32);
}
.btn.cta:hover{filter:brightness(1.04)}

/* ===== HERO center content ===== */
.center{
  flex:1;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:clamp(46px,10vh,130px) 18px 40px;
}
.stack{
  width:min(980px, 100%);
  transform:translateY(12px);
  opacity:0;
  animation:fadeUp .8s ease forwards;
}
@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}

.pill{
  display:inline-flex;
  gap:10px;
  padding:10px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.22);
  backdrop-filter: blur(10px);
  font-weight:900;
  font-size:14px;
}

h1{
  margin:22px 0 12px;
  font-size:clamp(34px,6vw,66px);
  line-height:1.03;
  letter-spacing:-.7px;
  text-shadow:0 28px 90px rgba(0,0,0,.55);
}

.lead{
  margin:0 auto;
  max-width:66ch;
  font-size:clamp(15px,2vw,18px);
  color:var(--muted);
  text-shadow:0 20px 65px rgba(0,0,0,.45);
}

/* CTA buttons row */
.cta-row{
  margin-top:26px;
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  justify-content:center;
}
.btn.big{
  padding:16px 22px;
  border-radius:18px;
  min-width:260px;
  font-size:16px;
}
.btn.big.primary{
  background:linear-gradient(135deg,var(--btnBlue1),var(--btnBlue2));
  box-shadow:0 26px 85px rgba(60,80,255,.40);
  border-color:rgba(255,255,255,.16);
}
.btn.big.primary:hover{filter:brightness(1.05)}
.btn.big.light{
  background:rgba(255,255,255,.92);
  color:#101427;
  border-color:rgba(255,255,255,.60);
  box-shadow:0 22px 70px rgba(0,0,0,.28);
}
.btn.big.light:hover{filter:brightness(.99)}

/* Trust row */
.trust{
  margin-top:22px;
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  justify-content:center;
  font-weight:800;
}
.trust span{
  padding:10px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.20);
  backdrop-filter: blur(10px);
}

/* ===== Mobile nav fix ===== */
@media (max-width:768px){
  .topbar{position:relative;padding:16px}
  .top-inner{
    flex-direction:column;
    align-items:stretch;
    border-radius:20px;
    background:var(--glassStrong);
  }
  .brand{justify-content:center}
  .nav-actions{width:100%}
  .nav-actions .btn{flex:1}
  .center{padding-top:36px}
  .btn.big{min-width:100%}
}

/* optional: reduce motion */
@media (prefers-reduced-motion: reduce){
  .stack{animation:none;opacity:1;transform:none}
  .btn{transition:none}
  .hero::before{transform:none}
}

/* =========================================================
   ABOUT SECTION
   ========================================================= */
.about{
  background:linear-gradient(180deg, #0b1220 0%, #0e1526 100%);
  padding:clamp(60px,10vw,120px) 0;
  color:#ffffff;
}
.about-wrap{max-width:900px;margin:auto;text-align:center}
.about-badge{
  display:inline-flex;
  padding:10px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.18);
  font-weight:700;
  margin-bottom:20px;
  backdrop-filter:blur(10px);
}
.about h2{
  font-size:clamp(26px,4vw,40px);
  line-height:1.2;
  margin:0 0 20px;
}
.about .lead{
  max-width:60ch;
  margin:0 auto 50px;
  color:rgba(255,255,255,.85);
  font-size:clamp(15px,2vw,18px);
}
.about-grid{
  display:grid;
  gap:30px;
  grid-template-columns:1fr;
}
.about-card{
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.15);
  padding:30px;
  border-radius:20px;
  text-align:left;
  backdrop-filter:blur(12px);
  transition:transform .2s ease, border-color .2s ease;
}
.about-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.35)}
.about-card h3{margin:0 0 12px;font-size:18px}
.about-card p{margin:0;color:rgba(255,255,255,.85);line-height:1.6}
.about-card.highlight{
  background:linear-gradient(135deg, rgba(47,91,255,.18), rgba(124,58,237,.18));
  border:1px solid rgba(124,58,237,.4);
}
@media (min-width:900px){
  .about-grid{grid-template-columns:repeat(3,1fr)}
}

/* =========================================================
   EX-AGENTUR SECTION (Gold)
   ========================================================= */
.ex-agentur-section{
  background:#0c0c0f;
  padding:100px 20px;
  color:#ffffff;
}
.ex-container{
  max-width:1200px;
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:center;
}
.ex-text h2{
  font-size:42px;
  font-weight:700;
  margin-bottom:10px;
  letter-spacing:1px;
}
.ex-subline{
  font-size:20px;
  color:#d4af37;
  margin-bottom:25px;
  font-weight:500;
}
.ex-description{
  font-size:18px;
  color:#bcbcbc;
  margin-bottom:35px;
  line-height:1.6;
}
.ex-btn{
  display:inline-block;
  padding:14px 28px;
  background:#d4af37;
  color:#000;
  font-weight:600;
  text-decoration:none;
  border-radius:6px;
  transition:0.3s ease;
}
.ex-btn:hover{background:#ffffff}
.ex-image img{
  width:100%;
  height:auto;
  border-radius:12px;
  box-shadow:0 30px 60px rgba(0,0,0,0.6);
}
@media(max-width:900px){
  .ex-container{grid-template-columns:1fr;text-align:center}
}

/* =========================================================
   CONTACT GOLD SECTION
   ========================================================= */
.contact-gold-section{
  padding:100px 20px;
  background:linear-gradient(
    180deg,
    #0f1115 0%,
    #141821 40%,
    #1b1f2a 100%
  );
  color:#eaeaea;
}
.contact-gold-container{
  max-width:950px;
  margin:auto;
  text-align:center;
}
.contact-gold-container h2{
  font-size:34px;
  font-weight:800;
  letter-spacing:.5px;
  margin-bottom:18px;
  background:linear-gradient(90deg,#d4af37,#f3e18a,#caa028);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}
.gold-line{
  width:100px;
  height:4px;
  margin:0 auto 30px;
  border-radius:999px;
  background:linear-gradient(90deg,#d4af37,#f6e27a,#caa028);
  box-shadow:0 0 20px rgba(212,175,55,.4);
}
.contact-gold-container .intro{
  font-size:20px;
  font-weight:600;
  color:#ffffff;
  margin-bottom:28px;
}
.contact-gold-container p{
  font-size:18px;
  line-height:1.9;
  color:#c9c9c9;
  max-width:780px;
  margin:0 auto 24px;
}
.contact-gold-container strong{color:#f1c75b;font-weight:700}
.contact-gold-container .highlight{
  margin-top:30px;
  font-size:19px;
  font-weight:600;
  color:#ffffff;
}

/* =========================================================
   EXPERTISE SECTION (Light)
   ========================================================= */
.expertise-section{
  padding:100px 20px;
  background:linear-gradient(180deg,#d4dbe6 0%,#c2cad8 100%);
}
.expertise-container{max-width:950px;margin:auto}
.expertise-section h2{
  font-size:32px;
  font-weight:800;
  margin-bottom:22px;
  color:#111827;
}
.expertise-lead{
  font-size:20px;
  font-weight:600;
  color:#1f2937;
  margin-bottom:24px;
}
.expertise-section p{
  font-size:17px;
  line-height:1.85;
  color:#4b5563;
  margin-bottom:20px;
}
.expertise-section strong{color:#b8891f}
.expertise-highlight{
  margin-top:25px;
  font-weight:600;
  font-size:18px;
  color:#111827;
}
.expertise-cta{margin-top:40px}
.expertise-btn{
  display:inline-block;
  padding:15px 32px;
  border-radius:50px;
  font-weight:600;
  font-size:15px;
  letter-spacing:.5px;
  text-decoration:none;
  transition:all .3s ease;
  background:linear-gradient(90deg,#d4af37,#f3e18a,#caa028);
  color:#111;
  box-shadow:0 8px 20px rgba(212,175,55,.35);
}
.expertise-btn:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 32px rgba(212,175,55,.45);
}

/* =========================================================
   FAQ SECTION
   ========================================================= */
.faq-section{
  padding:clamp(40px, 6vw, 80px) 0;
  background:#0b0f14;
  color:#e8edf3;
}
.faq-header{
  text-align:center;
  max-width:720px;
  margin:0 auto 40px;
}
.faq-header h2{
  font-size:clamp(26px, 4vw, 38px);
  margin-bottom:12px;
}
.faq-header p{color:#9fb0c3}
.faq-grid{
  max-width:800px;
  margin:0 auto;
  display:grid;
  gap:16px;
}
.faq-item{
  background:#111824;
  border-radius:14px;
  padding:18px 22px;
  box-shadow:0 10px 30px rgba(0,0,0,.35);
  transition:0.3s ease;
}
.faq-item summary{
  cursor:pointer;
  font-weight:600;
  font-size:16px;
  list-style:none;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item[open]{border-left:4px solid #18c1a3}
.faq-content{
  margin-top:12px;
  color:#9fb0c3;
  font-size:15px;
  line-height:1.6;
}
.faq-cta{
  margin-top:50px;
  text-align:center;
}
.faq-cta h3{
  margin-bottom:18px;
  font-size:20px;
}

/* =========================================================
   FOOTER
   ========================================================= */
.ez-footer{
  background:#111318;
  color:#e6e6e6;
  padding:56px 0;
  margin-top:72px;
  width:100%;
}
.ez-footer__wrap{
  max-width:1100px;
  margin:0 auto;
  padding:0 20px;
}
.ez-footer__grid{
  display:grid;
  grid-template-columns:1.35fr 1fr 0.85fr;
  gap:36px;
  align-items:start;
}
.ez-footer__title{
  display:inline-block;
  font-weight:800;
  letter-spacing:.2px;
  font-size:18px;
}
.ez-footer__text{
  margin:10px 0 0;
  color:rgba(255,255,255,.72);
  font-size:14px;
  line-height:1.6;
  max-width:46ch;
}
.ez-footer__copy{
  margin:18px 0 0;
  font-size:13px;
  color:rgba(255,255,255,.50);
}
.ez-footer__head{
  margin:0 0 12px;
  font-size:12px;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:#d4af37;
}
.ez-footer__list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:8px;
}
.ez-footer a{
  color:rgba(255,255,255,.78);
  text-decoration:none;
  font-size:14px;
  line-height:1.4;
  display:inline-block;
}
.ez-footer a:hover{color:#d4af37}
.ez-footer__more{
  display:inline-block;
  margin-top:14px;
  font-size:13px;
  color:#d4af37 !important;
}
@media (max-width:900px){
  .ez-footer__grid{grid-template-columns:1fr;gap:26px}
  .ez-footer__text{max-width:100%}
}

.ex-section{
  padding:80px 20px;
  background:linear-gradient(180deg,#0b0f14,#111824);
}

.ex-container{
  max-width:1200px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr;
  gap:50px;
  align-items:center;
}

.ex-image{
  position:relative;
  overflow:hidden;
  border-radius:20px;
}

.ex-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .6s ease;
}

.ex-image:hover img{
  transform:scale(1.05);
}

.ex-content h2{
  font-size:clamp(28px,4vw,46px);
  margin-bottom:10px;
}

.ex-sub{
  color:#51a4ff;
  font-weight:600;
  margin-bottom:25px;
  letter-spacing:.5px;
}

.ex-quotes p{
  margin:10px 0;
  color:#cbd5e1;
  font-size:18px;
}

.ex-btn{
  display:inline-block;
  margin-top:25px;
  padding:14px 24px;
  background:#51a4ff;
  color:#06121c;
  font-weight:600;
  border-radius:12px;
  text-decoration:none;
  transition:all .3s ease;
}

.ex-btn:hover{
  background:#18c1a3;
  transform:translateY(-2px);
}

@media (min-width:900px){
  .ex-container{
    grid-template-columns:1fr 1fr;
  }
}
