:root{--bg:#fbf7f2;--ink:#2b2326;--muted:#6f6469;--accent:#8b3656;--accent-d:#6d2a44;--soft:#f3e8ec;--line:#e6dcd3;--card:#fff;--r:14px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif;line-height:1.2;margin:0 0 .5em;font-weight:600}
h1{font-size:clamp(2rem,5vw,3.1rem)}h2{font-size:1.6rem}h3{font-size:1.15rem}
a{color:var(--accent)}a:hover{color:var(--accent-d)}
img{max-width:100%;height:auto;display:block}
.wrap{max-width:1080px;margin:0 auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:.5rem;z-index:20}
.muted{color:var(--muted);font-size:.92rem}

/* Header */
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}
.bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:64px}
.brand{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:var(--ink);font:600 1.2rem Georgia,serif}
.brand img{height:30px;width:auto}
.nav{display:flex;gap:1.4rem}
.nav a{text-decoration:none;color:var(--ink);padding:.4rem 0;border-bottom:2px solid transparent}
.nav a:hover,.nav a[aria-current]{border-color:var(--accent);color:var(--accent)}
.nav-toggle,.nav-burger{display:none}
@media(max-width:820px){
  .nav-burger{display:block;cursor:pointer;padding:.8rem .4rem}
  .nav-burger span,.nav-burger span::before,.nav-burger span::after{display:block;width:24px;height:2px;background:var(--ink);position:relative;content:""}
  .nav-burger span::before{position:absolute;top:-7px}.nav-burger span::after{position:absolute;top:7px}
  .nav{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:.5rem 1.25rem 1rem}
  .nav a{padding:.7rem 0}
  .nav-toggle:checked ~ .nav{display:flex}
}

/* Hero */
.hero{background:linear-gradient(180deg,var(--soft),var(--bg));padding:3rem 0 2.5rem}
.hero-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:2.5rem;align-items:center}
.hero img{border-radius:var(--r);box-shadow:0 10px 30px rgba(80,30,50,.15);aspect-ratio:16/11;object-fit:cover;width:100%}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.8rem;color:var(--accent);margin:0 0 .6rem}
.lead{font-size:1.15rem;color:var(--muted)}
.actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.5rem}
.btn{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;padding:.7rem 1.3rem;border-radius:999px;font-weight:600;border:2px solid var(--accent)}
.btn:hover{background:var(--accent-d);border-color:var(--accent-d);color:#fff}
.btn.ghost{background:transparent;color:var(--accent)}.btn.ghost:hover{background:var(--accent);color:#fff}
@media(max-width:820px){.hero-inner{grid-template-columns:1fr}.hero img{order:-1}}

/* Karten, Raster */
.highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.4rem;margin:2.5rem auto}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.card img{aspect-ratio:16/10;object-fit:cover;width:100%}
.card h2,.card p{margin-left:1.2rem;margin-right:1.2rem}.card h2{margin-top:1rem;font-size:1.3rem}.card p{margin-bottom:1.3rem;color:var(--muted)}
.band{padding:3rem 0}.soft{background:var(--soft)}
.section-title{text-align:center;margin-bottom:1.8rem}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1.1rem}
.tile{background:#fff;border-radius:var(--r);padding:1.3rem;border:1px solid var(--line)}
.tile h3{margin-bottom:.3rem}.tile p{margin:0;color:var(--muted);font-size:.95rem}
.icon{display:inline-block;width:44px;height:44px;color:var(--accent);margin-bottom:.6rem}
.icon svg{width:100%;height:100%}

/* Reparatur, Zwei-Spalten */
.repair{display:grid;grid-template-columns:1fr 1.2fr;gap:2rem;align-items:center;padding-top:3rem;padding-bottom:3rem}
.repair img{border-radius:var(--r);width:100%}
.two{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}
@media(max-width:760px){.repair,.two{grid-template-columns:1fr}}
address{font-style:normal}

/* Öffnungszeiten */
.hours{border-collapse:collapse;width:100%;max-width:460px;background:#fff;border-radius:var(--r);overflow:hidden}
.hours th,.hours td{padding:.55rem .9rem;border-bottom:1px solid var(--line);text-align:left}
.hours th{font-weight:600;width:42%}.hours tr:last-child th,.hours tr:last-child td{border-bottom:0}

/* Inhaltsseiten */
.page{padding-top:2.5rem;padding-bottom:3.5rem;max-width:820px}
.prose img{border-radius:var(--r);margin:1rem 0}
.prose h3,.prose h4{margin-top:1.8em}

/* Footer */
.site-footer{background:#2b2326;color:#e9dfe3;padding-top:2.5rem;font-size:.95rem}
.site-footer h2{font-size:1.1rem;color:#fff}.site-footer a{color:#f2c9d8}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem}
.legal{border-top:1px solid #4a3d43;margin-top:2rem;padding-top:1rem;padding-bottom:1.5rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;color:#bfb2b8}
.legal p{margin:0}
