/* ============================================================
   Budget Profi – gemeinsames Stylesheet für die Unterseiten
   (AGB, Versand, Impressum, Rückgaben, Datenschutz, Kontakt)
   Die Landingpage index.html bringt ihr eigenes CSS mit.
   ============================================================ */

:root{
  --navy:        #0f1e33;
  --navy-text:   #101f36;
  --green:       #22c58b;
  --green-trust: #17a877;
  --blue:        #1a8cff;
  --cream:       #fbf9f2;
  --white:       #ffffff;
  --body:        #3f4a54;
  --linie:       #e6e6e2;

  --col:  640px;   /* Lesebreite – breiter als die Landingpage,
                      damit lange Rechtstexte lesbar bleiben */
  --pad:  22px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; }
body{
  margin:0;
  background:var(--white);
  font-family:'Lato',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  font-size:17px;
  line-height:1.65;
  color:var(--body);
  -webkit-font-smoothing:antialiased;
}
img{ max-width:100%; display:block; }

/* ---------- Kopfzeile ---------- */
.kopf{
  background:var(--white);
  border-bottom:1px solid var(--linie);
  padding:14px var(--pad);
}
.kopf .innen{ max-width:var(--col); margin:0 auto; }
.kopf a{ display:block; width:200px; }

/* ---------- Inhalt ---------- */
.inhalt{
  max-width:var(--col);
  margin:0 auto;
  padding:34px var(--pad) 56px;
}
.inhalt h1{
  font-family:'Montserrat',sans-serif; font-weight:800;
  color:var(--navy-text); letter-spacing:-.02em; line-height:1.2;
  font-size:30px; margin:0 0 8px;
}
.inhalt .unter{
  font-family:'Montserrat',sans-serif; font-weight:800;
  color:var(--navy-text); letter-spacing:-.02em;
  font-size:19px; margin:0 0 26px; text-transform:uppercase;
}
.inhalt h2{
  font-family:'Montserrat',sans-serif; font-weight:800;
  color:var(--navy-text); letter-spacing:-.02em; line-height:1.3;
  font-size:18px; margin:34px 0 10px; text-transform:uppercase;
}
.inhalt h3{
  font-family:'Montserrat',sans-serif; font-weight:800;
  color:var(--navy-text); letter-spacing:-.02em;
  font-size:17px; margin:26px 0 8px;
}
.inhalt p{ margin:0 0 16px; }
.inhalt ul{ margin:0 0 16px; padding-left:22px; }
.inhalt li{ margin-bottom:10px; }
.inhalt a{ color:var(--blue); }
.inhalt .stand{ font-size:15px; color:#7b848c; margin-bottom:26px; }
.inhalt .karte{
  background:var(--cream); border:1px solid var(--linie);
  border-radius:8px; padding:20px 22px; margin-bottom:20px;
}
.inhalt .karte p:last-child{ margin-bottom:0; }
.inhalt .karte b{ color:var(--navy-text); }

/* ---------- Kontaktformular ---------- */
.formular{ margin-top:6px; }
.feld{ margin-bottom:18px; }
.feld label{
  display:block; margin-bottom:6px;
  font-family:'Montserrat',sans-serif; font-weight:700; font-size:15px;
  color:var(--navy-text); letter-spacing:-.01em;
}
.feld input, .feld textarea{
  width:100%; font-family:inherit; font-size:17px; color:var(--body);
  padding:12px 14px; border:1px solid #cfd4d9; border-radius:6px;
  background:var(--white);
}
.feld textarea{ min-height:150px; resize:vertical; }
.feld input:focus, .feld textarea:focus{
  outline:none; border-color:var(--blue); box-shadow:0 0 0 3px rgba(26,140,255,.15);
}
.btn{
  display:inline-block; border:0; cursor:pointer;
  background:var(--green); color:#fff;
  font-family:'Montserrat',sans-serif; font-weight:800; font-size:18px;
  letter-spacing:-.01em; padding:15px 42px; border-radius:6px;
  box-shadow:0 7px 16px rgba(34,197,139,.42);
}
.btn:disabled{ opacity:.6; cursor:default; box-shadow:none; }
.hinweis{ margin-top:16px; font-size:16px; }
.hinweis.ok{ color:var(--green-trust); font-weight:700; }
.hinweis.fehler{ color:#c0392b; font-weight:700; }

/* ---------- Footer ---------- */
.footer{ background:var(--navy); padding:40px var(--pad) 50px; }
.footer .innen{ max-width:var(--col); margin:0 auto; }
.footer h3{
  font-family:'Montserrat',sans-serif; font-weight:800;
  color:var(--blue); font-size:19px; margin:0 0 8px; letter-spacing:-.02em;
}
.footer a, .footer .zeile{
  display:block; color:#fff; text-decoration:none; font-size:17px; line-height:1.45;
}
.footer a:hover{ text-decoration:underline; }
.fgruppe{ margin-bottom:26px; }
.footer .zahlung{ width:200px; margin:34px auto 0; }
.copyright{
  text-align:center; color:#fff; margin-top:13px;
  font-family:'Montserrat',sans-serif; font-weight:700; font-size:15px; letter-spacing:-.01em;
}
