/* Keine externen Schriften – ausschließlich systemnahe freie Fonts */

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}

:root{
  --bg:        #0d0f10;
  --bg2:       #131618;
  --bg3:       #1a1e20;
  --accent:    #c8a96e;
  --accent2:   #7eb3c8;
  --text:      #e8e2d8;
  --muted:     #7a7570;
  --border:    rgba(200,169,110,0.18);
  /* Palatino: elegante Serife, auf allen Plattformen vorhanden, kein Download */
  --serif:     Palatino, 'Palatino Linotype', 'Book Antiqua', Georgia, serif;
  /* System-Monospace-Stack: ui-monospace (macOS/iOS), Menlo, Consolas (Windows) */
  --mono:      ui-monospace, Menlo, Consolas, 'Lucida Console', monospace;
}

body{
  background:var(--bg);
  color:var(--text);
  font-family:var(--mono);
  font-weight:300;
  font-size:14px;
  line-height:1.7;
  overflow-x:hidden;
}

a{text-decoration:none;color:inherit}

/* ── NAV ── */
nav{
  position:sticky;top:0;z-index:100;
  display:flex;align-items:center;justify-content:center;gap:3rem;
  padding:1.1rem 2.5rem;
  background:rgba(13,15,16,0.96);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(8px);
}
.nav-logo{
  font-family:var(--serif);font-size:1.1rem;font-weight:300;
  letter-spacing:.15em;color:var(--accent);
}
.nav-links{display:flex;gap:2rem;list-style:none}
.nav-links a{
  color:var(--muted);font-size:.65rem;letter-spacing:.12em;
  text-transform:uppercase;transition:color .2s;
}
.nav-links a:hover,.nav-links a.active{color:var(--accent)}

/* ── PAGE HERO (Unterseiten) ── */
.page-hero{
  padding:5rem 2.5rem 3.5rem;
  border-bottom:1px solid var(--border);
  background:linear-gradient(to bottom, var(--bg2), var(--bg));
}
.page-hero .eyebrow{
  font-size:.62rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--accent);margin-bottom:1rem;
  display:flex;align-items:center;gap:.8rem;
}
.page-hero .eyebrow::before{content:'';display:block;width:30px;height:1px;background:var(--accent)}
.page-hero h1{
  font-family:var(--serif);font-size:clamp(2rem,5vw,3.5rem);
  font-weight:300;line-height:1.15;color:var(--text);
}
.page-hero h1 em{font-style:italic;color:var(--accent)}

/* ── MAIN CONTENT ── */
main{max-width:1100px;margin:0 auto;padding:4rem 2.5rem 6rem}

/* ── SECTION LABEL ── */
.section-label{
  font-size:.6rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--accent);margin-bottom:1.8rem;
  display:flex;align-items:center;gap:.8rem;
}
.section-label::before{content:'';display:block;width:30px;height:1px;background:var(--accent)}

.section-title{
  font-family:var(--serif);font-size:clamp(1.6rem,3vw,2.4rem);
  font-weight:300;line-height:1.2;margin-bottom:1.2rem;
}

/* ── BUTTONS ── */
.btn{
  display:inline-flex;align-items:center;gap:.5rem;
  font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;
  text-transform:uppercase;padding:.55rem 1.2rem;
  border:1px solid var(--accent);color:var(--accent);
  transition:background .2s,color .2s;cursor:pointer;
}
.btn:hover{background:var(--accent);color:var(--bg)}

/* ── CARDS ── */
.card{
  background:var(--bg2);border:1px solid var(--border);
  padding:2rem 1.8rem;transition:background .25s;
}
.card:hover{background:var(--bg3)}

/* ── TAGS ── */
.tag{
  display:inline-block;font-size:.55rem;letter-spacing:.1em;
  text-transform:uppercase;padding:.15rem .5rem;
  border:1px solid var(--border);color:var(--accent);
}
.tags{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.8rem}

/* ── FOOTER ── */
footer{
  border-top:1px solid var(--border);
  padding:3rem 2.5rem 2.5rem;
  max-width:1100px;margin:0 auto;
  display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:end;
}
.footer-name{
  font-family:var(--serif);font-size:1.4rem;font-weight:300;
  color:var(--text);margin-bottom:.3rem;
}
.footer-tagline{font-size:.62rem;color:var(--muted);letter-spacing:.1em}
.footer-links{display:flex;flex-direction:column;gap:.4rem;text-align:right}
.footer-links a{color:var(--muted);font-size:.62rem;letter-spacing:.06em;transition:color .2s}
.footer-links a:hover{color:var(--accent)}
.footer-copy{
  grid-column:1/-1;font-size:.55rem;
  color:#2a2826;letter-spacing:.08em;margin-top:.8rem;
}

/* ── FADE ANIMATION ── */
.fade-up{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}
.fade-up.visible{opacity:1;transform:translateY(0)}

/* ── RESPONSIVE ── */
@media(max-width:768px){
  nav{padding:1rem 1.2rem}
  .nav-links{gap:1.2rem}
  .nav-links li:nth-child(n+5){display:none}
  main{padding:3rem 1.2rem 5rem}
  .page-hero{padding:4rem 1.2rem 2.5rem}
  footer{grid-template-columns:1fr}
  .footer-links{text-align:left}
}
