
:root{--ink:#1d2b33;--muted:#566775;--accent:#355d78;--accent-light:#e5edf1;--line:#dce4e8;--pale:#f4f7f8;--max:1150px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:17px/1.63 system-ui,-apple-system,'Segoe UI',sans-serif}a{color:var(--accent)}a:hover{text-decoration-thickness:2px}a:focus-visible{outline:3px solid #e5a64e;outline-offset:3px}img{max-width:100%;height:auto;display:block}.wrap{width:min(var(--max),calc(100% - 2.6rem));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:#fffffff5;border-bottom:1px solid var(--line);box-shadow:0 3px 15px #1e384512}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:17px 0;flex-wrap:wrap}.brand{font-weight:800;color:var(--ink);line-height:1.22;text-decoration:none;letter-spacing:-.025em}.brand span{display:block;font-weight:600;font-size:.75rem;letter-spacing:.06em;color:var(--accent)}nav ul{display:flex;gap:20px;align-items:center;list-style:none;padding:0;margin:0;flex-wrap:wrap}nav a{font-size:.9rem;text-decoration:none;color:var(--ink);font-weight:650}nav a[aria-current=page]{color:var(--accent)}.hero{background:linear-gradient(120deg,#eef3f6,#fff 70%);border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:54px;align-items:center;padding:74px 0}.eyebrow{font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:.77rem}.hero h1{font-size:clamp(2.35rem,4.6vw,4.4rem);letter-spacing:-.052em;line-height:1.11;margin:17px 0 24px}.lead{font-size:1.16rem;color:var(--muted);max-width:64ch}.hero-logo{display:flex;justify-content:center;align-items:center;min-height:340px;border:1px solid var(--line);background:white;border-radius:12px;box-shadow:0 18px 38px #233c4b0c}.hero-logo img{width:min(230px,70%)}.hero-logo .logo-caption{color:var(--muted);font-size:.86rem}.actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}.button{display:inline-block;background:var(--accent);border:2px solid var(--accent);border-radius:6px;padding:11px 20px;color:#fff;text-decoration:none;font-weight:700}.button.alt{background:transparent;color:var(--accent)}.section{padding:72px 0}.section.pale{background:var(--pale)}h2{font-size:clamp(1.85rem,3vw,2.55rem);line-height:1.18;letter-spacing:-.03em;margin:0 0 23px}h3{font-size:1.24rem;line-height:1.3;margin:0 0 14px}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.card{border:1px solid var(--line);border-top:4px solid var(--accent);padding:29px;border-radius:9px;background:white}.card p{margin-top:0}.card ul{padding-left:1.2rem}.muted{color:var(--muted)}.bio{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr);gap:43px;align-items:start}.portrait{border:1px solid var(--line);background:var(--pale);padding:12px;border-radius:9px;margin:0}.portrait img{width:100%;border-radius:5px;aspect-ratio:4/5;object-fit:cover;object-position:top}.portrait figcaption{padding:10px 5px 2px;font-size:.9rem;color:var(--muted)}.portrait strong{display:block;color:var(--ink)}.fees{border-collapse:collapse;width:100%;font-size:.99rem;background:#fff}.fees th,.fees td{padding:16px 13px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.fees th{background:var(--accent-light);font-weight:750}.fees td.money{white-space:nowrap;font-variant-numeric:tabular-nums}.legal{max-width:830px}.legal h2{font-size:1.43rem;margin:35px 0 13px}.legal p,.legal li{color:#3d4c55}.small{font-size:.85rem;color:var(--muted)}.notice{background:#fff7e6;border-left:4px solid #c9963f;padding:15px 19px;margin:20px 0}.site-footer{background:#20333f;color:#cad8e1;padding:30px 0}.footer-inner{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}.footer-links{display:flex;gap:22px}.site-footer a{color:#e8f2f6}.section li{margin-bottom:7px}.intro{max-width:820px;color:var(--muted)}@media(max-width:850px){.hero-grid,.bio,.cards{grid-template-columns:1fr}.hero-grid{padding:50px 0}.hero-logo{min-height:250px}.portrait{max-width:370px}.section{padding:50px 0}}@media(max-width:600px){.wrap{width:min(var(--max),calc(100% - 2rem))}.header-inner{padding:12px 0}nav ul{gap:11px}nav a{font-size:.8rem}.hero h1{font-size:2.45rem}.fees{font-size:.88rem}.fees th,.fees td{padding:12px 6px}.fees .money{white-space:normal}}

/* V0.2: Onepager-Anker und Desktop-Lesbarkeit */
html {scroll-padding-top:105px}
#startseite,#profil,#arbeitsgebiete,#honorare,#kontakt {scroll-margin-top:105px}
#arbeitsgebiete .card h3 {font-size:1.22rem}
#arbeitsgebiete .intro {margin-bottom:26px}
#kontakt .lead {margin-bottom:22px}
#kontakt p {overflow-wrap:anywhere}
@media (max-width:850px) {
  html {scroll-padding-top:155px}
  #startseite,#profil,#arbeitsgebiete,#honorare,#kontakt {scroll-margin-top:155px}
}
@media (max-width:600px) {
  html {scroll-padding-top:175px}
  #startseite,#profil,#arbeitsgebiete,#honorare,#kontakt {scroll-margin-top:175px}
}

/* SV-Kaiser v0.3 – unified hero, compact official mark, and language selection */
.hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(235px,.70fr);align-items:start;gap:clamp(24px,5vw,62px);padding:64px 0 62px}
.hero h1{font-size:clamp(2.8rem,5vw,4.9rem);margin:10px 0 8px;overflow-wrap:normal}
.hero-copy{min-width:0}.hero-role{font-size:clamp(1.2rem,2vw,1.65rem);font-weight:740;line-height:1.4;margin:0 0 21px}
.hero-decree{font-size:1.08rem;max-width:63ch;margin-bottom:16px}.hero-degree{color:var(--muted);font-weight:650;margin:0}
.hero-right{display:flex;flex-direction:column;align-items:center;gap:18px;min-width:0}
.hero-portrait{max-width:320px;width:100%;background:white}
.hero-portrait img{aspect-ratio:4/4.7;object-fit:cover;object-position:top}
.appointment-mark{width:72px;height:72px;display:grid;place-items:center}
.appointment-mark img{width:72px;height:auto;object-fit:contain}
.career-details{margin-top:30px;border-top:1px solid var(--line);padding-top:15px;max-width:68ch}
.career-details summary{color:var(--accent);font-weight:700;cursor:pointer;list-style:revert}
.career-details ul{padding-left:22px;font-size:inherit;line-height:inherit}
.hero .actions{margin-top:23px}
.language-nav{display:flex;gap:7px;align-items:center}
.language-nav a{border:1px solid var(--line);padding:3px 8px;border-radius:5px;font-size:.8rem;text-decoration:none}
.language-nav a[aria-current=page]{background:var(--ink);color:#fff}
.service-scope{margin:25px 0 0;border-left:4px solid var(--accent);padding:13px 17px;background:var(--accent-light);font-size:.95rem}
@media(max-width:850px){.hero-grid{grid-template-columns:1fr}.hero-right{align-items:flex-start}.hero-portrait{max-width:300px}.appointment-mark{align-self:flex-start}}
@media(max-width:500px){.hero h1{font-size:2.65rem}.language-nav{margin-left:0}.hero-grid{padding:42px 0}}

/* V0.4: career section is permanently visible */
.career-details h2{font-size:1.3rem;line-height:1.3;color:var(--accent);margin:0 0 15px}
.career-details p{margin:0 0 12px}
.career-details ul{margin-top:20px}

/* V0.5: official mark belongs with the appointment wording */
.appointment-block{display:flex;align-items:center;gap:18px;margin:0 0 16px;max-width:70ch}
.appointment-copy{min-width:0;flex:1}
.appointment-intro{font-size:1.08rem;font-weight:400;margin:0 0 7px}
.appointment-field{font-size:1.08rem;line-height:1.45;font-weight:750;margin:0}
.appointment-gloss{font-size:.91rem;color:var(--muted);margin:7px 0 0}
.appointment-block .appointment-mark{flex:0 0 78px;width:78px;height:78px;align-self:center}
.appointment-block .appointment-mark img{width:78px;height:auto;display:block}
.hero-portrait{overflow:hidden}
@media(max-width:500px){.appointment-block{align-items:flex-start;gap:13px}.appointment-block .appointment-mark{flex-basis:62px;width:62px;height:62px}.appointment-block .appointment-mark img{width:62px}.appointment-intro,.appointment-field{font-size:1rem}}

/* V0.8: harmonischer Umbruch im offiziellen Sachgebiet und Logo naeher am Text */
.appointment-block{max-width:60ch;gap:16px}
.appointment-field .field-tail{white-space:nowrap}
@media(max-width:600px){.appointment-field .field-tail{white-space:normal}}
