:root{color-scheme:light dark;--paper:#ffffff;--surface:#f3f6fa;--ink:#192a3c;--muted:#526477;--blue:#0f5096;--accent:#0f5096;--line:#d2dce7;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{width:100%;display:block;object-fit:cover}figure,p,h1,h2,h3{margin:0}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}header{min-height:88px;padding:16px 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{font:2.5rem/1 Georgia,serif;letter-spacing:-2px;color:var(--accent)}.brand span{display:block;font:.625rem/1.5 var(--font);letter-spacing:1.8px;text-transform:uppercase;margin-top:8px}nav{display:flex;align-items:center;gap:24px;font-size:.875rem}nav a{display:inline-flex;align-items:center;min-height:44px;gap:14px}nav a:hover{text-decoration:underline;text-underline-offset:6px}.nav-contact{background:var(--blue);color:white;padding:10px 20px;border-radius:50px}.menu{display:none}.icon{width:22px;height:22px;flex-shrink:0;vertical-align:middle;stroke-width:1.65}.eyebrow{font-size:.8125rem;letter-spacing:.08em;font-weight:600;text-transform:uppercase;color:var(--muted);display:flex;align-items:center;gap:10px;margin-bottom:24px}.hero-copy{text-align:center;padding:68px 5% 48px;max-width:1200px;margin:auto}.hero-copy .eyebrow{justify-content:center}.hero h1{font:650 clamp(2.75rem,5.6vw,5.5rem)/1.06 var(--font);letter-spacing:-.055em}.hero h1 em{color:var(--accent);font-style:normal}.hero-bottom{display:flex;flex-direction:column;align-items:center;gap:25px;margin-top:28px}.hero-bottom p{font-size:1.125rem;line-height:1.65;max-width:650px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:50px;border-radius:50px;padding:14px 25px;background:var(--blue);color:#fff;font-size:1rem;font-weight:550}.button:hover,.nav-contact:hover{background:#0b4079}.button:active,.nav-contact:active{background:#082e57}.hero-photo{margin:0 24px;border-radius:var(--radius);overflow:hidden;position:relative}.hero-photo img{aspect-ratio:2;object-position:center 47%}.hero-photo figcaption{position:absolute;left:32px;bottom:28px;border-radius:14px;background:white;color:#192a3c;padding:15px 22px;font-weight:550;font-size:1rem}.section{max-width:1440px;margin:auto;padding:110px 6%}h2{font:600 clamp(2rem,3.6vw,3.5rem)/1.13 var(--font);letter-spacing:-.04em;margin-bottom:30px}em{font-family:inherit;font-style:normal;color:var(--accent)}.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center}.body-copy{color:var(--muted);margin-bottom:20px;max-width:520px}.text-link{display:inline-flex;align-items:center;min-height:44px;color:var(--accent);font-weight:550;text-decoration:underline;text-underline-offset:6px;font-size:1rem}.text-link:hover{text-decoration-thickness:2px}.partners img{aspect-ratio:1.4;border-radius:var(--radius)}.partners figcaption{padding:22px 0}.partners strong{display:block;font-size:1.25rem;font-weight:600;margin-bottom:8px}.partners span{font-size:.875rem;color:var(--muted);line-height:1.7}.wide-photo{margin:0 24px;border-radius:var(--radius);overflow:hidden;height:620px;position:relative}.wide-photo img{height:100%;object-position:center 42%}.wide-photo figcaption{position:absolute;bottom:32px;left:32px;background:#fff;color:#192a3c;padding:28px 32px;border-radius:18px;max-width:calc(100% - 64px)}.wide-photo figcaption span{display:block;font-size:.75rem;letter-spacing:.08em;margin-bottom:12px}.wide-photo strong{font-size:clamp(1.75rem,3vw,3rem);line-height:1.12;letter-spacing:-.035em;font-weight:600}.advice .section{padding-top:85px;padding-bottom:95px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:44px;margin-top:48px}.principle-icon{display:inline-flex;color:var(--accent);background:var(--surface);border-radius:18px;padding:16px}.principle-icon .icon{width:30px;height:30px}.principles h3{font-size:1.5rem;letter-spacing:-.02em;margin:22px 0 12px}.principles p{color:var(--muted)}.services{display:grid;grid-template-columns:1fr 1fr;gap:7%;background:var(--surface);border-radius:32px;padding:64px;max-width:calc(100% - 48px)}.service-intro img{height:450px;border-radius:20px;margin:32px 0 22px}.service-intro p:last-child{color:var(--muted)}.service-list{align-self:center;min-width:0}.service-list details{border-bottom:1px solid var(--line)}.service-list details:first-child{border-top:1px solid var(--line)}summary{display:flex;align-items:center;gap:16px;list-style:none;cursor:pointer;padding:24px 0;font-weight:600;font-size:1.25rem;line-height:1.4}summary::-webkit-details-marker{display:none}summary:hover{color:var(--accent)}summary:active{background:var(--paper)}summary b{margin-left:auto;font-size:1.5rem;font-weight:400;flex-shrink:0}.service-icon{color:var(--accent);display:flex;flex-shrink:0}.service-icon .icon{width:28px;height:28px}details[open] summary b{transform:rotate(45deg)}details p{padding:0 12px 24px 44px;color:var(--muted)}.service-list .text-link{margin-top:24px}.section-title{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px}.section-title h2{margin:0}.small{font-size:.875rem;color:var(--muted)}.news-list a{display:grid;grid-template-columns:110px 1fr 155px;align-items:center;gap:24px;padding:26px 0;border-top:1px solid var(--line);min-height:90px}.news-list a:last-child{border-bottom:1px solid var(--line)}.news-list h3{font-size:1.25rem;font-weight:550;letter-spacing:-.02em}.news-list a:hover h3{color:var(--accent);text-decoration:underline;text-underline-offset:5px}.news-list time{font-size:.875rem;color:var(--muted)}.pdf-label{display:flex;align-items:center;gap:9px;font-size:.875rem;color:var(--accent)}.office-banner{margin:0 24px;border-radius:var(--radius);overflow:hidden;position:relative;height:500px}.office-banner img{height:100%;object-position:center 48%}.office-banner figcaption{position:absolute;left:32px;bottom:32px;background:white;color:#192a3c;padding:28px 32px;border-radius:18px;font-size:clamp(1.75rem,3.2vw,3rem);font-weight:600;line-height:1.12;letter-spacing:-.035em}.office-banner em{color:#0f5096}.contact{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.contact-details>p{color:var(--muted);margin-bottom:24px}.contact-details>a:not(.text-link){display:flex;align-items:center;gap:16px;min-height:52px;font-size:clamp(1.125rem,2.2vw,1.75rem);font-weight:550;overflow-wrap:anywhere}.contact-details .icon{color:var(--accent)}address{font-style:normal;margin-top:28px}address>.icon{float:left;margin:4px 16px 35px 0}.contact-details .text-link{margin-top:12px}footer{background:var(--surface);padding:32px 5%;display:flex;justify-content:space-between;gap:24px;align-items:center;font-size:.875rem}footer>div:last-child{display:flex;gap:24px}footer a{display:inline-flex;align-items:center;min-height:44px}footer a:hover{text-decoration:underline}.draft{background:var(--surface);color:var(--muted);text-align:center;font-size:.75rem;padding:12px 20px}.skip{position:fixed;top:-100px;left:20px;padding:20px;background:var(--paper);z-index:10}.skip:focus{top:10px}
@media(prefers-color-scheme:dark){:root{--paper:#111b28;--surface:#1c2a3b;--ink:#edf2f7;--muted:#b8c5d4;--accent:#8dc4ff;--line:#42546b}.hero-photo figcaption,.wide-photo figcaption,.office-banner figcaption{background:#111b28;color:#edf2f7}.office-banner em{color:var(--accent)}}
@media(prefers-contrast:more){:root{--muted:var(--ink);--line:var(--ink)}a{text-decoration:underline}}
@media(max-width:1050px){header{min-height:82px}.brand{font-size:2rem}.menu{display:flex;gap:12px;align-items:center;min-width:80px;min-height:48px;justify-content:center;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--ink)}nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:20px 5%;border-bottom:1px solid var(--line);max-height:calc(100dvh - 90px);overflow:auto}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:8px}nav a{padding:10px 14px}.services{padding:48px 32px}.service-list summary{font-size:1.125rem}}
@media(max-width:780px){.hero-copy{padding:48px 6% 36px}.hero h1{font-size:clamp(2.5rem,8vw,4rem)}.hero-bottom p{font-size:1.0625rem}.hero-photo,.wide-photo,.office-banner{margin:0 16px;border-radius:20px}.hero-photo img{aspect-ratio:1.5}.section{padding:72px 6%}.about,.services,.contact{grid-template-columns:1fr;gap:32px}.about .partners{margin-top:12px}.wide-photo{height:490px}.wide-photo figcaption{left:20px;bottom:20px;padding:22px;max-width:calc(100% - 40px)}.principles{gap:26px}.services{max-width:calc(100% - 32px);padding:40px 24px}.service-intro img{height:380px}.section-title{display:block}.small{display:block;margin-top:18px}.news-list a{grid-template-columns:85px 1fr;gap:12px}.pdf-label{grid-column:2}.office-banner{height:400px}.contact-details{border-top:1px solid var(--line);padding-top:30px}footer{flex-wrap:wrap}}
@media(max-width:520px){.brand{font-size:1.875rem}.brand span{font-size:.5625rem;letter-spacing:1px}.eyebrow{font-size:.75rem}.hero-copy{padding-top:40px}.hero h1{font-size:clamp(2rem,8.6vw,2.75rem)}.hero-photo img{aspect-ratio:1.5;object-fit:contain}.principles{grid-template-columns:1fr;gap:32px}.principles article{display:grid;grid-template-columns:60px 1fr;column-gap:18px}.principle-icon{grid-row:1/3;align-self:start;padding:15px}.principles h3{margin:0 0 8px;font-size:1.25rem}.principles p{grid-column:2}.wide-photo{height:410px}.wide-photo figcaption{position:absolute}.wide-photo img{object-position:45% center}.service-list summary{font-size:1.125rem;gap:12px;overflow-wrap:anywhere}.service-intro img{height:310px}.news-list a{grid-template-columns:1fr}.pdf-label{grid-column:1}.news-list h3{font-size:1.125rem}.office-banner figcaption{left:20px;bottom:20px;right:20px;font-size:1.75rem;padding:22px}.contact-details>a:not(.text-link){font-size:1.125rem;gap:12px}footer{align-items:start;flex-direction:column}.section{padding-top:60px;padding-bottom:60px}.services{padding:36px 22px}h2{font-size:2rem}.hero .button{font-size:1rem}.contact h2{line-height:1.2}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Original-Procurator-Logo: unverändert, mit weißer Fläche auch im Dark Mode. */
header .brand{display:flex;align-items:center;flex:0 1 287px;min-width:0;max-width:287px;min-height:44px;background:#fff;padding:6px 8px;border-radius:6px;line-height:1;letter-spacing:normal}header .brand img{display:block;width:100%;height:auto;object-fit:contain}@media(max-width:520px){header .brand{flex-basis:210px;max-width:210px;padding:4px}header{gap:14px}.menu{flex-shrink:0;min-width:72px}}

/* Einheitliches Inhaltsraster: alle Textabschnitte teilen dieselben Kanten. */
:root{--content-max:1440px;--content-gutter:clamp(24px,5vw,72px)}
.section,.services{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:var(--content-gutter)}
.services{border-radius:0;background:transparent;position:relative;isolation:isolate}
.services::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--surface)}
.hero-copy{width:100%;max-width:var(--content-max);padding-inline:var(--content-gutter)}
header,footer{padding-inline:max(var(--content-gutter),calc((100% - var(--content-max)) / 2 + var(--content-gutter)))}
@media(max-width:780px){.section,.services{max-width:var(--content-max);padding-inline:var(--content-gutter)}}
@media(max-width:520px){.section,.services{padding-inline:var(--content-gutter)}}

/* Bildfenster folgen den Textkanten des gemeinsamen Inhaltsrasters. */
:root{--photo-margin:24px}
.hero-photo figcaption,.wide-photo figcaption,.office-banner figcaption{
 left:max(calc(var(--content-gutter) - var(--photo-margin)),calc((100vw - var(--content-max)) / 2 + var(--content-gutter) - var(--photo-margin)));
 right:auto;bottom:32px;position:absolute;
 max-width:calc(100% - 2 * (var(--content-gutter) - var(--photo-margin)));
 padding:28px 32px;border-radius:18px;background:#fff;color:#192a3c;
 font:600 clamp(1.75rem,3vw,3rem)/1.12 var(--font);letter-spacing:-.035em;
}
.hero-photo figcaption span,.wide-photo figcaption span{
 display:block;font-size:.75rem;line-height:1.5;letter-spacing:.08em;font-weight:600;margin-bottom:12px;
}
.hero-photo figcaption strong,.wide-photo figcaption strong{font:inherit}
@media(prefers-color-scheme:dark){
 .hero-photo figcaption,.wide-photo figcaption,.office-banner figcaption{background:#111b28;color:#edf2f7}
}
@media(max-width:780px){
 :root{--photo-margin:16px}
 .hero-photo figcaption,.wide-photo figcaption,.office-banner figcaption{bottom:20px;padding:22px;font-size:1.75rem}

}
@media(max-width:520px){
 .hero-photo figcaption,.wide-photo figcaption,.office-banner figcaption{font-size:1.5rem;padding:20px}
}

/* Entwurf 05: dezenter Foto-Zoom für Maus und Trackpad. */
.photo-frame{overflow:hidden;border-radius:var(--radius)}
.service-intro .service-photo{border-radius:20px;margin:32px 0 22px}
.service-intro .service-photo img{margin:0}
.hero-photo figcaption,.wide-photo figcaption,.office-banner figcaption{z-index:1}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .hero-photo>img,.wide-photo>img,.office-banner>img,.photo-frame>img{
  transition:transform 650ms cubic-bezier(.2,.65,.3,1);
  transform:scale(1);transform-origin:center;
 }
 .hero-photo:hover>img,.wide-photo:hover>img,.office-banner:hover>img,.photo-frame:hover>img{
  transform:scale(1.035);
 }
}

/* Entwurf 06: zurückhaltendes Feedback für Buttons und begleitende Icons. */
@media(hover:hover) and (pointer:fine){
 .menu:hover{background:var(--paper);border-color:var(--accent)}
 .button:hover,.nav-contact:hover{box-shadow:0 4px 12px rgba(15,80,150,.16)}
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .button,.nav-contact,.menu{transition:background-color 180ms ease,border-color 180ms ease,box-shadow 180ms ease,transform 180ms ease}
 .button:hover,.nav-contact:hover,.menu:hover{transform:translateY(-2px)}
 .button:active,.nav-contact:active,.menu:active{transform:translateY(0);box-shadow:none}
 .icon{transition:transform 200ms ease}
 a:hover>.icon,summary:hover .icon,.news-list a:hover .icon{transform:translateX(2px)}
 .principle-icon:hover .icon,.eyebrow .icon:hover{transform:scale(1.06)}
}

/* Smooth feedback for the single-open accordion. */
.service-list details summary b{transition:transform 280ms cubic-bezier(.22,.61,.36,1)}
.service-list details[data-ep-open="true"] summary b{transform:rotate(45deg)}
.service-list details[data-ep-open="false"] summary b{transform:rotate(0)}
@media(prefers-reduced-motion:reduce){.service-list details summary b{transition:none}}
