/*
Theme Name: PraxisSafe Theme
Theme URI: https://example.com/praxissafe
Author: PraxisSafe
Author URI: https://example.com
Description: Begleitendes Theme für das PraxisSafe-Plugin. Liefert Landing-/Login-Seiten im PraxisSafe-Markendesign und ein vollflächiges Seiten-Template, das die Arbeitsschutz-App hostet. Erfordert das Plugin „PraxisSafe – Arbeitsschutz für Arztpraxen".
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: praxissafe-theme
*/

:root{
  --ink:#0f1614; --ink-2:#2a3330; --muted:#5d6b66;
  --paper:#faf7f2; --paper-2:#f1ece2; --line:#e2ddd1; --line-2:#d4cdbd;
  --teal:#0f3b3a; --teal-2:#1a5755; --teal-ink:#07201f;
  --clay:#c45a3b; --clay-2:#a74728; --sand:#e8dcc2;
  --radius:14px; --radius-sm:8px;
  --shadow-soft:0 2px 0 rgba(15,22,20,.03), 0 10px 30px -12px rgba(15,22,20,.14);
  --shadow-lift:0 8px 30px -8px rgba(15,22,20,.25);
  --font-display:"Fraunces", Georgia, "Times New Roman", serif;
  --font-body:"Manrope", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

*,*::before,*::after{ box-sizing:border-box; }

body.ps-site{
  margin:0; font-family:var(--font-body); color:var(--ink);
  background:
    radial-gradient(1100px 600px at 90% -10%, rgba(196,90,59,.08), transparent 60%),
    radial-gradient(900px 600px at -10% 110%, rgba(15,59,58,.07), transparent 60%),
    var(--paper);
  line-height:1.55;
}
.ps-site a{ color:var(--teal-2); }

/* Header */
.ps-header{
  display:flex; align-items:center; justify-content:space-between;
  max-width:1180px; margin:0 auto; padding:22px 24px;
}
.ps-brand{ display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--teal); }
.ps-brand svg{ color:var(--clay); }
.ps-brand-name{ font-family:var(--font-display); font-weight:600; font-size:1.35rem; letter-spacing:-.01em; }
.ps-nav{ display:flex; align-items:center; gap:10px; }

/* Buttons */
.ps-btn{
  display:inline-block; border:0; cursor:pointer; text-decoration:none;
  padding:11px 20px; border-radius:999px; font-weight:600; font-size:.95rem;
  font-family:var(--font-body); transition:transform .12s ease, box-shadow .12s ease;
}
.ps-btn:hover{ transform:translateY(-1px); }
.ps-btn-primary{ background:var(--teal); color:#fff; }
.ps-btn-clay{ background:var(--clay); color:#fff; }
.ps-btn-ghost{ background:transparent; color:var(--teal); border:1px solid var(--line-2); }

/* Hero */
.ps-hero{ max-width:1180px; margin:0 auto; padding:40px 24px 70px;
  display:grid; grid-template-columns:1.15fr .85fr; gap:54px; align-items:center; }
.ps-hero h1{ font-family:var(--font-display); font-weight:600; font-size:3.1rem; line-height:1.05;
  letter-spacing:-.02em; margin:.2em 0 .35em; color:var(--teal-ink); }
.ps-hero h1 em{ color:var(--clay); font-style:italic; }
.ps-lead{ font-size:1.15rem; color:var(--ink-2); max-width:48ch; }
.ps-points{ list-style:none; padding:0; margin:26px 0; display:grid; gap:12px; }
.ps-points li{ display:flex; gap:12px; align-items:flex-start; font-weight:500; }
.ps-points li span{ flex:0 0 auto; width:26px; height:26px; border-radius:8px; background:var(--sand);
  color:var(--clay-2); font-size:.8rem; font-weight:700; display:flex; align-items:center; justify-content:center; }
.ps-cta-row{ display:flex; gap:12px; flex-wrap:wrap; margin-top:8px; }
.ps-legal{ font-size:.8rem; color:var(--muted); margin-top:30px; max-width:52ch; }

.ps-hero-card{
  background:#fff; border:1px solid var(--line); border-radius:20px;
  box-shadow:var(--shadow-lift); padding:30px 32px;
}
.ps-hero-card h2{ font-family:var(--font-display); font-weight:600; margin:0 0 6px; font-size:1.5rem; }
.ps-hero-card p{ color:var(--muted); margin:0 0 18px; }
.ps-feature{ display:flex; gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }
.ps-feature:last-child{ border-bottom:0; }
.ps-feature .ic{ font-size:1.2rem; }
.ps-feature b{ display:block; }
.ps-feature small{ color:var(--muted); }

/* Sections */
.ps-section{ max-width:1180px; margin:0 auto; padding:30px 24px 60px; }
.ps-grid3{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.ps-tile{ background:#fff; border:1px solid var(--line); border-radius:var(--radius); padding:22px 24px; box-shadow:var(--shadow-soft); }
.ps-tile h3{ font-family:var(--font-display); margin:0 0 8px; }
.ps-tile p{ color:var(--muted); margin:0; font-size:.95rem; }

/* Content pages */
.ps-content{ max-width:760px; margin:0 auto; padding:40px 24px 70px; }
.ps-content h1,.ps-content h2,.ps-content h3{ font-family:var(--font-display); color:var(--teal-ink); }

/* Footer */
.ps-footer{ border-top:1px solid var(--line); }
.ps-footer-inner{ max-width:1180px; margin:0 auto; padding:24px; display:flex; justify-content:space-between;
  flex-wrap:wrap; gap:12px; color:var(--muted); font-size:.9rem; }

@media (max-width:860px){
  .ps-hero{ grid-template-columns:1fr; gap:30px; padding-bottom:40px; }
  .ps-hero h1{ font-size:2.3rem; }
  .ps-grid3{ grid-template-columns:1fr; }
}
