:root{
  --red:#8f2532;
  --orange:#d97935;
  --gold:#f4c15d;
  --cream:#fff8ed;
  --text:#2d2525;
  --muted:#736b68;
  --white:#ffffff;
  --shadow:0 14px 35px rgba(65,28,22,.16);
}
*{box-sizing:border-box}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--cream);line-height:1.6}
a{color:inherit}.topbar{background:var(--red);color:white;padding:.55rem 1rem;text-align:center;font-size:.95rem}.nav{position:sticky;top:0;z-index:10;background:rgba(255,248,237,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(143,37,50,.14)}.nav-inner{max-width:1150px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:1rem}.brand{font-family:Georgia,serif;font-style:italic;font-size:1.55rem;color:var(--red);font-weight:bold;text-decoration:none}.menu{display:flex;gap:1.1rem;flex-wrap:wrap}.menu a{text-decoration:none;font-weight:700;color:#563334}.menu a:hover,.menu a.active{color:var(--orange)}.hero{min-height:520px;display:flex;align-items:center;background:linear-gradient(90deg,rgba(82,22,31,.72),rgba(217,121,53,.42)),url('hero-banner-visitenkartenlogo.png') center/cover no-repeat;color:white}.hero-content{max-width:1150px;margin:auto;padding:4rem 1rem}.hero h1{font-family:Georgia,serif;font-style:italic;font-size:clamp(2.4rem,5vw,5rem);line-height:1.05;margin:0 0 1rem}.hero p{max-width:660px;font-size:1.25rem}.btn{display:inline-block;background:white;color:var(--red);padding:.9rem 1.2rem;border-radius:999px;text-decoration:none;font-weight:bold;margin-top:1rem}.section{max-width:1150px;margin:auto;padding:4rem 1rem}.section h2{font-family:Georgia,serif;color:var(--red);font-size:2.2rem;margin:0 0 1.2rem}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.2rem}.card{background:white;border-radius:22px;padding:1.5rem;box-shadow:var(--shadow);border:1px solid rgba(143,37,50,.08)}.card h3{margin-top:0;color:var(--red)}.page-head{background:linear-gradient(135deg,var(--red),var(--orange));color:white;padding:4rem 1rem}.page-head div{max-width:1150px;margin:auto}.page-head h1{font-family:Georgia,serif;font-size:3rem;margin:.2rem 0}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:center}.photo-card{background:white;border-radius:24px;padding:1rem;box-shadow:var(--shadow)}.photo-card img{width:100%;border-radius:18px;display:block}.price{font-size:1.3rem;font-weight:bold;color:var(--orange)}.team-member{display:flex;gap:1rem;align-items:flex-start}.avatar{min-width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold),var(--orange));color:white;font-weight:bold;font-size:1.5rem}.contact-list{list-style:none;padding:0;margin:0}.contact-list li{padding:.55rem 0;border-bottom:1px solid #eee}.footer{background:#3a2022;color:white;text-align:center;padding:2rem 1rem;margin-top:3rem}.notice{font-size:.9rem;color:var(--muted)}@media(max-width:780px){.nav-inner{align-items:flex-start;gap:1rem;flex-direction:column}.menu{gap:.75rem}.hero{min-height:430px}.two-col{grid-template-columns:1fr}.page-head h1{font-size:2.3rem}}

.hero, .hero-section, .banner { background-size: cover !important; background-position: center center !important; background-repeat: no-repeat !important; }

.service-group{margin-top:2.5rem}
.group-heading{margin-bottom:1rem}
.group-heading p{margin:0;color:var(--orange);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem}
.group-heading h3{font-family:Georgia,serif;color:var(--red);font-size:1.8rem;margin:.1rem 0 0}
.card h4{margin-top:0;margin-bottom:.6rem;color:var(--red);font-size:1.15rem}
.featured-service{position:relative;border:2px solid rgba(217,121,53,.35);background:linear-gradient(180deg,#fff,rgba(244,193,93,.12))}
.badge{position:absolute;top:1rem;right:1rem;background:var(--orange);color:white;border-radius:999px;padding:.25rem .7rem;font-size:.8rem;font-weight:700}
