/* Hauptwebsite hoewer-baermig-media.de */
:root { --ink:#171714; --paper:#f3f0e8; --accent:#d95032; --muted:#706e66; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Arial, Helvetica, sans-serif; line-height:1.6; }
a { color:inherit; text-underline-offset:.25em; }
a:focus-visible { outline:3px solid var(--accent); outline-offset:4px; }
.skip-link { position:absolute; left:1rem; top:-5rem; background:var(--ink); color:white; padding:.75rem 1rem; z-index:10; }
.skip-link:focus { top:1rem; }
.site-header, footer { display:flex; justify-content:space-between; align-items:center; padding:1.5rem clamp(1.25rem,5vw,5rem); }
.brand { font-size:1.35rem; font-weight:800; text-decoration:none; letter-spacing:-.04em; }
.brand span { color:var(--accent); }
nav { display:flex; gap:1.5rem; }
nav a { text-decoration:none; font-weight:700; }
.hero { min-height:76vh; display:flex; flex-direction:column; justify-content:center; padding:5rem clamp(1.25rem,8vw,8rem); border-top:1px solid #d4d0c6; }
.eyebrow { text-transform:uppercase; letter-spacing:.14em; font-weight:700; font-size:.75rem; color:var(--accent); }
h1 { margin:.5rem 0 1.5rem; max-width:1000px; font-size:clamp(3rem,8vw,7rem); line-height:.93; letter-spacing:-.065em; }
h1 em { font-family:Georgia, serif; font-weight:400; }
.intro { max-width:650px; font-size:clamp(1.1rem,2vw,1.35rem); color:var(--muted); }
.button { align-self:flex-start; margin-top:1.25rem; padding:.9rem 1.25rem; background:var(--ink); color:white; text-decoration:none; font-weight:700; }
.button:hover { background:var(--accent); }
.services { padding:6rem clamp(1.25rem,8vw,8rem); background:var(--ink); color:white; }
.services h2 { max-width:750px; font-size:clamp(2rem,5vw,4rem); line-height:1.05; letter-spacing:-.04em; }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:4rem; background:#454540; }
.cards article { padding:2rem; background:var(--ink); }
.cards span { color:var(--accent); font-weight:700; }
.cards p { color:#bbb8ae; }
footer { border-top:1px solid #d4d0c6; }
@media (max-width:700px) { .site-header nav a:first-child { display:none; } .cards { grid-template-columns:1fr; } footer { align-items:flex-start; flex-direction:column; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
