/* ===========================================
   AIgentiX-Solutions — Gemeinsames Stylesheet
   Diese Datei wird von ALLEN Seiten verwendet.
   Änderst du hier etwas, ändert es sich überall.
   =========================================== */

:root{
  --bg:#0e0e0e;
  --text:#ede7d8;
  --muted:#7a7468;
  --line:#1f1f1f;
  --accent:#d8ff3a;
}
*{margin:0;padding:0;box-sizing:border-box}
html,body{
  background:var(--bg);color:var(--text);
  font-family:'Inter',sans-serif;font-weight:400;
  line-height:1.6;font-size:16px;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
.serif{font-family:'Fraunces',serif;font-weight:300}
::selection{background:var(--accent);color:#000}
a{color:inherit;text-decoration:none}

.container{max-width:1100px;margin:0 auto;padding:0 32px}

/* NAVIGATION */
nav{
  position:sticky;top:0;z-index:50;
  background:rgba(14,14,14,0.9);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  display:flex;justify-content:space-between;align-items:center;
  padding:20px 32px;max-width:1100px;margin:0 auto;
}
.logo{
  font-family:'Fraunces',serif;font-weight:400;font-size:18px;
  letter-spacing:-0.01em;
}
.logo em{color:var(--accent);font-style:italic;font-weight:300}
.nav-links{display:flex;gap:32px;font-size:14px;color:var(--muted)}
.nav-links a:hover{color:var(--text)}
.nav-links a.active{color:var(--text)}

/* HERO */
.hero{padding:140px 0 120px;border-bottom:1px solid var(--line)}
.hero h1{
  font-family:'Fraunces',serif;font-weight:300;
  font-size:clamp(48px,7vw,88px);line-height:1.02;
  letter-spacing:-0.03em;margin-bottom:32px;max-width:900px;
}
.hero h1 em{font-style:italic;color:var(--accent)}
.hero p{
  font-size:19px;line-height:1.6;color:var(--muted);
  max-width:600px;margin-bottom:40px;
}

/* BUTTONS */
.btn{
  display:inline-block;padding:14px 24px;
  background:var(--accent);color:#000;
  font-size:14px;font-weight:500;
  transition:transform .2s;cursor:pointer;border:none;
}
.btn:hover{transform:translateY(-2px)}
.btn-ghost{
  background:transparent;color:var(--text);
  border:1px solid var(--line);margin-left:8px;
}
.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}

/* SECTIONS */
section{padding:120px 0;border-bottom:1px solid var(--line)}
.section-label{
  font-size:13px;color:var(--accent);
  margin-bottom:24px;letter-spacing:0.02em;
}
.section-title{
  font-family:'Fraunces',serif;font-weight:300;
  font-size:clamp(36px,4.5vw,56px);line-height:1.05;
  letter-spacing:-0.02em;margin-bottom:80px;max-width:700px;
}
.section-title em{font-style:italic;color:var(--accent)}

/* SERVICES */
.services{display:flex;flex-direction:column;gap:0}
.service{
  display:grid;grid-template-columns:1fr 2fr;gap:60px;
  padding:40px 0;border-top:1px solid var(--line);
}
.services .service:last-child{border-bottom:1px solid var(--line)}
.service h3{
  font-family:'Fraunces',serif;font-weight:400;
  font-size:28px;letter-spacing:-0.01em;line-height:1.1;
}
.service p{color:var(--muted);font-size:16px;max-width:520px}

/* PROJECTS */
.project-main{margin-bottom:40px}
.project-meta{
  font-size:13px;color:var(--muted);margin-bottom:24px;
}
.project-main h3{
  font-family:'Fraunces',serif;font-weight:300;
  font-size:clamp(32px,4vw,48px);line-height:1.05;
  letter-spacing:-0.02em;margin-bottom:24px;max-width:780px;
}
.project-main h3 em{font-style:italic;color:var(--accent)}
.project-main > p{
  color:var(--muted);font-size:17px;line-height:1.6;
  max-width:680px;
}
.project-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:32px;
  margin-top:60px;
}
.project-mini{
  padding:32px;border:1px solid var(--line);
  transition:border-color .2s;cursor:pointer;
}
.project-mini:hover{border-color:var(--accent)}
.project-mini h4{
  font-family:'Fraunces',serif;font-weight:400;
  font-size:22px;letter-spacing:-0.01em;margin:12px 0 12px;
}
.project-mini p{color:var(--muted);font-size:14px}

/* PARTNERS */
.partners-section{padding:60px 0}
.partners-label{
  text-align:center;color:var(--muted);
  font-size:13px;margin-bottom:40px;
}
.partners-row{
  display:flex;justify-content:space-between;align-items:center;
  gap:48px;flex-wrap:wrap;
}
.partner{
  font-family:'Fraunces',serif;font-weight:400;
  font-size:20px;color:var(--muted);
  letter-spacing:-0.01em;transition:color .3s;
}
.partner:hover{color:var(--text)}

/* WHY US */
.why-grid{
  display:grid;grid-template-columns:1fr 1fr;
  gap:64px 80px;
}
.why-item h4{
  font-family:'Fraunces',serif;font-weight:400;
  font-size:24px;letter-spacing:-0.01em;
  line-height:1.2;margin-bottom:12px;
}
.why-item h4 strong{
  font-weight:500;
  background:linear-gradient(transparent 60%,var(--accent) 60%);
  padding:0 2px;
}
.why-item p{color:var(--muted);font-size:15px;line-height:1.6}

/* CTA */
.cta{
  padding:140px 0;text-align:center;
  border-bottom:1px solid var(--line);
}
.cta h2{
  font-family:'Fraunces',serif;font-weight:300;
  font-size:clamp(40px,6vw,72px);line-height:1.02;
  letter-spacing:-0.03em;margin-bottom:24px;
}
.cta h2 em{font-style:italic;color:var(--accent)}
.cta p{
  color:var(--muted);font-size:18px;
  max-width:500px;margin:0 auto 40px;
}

/* SUB-PAGE (Impressum, Datenschutz, Kontakt) */
.subpage{
  padding:120px 0 100px;
  border-bottom:1px solid var(--line);
  min-height:calc(100vh - 200px);
}
.subpage h1{
  font-family:'Fraunces',serif;font-weight:300;
  font-size:clamp(40px,5vw,64px);line-height:1.05;
  letter-spacing:-0.03em;margin-bottom:48px;
}
.subpage h1 em{font-style:italic;color:var(--accent)}
.subpage h2{
  font-family:'Fraunces',serif;font-weight:400;
  font-size:24px;letter-spacing:-0.01em;
  margin:48px 0 16px;
}
.subpage h3{
  font-family:'Fraunces',serif;font-weight:400;
  font-size:18px;margin:32px 0 12px;color:var(--text);
}
.subpage p, .subpage li{
  color:var(--muted);font-size:15px;line-height:1.7;
  margin-bottom:16px;max-width:720px;
}
.subpage ul{padding-left:24px;margin-bottom:16px}
.subpage a{color:var(--accent);border-bottom:1px solid transparent;transition:border-color .2s}
.subpage a:hover{border-color:var(--accent)}
.subpage strong{color:var(--text);font-weight:500}

.contact-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:60px;
  margin-top:40px;
}
.contact-box{padding:32px;border:1px solid var(--line)}
.contact-box h3{margin-top:0}
.contact-box p{margin-bottom:8px}

/* FOOTER */
footer{
  padding:32px;display:flex;justify-content:space-between;
  align-items:center;color:var(--muted);font-size:13px;
  max-width:1100px;margin:0 auto;
}
.footer-links{display:flex;gap:24px}
.footer-links a:hover{color:var(--accent)}

/* RESPONSIVE */
@media (max-width:780px){
  .container{padding:0 20px}
  .nav-inner{padding:16px 20px}
  .nav-links{display:none}
  .hero{padding:100px 0 80px}
  section{padding:80px 0}
  .subpage{padding:80px 0 60px}
  .section-title{margin-bottom:48px}
  .service{grid-template-columns:1fr;gap:16px;padding:32px 0}
  .project-grid{grid-template-columns:1fr}
  .why-grid{grid-template-columns:1fr;gap:40px}
  .partners-row{justify-content:flex-start;gap:24px}
  .partner{font-size:17px}
  .contact-grid{grid-template-columns:1fr;gap:24px}
  footer{flex-direction:column;gap:16px;text-align:center;padding:24px 20px}
  .cta{padding:100px 0}
  .btn-ghost{margin-left:0;margin-top:12px}
}
