:root{--green:#061b17;--green-2:#0a2b24;--green-3:#123d34;--gold:#c8a765;--gold-2:#e1ca91;--cream:#f2eee5;--cream-2:#faf8f3;--ink:#14231f;--muted:#66736d;--line:rgba(20,35,31,.16);--white:#fff;--header-bg:rgba(6,27,23,.82);--shadow:0 24px 70px rgba(0,0,0,.14);--ease:cubic-bezier(.22,1,.36,1)}
:root[data-theme="light"]{--green:#f0ece3;--green-2:#e7e0d4;--green-3:#d8ccba;--cream:#12221e;--cream-2:#0d1c18;--ink:#edf2ef;--muted:#a7b2ad;--line:rgba(255,255,255,.14);--header-bg:rgba(10,28,23,.86)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--cream-2);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.02;letter-spacing:-.035em;margin:0 0 24px}h1{font-size:clamp(3.25rem,7.5vw,7.4rem);max-width:12ch}h2{font-size:clamp(2.6rem,5vw,5.25rem)}h3{font-size:clamp(1.65rem,2.35vw,2.55rem)}p{margin:0 0 22px}.skip-link{position:fixed;left:20px;top:-80px;z-index:9999;background:var(--gold);color:#14231f;padding:12px 18px;font-weight:700}.skip-link:focus{top:20px}.page-progress{position:fixed;inset:0 0 auto;height:3px;background:var(--gold);z-index:1000;transform:scaleX(0);transform-origin:left;pointer-events:none}.site-header{height:104px;padding:17px 3.5vw;display:flex;align-items:center;gap:28px;position:absolute;z-index:100;width:100%;color:#fff;border-bottom:1px solid rgba(255,255,255,.16);transition:height .35s var(--ease),background .35s,border-color .35s,box-shadow .35s}.site-header.scrolled{position:fixed;height:78px;background:var(--header-bg);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border-color:rgba(255,255,255,.1);box-shadow:0 12px 35px rgba(0,0,0,.14)}.brand{display:flex;align-items:center;gap:15px;margin-right:auto;min-width:275px}.brand-mark{width:60px;height:60px;display:grid;place-items:center;transition:.35s}.scrolled .brand-mark{width:48px;height:48px}.brand img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(0,0,0,.25))}.brand-copy{display:flex;flex-direction:column}.brand b{letter-spacing:.14em;font-size:14px;line-height:1.3}.brand small{opacity:.72;font-size:11px;letter-spacing:.02em}.site-header nav{display:flex;gap:clamp(12px,1.45vw,25px);align-items:center;font-size:13px}.site-header nav>a:not(.nav-cta){padding:13px 0;position:relative}.site-header nav>a:not(.nav-cta)::after{content:"";position:absolute;left:0;right:100%;bottom:7px;height:1px;background:var(--gold);transition:right .3s var(--ease)}.site-header nav>a:hover::after,.site-header nav>a.active::after{right:0}.nav-cta{border:1px solid rgba(255,255,255,.42);padding:11px 15px!important;display:flex;gap:16px;align-items:center;transition:.3s}.nav-cta:hover{background:var(--gold);border-color:var(--gold);color:#10201c}.nav-cta i{font-style:normal}.header-tools{display:flex;align-items:center;gap:14px}.langs{display:flex;gap:7px;font-size:10px}.langs a{opacity:.45;padding:4px 2px}.langs a:hover,.langs .active{opacity:1;color:var(--gold)}.theme-toggle,.menu{border:0;color:#fff;background:transparent;cursor:pointer}.theme-toggle{width:34px;height:34px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center}.menu{display:none;width:44px;height:44px;position:relative}.menu span{position:absolute;width:24px;height:1px;background:#fff;left:10px;top:18px;transition:.3s}.menu span+span{top:26px;width:17px;left:17px}.menu.open span{top:22px;transform:rotate(45deg)}.menu.open span+span{width:24px;left:10px;transform:rotate(-45deg)}
.hero{height:100svh;min-height:760px;position:relative;color:#fff;display:flex;align-items:flex-end;overflow:hidden;background:#061b17}.hero>img{position:absolute;inset:-4%;width:108%;height:108%;object-fit:cover;animation:heroZoom 18s ease-out both}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,18,14,.94) 0%,rgba(5,26,21,.75) 45%,rgba(5,26,21,.18) 75%),linear-gradient(0deg,rgba(2,18,14,.86),transparent 62%)}.hero-noise{position:absolute;inset:0;opacity:.12;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E")}.hero-copy{position:relative;z-index:3;max-width:980px;padding:0 6.5vw 10vh}.hero-copy p{font-size:clamp(1.05rem,1.5vw,1.3rem);max-width:690px;color:rgba(238,245,241,.84);line-height:1.6}.eyebrow{text-transform:uppercase;letter-spacing:.22em;color:var(--gold);font-size:11px;font-weight:700;display:flex;align-items:center;gap:14px;margin-bottom:25px}.eyebrow::before{content:"";width:38px;height:1px;background:currentColor}.actions{display:flex;gap:13px;margin-top:38px}.btn{display:inline-flex;padding:15px 22px;border:1px solid transparent;font-weight:700;font-size:13px;cursor:pointer;align-items:center;gap:35px;transition:transform .3s var(--ease),background .3s,border-color .3s}.btn:hover{transform:translateY(-3px)}.btn i{font-style:normal;font-size:17px}.gold{background:var(--gold);color:#12211d}.gold:hover{background:var(--gold-2)}.ghost{border-color:rgba(255,255,255,.48);color:#fff}.ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}.darkbtn{background:#10251f;color:#fff}.hero-fact{position:absolute;right:5vw;bottom:6.5vh;z-index:3;display:flex;flex-direction:column;border-left:2px solid var(--gold);padding-left:18px}.hero-fact b{font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--gold)}.hero-fact a{font-family:Georgia,serif;font-size:23px}.hero-aside{position:absolute;z-index:3;right:6vw;top:29%;padding:20px 24px;border-top:1px solid rgba(255,255,255,.35);border-bottom:1px solid rgba(255,255,255,.2);min-width:250px}.hero-aside span{color:var(--gold);font-size:11px;text-transform:uppercase;letter-spacing:.16em}.hero-aside p{font-family:Georgia,serif;font-size:18px;line-height:1.4;margin:8px 0}.scroll-cue{position:absolute;z-index:3;left:6.5vw;bottom:3.5vh;text-transform:uppercase;letter-spacing:.16em;font-size:9px;display:flex;align-items:center;gap:12px;opacity:.72}.scroll-cue span{height:42px;width:1px;background:rgba(255,255,255,.6);position:relative;overflow:hidden}.scroll-cue span::after{content:"";position:absolute;inset:-100% 0 auto;height:100%;background:var(--gold);animation:scrollLine 2s infinite}
.section{padding:clamp(85px,10vw,150px) 7vw;position:relative}.section-light{background:var(--cream)}.intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:10vw}.intro-title{position:relative}.intro-copy{max-width:720px}.lead{font-size:clamp(1.2rem,1.8vw,1.55rem);line-height:1.62}.intro blockquote{font-family:Georgia,serif;font-size:clamp(1.45rem,2.3vw,2.15rem);line-height:1.35;border-left:2px solid var(--gold);padding:3px 0 3px 26px;margin:45px 0;color:var(--ink)}.section-number{position:absolute;left:0;bottom:-30px;font-family:Georgia,serif;font-size:90px;color:transparent;-webkit-text-stroke:1px var(--line);opacity:.6}.text-link{display:inline-flex;align-items:center;gap:20px;color:var(--gold);font-size:13px;font-weight:700}.text-link i{font-style:normal;transition:transform .3s}.text-link:hover i{transform:translateX(5px)}.dark{background:var(--green);color:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:58px;gap:50px}.section-head h2{max-width:13ch}.section-meta{display:flex;flex-direction:column;align-items:flex-end;gap:40px}.section-meta>span{font-family:Georgia,serif;font-size:72px;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(200,167,101,.35)}.cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.16);border-left:1px solid rgba(255,255,255,.16)}.card{padding:34px 35px 38px;border-right:1px solid rgba(255,255,255,.16);border-bottom:1px solid rgba(255,255,255,.16);min-height:325px;position:relative;overflow:hidden;transition:transform .4s var(--ease),background .4s}.card::before{content:"";position:absolute;width:340px;height:340px;border-radius:50%;left:calc(var(--mx,50%) - 170px);top:calc(var(--my,50%) - 170px);background:radial-gradient(circle,rgba(200,167,101,.12),transparent 68%);opacity:0;transition:opacity .3s;pointer-events:none}.card:hover::before{opacity:1}.card:hover{background:var(--green-2);transform:translateY(-5px)}.card-top{display:flex;justify-content:space-between;color:var(--gold);font-size:11px}.card-top i{font-style:normal;font-size:20px;opacity:.4;transition:.3s}.card:hover .card-top i{opacity:1;transform:rotate(45deg)}.card h3{font-size:clamp(1.8rem,2.5vw,2.7rem);margin-top:52px;position:relative}.card p{color:rgba(225,235,231,.68);font-size:14px;position:relative}.card-line{position:absolute;left:35px;right:100%;bottom:0;height:2px;background:var(--gold);transition:right .45s var(--ease)}.card:hover .card-line{right:35px}.cards-light{border-color:var(--line)}.cards-light .card{border-color:var(--line);background:rgba(255,255,255,.22);color:var(--ink)}.cards-light .card p{color:var(--muted)}.team-home{background:var(--cream-2)}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.person{display:block}.person-image{position:relative;overflow:hidden;background:#d9d5cb}.person img{width:100%;aspect-ratio:4/5.3;object-fit:cover;filter:grayscale(1) contrast(.97);transition:filter .55s,transform .7s var(--ease)}.person-image::after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(2,18,14,.78));opacity:0;transition:.4s}.person-image span{position:absolute;z-index:2;left:22px;bottom:20px;color:#fff;font-size:12px;opacity:0;transform:translateY(8px);transition:.4s}.person:hover img{filter:grayscale(0);transform:scale(1.035)}.person:hover .person-image::after,.person:hover .person-image span{opacity:1;transform:none}.person>div:last-child{padding:22px 2px}.person h3{font-size:clamp(1.55rem,2vw,2.15rem);margin-bottom:7px}.person p{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.principle{display:grid;grid-template-columns:.35fr 1fr;align-items:center;background:var(--gold);color:#12211d;padding:70px 7vw;gap:7vw}.principle-mark{font-family:Georgia,serif;font-size:clamp(8rem,18vw,16rem);line-height:.7;opacity:.3}.principle p{font-family:Georgia,serif;font-size:clamp(2rem,4.5vw,4.8rem);line-height:1.1;max-width:20ch;margin:0}.principle .eyebrow{color:#12211d}.contact-band{background:var(--green-2);color:#fff;padding:clamp(75px,9vw,130px) 7vw;display:flex;justify-content:space-between;align-items:end;gap:60px}.contact-band h2{margin:0}.contact-band h2 em{font-weight:400;color:var(--gold)}.contact-actions{display:flex;align-items:center;gap:38px}.contact-phone{display:flex;flex-direction:column;font-family:Georgia,serif;font-size:23px}.contact-phone small{font-family:Arial,sans-serif;text-transform:uppercase;letter-spacing:.13em;font-size:9px;color:var(--gold)}
.page-hero{background:var(--green);color:#fff;padding:210px 7vw 105px;position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;width:46vw;height:46vw;border:1px solid rgba(200,167,101,.16);border-radius:50%;right:-12vw;top:-20vw;box-shadow:0 0 0 7vw rgba(200,167,101,.035),0 0 0 14vw rgba(200,167,101,.02)}.page-hero>*{position:relative;z-index:1}.page-hero p{max-width:750px;font-size:20px}.prose{max-width:980px;margin:auto}.prose h2{margin-top:65px}.profile{display:grid;grid-template-columns:1fr 1fr;min-height:100vh;background:var(--cream-2)}.profile>img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.profile>div{padding:180px 7vw 80px;display:flex;flex-direction:column;justify-content:center}.profile .role{font-weight:700;color:var(--muted)}.publication{display:grid;grid-template-columns:110px 1fr;padding:38px 0;border-bottom:1px solid var(--line);transition:padding .3s}.publication:hover{padding-left:15px}.publication>span{color:var(--gold);font-weight:700}.contact-page{display:grid;grid-template-columns:1fr 1fr;gap:7vw}.contact-page form{display:grid;gap:18px;background:var(--cream);padding:38px}.contact-page label{display:grid;gap:7px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.contact-page input,.contact-page textarea{padding:14px;border:1px solid var(--line);background:var(--cream-2);color:var(--ink);font:inherit}.contact-page input:focus,.contact-page textarea:focus{outline:2px solid rgba(200,167,101,.35);border-color:var(--gold)}.check{grid-template-columns:auto 1fr!important;align-items:start}.map iframe{width:100%;height:clamp(380px,48vw,560px);border:0;display:block;filter:grayscale(.18) contrast(.98)}.map-embed{position:relative;overflow:hidden;background:var(--green)}.map-route-link{margin-top:16px}.map-embed:focus-within{outline:2px solid var(--gold);outline-offset:4px}.notice{padding:13px;background:#f6dada;color:#4a1f1f}.success{background:#dff0e7;color:#16392a}
.site-footer{background:#051a15;color:#d8e0dc;padding:68px 7vw 30px;display:grid;grid-template-columns:1.55fr 1fr 1fr .75fr;gap:45px}.footer-brand{display:flex;align-items:flex-start;gap:18px}.footer-brand-copy--lockup{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:420px;padding:0;border:none;background:none;box-shadow:none}.footer-brand-lockup{display:block;width:min(100%,356px);height:auto;object-fit:contain;filter:none;background:transparent}.footer-brand img{object-fit:contain}.footer-brand b{letter-spacing:.13em}.footer-brand p{font-size:12px;opacity:.58;margin:4px 0}.footer-column{display:flex;flex-direction:column;gap:6px;font-size:13px}.footer-column>span{color:var(--gold);text-transform:uppercase;letter-spacing:.14em;font-size:9px;margin-bottom:8px}.footer-column p{margin:0}.footer-column a:hover{color:var(--gold)}.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:23px;margin-top:25px;display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.1em;opacity:.58}.reveal{opacity:0;transform:translateY(28px);transition:opacity .85s var(--ease),transform .85s var(--ease);transition-delay:var(--delay,0ms)}.reveal.in{opacity:1;transform:none}@keyframes heroZoom{from{transform:scale(1.08)}to{transform:scale(1)}}@keyframes scrollLine{0%{transform:translateY(0)}100%{transform:translateY(200%)}}
@media(max-width:1160px){.site-header nav{gap:13px}.brand{min-width:auto}.brand small{display:none}.hero-aside{display:none}.cards{grid-template-columns:repeat(2,1fr)}.team-grid{grid-template-columns:repeat(2,1fr)}.site-footer{grid-template-columns:1.5fr 1fr 1fr}.site-footer>.footer-column:nth-of-type(3){display:none}}
@media(max-width:900px){.site-header{height:86px;padding:13px 5vw}.site-header.scrolled{height:72px}.site-header nav{display:flex;position:fixed;inset:0;background:rgba(4,20,16,.98);padding:125px 8vw 50px;flex-direction:column;align-items:flex-start;gap:6px;font-family:Georgia,serif;font-size:clamp(2rem,8vw,3rem);transform:translateX(100%);opacity:0;transition:transform .45s var(--ease),opacity .3s;z-index:-1}.site-header nav.open{transform:none;opacity:1}.site-header nav>a:not(.nav-cta){padding:6px 0}.nav-cta{font-family:Arial,sans-serif;font-size:14px;margin-top:20px}.menu{display:block;z-index:2}.langs{display:none}.theme-toggle{display:none}.hero{min-height:680px}.hero-copy{padding:0 6vw 11vh}.hero-fact{display:none}.scroll-cue{display:none}.intro,.profile,.contact-page{grid-template-columns:1fr}.intro{gap:55px}.section-number{display:none}.section-head{align-items:flex-start}.section-meta>span{display:none}.cards{grid-template-columns:1fr 1fr}.profile>img{height:72vh}.profile>div{padding:80px 7vw}.principle{grid-template-columns:1fr}.principle-mark{display:none}.contact-band{align-items:flex-start;flex-direction:column}.site-footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;gap:15px}.footer-bottom span:nth-child(2){display:none}}
@media(max-width:600px){h1{font-size:clamp(3rem,15vw,4.8rem)}h2{font-size:clamp(2.45rem,12vw,4rem)}.brand-mark{width:48px;height:48px}.brand b{font-size:11px}.hero{min-height:700px}.hero-copy p{font-size:1rem}.actions{flex-direction:column;align-items:stretch}.btn{justify-content:space-between}.section{padding:78px 6vw}.section-head{flex-direction:column;margin-bottom:38px}.section-meta{align-items:flex-start;gap:0}.cards,.team-grid{grid-template-columns:1fr}.card{min-height:280px}.person img{aspect-ratio:4/4.8}.principle{padding:65px 6vw}.contact-band{padding:75px 6vw}.contact-actions{align-items:flex-start;flex-direction:column}.site-footer{grid-template-columns:1fr;padding:55px 6vw 24px}.footer-brand{grid-column:auto}.footer-bottom{grid-column:auto;flex-direction:column}.publication{grid-template-columns:1fr;gap:8px}.page-hero{padding:165px 6vw 75px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Phase 1 final – unified premium page system */
.page-hero-rich{min-height:620px;padding:190px 7vw 105px;display:flex;align-items:flex-end;position:relative;overflow:hidden;background:linear-gradient(120deg,#061b17 0%,#0a2b24 58%,#123d34 100%);color:#fff}
.page-hero-rich::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 78% 28%,rgba(200,167,101,.17),transparent 31%),linear-gradient(90deg,transparent 49.9%,rgba(255,255,255,.05) 50%,transparent 50.1%);pointer-events:none}
.page-hero-rich::after{content:"";position:absolute;width:560px;height:560px;border:1px solid rgba(200,167,101,.18);border-radius:50%;right:-145px;bottom:-270px;box-shadow:0 0 0 80px rgba(200,167,101,.025),0 0 0 160px rgba(200,167,101,.018)}
.page-hero-inner{position:relative;z-index:2;max-width:980px}.page-hero-rich h1{font-size:clamp(3.7rem,7.2vw,7.3rem);margin-bottom:28px}.page-hero-rich p{max-width:710px;font-size:clamp(1.05rem,1.45vw,1.28rem);color:rgba(255,255,255,.72)}
.page-hero-index{position:absolute;z-index:2;right:7vw;bottom:75px;font-family:Georgia,serif;font-size:clamp(4.8rem,10vw,9rem);line-height:1;color:transparent;-webkit-text-stroke:1px rgba(200,167,101,.32)}
.editorial-grid{display:grid;grid-template-columns:minmax(220px,.55fr) 1.45fr;gap:9vw}.editorial-aside{border-top:1px solid var(--line);padding-top:24px}.editorial-aside p{font-family:Georgia,serif;font-size:1.3rem;line-height:1.45}.editorial-main{max-width:860px}.quote-panel{display:grid;grid-template-columns:auto 1fr;gap:26px;border-top:1px solid var(--line);margin-top:60px;padding-top:45px}.quote-panel>span{font-family:Georgia,serif;font-size:5.5rem;line-height:.8;color:var(--gold)}.quote-panel blockquote{font-family:Georgia,serif;font-size:clamp(1.7rem,3vw,3rem);line-height:1.3;margin:0}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.17);border-left:1px solid rgba(255,255,255,.17)}.value-card{padding:46px 38px 52px;border-right:1px solid rgba(255,255,255,.17);border-bottom:1px solid rgba(255,255,255,.17);min-height:330px}.value-card b{color:var(--gold);font-size:11px;letter-spacing:.18em}.value-card h3{margin-top:70px}.value-card p{color:rgba(255,255,255,.66)}
.split-feature{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:center}.feature-image{position:relative}.feature-image::before{content:"";position:absolute;inset:28px -28px -28px 28px;border:1px solid var(--gold);z-index:0}.feature-image img{position:relative;z-index:1;width:100%;aspect-ratio:1.25/1;object-fit:cover;filter:saturate(.72) contrast(1.02)}.feature-copy h2{max-width:10ch}.feature-copy p{font-size:1.08rem;max-width:610px;color:var(--muted)}
.services-index{display:grid;grid-template-columns:.72fr 1.28fr;gap:8vw}.services-intro{position:sticky;top:125px;align-self:start}.services-intro h2{font-size:clamp(2.8rem,4.5vw,5rem)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:34px 6px;border-bottom:1px solid var(--line);transition:padding .35s var(--ease),background .35s}.service-row:hover{padding-left:22px;padding-right:22px;background:rgba(200,167,101,.08)}.service-row h3{margin:0 0 8px;font-size:clamp(1.7rem,2.7vw,2.8rem)}.service-row p{margin:0;color:var(--muted);max-width:650px}.service-row>i{font-style:normal;font-size:25px;color:var(--gold);transition:transform .35s}.service-row:hover>i{transform:translate(5px,-5px)}
.service-detail{display:grid;grid-template-columns:330px minmax(0,760px);justify-content:center;gap:9vw}.service-sidebar{align-self:start;position:sticky;top:120px}.service-sidebar nav{border-top:1px solid var(--line)}.service-sidebar a{display:block;padding:16px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted);transition:.25s}.service-sidebar a:hover,.service-sidebar a.active{color:var(--gold);padding-left:10px}.service-body .lead{font-family:Georgia,serif;font-size:clamp(1.65rem,2.7vw,2.55rem);line-height:1.46}.service-callout{margin:55px 0;padding:34px;border-left:2px solid var(--gold);background:rgba(200,167,101,.08)}.service-callout span{display:block;font-weight:700;margin-bottom:8px}.service-callout p{margin:0;color:var(--muted)}
.team-page{padding-top:95px}.team-intro{display:flex;justify-content:space-between;align-items:end;margin-bottom:60px}.team-grid-full{grid-template-columns:repeat(3,1fr);gap:52px 25px}.team-grid-full .person:nth-child(3n+2){transform:translateY(45px)}
.profile-premium{min-height:100svh;padding:155px 8vw 90px;display:grid;grid-template-columns:minmax(320px,.82fr) 1.18fr;gap:9vw;align-items:center;background:var(--cream)}.profile-visual{position:relative;max-width:600px}.profile-visual::before{content:"";position:absolute;inset:-18px 18px 18px -18px;border:1px solid var(--gold)}.profile-visual img{position:relative;width:100%;max-height:700px;object-fit:cover;filter:grayscale(.85)}.profile-caption{position:absolute;right:-22px;bottom:36px;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.2em;font-size:9px;color:var(--gold)}.profile-content h1{font-size:clamp(3.5rem,7vw,7rem)}.profile-content .role{font-family:Georgia,serif;font-size:1.45rem;color:var(--gold)}.profile-rule{width:70px;height:1px;background:var(--gold);margin:32px 0}.profile-content .lead{max-width:720px;color:var(--muted)}.profile-actions{display:flex;align-items:center;gap:35px;margin-top:42px}
.publications-page{display:grid;grid-template-columns:.62fr 1.38fr;gap:8vw}.publications-intro{position:sticky;top:120px;align-self:start}.publication-list{border-top:1px solid var(--line)}.publication-premium{display:grid;grid-template-columns:110px 1fr auto;align-items:start;gap:30px;padding:42px 8px;border-bottom:1px solid var(--line);transition:.35s}.publication-premium:hover{padding-left:24px;background:rgba(200,167,101,.07)}.publication-meta{display:flex;flex-direction:column;color:var(--gold)}.publication-meta span{font-family:Georgia,serif;font-size:1.5rem}.publication-premium h3{margin:0 0 14px;font-size:clamp(1.7rem,2.6vw,2.6rem)}.publication-premium p{margin:0;color:var(--muted)}.publication-premium>i{font-style:normal;color:var(--gold);font-size:22px}
.contact-page{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;background:var(--cream)}.contact-info h2,.contact-form h2{font-size:clamp(2.7rem,4.5vw,4.8rem)}.contact-detail{display:grid;grid-template-columns:100px 1fr;border-top:1px solid var(--line);padding:22px 0}.contact-detail small{text-transform:uppercase;letter-spacing:.14em;color:var(--gold);font-size:9px}.contact-detail p{margin:0}.map-consent{height:250px;margin-top:35px;background:linear-gradient(135deg,var(--green),var(--green-3));display:grid;place-items:center;color:#fff;text-align:center;padding:30px;position:relative;overflow:hidden}.map-consent::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(200,167,101,.22),transparent 45%)}.map-consent>div{position:relative}.map-consent p{color:rgba(255,255,255,.64)}.contact-form{padding:55px;background:var(--cream-2);box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label:not(.check){display:block;margin-bottom:22px}.contact-form label>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:8px;color:var(--muted)}.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:13px 3px;color:var(--ink);outline:0;transition:border-color .25s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--gold)}.contact-form textarea{resize:vertical}.check{display:flex;gap:12px;align-items:flex-start;margin:24px 0 30px;font-size:12px;color:var(--muted)}.check input{width:auto;margin-top:4px;accent-color:var(--gold)}.notice{padding:16px 18px;margin-bottom:24px;border-left:3px solid #a34b45;background:rgba(163,75,69,.09)}.notice.success{border-color:#4b856c;background:rgba(75,133,108,.1)}
.legal-hero{min-height:470px}.legal-layout{display:grid;grid-template-columns:280px minmax(0,800px);justify-content:center;gap:9vw}.legal-nav{position:sticky;top:120px;align-self:start}.legal-nav a{display:block;padding:15px 0;border-bottom:1px solid var(--line);color:var(--muted)}.legal-nav a.active{color:var(--gold)}.legal-content{font-size:1rem;line-height:1.85}.legal-text{white-space:normal}.legal-note{margin-top:45px;padding:25px 28px;border-left:2px solid var(--gold);background:rgba(200,167,101,.08)}.legal-note p{margin:7px 0 0;color:var(--muted)}
.page-transition{position:fixed;inset:0;background:var(--green);z-index:9998;transform:scaleY(0);transform-origin:bottom;pointer-events:none}.page-transition.is-leaving{animation:pageLeave .48s var(--ease) forwards}@keyframes pageLeave{to{transform:scaleY(1)}}
@media(max-width:980px){.editorial-grid,.services-index,.service-detail,.publications-page,.contact-page,.legal-layout,.split-feature{grid-template-columns:1fr}.services-intro,.service-sidebar,.publications-intro,.legal-nav{position:static}.value-grid{grid-template-columns:1fr}.team-grid-full{grid-template-columns:repeat(2,1fr)}.team-grid-full .person:nth-child(3n+2){transform:none}.profile-premium{grid-template-columns:1fr;padding-top:140px}.profile-visual{max-width:520px}.contact-form{padding:35px}.page-hero-index{opacity:.42}.legal-nav{display:flex;gap:22px}.legal-nav .eyebrow{display:none}}
@media(max-width:640px){.page-hero-rich{min-height:540px;padding:155px 6vw 70px}.page-hero-index{right:5vw;bottom:24px}.editorial-grid{gap:50px}.quote-panel{grid-template-columns:1fr;gap:0}.quote-panel>span{font-size:4rem}.service-row{grid-template-columns:45px 1fr auto;gap:12px}.service-row p{display:none}.team-grid-full{grid-template-columns:1fr}.profile-premium{padding:130px 6vw 75px}.profile-actions{align-items:flex-start;flex-direction:column}.publication-premium{grid-template-columns:75px 1fr}.publication-premium>i{display:none}.form-grid{grid-template-columns:1fr}.contact-form{padding:28px 22px}.contact-detail{grid-template-columns:1fr;gap:8px}.feature-image::before{inset:14px -12px -12px 14px}.legal-layout{gap:45px}}

/* Kontaktseite ohne Formular */
.contact-page-simple {
  grid-template-columns: minmax(0, 1fr) minmax(280px, .72fr);
  align-items: stretch;
}
.contact-page-simple .contact-info,
.contact-page-simple .map {
  min-height: 100%;
}
.contact-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: .8rem;
  margin-top: 2rem;
}
@media (max-width: 820px) {
  .contact-page-simple { grid-template-columns: 1fr; }
}
.publication-filter{display:flex;align-items:end;gap:14px;padding:22px 0 38px;border-bottom:1px solid var(--line);margin-bottom:25px;flex-wrap:wrap}.publication-filter label{display:grid;gap:7px;min-width:230px}.publication-filter label span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.publication-filter input,.publication-filter select{min-height:48px;border:1px solid var(--line);background:var(--cream);color:var(--ink);padding:10px 13px}.publication-premium{grid-template-columns:auto minmax(0,1fr) auto}.publication-image{width:180px;height:125px;overflow:hidden}.publication-image img{width:100%;height:100%;object-fit:cover;transition:transform .45s var(--ease)}.publication:hover .publication-image img{transform:scale(1.035)}.publication-category{display:block;margin-bottom:8px;color:var(--gold);font-size:10px;text-transform:uppercase;letter-spacing:.15em}.publication-byline{display:flex;gap:18px;color:var(--muted);font-size:12px}.publication-arrow{font-style:normal;font-size:24px}.publication.is-featured{border-left:3px solid var(--gold);padding-left:26px}.publication-empty{padding:28px 0;border-top:1px solid var(--line)}.publication-detail-hero h1{max-width:16ch;font-size:clamp(2.8rem,6vw,6rem)}.publication-detail-meta{display:flex;gap:20px;margin-top:28px;color:rgba(255,255,255,.68);font-size:13px}.publication-detail{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,320px);gap:10vw;align-items:start}.publication-article{font-size:1.08rem;line-height:1.82}.publication-article figure{margin:0 0 45px}.publication-article figure img{width:100%;max-height:520px;object-fit:cover}.publication-downloads{display:flex;gap:12px;flex-wrap:wrap;margin-top:42px}.publication-aside{position:sticky;top:120px;border-top:1px solid var(--line);padding-top:24px}
@media(max-width:850px){.publication-premium{grid-template-columns:1fr}.publication-image{width:100%;height:220px}.publication-detail{grid-template-columns:1fr}.publication-aside{position:static}.publication-filter label{min-width:100%;flex:1}}


/* Bedienbarkeit mit Tastatur und Hilfstechnologien */
:focus-visible{outline:3px solid #f4c96b;outline-offset:4px}
.site-header a:focus-visible,.site-header button:focus-visible{border-radius:4px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
[aria-current="page"]{text-decoration-thickness:2px;text-underline-offset:7px}
button:disabled,[aria-disabled="true"]{cursor:not-allowed}
@media (forced-colors:active){.page-progress{background:Highlight}.card,.person,.panel{border:1px solid CanvasText}.nav-cta{border:1px solid ButtonText}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.page-transition,.page-progress{display:none!important}.reveal{opacity:1!important;transform:none!important}}

/* 2026 – Lesbarkeits- und Oberflächenüberarbeitung */
.site-header{
  position:absolute;
  top:0;
  min-height:96px;
  height:auto;
  padding:14px clamp(22px,4vw,64px);
  background:linear-gradient(180deg,rgba(3,18,15,.96),rgba(4,24,20,.88));
  border-bottom:1px solid rgba(255,255,255,.16);
  box-shadow:0 12px 34px rgba(0,0,0,.18);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
}
.site-header.scrolled{
  min-height:76px;
  height:auto;
  background:rgba(4,24,20,.96);
  box-shadow:0 10px 32px rgba(0,0,0,.24);
}
.brand{min-width:250px;gap:13px;text-shadow:0 2px 8px rgba(0,0,0,.4)}
.brand b{font-size:14px;font-weight:700;color:#fff}
.brand small{font-size:11px;color:rgba(255,255,255,.74);opacity:1}
.site-header nav{
  gap:clamp(15px,1.6vw,28px);
  font-size:14px;
  font-weight:700;
  text-shadow:0 2px 9px rgba(0,0,0,.55);
}
.site-header nav>a:not(.nav-cta){padding:14px 1px;color:#fff}
.site-header nav>a:not(.nav-cta)::after{height:2px;bottom:8px}
.site-header nav>a:not(.nav-cta):hover,
.site-header nav>a:not(.nav-cta).active{color:#f3dfad}
.nav-cta{
  min-height:48px;
  padding:12px 19px!important;
  border:1px solid var(--gold);
  background:var(--gold);
  color:#13211d;
  text-shadow:none;
  box-shadow:0 7px 20px rgba(0,0,0,.2);
}
.nav-cta:hover{background:var(--gold-2);border-color:var(--gold-2);transform:translateY(-1px)}
.theme-toggle{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.45)}
.theme-toggle:hover{background:rgba(255,255,255,.18)}
.hero{min-height:760px}
.hero>img{filter:saturate(.86) contrast(1.05) brightness(.82)}
.shade{
  background:
    linear-gradient(90deg,rgba(1,15,12,.97) 0%,rgba(3,22,18,.89) 43%,rgba(3,22,18,.52) 72%,rgba(3,22,18,.48) 100%),
    linear-gradient(0deg,rgba(1,15,12,.92) 0%,rgba(1,15,12,.18) 67%,rgba(1,15,12,.35) 100%);
}
.hero-copy{padding-bottom:11vh;max-width:1000px}
.hero-copy h1{text-shadow:0 5px 28px rgba(0,0,0,.45)}
.hero-copy p{color:rgba(255,255,255,.92);font-size:clamp(1.08rem,1.45vw,1.28rem);max-width:720px;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.hero-aside{background:rgba(3,24,20,.65);backdrop-filter:blur(8px);border-color:rgba(255,255,255,.28)}
.hero-fact{background:rgba(3,24,20,.68);padding:14px 17px;border-left:3px solid var(--gold);backdrop-filter:blur(8px)}
.btn{min-height:50px;border-radius:2px;font-size:14px;padding:15px 23px}
.ghost{background:rgba(4,24,20,.46);border-color:rgba(255,255,255,.72);backdrop-filter:blur(6px)}
.ghost:hover{background:rgba(255,255,255,.14)}
.page-hero{padding-top:180px;background:linear-gradient(135deg,#061b17,#0c342b);color:#fff}
.page-hero-rich::before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,rgba(2,18,14,.98),rgba(7,38,31,.84));pointer-events:none}
.page-hero-inner,.page-hero-index{position:relative;z-index:1}
.page-hero p{color:rgba(255,255,255,.84)}
.section p,.service-body,.publication-article,.legal-content{font-size:max(16px,1rem)}
.text-link{font-size:14px}
.card p{color:rgba(239,245,242,.78)}
.site-footer{font-size:14px}

@media(max-width:1180px){
  .site-header{padding-inline:24px}
  .brand{min-width:210px}
  .brand-copy small{display:none}
  .site-header nav{gap:15px;font-size:13px}
  .nav-cta{padding-inline:14px!important}
}
@media(max-width:980px){
  .site-header{min-height:78px;padding:10px 18px;background:rgba(4,24,20,.97)}
  .brand{min-width:0}
  .brand-mark{width:48px;height:48px}
  .brand b{font-size:12px}
  .menu{display:block;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.35);border-radius:4px}
  .site-header nav{
    position:fixed;
    inset:78px 0 auto;
    max-height:calc(100vh - 78px);
    overflow:auto;
    display:none;
    padding:22px;
    background:rgba(4,24,20,.99);
    border-top:1px solid rgba(255,255,255,.12);
    box-shadow:0 20px 40px rgba(0,0,0,.3);
  }
  .site-header nav.open{display:grid;gap:4px}
  .site-header nav>a:not(.nav-cta){padding:14px 8px;border-bottom:1px solid rgba(255,255,255,.1);font-size:16px}
  .nav-cta{margin-top:10px;justify-content:space-between;font-size:16px}
  .header-tools{margin-left:auto}
  .hero-copy{padding:0 7vw 12vh}
  .hero-aside{display:none}
}
@media(max-width:640px){
  .brand-copy{display:none}
  .theme-toggle{display:none}
  .hero{min-height:680px;height:100svh}
  .hero-copy{padding:0 6vw 12vh}
  .hero-copy h1{font-size:clamp(2.75rem,13vw,4.4rem)}
  .hero-copy p{font-size:1rem;line-height:1.62}
  .actions{flex-direction:column;align-items:stretch;max-width:340px}
  .actions .btn{justify-content:space-between}
  .hero-fact{right:6vw;bottom:3.5vh;padding:10px 12px}
  .hero-fact a{font-size:18px}
  .scroll-cue{display:none}
  .page-hero{padding-top:135px}
}

/* 2026-07 Layoutprüfung: robuste Raster, Umbrüche und Abstände */
*,*::before,*::after{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,iframe{max-width:100%}
a,p,h1,h2,h3,h4,li,span,small{overflow-wrap:anywhere}

/* Kategorien und Inhaltszeilen dürfen sich auch bei langen Begriffen nicht überlagern */
.contact-detail,
.service-row,
.publication-premium,
.publication-detail,
.service-detail,
.legal-layout,
.profile-premium,
.editorial-grid,
.services-index,
.publications-page,
.split-feature,
.contact-page{min-width:0}
.contact-detail>* ,
.service-row>* ,
.publication-premium>* ,
.publication-detail>* ,
.service-detail>* ,
.legal-layout>* ,
.profile-premium>* ,
.editorial-grid>* ,
.services-index>* ,
.publications-page>* ,
.split-feature>* ,
.contact-page>*{min-width:0}

/* Kontakt: feste Überschriftenspalte war für lange Kategorien zu schmal */
.contact-page-simple{grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);gap:clamp(3rem,7vw,8rem)}
.contact-info h2{max-width:100%;font-size:clamp(2.7rem,6.4vw,5.4rem);line-height:.98;overflow-wrap:normal;word-break:normal}
.contact-detail{grid-template-columns:minmax(135px,180px) minmax(0,1fr);column-gap:clamp(1.5rem,3vw,3.25rem);align-items:start;padding:26px 0}
.contact-detail small{display:block;line-height:1.55;hyphens:none;overflow-wrap:normal;word-break:normal}
.contact-detail p{font-size:clamp(1rem,1.25vw,1.12rem);line-height:1.65}
.contact-detail p span{display:block;margin:.08rem 0}
.contact-detail a{display:inline-block;max-width:100%}
.contact-buttons{gap:1rem}
.contact-buttons .btn{min-width:0}
.map-consent{min-height:360px;height:auto;margin-top:0}

/* Listen und Unterkategorien */
.service-row{grid-template-columns:minmax(42px,72px) minmax(0,1fr) 32px}
.service-row h3,.publication-premium h3{overflow-wrap:break-word;hyphens:auto}
.service-sidebar a,.legal-nav a{line-height:1.45;overflow-wrap:break-word}
.publication-premium{grid-template-columns:minmax(72px,110px) minmax(0,1fr) 32px}
.publication-copy,.publication-meta{min-width:0}
.publication-byline{flex-wrap:wrap;row-gap:6px}
.publication-detail-meta{flex-wrap:wrap}
.cards,.value-grid{min-width:0}
.card,.value-card,.person{min-width:0}

/* Überschriften sollen nie über den Viewport hinausragen */
h1,h2,h3{max-width:100%;text-wrap:balance}
.page-hero h1,.page-intro h1,.profile-content h1,.publication-detail-hero h1{overflow-wrap:break-word}

/* Navigation auf mittleren Desktopbreiten */
.site-header nav{min-width:0}
.site-header nav>a{white-space:nowrap}
@media (max-width:1180px) and (min-width:901px){
  .site-header{padding-inline:3vw}
  .brand-copy small{display:none}
  .site-header nav{gap:clamp(12px,1.5vw,24px)}
  .site-header nav>a{font-size:13px}
  .nav-cta{padding-inline:18px}
}

@media(max-width:980px){
  .contact-page-simple{grid-template-columns:1fr}
  .contact-info{max-width:780px}
  .map-consent{min-height:300px}
  .publication-premium{grid-template-columns:minmax(68px,90px) minmax(0,1fr) 28px}
}

@media(max-width:700px){
  .contact-detail{grid-template-columns:1fr;gap:.55rem;padding:22px 0}
  .contact-detail small{font-size:10px}
  .contact-buttons{flex-direction:column;align-items:stretch}
  .contact-buttons .btn{width:100%;justify-content:space-between}
  .service-row{grid-template-columns:38px minmax(0,1fr) 24px;padding-block:26px}
  .publication-premium{grid-template-columns:1fr;gap:14px;padding:30px 0}
  .publication-meta{flex-direction:row;align-items:center;gap:12px}
  .publication-arrow{display:none}
  .publication-image{width:100%;height:auto;aspect-ratio:16/9}
  .legal-nav{overflow-x:auto;padding-bottom:8px;scrollbar-width:thin}
  .legal-nav a{flex:0 0 auto;white-space:nowrap}
}

@media(max-width:420px){
  .section{padding-inline:5vw}
  .page-hero,.page-intro{padding-inline:5vw}
  .service-row{grid-template-columns:30px minmax(0,1fr)}
  .service-row>i{display:none}
  .contact-info h2{font-size:clamp(2.45rem,14vw,4rem)}
  .btn{max-width:100%}
}

/* Mobile QA pass: 360 / 390 / 430 / 768 / 1024 px */
@media (max-width: 980px) {
  .site-header { height: 78px; }
  .brand { min-width: 0; max-width: calc(100% - 112px); gap: 10px; }
  .brand-mark { width: 46px; height: 46px; flex: 0 0 46px; }
  .brand-copy { min-width: 0; }
  .brand b, .brand small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .header-tools { margin-left: auto; gap: 8px; }
  .theme-toggle, .menu { flex: 0 0 44px; min-width: 44px; min-height: 44px; }
  .site-header nav {
    top: 78px;
    left: 0;
    right: 0;
    max-height: calc(100dvh - 78px);
    overflow-y: auto;
    padding: 18px max(18px, 5vw) 28px;
    background: rgba(4,24,20,.985);
    box-shadow: 0 22px 45px rgba(0,0,0,.28);
  }
  .site-header nav a { min-height: 48px; display: flex; align-items: center; }
  .section { padding-inline: max(20px, 6vw); }
  .section-head { align-items: flex-start; }
  .section-meta { align-items: flex-start; }
  .cards { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .team-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .actions { flex-wrap: wrap; }
  .hero-fact { max-width: min(260px, 44vw); }
  .hero-fact a { overflow-wrap: anywhere; }
}

@media (max-width: 700px) {
  html { font-size: 16px; }
  body { line-height: 1.58; }
  h1 { max-width: 100%; }
  h2, h3 { overflow-wrap: anywhere; }
  .site-header { padding-inline: 14px; }
  .brand b { font-size: 12px; letter-spacing: .1em; }
  .brand small { display: none; }
  .theme-toggle { display: none; }
  .hero { min-height: 640px; }
  .hero-copy { padding: 0 20px 112px; }
  .hero-copy h1 { font-size: clamp(2.55rem, 12.5vw, 4rem); line-height: .98; }
  .hero-copy p { max-width: 100%; }
  .actions { display: grid; grid-template-columns: 1fr; width: 100%; gap: 10px; margin-top: 28px; }
  .actions .btn { width: 100%; justify-content: space-between; min-height: 50px; }
  .hero-fact { display: none; }
  .scroll-cue { display: none; }
  .section { padding-block: 72px; }
  .section-head { display: block; margin-bottom: 36px; }
  .section-meta { margin-top: 18px; gap: 18px; }
  .section-meta > span { font-size: 48px; }
  .cards, .team-grid { grid-template-columns: 1fr; }
  .card { min-height: 0; padding: 28px 24px 32px; }
  .card h3 { margin-top: 34px; }
  .card-line { left: 24px; }
  .card:hover .card-line { right: 24px; }
  .principle { grid-template-columns: 1fr; padding: 54px 20px; gap: 24px; }
  .publication-filter { align-items: stretch; }
  .publication-filter label, .publication-filter input, .publication-filter select { width: 100%; min-width: 0; }
  .publication-detail-meta, .publication-byline { flex-wrap: wrap; gap: 8px 14px; }
  .publication-image { height: auto; aspect-ratio: 16 / 9; }
  .profile-visual { width: 100%; }
  .profile-actions { width: 100%; }
  .profile-actions .btn { width: 100%; justify-content: space-between; }
  .legal-content, .publication-article { font-size: 1rem; overflow-wrap: anywhere; }
  .legal-note { padding: 20px; }
  .map iframe, iframe { max-width: 100%; }
}

@media (max-width: 430px) {
  .brand-mark { width: 40px; height: 40px; flex-basis: 40px; }
  .brand b { font-size: 11px; }
  .site-header { min-height: 72px; height: 72px; }
  .site-header nav { top: 72px; max-height: calc(100dvh - 72px); }
  .page-hero, .page-hero-rich { padding-top: 122px; }
  .page-hero h1, .page-hero-rich h1 { font-size: clamp(2.45rem, 13vw, 3.65rem); }
  .eyebrow { letter-spacing: .16em; font-size: 10px; gap: 10px; }
  .eyebrow::before { width: 28px; }
  .contact-info h2 { font-size: clamp(2.25rem, 12vw, 3.4rem); }
  .contact-detail p, .contact-detail a { overflow-wrap: anywhere; word-break: normal; }
  .service-row { grid-template-columns: 32px minmax(0,1fr) 20px; gap: 10px; }
  .service-row h2, .service-row h3 { font-size: 1.45rem; }
  .person h3 { font-size: 1.65rem; }
  .publication-premium h2, .publication-premium h3 { font-size: 1.55rem; }
  .btn { padding: 14px 17px; gap: 18px; }
  .footer-grid { grid-template-columns: 1fr; }
}

@media (max-width: 360px) {
  .site-header { padding-inline: 10px; }
  .brand { max-width: calc(100% - 58px); }
  .brand b { max-width: 185px; font-size: 10px; letter-spacing: .08em; }
  .hero-copy { padding-inline: 16px; }
  .hero-copy h1 { font-size: 2.6rem; }
  .section { padding-inline: 16px; }
  .page-hero, .page-intro, .profile-premium { padding-inline: 16px; }
  .contact-form { padding: 22px 16px; }
}

@media (hover: none) and (pointer: coarse) {
  .btn, .menu, .theme-toggle, .site-header nav a, .legal-nav a { min-height: 44px; }
  .card:hover, .btn:hover, .person:hover img { transform: none; }
  .person-image::after, .person-image span { opacity: 1; transform: none; }
}

/* 2026-07-25: Feinschliff der Tätigkeitsgebiet-Detailseiten */
.service-hero{
  min-height:500px;
  padding:170px 7vw 78px;
  align-items:flex-end;
}
.service-hero .page-hero-inner{
  width:min(100%, 1040px);
  max-width:1040px;
}
.service-hero .eyebrow{
  margin-bottom:30px;
}
.service-hero h1{
  max-width:100%;
  margin-bottom:30px;
  font-size:clamp(3.8rem, 6.25vw, 5.55rem);
  line-height:.94;
  letter-spacing:-.045em;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.service-hero p{
  max-width:680px;
  margin:0;
  font-size:clamp(1.05rem, 1.45vw, 1.24rem);
  line-height:1.62;
  color:rgba(255,255,255,.86);
}
.service-hero .page-hero-index{
  z-index:0;
  right:clamp(24px, 5vw, 76px);
  bottom:34px;
  font-size:clamp(5rem, 8vw, 7.5rem);
  opacity:.22;
  -webkit-text-stroke:1px rgba(200,167,101,.42);
  pointer-events:none;
}
.service-hero .page-hero-inner{
  z-index:2;
}

@media (max-width: 980px){
  .service-hero{
    min-height:440px;
    padding:145px max(24px,6vw) 66px;
  }
  .service-hero h1{
    font-size:clamp(3.15rem, 8vw, 4.7rem);
    margin-bottom:25px;
  }
  .service-hero .page-hero-index{
    right:max(22px,5vw);
    bottom:24px;
    font-size:clamp(4.5rem, 12vw, 6.4rem);
    opacity:.16;
  }
}

@media (max-width: 640px){
  .service-hero{
    min-height:390px;
    padding:126px 20px 55px;
  }
  .service-hero .eyebrow{
    margin-bottom:22px;
  }
  .service-hero h1{
    font-size:clamp(2.55rem, 11.5vw, 3.75rem);
    line-height:.98;
    margin-bottom:22px;
    letter-spacing:-.035em;
  }
  .service-hero p{
    max-width:100%;
    font-size:1rem;
    line-height:1.58;
  }
  .service-hero .page-hero-index{
    right:16px;
    bottom:18px;
    font-size:4.35rem;
    opacity:.1;
  }
}

@media (max-width: 380px){
  .service-hero{
    min-height:365px;
    padding-inline:16px;
  }
  .service-hero h1{
    font-size:clamp(2.25rem, 11.6vw, 3rem);
  }
  .service-hero .page-hero-index{
    display:none;
  }
}

/* Dekorative Abschnittsnummern entfernt: klarere, ruhigere Kanzlei-Darstellung */
.page-hero-index,.section-number,.section-meta>span{display:none!important}
.section-meta{gap:0}
.page-hero-inner{max-width:980px}
.value-card>b{display:none}
@media (min-width:901px){
  .section-head{align-items:flex-end}
  .section-meta{justify-content:flex-end}
}

/* 2026-07-25: Teamprofile – größere, ausgewogene Portraitdarstellung */
.profile-premium{
  grid-template-columns:minmax(440px,.95fr) minmax(0,1.05fr);
  gap:clamp(60px,7vw,120px);
  padding-inline:clamp(48px,7vw,120px);
}
.profile-premium > .profile-visual{
  display:block;
  padding:0;
  width:100%;
  max-width:720px;
  justify-self:start;
}
.profile-premium > .profile-content{
  padding:0;
  min-width:0;
}
.profile-visual img{
  width:100%;
  height:auto;
  aspect-ratio:4 / 3;
  max-height:none;
  object-fit:cover;
  object-position:center;
}

@media(max-width:1100px){
  .profile-premium{
    grid-template-columns:minmax(360px,.9fr) minmax(0,1.1fr);
    gap:55px;
    padding-inline:6vw;
  }
}

@media(max-width:980px){
  .profile-premium{
    grid-template-columns:1fr;
    gap:58px;
  }
  .profile-premium > .profile-visual{
    max-width:760px;
    justify-self:center;
  }
  .profile-visual img{
    aspect-ratio:16 / 10;
  }
}

@media(max-width:640px){
  .profile-premium{
    gap:42px;
  }
  .profile-visual::before{
    inset:-10px 10px 10px -10px;
  }
  .profile-visual img{
    aspect-ratio:4 / 3;
  }
  .profile-caption{
    right:-13px;
    bottom:20px;
  }
}


/* Internationale Kurztexte und Social-Media-Links */
.header-tools{display:flex;align-items:center;gap:12px}
.language-tools,.header-socials{display:flex;align-items:center;gap:6px}
.language-button,.header-socials a{display:grid;place-items:center;min-width:38px;height:38px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(255,255,255,.06);color:#fff;font:600 11px/1 Arial,sans-serif;letter-spacing:.08em;text-decoration:none;cursor:pointer;transition:.2s ease}
.header-socials a{min-width:38px;font-size:16px;letter-spacing:0}
.language-button:hover,.language-button:focus-visible,.header-socials a:hover,.header-socials a:focus-visible{border-color:var(--gold);background:rgba(200,167,101,.16);color:var(--gold)}
.language-modal[hidden]{display:none}
.language-modal{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:24px;opacity:0;transition:opacity .18s ease}
.language-modal.is-open{opacity:1}
.language-modal-backdrop{position:absolute;inset:0;background:rgba(0,14,12,.78);backdrop-filter:blur(7px)}
.language-dialog{position:relative;z-index:1;width:min(900px,100%);max-height:min(760px,calc(100dvh - 48px));overflow:auto;background:#f7f3ea;color:#19322d;border:1px solid rgba(200,167,101,.55);box-shadow:0 28px 100px rgba(0,0,0,.35);padding:clamp(30px,5vw,68px)}
.language-dialog-close{position:absolute;right:18px;top:14px;width:44px;height:44px;border:0;background:transparent;color:#19322d;font-size:34px;line-height:1;cursor:pointer}
.language-name{display:block;margin-bottom:16px;color:#a9792f;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}
.language-panel h2{max-width:760px;margin:0 0 28px;padding-bottom:22px;border-bottom:1px solid rgba(25,50,45,.28);font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.65rem);line-height:1.05;font-weight:500}
.language-copy{max-width:760px;font-size:clamp(1rem,1.3vw,1.12rem);line-height:1.75;color:#405b55}
.language-copy p{margin:0 0 18px}
.language-contact{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:30px;padding-top:24px;border-top:1px solid rgba(25,50,45,.18)}
.language-contact a{color:#8f682c;font-weight:700;text-decoration:none}
body.modal-open{overflow:hidden}
@media(max-width:1180px){.language-tools,.header-socials{display:none}.site-header nav.open .language-tools{display:flex}}
@media(max-width:900px){.header-tools .language-tools,.header-tools .header-socials{display:none}.site-header nav::after{content:''}.language-dialog{padding:48px 26px 34px}}
@media(max-width:540px){.language-modal{padding:10px}.language-dialog{max-height:calc(100dvh - 20px);padding:50px 20px 28px}.language-panel h2{font-size:2rem}.language-contact{flex-direction:column;gap:10px}}

/* 2026-07-25: Tätigkeitsgebietsübersicht nach Entfernen der Nummern korrigiert */
.services-index{
  grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);
}
.service-list{
  min-width:0;
  width:100%;
}
.service-row{
  grid-template-columns:minmax(0,1fr) 32px;
  gap:24px;
  width:100%;
  min-width:0;
}
.service-row > div{
  min-width:0;
}
.service-row h3{
  overflow-wrap:normal;
  word-break:normal;
  hyphens:auto;
}
.service-row p{
  overflow-wrap:anywhere;
}

@media(max-width:980px){
  .services-index{
    grid-template-columns:1fr;
    gap:52px;
  }
  .service-row{
    grid-template-columns:minmax(0,1fr) 30px;
  }
}

@media(max-width:640px){
  .service-row{
    grid-template-columns:minmax(0,1fr) 24px;
    gap:14px;
    padding-block:26px;
  }
  .service-row p{
    display:block;
    font-size:.96rem;
    line-height:1.55;
  }
}

@media(max-width:430px){
  .service-row{
    grid-template-columns:minmax(0,1fr) 20px;
    gap:10px;
  }
  .service-row h3{
    font-size:1.55rem;
  }
}

/* Kanzlei: authentisches Arbeitsplatzfoto */
.split-feature .feature-image img[src*="kanzlei-arbeitsplatz"] {
  aspect-ratio: 4 / 3;
  object-position: center center;
  filter: grayscale(1) contrast(1.035);
}

@media (max-width: 980px) {
  .split-feature .feature-image img[src*="kanzlei-arbeitsplatz"] {
    aspect-ratio: 16 / 10;
    object-position: center 48%;
  }
}

@media (max-width: 640px) {
  .split-feature .feature-image img[src*="kanzlei-arbeitsplatz"] {
    aspect-ratio: 4 / 3;
    object-position: 55% center;
  }
}


/* Startseite: finaler Hero-Feinschliff */
.hero>img{
  filter:saturate(.9) contrast(1.03) brightness(.96);
}
.shade{
  background:
    linear-gradient(90deg,rgba(1,15,12,.91) 0%,rgba(3,22,18,.76) 42%,rgba(3,22,18,.32) 72%,rgba(3,22,18,.25) 100%),
    linear-gradient(0deg,rgba(1,15,12,.78) 0%,rgba(1,15,12,.08) 64%,rgba(1,15,12,.22) 100%);
}
.hero-copy{
  max-width:1100px;
}
.hero-copy h1{
  max-width:none;
  font-size:clamp(4.2rem,6.7vw,7.2rem);
  line-height:.93;
  letter-spacing:-.045em;
}
.hero-copy h1 span{
  display:block;
  white-space:nowrap;
}
.hero-copy h1 span+span{
  margin-top:.08em;
}
.hero-aside{
  top:auto;
  right:4.5vw;
  bottom:30vh;
  min-width:0;
  width:min(270px,22vw);
  padding:16px 19px;
  background:rgba(3,24,20,.5);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 16px 40px rgba(0,0,0,.14);
}
.hero-aside span{
  font-size:9px;
}
.hero-aside p{
  font-size:16px;
  margin:7px 0 0;
}

@media(max-width:1180px){
  .hero-copy h1{font-size:clamp(3.8rem,7vw,6.2rem)}
  .hero-aside{width:235px;right:3vw}
}
@media(max-width:980px){
  .hero-copy h1 span{white-space:normal}
}
@media(max-width:600px){
  .hero-copy h1{font-size:clamp(3rem,13vw,4.35rem);line-height:.96}
  .hero-copy h1 span+span{margin-top:.12em}
}

/* Startseite: direkter Kontakt, internationale Schnellinfos und authentischer Kanzleieinblick */
.hero-fact{
  min-width:260px;
  gap:2px;
  background:rgba(3,24,20,.72);
  box-shadow:0 14px 34px rgba(0,0,0,.18);
}
.hero-fact a{line-height:1.28}
.hero-fact-mail{
  margin-top:4px;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:12px!important;
  color:rgba(255,255,255,.74);
  overflow-wrap:anywhere;
}
.hero-fact-mail:hover{color:var(--gold)}

.language-tools{display:flex;align-items:center;gap:8px}
.language-button{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.32);
  border-radius:50%;
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:11px;
  font-weight:700;
  letter-spacing:.06em;
  cursor:pointer;
  transition:background .25s,border-color .25s,color .25s,transform .25s;
}
.language-button:hover,.language-button:focus-visible{
  background:var(--gold);
  border-color:var(--gold);
  color:#13211d;
  transform:translateY(-1px);
}
.header-socials{display:flex;align-items:center;gap:8px}
.header-socials a{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.24);
  border-radius:50%;
  background:rgba(255,255,255,.06);
  color:#fff;
  font-size:15px;
  font-weight:700;
  transition:background .25s,border-color .25s,color .25s,transform .25s;
}
.header-socials a:hover,.header-socials a:focus-visible{
  background:rgba(255,255,255,.16);
  border-color:var(--gold);
  color:var(--gold);
  transform:translateY(-1px);
}

.office-intro{
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  gap:clamp(48px,7vw,120px);
  align-items:center;
}
.office-intro-image{
  margin:0;
  position:relative;
  overflow:visible;
  aspect-ratio:888 / 860;
  min-height:0;
  background:#e9e5db;
}
.office-intro-image::after{
  content:"";
  position:absolute;
  inset:18px -18px -18px 18px;
  border:1px solid rgba(187,143,64,.55);
  pointer-events:none;
  z-index:0;
}
.office-intro-image img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  filter:grayscale(1) contrast(1.03);
  transition:transform .8s var(--ease),filter .5s;
  z-index:1;
}
.office-intro:hover .office-intro-image img{transform:scale(1.018);filter:grayscale(.82) contrast(1.03)}
.office-intro-content{max-width:720px}
.office-intro-content blockquote{
  font-family:Georgia,serif;
  font-size:clamp(1.35rem,2vw,2rem);
  line-height:1.4;
  border-left:2px solid var(--gold);
  padding:2px 0 2px 24px;
  margin:38px 0;
  color:var(--ink);
}

@media(max-width:1260px){
  .header-tools{gap:9px}
  .language-tools{gap:5px}
  .language-button,.header-socials a{width:36px;height:36px}
}
@media(max-width:1080px){
  .header-socials{display:none}
  .office-intro{grid-template-columns:1fr 1fr;gap:44px}
}
@media(max-width:980px){
  .language-tools{order:1}
  .language-button{width:38px;height:38px}
  .office-intro{grid-template-columns:1fr}
  .office-intro-image{min-height:0;aspect-ratio:888 / 860}
  .office-intro-content{max-width:780px}
}
@media(max-width:640px){
  .language-tools{gap:4px}
  .language-button{width:34px;height:34px;font-size:9px}
  .hero-fact{min-width:0;max-width:58vw}
  .hero-fact-mail{display:none}
  .office-intro{padding-top:72px;padding-bottom:78px;gap:34px}
  .office-intro-image{min-height:0;aspect-ratio:888 / 860}
  .office-intro-image::after{inset:10px -10px -10px 10px}
  .office-intro-content h2 br{display:none}
}

/* 2026-07 Premium-Feinschliff Startseite */
.page-index .site-header{
  background:linear-gradient(180deg,rgba(3,24,20,.9),rgba(3,24,20,.72));
  border-bottom-color:rgba(255,255,255,.12);
  backdrop-filter:blur(12px) saturate(115%);
  -webkit-backdrop-filter:blur(12px) saturate(115%);
  box-shadow:0 8px 30px rgba(0,0,0,.12);
}
.page-index .site-header.scrolled{background:rgba(3,24,20,.96)}
.page-index .brand-mark{width:66px;height:66px}
.page-index .site-header.scrolled .brand-mark{width:52px;height:52px}
.page-index .brand{gap:16px}
.page-index .brand b{font-size:14.5px;letter-spacing:.15em}
.page-index .site-header nav>a:not(.nav-cta).active{color:var(--gold-2)}
.page-index .site-header nav>a:not(.nav-cta).active::after{height:2px;box-shadow:0 0 12px rgba(200,167,101,.42)}
.page-index .language-tools{gap:8px}
.page-index .language-button{
  width:34px;min-width:34px;height:34px;
  border-color:rgba(255,255,255,.28);
  background:rgba(255,255,255,.035);
  font-size:9px;font-weight:700;
  transition:transform .22s var(--ease),border-color .22s,background .22s,color .22s;
}
.page-index .language-button:hover,.page-index .language-button:focus-visible{
  transform:translateY(-1px);border-color:var(--gold);background:rgba(200,167,101,.13);color:var(--gold-2)
}
.page-index .header-socials a{width:34px;min-width:34px;height:34px;background:transparent;border-color:rgba(255,255,255,.22)}
.page-index .theme-toggle{width:34px;height:34px;background:rgba(255,255,255,.035)}
.page-index .hero>img{filter:saturate(.92) contrast(1.035) brightness(.96)}
.page-index .shade{
  background:
    linear-gradient(90deg,rgba(2,18,14,.88) 0%,rgba(4,25,20,.67) 43%,rgba(4,25,20,.22) 76%,rgba(4,25,20,.13) 100%),
    linear-gradient(0deg,rgba(2,18,14,.74) 0%,rgba(2,18,14,.1) 63%,rgba(2,18,14,.24) 100%);
}
.page-index .hero-copy{padding-bottom:10.5vh;max-width:1040px}
.page-index .hero-copy h1{letter-spacing:-.045em;text-shadow:0 6px 30px rgba(0,0,0,.34)}
.page-index .hero-copy p{max-width:640px;margin-top:4px;line-height:1.55;color:rgba(255,255,255,.9)}
.page-index .actions{margin-top:34px;gap:14px}
.page-index .actions .btn{min-height:54px;padding:16px 25px;gap:42px}
.page-index .actions .gold{box-shadow:0 12px 28px rgba(0,0,0,.18)}
.page-index .actions .ghost{background:rgba(3,24,20,.28);border-color:rgba(255,255,255,.62)}
.page-index .hero-aside{
  min-width:260px;padding:22px 25px;
  background:rgba(3,24,20,.48);
  border:1px solid rgba(255,255,255,.22);
  border-left:2px solid var(--gold);
  box-shadow:0 18px 42px rgba(0,0,0,.17);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)
}
.page-index .hero-aside p{font-size:18px;margin-bottom:0}
.page-index .hero-fact{
  min-width:300px;padding:17px 20px 16px;
  background:rgba(3,24,20,.57);
  border-left:3px solid var(--gold);
  box-shadow:0 18px 42px rgba(0,0,0,.2);
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)
}
.page-index .hero-fact b{margin-bottom:4px}
.page-index .hero-fact>a:first-of-type{font-size:25px;line-height:1.2}
.page-index .hero-fact-mail{margin-top:3px;font-family:Arial,Helvetica,sans-serif;font-size:12px!important;color:rgba(255,255,255,.78)}
.page-index .scroll-cue{opacity:.85;gap:14px}
.page-index .scroll-cue span{height:48px}
.page-index .scroll-cue:hover{color:var(--gold-2)}
.page-index .scroll-cue:hover span{background:rgba(255,255,255,.85)}

@media(max-width:1180px){
  .page-index .brand-mark{width:56px;height:56px}
  .page-index .brand b{font-size:13px}
}
@media(max-width:980px){
  .page-index .site-header{background:rgba(3,24,20,.96);backdrop-filter:blur(14px)}
  .page-index .brand-mark{width:48px;height:48px}
  .page-index .hero>img{filter:saturate(.92) contrast(1.035) brightness(.9)}
  .page-index .shade{background:linear-gradient(90deg,rgba(2,18,14,.88),rgba(3,24,20,.55)),linear-gradient(0deg,rgba(2,18,14,.75),rgba(2,18,14,.12) 70%)}
}
@media(max-width:640px){
  .page-index .hero-copy{padding-bottom:12vh}
  .page-index .hero-copy p{max-width:34ch}
  .page-index .actions .btn{min-height:52px}
}
@media(prefers-reduced-motion:reduce){
  .page-index .language-button,.page-index .scroll-cue span::after{transition:none;animation:none}
}

/* 2026-07-30: Premium-Feinschliff Kompetenzbereich */
.services-home .section-head{
  margin-bottom:clamp(40px,4.5vw,66px);
}
.services-home .section-head h2{
  max-width:12ch;
  text-wrap:balance;
}
.services-home .section-meta{
  padding-bottom:8px;
}
.services-home .section-meta .text-link{
  position:relative;
  padding:10px 0;
  font-size:14px;
  letter-spacing:.015em;
}
.services-home .section-meta .text-link::after{
  content:"";
  position:absolute;
  left:0;
  right:100%;
  bottom:4px;
  height:1px;
  background:var(--gold);
  transition:right .35s var(--ease);
}
.services-home .section-meta .text-link:hover::after,
.services-home .section-meta .text-link:focus-visible::after{
  right:0;
}

.competence-cards{
  grid-template-columns:repeat(6,minmax(0,1fr));
  border-color:rgba(200,167,101,.22);
}
.competence-card{
  grid-column:span 2;
  min-height:340px;
  padding:32px 34px 30px;
  display:flex;
  flex-direction:column;
  border-color:rgba(200,167,101,.22);
  background:rgba(255,255,255,.012);
  isolation:isolate;
  transform:translateZ(0);
  transition:transform .4s var(--ease),background .4s,border-color .4s,box-shadow .4s;
}
.competence-card:nth-child(4),
.competence-card:nth-child(5){
  grid-column:span 3;
}
.competence-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background:linear-gradient(145deg,rgba(200,167,101,.075),transparent 48%);
  opacity:0;
  transition:opacity .4s;
}
.competence-card:hover,
.competence-card:focus-visible{
  transform:translateY(-6px);
  border-color:rgba(200,167,101,.66);
  background:rgba(255,255,255,.035);
  box-shadow:0 24px 55px rgba(0,0,0,.16);
  outline:none;
  z-index:2;
}
.competence-card:hover::after,
.competence-card:focus-visible::after{
  opacity:1;
}
.competence-card .card-top{
  min-height:24px;
  align-items:center;
}
.card-category{
  color:var(--gold);
  font-size:10px;
  line-height:1;
  font-weight:700;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.competence-card .card-top>i{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  border:1px solid rgba(200,167,101,.24);
  border-radius:50%;
  font-size:13px;
  opacity:.72;
  transform:none;
  transition:transform .35s var(--ease),background .35s,border-color .35s,color .35s;
}
.competence-card:hover .card-top>i,
.competence-card:focus-visible .card-top>i{
  opacity:1;
  transform:translate(2px,-2px);
  border-color:var(--gold);
  background:var(--gold);
  color:var(--green);
}
.competence-card .card-content{
  margin-top:clamp(38px,4vw,62px);
}
.competence-card h3{
  max-width:18ch;
  margin:0 0 20px;
  font-size:clamp(1.75rem,2.15vw,2.45rem);
  line-height:1.05;
  letter-spacing:-.025em;
  text-wrap:balance;
  overflow-wrap:normal;
  hyphens:auto;
}
.competence-card p{
  max-width:58ch;
  margin:0;
  color:rgba(225,235,231,.76);
  line-height:1.68;
}
.card-more{
  display:inline-flex;
  align-items:center;
  gap:14px;
  width:max-content;
  margin-top:auto;
  padding-top:30px;
  color:rgba(255,255,255,.9);
  font-size:12px;
  font-weight:700;
  letter-spacing:.025em;
}
.card-more i{
  color:var(--gold);
  font-style:normal;
  transition:transform .3s var(--ease);
}
.competence-card:hover .card-more i,
.competence-card:focus-visible .card-more i{
  transform:translateX(6px);
}
.competence-card .card-line{
  left:34px;
  right:calc(100% - 34px);
}
.competence-card:hover .card-line,
.competence-card:focus-visible .card-line{
  right:34px;
}

@media(max-width:1100px){
  .competence-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .competence-card,
  .competence-card:nth-child(4),
  .competence-card:nth-child(5){grid-column:span 1}
  .competence-card:last-child:nth-child(odd){grid-column:1/-1}
}
@media(max-width:700px){
  .services-home .section-head h2{max-width:11ch}
  .services-home .section-meta{padding-bottom:0}
  .competence-cards{grid-template-columns:1fr;border-left:1px solid rgba(200,167,101,.22)}
  .competence-card,
  .competence-card:nth-child(4),
  .competence-card:nth-child(5),
  .competence-card:last-child:nth-child(odd){grid-column:1}
  .competence-card{min-height:280px;padding:27px 24px 27px}
  .competence-card .card-content{margin-top:34px}
  .competence-card h3{max-width:19ch;font-size:clamp(1.7rem,8vw,2.2rem)}
  .competence-card .card-line{left:24px;right:calc(100% - 24px)}
  .competence-card:hover .card-line,.competence-card:focus-visible .card-line{right:24px}
}
@media(hover:none) and (pointer:coarse){
  .competence-card:hover{transform:none;box-shadow:none}
  .competence-card .card-top>i{opacity:1}
}
@media(prefers-reduced-motion:reduce){
  .competence-card,.competence-card::after,.competence-card .card-top>i,.card-more i{transition:none!important}
}

/* Performance: Bereiche unterhalb des sichtbaren Starts werden erst gerendert, wenn sie sich dem Viewport nähern. */
@supports (content-visibility:auto){
  main > .section:not(:first-child), main > .contact-band, .site-footer{content-visibility:auto;contain-intrinsic-size:auto 720px}
}

/* Fachbeiträge */
.publication-subtitle{font-size:clamp(1.1rem,2vw,1.35rem);max-width:780px}.article-lead{font-size:1.18rem;line-height:1.75;font-weight:500}.article-hero-image img{width:100%;max-height:650px;object-fit:cover;border-radius:18px}.publication-article h2{font-size:clamp(1.55rem,3vw,2.2rem);margin:2.2rem 0 .8rem}.publication-article h3{font-size:clamp(1.25rem,2.5vw,1.65rem);margin:1.8rem 0 .7rem}.article-callout{margin:1.7rem 0;padding:1.2rem 1.35rem;border-left:4px solid #b87a38;border-radius:8px;background:#f5f1e9}.article-callout.warning{border-color:#9b3d32;background:#fbefed}.article-callout.law{border-color:#264f46;background:#edf4f1}.article-callout strong{display:block;margin-bottom:.45rem}.article-quote{margin:2rem 0;padding:1.2rem 1.5rem;border-left:4px solid #b87a38;font-size:1.25rem;font-style:italic}.article-quote cite{display:block;margin-top:.7rem;font-size:.9rem;font-style:normal}.article-block-image img{width:100%;border-radius:14px}.article-block-image figcaption{font-size:.86rem;opacity:.75;margin-top:.45rem}.article-faq{margin:1rem 0;border:1px solid rgba(0,0,0,.13);border-radius:10px;padding:1rem}.article-faq summary{font-weight:700;cursor:pointer}.article-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:2rem}.article-tags span{padding:6px 10px;border-radius:999px;background:#edf1ee;font-size:.82rem}.legal-article-note{margin-top:2.5rem;padding:1rem 1.2rem;background:#f5f5f3;border-radius:10px;font-size:.9rem}

/* 2026-08-06: Premium-Teamdarstellung */
.team-page{padding-top:clamp(78px,8vw,118px)}
.team-intro{align-items:flex-end;gap:5vw;margin-bottom:clamp(42px,6vw,72px)}
.team-intro>div{max-width:650px}.team-intro>p{max-width:540px;margin:0;color:var(--muted);font-size:1.05rem;line-height:1.75}
.team-grid-full{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(42px,5vw,76px) clamp(20px,2vw,34px)}
.team-grid-full .person:nth-child(3n+2){transform:none}
.person{position:relative;color:inherit;border-radius:2px;outline:none;transition:transform .35s var(--ease),box-shadow .35s var(--ease);min-width:0}
.person-image{aspect-ratio:4/5;isolation:isolate;background:#d7d2c8}
.person img{height:100%;aspect-ratio:auto;object-position:var(--portrait-position,center);filter:grayscale(1) contrast(.98);transition:filter .55s ease,transform .7s var(--ease)}
.person-image::after{inset:42% 0 0;background:linear-gradient(transparent,rgba(2,18,14,.86));opacity:.15}
.person-overlay{position:absolute;z-index:3;left:22px;right:22px;bottom:20px;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:.78rem;font-weight:700;letter-spacing:.04em;opacity:0;transform:translateY(10px);transition:opacity .32s ease,transform .32s ease}
.person-overlay i,.person-link i{font-style:normal;transition:transform .25s ease}.person:hover .person-overlay,.person:focus-visible .person-overlay{opacity:1;transform:none}
.person:hover .person-overlay i,.person:focus-visible .person-overlay i,.person:hover .person-link i,.person:focus-visible .person-link i{transform:translate(3px,-3px)}
.person:hover,.person:focus-visible{transform:translateY(-7px);box-shadow:0 22px 50px rgba(3,21,16,.13)}
.person:hover img,.person:focus-visible img{filter:grayscale(.1) contrast(1);transform:scale(1.035)}
.person:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
.person-content{padding:25px 4px 4px!important}.person h3{font-size:clamp(1.65rem,2vw,2.25rem);line-height:1.08;margin:0 0 10px}
.person-extra{font-size:.76rem!important;line-height:1.5!important;color:var(--muted)!important;text-transform:uppercase;letter-spacing:.075em;margin:0 0 16px}
.person-badges{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.person-badges span{display:inline-flex;align-items:center;min-height:30px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--gold) 50%,transparent);background:color-mix(in srgb,var(--gold) 9%,transparent);color:var(--ink);font-size:.69rem;line-height:1.25;letter-spacing:.035em}
.person-link{display:inline-flex;align-items:center;gap:9px;margin-top:20px;color:var(--gold);font-size:.76rem;font-weight:700;letter-spacing:.04em}
@media(max-width:980px){.team-intro{align-items:flex-start;flex-direction:column}.team-grid-full{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.team-grid-full{grid-template-columns:1fr;gap:48px}.person-image{aspect-ratio:4/4.9}.person-content{padding-top:20px!important}.person-overlay{opacity:1;transform:none}.person:hover,.person:focus-visible{transform:none;box-shadow:none}}
@media(prefers-reduced-motion:reduce){.person,.person img,.person-overlay,.person-overlay i,.person-link i{transition:none!important}.person:hover,.person:focus-visible,.person:hover img,.person:focus-visible img{transform:none!important}}

/* Google Maps: kompakter, heller Routenbereich statt dunklem Vollflächen-Balken */
.map-embed{
  background:transparent;
  overflow:visible;
}
.map-embed iframe{
  border:1px solid rgba(200,167,101,.58);
  box-shadow:0 18px 46px rgba(10,34,28,.10);
}
.map-route-link{
  width:max-content;
  max-width:100%;
  margin:14px 0 0;
  padding:12px 16px;
  gap:12px;
  color:var(--green);
  background:var(--cream-2);
  border:1px solid var(--line);
  box-shadow:0 8px 22px rgba(10,34,28,.07);
  transition:background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.map-route-link:hover,
.map-route-link:focus-visible{
  color:var(--green);
  background:#fff;
  border-color:var(--gold);
  transform:translateY(-2px);
  box-shadow:0 12px 28px rgba(10,34,28,.11);
}
.map-route-link i{
  color:var(--gold);
}
@media(max-width:640px){
  .map-route-link{
    width:100%;
    justify-content:center;
    padding:13px 15px;
  }
}

/* Google Maps Zwei-Klick-Lösung */
.map-consent-card{background:transparent;overflow:visible}
.map-consent-panel{min-height:clamp(380px,48vw,560px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:clamp(28px,5vw,64px);border:1px solid rgba(200,167,101,.58);background:linear-gradient(145deg,var(--cream-2),#fff);box-shadow:0 18px 46px rgba(10,34,28,.10)}
.map-consent-panel h3{font-size:clamp(1.7rem,3vw,2.8rem);margin:10px 0 14px}
.map-consent-panel p{max-width:620px;margin:0 auto 22px;color:var(--muted)}
.map-remember{display:flex;align-items:flex-start;gap:10px;max-width:560px;margin:0 auto 24px;text-align:left;font-size:.86rem;color:var(--muted)}
.map-remember input{margin-top:3px;accent-color:var(--gold)}
.map-consent-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:18px}
.map-frame-wrap iframe{width:100%;height:clamp(380px,48vw,560px);border:1px solid rgba(200,167,101,.58);display:block;box-shadow:0 18px 46px rgba(10,34,28,.10);filter:grayscale(.18) contrast(.98)}
.map-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:14px}
.map-actions .map-route-link{margin:0}
.map-withdraw{border:0;background:transparent;color:var(--muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer;font:inherit;font-size:.82rem;padding:10px 0}
.map-withdraw:hover,.map-withdraw:focus-visible{color:var(--green)}
@media(max-width:640px){.map-consent-panel{min-height:340px;padding:28px 20px}.map-consent-actions{width:100%;flex-direction:column}.map-consent-actions .btn{width:100%;justify-content:center}.map-actions{align-items:stretch;flex-direction:column}.map-withdraw{text-align:center}.map-actions .map-route-link{width:100%}}

/* Fachbeiträge – kompakte, redaktionelle Detailansicht */
.publication-detail-hero-compact{padding-top:clamp(150px,14vw,190px);padding-bottom:clamp(64px,7vw,88px)}
.publication-detail-hero-compact h1{max-width:18ch;font-size:clamp(3rem,5.4vw,5.35rem);line-height:.98}
.article-category-badge{display:inline-flex;align-items:center;min-height:30px;padding:7px 12px;margin-bottom:22px;border:1px solid rgba(200,167,101,.48);border-radius:999px;background:rgba(200,167,101,.11);color:#e2bf78;font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.publication-detail-polished{grid-template-columns:minmax(0,720px) minmax(260px,340px);gap:clamp(60px,8vw,120px);padding-top:clamp(72px,8vw,110px)}
.publication-detail-polished .publication-article{max-width:720px;font-size:1.08rem;line-height:1.82}
.publication-detail-polished .publication-article>p,.publication-detail-polished .article-richtext{max-width:68ch}
.article-toc{margin:32px 0 46px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.52);overflow:hidden}
.article-toc summary{cursor:pointer;padding:17px 20px;font-weight:800;list-style:none}.article-toc summary::-webkit-details-marker{display:none}.article-toc summary::after{content:'+';float:right;color:var(--gold)}.article-toc details[open] summary::after{content:'−'}
.article-toc ol{margin:0;padding:0 22px 20px 22px;list-style:none}.article-toc li{margin:9px 0;display:grid;grid-template-columns:2rem minmax(0,1fr);align-items:start;gap:4px}.article-toc .toc-level-2{font-weight:650}.article-toc .toc-level-3{margin-left:28px;font-size:.94em;font-weight:400;grid-template-columns:1.35rem minmax(0,1fr);color:var(--muted)}.article-toc .toc-number{font-variant-numeric:tabular-nums;color:var(--gold);font-weight:800}.article-toc .toc-indent{color:var(--gold);opacity:.7}.article-toc a{text-decoration:none;color:inherit}.article-toc a:hover,.article-toc a:focus-visible{color:var(--gold)}
.publication-contact-card{position:sticky;top:110px;padding:30px;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:16px;background:linear-gradient(145deg,rgba(255,255,255,.75),rgba(244,240,232,.82));box-shadow:0 24px 55px rgba(3,25,21,.10)}
.publication-contact-card img{display:block;margin-bottom:22px}.publication-contact-card h2{margin:12px 0 12px;font-size:clamp(1.55rem,2.4vw,2.15rem)}.publication-contact-card p{color:var(--muted)}
.publication-contact-links{display:grid;gap:7px;margin:20px 0}.publication-contact-links a{color:var(--ink);font-weight:700;overflow-wrap:anywhere}.publication-contact-card .btn{width:100%;justify-content:center;margin-top:5px}.publication-contact-card .text-link{display:inline-flex;margin-top:18px}
.related-publications{padding-top:30px}.related-publications-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.related-publication-card{border:1px solid var(--line);background:var(--cream);min-width:0;transition:transform .28s var(--ease),box-shadow .28s var(--ease)}.related-publication-card:hover{transform:translateY(-5px);box-shadow:0 22px 44px rgba(3,25,21,.10)}.related-publication-image{display:block;aspect-ratio:16/10;overflow:hidden}.related-publication-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}.related-publication-card:hover img{transform:scale(1.035)}.related-publication-card>div{padding:24px}.related-publication-card h3{font-size:1.5rem;margin:8px 0 12px}.related-publication-card p{color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.publication-article h2,.publication-article h3{scroll-margin-top:110px}.article-callout,.article-quote,.article-faq,.legal-article-note{box-shadow:0 12px 28px rgba(3,25,21,.045)}
@media(max-width:980px){.publication-detail-polished{grid-template-columns:1fr}.publication-contact-card{position:static;max-width:720px}.related-publications-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.publication-detail-hero-compact{padding-top:138px;padding-bottom:58px}.publication-detail-hero-compact h1{font-size:clamp(2.65rem,13vw,4.25rem)}.publication-detail-polished{padding-top:62px}.publication-contact-card{padding:24px}.related-publications-grid{grid-template-columns:1fr}.article-toc{margin:26px 0 36px}.article-toc details:not([open]) ol{display:none}}
/* Bibliothek – strukturiertes Kanzlei-Wissensarchiv */
.library-hero{padding:clamp(150px,15vw,205px) 0 54px;background:var(--cream)}.library-hero-inner,.library-page{width:min(1320px,calc(100% - 64px));margin:auto}.library-hero-inner{display:grid;grid-template-columns:1fr 280px;align-items:end;gap:60px}.library-hero h1{font-size:clamp(3.5rem,6vw,6.5rem);line-height:.94;max-width:11ch;margin:14px 0 24px}.library-hero p{max-width:610px;color:var(--muted);font-size:1.04rem}.library-mark{font-family:Georgia,serif;font-size:15rem;line-height:.72;text-align:right;color:rgba(200,167,101,.12)}
.library-page{padding-top:0;padding-bottom:110px}.library-filter{display:grid;grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(145px,.65fr)) auto;gap:14px;align-items:end;padding:22px;border:1px solid var(--line);background:rgba(255,255,255,.45)}.library-filter label{display:grid;gap:7px}.library-filter label>span{font-size:.66rem;text-transform:uppercase;letter-spacing:.11em;color:var(--muted)}.library-filter input,.library-filter select{height:50px;width:100%;border:1px solid var(--line);background:#fff;padding:0 14px;color:var(--ink);font:inherit}.library-filter .btn{height:50px}.library-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:28px 0 16px;color:var(--muted);font-size:.88rem}.library-list{border-top:1px solid var(--line)}.library-entry{display:grid;grid-template-columns:110px minmax(0,1fr) 52px;gap:28px;padding:34px 20px 34px 6px;border-bottom:1px solid var(--line);align-items:start;transition:background .25s ease}.library-entry:hover{background:rgba(255,255,255,.42)}.library-year{font-family:Georgia,serif;font-size:1.35rem;color:var(--gold);padding-top:7px}.library-kicker{display:flex;flex-wrap:wrap;gap:8px;color:var(--gold);font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:9px}.library-entry h2{font-size:clamp(1.7rem,2.7vw,2.65rem);line-height:1.05;margin:0 0 11px;max-width:27ch;overflow-wrap:normal;word-break:normal;hyphens:none}.library-entry h2 a{color:inherit;text-decoration:none}.library-entry p{max-width:78ch;color:var(--muted);margin:0 0 15px;line-height:1.65}.library-meta{display:flex;flex-wrap:wrap;gap:9px 18px;font-size:.75rem;color:var(--muted)}.library-meta span+span:before{content:'·';margin-right:18px;color:var(--gold)}.library-arrow{font-size:1.65rem;text-decoration:none;color:var(--green);padding:8px;text-align:center;transition:transform .2s}.library-entry:hover .library-arrow{transform:translate(3px,-3px)}
@media(max-width:1050px){.library-filter{grid-template-columns:1fr 1fr 1fr}.library-search{grid-column:1/-1}.library-filter .btn{width:100%}.library-hero-inner{grid-template-columns:1fr}.library-mark{display:none}}
@media(max-width:700px){.library-hero-inner,.library-page{width:min(100% - 32px,1320px)}.library-hero{padding-top:130px}.library-hero h1{font-size:clamp(3rem,14vw,4.5rem)}.library-filter{grid-template-columns:1fr;padding:16px}.library-search{grid-column:auto}.library-entry{grid-template-columns:1fr 38px;gap:10px 14px;padding:26px 4px}.library-year{grid-column:1/-1;font-size:1rem}.library-entry h2{font-size:1.8rem}.library-meta span+span:before{display:none}.library-toolbar{align-items:flex-start;flex-direction:column}}

/* Wissenssystem: Journal & Bibliothek */
.knowledge-category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:0 0 42px}.knowledge-category-card{position:relative;display:flex;min-height:190px;flex-direction:column;padding:22px;border:1px solid var(--line);background:color-mix(in srgb,var(--cream) 76%,#fff);color:var(--ink);text-decoration:none;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}.knowledge-category-card:hover,.knowledge-category-card:focus-visible,.knowledge-category-card.active{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 15px 32px rgba(10,34,28,.08)}.knowledge-category-card strong{font:600 clamp(1.05rem,1.45vw,1.35rem)/1.15 Georgia,serif;margin:22px 0 9px}.knowledge-category-card small{color:var(--muted);line-height:1.45}.knowledge-category-card i{position:absolute;right:18px;bottom:16px;color:var(--gold);font-style:normal}.knowledge-count{position:absolute;top:18px;right:18px;display:grid;place-items:center;min-width:30px;height:30px;padding:0 7px;border-radius:999px;background:var(--green);color:#fff;font-size:.73rem;font-weight:800}.library-featured{margin:0 0 44px;padding:32px;border:1px solid var(--line);background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 8%,#fff),#fff)}.section-head.compact{margin-bottom:20px}.library-featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.library-featured-grid article{padding:24px;background:#fff;border:1px solid var(--line)}.library-featured-grid h3{font-size:clamp(1.35rem,2vw,1.8rem);line-height:1.12;margin:8px 0 10px}.library-featured-grid h3 a{color:inherit;text-decoration:none}.library-featured-grid p{color:var(--muted);line-height:1.6}.library-filter{display:grid!important;grid-template-columns:minmax(260px,1.6fr) repeat(3,minmax(145px,.75fr));gap:12px!important;align-items:end!important;padding:24px!important;border:1px solid var(--line)!important;background:rgba(255,255,255,.66)!important;margin-bottom:20px!important}.library-filter label{min-width:0!important}.library-filter .library-search{grid-column:span 2}.library-filter .btn{min-height:48px}.library-toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 0 18px;border-bottom:1px solid var(--line);margin-bottom:0}.library-entry{grid-template-columns:92px minmax(0,1fr) 42px!important;gap:28px!important;padding:34px 6px!important}.library-entry.is-featured{background:linear-gradient(90deg,color-mix(in srgb,var(--gold) 7%,transparent),transparent);border-left:3px solid var(--gold);padding-left:20px!important}.library-entry-main{min-width:0}.library-entry-main h2{max-width:950px;font-size:clamp(1.55rem,2.8vw,2.35rem);overflow-wrap:normal;word-break:normal;hyphens:auto}.library-entry-main p{max-width:900px}.library-kicker{display:flex;flex-wrap:wrap;gap:7px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.document-type-chip{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border:1px solid color-mix(in srgb,var(--gold) 42%,var(--line));background:color-mix(in srgb,var(--gold) 8%,transparent);font-size:10px!important;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.publication-labels{display:flex;align-items:center;flex-wrap:wrap;gap:9px}.publication-labels .publication-category{margin:0}.article-type-badge{display:inline-flex;align-items:center;min-height:30px;padding:7px 12px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:rgba(255,255,255,.74);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.publication-detail-hero .publication-labels{margin-bottom:22px}.publication-detail-hero .article-category-badge{margin:0}.article-tags a{padding:6px 10px;border-radius:999px;background:#edf1ee;color:var(--ink);font-size:.82rem;text-decoration:none}.article-tags a:hover{background:color-mix(in srgb,var(--gold) 18%,#edf1ee)}.article-author-card{display:grid;gap:8px;margin-bottom:20px}.article-author-card>img{width:84px;height:84px;object-fit:cover;border-radius:50%;filter:grayscale(.15)}.article-author-card h2{margin:0}.article-author-card p{margin:0 0 5px}.topic-service-link{display:grid;grid-template-columns:1fr auto;gap:3px 14px;margin:18px 0;padding:15px;border:1px solid var(--line);color:inherit;text-decoration:none}.topic-service-link small{grid-column:1/-1;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.topic-service-link span{grid-row:2;grid-column:2;color:var(--gold)}.publication-source{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);font-size:.92rem;color:var(--muted)}.service-knowledge{padding-top:0}.journal-list .publication-copy{max-width:900px}
@media(max-width:1180px){.knowledge-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.library-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.library-filter .library-search{grid-column:span 2}}
@media(max-width:760px){.knowledge-category-grid{grid-template-columns:1fr 1fr}.library-featured{padding:22px}.library-featured-grid{grid-template-columns:1fr}.library-filter{grid-template-columns:1fr}.library-filter .library-search{grid-column:auto}.library-entry{grid-template-columns:58px minmax(0,1fr) 30px!important;gap:14px!important}.library-entry.is-featured{padding-left:12px!important}.library-year{font-size:.8rem}}
@media(max-width:520px){.knowledge-category-grid{grid-template-columns:1fr}.knowledge-category-card{min-height:150px}}

/* Bibliothek – professionelles Wissensarchiv */
.library-hero{padding:clamp(150px,13vw,190px) 0 clamp(64px,7vw,92px)}
.library-hero-inner,.library-page{width:min(1320px,calc(100% - 72px));max-width:none}
.library-hero-inner{grid-template-columns:minmax(0,920px) minmax(180px,1fr);gap:72px;align-items:center}
.library-hero h1{max-width:none;font-size:clamp(3.6rem,5.8vw,6.25rem);line-height:.94;letter-spacing:-.045em;margin:12px 0 28px;overflow-wrap:normal;word-break:keep-all;hyphens:none}
.library-hero h1 span{display:block;white-space:nowrap}
.library-hero p{max-width:720px;font-size:1.08rem;line-height:1.7}
.library-mark{font-size:13rem;align-self:center}
.library-page.section{padding:64px 0 120px}
.library-section-heading,.library-search-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin:0 0 28px}
.library-section-heading>div{min-width:0}
.library-section-heading .eyebrow,.library-search-head .eyebrow{margin-bottom:12px}
.library-section-heading h2,.library-search-head h2{font-size:clamp(2rem,3.3vw,3.25rem);margin:0;max-width:none}
.library-section-heading p,.library-search-head p{max-width:540px;margin:0;color:var(--muted);line-height:1.6}
.knowledge-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:64px}
.knowledge-category-card{min-height:210px;padding:28px 30px 26px;overflow:hidden}
.knowledge-category-card strong{font-size:clamp(1.3rem,1.7vw,1.65rem);line-height:1.12;margin:18px 44px 12px 0;overflow-wrap:normal;word-break:normal;hyphens:none}
.knowledge-category-card small{max-width:38ch;font-size:.86rem;line-height:1.55}
.knowledge-category-card:has(.knowledge-count:first-child){ }
.knowledge-count{top:24px;right:24px}
.library-search-head{margin-top:6px;margin-bottom:18px}
.library-filter{grid-template-columns:minmax(320px,2fr) repeat(3,minmax(170px,1fr))!important;gap:14px!important;padding:26px!important;margin-bottom:18px!important}
.library-filter .library-search{grid-column:span 2}
.library-filter label>span{font-size:.64rem}
.library-filter input,.library-filter select{height:52px}
.library-filter .btn{height:52px;min-width:150px;justify-content:center}
.library-toolbar{padding:16px 2px 20px;margin-bottom:0}
.library-list{border-top:1px solid var(--line)}
.library-entry{grid-template-columns:100px minmax(0,1fr) 48px!important;gap:30px!important;padding:38px 18px 38px 8px!important}
.library-entry-main h2{font-size:clamp(1.85rem,2.6vw,2.65rem);line-height:1.08;max-width:1050px;hyphens:none!important;overflow-wrap:normal!important;word-break:normal!important}
.library-entry-main p{max-width:940px;font-size:.98rem;line-height:1.68}
.library-kicker{font-size:.65rem;gap:8px;margin-bottom:10px}
.library-year{font-size:1.2rem;padding-top:5px}
.library-meta{gap:10px 16px;align-items:center}
.library-arrow{align-self:center}
@media(max-width:1180px){
 .library-hero-inner{grid-template-columns:1fr 160px;gap:36px}
 .library-hero h1 span{white-space:normal}
 .knowledge-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .library-filter{grid-template-columns:repeat(3,minmax(0,1fr))!important}
 .library-filter .library-search{grid-column:span 2}
}
@media(max-width:760px){
 .library-hero-inner,.library-page{width:min(100% - 32px,1320px)}
 .library-hero-inner{grid-template-columns:1fr}.library-mark{display:none}
 .library-hero h1{font-size:clamp(3rem,13vw,4.6rem)}
 .library-section-heading,.library-search-head{display:block}
 .library-section-heading p,.library-search-head p{margin-top:12px}
 .knowledge-category-grid{grid-template-columns:1fr}
 .knowledge-category-card{min-height:160px}
 .library-filter{grid-template-columns:1fr!important;padding:18px!important}
 .library-filter .library-search{grid-column:auto}
 .library-entry{grid-template-columns:1fr 34px!important;gap:12px 16px!important;padding:30px 4px!important}
 .library-year{grid-column:1/-1}
 .library-entry-main h2{font-size:clamp(1.7rem,8vw,2.15rem)}
}


/* Journal prominent on homepage */
.home-journal{position:relative;padding-top:clamp(78px,8vw,118px);padding-bottom:clamp(80px,8vw,120px);border-bottom:1px solid var(--line)}
.home-journal-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:56px;margin-bottom:42px}
.home-journal-head h2{max-width:15ch;margin:.12em 0 .3em;font-size:clamp(2.7rem,5vw,5.4rem);line-height:.94}
.home-journal-head p{max-width:760px;margin:0;color:var(--muted);font-size:clamp(1rem,1.25vw,1.14rem);line-height:1.7}
.home-journal-all{white-space:nowrap;margin-bottom:8px}
.home-journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.home-journal-card{min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--cream) 78%,#fff);transition:background .25s ease,transform .25s ease}
.home-journal-card:hover{background:#fff;transform:translateY(-3px)}
.home-journal-card-link{display:flex;min-height:360px;height:100%;flex-direction:column;padding:28px;color:var(--ink);text-decoration:none}
.home-journal-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:52px}
.home-journal-date{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.home-journal-arrow{font-size:1.4rem;color:var(--green)}
.home-journal-labels{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.home-journal-labels span{font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
.home-journal-labels span+span:before{content:'·';margin-right:8px;color:var(--muted)}
.home-journal-card h3{margin:0 0 14px;font-size:clamp(1.55rem,2.15vw,2.25rem);line-height:1.04;overflow-wrap:normal;word-break:normal;hyphens:auto}
.home-journal-card p{margin:0 0 28px;color:var(--muted);line-height:1.62;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.home-journal-meta{display:flex;flex-wrap:wrap;gap:7px 16px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}
.home-journal-meta span+span:before{content:'·';margin-right:16px;color:var(--gold)}
.home-journal-empty{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:44px;padding:42px 46px;border:1px solid var(--line);background:linear-gradient(120deg,color-mix(in srgb,var(--gold) 8%,#fff),#fff)}
.home-journal-empty-kicker{display:block;margin-bottom:10px;color:var(--gold);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.home-journal-empty h3{margin:0 0 10px;font-size:clamp(1.8rem,3vw,3rem)}
.home-journal-empty p{max-width:780px;margin:0;color:var(--muted);line-height:1.65}
@media(max-width:980px){.home-journal-head{grid-template-columns:1fr;gap:20px}.home-journal-grid{grid-template-columns:1fr 1fr}.home-journal-card:last-child{grid-column:1/-1}.home-journal-empty{grid-template-columns:1fr;align-items:start}}
@media(max-width:640px){.home-journal{padding-left:6vw;padding-right:6vw}.home-journal-grid{grid-template-columns:1fr}.home-journal-card:last-child{grid-column:auto}.home-journal-card-link{min-height:0;padding:24px}.home-journal-card-top{margin-bottom:34px}.home-journal-empty{padding:28px}.home-journal-meta span+span:before{display:none}.home-journal-meta{gap:7px 12px}}

/* Startseite: neueste Journalbeiträge */
.home-journal-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.home-journal-empty-compact{padding:30px 34px}
.home-journal-empty-compact h3{font-size:clamp(1.55rem,2.5vw,2.3rem)}
.home-journal-empty-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
@media(max-width:760px){.home-journal-footer{align-items:flex-start;flex-direction:column}.home-journal-empty-actions{align-items:flex-start;flex-direction:column;gap:16px}}

.social-svg{width:17px;height:17px;display:block}.top-social a,.social-links a{display:inline-grid;place-items:center}


/* ===== Journal Magazin 2026 ===== */
.journal-magazine{max-width:1440px!important;margin-inline:auto!important;padding-left:clamp(28px,5vw,80px)!important;padding-right:clamp(28px,5vw,80px)!important}
.journal-hero .page-hero-inner{max-width:1440px!important;padding-left:clamp(28px,5vw,80px)!important;padding-right:clamp(28px,5vw,80px)!important}
.journal-hero h1{max-width:960px;font-size:clamp(3.3rem,6vw,6.8rem);line-height:.94;letter-spacing:-.045em;text-wrap:balance}
.journal-hero p{max-width:780px;font-size:1.05rem;line-height:1.7}
.journal-topline{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:26px}
.journal-topline h2{font-size:clamp(2.2rem,3.8vw,4rem);line-height:1;margin:.35rem 0 0}
.journal-topline p{max-width:520px;color:var(--muted,#68736f);line-height:1.65;margin:0}
.journal-filter{display:grid!important;grid-template-columns:minmax(300px,1.8fr) minmax(180px,.85fr) minmax(180px,.75fr) auto!important;gap:14px!important;align-items:end!important;margin:0 0 34px!important;width:100%!important}
.journal-filter label{min-width:0}
.journal-filter input,.journal-filter select{width:100%!important}
.journal-reset{grid-column:1/-1;justify-self:end}
.journal-editorial{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.72fr);gap:28px;align-items:stretch}
.journal-feature,.journal-side-card,.journal-grid-card{position:relative;border:1px solid rgba(13,45,36,.15);background:rgba(255,255,255,.32);overflow:hidden}
.journal-feature{min-height:500px;display:grid;grid-template-columns:1fr}
.journal-feature:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold,#c7a35a)}
.journal-feature-image{display:block;max-height:330px;overflow:hidden}
.journal-feature-image img{width:100%;height:100%;min-height:280px;object-fit:cover;display:block}
.journal-feature-content{padding:clamp(30px,4vw,56px);display:flex;flex-direction:column;justify-content:flex-end}
.journal-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-size:.72rem;line-height:1.3;letter-spacing:.085em;text-transform:uppercase;color:#a17b37;font-weight:700}
.journal-type{display:inline-flex;width:max-content;border:1px solid rgba(161,123,55,.45);padding:.28rem .52rem;margin-top:12px;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;font-weight:800;color:#14372d;background:rgba(255,255,255,.72)}
.journal-feature .journal-type{margin-top:0}
.journal-feature h2{font-size:clamp(2.65rem,4.5vw,5.15rem);line-height:.98;letter-spacing:-.04em;max-width:1000px;margin:14px 0 16px;text-wrap:balance;overflow-wrap:normal;word-break:normal;hyphens:auto}
.journal-feature h2 a,.journal-side-card h3 a,.journal-grid-card h3 a{color:inherit;text-decoration:none}
.journal-summary{color:#64716c;line-height:1.7;margin:0}
.journal-feature .journal-summary{font-size:1.02rem;max-width:820px}
.journal-footer-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:20px;color:#65716d;font-size:.82rem}
.journal-readmore{display:inline-flex;align-items:center;gap:9px;width:max-content;margin-top:24px;color:#0d2d24;text-decoration:none;font-weight:800}
.journal-side-stack{display:grid;grid-template-rows:1fr 1fr;gap:28px}
.journal-side-card{padding:30px 30px 28px;min-height:236px;display:flex;flex-direction:column}
.journal-side-card h3{font-size:clamp(1.75rem,2.35vw,2.65rem);line-height:1.02;letter-spacing:-.03em;margin:12px 32px 11px 0;text-wrap:balance;overflow-wrap:normal;word-break:normal;hyphens:auto}
.journal-side-card .journal-summary{font-size:.91rem;line-height:1.55}
.journal-card-arrow{position:absolute;right:22px;top:22px;color:#0d2d24;font-size:1.3rem;text-decoration:none}
.journal-more-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:68px 0 22px;padding-top:34px;border-top:1px solid rgba(13,45,36,.16)}
.journal-more-head h2{font-size:clamp(2.2rem,3.6vw,3.8rem);line-height:1;margin:.35rem 0 0}
.journal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.journal-grid-card{padding:28px 28px 30px;min-height:330px}
.journal-grid-card h3{font-size:clamp(1.6rem,2vw,2.3rem);line-height:1.04;letter-spacing:-.025em;margin:12px 24px 12px 0;text-wrap:balance;overflow-wrap:normal;word-break:normal;hyphens:auto}
.journal-grid-card p{color:#64716c;line-height:1.58}
.journal-empty{padding:44px;border:1px solid rgba(13,45,36,.16);background:rgba(255,255,255,.3)}
.journal-empty h2{font-size:clamp(2rem,3vw,3rem);max-width:760px}
.social-svg{display:block;width:17px;height:17px;overflow:visible}
header a[aria-label="Facebook"],header a[aria-label="Instagram"]{display:inline-grid!important;place-items:center!important}
@media(max-width:1100px){
  .journal-editorial{grid-template-columns:1fr}
  .journal-side-stack{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .journal-filter{grid-template-columns:minmax(250px,1.5fr) 1fr 1fr!important}
  .journal-filter .btn{grid-column:1/-1;width:max-content}
}
@media(max-width:720px){
  .journal-magazine,.journal-hero .page-hero-inner{padding-left:22px!important;padding-right:22px!important}
  .journal-topline,.journal-more-head{align-items:flex-start;flex-direction:column}
  .journal-filter{grid-template-columns:1fr!important}
  .journal-filter .btn{grid-column:auto;width:100%}
  .journal-reset{grid-column:auto;justify-self:start}
  .journal-editorial,.journal-side-stack,.journal-grid{grid-template-columns:1fr}
  .journal-feature{min-height:0}
  .journal-feature-content{padding:28px 24px 30px}
  .journal-feature h2{font-size:clamp(2.1rem,10.5vw,3.7rem)}
  .journal-side-card,.journal-grid-card{min-height:0}
}


/* ===== Journal Layout Hotfix 2026-08 ===== */
.publications-page.journal-magazine{
  width:min(100% - 48px, 1440px)!important;
  max-width:1440px!important;
  margin:0 auto!important;
  padding:72px 0 96px!important;
  box-sizing:border-box!important;
}

.journal-hero .page-hero-inner{
  width:min(100% - 48px, 1440px)!important;
  max-width:1440px!important;
  margin:0 auto!important;
  padding-left:0!important;
  padding-right:0!important;
  box-sizing:border-box!important;
}

.journal-topline{
  width:100%!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr)!important;
  gap:56px!important;
  align-items:end!important;
  margin:0 0 34px!important;
}

.journal-topline > *{min-width:0!important}

.journal-topline h2{
  max-width:none!important;
  width:auto!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

.journal-topline p{
  max-width:620px!important;
  margin:0!important;
}

.journal-filter{
  width:100%!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:minmax(360px,1.7fr) minmax(220px,.85fr) minmax(210px,.75fr) auto!important;
  gap:16px!important;
  align-items:end!important;
  margin:0 0 44px!important;
  padding:0!important;
}

.journal-filter label,
.journal-filter input,
.journal-filter select{
  min-width:0!important;
  max-width:none!important;
}

.journal-editorial{
  width:100%!important;
  max-width:none!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.65fr) minmax(360px,.72fr)!important;
  gap:30px!important;
  align-items:stretch!important;
}

.journal-feature,
.journal-side-stack,
.journal-side-card,
.journal-grid,
.journal-grid-card{
  min-width:0!important;
  max-width:none!important;
}

.journal-feature{width:100%!important}

.journal-feature h2,
.journal-side-card h3,
.journal-grid-card h3{
  max-width:none!important;
  width:auto!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}

.journal-side-stack,
.journal-side-card,
.journal-more-head,
.journal-grid{
  width:100%!important;
  max-width:none!important;
}

.journal-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

@media (max-width:1180px){
  .publications-page.journal-magazine,
  .journal-hero .page-hero-inner{
    width:min(100% - 40px, 1180px)!important;
  }
  .journal-topline{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  .journal-filter{
    grid-template-columns:minmax(280px,1.4fr) 1fr 1fr!important;
  }
  .journal-filter .btn{
    grid-column:1/-1!important;
    width:max-content!important;
  }
  .journal-editorial{
    grid-template-columns:1fr!important;
  }
  .journal-side-stack{
    grid-template-columns:1fr 1fr!important;
    grid-template-rows:auto!important;
  }
}

@media (max-width:760px){
  .publications-page.journal-magazine,
  .journal-hero .page-hero-inner{
    width:min(100% - 28px, 760px)!important;
  }
  .publications-page.journal-magazine{
    padding:48px 0 72px!important;
  }
  .journal-filter,
  .journal-side-stack,
  .journal-grid{
    grid-template-columns:1fr!important;
  }
  .journal-filter .btn{
    width:100%!important;
    grid-column:auto!important;
  }
  .journal-feature h2,
  .journal-side-card h3,
  .journal-grid-card h3{
    hyphens:auto!important;
  }
}

/* Journal – redaktionelle Referenzstruktur */
.ref-journal{background:#f6f2e9;color:#102c25;padding:72px 0 105px}.ref-journal-wrap{width:min(100% - 48px,1320px);margin:auto}
.ref-journal-intro{padding:10px 0 38px;border-bottom:1px solid rgba(16,44,37,.18)}.ref-journal-intro h1{font-family:var(--font-serif,serif);font-size:clamp(3.4rem,6vw,6.3rem);line-height:.95;letter-spacing:-.045em;margin:12px 0 16px;max-width:900px}.ref-journal-intro p{max-width:690px;color:#5e6b67;line-height:1.65}
.ref-topics{display:flex;gap:27px;overflow:auto;white-space:nowrap;padding:19px 0 16px;border-bottom:1px solid rgba(16,44,37,.18);scrollbar-width:none}.ref-topics a{font-size:.72rem;color:#354a44;text-decoration:none;padding-bottom:5px;border-bottom:1px solid transparent}.ref-topics a.active,.ref-topics a:hover{color:#9b7432;border-color:#9b7432}
.ref-search{display:flex;justify-content:flex-end;margin:23px 0 7px}.ref-search input{width:min(100%,430px);padding:12px 14px;border:1px solid rgba(16,44,37,.18);background:rgba(255,255,255,.32)}.ref-search button{border:0;background:#102c25;color:white;padding:0 22px;font-weight:700}
.ref-list{border-top:1px solid rgba(16,44,37,.16)}.ref-row{display:grid;grid-template-columns:290px minmax(0,1fr);gap:38px;align-items:center;padding:25px 0;border-bottom:1px solid rgba(16,44,37,.16)}.ref-image{display:block;aspect-ratio:1.52;background:linear-gradient(135deg,#102c25,#29483f);overflow:hidden}.ref-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.ref-row:hover img{transform:scale(1.025)}
.ref-meta{display:flex;gap:15px;flex-wrap:wrap;font-size:.68rem;letter-spacing:.07em;text-transform:uppercase;color:#9b7432;font-weight:700}.ref-copy h2{font-family:var(--font-serif,serif);font-size:clamp(1.8rem,2.6vw,2.75rem);line-height:1.03;letter-spacing:-.025em;margin:9px 0}.ref-copy h2 a{color:inherit;text-decoration:none}.ref-copy>p{color:#596862;line-height:1.55;max-width:760px;margin:0}.ref-foot{display:flex;gap:18px;flex-wrap:wrap;font-size:.75rem;color:#6a7672;margin-top:12px}.ref-read{display:inline-block;margin-top:12px;color:#9b7432;text-decoration:none;font-size:.78rem;font-weight:700}.ref-empty{padding:55px 0}
@media(max-width:760px){.ref-journal-wrap{width:min(100% - 30px,720px)}.ref-row{grid-template-columns:1fr;gap:17px}.ref-image{aspect-ratio:16/9}.ref-search input{width:100%}}


/* ===== Kuratierte Bibliothek ===== */
.knowledge-library{background:#f6f2e9}
.knowledge-hero{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(360px,.88fr);min-height:520px;background:#102c25;color:#f7f1e6}
.knowledge-hero-copy{padding:clamp(52px,6vw,92px) clamp(34px,6vw,90px)}
.knowledge-hero-copy .eyebrow{color:#c5a15d}
.knowledge-hero-copy h1{font-family:var(--font-serif,serif);font-size:clamp(3rem,5vw,5.7rem);line-height:.98;letter-spacing:-.04em;margin:12px 0 30px;max-width:800px}
.knowledge-hero-copy h1 em{font-weight:400;color:#c5a15d}
.knowledge-categories{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid rgba(247,241,230,.18)}
.knowledge-category{display:flex;flex-direction:column;gap:22px;min-height:132px;padding:24px 24px 22px;border-right:1px solid rgba(247,241,230,.16);border-bottom:1px solid rgba(247,241,230,.16);color:#f7f1e6;text-decoration:none;transition:background .2s}
.knowledge-category:nth-child(3n){border-right:0}
.knowledge-category:hover,.knowledge-category.active{background:rgba(197,161,93,.08)}
.knowledge-category>span{font-family:var(--font-serif,serif);font-size:1.35rem;line-height:1.08}
.knowledge-category small{margin-top:auto;font-size:.75rem;color:#d8d2c5}.knowledge-category b{color:#c5a15d;margin-left:5px}
.knowledge-hero-image{position:relative;overflow:hidden;background:linear-gradient(130deg,#2c251b,#111d19)}
.knowledge-books{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:center;gap:8px;padding:58px 28px 0;background:radial-gradient(circle at 70% 18%,rgba(255,209,129,.17),transparent 34%),linear-gradient(to bottom,rgba(0,0,0,.02),rgba(0,0,0,.26))}
.book{height:72%;width:68px;border-radius:4px 4px 0 0;background:linear-gradient(90deg,#171610,#322b1e 45%,#16150f);border:1px solid rgba(217,179,101,.28);box-shadow:10px 10px 22px rgba(0,0,0,.28);display:flex;align-items:flex-start;justify-content:center;padding-top:48px;color:#c6a15b;font-family:var(--font-serif,serif);font-size:1.05rem}
.book-a{height:78%;width:92px;font-size:1.35rem}.book-b{height:69%}.book-c{height:74%}.book-d{height:67%}.book-e{height:71%}
.knowledge-content{width:min(100% - 48px,1320px);margin:auto;padding:70px 0 100px}
.knowledge-content-head{display:flex;justify-content:space-between;align-items:end;gap:30px;padding-bottom:28px;border-bottom:1px solid rgba(16,44,37,.18)}
.knowledge-content-head h2{font-family:var(--font-serif,serif);font-size:clamp(2.6rem,4.4vw,4.8rem);line-height:1;margin:8px 0}.knowledge-content-head p{color:#64716d}.knowledge-back{color:#9b7432;text-decoration:none;font-weight:700}
.knowledge-filter{display:grid;grid-template-columns:minmax(300px,1.5fr) repeat(4,minmax(150px,.72fr)) auto;gap:12px;align-items:end;padding:28px 0}
.knowledge-filter label{display:flex;flex-direction:column;gap:6px}.knowledge-filter label span{font-size:.67rem;letter-spacing:.08em;text-transform:uppercase;color:#6d7773}.knowledge-filter input,.knowledge-filter select{width:100%;padding:12px 13px;border:1px solid rgba(16,44,37,.18);background:rgba(255,255,255,.45);color:#102c25}
.knowledge-results{border-top:1px solid rgba(16,44,37,.18)}.knowledge-result{display:grid;grid-template-columns:150px minmax(0,1fr) 36px;gap:28px;padding:28px 0;border-bottom:1px solid rgba(16,44,37,.18);align-items:start}.knowledge-result-meta{display:flex;flex-direction:column;gap:8px;color:#9b7432;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.knowledge-result-path{font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:#9b7432;font-weight:700}.knowledge-result h3{font-family:var(--font-serif,serif);font-size:clamp(1.75rem,2.5vw,2.75rem);line-height:1.04;margin:8px 0}.knowledge-result h3 a{color:inherit;text-decoration:none}.knowledge-result p{color:#5f6c67;line-height:1.55;max-width:800px;margin:0}.knowledge-result-foot{display:flex;gap:16px;flex-wrap:wrap;font-size:.75rem;color:#6b7672;margin-top:12px}.knowledge-result-arrow{font-size:1.35rem;color:#102c25;text-decoration:none}.knowledge-empty{padding:48px 0;color:#69746f}
@media(max-width:1050px){.knowledge-hero{grid-template-columns:1fr}.knowledge-hero-image{min-height:320px}.knowledge-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.knowledge-filter .wide{grid-column:1/-1}.knowledge-filter .btn{width:max-content}}
@media(max-width:720px){.knowledge-categories{grid-template-columns:1fr}.knowledge-category{border-right:0!important}.knowledge-content{width:min(100% - 30px,680px)}.knowledge-content-head{align-items:flex-start;flex-direction:column}.knowledge-filter{grid-template-columns:1fr}.knowledge-filter .wide{grid-column:auto}.knowledge-filter .btn{width:100%}.knowledge-result{grid-template-columns:1fr;gap:12px}.knowledge-result-arrow{display:none}.knowledge-result-meta{flex-direction:row}}


/* ===== Bibliothek Referenz 1zu1 ===== */
.library-ref-page{background:#f5f1e8;padding:42px 0 100px;color:#102c25}
.library-ref-shell{
  width:min(100% - 48px,1180px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1.85fr) minmax(300px,1fr);
  min-height:430px;
  background:#102f28;
  color:#f5efe5;
  overflow:hidden;
  border:1px solid rgba(16,44,37,.12);
  box-shadow:0 10px 30px rgba(12,28,23,.08)
}
.library-ref-left{padding:40px 30px 28px}
.library-ref-heading{padding:0 0 27px;border-bottom:1px solid rgba(245,239,229,.20)}
.library-ref-heading h1{
  margin:0 0 12px;
  font-family:var(--font-serif,serif);
  font-size:clamp(2.5rem,4vw,4.4rem);
  line-height:1;
  font-weight:400;
  letter-spacing:-.03em
}
.library-ref-heading p{
  margin:0;
  font-family:var(--font-serif,serif);
  font-size:1.05rem;
  font-style:italic;
  color:#c5a15d
}
.library-ref-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.library-ref-category{
  min-height:126px;
  padding:23px 22px 18px;
  display:flex;
  flex-direction:column;
  gap:18px;
  color:#f7f1e7;
  text-decoration:none;
  border-right:1px solid rgba(245,239,229,.18);
  border-bottom:1px solid rgba(245,239,229,.18);
  transition:background .2s ease
}
.library-ref-category:nth-child(3n){border-right:0}
.library-ref-category:nth-last-child(-n+3){border-bottom:0}
.library-ref-category:hover,.library-ref-category.active{background:rgba(197,161,93,.07)}
.library-ref-category>span{
  font-family:var(--font-serif,serif);
  font-size:1.15rem;
  line-height:1.15
}
.library-ref-category small{
  margin-top:auto;
  color:#ded7ca;
  font-size:.73rem
}
.library-ref-category b{color:#c5a15d;margin-left:4px}
.library-ref-photo{min-width:0;background:#171c18}
.library-ref-photo img{
  width:100%;height:100%;display:block;object-fit:cover;object-position:center
}

.library-ref-content{
  width:min(100% - 48px,1180px);
  margin:55px auto 0
}
.library-ref-content-head{
  display:flex;justify-content:space-between;gap:28px;align-items:end;
  padding-bottom:24px;border-bottom:1px solid rgba(16,44,37,.18)
}
.library-ref-content-head h2{
  font-family:var(--font-serif,serif);
  font-size:clamp(2.4rem,4vw,4rem);line-height:1;margin:8px 0
}
.library-ref-content-head p{margin:0;color:#66736f}
.library-ref-content-head>a{color:#9b7432;text-decoration:none;font-weight:700}
.library-ref-filter{
  display:grid;
  grid-template-columns:minmax(260px,1.35fr) repeat(4,minmax(135px,.72fr)) auto;
  gap:10px;align-items:end;padding:25px 0
}
.library-ref-filter label{display:flex;flex-direction:column;gap:6px}
.library-ref-filter label>span{font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:#69756f}
.library-ref-filter input,.library-ref-filter select{
  width:100%;padding:11px 12px;border:1px solid rgba(16,44,37,.18);background:#fbf8f1;color:#102c25
}
.library-ref-results{border-top:1px solid rgba(16,44,37,.18)}
.library-ref-result{
  display:grid;grid-template-columns:135px minmax(0,1fr) 30px;gap:25px;
  padding:25px 0;border-bottom:1px solid rgba(16,44,37,.18)
}
.library-ref-meta{display:flex;flex-direction:column;gap:7px;color:#9b7432;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em}
.library-ref-path{font-size:.69rem;text-transform:uppercase;letter-spacing:.07em;color:#9b7432;font-weight:700}
.library-ref-result h3{font-family:var(--font-serif,serif);font-size:clamp(1.7rem,2.4vw,2.55rem);line-height:1.04;margin:7px 0}
.library-ref-result h3 a{color:inherit;text-decoration:none}
.library-ref-result p{margin:0;max-width:760px;line-height:1.55;color:#5f6c67}
.library-ref-foot{display:flex;gap:14px;flex-wrap:wrap;margin-top:10px;font-size:.74rem;color:#6b7772}
.library-ref-arrow{color:#102c25;text-decoration:none;font-size:1.25rem}
.library-ref-empty{padding:45px 0;color:#68746f}

@media(max-width:900px){
 .library-ref-shell{grid-template-columns:1fr}
 .library-ref-photo{height:300px}
 .library-ref-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .library-ref-category:nth-child(3n){border-right:1px solid rgba(245,239,229,.18)}
 .library-ref-category:nth-child(2n){border-right:0}
 .library-ref-filter{grid-template-columns:repeat(2,minmax(0,1fr))}
 .library-ref-filter .wide{grid-column:1/-1}
}
@media(max-width:620px){
 .library-ref-page{padding-top:24px}
 .library-ref-shell,.library-ref-content{width:min(100% - 28px,580px)}
 .library-ref-left{padding:30px 20px 20px}
 .library-ref-grid{grid-template-columns:1fr}
 .library-ref-category{border-right:0!important;border-bottom:1px solid rgba(245,239,229,.18)!important}
 .library-ref-category:last-child{border-bottom:0!important}
 .library-ref-photo{height:240px}
 .library-ref-content-head{align-items:flex-start;flex-direction:column}
 .library-ref-filter{grid-template-columns:1fr}
 .library-ref-filter .wide{grid-column:auto}
 .library-ref-filter .btn{width:100%}
 .library-ref-result{grid-template-columns:1fr;gap:10px}
 .library-ref-meta{flex-direction:row}
 .library-ref-arrow{display:none}
}


/* ===== Editorial Positionierung 2026 ===== */
.hero-copy h1 span:last-child{font-style:italic;color:#d4b168}
.home-journal-head{border-top:1px solid rgba(15,45,36,.16);padding-top:26px}
.home-journal-head .eyebrow{letter-spacing:.13em}
.office-intro-content .eyebrow,.services-home .eyebrow,.team-home .eyebrow{letter-spacing:.12em}
.services-home .section-head h2{max-width:760px}
.principle p{max-width:960px;font-family:var(--font-serif,serif);font-size:clamp(1.8rem,3.1vw,3.7rem);line-height:1.05;letter-spacing:-.025em}
@media(max-width:700px){.hero-copy h1 span:last-child{font-style:normal}}


/* ===== Bibliothek Final Premium ===== */
.library-ref-page{
  background:#f5f1e8!important;
  padding:34px 0 78px!important;
}

.library-ref-shell{
  width:min(100% - 48px,1280px)!important;
  max-width:1280px!important;
  min-height:0!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.68fr) minmax(360px,.82fr)!important;
  background:#102f28!important;
  color:#f7f1e7!important;
  overflow:hidden!important;
  border:1px solid rgba(16,44,37,.12)!important;
  box-shadow:0 14px 36px rgba(12,28,23,.08)!important;
}

.library-ref-left{
  padding:34px 30px 26px!important;
}

.library-ref-heading{
  padding:0 0 22px!important;
  border-bottom:1px solid rgba(245,239,229,.18)!important;
}

.library-ref-heading h1{
  margin:0 0 9px!important;
  font-size:clamp(2.4rem,3.8vw,4rem)!important;
  line-height:1!important;
  letter-spacing:-.03em!important;
}

.library-ref-heading p{
  margin:0!important;
  font-size:1rem!important;
  color:#c9a35c!important;
}

.library-ref-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,minmax(118px,auto))!important;
}

.library-ref-category{
  min-height:118px!important;
  padding:19px 20px 17px!important;
  gap:14px!important;
  border-right:1px solid rgba(245,239,229,.16)!important;
  border-bottom:1px solid rgba(245,239,229,.16)!important;
  background:transparent!important;
  box-sizing:border-box!important;
}

.library-ref-category:nth-child(3n){
  border-right:0!important;
}

.library-ref-category:nth-child(n+4){
  border-bottom:0!important;
}

.library-ref-category:hover,
.library-ref-category.active{
  background:rgba(197,161,93,.075)!important;
}

.library-ref-category>span{
  font-size:1.08rem!important;
  line-height:1.14!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:auto!important;
}

.library-ref-category small{
  margin-top:auto!important;
  font-size:.71rem!important;
  color:#ded7ca!important;
}

.library-ref-category-empty{
  pointer-events:none!important;
  opacity:.28!important;
}

.library-ref-photo{
  min-width:0!important;
  height:auto!important;
  min-height:100%!important;
  background:#161b17!important;
}

.library-ref-photo img{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  display:block!important;
}

/* content below category selection */
.library-ref-content{
  width:min(100% - 48px,1280px)!important;
  max-width:1280px!important;
  margin:48px auto 0!important;
}

.library-ref-content-head{
  padding-bottom:22px!important;
}

.library-ref-filter{
  grid-template-columns:minmax(280px,1.4fr) repeat(4,minmax(140px,.72fr)) auto!important;
  gap:10px!important;
  padding:22px 0!important;
}

.library-ref-result{
  grid-template-columns:125px minmax(0,1fr) 28px!important;
  gap:24px!important;
  padding:23px 0!important;
}

@media(max-width:1100px){
  .library-ref-shell{
    width:min(100% - 38px,1060px)!important;
    grid-template-columns:minmax(0,1.55fr) minmax(320px,.85fr)!important;
  }
  .library-ref-category{
    padding:17px 16px 15px!important;
  }
  .library-ref-category>span{
    font-size:1rem!important;
  }
  .library-ref-filter{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .library-ref-filter .wide{
    grid-column:1/-1!important;
  }
  .library-ref-filter .btn{
    width:max-content!important;
  }
}

@media(max-width:820px){
  .library-ref-shell{
    grid-template-columns:1fr!important;
  }
  .library-ref-photo{
    min-height:260px!important;
    height:260px!important;
  }
}

@media(max-width:640px){
  .library-ref-page{
    padding-top:20px!important;
  }
  .library-ref-shell,
  .library-ref-content{
    width:min(100% - 26px,610px)!important;
  }
  .library-ref-left{
    padding:26px 18px 18px!important;
  }
  .library-ref-grid{
    grid-template-columns:1fr!important;
    grid-template-rows:none!important;
  }
  .library-ref-category{
    min-height:92px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(245,239,229,.16)!important;
  }
  .library-ref-category:last-child{
    border-bottom:0!important;
  }
  .library-ref-filter{
    grid-template-columns:1fr!important;
  }
  .library-ref-filter .wide{
    grid-column:auto!important;
  }
  .library-ref-filter .btn{
    width:100%!important;
  }
  .library-ref-result{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
}


/* ===== Bibliothek Variante 2 Final ===== */
/* Desktop: breiter Editorial-Block wie Referenz 2 */
.library-ref-page{
  background:#f5f1e8!important;
  padding:42px 0 88px!important;
}

.library-ref-shell{
  width:min(100% - 56px,1320px)!important;
  max-width:1320px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.9fr) minmax(390px,.92fr)!important;
  min-height:0!important;
  background:#102f28!important;
  color:#f7f1e7!important;
  border:1px solid rgba(16,44,37,.12)!important;
  box-shadow:0 12px 34px rgba(12,28,23,.08)!important;
  overflow:hidden!important;
}

.library-ref-left{
  padding:38px 28px 28px!important;
}

.library-ref-heading{
  padding:0 0 25px!important;
  border-bottom:1px solid rgba(245,239,229,.20)!important;
}

.library-ref-heading h1{
  margin:0 0 11px!important;
  font-family:var(--font-serif,serif)!important;
  font-size:clamp(2.45rem,3.5vw,3.95rem)!important;
  line-height:1!important;
  font-weight:400!important;
  letter-spacing:-.03em!important;
}

.library-ref-heading p{
  margin:0!important;
  font-family:var(--font-serif,serif)!important;
  font-size:1rem!important;
  line-height:1.45!important;
  font-style:italic!important;
  color:#c7a15b!important;
}

.library-ref-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,128px)!important;
}

.library-ref-category{
  min-width:0!important;
  min-height:128px!important;
  padding:20px 22px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:16px!important;
  box-sizing:border-box!important;
  color:#f7f1e7!important;
  text-decoration:none!important;
  background:transparent!important;
  border-right:1px solid rgba(245,239,229,.18)!important;
  border-bottom:1px solid rgba(245,239,229,.18)!important;
}

.library-ref-category:nth-child(3n){
  border-right:0!important;
}

.library-ref-category:nth-child(n+4){
  border-bottom:0!important;
}

.library-ref-category:hover,
.library-ref-category.active{
  background:rgba(199,161,91,.07)!important;
}

.library-ref-category>span{
  max-width:100%!important;
  font-family:var(--font-serif,serif)!important;
  font-size:1.12rem!important;
  line-height:1.12!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:auto!important;
}

.library-ref-category small{
  margin-top:auto!important;
  font-size:.72rem!important;
  color:#ddd6c9!important;
}

.library-ref-category b{
  color:#c7a15b!important;
  margin-left:5px!important;
}

.library-ref-category-empty{
  pointer-events:none!important;
  opacity:.18!important;
}

.library-ref-photo{
  min-width:0!important;
  min-height:100%!important;
  height:auto!important;
  background:#171914!important;
  overflow:hidden!important;
}

.library-ref-photo img{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center!important;
}

/* Kategorie-Detailseite bleibt bewusst heller und funktionaler */
.library-ref-content{
  width:min(100% - 56px,1320px)!important;
  max-width:1320px!important;
  margin:52px auto 0!important;
}

.library-ref-content-head{
  display:flex!important;
  justify-content:space-between!important;
  align-items:end!important;
  gap:28px!important;
  padding-bottom:22px!important;
  border-bottom:1px solid rgba(16,44,37,.18)!important;
}

.library-ref-filter{
  display:grid!important;
  grid-template-columns:minmax(300px,1.45fr) repeat(4,minmax(140px,.72fr)) auto!important;
  gap:10px!important;
  align-items:end!important;
  padding:23px 0!important;
}

.library-ref-result{
  display:grid!important;
  grid-template-columns:125px minmax(0,1fr) 28px!important;
  gap:24px!important;
  padding:23px 0!important;
}

/* Tablet */
@media(max-width:1050px){
  .library-ref-shell{
    width:min(100% - 40px,1000px)!important;
    grid-template-columns:minmax(0,1.5fr) minmax(320px,.9fr)!important;
  }
  .library-ref-left{
    padding:32px 24px 24px!important;
  }
  .library-ref-grid{
    grid-template-rows:repeat(2,120px)!important;
  }
  .library-ref-category{
    min-height:120px!important;
    padding:18px 16px 16px!important;
  }
  .library-ref-category>span{
    font-size:1rem!important;
  }
  .library-ref-filter{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .library-ref-filter .wide{
    grid-column:1/-1!important;
  }
  .library-ref-filter .btn{
    width:max-content!important;
  }
}

/* Mobile: automatisch die vertikale Struktur von Variante 1 */
@media(max-width:760px){
  .library-ref-page{
    padding:24px 0 62px!important;
  }
  .library-ref-shell{
    width:min(100% - 26px,620px)!important;
    display:flex!important;
    flex-direction:column!important;
    background:#f7f3ea!important;
    color:#102f28!important;
    border:1px solid rgba(16,44,37,.14)!important;
    box-shadow:none!important;
  }
  .library-ref-left{
    display:contents!important;
  }
  .library-ref-heading{
    order:1!important;
    padding:25px 22px 18px!important;
    background:#102f28!important;
    color:#f7f1e7!important;
    border-bottom:0!important;
  }
  .library-ref-heading h1{
    font-size:2.35rem!important;
    color:#f7f1e7!important;
  }
  .library-ref-heading p{
    color:#c7a15b!important;
  }
  .library-ref-grid{
    order:2!important;
    display:block!important;
    background:#f7f3ea!important;
  }
  .library-ref-category,
  .library-ref-category:nth-child(3n),
  .library-ref-category:nth-child(n+4){
    min-height:0!important;
    width:100%!important;
    padding:17px 22px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:20px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(16,44,37,.14)!important;
    background:#f7f3ea!important;
    color:#102f28!important;
  }
  .library-ref-category:last-child{
    border-bottom:0!important;
  }
  .library-ref-category:hover,
  .library-ref-category.active{
    background:#f0eadf!important;
  }
  .library-ref-category>span{
    font-size:1.02rem!important;
    color:#102f28!important;
  }
  .library-ref-category small{
    margin:0!important;
    flex:0 0 auto!important;
    color:#5e6965!important;
  }
  .library-ref-category b{
    color:#a97e36!important;
  }
  .library-ref-category-empty{
    display:none!important;
  }
  .library-ref-photo{
    order:3!important;
    width:100%!important;
    height:235px!important;
    min-height:235px!important;
  }
  .library-ref-photo img{
    width:100%!important;
    height:235px!important;
    min-height:235px!important;
    object-fit:cover!important;
  }
  .library-ref-content{
    width:min(100% - 28px,620px)!important;
  }
  .library-ref-content-head{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  .library-ref-filter{
    grid-template-columns:1fr!important;
  }
  .library-ref-filter .wide{
    grid-column:auto!important;
  }
  .library-ref-filter .btn{
    width:100%!important;
  }
  .library-ref-result{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .library-ref-meta{
    flex-direction:row!important;
  }
  .library-ref-arrow{
    display:none!important;
  }
}

/* ===== Bibliothek Screenshot-Fix: proportioniert wie Referenz ===== */
.library-ref-page{padding:0 0 72px!important}
.library-ref-shell{
 width:100%!important;max-width:none!important;
 grid-template-columns:minmax(0,2fr) minmax(360px,.82fr)!important;
 min-height:410px!important;
 border-left:0!important;border-right:0!important;box-shadow:none!important
}
.library-ref-left{
 padding:46px max(42px,calc((100vw - 1320px)/2)) 32px!important;
 padding-right:42px!important
}
.library-ref-heading{max-width:900px!important;padding-bottom:28px!important}
.library-ref-heading h1{font-size:clamp(3rem,4vw,4.6rem)!important}
.library-ref-grid{
 max-width:900px!important;
 grid-template-columns:repeat(3,minmax(0,1fr))!important;
 grid-template-rows:none!important
}
.library-ref-category{
 min-height:128px!important;padding:22px 24px 18px!important
}
.library-ref-photo{height:410px!important;min-height:410px!important}
.library-ref-photo img{height:410px!important;min-height:410px!important;object-fit:cover!important}
.library-ref-content{width:min(100% - 56px,1320px)!important}
@media(min-width:1500px){
 .library-ref-shell{grid-template-columns:minmax(0,1.95fr) 520px!important}
 .library-ref-photo,.library-ref-photo img{height:430px!important;min-height:430px!important}
}
@media(max-width:1050px){
 .library-ref-shell{width:100%!important;grid-template-columns:1fr 340px!important}
 .library-ref-left{padding:34px 28px 28px!important}
}
@media(max-width:760px){
 .library-ref-page{padding-top:0!important}
 .library-ref-shell{width:100%!important;min-height:0!important}
 .library-ref-left{padding:0!important}
 .library-ref-photo,.library-ref-photo img{height:235px!important;min-height:235px!important}
}


/* ===== Bibliothek Final Layout 2026-08-07 ===== */
/* Ziel: Referenzbild-Charakter, aber sauber ins bestehende Seitenraster integriert. */

.library-ref-page{
  background:#f5f1e8!important;
  padding:44px 0 96px!important;
  min-height:calc(100vh - 110px)!important;
}

.library-ref-shell{
  width:min(100% - 64px,1260px)!important;
  max-width:1260px!important;
  margin:0 auto!important;
  min-height:420px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.78fr) minmax(330px,.82fr)!important;
  background:#102f28!important;
  color:#f7f1e7!important;
  overflow:hidden!important;
  border:1px solid rgba(16,44,37,.10)!important;
  box-shadow:0 16px 42px rgba(10,30,24,.10)!important;
}

.library-ref-left{
  padding:42px 34px 30px!important;
  min-width:0!important;
}

.library-ref-heading{
  padding:0 0 27px!important;
  border-bottom:1px solid rgba(247,241,231,.20)!important;
}

.library-ref-heading h1{
  margin:0 0 12px!important;
  font-family:var(--font-serif,serif)!important;
  font-size:clamp(2.7rem,3.7vw,4.25rem)!important;
  line-height:.98!important;
  font-weight:400!important;
  letter-spacing:-.035em!important;
  color:#f7f1e7!important;
}

.library-ref-heading p{
  margin:0!important;
  font-family:var(--font-serif,serif)!important;
  font-size:1.02rem!important;
  line-height:1.45!important;
  font-style:italic!important;
  color:#c8a15b!important;
}

/* Default: 3x2 like reference */
.library-ref-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-auto-rows:minmax(126px,auto)!important;
}

/* Exactly three visible areas: one clean horizontal row */
.library-ref-grid-count-3{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

/* Four: balanced 2x2 */
.library-ref-grid-count-4{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

/* Five/six: reference-style 3 columns */
.library-ref-grid-count-5,
.library-ref-grid-count-6{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.library-ref-category{
  min-width:0!important;
  min-height:126px!important;
  padding:21px 22px 18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:13px!important;
  box-sizing:border-box!important;
  color:#f7f1e7!important;
  text-decoration:none!important;
  background:transparent!important;
  border-right:1px solid rgba(247,241,231,.17)!important;
  border-bottom:1px solid rgba(247,241,231,.17)!important;
  transition:background .2s ease, color .2s ease!important;
}

.library-ref-grid-count-3 .library-ref-category{
  border-bottom:0!important;
}
.library-ref-grid-count-3 .library-ref-category:nth-child(3n),
.library-ref-grid-count-5 .library-ref-category:nth-child(3n),
.library-ref-grid-count-6 .library-ref-category:nth-child(3n){
  border-right:0!important;
}
.library-ref-grid-count-4 .library-ref-category:nth-child(2n){
  border-right:0!important;
}
.library-ref-grid-count-4 .library-ref-category:nth-child(n+3),
.library-ref-grid-count-5 .library-ref-category:nth-child(n+4),
.library-ref-grid-count-6 .library-ref-category:nth-child(n+4){
  border-bottom:0!important;
}

.library-ref-category:hover,
.library-ref-category.active{
  background:rgba(200,161,91,.075)!important;
}

.library-ref-category>span{
  max-width:100%!important;
  font-family:var(--font-serif,serif)!important;
  font-size:1.10rem!important;
  line-height:1.16!important;
  color:#f7f1e7!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:auto!important;
}

.library-ref-category small{
  margin-top:auto!important;
  color:#ddd6c9!important;
  font-size:.72rem!important;
  line-height:1.25!important;
}

.library-ref-category b{
  color:#c8a15b!important;
  margin-left:5px!important;
}

.library-ref-photo{
  position:relative!important;
  min-width:0!important;
  height:420px!important;
  min-height:420px!important;
  overflow:hidden!important;
  background:#161914!important;
}

.library-ref-photo:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(90deg,rgba(16,47,40,.16),transparent 22%)!important;
  pointer-events:none!important;
}

.library-ref-photo img{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center 48%!important;
}

/* Detail / Filter: same width as hero, with enough breathing room */
.library-ref-content{
  width:min(100% - 64px,1260px)!important;
  max-width:1260px!important;
  margin:58px auto 0!important;
}

.library-ref-content-head{
  padding-bottom:24px!important;
}

.library-ref-filter{
  display:grid!important;
  grid-template-columns:minmax(290px,1.42fr) repeat(4,minmax(138px,.72fr)) auto!important;
  gap:10px!important;
  padding:24px 0!important;
}

.library-ref-result{
  grid-template-columns:125px minmax(0,1fr) 28px!important;
  gap:24px!important;
  padding:24px 0!important;
}

/* Prevent fixed header overlap on hash/route transitions and narrow height displays */
.library-ref-page{
  scroll-margin-top:96px!important;
}

@media(max-width:1180px){
  .library-ref-shell,
  .library-ref-content{
    width:min(100% - 42px,1100px)!important;
  }
  .library-ref-shell{
    grid-template-columns:minmax(0,1.55fr) minmax(300px,.82fr)!important;
  }
  .library-ref-left{
    padding:36px 26px 26px!important;
  }
  .library-ref-photo{
    height:390px!important;
    min-height:390px!important;
  }
  .library-ref-category{
    min-height:118px!important;
    padding:18px 17px 16px!important;
  }
  .library-ref-category>span{
    font-size:1rem!important;
  }
  .library-ref-filter{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .library-ref-filter .wide{
    grid-column:1/-1!important;
  }
  .library-ref-filter .btn{
    width:max-content!important;
  }
}

@media(max-width:850px){
  .library-ref-shell{
    grid-template-columns:1fr!important;
  }
  .library-ref-photo{
    height:300px!important;
    min-height:300px!important;
  }
}

@media(max-width:650px){
  .library-ref-page{
    padding:24px 0 68px!important;
  }
  .library-ref-shell,
  .library-ref-content{
    width:min(100% - 28px,610px)!important;
  }
  .library-ref-left{
    padding:28px 20px 20px!important;
  }
  .library-ref-heading{
    padding-bottom:21px!important;
  }
  .library-ref-heading h1{
    font-size:2.45rem!important;
  }
  .library-ref-grid,
  .library-ref-grid-count-3,
  .library-ref-grid-count-4,
  .library-ref-grid-count-5,
  .library-ref-grid-count-6{
    grid-template-columns:1fr!important;
  }
  .library-ref-category{
    min-height:0!important;
    padding:17px 2px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
    border-right:0!important;
    border-bottom:1px solid rgba(247,241,231,.17)!important;
  }
  .library-ref-category:last-child{
    border-bottom:0!important;
  }
  .library-ref-category small{
    margin:0!important;
    flex:0 0 auto!important;
  }
  .library-ref-photo{
    height:235px!important;
    min-height:235px!important;
  }
  .library-ref-filter{
    grid-template-columns:1fr!important;
  }
  .library-ref-filter .wide{
    grid-column:auto!important;
  }
  .library-ref-filter .btn{
    width:100%!important;
  }
  .library-ref-result{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .library-ref-meta{
    flex-direction:row!important;
  }
  .library-ref-arrow{
    display:none!important;
  }
}


/* ===== Bibliothek Referenz FINAL authoritative ===== */

/* Kompakte Seite: kein künstliches 100vh / kein riesiger Leerraum */
.library-ref-page{
  background:#f5f1e8!important;
  padding:42px 0 54px!important;
  min-height:0!important;
  display:block!important;
}

/* Referenz-Proportion: ca. 2/3 Inhalt, 1/3 Bild */
.library-ref-shell{
  width:min(100% - 56px,1180px)!important;
  max-width:1180px!important;
  min-height:0!important;
  height:470px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.9fr) minmax(330px,.95fr)!important;
  background:#102f28!important;
  color:#f7f1e7!important;
  overflow:hidden!important;
  border:1px solid rgba(16,44,37,.10)!important;
  box-shadow:0 12px 34px rgba(10,30,24,.10)!important;
}

.library-ref-left{
  padding:34px 28px 0!important;
  min-width:0!important;
  height:470px!important;
  display:flex!important;
  flex-direction:column!important;
  box-sizing:border-box!important;
}

.library-ref-heading{
  flex:0 0 auto!important;
  padding:0 0 23px!important;
  border-bottom:1px solid rgba(247,241,231,.20)!important;
}

.library-ref-heading h1{
  margin:0 0 10px!important;
  color:#f7f1e7!important;
  font-family:var(--font-serif,serif)!important;
  font-size:clamp(2.45rem,3.4vw,3.8rem)!important;
  font-weight:400!important;
  line-height:1!important;
  letter-spacing:-.03em!important;
}

.library-ref-heading p{
  margin:0!important;
  color:#c8a15b!important;
  font-family:var(--font-serif,serif)!important;
  font-style:italic!important;
  font-size:.98rem!important;
  line-height:1.4!important;
}

/* EXAKT 3×2 wie Referenz */
.library-ref-grid,
.library-ref-grid-count-3,
.library-ref-grid-count-4,
.library-ref-grid-count-5,
.library-ref-grid-count-6{
  flex:1 1 auto!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,1fr)!important;
}

.library-ref-category{
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  padding:20px 20px 17px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  box-sizing:border-box!important;
  background:transparent!important;
  color:#f7f1e7!important;
  text-decoration:none!important;
  border-right:1px solid rgba(247,241,231,.17)!important;
  border-bottom:1px solid rgba(247,241,231,.17)!important;
}

.library-ref-category:nth-child(3n){
  border-right:0!important;
}
.library-ref-category:nth-child(n+4){
  border-bottom:0!important;
}

.library-ref-category:hover,
.library-ref-category.active{
  background:rgba(200,161,91,.075)!important;
}

.library-ref-category>span{
  max-width:100%!important;
  color:#f7f1e7!important;
  font-family:var(--font-serif,serif)!important;
  font-size:1.05rem!important;
  line-height:1.13!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:auto!important;
}

.library-ref-category small{
  margin-top:auto!important;
  color:#ddd6c9!important;
  font-size:.70rem!important;
  line-height:1.2!important;
}
.library-ref-category b{
  color:#c8a15b!important;
  margin-left:5px!important;
}

/* Bücherbild exakt auf Blockhöhe */
.library-ref-photo{
  min-width:0!important;
  width:100%!important;
  height:470px!important;
  min-height:470px!important;
  overflow:hidden!important;
  background:#161914!important;
}
.library-ref-photo img{
  width:100%!important;
  height:470px!important;
  min-height:470px!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center center!important;
}

/* Nach Auswahl eines Rechtsgebiets: Detailbereich direkt darunter, nicht kilometerweit entfernt */
.library-ref-content{
  width:min(100% - 56px,1180px)!important;
  max-width:1180px!important;
  margin:42px auto 0!important;
  padding-bottom:8px!important;
}

/* Footer soll direkt nach dem Bibliotheksbereich folgen */
.library-ref-page + footer,
.library-ref-page + .footer,
.library-ref-page + .site-footer{
  margin-top:0!important;
}

/* Tablet */
@media(max-width:1000px){
  .library-ref-shell{
    width:min(100% - 38px,930px)!important;
    height:auto!important;
    grid-template-columns:minmax(0,1.5fr) minmax(300px,.85fr)!important;
  }
  .library-ref-left{
    height:430px!important;
    padding:30px 22px 0!important;
  }
  .library-ref-photo,
  .library-ref-photo img{
    height:430px!important;
    min-height:430px!important;
  }
}

/* Mobile: Variante 1 */
@media(max-width:760px){
  .library-ref-page{
    padding:22px 0 38px!important;
  }
  .library-ref-shell{
    width:min(100% - 26px,620px)!important;
    height:auto!important;
    display:flex!important;
    flex-direction:column!important;
    background:#f7f3ea!important;
  }
  .library-ref-left{
    display:contents!important;
    height:auto!important;
  }
  .library-ref-heading{
    order:1!important;
    padding:24px 20px 18px!important;
    background:#102f28!important;
    border-bottom:0!important;
  }
  .library-ref-grid,
  .library-ref-grid-count-6{
    order:2!important;
    display:block!important;
    background:#f7f3ea!important;
  }
  .library-ref-category,
  .library-ref-category:nth-child(3n),
  .library-ref-category:nth-child(n+4){
    width:100%!important;
    min-height:0!important;
    padding:16px 20px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
    color:#102f28!important;
    border-right:0!important;
    border-bottom:1px solid rgba(16,44,37,.14)!important;
    background:#f7f3ea!important;
  }
  .library-ref-category:last-child{
    border-bottom:0!important;
  }
  .library-ref-category>span{
    color:#102f28!important;
    font-size:1rem!important;
  }
  .library-ref-category small{
    margin:0!important;
    color:#5e6965!important;
    flex:0 0 auto!important;
  }
  .library-ref-photo{
    order:3!important;
    height:230px!important;
    min-height:230px!important;
  }
  .library-ref-photo img{
    height:230px!important;
    min-height:230px!important;
  }
  .library-ref-content{
    width:min(100% - 28px,620px)!important;
    margin-top:32px!important;
  }
}


/* ===== Bibliothek Fullwidth Premium ===== */
/* Große Desktop-Bildschirme: fast volle Breite statt zentrierter kleiner Karte */
.library-ref-page{
  background:#f5f1e8!important;
  padding:28px 0 46px!important;
  min-height:0!important;
}

.library-ref-shell{
  width:calc(100% - 48px)!important;
  max-width:1880px!important;
  height:560px!important;
  min-height:560px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(0,2.05fr) minmax(430px,.95fr)!important;
  background:#102f28!important;
  color:#f7f1e7!important;
  overflow:hidden!important;
  border:1px solid rgba(16,44,37,.10)!important;
  box-shadow:0 14px 38px rgba(10,30,24,.10)!important;
}

.library-ref-left{
  height:560px!important;
  padding:44px clamp(34px,4vw,72px) 0!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}

.library-ref-heading{
  padding:0 0 30px!important;
  border-bottom:1px solid rgba(247,241,231,.20)!important;
}

.library-ref-heading h1{
  margin:0 0 12px!important;
  font-size:clamp(3.2rem,4.6vw,5.4rem)!important;
  line-height:.96!important;
}

.library-ref-heading p{
  font-size:1.08rem!important;
}

.library-ref-grid,
.library-ref-grid-count-6{
  flex:1 1 auto!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  grid-template-rows:repeat(2,1fr)!important;
}

.library-ref-category{
  padding:26px clamp(18px,2vw,34px) 22px!important;
  min-height:0!important;
}

.library-ref-category>span{
  font-size:clamp(1.15rem,1.45vw,1.55rem)!important;
  line-height:1.12!important;
}

.library-ref-category small{
  font-size:.78rem!important;
}

.library-ref-photo,
.library-ref-photo img{
  width:100%!important;
  height:560px!important;
  min-height:560px!important;
}

.library-ref-photo img{
  object-fit:cover!important;
  object-position:center 48%!important;
}

.library-ref-content{
  width:calc(100% - 48px)!important;
  max-width:1880px!important;
  margin:48px auto 0!important;
}

/* Ultra-wide: Bild nicht übermäßig dominant werden lassen */
@media(min-width:1900px){
  .library-ref-shell{
    grid-template-columns:minmax(0,2.15fr) 560px!important;
  }
}

/* Normale Laptops */
@media(max-width:1280px){
  .library-ref-shell{
    width:calc(100% - 36px)!important;
    height:500px!important;
    min-height:500px!important;
    grid-template-columns:minmax(0,1.75fr) minmax(350px,.9fr)!important;
  }
  .library-ref-left{
    height:500px!important;
    padding:36px 28px 0!important;
  }
  .library-ref-photo,
  .library-ref-photo img{
    height:500px!important;
    min-height:500px!important;
  }
  .library-ref-category{
    padding:21px 18px 18px!important;
  }
  .library-ref-category>span{
    font-size:1.08rem!important;
  }
}

/* Tablet */
@media(max-width:900px){
  .library-ref-shell{
    height:auto!important;
    min-height:0!important;
    grid-template-columns:1fr!important;
  }
  .library-ref-left{
    height:auto!important;
    min-height:430px!important;
  }
  .library-ref-photo,
  .library-ref-photo img{
    height:300px!important;
    min-height:300px!important;
  }
}

/* Mobile bleibt die vertikale Variante */
@media(max-width:650px){
  .library-ref-page{
    padding:18px 0 34px!important;
  }
  .library-ref-shell,
  .library-ref-content{
    width:calc(100% - 24px)!important;
  }
  .library-ref-left{
    display:contents!important;
    min-height:0!important;
    padding:0!important;
  }
  .library-ref-heading{
    padding:24px 20px 18px!important;
    background:#102f28!important;
  }
  .library-ref-grid,
  .library-ref-grid-count-6{
    display:block!important;
    background:#f7f3ea!important;
  }
  .library-ref-category{
    padding:16px 20px!important;
    display:flex!important;
    flex-direction:row!important;
    justify-content:space-between!important;
    align-items:center!important;
    background:#f7f3ea!important;
    color:#102f28!important;
    border-right:0!important;
    border-bottom:1px solid rgba(16,44,37,.14)!important;
  }
  .library-ref-category>span{
    color:#102f28!important;
    font-size:1rem!important;
  }
  .library-ref-category small{
    margin:0!important;
    color:#5e6965!important;
  }
  .library-ref-photo,
  .library-ref-photo img{
    height:230px!important;
    min-height:230px!important;
  }
}


/* ===== Mobile Master Optimization 2026 ===== */
@media (max-width: 760px){

  html,body{
    overflow-x:hidden!important;
    -webkit-text-size-adjust:100%!important;
  }

  body{
    font-size:16px!important;
  }

  /* Header / Navigation */
  .site-header,
  header.site-header,
  .header{
    min-height:72px!important;
  }

  .header-inner,
  .site-header .inner,
  .nav-wrap{
    padding-left:16px!important;
    padding-right:16px!important;
  }

  .brand,
  .logo-wrap{
    max-width:58%!important;
  }

  .brand img,
  .logo-wrap img{
    max-height:46px!important;
    width:auto!important;
  }

  .brand-title,
  .brand-subtitle{
    white-space:normal!important;
  }

  .brand-title{
    font-size:.82rem!important;
    line-height:1.1!important;
  }

  .brand-subtitle{
    font-size:.58rem!important;
    line-height:1.15!important;
  }

  .desktop-nav,
  .main-nav{
    display:none!important;
  }

  /* Mobile nav should never overflow */
  .mobile-nav,
  .mobile-menu,
  .mobile-menu-panel{
    width:100%!important;
    max-width:none!important;
  }

  .mobile-nav a,
  .mobile-menu a{
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    padding:12px 18px!important;
    font-size:1rem!important;
  }

  /* Social / language group */
  .language-switcher,
  .header-socials,
  .social-links{
    gap:8px!important;
  }

  .language-switcher a,
  .language-switcher button,
  header a[aria-label="Instagram"],
  header a[aria-label="Facebook"]{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
    min-height:36px!important;
    padding:0!important;
    border-radius:50%!important;
  }

  /* Global section spacing */
  .section,
  section.section{
    padding-left:18px!important;
    padding-right:18px!important;
    padding-top:52px!important;
    padding-bottom:52px!important;
  }

  .section-head,
  .home-journal-head,
  .editorial-grid,
  .contact-band{
    gap:22px!important;
  }

  .section-head{
    align-items:flex-start!important;
    flex-direction:column!important;
  }

  .eyebrow{
    font-size:.68rem!important;
    letter-spacing:.11em!important;
  }

  h1,h2,h3{
    word-break:normal!important;
    overflow-wrap:normal!important;
    hyphens:auto!important;
  }

  /* Hero */
  .hero{
    min-height:auto!important;
    height:auto!important;
    padding-top:0!important;
  }

  .hero>img{
    min-height:610px!important;
    height:610px!important;
    object-fit:cover!important;
    object-position:center center!important;
  }

  .hero-copy{
    left:18px!important;
    right:18px!important;
    bottom:110px!important;
    max-width:none!important;
  }

  .hero-copy h1{
    font-size:clamp(2.65rem,13vw,4.25rem)!important;
    line-height:.92!important;
    letter-spacing:-.045em!important;
    margin:10px 0 16px!important;
  }

  .hero-copy p{
    max-width:94%!important;
    font-size:.98rem!important;
    line-height:1.55!important;
  }

  .hero-copy .actions{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
    margin-top:22px!important;
  }

  .hero-copy .btn{
    width:100%!important;
    justify-content:space-between!important;
  }

  .hero-aside{
    display:none!important;
  }

  .hero-fact{
    left:18px!important;
    right:18px!important;
    bottom:20px!important;
    width:auto!important;
    padding:14px 16px!important;
  }

  .scroll-cue{
    display:none!important;
  }

  /* Journal on homepage */
  .home-journal-grid{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }

  .home-journal-card{
    min-height:0!important;
  }

  .home-journal-card-link{
    padding:22px 18px!important;
  }

  .home-journal-card h3{
    font-size:1.8rem!important;
    line-height:1.05!important;
  }

  .home-journal-footer{
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:12px!important;
  }

  /* Editorial journal page */
  .ref-journal{
    padding:38px 0 62px!important;
  }

  .ref-journal-wrap{
    width:calc(100% - 28px)!important;
  }

  .ref-journal-intro{
    padding:0 0 26px!important;
  }

  .ref-journal-intro h1{
    font-size:clamp(2.7rem,12vw,4rem)!important;
    line-height:.95!important;
  }

  .ref-topics{
    gap:18px!important;
    padding:16px 0 14px!important;
  }

  .ref-search{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin:18px 0!important;
  }

  .ref-search input,
  .ref-search button{
    width:100%!important;
    min-height:46px!important;
  }

  .ref-row{
    grid-template-columns:1fr!important;
    gap:16px!important;
    padding:20px 0!important;
  }

  .ref-image{
    aspect-ratio:16/10!important;
    border-radius:2px!important;
  }

  .ref-copy h2{
    font-size:2rem!important;
    line-height:1.03!important;
  }

  /* Bibliothek mobile = vertical reference style */
  .library-ref-page{
    padding:18px 0 40px!important;
  }

  .library-ref-shell{
    width:calc(100% - 20px)!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    box-shadow:none!important;
    border:1px solid rgba(16,44,37,.12)!important;
  }

  .library-ref-left{
    display:contents!important;
  }

  .library-ref-heading{
    order:1!important;
    background:#102f28!important;
    padding:24px 20px 18px!important;
    border-bottom:0!important;
  }

  .library-ref-heading h1{
    font-size:2.45rem!important;
    margin-bottom:8px!important;
  }

  .library-ref-heading p{
    font-size:.92rem!important;
  }

  .library-ref-grid,
  .library-ref-grid-count-6{
    order:2!important;
    display:block!important;
    background:#f7f3ea!important;
  }

  .library-ref-category{
    min-height:0!important;
    padding:16px 18px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    background:#f7f3ea!important;
    color:#102f28!important;
    border-right:0!important;
    border-bottom:1px solid rgba(16,44,37,.13)!important;
  }

  .library-ref-category:last-child{
    border-bottom:0!important;
  }

  .library-ref-category>span{
    color:#102f28!important;
    font-size:1rem!important;
    line-height:1.2!important;
  }

  .library-ref-category small{
    margin:0!important;
    flex:0 0 auto!important;
    font-size:.72rem!important;
    color:#68716e!important;
  }

  .library-ref-photo{
    order:3!important;
    height:220px!important;
    min-height:220px!important;
  }

  .library-ref-photo img{
    height:220px!important;
    min-height:220px!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  .library-ref-content{
    width:calc(100% - 24px)!important;
    margin:30px auto 0!important;
  }

  .library-ref-content-head{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:10px!important;
  }

  .library-ref-filter{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .library-ref-filter input,
  .library-ref-filter select,
  .library-ref-filter .btn{
    min-height:46px!important;
    width:100%!important;
  }

  .library-ref-result{
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:20px 0!important;
  }

  .library-ref-result h3{
    font-size:1.9rem!important;
  }

  .library-ref-meta{
    flex-direction:row!important;
    flex-wrap:wrap!important;
    gap:8px!important;
  }

  .library-ref-arrow{
    display:none!important;
  }

  /* Office intro */
  .office-intro{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }

  .office-intro-image{
    order:1!important;
  }

  .office-intro-content{
    order:2!important;
  }

  .office-intro-content h2{
    font-size:2.5rem!important;
    line-height:1!important;
  }

  /* Competence cards */
  .competence-cards,
  .cards{
    grid-template-columns:1fr!important;
  }

  .competence-card,
  .card{
    min-height:0!important;
    padding:22px 18px!important;
  }

  .card-content h3{
    font-size:1.9rem!important;
  }

  /* Team */
  .team-grid{
    grid-template-columns:1fr 1fr!important;
    gap:16px!important;
  }

  .person-image{
    aspect-ratio:3/4!important;
  }

  .person h3{
    font-size:1.2rem!important;
  }

  .person p{
    font-size:.82rem!important;
  }

  /* Principle */
  .principle{
    padding:50px 18px!important;
    gap:18px!important;
  }

  .principle-mark{
    font-size:4rem!important;
  }

  .principle p{
    font-size:2rem!important;
    line-height:1.05!important;
  }

  /* Contact band */
  .contact-band{
    padding:52px 18px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
  }

  .contact-band h2{
    font-size:2.55rem!important;
    line-height:.98!important;
  }

  .contact-actions{
    width:100%!important;
    align-items:stretch!important;
  }

  .contact-actions .btn{
    width:100%!important;
  }

  .contact-phone{
    width:100%!important;
  }

  /* Footer */
  footer,
  .site-footer,
  .footer{
    padding-left:18px!important;
    padding-right:18px!important;
  }

  .footer-grid,
  .footer-columns,
  footer .grid{
    grid-template-columns:1fr!important;
    gap:28px!important;
  }

  .footer-brand{
    max-width:100%!important;
  }

  .footer-bottom{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:12px!important;
  }

  /* Admin mobile usability */
  .admin-shell,
  .admin-main,
  .content{
    min-width:0!important;
    width:100%!important;
  }

  .publication-admin-layout{
    grid-template-columns:1fr!important;
  }

  .form-grid,
  .compact-grid{
    grid-template-columns:1fr!important;
  }

  .panel,
  .welcome{
    border-radius:12px!important;
  }

  .team-row-actions,
  .form-actions{
    flex-wrap:wrap!important;
    gap:8px!important;
  }

  .form-actions .btn{
    width:100%!important;
  }

  .advanced-settings summary{
    padding:16px!important;
  }

  .advanced-settings-content{
    padding:16px!important;
  }

  .block-toolbar{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .block-toolbar .btn{
    width:100%!important;
  }

}

/* very small phones */
@media (max-width: 390px){
  .team-grid{
    grid-template-columns:1fr!important;
  }

  .hero-copy h1{
    font-size:2.7rem!important;
  }

  .ref-copy h2,
  .library-ref-result h3{
    font-size:1.7rem!important;
  }

  .block-toolbar{
    grid-template-columns:1fr!important;
  }
}


/* ===== Boutique Kanzlei Hybrid ===== */
.boutique-hero .page-hero-inner{
  max-width:1320px!important;
}
.boutique-hero h1{
  max-width:980px!important;
  font-size:clamp(4.2rem,7vw,8rem)!important;
  line-height:.92!important;
  letter-spacing:-.05em!important;
}
.boutique-hero p{
  max-width:720px!important;
}

.boutique-intro{
  background:#f4efe6;
  padding:72px 0 0;
}
.boutique-intro-grid{
  width:min(100% - 48px,1320px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  min-height:420px;
}
.boutique-intro-image{
  margin:0;
  min-height:420px;
  overflow:hidden;
}
.boutique-intro-image img{
  width:100%;
  height:100%;
  min-height:420px;
  display:block;
  object-fit:cover;
  object-position:center;
}
.boutique-intro-copy{
  background:linear-gradient(135deg,#29251f,#171d19);
  color:#f6f0e6;
  padding:clamp(42px,5vw,76px);
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.boutique-intro-copy .eyebrow{color:#c7a15c}
.boutique-intro-copy h2{
  font-family:var(--font-serif,serif);
  font-size:clamp(2.7rem,4.2vw,4.8rem);
  line-height:.98;
  letter-spacing:-.035em;
  margin:12px 0 18px;
}
.boutique-intro-copy p{
  max-width:620px;
  color:#ddd7cb;
  line-height:1.65;
}
.boutique-intro-copy .boutique-lead{
  color:#f6f0e6;
  font-family:var(--font-serif,serif);
  font-size:1.25rem;
  margin-bottom:8px;
}
.boutique-intro-copy .text-link{
  margin-top:18px;
  color:#c7a15c;
}

.boutique-values{
  width:min(100% - 48px,1320px);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  background:#f8f4ec;
  border:1px solid rgba(16,44,37,.12);
  border-top:0;
}
.boutique-value{
  min-height:180px;
  padding:30px 24px 26px;
  text-align:center;
  border-right:1px solid rgba(16,44,37,.12);
}
.boutique-value:last-child{border-right:0}
.boutique-value-mark{
  display:inline-flex;
  min-height:42px;
  align-items:center;
  justify-content:center;
  color:#b78a40;
  font-family:var(--font-serif,serif);
  font-size:1.6rem;
  margin-bottom:12px;
}
.boutique-value h3{
  font-family:var(--font-serif,serif);
  font-size:1.45rem;
  margin:0 0 7px;
  color:#102f28;
}
.boutique-value p{
  margin:0;
  color:#65716c;
  line-height:1.4;
  font-size:.9rem;
}

.boutique-profile{
  padding-top:90px!important;
  padding-bottom:90px!important;
}
.boutique-profile .editorial-main .lead{
  max-width:830px;
}
.boutique-haltung{
  padding-top:82px!important;
  padding-bottom:82px!important;
}

/* Mobile */
@media(max-width:760px){
  .boutique-hero h1{
    font-size:clamp(3rem,14vw,4.5rem)!important;
  }
  .boutique-intro{
    padding-top:28px;
  }
  .boutique-intro-grid{
    width:calc(100% - 24px);
    grid-template-columns:1fr;
  }
  .boutique-intro-image{
    min-height:280px;
  }
  .boutique-intro-image img{
    min-height:280px;
    height:280px;
  }
  .boutique-intro-copy{
    padding:32px 24px 36px;
  }
  .boutique-intro-copy h2{
    font-size:2.6rem;
  }
  .boutique-values{
    width:calc(100% - 24px);
    grid-template-columns:1fr 1fr;
  }
  .boutique-value{
    min-height:150px;
    padding:24px 16px 20px;
    border-bottom:1px solid rgba(16,44,37,.12);
  }
  .boutique-value:nth-child(2n){border-right:0}
  .boutique-value:nth-child(n+3){border-bottom:0}
  .boutique-profile{
    padding-top:56px!important;
    padding-bottom:56px!important;
  }
}
@media(max-width:390px){
  .boutique-values{
    grid-template-columns:1fr;
  }
  .boutique-value{
    border-right:0!important;
    border-bottom:1px solid rgba(16,44,37,.12)!important;
  }
  .boutique-value:last-child{
    border-bottom:0!important;
  }
}


/* ===== Premium Typography System ===== */
:root{
  --font-serif:"EB Garamond","Cormorant Garamond","Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --font-sans:"Source Sans 3","Source Sans Pro",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
}

/* Editorial body */
html,body{
  font-family:var(--font-sans)!important;
  font-optical-sizing:auto;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}

/* Display/editorial typography */
h1,h2,h3,
.display,
.serif,
.page-hero h1,
.hero h1,
.section-head h2,
.editorial-main blockquote,
.quote-panel blockquote,
.boutique-intro-copy h2,
.boutique-value h3,
.library-ref-heading h1,
.library-ref-category>span,
.ref-journal h1,
.ref-copy h2,
.home-journal-card h3,
.person h3,
.card h3,
.principle p{
  font-family:var(--font-serif)!important;
  font-weight:500;
  font-optical-sizing:auto;
}

/* Big magazine headlines */
.hero h1,
.page-hero h1,
.boutique-hero h1,
.library-ref-heading h1,
.ref-journal-intro h1{
  font-weight:500!important;
  letter-spacing:-.035em!important;
}

/* Section headlines: calmer than hero */
.section-head h2,
.boutique-intro-copy h2,
.editorial-main blockquote,
.quote-panel blockquote{
  font-weight:500!important;
  letter-spacing:-.022em!important;
}

/* Navigation and UI */
nav,
.main-nav,
.desktop-nav,
.mobile-nav,
.btn,
button,
input,
select,
textarea,
label,
.eyebrow,
.meta,
.tag,
.badge,
.language-switcher,
.header-socials,
.library-ref-category small{
  font-family:var(--font-sans)!important;
}

/* Navigation gets compact editorial discipline */
.main-nav a,
.desktop-nav a{
  font-weight:600!important;
  letter-spacing:-.01em!important;
}

/* Eyebrows / categories */
.eyebrow,
.tag,
.badge{
  font-weight:600!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
}

/* Long-form readability */
p,
li,
.editorial-main,
.ref-copy,
.library-ref-result{
  font-family:var(--font-sans);
}

.editorial-main p,
.ref-copy p,
.library-ref-result p,
.boutique-intro-copy p{
  line-height:1.62!important;
}

/* Journal feels like a publication */
.ref-copy h2,
.home-journal-card h3{
  font-weight:500!important;
  letter-spacing:-.022em!important;
}

.ref-copy .meta,
.home-journal-card .meta{
  font-family:var(--font-sans)!important;
  letter-spacing:.03em;
}

/* Library remains archival/editorial */
.library-ref-category>span{
  font-weight:500!important;
  letter-spacing:-.01em!important;
}

/* Team names elegant, roles functional */
.person h3{
  font-weight:500!important;
  letter-spacing:-.012em!important;
}
.person p{
  font-family:var(--font-sans)!important;
}

/* Admin stays functional, not magazine-like */
.admin-shell,
.admin-main,
.admin-sidebar,
.admin-header,
.admin-shell h1,
.admin-shell h2,
.admin-shell h3,
.admin-shell p,
.admin-shell label,
.admin-shell input,
.admin-shell select,
.admin-shell textarea,
.admin-shell button,
body.admin{
  font-family:var(--font-sans)!important;
}

.admin-shell h1,
.admin-shell h2,
.admin-shell h3{
  font-weight:650!important;
  letter-spacing:-.02em!important;
}

/* Better mobile type rhythm */
@media(max-width:760px){
  body{
    font-size:16px!important;
    line-height:1.55!important;
  }
  .hero h1,
  .page-hero h1,
  .boutique-hero h1{
    letter-spacing:-.035em!important;
  }
  .eyebrow{
    letter-spacing:.11em!important;
  }
}


/* ===== Knowledge Library Editorial Redesign ===== */
.knowledge-library{background:#f4efe6;color:#102f28}
.knowledge-hero{width:100%;display:grid;grid-template-columns:minmax(0,1.42fr) minmax(360px,.72fr);min-height:610px;background:#0c3028}
.knowledge-hero-copy{padding:clamp(70px,7vw,132px) clamp(42px,7vw,140px);display:flex;flex-direction:column;justify-content:center}
.knowledge-hero .eyebrow{color:#c69b50}
.knowledge-hero h1{font-family:var(--font-serif)!important;color:#f6f0e6;font-size:clamp(4.8rem,7.4vw,8.5rem);line-height:.84;letter-spacing:-.05em;margin:20px 0 28px;font-weight:500}
.knowledge-hero h1 em{display:block;color:#c69b50;font-weight:400}
.knowledge-hero-copy>p{color:#d5d7d1;max-width:720px;font-size:1.08rem;line-height:1.65}
.knowledge-hero-meta{display:flex;gap:40px;margin-top:50px;padding-top:24px;border-top:1px solid rgba(255,255,255,.16);color:#b9c2bd;font-size:.8rem}
.knowledge-hero-meta strong{font-family:var(--font-serif);font-size:1.5rem;color:#f6f0e6;font-weight:500;margin-right:7px}
.knowledge-hero-image{margin:0;min-height:610px;overflow:hidden;background:#151b17}
.knowledge-hero-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}

.knowledge-index{width:min(100% - 80px,1560px);margin:0 auto;padding:96px 0 110px}
.knowledge-index-head{display:grid;grid-template-columns:1.2fr .8fr;gap:70px;align-items:end;padding-bottom:36px;border-bottom:1px solid rgba(16,47,40,.22)}
.knowledge-index-head h2{font-family:var(--font-serif);font-size:clamp(3rem,4.4vw,5.4rem);line-height:.94;letter-spacing:-.035em;margin:10px 0 0;font-weight:500}
.knowledge-index-head>p{max-width:520px;justify-self:end;color:#5e6b66;line-height:1.65;margin:0}
.knowledge-categories{display:grid;grid-template-columns:repeat(3,1fr)}
.knowledge-category{position:relative;min-height:190px;padding:30px 30px 26px;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto 1fr auto;gap:10px 18px;text-decoration:none;color:#102f28;border-right:1px solid rgba(16,47,40,.18);border-bottom:1px solid rgba(16,47,40,.18);transition:background .25s,color .25s}
.knowledge-category:nth-child(3n){border-right:0}
.knowledge-category:hover,.knowledge-category.active{background:#10372e;color:#f5efe4}
.knowledge-category-no{font-family:var(--font-sans);font-size:.66rem;letter-spacing:.12em;color:#b28a49;padding-top:4px}
.knowledge-category-name{grid-column:2/4;font-family:var(--font-serif);font-size:1.55rem;line-height:1.08;font-weight:500}
.knowledge-category-count{grid-column:2;font-size:.75rem;align-self:end;opacity:.72}
.knowledge-category-arrow{grid-column:3;align-self:end;color:#b28a49;font-size:1rem}

.knowledge-content{width:min(100% - 80px,1380px);margin:0 auto;padding:20px 0 120px}
.knowledge-content-head{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;padding:58px 0 32px;border-top:1px solid rgba(16,47,40,.2);border-bottom:1px solid rgba(16,47,40,.2)}
.knowledge-content-head h2{font-family:var(--font-serif);font-size:clamp(3rem,5vw,5.8rem);line-height:.94;letter-spacing:-.035em;margin:10px 0 10px;font-weight:500}
.knowledge-content-head p{color:#64706c;margin:0}
.knowledge-back{color:#102f28;text-decoration:none;font-weight:600;font-size:.82rem;white-space:nowrap}
.knowledge-back span{color:#b28a49;margin-left:8px}

.knowledge-filter{display:grid;grid-template-columns:2fr repeat(4,1fr) auto;gap:10px;padding:28px 0}
.knowledge-filter label{display:flex;flex-direction:column;gap:7px}
.knowledge-filter label>span{font-size:.62rem;text-transform:uppercase;letter-spacing:.12em;color:#68736f;font-weight:600}
.knowledge-filter input,.knowledge-filter select{width:100%;height:48px;border:1px solid rgba(16,47,40,.2);background:#faf7f0;padding:0 13px;color:#102f28;font:inherit;border-radius:0}
.knowledge-filter-button{align-self:end;height:48px;border:0;background:#102f28;color:#fff;padding:0 20px;font-weight:600;display:flex;gap:20px;align-items:center;justify-content:space-between;cursor:pointer}
.knowledge-filter-button span{color:#c69b50}

.knowledge-results-head{display:flex;justify-content:space-between;padding:16px 0;border-top:1px solid rgba(16,47,40,.18);border-bottom:1px solid rgba(16,47,40,.18);font-size:.75rem;color:#69736f}
.knowledge-results-head a{color:#a77d3c;text-decoration:none}
.knowledge-result{display:grid;grid-template-columns:130px minmax(0,1fr) 36px;gap:30px;padding:38px 0;border-bottom:1px solid rgba(16,47,40,.18)}
.knowledge-result-date{font-family:var(--font-serif);font-size:1.15rem;color:#ad8341;padding-top:6px}
.knowledge-result-kicker{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:11px}
.knowledge-result-kicker span{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600;color:#98733b}
.knowledge-result h3{font-family:var(--font-serif);font-size:clamp(2rem,2.7vw,3.2rem);line-height:1;letter-spacing:-.025em;margin:0 0 12px;font-weight:500;max-width:850px}
.knowledge-result h3 a{color:inherit;text-decoration:none}
.knowledge-result p{max-width:820px;color:#5f6c67;line-height:1.62;margin:0 0 17px}
.knowledge-result-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:.72rem;color:#737d79}
.knowledge-result-meta span+span:before{content:"·";margin-right:18px;color:#b28a49}
.knowledge-result-link{font-size:1.2rem;color:#102f28;text-decoration:none;align-self:start;text-align:right}
.knowledge-empty{padding:50px 0;border-bottom:1px solid rgba(16,47,40,.18)}
.knowledge-empty strong{font-family:var(--font-serif);font-size:1.7rem;font-weight:500}
.knowledge-empty p{color:#69736f}

@media(max-width:1000px){
 .knowledge-hero{grid-template-columns:1.15fr .85fr}
 .knowledge-index,.knowledge-content{width:calc(100% - 48px)}
 .knowledge-filter{grid-template-columns:2fr 1fr 1fr}
 .knowledge-filter-button{align-self:end}
}
@media(max-width:760px){
 .knowledge-hero{display:flex;flex-direction:column;min-height:0}
 .knowledge-hero-copy{padding:58px 20px 46px}
 .knowledge-hero h1{font-size:clamp(3.5rem,17vw,5.5rem);margin:16px 0 22px}
 .knowledge-hero-copy>p{font-size:.98rem}
 .knowledge-hero-meta{margin-top:32px;gap:20px;flex-wrap:wrap}
 .knowledge-hero-image{min-height:245px;height:245px;order:2}
 .knowledge-hero-image img{height:245px}
 .knowledge-index{width:calc(100% - 28px);padding:54px 0 68px}
 .knowledge-index-head{grid-template-columns:1fr;gap:18px;padding-bottom:25px}
 .knowledge-index-head h2{font-size:2.8rem}
 .knowledge-index-head>p{justify-self:start}
 .knowledge-categories{grid-template-columns:1fr}
 .knowledge-category{min-height:0;padding:19px 8px;grid-template-columns:34px 1fr auto;grid-template-rows:auto auto;border-right:0}
 .knowledge-category-name{grid-column:2;font-size:1.35rem}
 .knowledge-category-count{grid-column:2;font-size:.72rem}
 .knowledge-category-arrow{grid-column:3;grid-row:1/3;align-self:center;padding-right:5px}
 .knowledge-content{width:calc(100% - 28px);padding-bottom:70px}
 .knowledge-content-head{align-items:flex-start;flex-direction:column;gap:20px;padding-top:38px}
 .knowledge-content-head h2{font-size:3rem}
 .knowledge-filter{grid-template-columns:1fr;gap:12px;padding:24px 0}
 .knowledge-filter input,.knowledge-filter select,.knowledge-filter-button{height:50px}
 .knowledge-result{grid-template-columns:1fr 28px;gap:10px 14px;padding:28px 0}
 .knowledge-result-date{grid-column:1/3;font-size:.95rem}
 .knowledge-result-main{grid-column:1}
 .knowledge-result-link{grid-column:2;grid-row:2}
 .knowledge-result h3{font-size:2rem}
 .knowledge-result-meta{gap:9px}
 .knowledge-result-meta span+span:before{margin-right:9px}
}

/* Header brand subtitle intentionally hidden */
.site-header .brand-subtitle,.site-header .brand small,header .brand-subtitle,header .brand small{display:none!important;}


/* ===== Kanzlei Final Proportion Polish ===== */
/* Desktop: tighter editorial rhythm and a more confident boutique module */
@media (min-width: 1001px){
  .boutique-hero{
    min-height:520px!important;
  }
  .boutique-hero .page-hero-inner{
    padding-top:68px!important;
    padding-bottom:76px!important;
  }

  .boutique-intro{
    padding-top:54px!important;
  }
  .boutique-intro-grid{
    width:min(100% - 64px,1480px)!important;
    grid-template-columns:minmax(0,1.02fr) minmax(0,1fr)!important;
    min-height:470px!important;
  }
  .boutique-intro-image,
  .boutique-intro-image img{
    min-height:470px!important;
  }
  .boutique-intro-copy{
    padding:58px clamp(48px,5vw,82px)!important;
  }
  .boutique-intro-copy h2{
    font-size:clamp(3.25rem,4.4vw,5.25rem)!important;
    max-width:620px!important;
  }
  .boutique-intro-copy p{
    font-size:1rem!important;
    max-width:650px!important;
  }

  .boutique-values{
    width:min(100% - 64px,1480px)!important;
  }
  .boutique-value{
    min-height:166px!important;
    padding:27px 24px 23px!important;
  }

  .boutique-profile{
    width:min(100% - 64px,1480px)!important;
    margin:0 auto!important;
    padding:72px 0 82px!important;
    grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr)!important;
    gap:clamp(70px,9vw,150px)!important;
  }
  .boutique-profile .editorial-aside{
    padding-top:2px!important;
  }
  .boutique-profile .editorial-aside p{
    max-width:430px!important;
    font-size:1rem!important;
    line-height:1.55!important;
  }
  .boutique-profile .editorial-main{
    max-width:800px!important;
  }
  .boutique-profile .editorial-main .lead{
    font-size:1.03rem!important;
    line-height:1.62!important;
    margin-top:0!important;
  }
  .boutique-profile .quote-panel{
    margin-top:42px!important;
    padding-top:34px!important;
  }
  .boutique-profile .quote-panel blockquote{
    font-size:clamp(2.4rem,3.1vw,4rem)!important;
    line-height:1.05!important;
  }
}

/* Large screens: use the canvas rather than leaving the content floating in the middle */
@media (min-width: 1500px){
  .boutique-intro-grid,
  .boutique-values,
  .boutique-profile{
    width:min(100% - 10vw,1580px)!important;
  }
}

/* Tablet */
@media (min-width:761px) and (max-width:1000px){
  .boutique-intro{padding-top:42px!important}
  .boutique-intro-grid,.boutique-values{width:calc(100% - 40px)!important}
  .boutique-intro-grid{min-height:390px!important}
  .boutique-intro-image,.boutique-intro-image img{min-height:390px!important}
  .boutique-intro-copy{padding:38px!important}
  .boutique-values{grid-template-columns:repeat(2,1fr)!important}
  .boutique-value:nth-child(2){border-right:0!important}
  .boutique-value:nth-child(-n+2){border-bottom:1px solid rgba(16,44,37,.12)!important}
  .boutique-profile{padding-top:62px!important}
}

/* Mobile: preserve the same hierarchy with less dead space */
@media (max-width:760px){
  .boutique-hero .page-hero-inner{
    padding-top:48px!important;
    padding-bottom:52px!important;
  }
  .boutique-intro{
    padding-top:22px!important;
  }
  .boutique-intro-grid{
    width:calc(100% - 20px)!important;
  }
  .boutique-intro-image,
  .boutique-intro-image img{
    height:260px!important;
    min-height:260px!important;
  }
  .boutique-intro-copy{
    padding:30px 22px 34px!important;
  }
  .boutique-values{
    width:calc(100% - 20px)!important;
  }
  .boutique-profile{
    padding-top:48px!important;
    padding-bottom:54px!important;
  }
  .boutique-profile .quote-panel{
    margin-top:30px!important;
  }
}


/* ===== Brand Unterzeile komplett entfernt ===== */
.site-header .brand-subtitle,
.site-header .brand small,
header .brand-subtitle,
header .brand small,
.site-footer .brand-subtitle,
.site-footer .footer-subtitle,
.site-footer .footer-brand small,
.site-footer .footer-brand p,
footer .brand-subtitle,
footer .footer-subtitle,
footer .footer-brand small,
footer .footer-brand p{
  display:none!important;
}


/* ===== Bibliothek Proportionen Final ===== */

/* Hero: weniger Höhe, bessere Balance 55/45 */
.knowledge-hero{
  min-height:0!important;
  height:470px!important;
  grid-template-columns:minmax(0,1.22fr) minmax(420px,1fr)!important;
}

.knowledge-hero-copy{
  padding:64px clamp(42px,5.5vw,96px)!important;
  justify-content:center!important;
}

.knowledge-hero h1{
  font-size:clamp(4rem,5.8vw,6.8rem)!important;
  line-height:.88!important;
  margin:14px 0 20px!important;
  max-width:760px!important;
}

.knowledge-hero-copy>p{
  max-width:690px!important;
  font-size:1rem!important;
  line-height:1.58!important;
}

.knowledge-hero-meta{
  margin-top:28px!important;
  padding-top:18px!important;
}

.knowledge-hero-image{
  min-height:470px!important;
  height:470px!important;
}

.knowledge-hero-image img{
  height:470px!important;
  object-fit:cover!important;
  object-position:center 45%!important;
}

/* Themenbereich: mehr Präsenz, dichter am Hero */
.knowledge-index{
  width:min(100% - 56px,1480px)!important;
  margin:0 auto!important;
  padding:64px 0 82px!important;
}

.knowledge-index-head{
  grid-template-columns:1.05fr .95fr!important;
  gap:56px!important;
  padding-bottom:28px!important;
}

.knowledge-index-head h2{
  font-size:clamp(3.4rem,4.4vw,5.4rem)!important;
  line-height:.95!important;
}

.knowledge-index-head>p{
  max-width:590px!important;
  font-size:.98rem!important;
}

/* Kategorien größer und flächiger */
.knowledge-categories{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.knowledge-category{
  min-height:168px!important;
  padding:27px 28px 24px!important;
}

.knowledge-category-name{
  font-size:1.48rem!important;
}

.knowledge-category-count{
  font-size:.78rem!important;
}

/* Kategorie-Detailansicht an denselben breiten Rastermaßstab anpassen */
.knowledge-content{
  width:min(100% - 56px,1480px)!important;
  padding-bottom:90px!important;
}

.knowledge-content-head{
  padding-top:46px!important;
}

.knowledge-filter{
  grid-template-columns:minmax(300px,1.55fr) repeat(4,minmax(150px,.78fr)) auto!important;
}

/* Große Bildschirme: Hero nicht wieder zu hoch skalieren */
@media(min-width:1500px){
  .knowledge-hero{
    height:500px!important;
    grid-template-columns:minmax(0,1.24fr) minmax(500px,.96fr)!important;
  }
  .knowledge-hero-image,
  .knowledge-hero-image img{
    height:500px!important;
    min-height:500px!important;
  }
  .knowledge-index,
  .knowledge-content{
    width:min(100% - 7vw,1580px)!important;
  }
}

/* Laptop */
@media(max-width:1200px){
  .knowledge-hero{
    height:440px!important;
    grid-template-columns:minmax(0,1.15fr) minmax(360px,.9fr)!important;
  }
  .knowledge-hero-copy{
    padding:54px 36px!important;
  }
  .knowledge-hero h1{
    font-size:clamp(3.6rem,5.6vw,5.6rem)!important;
  }
  .knowledge-hero-image,
  .knowledge-hero-image img{
    height:440px!important;
    min-height:440px!important;
  }
  .knowledge-index,
  .knowledge-content{
    width:min(100% - 42px,1180px)!important;
  }
}

/* Tablet */
@media(max-width:900px){
  .knowledge-hero{
    height:auto!important;
    grid-template-columns:1fr!important;
  }
  .knowledge-hero-copy{
    padding:52px 28px 44px!important;
  }
  .knowledge-hero-image,
  .knowledge-hero-image img{
    height:280px!important;
    min-height:280px!important;
  }
  .knowledge-index-head{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }
  .knowledge-categories{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Mobile */
@media(max-width:760px){
  .knowledge-hero-copy{
    padding:48px 20px 38px!important;
  }
  .knowledge-hero h1{
    font-size:clamp(3.2rem,15vw,4.8rem)!important;
  }
  .knowledge-hero-image,
  .knowledge-hero-image img{
    height:225px!important;
    min-height:225px!important;
  }
  .knowledge-index{
    width:calc(100% - 26px)!important;
    padding:48px 0 58px!important;
  }
  .knowledge-index-head h2{
    font-size:2.65rem!important;
  }
  .knowledge-categories{
    grid-template-columns:1fr!important;
  }
  .knowledge-category{
    min-height:0!important;
    padding:18px 6px!important;
  }
  .knowledge-content{
    width:calc(100% - 26px)!important;
  }
}


/* ===== Bibliothek Detailansicht Premium ===== */

/* Kategorie-/Detailbereich auf großen Monitoren deutlich breiter */
.knowledge-content{
  width:min(100% - 64px,1660px)!important;
  max-width:1660px!important;
  margin:0 auto!important;
  padding:34px 0 110px!important;
}

.knowledge-content-head{
  padding:62px 0 34px!important;
  gap:60px!important;
}

.knowledge-content-head h2{
  font-size:clamp(3.6rem,5vw,6.2rem)!important;
  line-height:.92!important;
  letter-spacing:-.04em!important;
  margin:10px 0 12px!important;
}

.knowledge-content-head p{
  font-size:1rem!important;
  line-height:1.55!important;
}

.knowledge-back{
  font-size:.86rem!important;
  padding-bottom:5px!important;
}

/* Filter kompakter, aber besser lesbar und größer bedienbar */
.knowledge-filter{
  grid-template-columns:minmax(360px,1.7fr) repeat(4,minmax(165px,.8fr)) auto!important;
  gap:12px!important;
  padding:30px 0 26px!important;
}

.knowledge-filter label>span{
  font-size:.66rem!important;
  letter-spacing:.12em!important;
}

.knowledge-filter input,
.knowledge-filter select{
  height:52px!important;
  padding:0 14px!important;
  font-size:.92rem!important;
}

.knowledge-filter-button{
  height:52px!important;
  padding:0 22px!important;
  min-width:142px!important;
}

.knowledge-results-head{
  padding:17px 0!important;
  font-size:.8rem!important;
}

/* Beiträge bekommen mehr redaktionelle Präsenz */
.knowledge-result{
  grid-template-columns:150px minmax(0,1fr) 46px!important;
  gap:38px!important;
  padding:42px 0!important;
  align-items:start!important;
}

.knowledge-result-date{
  font-size:1.25rem!important;
  line-height:1.1!important;
  padding-top:8px!important;
}

.knowledge-result-kicker{
  gap:12px!important;
  margin-bottom:13px!important;
}

.knowledge-result-kicker span{
  font-size:.66rem!important;
  letter-spacing:.105em!important;
}

.knowledge-result h3{
  max-width:1050px!important;
  font-size:clamp(2.25rem,2.7vw,3.5rem)!important;
  line-height:.98!important;
  letter-spacing:-.03em!important;
  margin-bottom:14px!important;
}

.knowledge-result p{
  max-width:960px!important;
  font-size:.98rem!important;
  line-height:1.62!important;
  margin-bottom:18px!important;
}

.knowledge-result-meta{
  gap:20px!important;
  font-size:.76rem!important;
}

.knowledge-result-link{
  font-size:1.45rem!important;
  padding-top:5px!important;
  transition:transform .18s ease,color .18s ease!important;
}

.knowledge-result:hover .knowledge-result-link{
  transform:translate(3px,-3px)!important;
  color:#b28a49!important;
}

/* Große Screens: nicht zu schmal wirken */
@media(min-width:1500px){
  .knowledge-content{
    width:min(100% - 7vw,1760px)!important;
    max-width:1760px!important;
  }
  .knowledge-filter{
    grid-template-columns:minmax(420px,1.85fr) repeat(4,minmax(175px,.82fr)) auto!important;
  }
}

/* Laptop */
@media(max-width:1280px){
  .knowledge-content{
    width:min(100% - 42px,1220px)!important;
  }
  .knowledge-filter{
    grid-template-columns:minmax(300px,1.45fr) repeat(2,minmax(150px,.8fr))!important;
  }
  .knowledge-filter label:nth-of-type(4),
  .knowledge-filter label:nth-of-type(5){
    grid-row:2!important;
  }
  .knowledge-filter-button{
    grid-column:auto!important;
  }
  .knowledge-result{
    grid-template-columns:125px minmax(0,1fr) 36px!important;
    gap:26px!important;
  }
}

/* Tablet */
@media(max-width:900px){
  .knowledge-content{
    width:min(100% - 32px,860px)!important;
    padding-bottom:80px!important;
  }
  .knowledge-content-head{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:16px!important;
    padding-top:42px!important;
  }
  .knowledge-filter{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .knowledge-filter .knowledge-search{
    grid-column:1/-1!important;
  }
  .knowledge-filter-button{
    width:100%!important;
  }
}

/* Mobile */
@media(max-width:760px){
  .knowledge-content{
    width:calc(100% - 26px)!important;
    padding:18px 0 64px!important;
  }
  .knowledge-content-head{
    padding:34px 0 24px!important;
  }
  .knowledge-content-head h2{
    font-size:clamp(2.7rem,12vw,4rem)!important;
  }
  .knowledge-filter{
    grid-template-columns:1fr!important;
    gap:10px!important;
    padding:22px 0!important;
  }
  .knowledge-filter .knowledge-search{
    grid-column:auto!important;
  }
  .knowledge-filter input,
  .knowledge-filter select,
  .knowledge-filter-button{
    height:50px!important;
  }
  .knowledge-result{
    grid-template-columns:1fr 28px!important;
    gap:10px 14px!important;
    padding:28px 0!important;
  }
  .knowledge-result-date{
    grid-column:1/3!important;
    font-size:.95rem!important;
    padding-top:0!important;
  }
  .knowledge-result-main{
    grid-column:1!important;
  }
  .knowledge-result-link{
    grid-column:2!important;
    grid-row:2!important;
    font-size:1.2rem!important;
  }
  .knowledge-result h3{
    font-size:2rem!important;
    line-height:1.02!important;
  }
  .knowledge-result p{
    font-size:.94rem!important;
  }
}


/* ===== Beitragsdetail Editorial Premium ===== */

/* Hero: cleaner width and less awkward title wrapping */
.publication-detail-hero .page-hero-inner{
  width:min(100% - 64px,1440px)!important;
  max-width:1440px!important;
  margin:0 auto!important;
}
.publication-detail-hero h1{
  max-width:980px!important;
  font-size:clamp(3.8rem,5.6vw,6.8rem)!important;
  line-height:.92!important;
  letter-spacing:-.045em!important;
  text-wrap:balance!important;
}
.publication-detail-hero p{
  max-width:780px!important;
  line-height:1.58!important;
}
.publication-detail-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:0!important;
  margin-top:25px!important;
}
.publication-detail-meta span{
  font-size:.75rem!important;
  color:rgba(245,240,230,.76)!important;
}
.publication-detail-meta span+span:before{
  content:"·"!important;
  margin:0 12px!important;
  color:#c69b50!important;
}

/* Main reading layout */
.publication-detail.publication-detail-polished{
  width:min(100% - 64px,1440px)!important;
  max-width:1440px!important;
  margin:0 auto!important;
  padding:72px 0 100px!important;
  display:grid!important;
  grid-template-columns:minmax(0,780px) minmax(300px,380px)!important;
  justify-content:space-between!important;
  gap:clamp(60px,7vw,120px)!important;
  align-items:start!important;
}
.publication-article{
  min-width:0!important;
  max-width:780px!important;
}
.publication-article>p,
.publication-article .rich-text p,
.publication-article .publication-block p{
  font-size:1.075rem!important;
  line-height:1.78!important;
  color:#253b35!important;
}
.publication-article>p+p{
  margin-top:1.2em!important;
}
.article-lead{
  font-family:var(--font-serif)!important;
  font-size:1.42rem!important;
  line-height:1.5!important;
  color:#17352d!important;
  margin-bottom:34px!important;
}
.publication-article h2{
  font-family:var(--font-serif)!important;
  font-size:2.35rem!important;
  line-height:1.05!important;
  margin:48px 0 18px!important;
}
.publication-article h3{
  font-family:var(--font-serif)!important;
  font-size:1.75rem!important;
  line-height:1.1!important;
  margin:38px 0 14px!important;
}
.article-tags{
  margin-top:34px!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.article-tags a{
  padding:7px 11px!important;
  border:1px solid rgba(16,47,40,.14)!important;
  background:#f4f1e9!important;
  border-radius:999px!important;
  color:#38504a!important;
  font-size:.72rem!important;
  text-decoration:none!important;
}

/* Source / PDF documentation */
.article-reference-panel{
  margin-top:42px!important;
  padding:26px 0!important;
  border-top:1px solid rgba(16,47,40,.18)!important;
  border-bottom:1px solid rgba(16,47,40,.18)!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(220px,300px)!important;
  gap:34px!important;
}
.article-reference-copy>p{
  margin:11px 0 0!important;
  display:grid!important;
  grid-template-columns:100px 1fr!important;
  gap:14px!important;
  font-size:.83rem!important;
  line-height:1.45!important;
}
.article-reference-copy>p strong{
  font-weight:600!important;
  color:#102f28!important;
}
.article-reference-copy>p span{
  color:#66736e!important;
}
.article-reference-actions{
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
.article-document-link{
  padding:14px 15px!important;
  border:1px solid rgba(16,47,40,.18)!important;
  color:#102f28!important;
  text-decoration:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  transition:background .18s ease,color .18s ease!important;
}
.article-document-link:hover{
  background:#102f28!important;
  color:#fff!important;
}
.article-document-link span{
  font-size:.68rem!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  opacity:.7!important;
}
.article-document-link strong{
  font-size:.8rem!important;
  white-space:nowrap!important;
}

.legal-article-note{
  margin-top:28px!important;
  padding:18px 20px!important;
  border:0!important;
  border-left:2px solid #c69b50!important;
  background:rgba(198,155,80,.055)!important;
  box-shadow:none!important;
}
.legal-article-note strong{
  font-size:.75rem!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
.legal-article-note p{
  margin:5px 0 0!important;
  font-size:.82rem!important;
  line-height:1.5!important;
  color:#68736e!important;
}

/* Compact author/adviser card */
.publication-aside.publication-contact-card{
  width:100%!important;
  max-width:380px!important;
  position:sticky!important;
  top:108px!important;
  padding:28px!important;
  border:1px solid rgba(16,47,40,.14)!important;
  border-top:2px solid #c69b50!important;
  background:#fbf8f1!important;
  box-shadow:0 18px 44px rgba(18,39,32,.07)!important;
}
.article-author-card{
  display:grid!important;
  grid-template-columns:66px 1fr!important;
  column-gap:16px!important;
  align-items:center!important;
}
.article-author-card img{
  grid-row:1/5!important;
  width:66px!important;
  height:66px!important;
  object-fit:cover!important;
  border-radius:50%!important;
  margin:0!important;
}
.article-author-card .eyebrow{
  grid-column:2!important;
}
.article-author-card h2{
  grid-column:2!important;
  font-size:1.75rem!important;
  line-height:.98!important;
  margin:5px 0!important;
}
.article-author-card p{
  grid-column:2!important;
  margin:0!important;
  font-size:.78rem!important;
  color:#68736e!important;
}
.article-author-card .text-link{
  grid-column:2!important;
  margin-top:8px!important;
  font-size:.76rem!important;
}
.topic-service-link{
  margin:22px 0 0!important;
  padding:15px 0!important;
  border-top:1px solid rgba(16,47,40,.14)!important;
  border-bottom:1px solid rgba(16,47,40,.14)!important;
  background:transparent!important;
}
.publication-contact-intro{
  margin:18px 0 13px!important;
  font-size:.84rem!important;
  line-height:1.5!important;
  color:#65716d!important;
}
.publication-contact-links{
  margin-bottom:16px!important;
}
.publication-contact-links a{
  font-size:.82rem!important;
}
.publication-contact-primary{
  width:100%!important;
  justify-content:space-between!important;
}
.publication-contact-card>.text-link{
  margin-top:14px!important;
  display:inline-flex!important;
}

/* Related reading as a real editorial continuation */
.related-publications{
  padding-top:80px!important;
  padding-bottom:100px!important;
}
.related-publications .section-head{
  width:min(100% - 64px,1440px)!important;
  margin:0 auto 30px!important;
}
.related-publications-grid{
  width:min(100% - 64px,1440px)!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
}
.related-publication-card{
  border-top:1px solid rgba(16,47,40,.2)!important;
  padding-top:20px!important;
}
.related-publication-card h3{
  font-size:1.9rem!important;
  line-height:1.03!important;
}
.related-publication-card p{
  line-height:1.55!important;
}

/* Tablet */
@media(max-width:1050px){
  .publication-detail.publication-detail-polished{
    width:min(100% - 42px,980px)!important;
    grid-template-columns:minmax(0,1fr) 310px!important;
    gap:42px!important;
  }
  .publication-aside.publication-contact-card{
    max-width:310px!important;
  }
  .article-reference-panel{
    grid-template-columns:1fr!important;
  }
}

/* Mobile */
@media(max-width:760px){
  .publication-detail-hero .page-hero-inner{
    width:calc(100% - 28px)!important;
  }
  .publication-detail-hero h1{
    font-size:clamp(2.8rem,13vw,4.2rem)!important;
    line-height:.94!important;
  }
  .publication-detail-meta span{
    display:inline-block!important;
    margin-bottom:5px!important;
  }
  .publication-detail.publication-detail-polished{
    width:calc(100% - 28px)!important;
    padding:48px 0 68px!important;
    display:flex!important;
    flex-direction:column!important;
    gap:42px!important;
  }
  .publication-article{
    max-width:none!important;
  }
  .publication-article>p,
  .publication-article .rich-text p,
  .publication-article .publication-block p{
    font-size:1rem!important;
    line-height:1.7!important;
  }
  .article-lead{
    font-size:1.22rem!important;
  }
  .article-reference-panel{
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  .article-reference-copy>p{
    grid-template-columns:1fr!important;
    gap:3px!important;
  }
  .publication-aside.publication-contact-card{
    position:static!important;
    max-width:none!important;
    padding:24px 20px!important;
  }
  .related-publications .section-head,
  .related-publications-grid{
    width:calc(100% - 28px)!important;
  }
  .related-publications-grid{
    grid-template-columns:1fr!important;
    gap:26px!important;
  }
}

/* ===== Kanzleifotografie 2026 – authentische Räume, ruhig und hochwertig ins Layout integriert ===== */
.kanzlei-spaces{padding:clamp(70px,8vw,120px) max(24px,6vw);background:#f4efe6}
.kanzlei-spaces-head{width:min(100%,1480px);margin:0 auto 42px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.65fr);gap:8vw;align-items:end}
.kanzlei-spaces-head h2{font-family:var(--font-serif);font-size:clamp(3rem,5vw,5.8rem);line-height:.96;letter-spacing:-.035em;margin:0;color:#0b332a}
.kanzlei-spaces-head>p{max-width:560px;margin:0 0 8px;color:#5f6c67;line-height:1.7}
.kanzlei-gallery{width:min(100%,1480px);margin:auto;display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:340px 340px;gap:18px}
.kanzlei-gallery figure{margin:0;overflow:hidden;background:#102b24}
.kanzlei-gallery img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .8s var(--ease)}
.kanzlei-gallery figure:hover img{transform:scale(1.018)}
.kanzlei-gallery-main{grid-row:1/3}
.kanzlei-gallery-main img{object-position:center}
.kanzlei-gallery-tall{grid-column:2;grid-row:1}
.kanzlei-gallery-small{display:none}
.contact-location-visual{width:min(calc(100% - 12vw),1480px);margin:clamp(50px,6vw,90px) auto 0;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);background:#102f28;color:#fff}
.contact-location-visual figure{margin:0;min-height:390px;overflow:hidden}
.contact-location-visual img{width:100%;height:100%;min-height:390px;object-fit:cover;object-position:center;display:block}
.contact-location-visual>div{padding:clamp(38px,5vw,72px);display:flex;flex-direction:column;justify-content:flex-end}
.contact-location-visual p{font-family:var(--font-serif);font-size:clamp(1.8rem,3vw,3.2rem);line-height:1.08;margin:0;max-width:500px}
@media(min-width:1180px){.kanzlei-gallery{grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:320px 320px}.kanzlei-gallery-main{grid-column:1/3;grid-row:1/3}.kanzlei-gallery-tall{grid-column:3;grid-row:1}.kanzlei-gallery-small{display:block;grid-column:3;grid-row:2}.kanzlei-gallery-small:nth-of-type(4){display:none}}
@media(max-width:800px){.kanzlei-spaces{padding:58px 14px}.kanzlei-spaces-head{grid-template-columns:1fr;gap:24px;margin-bottom:28px}.kanzlei-spaces-head h2{font-size:clamp(2.7rem,12vw,4rem)}.kanzlei-gallery{grid-template-columns:1fr;grid-template-rows:auto;gap:10px}.kanzlei-gallery-main,.kanzlei-gallery-tall,.kanzlei-gallery-small{grid-column:auto;grid-row:auto}.kanzlei-gallery-main{height:58vw;min-height:280px}.kanzlei-gallery-tall{height:54vw;min-height:250px}.contact-location-visual{width:calc(100% - 28px);grid-template-columns:1fr;margin-top:32px}.contact-location-visual figure,.contact-location-visual img{min-height:260px;height:260px}.contact-location-visual>div{padding:30px 24px 34px}}


/* ===== Bibliothek Hero – Kanzleifoto ===== */
.knowledge-hero-image::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg,rgba(12,48,40,.30) 0%,rgba(12,48,40,.08) 28%,rgba(0,0,0,.06) 100%);
}
.knowledge-hero-image img{
  object-position:42% 54%!important;
  filter:brightness(.86) saturate(.88) contrast(1.04);
}
@media(max-width:900px){
  .knowledge-hero-image img{object-position:40% 54%!important;}
}
@media(max-width:760px){
  .knowledge-hero-image img{object-position:38% 52%!important;}
}


/* ===== Mobile Master Final 2026-08 ===== */
@media (max-width: 760px){

  html{
    scroll-padding-top:78px!important;
  }

  html,body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    -webkit-text-size-adjust:100%!important;
  }

  body{
    font-size:16px!important;
    line-height:1.55!important;
  }

  img,video,iframe{
    max-width:100%!important;
  }

  /* Header */
  .site-header,
  header.site-header{
    min-height:70px!important;
    height:auto!important;
  }

  .header-inner,
  .site-header .inner,
  .nav-wrap{
    min-height:70px!important;
    padding:0 14px!important;
    gap:10px!important;
  }

  .brand{
    max-width:62%!important;
    min-width:0!important;
  }

  .brand img{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
  }

  .brand b,
  .brand-title{
    font-size:.78rem!important;
    line-height:1.1!important;
    letter-spacing:.07em!important;
    white-space:normal!important;
  }

  .brand-subtitle,
  .brand small{
    display:none!important;
  }

  .desktop-nav,
  .main-nav{
    display:none!important;
  }

  .mobile-menu-toggle,
  .menu-toggle,
  .burger{
    width:42px!important;
    height:42px!important;
    min-width:42px!important;
    min-height:42px!important;
  }

  .mobile-menu,
  .mobile-menu-panel,
  .mobile-nav{
    width:100%!important;
    max-width:none!important;
    left:0!important;
    right:0!important;
  }

  .mobile-menu a,
  .mobile-nav a{
    min-height:48px!important;
    padding:13px 18px!important;
    font-size:1rem!important;
  }

  .language-switcher,
  .header-socials{
    gap:7px!important;
  }

  .language-switcher a,
  .language-switcher button,
  .header-socials a{
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    min-height:34px!important;
    font-size:.68rem!important;
  }

  /* Global page rhythm */
  .section,
  section.section{
    padding-left:16px!important;
    padding-right:16px!important;
    padding-top:48px!important;
    padding-bottom:48px!important;
  }

  .section-head{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:16px!important;
  }

  .section-head h2{
    font-size:clamp(2.35rem,11vw,3.6rem)!important;
    line-height:.98!important;
  }

  .eyebrow{
    font-size:.64rem!important;
    letter-spacing:.11em!important;
  }

  h1,h2,h3{
    overflow-wrap:normal!important;
    word-break:normal!important;
    hyphens:auto!important;
  }

  .btn,
  button,
  input,
  select,
  textarea{
    font-size:16px!important;
  }

  .btn{
    min-height:46px!important;
  }

  /* Startseite Hero */
  .hero{
    min-height:0!important;
    height:auto!important;
  }

  .hero>img,
  .hero-media img{
    height:620px!important;
    min-height:620px!important;
    object-fit:cover!important;
    object-position:center!important;
  }

  .hero-copy{
    left:16px!important;
    right:16px!important;
    bottom:102px!important;
    max-width:none!important;
  }

  .hero-copy h1{
    font-size:clamp(2.8rem,14vw,4.4rem)!important;
    line-height:.91!important;
    letter-spacing:-.045em!important;
    margin:9px 0 15px!important;
  }

  .hero-copy p{
    max-width:96%!important;
    font-size:.96rem!important;
    line-height:1.55!important;
  }

  .hero-copy .actions{
    display:flex!important;
    flex-direction:column!important;
    gap:9px!important;
    width:100%!important;
    margin-top:20px!important;
  }

  .hero-copy .btn{
    width:100%!important;
    justify-content:space-between!important;
  }

  .hero-aside,
  .scroll-cue{
    display:none!important;
  }

  .hero-fact{
    left:16px!important;
    right:16px!important;
    bottom:18px!important;
    width:auto!important;
    padding:13px 15px!important;
  }

  /* Journal */
  .ref-journal{
    padding:34px 0 54px!important;
  }

  .ref-journal-wrap{
    width:calc(100% - 24px)!important;
  }

  .ref-journal-intro{
    padding-bottom:22px!important;
  }

  .ref-journal-intro h1{
    font-size:clamp(2.65rem,13vw,4rem)!important;
    line-height:.94!important;
  }

  .ref-journal-intro p{
    font-size:.95rem!important;
  }

  .ref-topics{
    gap:16px!important;
    padding:14px 0 12px!important;
  }

  .ref-topics a{
    font-size:.72rem!important;
  }

  .ref-search{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin:16px 0!important;
  }

  .ref-search input,
  .ref-search button{
    width:100%!important;
    min-height:48px!important;
  }

  .ref-row{
    grid-template-columns:1fr!important;
    gap:15px!important;
    padding:20px 0!important;
  }

  .ref-image{
    aspect-ratio:16/10!important;
  }

  .ref-copy h2{
    font-size:1.95rem!important;
    line-height:1.03!important;
  }

  /* Bibliothek Hero */
  .knowledge-hero{
    display:flex!important;
    flex-direction:column!important;
    height:auto!important;
    min-height:0!important;
  }

  .knowledge-hero-copy{
    padding:46px 18px 34px!important;
  }

  .knowledge-hero h1{
    font-size:clamp(3.25rem,16vw,5rem)!important;
    line-height:.86!important;
    margin:14px 0 20px!important;
  }

  .knowledge-hero-copy>p{
    font-size:.95rem!important;
    line-height:1.55!important;
  }

  .knowledge-hero-meta{
    margin-top:28px!important;
    padding-top:16px!important;
    gap:18px!important;
    flex-wrap:wrap!important;
  }

  .knowledge-hero-meta span{
    font-size:.72rem!important;
  }

  .knowledge-hero-image{
    height:230px!important;
    min-height:230px!important;
    order:2!important;
  }

  .knowledge-hero-image img{
    height:230px!important;
    min-height:230px!important;
    object-fit:cover!important;
    object-position:center 46%!important;
  }

  .knowledge-index{
    width:calc(100% - 24px)!important;
    padding:46px 0 58px!important;
  }

  .knowledge-index-head{
    grid-template-columns:1fr!important;
    gap:16px!important;
    padding-bottom:23px!important;
  }

  .knowledge-index-head h2{
    font-size:2.65rem!important;
    line-height:.96!important;
  }

  .knowledge-index-head>p{
    font-size:.92rem!important;
  }

  .knowledge-categories{
    grid-template-columns:1fr!important;
  }

  .knowledge-category{
    min-height:0!important;
    padding:17px 6px!important;
    display:grid!important;
    grid-template-columns:34px minmax(0,1fr) auto!important;
    grid-template-rows:auto auto!important;
    gap:6px 10px!important;
    border-right:0!important;
  }

  .knowledge-category-name{
    grid-column:2!important;
    font-size:1.28rem!important;
    line-height:1.08!important;
  }

  .knowledge-category-count{
    grid-column:2!important;
    font-size:.7rem!important;
  }

  .knowledge-category-arrow{
    grid-column:3!important;
    grid-row:1/3!important;
    align-self:center!important;
  }

  /* Bibliothek Detail / Filter */
  .knowledge-content{
    width:calc(100% - 24px)!important;
    padding:14px 0 62px!important;
  }

  .knowledge-content-head{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:14px!important;
    padding:32px 0 22px!important;
  }

  .knowledge-content-head h2{
    font-size:clamp(2.65rem,12vw,4rem)!important;
    line-height:.96!important;
  }

  .knowledge-filter{
    grid-template-columns:1fr!important;
    gap:9px!important;
    padding:20px 0!important;
  }

  .knowledge-filter .knowledge-search{
    grid-column:auto!important;
  }

  .knowledge-filter input,
  .knowledge-filter select,
  .knowledge-filter-button{
    width:100%!important;
    height:50px!important;
    min-height:50px!important;
  }

  .knowledge-results-head{
    padding:14px 0!important;
  }

  .knowledge-result{
    grid-template-columns:1fr 28px!important;
    gap:9px 12px!important;
    padding:26px 0!important;
  }

  .knowledge-result-date{
    grid-column:1/3!important;
    padding:0!important;
    font-size:.92rem!important;
  }

  .knowledge-result-main{
    grid-column:1!important;
  }

  .knowledge-result-link{
    grid-column:2!important;
    grid-row:2!important;
    font-size:1.18rem!important;
  }

  .knowledge-result h3{
    font-size:1.9rem!important;
    line-height:1.02!important;
  }

  .knowledge-result p{
    font-size:.93rem!important;
    line-height:1.58!important;
  }

  .knowledge-result-meta{
    gap:8px!important;
    font-size:.7rem!important;
  }

  .knowledge-result-meta span+span:before{
    margin-right:8px!important;
  }

  /* Kanzlei */
  .boutique-hero .page-hero-inner{
    padding:46px 16px 50px!important;
  }

  .boutique-hero h1{
    font-size:clamp(3rem,14vw,4.5rem)!important;
    line-height:.93!important;
  }

  .boutique-intro{
    padding-top:20px!important;
  }

  .boutique-intro-grid{
    width:calc(100% - 20px)!important;
    grid-template-columns:1fr!important;
  }

  .boutique-intro-image,
  .boutique-intro-image img{
    height:255px!important;
    min-height:255px!important;
  }

  .boutique-intro-image img{
    object-fit:cover!important;
    object-position:center!important;
  }

  .boutique-intro-copy{
    padding:28px 20px 32px!important;
  }

  .boutique-intro-copy h2{
    font-size:2.45rem!important;
  }

  .boutique-values{
    width:calc(100% - 20px)!important;
    grid-template-columns:1fr 1fr!important;
  }

  .boutique-value{
    min-height:142px!important;
    padding:22px 14px 18px!important;
  }

  .boutique-value:nth-child(2n){
    border-right:0!important;
  }

  .boutique-profile{
    padding-top:44px!important;
    padding-bottom:50px!important;
  }

  /* Team */
  .team-grid{
    grid-template-columns:1fr 1fr!important;
    gap:14px!important;
  }

  .person-image{
    aspect-ratio:3/4!important;
  }

  .person h3{
    font-size:1.15rem!important;
  }

  .person p{
    font-size:.8rem!important;
  }

  /* Beitragsdetail */
  .publication-detail-hero .page-hero-inner{
    width:calc(100% - 24px)!important;
    padding-top:46px!important;
    padding-bottom:46px!important;
  }

  .publication-detail-hero h1{
    font-size:clamp(2.7rem,12.5vw,4.1rem)!important;
    line-height:.94!important;
  }

  .publication-detail-meta{
    margin-top:20px!important;
  }

  .publication-detail-meta span{
    font-size:.69rem!important;
    margin-bottom:5px!important;
  }

  .publication-detail.publication-detail-polished{
    width:calc(100% - 24px)!important;
    padding:42px 0 62px!important;
    display:flex!important;
    flex-direction:column!important;
    gap:38px!important;
  }

  .publication-article{
    max-width:none!important;
  }

  .publication-article>p,
  .publication-article .rich-text p,
  .publication-article .publication-block p{
    font-size:1rem!important;
    line-height:1.68!important;
  }

  .article-lead{
    font-size:1.18rem!important;
    line-height:1.5!important;
  }

  .article-reference-panel{
    grid-template-columns:1fr!important;
    gap:18px!important;
  }

  .article-reference-copy>p{
    grid-template-columns:1fr!important;
    gap:2px!important;
  }

  .article-document-link{
    flex-direction:column!important;
    align-items:flex-start!important;
  }

  .publication-aside.publication-contact-card{
    position:static!important;
    max-width:none!important;
    padding:22px 18px!important;
  }

  .article-author-card{
    grid-template-columns:58px 1fr!important;
    column-gap:13px!important;
  }

  .article-author-card img{
    width:58px!important;
    height:58px!important;
  }

  .article-author-card h2{
    font-size:1.55rem!important;
  }

  .related-publications{
    padding-top:52px!important;
    padding-bottom:62px!important;
  }

  .related-publications .section-head,
  .related-publications-grid{
    width:calc(100% - 24px)!important;
  }

  .related-publications-grid{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }

  /* Kontakt / Formulare */
  .contact-grid,
  .contact-layout,
  .form-grid,
  .compact-grid{
    grid-template-columns:1fr!important;
  }

  input,select,textarea{
    width:100%!important;
  }

  textarea{
    min-height:150px!important;
  }

  /* Footer */
  .site-footer,
  footer.site-footer{
    padding:42px 18px 24px!important;
  }

  .footer-brand,
  .footer-column{
    margin-bottom:24px!important;
  }

  .footer-grid,
  .footer-columns,
  footer .grid{
    grid-template-columns:1fr!important;
    gap:24px!important;
  }

  .footer-brand img{
    width:52px!important;
    height:52px!important;
  }

  .footer-bottom{
    flex-direction:column!important;
    align-items:flex-start!important;
    gap:10px!important;
    margin-top:28px!important;
  }

  /* Admin */
  .admin-shell,
  .admin-main,
  .admin-content{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .publication-admin-layout,
  .admin-grid,
  .form-grid{
    grid-template-columns:1fr!important;
  }

  .admin-sidebar{
    width:100%!important;
    max-width:none!important;
  }

  .form-actions{
    flex-direction:column!important;
    gap:8px!important;
  }

  .form-actions .btn{
    width:100%!important;
  }

  .block-toolbar{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }

  .block-toolbar .btn{
    width:100%!important;
  }
}

/* Very small phones */
@media (max-width: 390px){
  .team-grid{
    grid-template-columns:1fr!important;
  }

  .boutique-values{
    grid-template-columns:1fr!important;
  }

  .boutique-value{
    border-right:0!important;
  }

  .hero-copy h1{
    font-size:2.7rem!important;
  }

  .knowledge-hero h1{
    font-size:3.15rem!important;
  }

  .block-toolbar{
    grid-template-columns:1fr!important;
  }
}


/* ===== Automatische Wissensdatenbank ===== */
.knowledge-auto-note{
  margin:14px 0 22px;
  padding:14px 16px;
  border:1px solid rgba(16,47,40,.16);
  border-left:3px solid #b78a40;
  background:#f7f4ed;
  display:flex;
  flex-direction:column;
  gap:4px;
  color:#17352d;
}
.knowledge-auto-note strong{
  font-size:.82rem;
  font-weight:700;
}
.knowledge-auto-note span{
  font-size:.78rem;
  line-height:1.45;
  color:#65716d;
}


/* ===== Haus Kerberg Editorial Image Story ===== */
.kanzlei-spaces{
  padding:clamp(72px,7vw,118px) max(24px,5vw)!important;
}
.kanzlei-spaces-head{
  width:min(100%,1540px)!important;
  margin:0 auto 40px!important;
}
.kanzlei-location-story{
  width:min(100%,1540px);
  margin:0 auto;
}
.kanzlei-location-story figure{
  margin:0;
  overflow:hidden;
}
.kanzlei-location-story img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}
.kanzlei-location-exterior{
  position:relative;
  height:clamp(500px,48vw,760px);
  background:#17201b;
}
.kanzlei-location-exterior img{
  object-position:center 48%;
}
.kanzlei-location-exterior figcaption{
  position:absolute;
  left:28px;
  bottom:26px;
  max-width:430px;
  padding:14px 18px;
  background:rgba(10,38,31,.90);
  color:#f6f0e6;
  backdrop-filter:blur(4px);
}
.kanzlei-location-exterior figcaption span{
  display:block;
  font-family:var(--font-serif);
  font-size:1.35rem;
  margin-bottom:3px;
}
.kanzlei-location-exterior figcaption small{
  color:#d6d8d2;
  font-size:.74rem;
}
.kanzlei-location-pair{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  gap:14px;
  margin-top:14px;
}
.kanzlei-location-balcony{
  height:clamp(350px,34vw,520px);
}
.kanzlei-location-balcony img{
  object-position:center 52%;
}
.kanzlei-location-interior{
  height:clamp(350px,34vw,520px);
}
.kanzlei-location-interior img{
  object-position:center 48%;
}

/* Contact: entrance image should be practical, not just decorative */
.contact-location-visual{
  width:min(calc(100% - 9vw),1540px)!important;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr)!important;
}
.contact-location-visual figure{
  min-height:460px!important;
}
.contact-location-visual img{
  min-height:460px!important;
  object-position:center 56%!important;
}
.contact-location-visual>div small{
  margin-top:18px;
  color:#b9c2bd;
  font-size:.75rem;
  letter-spacing:.03em;
}

/* Tablet */
@media(max-width:1000px){
  .kanzlei-location-exterior{
    height:58vw;
    min-height:420px;
  }
  .kanzlei-location-pair{
    grid-template-columns:1fr 1fr;
  }
  .kanzlei-location-balcony,
  .kanzlei-location-interior{
    height:42vw;
    min-height:300px;
  }
}

/* Mobile */
@media(max-width:760px){
  .kanzlei-spaces{
    padding:52px 12px!important;
  }
  .kanzlei-spaces-head{
    margin-bottom:24px!important;
  }
  .kanzlei-location-story{
    width:100%;
  }
  .kanzlei-location-exterior{
    height:62vw;
    min-height:280px;
  }
  .kanzlei-location-exterior figcaption{
    left:10px;
    right:10px;
    bottom:10px;
    max-width:none;
    padding:11px 13px;
  }
  .kanzlei-location-exterior figcaption span{
    font-size:1.15rem;
  }
  .kanzlei-location-pair{
    grid-template-columns:1fr;
    gap:10px;
    margin-top:10px;
  }
  .kanzlei-location-balcony,
  .kanzlei-location-interior{
    height:58vw;
    min-height:250px;
  }

  .contact-location-visual{
    width:calc(100% - 20px)!important;
    grid-template-columns:1fr!important;
    margin-top:26px!important;
  }
  .contact-location-visual figure,
  .contact-location-visual img{
    height:300px!important;
    min-height:300px!important;
  }
  .contact-location-visual img{
    object-position:center 55%!important;
  }
  .contact-location-visual>div{
    padding:28px 20px 30px!important;
  }
  .contact-location-visual p{
    font-size:1.75rem!important;
  }
}


/* ===== Typography Audit Final 2026 ===== */
:root{
  --font-serif:"EB Garamond","Cormorant Garamond","Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;
  --font-sans:"Source Sans 3","Source Sans Pro",Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;

  /* Responsive editorial type scale */
  --fs-xs:.72rem;
  --fs-sm:.82rem;
  --fs-body:1rem;
  --fs-body-lg:1.075rem;
  --fs-h4:1.25rem;
  --fs-h3:clamp(1.65rem,1.55vw,2.15rem);
  --fs-h2:clamp(2.65rem,3.9vw,4.9rem);
  --fs-h1:clamp(4rem,6.5vw,7.4rem);

  --lh-tight:.96;
  --lh-head:1.04;
  --lh-body:1.62;
  --track-tight:-.035em;
  --track-ui:-.012em;
}

/* Base */
html,body{
  font-family:var(--font-sans)!important;
  font-size:16px;
  line-height:var(--lh-body);
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  font-optical-sizing:auto;
}

body,
p,
li,
input,
select,
textarea,
button{
  font-family:var(--font-sans)!important;
}

p{
  font-size:var(--fs-body);
  line-height:var(--lh-body);
}

/* Editorial serif hierarchy */
h1,h2,h3,h4,
.hero h1,
.page-hero h1,
.section-head h2,
.boutique-intro-copy h2,
.knowledge-hero h1,
.knowledge-index-head h2,
.knowledge-content-head h2,
.ref-journal-intro h1,
.ref-copy h2,
.home-journal-card h3,
.knowledge-result h3,
.publication-detail-hero h1,
.publication-article h2,
.publication-article h3,
.related-publication-card h3,
.person h3,
.card h3,
.quote-panel blockquote,
.editorial-main blockquote,
.principle p{
  font-family:var(--font-serif)!important;
  font-optical-sizing:auto;
  color:inherit;
}

h1{
  font-size:var(--fs-h1);
  line-height:var(--lh-tight);
  font-weight:500;
  letter-spacing:var(--track-tight);
}

h2{
  font-size:var(--fs-h2);
  line-height:.98;
  font-weight:500;
  letter-spacing:-.03em;
}

h3{
  font-size:var(--fs-h3);
  line-height:var(--lh-head);
  font-weight:500;
  letter-spacing:-.02em;
}

h4{
  font-size:var(--fs-h4);
  line-height:1.16;
  font-weight:600;
}

/* Huge display titles: editorial, but not oversized */
.hero h1,
.page-hero h1,
.boutique-hero h1,
.knowledge-hero h1{
  font-weight:500!important;
  letter-spacing:-.045em!important;
  text-wrap:balance;
}

/* Content / reading widths */
.lead,
.article-lead,
.editorial-main .lead{
  font-family:var(--font-serif)!important;
  font-size:clamp(1.25rem,1.5vw,1.55rem)!important;
  line-height:1.48!important;
  letter-spacing:-.01em!important;
}

.editorial-main p,
.boutique-intro-copy p,
.ref-copy p,
.knowledge-result p,
.publication-article p{
  font-size:var(--fs-body-lg)!important;
  line-height:1.68!important;
}

/* Navigation */
.main-nav,
.desktop-nav,
.mobile-nav,
.mobile-menu{
  font-family:var(--font-sans)!important;
}

.main-nav a,
.desktop-nav a{
  font-size:.84rem!important;
  font-weight:650!important;
  line-height:1!important;
  letter-spacing:-.005em!important;
}

.mobile-nav a,
.mobile-menu a{
  font-size:1rem!important;
  font-weight:600!important;
}

/* Brand */
.brand b,
.brand-title,
.footer-brand b{
  font-family:var(--font-sans)!important;
  font-weight:700!important;
  letter-spacing:.085em!important;
  line-height:1.05!important;
}

/* UI labels / eyebrow / meta */
.eyebrow,
.tag,
.badge,
.article-category-badge,
.article-type-badge,
.publication-category,
.knowledge-result-kicker span,
label>span,
.meta{
  font-family:var(--font-sans)!important;
}

.eyebrow{
  font-size:.68rem!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}

.tag,
.badge,
.article-category-badge,
.article-type-badge,
.publication-category,
.knowledge-result-kicker span{
  font-size:.64rem!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:.11em!important;
  text-transform:uppercase!important;
}

.meta,
.publication-detail-meta,
.knowledge-result-meta,
.person p,
.card-meta{
  font-size:.76rem!important;
  line-height:1.42!important;
}

/* Buttons */
.btn,
button,
.knowledge-filter-button{
  font-family:var(--font-sans)!important;
  font-size:.82rem!important;
  font-weight:700!important;
  letter-spacing:-.005em!important;
  line-height:1!important;
}

.text-link{
  font-family:var(--font-sans)!important;
  font-size:.8rem!important;
  font-weight:650!important;
  letter-spacing:-.005em!important;
}

/* Form controls */
input,
select,
textarea{
  font-size:.94rem!important;
  line-height:1.4!important;
}

label,
.form-label{
  font-size:.74rem!important;
  line-height:1.35!important;
  font-weight:650!important;
}

/* Startseite */
.hero-copy h1{
  font-size:clamp(4.3rem,6.5vw,7.2rem)!important;
  line-height:.91!important;
}

.hero-copy p{
  font-size:1.05rem!important;
  line-height:1.58!important;
  max-width:720px!important;
}

.home-journal-card h3{
  font-size:clamp(1.85rem,2vw,2.7rem)!important;
  line-height:1.02!important;
}

.home-journal-card p{
  font-size:.95rem!important;
  line-height:1.56!important;
}

/* Kanzlei */
.boutique-hero h1{
  font-size:clamp(4.4rem,6.5vw,7.4rem)!important;
  line-height:.91!important;
}

.boutique-hero p{
  font-size:1.05rem!important;
  line-height:1.58!important;
}

.boutique-intro-copy h2{
  font-size:clamp(3rem,4.2vw,4.9rem)!important;
  line-height:.96!important;
}

.boutique-lead{
  font-size:1.3rem!important;
  line-height:1.4!important;
}

.boutique-value h3{
  font-size:1.45rem!important;
  line-height:1.05!important;
}

.boutique-value p{
  font-size:.88rem!important;
  line-height:1.45!important;
}

.kanzlei-spaces-head h2{
  font-size:clamp(3rem,4.1vw,4.8rem)!important;
}

/* Journal */
.ref-journal-intro h1{
  font-size:clamp(3.8rem,5.7vw,6.5rem)!important;
  line-height:.92!important;
}

.ref-journal-intro p{
  font-size:1rem!important;
  line-height:1.58!important;
}

.ref-copy h2{
  font-size:clamp(2rem,2.45vw,3.1rem)!important;
  line-height:1!important;
}

.ref-copy p{
  font-size:.96rem!important;
  line-height:1.56!important;
}

.ref-topics a{
  font-size:.74rem!important;
  font-weight:600!important;
}

/* Bibliothek */
.knowledge-hero h1{
  font-size:clamp(4.2rem,5.9vw,6.8rem)!important;
  line-height:.88!important;
}

.knowledge-hero-copy>p{
  font-size:1rem!important;
  line-height:1.6!important;
}

.knowledge-hero-meta{
  font-size:.76rem!important;
}

.knowledge-index-head h2{
  font-size:clamp(3.2rem,4.4vw,5.25rem)!important;
  line-height:.95!important;
}

.knowledge-index-head>p{
  font-size:.96rem!important;
  line-height:1.58!important;
}

.knowledge-category-name{
  font-family:var(--font-serif)!important;
  font-size:1.5rem!important;
  line-height:1.07!important;
  font-weight:500!important;
}

.knowledge-category-count{
  font-size:.74rem!important;
}

.knowledge-content-head h2{
  font-size:clamp(3.3rem,4.8vw,5.7rem)!important;
  line-height:.94!important;
}

.knowledge-result h3{
  font-size:clamp(2.15rem,2.5vw,3.25rem)!important;
  line-height:.99!important;
}

/* Tätigkeitsgebiete */
.competence-card h3,
.card-content h3{
  font-size:clamp(1.8rem,2vw,2.5rem)!important;
  line-height:1.02!important;
}

.competence-card p,
.card-content p{
  font-size:.95rem!important;
  line-height:1.58!important;
}

/* Team */
.person h3{
  font-size:clamp(1.45rem,1.6vw,1.95rem)!important;
  line-height:1.02!important;
}

.person p{
  font-size:.82rem!important;
  line-height:1.45!important;
}

/* Kontakt */
.contact-band h2{
  font-size:clamp(3rem,4.8vw,5.6rem)!important;
  line-height:.94!important;
}

.contact-location-visual p{
  font-family:var(--font-serif)!important;
  font-size:clamp(1.8rem,2.4vw,2.8rem)!important;
  line-height:1.08!important;
}

/* Article detail */
.publication-detail-hero h1{
  font-size:clamp(3.6rem,5vw,6rem)!important;
  line-height:.93!important;
}

.publication-subtitle,
.publication-detail-hero>*>p{
  font-size:1.02rem!important;
  line-height:1.58!important;
}

.publication-article>p,
.publication-article .rich-text p,
.publication-article .publication-block p{
  font-size:1.055rem!important;
  line-height:1.75!important;
}

.publication-article h2{
  font-size:2.35rem!important;
  line-height:1.04!important;
}

.publication-article h3{
  font-size:1.72rem!important;
  line-height:1.08!important;
}

.article-author-card h2{
  font-size:1.72rem!important;
  line-height:1!important;
}

.related-publication-card h3{
  font-size:1.85rem!important;
  line-height:1.03!important;
}

/* Footer */
.site-footer,
footer{
  font-family:var(--font-sans)!important;
}

.site-footer h3,
footer h3{
  font-family:var(--font-sans)!important;
  font-size:.68rem!important;
  font-weight:700!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}

.site-footer p,
.site-footer a,
footer p,
footer a{
  font-size:.8rem!important;
  line-height:1.5!important;
}

/* Admin: functional typography, no editorial serif */
.admin-shell,
.admin-main,
.admin-sidebar,
.admin-header,
.admin-content,
body.admin{
  font-family:var(--font-sans)!important;
}

.admin-shell h1,
.admin-shell h2,
.admin-shell h3,
.admin-main h1,
.admin-main h2,
.admin-main h3{
  font-family:var(--font-sans)!important;
  font-weight:700!important;
  letter-spacing:-.022em!important;
  line-height:1.08!important;
}

.admin-shell h1,
.admin-main h1{
  font-size:1.8rem!important;
}

.admin-shell h2,
.admin-main h2{
  font-size:1.35rem!important;
}

.admin-shell h3,
.admin-main h3{
  font-size:1.05rem!important;
}

/* Tablet */
@media (min-width:761px) and (max-width:1100px){
  :root{
    --fs-body:.98rem;
    --fs-body-lg:1.02rem;
  }

  .main-nav a,
  .desktop-nav a{
    font-size:.78rem!important;
  }

  .hero-copy h1,
  .boutique-hero h1{
    font-size:clamp(3.8rem,6.7vw,5.4rem)!important;
  }

  .knowledge-hero h1{
    font-size:clamp(3.6rem,6.5vw,5rem)!important;
  }
}

/* Mobile */
@media (max-width:760px){
  :root{
    --fs-xs:.68rem;
    --fs-sm:.78rem;
    --fs-body:1rem;
    --fs-body-lg:1rem;
    --fs-h3:1.65rem;
    --fs-h2:2.55rem;
    --fs-h1:3.3rem;
  }

  body{
    font-size:16px!important;
    line-height:1.58!important;
  }

  p{
    font-size:1rem!important;
    line-height:1.62!important;
  }

  .eyebrow{
    font-size:.62rem!important;
    letter-spacing:.11em!important;
  }

  .mobile-nav a,
  .mobile-menu a{
    font-size:1rem!important;
    font-weight:650!important;
  }

  .hero-copy h1{
    font-size:clamp(2.75rem,13.5vw,4rem)!important;
    line-height:.92!important;
  }

  .hero-copy p{
    font-size:.96rem!important;
    line-height:1.55!important;
  }

  .boutique-hero h1{
    font-size:clamp(2.9rem,13.5vw,4.2rem)!important;
    line-height:.93!important;
  }

  .boutique-intro-copy h2{
    font-size:2.45rem!important;
    line-height:.97!important;
  }

  .boutique-value h3{
    font-size:1.25rem!important;
  }

  .ref-journal-intro h1{
    font-size:clamp(2.65rem,12.5vw,3.9rem)!important;
  }

  .ref-copy h2{
    font-size:1.9rem!important;
  }

  .knowledge-hero h1{
    font-size:clamp(3.05rem,15vw,4.6rem)!important;
    line-height:.87!important;
  }

  .knowledge-index-head h2,
  .knowledge-content-head h2{
    font-size:2.6rem!important;
  }

  .knowledge-category-name{
    font-size:1.28rem!important;
  }

  .knowledge-result h3{
    font-size:1.9rem!important;
  }

  .contact-band h2{
    font-size:2.7rem!important;
  }

  .publication-detail-hero h1{
    font-size:clamp(2.7rem,12vw,3.9rem)!important;
  }

  .publication-article>p,
  .publication-article .rich-text p,
  .publication-article .publication-block p{
    font-size:1rem!important;
    line-height:1.7!important;
  }

  .article-lead{
    font-size:1.18rem!important;
    line-height:1.5!important;
  }

  .person h3{
    font-size:1.18rem!important;
  }

  .person p{
    font-size:.78rem!important;
  }

  .site-footer p,
  .site-footer a,
  footer p,
  footer a{
    font-size:.82rem!important;
  }
}

/* Very small phones */
@media (max-width:390px){
  .hero-copy h1,
  .boutique-hero h1{
    font-size:2.7rem!important;
  }

  .knowledge-hero h1{
    font-size:3rem!important;
  }

  .knowledge-index-head h2,
  .knowledge-content-head h2{
    font-size:2.4rem!important;
  }

  .publication-detail-hero h1{
    font-size:2.65rem!important;
  }
}


/* ===== Kontakt Final Polish ===== */

/* Hero darf nicht mehr unter die feste Navigation rutschen */
.contact-page-hero{
  padding-top:96px!important;
  padding-bottom:64px!important;
  min-height:0!important;
  overflow:visible!important;
}

.contact-page-hero .page-hero-inner{
  width:min(100% - 64px,1540px)!important;
  max-width:1540px!important;
  margin:0 auto!important;
  padding-top:0!important;
  padding-bottom:0!important;
}

.contact-page-hero h1{
  max-width:1120px!important;
  margin:0!important;
  font-size:clamp(4.6rem,6.7vw,7.6rem)!important;
  line-height:.89!important;
  letter-spacing:-.045em!important;
}

.contact-page-hero p{
  margin-top:24px!important;
  max-width:1040px!important;
  font-size:1.05rem!important;
  line-height:1.62!important;
}

/* Standortblock kompakter und ausgewogener */
.contact-location-visual{
  width:min(100% - 64px,1420px)!important;
  max-width:1420px!important;
  margin:28px auto 88px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.38fr) minmax(360px,.62fr)!important;
  min-height:520px!important;
  background:#10352d!important;
  overflow:hidden!important;
  box-shadow:0 12px 34px rgba(12,35,29,.08)!important;
}

.contact-location-visual figure{
  margin:0!important;
  min-height:520px!important;
  height:520px!important;
  overflow:hidden!important;
}

.contact-location-visual picture,
.contact-location-visual img{
  width:100%!important;
  height:100%!important;
  display:block!important;
}

.contact-location-visual img{
  min-height:520px!important;
  object-fit:cover!important;
  object-position:center 58%!important;
}

.contact-location-visual>div{
  min-height:520px!important;
  padding:clamp(46px,5vw,76px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  color:#f6f0e6!important;
  box-sizing:border-box!important;
}

.contact-location-visual>div .eyebrow{
  color:#c69b50!important;
}

.contact-location-visual>div h2{
  margin:14px 0 18px!important;
  font-family:var(--font-serif)!important;
  font-size:clamp(2.8rem,3.5vw,4.15rem)!important;
  line-height:.96!important;
  letter-spacing:-.03em!important;
  font-weight:500!important;
  color:#f6f0e6!important;
}

.contact-location-visual>div p{
  margin:0!important;
  max-width:500px!important;
  font-family:var(--font-sans)!important;
  font-size:1rem!important;
  line-height:1.65!important;
  color:#d6ddd8!important;
}

.contact-location-address{
  margin-top:32px!important;
  padding-top:20px!important;
  border-top:1px solid rgba(246,240,230,.18)!important;
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}

.contact-location-address strong{
  font-family:var(--font-serif)!important;
  font-size:1.35rem!important;
  font-weight:500!important;
  color:#f6f0e6!important;
}

.contact-location-address span{
  font-size:.78rem!important;
  color:#bfc8c3!important;
}

/* contact information/form section: align visually with location module */
.contact-grid,
.contact-layout{
  width:min(100% - 64px,1420px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Tablet */
@media(max-width:1000px){
  .contact-page-hero{
    padding-top:90px!important;
  }
  .contact-page-hero .page-hero-inner{
    width:calc(100% - 42px)!important;
  }
  .contact-location-visual{
    width:calc(100% - 42px)!important;
    grid-template-columns:1.15fr .85fr!important;
  }
  .contact-location-visual>div{
    padding:38px!important;
  }
}

/* Mobile */
@media(max-width:760px){
  .contact-page-hero{
    padding:94px 0 42px!important;
  }

  .contact-page-hero .page-hero-inner{
    width:calc(100% - 28px)!important;
  }

  .contact-page-hero h1{
    font-size:clamp(2.85rem,13vw,4.05rem)!important;
    line-height:.92!important;
  }

  .contact-page-hero p{
    margin-top:18px!important;
    font-size:.96rem!important;
    line-height:1.58!important;
  }

  .contact-location-visual{
    width:calc(100% - 24px)!important;
    margin:20px auto 54px!important;
    grid-template-columns:1fr!important;
    min-height:0!important;
  }

  .contact-location-visual figure,
  .contact-location-visual img{
    height:320px!important;
    min-height:320px!important;
  }

  .contact-location-visual img{
    object-position:center 58%!important;
  }

  .contact-location-visual>div{
    min-height:0!important;
    padding:30px 20px 34px!important;
  }

  .contact-location-visual>div h2{
    font-size:2.55rem!important;
  }

  .contact-location-visual>div p{
    font-size:.95rem!important;
  }

  .contact-location-address{
    margin-top:24px!important;
  }

  .contact-grid,
  .contact-layout{
    width:calc(100% - 28px)!important;
  }
}


/* ===== Kontakt: finaler Header-Abstand ===== */
.page-intro-contact.contact-page-hero-fixed{
  padding-top:clamp(118px,8vw,154px)!important;
  padding-bottom:54px!important;
  margin-top:0!important;
  min-height:0!important;
  transform:none!important;
  overflow:visible!important;
}
.page-intro-contact.contact-page-hero-fixed .container,
.page-intro-contact.contact-page-hero-fixed .page-intro-inner{
  padding-top:0!important;
  margin-top:0!important;
  transform:none!important;
}
.page-intro-contact.contact-page-hero-fixed h1{
  margin-top:0!important;
  transform:none!important;
}
@media(max-width:760px){
  .page-intro-contact.contact-page-hero-fixed{
    padding-top:104px!important;
    padding-bottom:38px!important;
  }
}


/* ===== Brand-Wordmark: finale Kanzlei-Typografie ===== */
.site-header .brand-copy b{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:18px!important;
  font-weight:400!important;
  line-height:1.08!important;
  letter-spacing:.055em!important;
  text-transform:uppercase;
  color:#fff;
  white-space:nowrap;
  text-shadow:0 2px 10px rgba(0,0,0,.34);
}
@media(max-width:700px){
  .site-header .brand-copy b{font-size:15px!important;letter-spacing:.045em!important;}
}
@media(max-width:430px){
  .site-header .brand-copy b{font-size:14px!important;letter-spacing:.035em!important;}
}
@media(max-width:360px){
  .site-header .brand-copy b{font-size:12.5px!important;letter-spacing:.025em!important;}
}

/* ===== Brand-Wordmark: Boutique-Kanzlei Feinschliff 08.08 ===== */
.site-header .brand{
  gap:19px!important;
}
.site-header .brand-copy b{
  font-size:20px!important;
  font-weight:400!important;
  letter-spacing:.075em!important;
  line-height:1.08!important;
}
@media(max-width:700px){
  .site-header .brand{gap:16px!important;}
  .site-header .brand-copy b{font-size:16.5px!important;letter-spacing:.06em!important;}
}
@media(max-width:430px){
  .site-header .brand{gap:14px!important;}
  .site-header .brand-copy b{font-size:15px!important;letter-spacing:.05em!important;}
}
@media(max-width:360px){
  .site-header .brand{gap:12px!important;}
  .site-header .brand-copy b{font-size:13px!important;letter-spacing:.04em!important;}
}


/* 2026-08-08: Sprachwahl und Social Media klar trennen */
.header-tools{margin-left:2px}
.language-tools-desktop{
  display:flex;
  align-items:center;
  gap:7px;
  padding:0 2px;
  white-space:nowrap;
  font-family:Arial,Helvetica,sans-serif;
}
.language-current,.language-button{
  min-width:auto;
  width:auto;
  height:auto;
  padding:8px 1px;
  border:0;
  border-radius:0;
  background:transparent;
  color:rgba(255,255,255,.62);
  font:600 10px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.12em;
}
.language-current{color:var(--gold);font-weight:700}
.language-button{cursor:pointer}
.language-button:hover,.language-button:focus-visible{
  color:#fff;
  background:transparent;
  border:0;
  outline:0;
}
.language-button:focus-visible{box-shadow:0 2px 0 var(--gold)}
.language-separator{color:rgba(255,255,255,.25);font-size:11px;line-height:1}
.mobile-language-block{display:none}

.footer-brand{align-items:flex-start}
.footer-brand-copy{padding-top:5px}
.footer-brand b{
  display:block;
  font-family:Georgia,'Times New Roman',serif;
  font-size:clamp(1.12rem,1.45vw,1.42rem);
  font-weight:400;
  letter-spacing:.095em;
  line-height:1.18;
  color:#f2eee5;
}
.footer-socials{display:flex;align-items:center;gap:10px;margin-top:0;padding-left:2px}
.footer-socials a{
  width:36px;height:36px;
  display:grid;place-items:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:50%;
  color:rgba(255,255,255,.74);
  transition:border-color .22s ease,color .22s ease,background .22s ease,transform .22s ease;
}
.footer-socials a:hover,.footer-socials a:focus-visible{
  color:var(--gold);
  border-color:rgba(200,167,101,.72);
  background:rgba(200,167,101,.1);
  transform:translateY(-1px);
  outline:0;
}
.footer-socials svg{width:16px;height:16px;display:block}
.footer-socials span{font:700 12px/1 Arial,sans-serif}

@media(max-width:1180px){
  .language-tools-desktop{display:none}
}
@media(max-width:900px){
  .mobile-language-block{
    display:block;
    width:100%;
    margin-top:22px;
    padding:20px 8px 4px;
    border-top:1px solid rgba(255,255,255,.14);
    font-family:Arial,Helvetica,sans-serif;
  }
  .mobile-language-label{
    display:block;
    margin-bottom:12px;
    color:rgba(255,255,255,.45);
    font-size:9px;
    font-weight:700;
    letter-spacing:.18em;
    text-transform:uppercase;
  }
  .language-tools-mobile{display:flex!important;align-items:center;gap:8px}
  .language-tools-mobile .language-current,
  .language-tools-mobile .language-button{
    width:42px;height:42px;padding:0;
    display:grid;place-items:center;
    border:1px solid rgba(255,255,255,.18);
    border-radius:50%;
    font-size:10px;
  }
  .language-tools-mobile .language-current{
    color:#10201c;
    background:var(--gold);
    border-color:var(--gold);
  }
  .language-tools-mobile .language-button:hover,
  .language-tools-mobile .language-button:focus-visible{
    color:var(--gold);
    border-color:var(--gold);
    background:rgba(200,167,101,.1);
    box-shadow:none;
  }
}
@media(max-width:600px){
  .footer-brand{gap:15px}
  .footer-brand img{width:62px;height:62px}
  .footer-brand b{font-size:1.08rem;letter-spacing:.075em}
  .footer-socials{margin-top:14px}
}

/* Unternehmerische Anlaesse – klare Orientierung statt reiner Rechtsgebietssystematik */
.business-situations{background:#f2eee5;color:#17372f}
.business-situations .section-head{align-items:end}
.business-situations .section-head h2{max-width:760px}
.situation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(23,55,47,.18);border-bottom:1px solid rgba(23,55,47,.18)}
.situation-card{padding:34px 28px 36px;border-right:1px solid rgba(23,55,47,.18);color:inherit;text-decoration:none;transition:background .25s ease,transform .25s ease}
.situation-card:last-child{border-right:0}
.situation-card:hover{background:rgba(183,146,78,.08)}
.situation-card .situation-no{display:block;margin-bottom:38px;color:#a47d38;font-size:.72rem;letter-spacing:.14em}
.situation-card h3{margin:0 0 13px;font-family:var(--font-serif,Georgia,serif);font-size:clamp(1.35rem,1.7vw,1.85rem);font-weight:500;line-height:1.08}
.situation-card p{margin:0;color:rgba(23,55,47,.74);line-height:1.65}
@media(max-width:900px){.situation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.situation-card:nth-child(2){border-right:0}.situation-card:nth-child(-n+2){border-bottom:1px solid rgba(23,55,47,.18)}}
@media(max-width:600px){.situation-grid{grid-template-columns:1fr}.situation-card,.situation-card:nth-child(2){border-right:0;border-bottom:1px solid rgba(23,55,47,.18);padding:26px 4px}.situation-card:last-child{border-bottom:0}.situation-card .situation-no{margin-bottom:18px}}


/* 08.08 – Expertise-Profile & mobile Qualitätsrunde */
.profile-focus,.profile-publications{margin-top:30px;padding-top:24px;border-top:1px solid rgba(180,148,84,.28)}
.profile-focus-label{display:block;margin-bottom:13px;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#a8874d}
.profile-focus-list{display:flex;flex-wrap:wrap;gap:8px}
.profile-focus-list span{display:inline-flex;align-items:center;min-height:34px;padding:7px 12px;border:1px solid rgba(180,148,84,.28);border-radius:999px;font-size:.84rem;line-height:1.25;color:inherit;background:rgba(255,255,255,.025)}
.profile-publications a{display:inline-flex;align-items:center;gap:8px;font-weight:650;text-decoration:none}
@media(max-width:760px){
  html,body{max-width:100%;overflow-x:hidden}
  main{min-width:0}
  .page-hero-inner,.section,.ref-journal-wrap,.profile-content,.profile-visual{min-width:0}
  .page-hero h1,.ref-journal-intro h1,.profile-content h1{overflow-wrap:anywhere;word-break:normal;hyphens:auto}
  .btn,.nav-cta,.ref-search button{max-width:100%}
  .profile.profile-premium{grid-template-columns:1fr!important}
  .profile-visual,.profile-content{width:100%;max-width:100%}
  .profile-focus-list{gap:7px}
  .profile-focus-list span{font-size:.79rem}
  .ref-search{display:grid!important;grid-template-columns:minmax(0,1fr) auto;max-width:100%}
  .ref-search input{min-width:0;width:100%}
  .ref-row,.ref-copy,.person,.person-content{min-width:0}
  .ref-meta{flex-wrap:wrap}
}
@media(max-width:430px){
  .ref-search{grid-template-columns:1fr}
  .ref-search button{width:100%}
  .profile-actions{align-items:stretch}
  .profile-actions .btn{width:100%;justify-content:space-between}
}


/* 08.08 – Wissensvernetzung & mobile Bibliotheksfilter */
.profile-knowledge-section{padding-top:12px}
.knowledge-filter-shell{margin-bottom:18px}
.knowledge-filter-shell>summary{display:none}
.knowledge-active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:-2px 0 20px}
.knowledge-active-filters span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);font-size:.78rem}
.knowledge-active-filters span small{color:var(--muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.08em}
.knowledge-active-filters>a{color:var(--green);font-size:.78rem;font-weight:800;text-decoration:none;margin-left:4px}
@media(max-width:760px){
  .profile-knowledge-section .section-head{align-items:flex-start;gap:14px}
  .profile-knowledge-section .section-head h2{font-size:clamp(2rem,9.5vw,3rem)}
  .knowledge-filter-shell{border:1px solid var(--line);background:rgba(255,255,255,.72)}
  .knowledge-filter-shell>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;cursor:pointer;list-style:none;font-weight:800;color:var(--green)}
  .knowledge-filter-shell>summary::-webkit-details-marker{display:none}
  .knowledge-filter-shell>summary:after{content:'+';font-size:1.2rem;color:var(--gold)}
  .knowledge-filter-shell[open]>summary:after{content:'−'}
  .knowledge-filter-shell>summary small{margin-left:auto;color:var(--muted);font-size:.72rem;font-weight:700}
  .knowledge-filter-shell .knowledge-filter{border:0!important;margin:0!important;padding:4px 16px 18px!important;background:transparent!important}
  .knowledge-active-filters{gap:7px;margin:0 0 18px}
  .knowledge-active-filters span{max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .knowledge-active-filters>a{width:100%;margin:3px 0 0}
  .topic-service-link{grid-template-columns:minmax(0,1fr) auto}
  .article-author-card .text-link{width:max-content;max-width:100%}
}

/* 08.08 – Finaler Feinschliff: Animationen, CTA-System & Typografie (Desktop + Mobile) */
:root{
  --font-serif:Georgia,'Times New Roman',serif;
  --font-sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,Helvetica,sans-serif;
  --motion-fast:.22s;
  --motion-base:.32s;
  --motion-reveal:.68s;
}
body{font-family:var(--font-sans);font-size:16px;line-height:1.68;text-rendering:optimizeLegibility}
h1,h2,h3,.hero-aside p,.hero-fact a,.section-meta>span,.section-number,.library-year{font-family:var(--font-serif)}
h1,h2,h3{text-wrap:balance}
h1{line-height:.96;letter-spacing:-.04em}
h2{line-height:1;letter-spacing:-.035em}
h3{line-height:1.08;letter-spacing:-.026em}
.lead{line-height:1.58}
.eyebrow{line-height:1.35;letter-spacing:.19em}

/* Markenname im Header und Footer bewusst editorial/kanzleitypisch. */
.brand b,.footer-brand b{
  font-family:var(--font-serif);
  font-weight:400;
  letter-spacing:.09em;
  line-height:1.08;
  text-transform:uppercase;
}

/* Einheitliches CTA-System: gleiche Höhe, Gewichtung, Pfeile und Fokuszustände. */
.btn,.nav-cta{
  min-height:52px;
  border-radius:2px;
  font-family:var(--font-sans);
  font-size:13px;
  font-weight:700;
  line-height:1.2;
  letter-spacing:.025em;
}
.btn{
  justify-content:space-between;
  padding:15px 22px;
  gap:28px;
  transition:transform var(--motion-fast) var(--ease),background var(--motion-fast) ease,border-color var(--motion-fast) ease,color var(--motion-fast) ease,box-shadow var(--motion-fast) ease;
}
.btn i,.btn>span:last-child{transition:transform var(--motion-fast) var(--ease)}
.text-link{
  min-height:36px;
  gap:14px;
  font-size:13px;
  font-weight:700;
  line-height:1.35;
}
.text-link i{transition:transform var(--motion-fast) var(--ease)}
.nav-cta{justify-content:space-between;gap:18px}
.btn:focus-visible,.text-link:focus-visible,.nav-cta:focus-visible,.site-header nav>a:focus-visible,.person:focus-visible,.card:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:4px;
}

/* Bewegungen bewusst ruhiger: Premium statt Agentur-Effekt. */
.reveal{
  transform:translateY(18px);
  transition:opacity var(--motion-reveal) var(--ease),transform var(--motion-reveal) var(--ease);
}
.page-transition.is-leaving{animation-duration:.32s}
.hero>img{animation-duration:24s}
.card{transition:transform var(--motion-base) var(--ease),background var(--motion-base) ease}
.person img{transition:filter .38s ease,transform .52s var(--ease)}

@media (hover:hover) and (pointer:fine){
  .btn:hover{transform:translateY(-2px)}
  .btn:hover i,.btn:hover>span:last-child{transform:translate(2px,-1px)}
  .text-link:hover i{transform:translateX(4px)}
  .card:hover{transform:translateY(-3px)}
  .person:hover img{transform:scale(1.025)}
}

/* Mobile: gleiche Hierarchie, aber ohne gequetschte Typografie oder unnötige Bewegung. */
@media(max-width:760px){
  body{font-size:15.5px;line-height:1.67}
  h1{font-size:clamp(2.85rem,13.5vw,4.45rem);line-height:.97;letter-spacing:-.035em}
  h2{font-size:clamp(2.2rem,10.5vw,3.55rem);line-height:1.01;letter-spacing:-.03em}
  h3{font-size:clamp(1.5rem,7vw,2.15rem);line-height:1.1}
  .lead{font-size:clamp(1.08rem,4.6vw,1.28rem);line-height:1.58}
  .eyebrow{font-size:10px;letter-spacing:.16em;margin-bottom:18px}
  .brand b{font-size:clamp(10px,2.8vw,12px);letter-spacing:.07em;line-height:1.08}
  .footer-brand b{font-size:1.05rem;letter-spacing:.065em}
  .actions,.profile-actions,.contact-actions{gap:10px}
  .actions .btn,.profile-actions .btn,.contact-actions .btn{width:100%;max-width:100%;min-height:54px;padding:15px 18px;gap:20px}
  .btn{font-size:13px}
  .text-link{min-height:42px;align-items:center}
  .reveal{transform:translateY(12px);transition-duration:.52s}
  .card:hover,.btn:hover,.person:hover img{transform:none}
  .hero>img{animation:none;transform:none}
  .page-transition.is-leaving{animation-duration:.24s}
}

@media(max-width:430px){
  h1{font-size:clamp(2.65rem,13.2vw,3.85rem)}
  h2{font-size:clamp(2.05rem,10vw,3.05rem)}
  .btn{padding-left:16px;padding-right:16px}
  .brand{gap:11px}
}

@media(prefers-reduced-motion:reduce){
  .hero>img{animation:none!important;transform:none!important}
  .page-transition{display:none!important}
  .reveal{opacity:1!important;transform:none!important}
}


/* 08.08 – Performance & Accessibility Abschluss */
@supports (content-visibility:auto){
  .section:not(.hero):not(.page-hero),.related-publications,.office-intro,.services-home{content-visibility:auto;contain-intrinsic-size:auto 700px}
}
.skip-link:focus{z-index:9999;left:18px;top:18px;width:auto;height:auto;clip:auto;overflow:visible;padding:11px 15px;border-radius:6px;background:#f4c96b;color:#08251f;font-weight:800}
.article-faq summary:focus-visible,.article-toc summary:focus-visible{outline:3px solid #f4c96b;outline-offset:4px;border-radius:3px}
@media(prefers-contrast:more){:root{--muted:#45544f;--line:#89938f}.btn,.nav-cta,.language-button{border-width:2px}}

/* 08.08 – Rechtsgebiets-Claims: klare B2B-Positionierung, Desktop + Mobile */
.service-hero .service-claim{
  max-width:820px;
  margin:-10px 0 16px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1.25rem,2vw,1.75rem);
  line-height:1.35;
  color:var(--gold);
  text-wrap:balance;
}
.service-row .service-index-claim{
  margin:4px 0 9px;
  color:var(--text);
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(1rem,1.3vw,1.18rem);
  line-height:1.45;
}
@media(max-width:640px){
  .service-hero .service-claim{margin:-4px 0 14px;font-size:1.15rem;line-height:1.4}
  .service-row .service-index-claim{font-size:1rem;line-height:1.45;margin-bottom:8px}
}
/* Fachbeitrag: CI-PDF & Weiterleitung */
.article-publish-tools{display:grid;gap:10px;margin:0 0 24px;padding:18px;border:1px solid rgba(202,163,84,.32);background:#faf8f2}.article-publish-tools .btn{justify-content:space-between;width:100%}.article-share-copy,.article-share-mail{min-height:44px;border:1px solid rgba(7,48,40,.22);background:#fff;color:#0b342c;text-decoration:none;font:600 14px Arial,Helvetica,sans-serif;padding:11px 13px;text-align:center;cursor:pointer}.article-share-copy:hover,.article-share-mail:hover{border-color:#caa354}.article-share-copy:focus-visible,.article-share-mail:focus-visible{outline:3px solid #caa354;outline-offset:2px}@media(max-width:760px){.article-publish-tools{padding:15px}.article-publish-tools .btn,.article-share-copy,.article-share-mail{width:100%}}

/* 2026-08-08: Teamübersicht – Anwälte ruhiger und zentrierter ausrichten */
.team-grid-full{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:flex-start;
  gap:clamp(42px,5vw,76px) clamp(20px,2vw,34px);
  max-width:1180px;
  margin-left:auto;
  margin-right:auto;
}
.team-grid-full .person{
  flex:0 1 calc((100% - clamp(40px,4vw,68px))/3);
  width:calc((100% - clamp(40px,4vw,68px))/3);
  max-width:370px;
}
.team-grid-full .person-content{
  text-align:center;
  padding-left:10px!important;
  padding-right:10px!important;
}
.team-grid-full .person-badges{
  justify-content:center;
}
.team-grid-full .person-link{
  justify-content:center;
}
@media(max-width:980px){
  .team-grid-full .person{
    flex-basis:calc((100% - 28px)/2);
    width:calc((100% - 28px)/2);
    max-width:430px;
  }
}
@media(max-width:640px){
  .team-grid-full{
    gap:48px;
    max-width:520px;
  }
  .team-grid-full .person{
    flex-basis:100%;
    width:100%;
    max-width:440px;
  }
  .team-grid-full .person-content{
    padding-left:6px!important;
    padding-right:6px!important;
  }
}

/* 09.08 – Fachbeiträge automatisch auf Anwaltprofilen */
.profile-knowledge-section{padding-top:54px;padding-bottom:82px}
.profile-knowledge-head{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:28px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.profile-knowledge-head>div{max-width:760px}
.profile-knowledge-head h2{margin:.22em 0 .28em;font-size:clamp(2.25rem,4vw,4rem)}
.profile-knowledge-head p{margin:0;color:var(--muted);max-width:680px}
.profile-all-articles{flex:0 0 auto;margin-bottom:8px}
.profile-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.profile-article-card{display:flex;flex-direction:column;min-width:0;min-height:330px;padding:27px 27px 24px;border:1px solid var(--line);background:rgba(255,255,255,.44);transition:transform .28s var(--ease),box-shadow .28s var(--ease),border-color .28s var(--ease)}
.profile-article-card:hover{transform:translateY(-4px);border-color:rgba(180,148,84,.48);box-shadow:0 20px 42px rgba(3,25,21,.08)}
.profile-article-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 11px;margin-bottom:20px;font-size:.68rem;font-weight:760;line-height:1.25;letter-spacing:.105em;text-transform:uppercase;color:#9b7a3f}
.profile-article-meta span:after{content:'·';margin-left:11px;color:var(--muted)}
.profile-article-meta time{color:var(--muted);font-weight:650;letter-spacing:.045em}
.profile-article-card h3{font-size:clamp(1.42rem,1.75vw,1.85rem);margin:0 0 15px;line-height:1.08}
.profile-article-card h3 a{color:inherit;text-decoration:none}
.profile-article-card p{margin:0 0 24px;color:var(--muted);line-height:1.62;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.profile-article-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto;padding-top:18px;border-top:1px solid rgba(15,48,41,.1);font-size:.8rem}
.profile-article-footer>span{color:var(--muted)}
.profile-article-footer a{display:inline-flex;align-items:center;gap:8px;color:#9b7a3f;text-decoration:none;font-weight:800;white-space:nowrap}
.profile-article-footer i{font-style:normal}
@media(max-width:980px){.profile-article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-knowledge-head{align-items:flex-start}.profile-all-articles{margin-top:10px}}
@media(max-width:700px){.profile-knowledge-section{padding-top:38px;padding-bottom:58px}.profile-knowledge-head{display:block;margin-bottom:20px}.profile-all-articles{display:inline-flex;margin-top:16px}.profile-article-grid{grid-template-columns:1fr}.profile-article-card{min-height:0;padding:22px 20px}.profile-article-card h3{font-size:1.55rem}.profile-article-footer{align-items:flex-start;flex-direction:column;gap:8px}}

/* Sprungziele aus dem Fachbeitrag-Inhaltsverzeichnis nicht unter dem festen Header verstecken */
.article-body h2[id],
.article-body h3[id],
.publication-body h2[id],
.publication-body h3[id] {
  scroll-margin-top: 120px;
}
@media (max-width: 760px) {
  .article-body h2[id],
  .article-body h3[id],
  .publication-body h2[id],
  .publication-body h3[id] {
    scroll-margin-top: 92px;
  }
}

/* 09.08 – Responsive QA hardening: keine gequetschten Spalten oder Worttrennungen auf Mobile */
@media (max-width:1100px){
  /* Standort/Kontakt frühzeitig stapeln. So bleibt die Textspalte auch auf Tablets breit genug. */
  .contact-location-visual{
    grid-template-columns:1fr!important;
    min-height:0!important;
  }
  .contact-location-visual figure,
  .contact-location-visual img{
    min-height:0!important;
    height:clamp(300px,48vw,430px)!important;
  }
  .contact-location-visual>div{
    min-height:0!important;
    width:100%!important;
    min-width:0!important;
  }
}

@media (max-width:760px){
  /* Überschriften niemals mitten im Wort umbrechen. Lange URLs dürfen weiterhin umbrechen. */
  h1,h2,h3,
  .page-hero h1,.page-hero h2,.page-hero h3,
  .page-intro h1,.page-intro h2,.page-intro h3,
  .contact-location-visual h2,
  .profile-content h1,
  .ref-journal-intro h1,
  .library-hero h1,
  .journal-hero h1,
  .publication-detail-hero h1{
    max-width:100%!important;
    min-width:0!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    -webkit-hyphens:none!important;
    hyphens:none!important;
    text-wrap:balance;
  }

  .contact-location-visual{
    width:calc(100% - 24px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    overflow:hidden!important;
  }
  .contact-location-visual figure,
  .contact-location-visual picture,
  .contact-location-visual img{
    width:100%!important;
    max-width:100%!important;
    height:clamp(250px,70vw,330px)!important;
  }
  .contact-location-visual>div{
    padding:28px 20px 32px!important;
  }
  .contact-location-visual>div h2{
    font-size:clamp(2.15rem,10.5vw,3rem)!important;
    line-height:.98!important;
    letter-spacing:-.025em!important;
  }
  .contact-location-address strong{
    font-size:clamp(1.2rem,6vw,1.45rem)!important;
  }

  /* Genereller Schutz vor horizontalem Überlauf in Inhaltsbereichen. */
  main,main>*,section,article,aside,
  .section,.page-hero-inner,.page-intro,
  .profile-content,.profile-visual,
  .publication-detail-polished,.article-layout,
  .journal-magazine,.library-ref-content{
    min-width:0!important;
    max-width:100%;
  }
  p,li,dd,dt,blockquote{
    max-width:100%;
  }
  a[href^="mailto:"],a[href^="tel:"],
  .publication-contact-links a,
  .article-body a,.publication-body a{
    overflow-wrap:anywhere;
    word-break:normal;
  }
}

@media (max-width:430px){
  .contact-location-visual>div h2{
    font-size:clamp(2.05rem,10vw,2.7rem)!important;
  }
}

/* 09.08 – Standort-Headline: Wörter niemals mitten im Wort umbrechen */
.contact-location-visual>div h2{
  overflow-wrap:normal!important;
  word-break:keep-all!important;
  hyphens:none!important;
  text-wrap:balance;
  font-size:clamp(2.6rem,3.2vw,3.75rem)!important;
}

/* Bei mittleren Desktop-/Tabletbreiten bleibt der Zweispalter möglich,
   die Textspalte bekommt aber genug echte Nutzbreite. */
@media (min-width:761px) and (max-width:1250px){
  .contact-location-visual{
    grid-template-columns:minmax(0,1.12fr) minmax(410px,.88fr)!important;
  }
  .contact-location-visual>div{
    padding:clamp(30px,3.8vw,48px)!important;
  }
  .contact-location-visual>div h2{
    font-size:clamp(2.55rem,4.2vw,3.45rem)!important;
  }
}

/* Auf tatsächlich schmalen Ansichten wird konsequent gestapelt. */
@media (max-width:900px){
  .contact-location-visual{
    grid-template-columns:1fr!important;
  }
}

/* 09.08 – Sitewide Typografie-/Responsive-QA: finale Regeln */
/* Ziel: einheitliche Kanzlei-Typografie, lesbare Größen und keine Wortzerreißung. */
h1,h2,h3,
.page-hero h1,.page-intro h1,.profile-content h1,
.ref-journal-intro h1,.knowledge-hero h1,.publication-detail-hero h1,
.home-journal-card h3,.journal-feature h2,.journal-side-card h3,.journal-grid-card h3,
.library-entry h2,.library-entry-main h2,.knowledge-category-card strong,
.profile-article-card h3,.service-row h2,.service-body h2,.legal-content h2,
.contact-location-visual h2{
  overflow-wrap:normal!important;
  word-break:normal!important;
  -webkit-hyphens:none!important;
  hyphens:none!important;
}

/* Fließtext bleibt bewusst Sans/Serif wie im bestehenden CI; lange technische Inhalte dürfen umbrechen. */
p,li,dd,dt{line-height:1.65}
.article-body,.publication-body{font-size:1rem;line-height:1.78}
.article-body p,.publication-body p{line-height:1.78}

@media (max-width:980px){
  body{font-size:16px;line-height:1.65}
  .page-hero h1,.page-intro h1{font-size:clamp(3rem,7.8vw,4.8rem)!important;line-height:.98!important;letter-spacing:-.035em!important}
  .profile-content h1{font-size:clamp(3rem,7vw,4.6rem)!important;line-height:.98!important}
  .ref-journal-intro h1{font-size:clamp(3rem,7.4vw,4.7rem)!important;line-height:.98!important}
  .knowledge-hero h1{font-size:clamp(3.2rem,8vw,5rem)!important;line-height:.92!important}
  .publication-detail-hero h1{font-size:clamp(3rem,7vw,4.7rem)!important;line-height:.98!important}
  h2{font-size:clamp(2.35rem,5.6vw,3.9rem);line-height:1!important}
  h3{font-size:clamp(1.55rem,3.6vw,2.25rem);line-height:1.08!important}
  .lead,.boutique-lead{font-size:clamp(1.05rem,2vw,1.2rem)!important;line-height:1.62!important}
  .contact-location-visual{grid-template-columns:1fr!important}
  .contact-location-visual>div{padding:clamp(30px,5vw,46px)!important}
  .contact-location-visual>div h2{font-size:clamp(2.65rem,7vw,3.7rem)!important;line-height:.98!important;word-break:normal!important}
}

@media (max-width:760px){
  body{font-size:16px!important;line-height:1.65!important}
  .site-header .brand-copy b{font-size:15px!important;letter-spacing:.045em!important}
  .site-header nav{font-size:clamp(1.9rem,7.5vw,2.75rem)!important;line-height:1.08!important}

  h1,.hero h1,.page-hero h1,.page-intro h1,.profile-content h1,
  .ref-journal-intro h1,.knowledge-hero h1,.publication-detail-hero h1{
    max-width:100%!important;
    text-wrap:balance;
    overflow-wrap:normal!important;
    word-break:normal!important;
    -webkit-hyphens:none!important;
    hyphens:none!important;
  }
  .hero h1{font-size:clamp(3rem,12vw,4.35rem)!important;line-height:.94!important;letter-spacing:-.04em!important}
  .page-hero h1,.page-intro h1{font-size:clamp(2.75rem,10vw,4rem)!important;line-height:.98!important}
  .profile-content h1{font-size:clamp(2.7rem,10vw,3.9rem)!important;line-height:.98!important}
  .ref-journal-intro h1{font-size:clamp(2.8rem,10vw,4rem)!important;line-height:.98!important}
  .knowledge-hero h1{font-size:clamp(2.9rem,11vw,4.2rem)!important;line-height:.94!important}
  .publication-detail-hero h1{font-size:clamp(2.7rem,9.8vw,3.9rem)!important;line-height:1!important}

  h2{font-size:clamp(2.15rem,8vw,3.05rem)!important;line-height:1.02!important;letter-spacing:-.025em!important}
  h3{font-size:clamp(1.45rem,5.8vw,2rem)!important;line-height:1.12!important;letter-spacing:-.018em!important}
  .home-journal-head h2,.journal-feature h2,.boutique-intro-copy h2{font-size:clamp(2.35rem,9vw,3.35rem)!important;line-height:.98!important}
  .home-journal-card h3,.journal-side-card h3,.journal-grid-card h3,.profile-article-card h3,
  .library-entry h2,.library-entry-main h2{font-size:clamp(1.45rem,6.3vw,2rem)!important;line-height:1.08!important}
  .knowledge-category-card strong{font-size:1.3rem!important;line-height:1.15!important}

  .eyebrow{font-size:.68rem!important;line-height:1.35!important;letter-spacing:.14em!important}
  .lead,.boutique-lead{font-size:1.05rem!important;line-height:1.62!important}
  p{line-height:1.68}
  .article-body,.publication-body{font-size:1rem!important;line-height:1.76!important}
  .article-body p,.publication-body p{line-height:1.76!important}

  .btn,.nav-cta,button,input,select,textarea{font-size:16px}
  .btn,.nav-cta{min-height:46px}
  input,select,.control{min-height:44px}

  .contact-location-visual{grid-template-columns:1fr!important;width:calc(100% - 24px)!important}
  .contact-location-visual>div{padding:30px 22px 34px!important}
  .contact-location-visual>div h2{font-size:clamp(2.45rem,10vw,3.2rem)!important;line-height:.98!important;letter-spacing:-.025em!important}
  .contact-location-address strong{font-size:clamp(1.2rem,5.5vw,1.45rem)!important;line-height:1.2!important}

  .legal-content h2,.service-body h2{font-size:clamp(1.9rem,7vw,2.65rem)!important;line-height:1.05!important}
  .legal-content h3,.service-body h3{font-size:clamp(1.35rem,5vw,1.8rem)!important;line-height:1.15!important}

  /* Nur URLs/Mails und technische Strings dürfen innerhalb langer Zeichenfolgen umbrechen. */
  a[href^="mailto:"],a[href^="tel:"],.article-body a,.publication-body a,.legal-content a{
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
}

@media (max-width:430px){
  .site-header{padding-left:16px!important;padding-right:16px!important}
  .site-header .brand{gap:12px!important;min-width:0!important}
  .site-header .brand-copy{min-width:0}
  .site-header .brand-copy b{font-size:13.5px!important;letter-spacing:.035em!important;white-space:nowrap}
  .hero h1{font-size:clamp(2.75rem,12.5vw,3.7rem)!important}
  .page-hero h1,.page-intro h1,.profile-content h1,.ref-journal-intro h1,.publication-detail-hero h1{font-size:clamp(2.45rem,10.8vw,3.35rem)!important}
  .knowledge-hero h1{font-size:clamp(2.65rem,11.5vw,3.55rem)!important}
  h2{font-size:clamp(2rem,8.8vw,2.65rem)!important}
  h3{font-size:clamp(1.38rem,6vw,1.78rem)!important}
  .contact-location-visual>div h2{font-size:clamp(2.3rem,10vw,2.85rem)!important}
  .section{padding-left:20px!important;padding-right:20px!important}
  .profile-article-card,.home-journal-card{padding-left:19px!important;padding-right:19px!important}
}

@media (max-width:360px){
  .site-header .brand-copy b{font-size:12px!important;letter-spacing:.025em!important}
  .hero h1{font-size:2.7rem!important}
  .page-hero h1,.page-intro h1,.profile-content h1,.ref-journal-intro h1,.publication-detail-hero h1{font-size:2.35rem!important}
  .knowledge-hero h1{font-size:2.5rem!important}
  h2{font-size:1.95rem!important}
  h3{font-size:1.32rem!important}
}

/* 09.08.2026 – Startseite / Wissensjournal: finaler Editorial-Feinschliff */
.home-journal{
  padding-top:clamp(54px,5.4vw,82px)!important;
  padding-bottom:clamp(68px,6.5vw,96px)!important;
}
.home-journal-head{
  margin-bottom:34px!important;
  padding-top:22px!important;
}
.home-journal-head h2{
  margin-top:.16em!important;
  margin-bottom:.28em!important;
}
.home-journal-head p{
  max-width:720px!important;
  font-size:clamp(1rem,1.08vw,1.12rem)!important;
  line-height:1.62!important;
  color:color-mix(in srgb,var(--ink) 66%,transparent)!important;
}
.home-journal-card{
  background:color-mix(in srgb,var(--cream) 78%,#fff)!important;
}
.home-journal-card:hover,
.home-journal-card:focus-within{
  background:#fff!important;
}
.home-journal-card h3{
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:4!important;
  overflow:hidden!important;
  min-height:4.08em;
}
.home-journal-card p{
  color:color-mix(in srgb,var(--ink) 67%,transparent)!important;
  font-size:1rem!important;
  line-height:1.6!important;
}
.home-journal-meta{
  font-size:12px!important;
  color:color-mix(in srgb,var(--ink) 68%,transparent)!important;
}
.home-journal-footer{
  margin-top:24px!important;
  padding-top:22px!important;
}
.home-journal-footer .text-link{
  font-size:.93rem!important;
  font-weight:700!important;
  color:color-mix(in srgb,var(--ink) 82%,transparent)!important;
  text-underline-offset:5px;
}
.home-journal-footer .text-link:hover,
.home-journal-footer .text-link:focus-visible{
  color:var(--gold)!important;
}

@media(max-width:980px){
  .home-journal{padding-top:52px!important;padding-bottom:72px!important}
  .home-journal-head{margin-bottom:28px!important}
  .home-journal-card h3{min-height:0;-webkit-line-clamp:4!important}
}
@media(max-width:640px){
  .home-journal{padding-top:44px!important;padding-bottom:60px!important}
  .home-journal-head{padding-top:18px!important;margin-bottom:24px!important}
  .home-journal-head p{font-size:1rem!important;line-height:1.62!important}
  .home-journal-card h3{-webkit-line-clamp:4!important;min-height:0}
  .home-journal-card p{font-size:.98rem!important;line-height:1.58!important}
  .home-journal-meta{font-size:12px!important}
  .home-journal-footer{gap:16px!important;margin-top:20px!important;padding-top:18px!important}
  .home-journal-footer .text-link{font-size:.95rem!important;line-height:1.4!important}
}

/* 09.08 – Kanzlei-Intro: CTA-Sichtbarkeit & Mobile-Feinschliff */
.office-intro-content > .text-link{
  font-size:14px;
  font-weight:750;
  letter-spacing:.01em;
  gap:12px;
  color:#b48638;
}
.office-intro-content > .text-link i{font-size:1.05em}

@media(max-width:430px){
  .office-intro{
    padding-top:58px;
    padding-bottom:64px;
    gap:30px;
  }
  .office-intro-image{
    width:calc(100% - 8px);
    margin-right:8px;
    aspect-ratio:888 / 860;
  }
  .office-intro-image::after{
    inset:8px -8px -8px 8px;
  }
  .office-intro-content h2{
    font-size:clamp(2.15rem,10.4vw,2.9rem)!important;
    line-height:1.02!important;
    letter-spacing:-.03em;
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
  }
  .office-intro-content .lead{
    font-size:1.05rem;
    line-height:1.62;
  }
  .office-intro-content blockquote{
    margin:30px 0 24px;
    padding-left:18px;
    font-size:clamp(1.25rem,6vw,1.55rem);
    line-height:1.38;
  }
  .office-intro-content > .text-link{
    font-size:14px;
    min-height:44px;
  }
}

/* 09.08 – Unternehmerische Situationen: Feinschliff */
.business-situations .section-head{
  align-items:end;
  column-gap:clamp(48px,7vw,110px);
}
.business-situations .section-meta{
  align-items:flex-start;
  max-width:520px;
  margin-right:auto;
  padding-bottom:8px;
}
.business-situations .section-meta p{
  margin:0;
  max-width:48ch;
}
.business-situations .situation-card{
  background:transparent;
}
.business-situations .situation-card:focus-visible{
  background:rgba(183,146,78,.08);
  outline:2px solid rgba(164,125,56,.55);
  outline-offset:-2px;
}
@media (max-width:900px){
  .business-situations .section-head{
    align-items:flex-start;
    gap:28px;
  }
  .business-situations .section-meta{
    max-width:46ch;
    padding-bottom:0;
  }
}
@media (max-width:760px){
  .business-situations .section-head{
    display:grid;
    grid-template-columns:1fr;
    gap:20px;
    margin-bottom:36px;
  }
  .business-situations .section-meta{
    margin:0;
    max-width:100%;
  }
}

/* 09.08 – Unternehmerische Situationen: Mobile Final */
@media (max-width:600px){
  .business-situations .situation-grid{
    margin-inline:0;
  }
  .business-situations .situation-card,
  .business-situations .situation-card:nth-child(2){
    padding:24px 18px 26px;
  }
  .business-situations .situation-card .situation-no{
    margin-bottom:14px;
    font-size:.68rem;
  }
  .business-situations .situation-card h3{
    margin-bottom:9px;
    font-size:clamp(1.28rem,6vw,1.52rem);
    line-height:1.12;
  }
  .business-situations .situation-card p{
    font-size:.94rem;
    line-height:1.55;
  }
}
@media (max-width:430px){
  .business-situations .section-head{
    gap:16px;
    margin-bottom:30px;
  }
  .business-situations .section-meta p{
    font-size:.95rem;
    line-height:1.55;
  }
  .business-situations .situation-card,
  .business-situations .situation-card:nth-child(2){
    padding:22px 16px 24px;
  }
}
@media (max-width:360px){
  .business-situations .situation-card,
  .business-situations .situation-card:nth-child(2){
    padding-inline:14px;
  }
}

/* 09.08 – Themenfelder: finaler Editorial-Feinschliff */
.practice-section .section-link,
.practice-areas .section-link,
.practice-overview .section-link,
.topics-section .section-link{
  font-size:.9rem;
  font-weight:700;
  letter-spacing:.01em;
}

.practice-section .practice-card p,
.practice-areas .practice-card p,
.practice-overview .practice-card p,
.topics-section .topic-card p{
  color:rgba(246,242,232,.72);
}

.practice-section .practice-card,
.practice-areas .practice-card,
.practice-overview .practice-card,
.topics-section .topic-card{
  min-height:auto;
  padding-top:clamp(30px,2.6vw,44px);
  padding-bottom:clamp(30px,2.6vw,44px);
}

/* Bestehende 3+2 Editorial-Aufteilung bewusst beibehalten. */
@media (max-width:760px){
  .practice-section .section-link,
  .practice-areas .section-link,
  .practice-overview .section-link,
  .topics-section .section-link{
    font-size:.92rem;
  }
  .practice-section .practice-card,
  .practice-areas .practice-card,
  .practice-overview .practice-card,
  .topics-section .topic-card{
    padding-top:28px;
    padding-bottom:28px;
  }
}

/* Themenfelder – exakte Homepage-Komponenten */
.competence-home .section-meta .text-link,
.competence .section-meta .text-link,
.competence-cards + .text-link{
  font-size:.9rem;
  font-weight:700;
}
.competence-card{
  padding-top:clamp(30px,2.6vw,44px);
  padding-bottom:clamp(30px,2.6vw,44px);
}
.competence-card .card-content p{
  color:rgba(246,242,232,.72);
}
@media (max-width:760px){
  .competence-card{
    padding-top:28px;
    padding-bottom:28px;
  }
}

/* 09.08 – Team auf Startseite: Editorial-Final */
.team-home .section-head{
  margin-bottom:clamp(30px,3.2vw,48px);
  align-items:flex-end;
}
.team-home .section-meta{
  align-self:flex-end;
  padding-bottom:4px;
}
.team-home .section-meta .text-link{
  font-size:.9rem;
  font-weight:700;
  letter-spacing:.01em;
  min-height:44px;
  display:inline-flex;
  align-items:center;
}
.team-home .team-grid{
  align-items:stretch;
}
.team-home .person{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.team-home .person-image{
  width:100%;
  aspect-ratio:3 / 3.78;
  overflow:hidden;
}
.team-home .person-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:var(--portrait-position,center 30%);
  display:block;
}
.team-home .person > div:last-child{
  margin-top:14px;
}

/* Tablet: bewusst zwei Portraits pro Reihe. */
@media (max-width:900px){
  .team-home .section-head{
    margin-bottom:32px;
  }
  .team-home .team-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:28px 18px!important;
  }
}

/* Kleine Smartphones: ein Portrait pro Reihe statt zu schmaler Karten. */
@media (max-width:480px){
  .team-home .section-head{
    margin-bottom:26px;
  }
  .team-home .section-meta{
    align-self:flex-start;
    padding-bottom:0;
  }
  .team-home .team-grid{
    grid-template-columns:1fr!important;
    gap:32px!important;
  }
  .team-home .person-image{
    aspect-ratio:4 / 4.7;
  }
  .team-home .person > div:last-child{
    margin-top:12px;
  }
}

/* 09.08 – Abschlussbereich Startseite: Final */
.principle{
  grid-template-columns:minmax(150px,.6fr) minmax(0,2.4fr);
  column-gap:clamp(34px,5vw,74px);
  padding-top:clamp(58px,5.4vw,86px);
  padding-bottom:clamp(58px,5.4vw,86px);
}
.principle-mark{
  font-size:clamp(6.5rem,9vw,9rem)!important;
  justify-self:end;
  transform:translateX(8px);
}
.principle > div:last-child{
  max-width:920px;
}

.contact-band{
  min-height:0;
  padding-top:clamp(66px,6vw,92px)!important;
  padding-bottom:clamp(66px,6vw,92px)!important;
  align-items:center;
}
.contact-band .contact-actions{
  gap:18px;
  align-items:center;
  align-self:center;
}
.contact-band .contact-actions .btn{
  margin-right:4px;
}
.contact-band .contact-phone,
.contact-band .phone-block{
  margin:0;
}

.site-footer{
  padding-top:46px;
}
.site-footer .footer-grid,
.site-footer .footer-columns{
  row-gap:28px;
}
.site-footer,
.site-footer p,
.site-footer a,
.site-footer li{
  font-size:.9rem;
  line-height:1.55;
}
.site-footer .footer-title,
.site-footer .footer-label{
  font-size:.72rem;
  letter-spacing:.12em;
}
.site-footer .footer-bottom{
  font-size:.78rem;
}

@media (max-width:900px){
  .principle{
    grid-template-columns:110px 1fr;
    column-gap:28px;
  }
  .principle-mark{
    font-size:6.2rem!important;
    transform:none;
  }
  .contact-band{
    padding-top:64px!important;
    padding-bottom:64px!important;
  }
}
@media (max-width:700px){
  .principle{
    grid-template-columns:1fr;
    gap:16px;
  }
  .principle-mark{
    justify-self:start;
    font-size:4.8rem!important;
  }
  .contact-band{
    padding-top:54px!important;
    padding-bottom:54px!important;
  }
  .contact-band .contact-actions{
    align-items:flex-start;
    gap:14px;
  }
  .site-footer{
    padding-top:38px;
  }
  .site-footer,
  .site-footer p,
  .site-footer a,
  .site-footer li{
    font-size:.92rem;
  }
}

/* 09.08 – Journal als Wissensplattform: finaler Feinschliff */
.ref-journal-intro{
  padding-top:clamp(66px,6vw,92px);
  padding-bottom:clamp(34px,3.5vw,54px);
}
.ref-journal-intro h1{
  max-width:14ch;
  font-size:clamp(3.9rem,5.4vw,6.4rem);
  line-height:.94;
}
.ref-journal-intro .lead,
.ref-journal-intro p{
  max-width:62ch;
}

.ref-journal-controls{
  margin-top:clamp(24px,2.6vw,38px);
  margin-bottom:clamp(20px,2vw,30px);
  gap:14px 20px;
}
.ref-journal-topics,
.ref-filter-row{
  margin-bottom:0;
}
.ref-search{
  margin-left:auto;
  max-width:520px;
}
.ref-search input{
  min-height:44px;
}
.ref-search button{
  min-height:44px;
  padding-inline:24px;
}

.ref-row{
  padding-top:clamp(26px,2.5vw,38px);
  padding-bottom:clamp(26px,2.5vw,38px);
  gap:clamp(22px,2.4vw,36px);
}
.ref-row h2,
.ref-row .ref-title{
  font-size:clamp(2rem,2.55vw,3.15rem)!important;
  line-height:.98!important;
  max-width:24ch;
}
.ref-row .ref-copy,
.ref-row .ref-excerpt{
  font-size:.98rem;
  line-height:1.58;
  max-width:72ch;
}
.ref-meta,
.ref-row .ref-authorline,
.ref-row .ref-bottom{
  font-size:.84rem;
  line-height:1.45;
}

.ref-thumb,
.ref-media,
.ref-image{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(145deg,rgba(200,167,101,.10),transparent 58%),
    linear-gradient(180deg,#17372f,#0d2d25);
}
.ref-thumb:empty::before,
.ref-media:empty::before,
.ref-image:empty::before{
  content:"§";
  position:absolute;
  right:18px;
  bottom:4px;
  font-family:Georgia,serif;
  font-size:clamp(4.8rem,7vw,7.4rem);
  line-height:1;
  color:rgba(200,167,101,.16);
}
.ref-thumb:empty::after,
.ref-media:empty::after,
.ref-image:empty::after{
  content:"FACHBEITRAG";
  position:absolute;
  left:18px;
  top:18px;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.16em;
  color:rgba(230,209,166,.74);
}
.ref-thumb img,
.ref-media img,
.ref-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

@media (max-width:900px){
  .ref-journal-intro{
    padding-top:58px;
  }
  .ref-journal-intro h1{
    max-width:12ch;
  }
  .ref-journal-controls{
    align-items:flex-start;
  }
  .ref-search{
    margin-left:0;
    width:100%;
    max-width:100%;
  }
}
@media (max-width:700px){
  .ref-journal-intro{
    padding-top:46px;
    padding-bottom:30px;
  }
  .ref-journal-intro h1{
    font-size:clamp(2.8rem,12vw,4.1rem)!important;
    max-width:10ch;
  }
  .ref-journal-controls{
    margin-top:20px;
    margin-bottom:18px;
  }
  .ref-search{
    grid-template-columns:minmax(0,1fr) auto;
  }
  .ref-search button{
    padding-inline:18px;
  }
  .ref-row{
    padding-top:24px;
    padding-bottom:24px;
  }
  .ref-row h2,
  .ref-row .ref-title{
    font-size:clamp(1.8rem,8vw,2.35rem)!important;
    line-height:1.02!important;
  }
  .ref-meta,
  .ref-row .ref-authorline,
  .ref-row .ref-bottom{
    font-size:.86rem;
  }
}

/* 09.08 – Kanzlei-Seite: finaler Editorial-Feinschliff */

/* Profilbereich: ausgewogenere 35/65-Gewichtung */
.about-profile,
.firm-profile,
.kanzlei-profile,
.profile-editorial{
  grid-template-columns:minmax(240px,35fr) minmax(0,65fr)!important;
  column-gap:clamp(48px,6vw,96px)!important;
}
.about-profile > :first-child,
.firm-profile > :first-child,
.kanzlei-profile > :first-child,
.profile-editorial > :first-child{
  max-width:420px;
}

/* Vier Merkmale: Beschreibung besser lesbar */
.about-values p,
.firm-values p,
.kanzlei-values p,
.value-strip p,
.value-grid p,
.about-features p{
  font-size:clamp(.91rem,.82rem + .14vw,1rem)!important;
  line-height:1.55!important;
}

/* Editorial-Zitat bewusst unterhalb des Hero gewichten */
.about-quote,
.firm-quote,
.kanzlei-quote,
.profile-quote,
.editorial-quote{
  font-size:clamp(2.65rem,3.55vw,4.55rem)!important;
  line-height:.98!important;
}

/* Falls das Zitat über ein inneres Element skaliert wird */
.about-quote blockquote,
.firm-quote blockquote,
.kanzlei-quote blockquote,
.profile-quote blockquote,
.editorial-quote blockquote{
  font-size:.92em!important;
  line-height:1!important;
}

@media (max-width:900px){
  .about-profile,
  .firm-profile,
  .kanzlei-profile,
  .profile-editorial{
    grid-template-columns:1fr!important;
    gap:32px!important;
  }
  .about-profile > :first-child,
  .firm-profile > :first-child,
  .kanzlei-profile > :first-child,
  .profile-editorial > :first-child{
    max-width:620px;
  }
  .about-quote,
  .firm-quote,
  .kanzlei-quote,
  .profile-quote,
  .editorial-quote{
    font-size:clamp(2.35rem,7vw,3.6rem)!important;
  }
}

@media (max-width:600px){
  .about-values p,
  .firm-values p,
  .kanzlei-values p,
  .value-strip p,
  .value-grid p,
  .about-features p{
    font-size:.94rem!important;
  }
  .about-quote,
  .firm-quote,
  .kanzlei-quote,
  .profile-quote,
  .editorial-quote{
    font-size:clamp(2.05rem,10vw,2.9rem)!important;
  }
}

/* 09.08 – Standortsektion Haus Kerberg: finaler Feinschliff */
.location-section .section-meta p,
.location-intro .section-meta p,
.location-editorial .section-meta p,
.kanzlei-location .section-meta p{
  font-size:clamp(1rem,.94rem + .12vw,1.08rem)!important;
  line-height:1.6!important;
}

.location-section .section-head,
.location-intro .section-head,
.location-editorial .section-head,
.kanzlei-location .section-head{
  margin-bottom:clamp(28px,2.6vw,42px)!important;
}

.location-hero,
.location-main,
.location-feature,
.kerberg-main{
  position:relative;
}

.location-hero .location-caption,
.location-main .location-caption,
.location-feature .location-caption,
.kerberg-main .location-caption,
.location-overlay,
.kerberg-overlay{
  padding:18px 20px!important;
}

.location-hero .location-caption small,
.location-main .location-caption small,
.location-feature .location-caption small,
.kerberg-main .location-caption small,
.location-overlay small,
.kerberg-overlay small{
  font-size:.8rem!important;
  line-height:1.45!important;
}

.location-hero img,
.location-main img,
.location-feature img,
.kerberg-main img{
  object-position:center 48%!important;
}

/* Asymmetrische Galerie bewusst beibehalten */
@media (max-width:760px){
  .location-grid,
  .location-gallery,
  .kerberg-gallery,
  .gallery-location{
    grid-template-columns:1fr!important;
    gap:12px!important;
  }

  .location-hero,
  .location-main,
  .location-feature,
  .kerberg-main{
    aspect-ratio:4 / 3!important;
  }

  .location-hero img,
  .location-main img,
  .location-feature img,
  .kerberg-main img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center 46%!important;
  }

  .location-section .section-head,
  .location-intro .section-head,
  .location-editorial .section-head,
  .kanzlei-location .section-head{
    margin-bottom:24px!important;
  }
}

@media (max-width:430px){
  .location-hero,
  .location-main,
  .location-feature,
  .kerberg-main{
    aspect-ratio:1.12 / 1!important;
  }

  .location-hero img,
  .location-main img,
  .location-feature img,
  .kerberg-main img{
    object-position:center 44%!important;
  }

  .location-hero .location-caption,
  .location-main .location-caption,
  .location-feature .location-caption,
  .kerberg-main .location-caption,
  .location-overlay,
  .kerberg-overlay{
    padding:16px 17px!important;
  }

  .location-hero .location-caption small,
  .location-main .location-caption small,
  .location-feature .location-caption small,
  .kerberg-main .location-caption small,
  .location-overlay small,
  .kerberg-overlay small{
    font-size:.78rem!important;
  }
}

/* 09.08 – Haltung-Sektion: finaler Editorial-Feinschliff */
.attitude-section .section-head,
.haltung-section .section-head,
.values-editorial .section-head,
.principles-section .section-head{
  margin-bottom:clamp(34px,3.4vw,52px)!important;
}

.attitude-section .section-head h2,
.haltung-section .section-head h2,
.values-editorial .section-head h2,
.principles-section .section-head h2{
  max-width:12.5ch!important;
  font-size:clamp(3.8rem,5.2vw,6rem)!important;
  line-height:.96!important;
  text-wrap:balance;
}

.attitude-grid,
.haltung-grid,
.values-grid,
.principles-grid{
  margin-top:0!important;
}

.attitude-card,
.haltung-card,
.values-card,
.principles-card{
  padding:clamp(28px,2.8vw,42px)!important;
  min-height:auto!important;
}

.attitude-card p,
.haltung-card p,
.values-card p,
.principles-card p{
  font-size:clamp(.96rem,.9rem + .12vw,1.05rem)!important;
  line-height:1.58!important;
  color:rgba(236,241,238,.72)!important;
}

@media (max-width:900px){
  .attitude-section .section-head h2,
  .haltung-section .section-head h2,
  .values-editorial .section-head h2,
  .principles-section .section-head h2{
    max-width:11ch!important;
    font-size:clamp(3.2rem,8vw,4.6rem)!important;
  }
}

@media (max-width:700px){
  .attitude-section .section-head,
  .haltung-section .section-head,
  .values-editorial .section-head,
  .principles-section .section-head{
    margin-bottom:28px!important;
  }

  .attitude-section .section-head h2,
  .haltung-section .section-head h2,
  .values-editorial .section-head h2,
  .principles-section .section-head h2{
    max-width:10ch!important;
    font-size:clamp(2.7rem,11vw,3.8rem)!important;
    line-height:.99!important;
  }

  .attitude-grid,
  .haltung-grid,
  .values-grid,
  .principles-grid{
    grid-template-columns:1fr!important;
  }

  .attitude-card,
  .haltung-card,
  .values-card,
  .principles-card{
    padding:24px 18px!important;
  }
}

/* Haltung – exakte Kanzlei-Komponenten */
.boutique-haltung .section-head{
  margin-bottom:clamp(34px,3.4vw,52px)!important;
}
.boutique-haltung .section-head h2{
  max-width:13ch!important;
  font-size:clamp(3.8rem,5.2vw,6rem)!important;
  line-height:.96!important;
  text-wrap:balance;
}
.boutique-haltung .value-grid{
  margin-top:0!important;
}
.boutique-haltung .value-card{
  padding:clamp(28px,2.8vw,42px)!important;
  min-height:auto!important;
}
.boutique-haltung .value-card p{
  font-size:clamp(.96rem,.9rem + .12vw,1.05rem)!important;
  line-height:1.58!important;
  color:rgba(236,241,238,.72)!important;
}
@media(max-width:900px){
  .boutique-haltung .section-head h2{
    max-width:11ch!important;
    font-size:clamp(3.2rem,8vw,4.6rem)!important;
  }
}
@media(max-width:700px){
  .boutique-haltung .section-head{
    margin-bottom:28px!important;
  }
  .boutique-haltung .section-head h2{
    max-width:10ch!important;
    font-size:clamp(2.7rem,11vw,3.8rem)!important;
    line-height:.99!important;
  }
  .boutique-haltung .value-grid{
    grid-template-columns:1fr!important;
  }
  .boutique-haltung .value-card{
    padding:24px 18px!important;
  }
}

/* 09.08 – Tätigkeitsgebiete: finaler Feinschliff */
.practice-hero,
.services-hero,
.legal-areas-hero,
.page-hero.services-page{
  min-height:0!important;
  padding-top:clamp(62px,5.5vw,88px)!important;
  padding-bottom:clamp(52px,4.8vw,76px)!important;
}

.practice-intro h2,
.services-intro h2,
.legal-areas-intro h2,
.practice-layout .intro-copy h2{
  font-size:clamp(3.1rem,4.4vw,5.15rem)!important;
  line-height:.98!important;
  max-width:10.5ch!important;
}

.practice-list .practice-item,
.services-list .service-row,
.legal-areas-list .legal-area-row,
.practice-layout .practice-row{
  padding-top:clamp(22px,2vw,30px)!important;
  padding-bottom:clamp(22px,2vw,30px)!important;
}

.practice-list .practice-item h3,
.services-list .service-row h3,
.legal-areas-list .legal-area-row h3,
.practice-layout .practice-row h3{
  margin-bottom:8px!important;
}

.practice-list .practice-item p,
.services-list .service-row p,
.legal-areas-list .legal-area-row p,
.practice-layout .practice-row p{
  margin-top:5px!important;
  line-height:1.52!important;
}

@media(max-width:900px){
  .practice-hero,
  .services-hero,
  .legal-areas-hero,
  .page-hero.services-page{
    padding-top:54px!important;
    padding-bottom:48px!important;
  }
  .practice-intro h2,
  .services-intro h2,
  .legal-areas-intro h2,
  .practice-layout .intro-copy h2{
    font-size:clamp(2.8rem,7.5vw,4.2rem)!important;
    max-width:11ch!important;
  }
}

@media(max-width:700px){
  .practice-hero,
  .services-hero,
  .legal-areas-hero,
  .page-hero.services-page{
    padding-top:46px!important;
    padding-bottom:42px!important;
  }
  .practice-intro h2,
  .services-intro h2,
  .legal-areas-intro h2,
  .practice-layout .intro-copy h2{
    font-size:clamp(2.45rem,10.5vw,3.5rem)!important;
    line-height:1!important;
  }
  .practice-list .practice-item,
  .services-list .service-row,
  .legal-areas-list .legal-area-row,
  .practice-layout .practice-row{
    padding-top:20px!important;
    padding-bottom:20px!important;
  }
}

/* Tätigkeitsgebiete – exakte Seitenkomponenten */
.page-hero.page-hero-rich{
  min-height:0!important;
  padding-top:clamp(62px,5.5vw,88px)!important;
  padding-bottom:clamp(52px,4.8vw,76px)!important;
}
.services-index .services-intro h2{
  font-size:clamp(3.1rem,4.4vw,5.15rem)!important;
  line-height:.98!important;
  max-width:10.5ch!important;
}
.services-index .service-list .service-row{
  padding-top:clamp(22px,2vw,30px)!important;
  padding-bottom:clamp(22px,2vw,30px)!important;
}
.services-index .service-row h3{
  margin-bottom:8px!important;
}
.services-index .service-row p{
  margin-top:5px!important;
  line-height:1.52!important;
}
@media(max-width:900px){
  .page-hero.page-hero-rich{
    padding-top:54px!important;
    padding-bottom:48px!important;
  }
  .services-index .services-intro h2{
    font-size:clamp(2.8rem,7.5vw,4.2rem)!important;
    max-width:11ch!important;
  }
}
@media(max-width:700px){
  .page-hero.page-hero-rich{
    padding-top:46px!important;
    padding-bottom:42px!important;
  }
  .services-index .services-intro h2{
    font-size:clamp(2.45rem,10.5vw,3.5rem)!important;
    line-height:1!important;
  }
  .services-index .service-list .service-row{
    padding-top:20px!important;
    padding-bottom:20px!important;
  }
}


/* ===== Bibliothek Feinschliff 09.08.2026 ===== */
.knowledge-index{padding:58px 0 68px!important}
.knowledge-index-head{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;gap:44px!important;align-items:end!important;padding-bottom:24px!important}
.knowledge-index-head h2{font-size:clamp(2.85rem,3.75vw,4.55rem)!important;line-height:.96!important;max-width:700px!important}
.knowledge-index-head>p{justify-self:start!important;max-width:560px!important;margin:0 0 4px!important}
.knowledge-category{min-height:142px!important;padding:22px 24px 20px!important;gap:8px 16px!important}
.knowledge-category-name{font-size:1.4rem!important}
.knowledge-category-empty{cursor:default;color:rgba(16,47,40,.58)!important;background:rgba(16,47,40,.018)!important}
.knowledge-category-empty:hover{background:rgba(16,47,40,.018)!important;color:rgba(16,47,40,.58)!important}
.knowledge-category-empty .knowledge-category-no{opacity:.62}
.knowledge-category-empty .knowledge-category-count{opacity:.58;font-style:italic}
@media(max-width:900px){
 .knowledge-index{padding:50px 0 58px!important}
 .knowledge-index-head{grid-template-columns:1fr!important;gap:14px!important;padding-bottom:22px!important}
 .knowledge-index-head h2{font-size:clamp(2.65rem,7vw,3.8rem)!important}
 .knowledge-category{min-height:126px!important;padding:20px!important}
}
@media(max-width:760px){
 .knowledge-index{padding:42px 0 48px!important}
 .knowledge-index-head h2{font-size:2.45rem!important}
 .knowledge-index-head>p{font-size:.92rem!important}
 .knowledge-category{padding:16px 6px!important;min-height:0!important}
 .knowledge-category-empty{grid-template-columns:34px 1fr!important}
}

/* 09.08 – Kontaktseite: finaler Editorial-Feinschliff */
.contact-page-hero{
  width:min(100% - 64px,1540px)!important;
  max-width:1540px!important;
  margin:0 auto!important;
  min-height:0!important;
  padding-top:clamp(64px,5.5vw,88px)!important;
  padding-bottom:clamp(30px,2.8vw,42px)!important;
}
.contact-page-hero h1{
  max-width:13ch!important;
  font-size:clamp(4rem,5.8vw,6.8rem)!important;
  line-height:.92!important;
  letter-spacing:-.045em!important;
  margin:0!important;
}
.contact-page-hero p{
  max-width:820px!important;
  margin-top:22px!important;
  font-size:1.06rem!important;
  line-height:1.62!important;
}

.contact-location-visual{
  width:min(100% - 64px,1480px)!important;
  max-width:1480px!important;
  margin:22px auto 82px!important;
  grid-template-columns:minmax(0,1.38fr) minmax(360px,.62fr)!important;
  min-height:500px!important;
}
.contact-location-visual figure{
  min-height:500px!important;
  height:500px!important;
}
.contact-location-visual img{
  min-height:500px!important;
  object-fit:cover!important;
  object-position:center 58%!important;
}
.contact-location-visual>div{
  min-height:500px!important;
  padding:clamp(44px,4.5vw,68px)!important;
  justify-content:center!important;
}
.contact-location-visual>div h2{
  font-size:clamp(3rem,3.7vw,4.25rem)!important;
  line-height:.98!important;
  margin-bottom:24px!important;
}
.contact-location-visual>div p{
  max-width:34ch!important;
  font-size:1.02rem!important;
  line-height:1.62!important;
}
.contact-location-visual .contact-address,
.contact-location-visual address{
  margin-top:26px!important;
}

/* Tablet */
@media(max-width:1100px){
  .contact-page-hero{
    width:min(100% - 40px,1540px)!important;
  }
  .contact-location-visual{
    width:min(100% - 40px,1480px)!important;
    grid-template-columns:1fr!important;
    min-height:0!important;
  }
  .contact-location-visual figure,
  .contact-location-visual img{
    min-height:0!important;
    height:clamp(320px,48vw,460px)!important;
  }
  .contact-location-visual>div{
    min-height:0!important;
  }
}

/* Mobile */
@media(max-width:760px){
  .contact-page-hero{
    width:calc(100% - 28px)!important;
    padding-top:48px!important;
    padding-bottom:24px!important;
  }
  .contact-page-hero h1{
    max-width:10.5ch!important;
    font-size:clamp(2.85rem,12vw,4.1rem)!important;
    line-height:.96!important;
  }
  .contact-page-hero p{
    margin-top:18px!important;
    max-width:100%!important;
    font-size:1rem!important;
  }
  .contact-location-visual{
    width:calc(100% - 24px)!important;
    margin:18px auto 58px!important;
  }
  .contact-location-visual>div{
    padding:34px 24px 36px!important;
  }
  .contact-location-visual>div h2{
    font-size:clamp(2.45rem,10.6vw,3.3rem)!important;
    margin-bottom:20px!important;
  }
}

@media(max-width:430px){
  .contact-page-hero{
    width:calc(100% - 22px)!important;
    padding-top:42px!important;
  }
  .contact-location-visual{
    width:calc(100% - 20px)!important;
  }
  .contact-location-visual>div{
    padding:30px 20px 32px!important;
  }
}

/* Kontaktseite – exakte aktuelle Komponenten */
.page-intro-contact.contact-page-hero-fixed{
  width:min(100% - 64px,1540px)!important;
  max-width:1540px!important;
  margin:0 auto!important;
  min-height:0!important;
  padding-top:clamp(64px,5.5vw,88px)!important;
  padding-bottom:clamp(30px,2.8vw,42px)!important;
}
.page-intro-contact.contact-page-hero-fixed h1{
  max-width:13ch!important;
  font-size:clamp(4rem,5.8vw,6.8rem)!important;
  line-height:.92!important;
  letter-spacing:-.045em!important;
  margin:0!important;
}
.page-intro-contact.contact-page-hero-fixed > p.lead{
  max-width:820px!important;
  margin-top:22px!important;
  font-size:1.06rem!important;
  line-height:1.62!important;
}
.contact-location-visual .contact-location-address{
  margin-top:26px!important;
}
.contact-location-visual .contact-location-address strong{
  display:block;
  margin-bottom:5px;
}
@media(max-width:1100px){
  .page-intro-contact.contact-page-hero-fixed{
    width:min(100% - 40px,1540px)!important;
  }
}
@media(max-width:760px){
  .page-intro-contact.contact-page-hero-fixed{
    width:calc(100% - 28px)!important;
    padding-top:48px!important;
    padding-bottom:24px!important;
  }
  .page-intro-contact.contact-page-hero-fixed h1{
    max-width:10.5ch!important;
    font-size:clamp(2.85rem,12vw,4.1rem)!important;
    line-height:.96!important;
  }
  .page-intro-contact.contact-page-hero-fixed > p.lead{
    margin-top:18px!important;
    max-width:100%!important;
    font-size:1rem!important;
  }
}
@media(max-width:430px){
  .page-intro-contact.contact-page-hero-fixed{
    width:calc(100% - 22px)!important;
    padding-top:42px!important;
  }
}



/* Fachbeitrag – passendes Tätigkeitsgebiet zentral und ruhiger */
.publication-contact-card .topic-service-link{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  margin:20px 0;
  padding:20px 18px 18px;
  text-align:center;
}
.publication-contact-card .topic-service-link small{
  display:block;
  width:100%;
  color:var(--muted);
  font-size:10px;
  line-height:1.35;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.publication-contact-card .topic-service-link strong{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-size:1rem;
  line-height:1.3;
}
.publication-contact-card .topic-service-link span{
  display:inline;
  color:var(--gold);
  line-height:1;
  margin-left:2px;
}
/* Pfeil optisch direkt an die Bezeichnung binden */
.publication-contact-card .topic-service-link strong::after{
  content:"→";
  color:var(--gold);
  font-weight:400;
  margin-left:8px;
}
.publication-contact-card .topic-service-link > span{
  display:none;
}


/* Fachbeitraege: Inhalt immer sofort und browserunabhaengig rendern.
   Auf Beitragsseiten darf weder content-visibility noch eine Reveal-Animation
   den juristischen Hauptinhalt ausblenden oder von JavaScript abhaengig machen. */
@supports (content-visibility:auto){
  .page-beitrag .publication-detail,
  .page-beitrag .publication-article,
  .page-beitrag .article-richtext{
    content-visibility:visible!important;
  }
}
.page-beitrag .publication-article,
.page-beitrag .publication-article.reveal,
.page-beitrag .publication-article .reveal,
.page-beitrag .article-richtext{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  transition:none!important;
}


/* ===== Team Hero – header-safe spacing ===== */
/* A generic late page-hero-rich override is intentionally not allowed to pull
   the team intro underneath the transparent site header. */
.page-hero.page-hero-rich.team-hero{
  min-height:clamp(460px,48vw,590px)!important;
  padding-top:clamp(150px,13vw,190px)!important;
  padding-bottom:clamp(72px,7vw,102px)!important;
  align-items:flex-end!important;
}
.page-hero.page-hero-rich.team-hero .page-hero-inner{
  width:min(100%,980px);
}
.page-hero.page-hero-rich.team-hero .eyebrow{
  margin-bottom:22px;
}
@media(max-width:900px){
  .page-hero.page-hero-rich.team-hero{
    min-height:0!important;
    padding-top:128px!important;
    padding-bottom:68px!important;
  }
}
@media(max-width:700px){
  .page-hero.page-hero-rich.team-hero{
    padding-top:116px!important;
    padding-bottom:58px!important;
  }
  .page-hero.page-hero-rich.team-hero .eyebrow{
    margin-bottom:18px;
  }
}


/* ===== Kontakt Hero – final header-safe spacing ===== */
/* Keep the contact eyebrow and headline below the fixed site header. This rule
   intentionally comes last so older contact refinements cannot pull it upward. */
.page-intro-contact.contact-page-hero-fixed{
  padding-top:clamp(132px,10vw,164px)!important;
  padding-bottom:clamp(34px,3vw,46px)!important;
  margin-top:0!important;
  transform:none!important;
  overflow:visible!important;
}
.page-intro-contact.contact-page-hero-fixed > .reveal{
  margin-top:0!important;
  transform:none!important;
}
.page-intro-contact.contact-page-hero-fixed .eyebrow{
  display:block!important;
  margin:0 0 18px!important;
  position:relative!important;
  top:auto!important;
  transform:none!important;
}
@media(max-width:900px){
  .page-intro-contact.contact-page-hero-fixed{
    padding-top:124px!important;
    padding-bottom:34px!important;
  }
}
@media(max-width:700px){
  .page-intro-contact.contact-page-hero-fixed{
    padding-top:112px!important;
    padding-bottom:30px!important;
  }
  .page-intro-contact.contact-page-hero-fixed .eyebrow{
    margin-bottom:14px!important;
  }
}

/* ===== Kanzleibilder: ruhige Editorial-Galerie ===== */
.home-house{
  padding:clamp(78px,8vw,128px) max(24px,5vw) clamp(82px,8vw,132px);
  background:#f4efe6;
  color:#12352d;
}
.home-house-head{
  width:min(100%,1540px);
  margin:0 auto 42px;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.62fr);
  gap:8vw;
  align-items:end;
}
.home-house-head h2{
  margin:8px 0 0;
  font-family:var(--font-serif);
  font-size:clamp(3rem,5.4vw,6rem);
  line-height:.94;
  letter-spacing:-.04em;
  color:#0b332a;
}
.home-house-copy{
  max-width:560px;
  padding-bottom:6px;
}
.home-house-copy p{
  margin:0 0 22px;
  color:#5d6b66;
  line-height:1.72;
}
.home-house-gallery{
  width:min(100%,1540px);
  margin:0 auto;
  display:grid;
  grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
  grid-template-rows:minmax(260px,1fr) minmax(260px,1fr);
  gap:14px;
  min-height:700px;
}
.home-house-gallery figure{
  position:relative;
  margin:0;
  overflow:hidden;
  background:#17352d;
}
.home-house-gallery img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .85s var(--ease);
}
.home-house-gallery figure:hover img{transform:scale(1.018)}
.home-house-portal{grid-column:1;grid-row:1/3}
.home-house-portal img{object-position:center 52%}
.home-house-exterior{grid-column:2;grid-row:1}
.home-house-exterior img{object-position:center 48%}
.home-house-interior{grid-column:2;grid-row:2}
.home-house-interior img{object-position:center 50%}
.home-house-portal figcaption{
  position:absolute;
  left:20px;
  right:20px;
  bottom:20px;
  padding:13px 16px;
  background:rgba(8,34,28,.9);
  color:#f6f0e6;
  backdrop-filter:blur(5px);
}
.home-house-portal figcaption span{
  display:block;
  font-family:var(--font-serif);
  font-size:1.28rem;
  line-height:1.1;
}
.home-house-portal figcaption small{
  display:block;
  margin-top:4px;
  color:#d4d8d4;
  font-size:.72rem;
}

/* Die Kanzlei-Seite zeigt bewusst alle vorhandenen Kanzleimotive. */
.kanzlei-gallery-editorial{
  width:min(100%,1540px);
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-auto-rows:240px;
  grid-auto-flow:dense;
  gap:14px;
}
.kanzlei-gallery-editorial figure{
  position:relative;
  margin:0;
  min-width:0;
  overflow:hidden;
  background:#17352d;
}
.kanzlei-gallery-editorial img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .8s var(--ease),filter .8s var(--ease);
}
.kanzlei-gallery-editorial figure:hover img{
  transform:scale(1.018);
  filter:saturate(.96) contrast(1.015);
}
.kanzlei-gallery-editorial .gallery-feature{
  grid-column:span 3;
  grid-row:span 2;
}
.kanzlei-gallery-editorial .gallery-feature img{object-position:center 48%}
.kanzlei-gallery-editorial .gallery-portrait{
  grid-column:span 1;
  grid-row:span 2;
}
.kanzlei-gallery-editorial .gallery-portrait img{object-position:center 52%}
.kanzlei-gallery-editorial .gallery-wide{grid-column:span 2}
.kanzlei-gallery-editorial .gallery-tall{grid-row:span 2}
.kanzlei-gallery-editorial .gallery-balcony img{object-position:center 54%}
.kanzlei-gallery-editorial figcaption{
  position:absolute;
  left:22px;
  bottom:20px;
  padding:13px 16px;
  background:rgba(8,34,28,.90);
  color:#f6f0e6;
  backdrop-filter:blur(5px);
}
.kanzlei-gallery-editorial figcaption span{
  display:block;
  font-family:var(--font-serif);
  font-size:1.32rem;
  line-height:1.08;
}
.kanzlei-gallery-editorial figcaption small{
  display:block;
  margin-top:4px;
  font-size:.72rem;
  color:#d5dad6;
}

@media(max-width:1100px){
  .home-house-gallery{min-height:620px}
  .kanzlei-gallery-editorial{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:260px;
  }
  .kanzlei-gallery-editorial .gallery-feature{grid-column:span 2;grid-row:span 2}
  .kanzlei-gallery-editorial .gallery-portrait{grid-column:span 1;grid-row:span 2}
  .kanzlei-gallery-editorial .gallery-wide{grid-column:span 2}
}

@media(max-width:760px){
  .home-house{
    padding:58px 12px 64px;
  }
  .home-house-head{
    grid-template-columns:1fr;
    gap:22px;
    margin-bottom:28px;
  }
  .home-house-head h2{
    font-size:clamp(2.65rem,12vw,4rem);
    line-height:.96;
  }
  .home-house-copy{padding:0}
  .home-house-gallery{
    min-height:0;
    grid-template-columns:1fr 1fr;
    grid-template-rows:360px 220px;
    gap:9px;
  }
  .home-house-portal{grid-column:1;grid-row:1}
  .home-house-exterior{grid-column:2;grid-row:1}
  .home-house-interior{grid-column:1/3;grid-row:2}
  .home-house-exterior img{object-position:center 48%}
  .home-house-portal figcaption{left:8px;right:8px;bottom:8px;padding:10px 11px}
  .home-house-portal figcaption span{font-size:1.05rem}
  .home-house-portal figcaption small{font-size:.65rem}

  .kanzlei-spaces{padding-left:10px!important;padding-right:10px!important}
  .kanzlei-gallery-editorial{
    grid-template-columns:1fr 1fr;
    grid-auto-rows:190px;
    gap:8px;
  }
  .kanzlei-gallery-editorial .gallery-feature{
    grid-column:span 2;
    grid-row:span 2;
  }
  .kanzlei-gallery-editorial .gallery-portrait{
    grid-column:span 1;
    grid-row:span 2;
  }
  .kanzlei-gallery-editorial .gallery-wide{grid-column:span 2}
  .kanzlei-gallery-editorial .gallery-tall{grid-row:span 2}
  .kanzlei-gallery-editorial figcaption{left:8px;bottom:8px;padding:10px 12px}
  .kanzlei-gallery-editorial figcaption span{font-size:1.08rem}
  .kanzlei-gallery-editorial figcaption small{font-size:.64rem}
}

@media(max-width:430px){
  .home-house-gallery{
    grid-template-columns:1fr;
    grid-template-rows:410px 225px 225px;
  }
  .home-house-portal,.home-house-exterior,.home-house-interior{
    grid-column:1;
    grid-row:auto;
  }
  .kanzlei-gallery-editorial{
    grid-template-columns:1fr;
    grid-auto-rows:245px;
  }
  .kanzlei-gallery-editorial .gallery-feature,
  .kanzlei-gallery-editorial .gallery-portrait,
  .kanzlei-gallery-editorial .gallery-wide,
  .kanzlei-gallery-editorial .gallery-tall{
    grid-column:1;
    grid-row:auto;
  }
  .kanzlei-gallery-editorial .gallery-feature{height:300px}
  .kanzlei-gallery-editorial .gallery-portrait{height:390px}
}


/* ===== Kanzlei-Galerie Final 2026: editorial, header-safe, mit bewusstem Abschluss ===== */
#raeume.kanzlei-spaces{
  scroll-margin-top:128px;
  padding-top:clamp(92px,7.5vw,132px);
}
#raeume .kanzlei-spaces-head{
  width:min(100%,1680px);
  margin-bottom:48px;
  align-items:end;
}
#raeume .kanzlei-spaces-head .eyebrow{
  display:block;
  margin-bottom:18px;
}
#raeume .kanzlei-spaces-head h2{
  max-width:900px;
  text-wrap:balance;
}
#raeume .kanzlei-spaces-head>p{
  max-width:620px;
}
.kanzlei-gallery-editorial{
  width:min(100%,1680px);
  gap:16px;
}
.kanzlei-gallery-editorial figure{
  cursor:zoom-in;
  outline:none;
}
.kanzlei-gallery-editorial figure:focus-visible{
  box-shadow:0 0 0 3px #f4efe6,0 0 0 6px #bd9140;
}
.kanzlei-gallery-editorial .gallery-balcony{
  grid-column:1 / -1;
  grid-row:span 2;
}
.kanzlei-gallery-editorial .gallery-balcony img{
  object-position:center 52%;
}

/* Galerie-Lightbox: rein progressiv – ohne JS bleiben alle Bilder normal sichtbar. */
body.gallery-lightbox-open{overflow:hidden}
.gallery-lightbox[hidden]{display:none!important}
.gallery-lightbox{
  position:fixed;
  inset:0;
  z-index:10050;
  display:grid;
  grid-template-columns:minmax(48px,80px) minmax(0,1fr) minmax(48px,80px);
  grid-template-rows:1fr auto;
  align-items:center;
  justify-items:center;
  padding:32px 18px 22px;
  background:rgba(5,21,17,.94);
  backdrop-filter:blur(8px);
}
.gallery-lightbox-stage{
  grid-column:2;
  grid-row:1;
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:0;
}
.gallery-lightbox-image{
  display:block;
  max-width:min(1460px,92vw);
  max-height:82vh;
  width:auto;
  height:auto;
  object-fit:contain;
  box-shadow:0 18px 70px rgba(0,0,0,.35);
}
.gallery-lightbox-caption{
  grid-column:2;
  grid-row:2;
  margin:18px 0 0;
  max-width:920px;
  color:#f5efe6;
  text-align:center;
  font-size:.84rem;
  line-height:1.55;
  letter-spacing:.01em;
}
.gallery-lightbox-close,
.gallery-lightbox-prev,
.gallery-lightbox-next{
  border:1px solid rgba(255,255,255,.22);
  background:rgba(9,42,34,.72);
  color:#fff;
  cursor:pointer;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.gallery-lightbox-close:hover,
.gallery-lightbox-prev:hover,
.gallery-lightbox-next:hover{
  background:#123f35;
  border-color:rgba(213,172,91,.7);
}
.gallery-lightbox-close:focus-visible,
.gallery-lightbox-prev:focus-visible,
.gallery-lightbox-next:focus-visible{
  outline:2px solid #d5ac5b;
  outline-offset:3px;
}
.gallery-lightbox-close{
  position:absolute;
  top:20px;
  right:22px;
  width:48px;
  height:48px;
  border-radius:50%;
  font-size:1.55rem;
  line-height:1;
}
.gallery-lightbox-prev,
.gallery-lightbox-next{
  width:50px;
  height:64px;
  border-radius:2px;
  font-size:1.6rem;
}
.gallery-lightbox-prev{grid-column:1;grid-row:1}
.gallery-lightbox-next{grid-column:3;grid-row:1}

@media(max-width:1100px){
  #raeume.kanzlei-spaces{scroll-margin-top:112px;padding-top:88px}
  #raeume .kanzlei-spaces-head{margin-bottom:38px}
  .kanzlei-gallery-editorial{gap:12px}
  .kanzlei-gallery-editorial .gallery-balcony{
    grid-column:1 / -1;
    grid-row:span 1;
  }
}
@media(max-width:760px){
  #raeume.kanzlei-spaces{
    scroll-margin-top:96px;
    padding-top:72px!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }
  #raeume .kanzlei-spaces-head{
    gap:18px;
    margin-bottom:30px;
  }
  #raeume .kanzlei-spaces-head .eyebrow{margin-bottom:12px}
  #raeume .kanzlei-spaces-head h2{
    font-size:clamp(2.75rem,12vw,4.15rem);
    line-height:.95;
  }
  #raeume .kanzlei-spaces-head>p{font-size:.96rem;line-height:1.65}
  .kanzlei-gallery-editorial{
    grid-template-columns:1fr 1fr;
    grid-auto-rows:210px;
    gap:9px;
  }
  .kanzlei-gallery-editorial .gallery-feature{grid-column:1 / -1;grid-row:span 2}
  .kanzlei-gallery-editorial .gallery-portrait{grid-column:span 1;grid-row:span 2}
  .kanzlei-gallery-editorial .gallery-wide{grid-column:1 / -1}
  .kanzlei-gallery-editorial .gallery-tall{grid-row:span 2}
  .kanzlei-gallery-editorial .gallery-balcony{
    grid-column:1 / -1;
    grid-row:span 2;
  }
  .gallery-lightbox{
    grid-template-columns:46px minmax(0,1fr) 46px;
    padding:68px 8px 18px;
  }
  .gallery-lightbox-image{max-width:94vw;max-height:76vh}
  .gallery-lightbox-caption{font-size:.78rem;margin-top:12px;padding:0 8px}
  .gallery-lightbox-prev,.gallery-lightbox-next{width:40px;height:54px;font-size:1.35rem}
  .gallery-lightbox-close{top:12px;right:12px;width:44px;height:44px}
}
@media(max-width:430px){
  #raeume.kanzlei-spaces{scroll-margin-top:90px;padding-top:66px!important}
  .kanzlei-gallery-editorial{
    grid-template-columns:1fr;
    grid-auto-rows:auto;
  }
  .kanzlei-gallery-editorial .gallery-feature,
  .kanzlei-gallery-editorial .gallery-portrait,
  .kanzlei-gallery-editorial .gallery-wide,
  .kanzlei-gallery-editorial .gallery-tall,
  .kanzlei-gallery-editorial .gallery-balcony{
    grid-column:1;
    grid-row:auto;
    height:260px;
  }
  .kanzlei-gallery-editorial .gallery-feature{height:310px}
  .kanzlei-gallery-editorial .gallery-portrait{height:380px}
  .kanzlei-gallery-editorial .gallery-balcony{height:290px}
  .gallery-lightbox{
    grid-template-columns:1fr 1fr;
    grid-template-rows:1fr auto auto;
    gap:10px;
  }
  .gallery-lightbox-stage{grid-column:1 / -1;grid-row:1}
  .gallery-lightbox-caption{grid-column:1 / -1;grid-row:2}
  .gallery-lightbox-prev,.gallery-lightbox-next{
    position:static;
    grid-row:3;
    width:100%;
    height:44px;
  }
  .gallery-lightbox-prev{grid-column:1}
  .gallery-lightbox-next{grid-column:2}
}


/* ===== Direkter Kontakt & Notfallnummer – Kundenwunsch 08/2026 ===== */
.contact-page-hero-fixed .contact-hero-direct{
  align-self:end;
  width:min(100%,760px);
  display:grid;
  gap:22px;
}
.contact-page-hero-fixed .contact-hero-direct .lead{margin:0;max-width:690px;font-size:1.06rem;line-height:1.62}
.contact-hero-actions{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.contact-hero-action{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:14px;
  padding:18px 20px;
  border:1px solid rgba(20,35,31,.18);
  background:rgba(255,255,255,.72);
  color:var(--ink);
  text-decoration:none;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.contact-hero-action:hover,.contact-hero-action:focus-visible{
  background:#fff;
  border-color:var(--gold);
  transform:translateY(-1px);
}
.contact-hero-action-icon{
  width:36px;height:36px;border:1px solid rgba(202,163,84,.58);border-radius:50%;
  display:grid;place-items:center;color:#8c672c;font-size:15px;
}
.contact-hero-action small{display:block;margin-bottom:4px;color:var(--muted);font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.contact-hero-action strong{display:block;color:var(--ink);font-size:clamp(.9rem,1.15vw,1.04rem);font-weight:700;overflow-wrap:anywhere}
.contact-hero-action>i{font-style:normal;color:var(--gold);font-size:1.15rem}
.contact-emergency-inline{
  display:flex;flex-wrap:wrap;align-items:center;gap:7px 10px;
  padding-top:15px;border-top:1px solid var(--line);
  color:var(--muted);font-size:.9rem;
}
.contact-emergency-inline .contact-emergency-label{color:var(--gold);font-weight:700}
.contact-emergency-inline a{color:var(--green-3);font-weight:700;text-underline-offset:4px}
.contact-detail-emergency{border-top-color:rgba(202,163,84,.42)}
.contact-detail-emergency p{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.contact-emergency-number{font-family:var(--font-serif);font-size:clamp(1.35rem,2vw,1.8rem);color:var(--green)!important;font-weight:700;text-decoration-thickness:1px;text-underline-offset:5px}

.home-emergency{
  width:min(calc(100% - 12vw),1480px);
  margin:0 auto clamp(80px,9vw,140px);
  padding:clamp(38px,5vw,68px);
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr);
  align-items:end;
  gap:clamp(32px,7vw,100px);
  background:#0b3029;
  color:#fff;
  border-top:3px solid var(--gold);
  position:relative;
  overflow:hidden;
}
.home-emergency::after{
  content:'§';position:absolute;right:5%;top:50%;transform:translateY(-52%);
  font:clamp(9rem,18vw,18rem)/1 Georgia,serif;color:rgba(255,255,255,.025);pointer-events:none;
}
.home-emergency-copy{position:relative;z-index:1}
.home-emergency .eyebrow{color:var(--gold)}
.home-emergency h2{margin:13px 0 18px;color:#fff;font:400 clamp(2.5rem,5.5vw,5.2rem)/.98 var(--font-serif);letter-spacing:-.035em}
.home-emergency h2 em{font-weight:400;color:#e9dfc8}
.home-emergency p{max-width:690px;margin:0;color:rgba(255,255,255,.68);font-size:clamp(1rem,1.25vw,1.13rem);line-height:1.65}
.home-emergency-call{
  position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;
  padding:27px 28px;border:1px solid rgba(202,163,84,.5);background:rgba(255,255,255,.045);
  color:#fff;text-decoration:none;transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.home-emergency-call:hover,.home-emergency-call:focus-visible{background:rgba(202,163,84,.12);border-color:var(--gold);transform:translateY(-2px)}
.home-emergency-call small{color:var(--gold);font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700}
.home-emergency-call strong{margin:10px 0 22px;font:700 clamp(1.65rem,2.6vw,2.35rem)/1 var(--font-serif);white-space:nowrap}
.home-emergency-call span{display:flex;align-items:center;gap:10px;font-weight:700}
.home-emergency-call i{font-style:normal;color:var(--gold)}

@media(max-width:900px){
  .contact-page-hero-fixed .contact-hero-direct{width:100%;align-self:auto}
  .home-emergency{width:calc(100% - 8vw);grid-template-columns:1fr;align-items:start;gap:28px}
  .home-emergency-call{max-width:460px}
}
@media(max-width:640px){
  .contact-page-hero-fixed .contact-hero-direct .lead{font-size:1rem}
  .contact-hero-actions{grid-template-columns:1fr}
  .contact-hero-action{padding:16px 17px}
  .contact-emergency-inline{font-size:.84rem}
  .home-emergency{width:calc(100% - 28px);margin-bottom:72px;padding:34px 24px}
  .home-emergency h2{font-size:clamp(2.45rem,12vw,3.8rem)}
  .home-emergency-call{width:100%;padding:23px 22px}
}

/* Notfallkontakt direkt nach dem Startseiten-Hero */
.hero + .home-emergency{
  margin-top:clamp(28px,3.5vw,52px);
  margin-bottom:clamp(54px,6vw,88px);
}
@media(max-width:640px){
  .hero + .home-emergency{
    margin-top:20px;
    margin-bottom:50px;
  }
}


/* ===== Kompakter Notfallkontakt direkt unter dem Startseiten-Hero ===== */
.home-emergency.home-emergency-compact{
  width:min(calc(100% - 12vw),1480px);
  min-height:0;
  margin:clamp(22px,2.6vw,36px) auto clamp(48px,5vw,72px);
  padding:clamp(22px,2.2vw,30px) clamp(26px,3vw,44px);
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(28px,5vw,72px);
  border-top-width:2px;
}
.home-emergency.home-emergency-compact::after{
  right:3%;
  font-size:clamp(6rem,10vw,10rem);
  opacity:.7;
}
.home-emergency.home-emergency-compact .home-emergency-copy{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:
    "eyebrow title"
    "eyebrow text";
  column-gap:clamp(20px,2.5vw,34px);
  row-gap:5px;
  align-items:center;
}
.home-emergency.home-emergency-compact .eyebrow{
  grid-area:eyebrow;
  margin:0;
  white-space:nowrap;
}
.home-emergency.home-emergency-compact h2{
  grid-area:title;
  margin:0;
  color:#fff;
  font:400 clamp(1.55rem,2.2vw,2.15rem)/1.1 var(--font-serif);
  letter-spacing:-.02em;
}
.home-emergency.home-emergency-compact p{
  grid-area:text;
  max-width:720px;
  margin:0;
  font-size:clamp(.88rem,1vw,1rem);
  line-height:1.5;
}
.home-emergency.home-emergency-compact .home-emergency-call{
  min-width:clamp(300px,25vw,390px);
  padding:17px 20px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  grid-template-areas:
    "label action"
    "number action";
  column-gap:22px;
  row-gap:5px;
  align-items:center;
}
.home-emergency.home-emergency-compact .home-emergency-call small{grid-area:label;margin:0}
.home-emergency.home-emergency-compact .home-emergency-call strong{
  grid-area:number;
  margin:0;
  font-size:clamp(1.4rem,2vw,1.9rem);
}
.home-emergency.home-emergency-compact .home-emergency-call span{
  grid-area:action;
  align-self:center;
  white-space:nowrap;
  font-size:.9rem;
}

@media(max-width:980px){
  .home-emergency.home-emergency-compact{
    width:calc(100% - 8vw);
    grid-template-columns:1fr;
    gap:20px;
  }
  .home-emergency.home-emergency-compact .home-emergency-copy{
    grid-template-columns:1fr;
    grid-template-areas:"eyebrow" "title" "text";
    row-gap:7px;
  }
  .home-emergency.home-emergency-compact .home-emergency-call{
    width:100%;
    min-width:0;
    max-width:none;
  }
}
@media(max-width:640px){
  .home-emergency.home-emergency-compact{
    width:calc(100% - 28px);
    margin-top:16px;
    margin-bottom:44px;
    padding:22px 20px;
    gap:18px;
  }
  .home-emergency.home-emergency-compact h2{font-size:clamp(1.55rem,7.2vw,2rem)}
  .home-emergency.home-emergency-compact p{font-size:.9rem}
  .home-emergency.home-emergency-compact .home-emergency-call{
    padding:16px 17px;
    grid-template-columns:1fr;
    grid-template-areas:"label" "number" "action";
    gap:7px;
  }
  .home-emergency.home-emergency-compact .home-emergency-call strong{font-size:clamp(1.45rem,8vw,1.9rem)}
  .home-emergency.home-emergency-compact .home-emergency-call span{margin-top:3px}
}

/* ===== Startseite: Kontakt + Notfall dezent im Hero integriert ===== */
.page-index .hero-fact.hero-contact-card{
  right:3.2vw;
  bottom:5.2vh;
  width:min(322px,27vw);
  max-width:none;
  padding:0;
  border:1px solid rgba(202,163,84,.32);
  border-left:0;
  background:rgba(3,24,20,.82);
  box-shadow:0 16px 48px rgba(0,0,0,.16);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  overflow:hidden;
}
.page-index .hero-contact-primary,
.page-index .hero-contact-emergency{
  position:relative;
  padding:15px 18px 16px 20px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.page-index .hero-contact-primary::before,
.page-index .hero-contact-emergency::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:2px;
  background:var(--gold);
}
.page-index .hero-contact-emergency{
  border-top:1px solid rgba(202,163,84,.22);
  background:rgba(202,163,84,.055);
}
.page-index .hero-contact-card b{
  margin:0 0 5px;
  color:var(--gold);
  font:700 9px/1.2 Arial,sans-serif;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.page-index .hero-contact-card .hero-contact-phone,
.page-index .hero-contact-card .hero-emergency-phone{
  color:#fff;
  text-decoration:none;
  font-family:var(--font-serif);
  font-size:clamp(18px,1.55vw,23px);
  line-height:1.15;
  white-space:nowrap;
}
.page-index .hero-contact-card .hero-fact-mail{
  margin-top:4px;
  color:rgba(255,255,255,.72);
  font:400 11px/1.35 Arial,sans-serif!important;
  text-decoration:none;
  overflow-wrap:anywhere;
}
.page-index .hero-contact-card a:hover,
.page-index .hero-contact-card a:focus-visible{color:var(--gold)}
.page-index .hero-emergency-action{
  margin-top:7px;
  color:#fff;
  font:700 11px/1.2 Arial,sans-serif;
  text-decoration:none;
}
.page-index .hero-emergency-action i{font-style:normal;color:var(--gold);margin-left:5px}

/* Kontaktseite: Notfallnummer oben als dritte, klar getrennte Sofortaktion */
.contact-page-hero-fixed .contact-emergency-inline{
  padding:13px 15px;
  border:1px solid rgba(202,163,84,.36);
  border-top:1px solid rgba(202,163,84,.36);
  background:rgba(202,163,84,.055);
}
.contact-page-hero-fixed .contact-emergency-inline .contact-emergency-label{letter-spacing:.02em}
.contact-page-hero-fixed .contact-emergency-inline a{
  margin-left:auto;
  color:var(--green-3);
  font-family:var(--font-serif);
  font-size:1.05rem;
  white-space:nowrap;
}

@media(max-width:900px){
  .page-index .hero{min-height:760px}
  .page-index .hero-copy{padding-bottom:210px}
  .page-index .hero-fact.hero-contact-card{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    left:5vw;
    right:5vw;
    bottom:22px;
    width:auto;
    max-width:none;
  }
  .page-index .hero-contact-emergency{border-top:0;border-left:1px solid rgba(202,163,84,.22)}
  .page-index .hero-contact-card .hero-contact-phone,
  .page-index .hero-contact-card .hero-emergency-phone{font-size:18px}
  .page-index .hero-contact-card .hero-fact-mail{font-size:10.5px!important}
}
@media(max-width:640px){
  .page-index .hero{min-height:820px}
  .page-index .hero-copy{padding-bottom:255px}
  .page-index .hero-fact.hero-contact-card{
    grid-template-columns:1fr;
    left:14px;
    right:14px;
    bottom:16px;
  }
  .page-index .hero-contact-primary,
  .page-index .hero-contact-emergency{padding:12px 15px 13px 17px}
  .page-index .hero-contact-emergency{border-left:0;border-top:1px solid rgba(202,163,84,.22)}
  .page-index .hero-contact-card .hero-contact-phone,
  .page-index .hero-contact-card .hero-emergency-phone{font-size:17px}
  .page-index .hero-contact-card .hero-fact-mail{display:block!important}
  .contact-page-hero-fixed .contact-emergency-inline{align-items:flex-start}
  .contact-page-hero-fixed .contact-emergency-inline a{margin-left:0;width:100%}
}


/* ===== Startseite: Notfallnummer im Hero klar hervorheben ===== */
.page-index .hero-contact-emergency{
  border-top:1px solid rgba(214,177,95,.62);
  background:
    linear-gradient(135deg,rgba(202,163,84,.16),rgba(202,163,84,.055) 58%,rgba(255,255,255,.025));
  box-shadow:inset 3px 0 0 var(--gold);
  padding:16px 18px 17px 22px;
}
.page-index .hero-contact-emergency::before{display:none}
.page-index .hero-emergency-kicker{
  display:block;
  margin:0 0 4px;
  color:rgba(255,255,255,.72);
  font:600 9px/1.2 Arial,sans-serif;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.page-index .hero-contact-emergency .hero-emergency-title{
  display:block;
  margin:0 0 7px;
  color:var(--gold);
  font:700 10px/1.15 Arial,sans-serif;
  letter-spacing:.18em;
  text-transform:uppercase;
}
.page-index .hero-contact-card .hero-emergency-phone{
  font-size:clamp(22px,1.85vw,28px);
  font-weight:600;
  letter-spacing:.01em;
  line-height:1.08;
}
.page-index .hero-emergency-action{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-width:158px;
  margin-top:12px;
  padding:10px 12px;
  border:1px solid var(--gold);
  background:var(--gold);
  color:#08261f!important;
  font:700 10.5px/1 Arial,sans-serif;
  letter-spacing:.02em;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.page-index .hero-emergency-action i{
  margin-left:0;
  color:#08261f;
}
.page-index .hero-emergency-action:hover,
.page-index .hero-emergency-action:focus-visible{
  background:#e0bd70;
  color:#06231d!important;
  transform:translateY(-1px);
}
.page-index .hero-emergency-action:hover i,
.page-index .hero-emergency-action:focus-visible i{color:#06231d}

@media(max-width:900px){
  .page-index .hero-contact-emergency{
    border-top:0;
    border-left:1px solid rgba(214,177,95,.62);
    box-shadow:inset 3px 0 0 var(--gold);
  }
  .page-index .hero-contact-card .hero-emergency-phone{font-size:22px}
}
@media(max-width:640px){
  .page-index .hero-contact-emergency{
    border-left:0;
    border-top:1px solid rgba(214,177,95,.62);
    box-shadow:inset 3px 0 0 var(--gold);
    padding:14px 15px 15px 19px;
  }
  .page-index .hero-contact-card .hero-emergency-phone{font-size:21px}
  .page-index .hero-emergency-action{width:100%;min-width:0}
}


/* ===== Tätigkeitsgebiete – finaler header-sicherer Hero ===== */
/* Die späten generischen page-hero-rich-Regeln dürfen die Eyebrow nicht unter
   den festen Header ziehen. Gilt für Übersicht und einzelne Rechtsgebiete. */
.page-hero.page-hero-rich.services-overview-hero,
.page-hero.page-hero-rich.service-hero{
  min-height:clamp(430px,40vw,540px)!important;
  padding-top:clamp(136px,10.5vw,164px)!important;
  padding-bottom:clamp(66px,6vw,88px)!important;
  align-items:flex-end!important;
  overflow:hidden!important;
}
.page-hero.page-hero-rich.services-overview-hero .page-hero-inner,
.page-hero.page-hero-rich.service-hero .page-hero-inner{
  width:min(100%,1040px);
  margin-top:0!important;
  transform:none;
}
.page-hero.page-hero-rich.services-overview-hero .eyebrow,
.page-hero.page-hero-rich.service-hero .eyebrow{
  display:block!important;
  margin:0 0 22px!important;
}
@media(max-width:900px){
  .page-hero.page-hero-rich.services-overview-hero,
  .page-hero.page-hero-rich.service-hero{
    min-height:0!important;
    padding-top:118px!important;
    padding-bottom:62px!important;
  }
}
@media(max-width:700px){
  .page-hero.page-hero-rich.services-overview-hero,
  .page-hero.page-hero-rich.service-hero{
    padding-top:104px!important;
    padding-bottom:52px!important;
  }
  .page-hero.page-hero-rich.services-overview-hero .eyebrow,
  .page-hero.page-hero-rich.service-hero .eyebrow{
    margin-bottom:18px!important;
  }
}

@media(max-width:640px){.footer-brand-lockup{width:min(100%,300px)}}

/* Berater: kompakter Startseiten-Teaser und ausführlicher Profiltext */
.person-teaser{margin-top:10px;font-size:14px;line-height:1.65;color:var(--muted);max-width:38ch}
.profile-bio{display:grid;gap:18px;margin-top:0}
.profile-bio .lead{margin:0;max-width:70ch}
@media(max-width:760px){.person-teaser{font-size:13px;line-height:1.6}.profile-bio{gap:15px}}

@media(max-width:900px){.footer-brand-copy--lockup{max-width:100%;padding:16px 16px 14px}.footer-brand-lockup{width:min(100%,330px)}}
@media(max-width:640px){.site-footer{padding:56px 6vw 26px}.footer-brand-copy--lockup{padding:14px 14px 12px;gap:14px}.footer-brand-lockup{width:min(100%,300px)}.footer-socials{padding-left:0}}

@media(max-width:900px){.site-footer{grid-template-columns:1fr;gap:32px}.footer-brand-copy--lockup{max-width:100%}.footer-brand-lockup{width:min(100%,320px)}}
@media(max-width:640px){.site-footer{padding:52px 6vw 24px}.footer-brand-lockup{width:min(100%,290px)}.footer-socials a{width:34px;height:34px}}

/* ===== Mobile QA Final – 19.08.2026 =====
   Letzte, zentrale Schutzschicht für Lesbarkeit, Header-Abstand und Touch-Ziele.
   Bewusst am Dateiende, damit ältere Feinschliffe mobile Regeln nicht erneut überschreiben. */
@media (max-width:760px){
  :root{--mobile-gutter:18px}
  html{scroll-padding-top:82px!important}
  body{font-size:16px!important;line-height:1.68!important}
  main{min-width:0!important;overflow:hidden}

  /* Fester Header / Navigation */
  .site-header,
  header.site-header{
    min-height:72px!important;
    height:72px!important;
    padding:9px var(--mobile-gutter)!important;
  }
  .site-header .brand{max-width:calc(100% - 58px)!important;min-width:0!important;gap:10px!important}
  .site-header .brand-mark,
  .site-header .brand-mark img{width:38px!important;height:38px!important;min-width:38px!important}
  .site-header .brand-copy{min-width:0!important}
  .site-header .brand-copy b,
  .site-header .brand b{font-size:14px!important;line-height:1.08!important;letter-spacing:.04em!important;white-space:nowrap!important}
  .site-header .menu{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
  .site-header nav{
    padding:100px 20px 32px!important;
    gap:3px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    font-size:clamp(1.72rem,7vw,2.35rem)!important;
    line-height:1.08!important;
  }
  .site-header nav>a:not(.nav-cta){min-height:46px!important;padding:7px 0!important;display:flex!important;align-items:center!important}
  .site-header nav .nav-cta{width:100%!important;min-height:48px!important;margin-top:14px!important;justify-content:space-between!important}
  .mobile-language-label{font-size:11px!important;line-height:1.3!important}
  .language-tools-mobile .language-current,
  .language-tools-mobile .language-button{width:44px!important;height:44px!important;font-size:12px!important}

  /* Einheitlicher Seitenrhythmus */
  .section,
  section.section{padding:54px var(--mobile-gutter)!important}
  .section-head{gap:14px!important;margin-bottom:30px!important}
  .section-head h2{margin:0!important}
  .eyebrow{font-size:11.5px!important;line-height:1.35!important;letter-spacing:.12em!important;margin-bottom:16px!important}
  p,li{font-size:16px!important;line-height:1.68!important}
  .lead,.boutique-lead{font-size:17px!important;line-height:1.62!important}
  .btn,.nav-cta{min-height:48px!important;padding:14px 17px!important;font-size:15px!important}
  .text-link{font-size:14px!important;line-height:1.4!important}

  /* Alle klassischen Unterseiten sicher unter dem festen Header */
  .page-hero.page-hero-rich{
    min-height:0!important;
    padding:112px var(--mobile-gutter) 52px!important;
    align-items:flex-end!important;
  }
  .page-hero.page-hero-rich .page-hero-inner{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  .page-hero.page-hero-rich h1{font-size:clamp(2.55rem,10.5vw,3.55rem)!important;line-height:.98!important;margin:0!important}
  .page-hero.page-hero-rich p{max-width:100%!important;margin:16px 0 0!important;font-size:16px!important;line-height:1.62!important}

  /* Startseite */
  .page-index .hero{min-height:820px!important}
  .page-index .hero>img,
  .page-index .hero-media img{height:100%!important;min-height:100%!important;object-fit:cover!important}
  .page-index .hero-copy{
    left:auto!important;right:auto!important;bottom:auto!important;
    width:100%!important;max-width:100%!important;
    padding:0 var(--mobile-gutter) 252px!important;
  }
  .page-index .hero-copy h1{font-size:clamp(2.65rem,11.8vw,3.65rem)!important;line-height:.94!important;margin:8px 0 14px!important}
  .page-index .hero-copy p{max-width:100%!important;font-size:16px!important;line-height:1.58!important}
  .page-index .hero-copy .actions{margin-top:18px!important;gap:9px!important}
  .page-index .hero-fact.hero-contact-card{left:14px!important;right:14px!important;bottom:14px!important;width:auto!important}
  .page-index .hero-contact-primary,
  .page-index .hero-contact-emergency{padding:14px 16px 15px 19px!important}
  .page-index .hero-contact-card b,
  .page-index .hero-emergency-kicker,
  .page-index .hero-contact-emergency .hero-emergency-title{font-size:11px!important;line-height:1.3!important}
  .page-index .hero-contact-card .hero-contact-phone{font-size:19px!important}
  .page-index .hero-contact-card .hero-emergency-phone{font-size:21px!important}
  .page-index .hero-contact-card .hero-fact-mail{font-size:12.5px!important;line-height:1.45!important}
  .page-index .hero-emergency-action{min-height:44px!important;font-size:12.5px!important;padding:11px 13px!important}
  .office-intro,.home-house{padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}
  .situation-card{padding:25px 0!important}
  .situation-card .situation-no{font-size:12px!important}
  .home-journal{padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}
  .home-journal-card-link{padding:24px 20px!important}
  .home-journal-meta{font-size:12.5px!important;line-height:1.45!important}
  .home-house-head{gap:20px!important;margin-bottom:26px!important}
  .contact-band{padding:54px var(--mobile-gutter)!important;gap:28px!important}
  .contact-band h2{font-size:clamp(2.25rem,9vw,3rem)!important;line-height:1!important}

  /* Journal */
  .ref-journal{padding:88px 0 58px!important}
  .ref-journal-wrap{width:calc(100% - 32px)!important;max-width:none!important}
  .ref-journal-intro{padding:16px 0 28px!important}
  .ref-journal-intro h1{font-size:clamp(2.55rem,10.5vw,3.45rem)!important;line-height:.98!important;max-width:100%!important}
  .ref-journal-intro p{font-size:16px!important;line-height:1.62!important}
  .ref-topics{display:flex!important;flex-wrap:wrap!important;gap:8px 14px!important;padding:13px 0!important}
  .ref-topics a{font-size:12.5px!important;line-height:1.35!important;padding:5px 0!important}
  .ref-search{grid-template-columns:1fr!important;gap:8px!important;width:100%!important;margin:16px 0!important}
  .ref-search input,.ref-search button{width:100%!important;min-height:48px!important}
  .ref-row{grid-template-columns:1fr!important;gap:16px!important;padding:26px 0!important}
  .ref-copy h2,.ref-row .ref-title{font-size:clamp(1.65rem,7.2vw,2.15rem)!important;line-height:1.05!important;max-width:100%!important}
  .ref-copy>p,.ref-row .ref-excerpt{font-size:15.5px!important;line-height:1.65!important}
  .ref-meta,.ref-row .ref-authorline,.ref-row .ref-bottom,.ref-foot{font-size:12.5px!important;line-height:1.5!important;flex-wrap:wrap!important}

  /* Fachbeitrag */
  .publication-detail-hero-compact{padding:116px var(--mobile-gutter) 52px!important}
  .publication-detail-hero .page-hero-inner{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important}
  .publication-detail-hero h1{font-size:clamp(2.35rem,9.4vw,3.25rem)!important;line-height:1!important}
  .publication-labels{gap:7px!important;flex-wrap:wrap!important}
  .article-category-badge,.article-type-badge{font-size:11.5px!important;line-height:1.3!important;padding:7px 9px!important}
  .publication-detail-meta{gap:7px 11px!important;margin-top:18px!important;flex-wrap:wrap!important}
  .publication-detail-meta span{font-size:12.5px!important;line-height:1.45!important;margin:0!important}
  .publication-detail.publication-detail-polished{width:calc(100% - 32px)!important;padding:48px 0 64px!important;gap:34px!important}
  .publication-article>p,
  .publication-article .rich-text p,
  .publication-article .publication-block p,
  .publication-article li{font-size:16px!important;line-height:1.75!important}
  .publication-article h2{font-size:clamp(1.8rem,7.4vw,2.35rem)!important;line-height:1.08!important;margin-top:38px!important}
  .publication-article h3{font-size:clamp(1.4rem,5.8vw,1.8rem)!important;line-height:1.15!important;margin-top:30px!important}
  .article-toc{margin:24px 0 34px!important;padding:18px!important}
  .article-toc summary{font-size:16px!important;line-height:1.4!important;min-height:44px!important;display:flex!important;align-items:center!important}
  .article-toc a{font-size:14.5px!important;line-height:1.5!important}
  .article-reference-panel{padding:20px 18px!important;gap:18px!important}
  .article-reference-copy,.article-reference-copy p{font-size:14.5px!important;line-height:1.6!important}
  .article-document-link{padding:14px!important;gap:8px!important}
  .article-document-link span{font-size:12px!important;line-height:1.4!important}
  .article-document-link strong{font-size:14px!important;white-space:normal!important}
  .legal-article-note{padding:18px!important}
  .legal-article-note strong{font-size:12px!important}
  .legal-article-note p{font-size:14px!important;line-height:1.58!important}
  .publication-aside.publication-contact-card{padding:22px 18px!important}
  .article-author-card{grid-template-columns:64px minmax(0,1fr)!important;column-gap:14px!important}
  .article-author-card img{width:64px!important;height:64px!important}
  .article-author-card h2{font-size:1.6rem!important}
  .article-author-card p,.article-author-card .text-link,.publication-contact-intro,.publication-contact-links a{font-size:14px!important;line-height:1.5!important}
  .publication-contact-card .topic-service-link small{font-size:11.5px!important}
  .related-publications{padding:52px var(--mobile-gutter) 62px!important}
  .related-publications .section-head,.related-publications-grid{width:100%!important}
  .related-publication-card p{font-size:15px!important;line-height:1.62!important}

  /* Bibliothek */
  .knowledge-hero{min-height:0!important}
  .knowledge-hero-copy{padding:112px var(--mobile-gutter) 38px!important}
  .knowledge-hero h1{font-size:clamp(2.7rem,11vw,3.7rem)!important;line-height:.94!important;margin:12px 0 18px!important}
  .knowledge-hero-copy>p{font-size:16px!important;line-height:1.62!important}
  .knowledge-hero-meta{margin-top:24px!important;padding-top:16px!important;gap:12px 20px!important}
  .knowledge-hero-meta span{font-size:12.5px!important;line-height:1.45!important}
  .knowledge-hero-meta strong{font-size:1.3rem!important}
  .knowledge-hero-image,.knowledge-hero-image img{height:220px!important;min-height:220px!important}
  .knowledge-index,.knowledge-content{width:calc(100% - 32px)!important}
  .knowledge-index{padding:46px 0 52px!important}
  .knowledge-index-head{gap:14px!important;padding-bottom:22px!important}
  .knowledge-index-head h2,.knowledge-content-head h2{font-size:clamp(2.25rem,9vw,2.85rem)!important;line-height:1!important}
  .knowledge-index-head>p{font-size:15.5px!important;line-height:1.62!important}
  .knowledge-category{padding:18px 4px!important;gap:7px 10px!important}
  .knowledge-category-no,.knowledge-category-count{font-size:12px!important;line-height:1.4!important}
  .knowledge-category-name{font-size:1.35rem!important;line-height:1.12!important}
  .knowledge-filter-shell>summary{font-size:15px!important;min-height:50px!important}
  .knowledge-filter-shell>summary small{font-size:12px!important}
  .knowledge-filter input,.knowledge-filter select,.knowledge-filter-button{min-height:50px!important;font-size:16px!important}
  .knowledge-active-filters span,.knowledge-active-filters>a{font-size:12.5px!important;line-height:1.4!important}
  .knowledge-active-filters span small{font-size:11.5px!important}
  .knowledge-result{padding:25px 0!important;gap:10px!important}
  .knowledge-result-date{font-size:13px!important}
  .knowledge-result h3{font-size:clamp(1.55rem,6.8vw,2rem)!important;line-height:1.08!important}
  .knowledge-result p{font-size:15.5px!important;line-height:1.64!important}
  .knowledge-result-meta{font-size:12px!important;line-height:1.45!important;flex-wrap:wrap!important}

  /* Kanzlei */
  .boutique-intro-grid,.boutique-values{width:calc(100% - 24px)!important}
  .boutique-intro-copy{padding:30px 20px 34px!important}
  .boutique-intro-copy h2{font-size:clamp(2.25rem,9vw,2.85rem)!important;line-height:1!important}
  .boutique-value{padding:22px 16px!important}
  .boutique-value p{font-size:14.5px!important;line-height:1.55!important}
  .editorial-grid{gap:38px!important}
  .quote-panel{padding:26px 20px!important}
  .quote-panel blockquote{font-size:clamp(1.8rem,7.8vw,2.45rem)!important;line-height:1.08!important}
  .boutique-haltung .value-card{padding:24px 18px!important}
  .boutique-haltung .value-card p{font-size:15px!important;line-height:1.62!important}
  .kanzlei-spaces{padding:54px 14px!important}
  .kanzlei-spaces-head{gap:18px!important;margin-bottom:26px!important}
  .kanzlei-spaces-head>p{font-size:15.5px!important;line-height:1.65!important}
  .kanzlei-gallery-editorial{gap:9px!important}
  .kanzlei-gallery-editorial figcaption small{font-size:11.5px!important;line-height:1.35!important}

  /* Tätigkeitsgebiete */
  .services-index{gap:38px!important}
  .services-index .services-intro h2{font-size:clamp(2.25rem,9vw,2.9rem)!important;line-height:1!important;max-width:100%!important}
  .services-index .services-intro .lead{font-size:16px!important;line-height:1.65!important}
  .services-index .service-list .service-row{grid-template-columns:minmax(0,1fr) 24px!important;gap:12px!important;padding:24px 0!important}
  .services-index .service-row h3{font-size:clamp(1.5rem,6.6vw,1.9rem)!important;line-height:1.08!important;margin-bottom:8px!important}
  .services-index .service-row .service-index-claim{display:block!important;font-size:15px!important;line-height:1.5!important;margin:4px 0 8px!important}
  .services-index .service-row p{display:block!important;font-size:14.5px!important;line-height:1.62!important;margin-top:5px!important}
  .service-detail{gap:38px!important}
  .service-sidebar a{padding:14px 0!important;font-size:14px!important;line-height:1.45!important}
  .service-body .lead{font-size:1.2rem!important;line-height:1.55!important}
  .service-body p,.service-body li{font-size:16px!important;line-height:1.7!important}
  .service-callout{margin:36px 0!important;padding:24px 18px!important}
  .service-callout span{font-size:15px!important}

  /* Beraterübersicht und Profile */
  .team-page{padding-top:54px!important;padding-bottom:64px!important}
  .team-intro{gap:14px!important;margin-bottom:34px!important}
  .team-intro>p{font-size:15.5px!important;line-height:1.65!important}
  .team-grid,.team-grid-full{display:grid!important;grid-template-columns:1fr!important;gap:38px!important;width:100%!important}
  .team-grid .person,.team-grid-full .person{width:100%!important;max-width:520px!important;margin:0 auto!important;transform:none!important}
  .person-image{aspect-ratio:4/4.8!important}
  .person-content{padding:18px 2px 2px!important}
  .person h3{font-size:1.65rem!important;line-height:1.08!important;margin-bottom:8px!important}
  .person p{font-size:14px!important;line-height:1.55!important}
  .person-extra{font-size:12.5px!important;line-height:1.55!important;letter-spacing:.055em!important}
  .person-badges{gap:6px!important}
  .person-badges span{font-size:11.5px!important;line-height:1.35!important}
  .profile.profile-premium{padding:112px var(--mobile-gutter) 64px!important;gap:34px!important}
  .profile-visual{max-width:520px!important;margin:0 auto!important}
  .profile-visual::before{inset:-10px 10px 10px -10px!important}
  .profile-caption{right:8px!important;bottom:12px!important;writing-mode:horizontal-tb!important;font-size:11.5px!important;letter-spacing:.1em!important;background:rgba(5,29,24,.82)!important;color:#fff!important;padding:6px 8px!important}
  .profile-content h1{font-size:clamp(2.45rem,10vw,3.25rem)!important;line-height:1!important}
  .profile-content .role{font-size:1.1rem!important;line-height:1.4!important}
  .profile-rule{margin:24px 0!important}
  .profile-bio{gap:16px!important}
  .profile-bio p,.profile-content .lead{font-size:16px!important;line-height:1.7!important}
  .profile-actions{width:100%!important;gap:10px!important;margin-top:30px!important;align-items:stretch!important;flex-direction:column!important}
  .profile-actions .btn{width:100%!important}
  .profile-focus,.profile-publications{margin-top:24px!important;padding-top:20px!important}
  .profile-focus-label{font-size:12px!important;line-height:1.4!important}
  .profile-focus-list span{font-size:13px!important;line-height:1.35!important;min-height:36px!important}
  .profile-article-meta{font-size:12px!important;line-height:1.4!important}
  .profile-article-card{padding:22px 18px!important}
  .profile-article-card p{font-size:15px!important;line-height:1.62!important}
  .profile-article-footer{font-size:13px!important;line-height:1.45!important}

  /* Kontakt */
  .page-intro-contact.contact-page-hero-fixed{width:100%!important;padding:112px var(--mobile-gutter) 32px!important}
  .page-intro-contact.contact-page-hero-fixed h1{max-width:100%!important;font-size:clamp(2.55rem,10.5vw,3.45rem)!important;line-height:.98!important}
  .page-intro-contact.contact-page-hero-fixed > p.lead,
  .contact-page-hero-fixed .contact-hero-direct .lead{font-size:16px!important;line-height:1.62!important}
  .contact-hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important;width:100%!important}
  .contact-hero-action,.contact-emergency-inline{width:100%!important;min-height:52px!important;padding:15px 16px!important}
  .contact-hero-action,.contact-hero-action a,.contact-emergency-inline,.contact-emergency-inline a{font-size:14.5px!important;line-height:1.45!important}
  .contact-page.contact-page-simple{padding-top:42px!important;padding-bottom:58px!important}
  .contact-detail{padding:18px 0!important}
  .contact-detail p,.contact-detail a{font-size:15px!important;line-height:1.58!important}
  .contact-emergency-number{font-size:1.45rem!important}
  .map-consent-panel{padding:26px 18px!important;min-height:320px!important}
  .map-consent-panel p,.map-remember{font-size:14.5px!important;line-height:1.58!important}
  .contact-location-visual{width:calc(100% - 24px)!important;margin-top:30px!important}
  .contact-location-visual>div{padding:28px 20px 32px!important}
  .contact-location-visual p{font-size:clamp(1.65rem,7.5vw,2.2rem)!important;line-height:1.1!important}
  .contact-location-address,.contact-location-address a{font-size:14.5px!important;line-height:1.55!important}

  /* Footer */
  .site-footer,footer.site-footer{padding:48px var(--mobile-gutter) 24px!important;gap:28px!important}
  .site-footer p,.site-footer a,.site-footer li,footer p,footer a,footer li{font-size:14px!important;line-height:1.55!important}
  .footer-column{margin-bottom:8px!important}
  .footer-brand-copy--lockup{max-width:100%!important;padding:14px!important}
  .footer-brand-lockup{width:min(100%,300px)!important}
  .footer-socials a{width:40px!important;height:40px!important}
  .footer-bottom{margin-top:24px!important;gap:9px!important}
}

@media (max-width:390px){
  :root{--mobile-gutter:16px}
  .site-header,header.site-header{padding-left:14px!important;padding-right:14px!important}
  .site-header .brand-copy b,.site-header .brand b{font-size:12.5px!important;letter-spacing:.03em!important}
  .site-header nav{padding-left:18px!important;padding-right:18px!important;font-size:1.62rem!important}
  .page-hero.page-hero-rich{padding-top:106px!important;padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important;padding-bottom:46px!important}
  .page-index .hero-copy{padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}
  .page-index .hero-copy h1{font-size:2.55rem!important}
  .page-index .hero-fact.hero-contact-card{left:12px!important;right:12px!important}
  .ref-journal{padding-top:84px!important}
  .publication-detail-hero-compact{padding-top:110px!important;padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}
  .publication-detail-hero h1{font-size:2.3rem!important}
  .knowledge-hero-copy{padding-top:106px!important;padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}
  .knowledge-hero h1{font-size:2.55rem!important}
  .profile.profile-premium{padding-top:106px!important;padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}
  .profile-content h1{font-size:2.35rem!important}
  .page-intro-contact.contact-page-hero-fixed{padding-top:106px!important;padding-left:var(--mobile-gutter)!important;padding-right:var(--mobile-gutter)!important}
  .page-intro-contact.contact-page-hero-fixed h1{font-size:2.45rem!important}
}


/* Dynamischer Footer-Markenblock: verwendet immer das im CMS konfigurierte aktuelle Logo. */
.footer-brand-lockup{display:flex;width:min(100%,390px);height:auto;align-items:center;gap:15px;background:transparent}
.footer-brand-lockup>img{display:block;width:72px!important;height:72px!important;object-fit:contain;flex:0 0 72px}
.footer-brand-lockup>span{display:flex;min-width:0;flex-direction:column;gap:5px}
.footer-brand-lockup strong{font-size:15px;line-height:1.2;letter-spacing:.13em}
.footer-brand-lockup small{font-size:10px;line-height:1.35;letter-spacing:.025em;color:rgba(216,224,220,.82)}
@media(max-width:640px){.footer-brand-lockup>img{width:62px!important;height:62px!important;flex-basis:62px}.footer-brand-lockup strong{font-size:13px}.footer-brand-lockup small{font-size:9px}}
