/*! tailwindcss v4.1.10 | MIT License | https://tailwindcss.com */@layer properties;:root,:host{--spacing: 0.25rem;--breakpoint-2xl: 96rem;--radius-md: 0.375rem;}.sr-only{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0,0,0,0);white-space: nowrap;border-width: 0;}.mx-auto{margin-inline: auto;}.flex{display: flex;}.grid{display: grid;}.max-w-screen-2xl{max-width: var(--breakpoint-2xl);}.grid-cols-1{grid-template-columns: repeat(1,minmax(0,1fr));}.flex-wrap{flex-wrap: wrap;}.items-center{align-items: center;}.items-start{align-items: flex-start;}.justify-between{justify-content: space-between;}.gap-3{gap: calc(var(--spacing) * 3);}.gap-4{gap: calc(var(--spacing) * 4);}.gap-5{gap: calc(var(--spacing) * 5);}.rounded-md{border-radius: var(--radius-md);}.overline{text-decoration-line: overline;}.shadow-2xl{--tw-shadow: 0 25px 50px -12px var(--tw-shadow-color,rgb(0 0 0 / 0.25));box-shadow: var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);}.md\:grid-cols-2{@media (width >= 48rem){grid-template-columns: repeat(2,minmax(0,1fr));}}.md\:grid-cols-3{@media (width >= 48rem){grid-template-columns: repeat(3,minmax(0,1fr));}}.md\:flex-nowrap{@media (width >= 48rem){flex-wrap: nowrap;}}@property --tw-shadow{syntax: "*";inherits: false;initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*";inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>";inherits: false;initial-value: 100%;}@property --tw-inset-shadow{syntax: "*";inherits: false;initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*";inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>";inherits: false;initial-value: 100%;}@property --tw-ring-color{syntax: "*";inherits: false;}@property --tw-ring-shadow{syntax: "*";inherits: false;initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*";inherits: false;}@property --tw-inset-ring-shadow{syntax: "*";inherits: false;initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*";inherits: false;}@property --tw-ring-offset-width{syntax: "<length>";inherits: false;initial-value: 0px;}@property --tw-ring-offset-color{syntax: "*";inherits: false;initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: "*";inherits: false;initial-value: 0 0 #0000;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,::before,::after,::backdrop{--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000;}}}


:root{color-scheme:light;--ink:#1d2b28;--green:#1c3730;--green-deep:#142821;--gold:#bb9a5b;--muted:#777a72;--paper:#fffcf4;--linen:#f0ede3;--line:#d9d2c1;--shadow:0 21px 60px rgba(31,39,28,.16)}
*{box-sizing:border-box}body{margin:0;min-width:300px;background:#eae8e0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.43;cursor:not-allowed}a{color:inherit}input,textarea,select{outline-color:#a38a57}h1,h2,h3,h4,p{margin-top:0}[v-cloak]{display:none!important}::selection{background:#d7c393;color:#172d27}
.top-rule{height:4px;background:linear-gradient(90deg,#b99558,#e0c98b,#9d7a3f)}.site-header{background:var(--green-deep);color:#f8f4e8;border-bottom:1px solid #395247}.header-inner{max-width:1540px;margin:auto;min-height:86px;padding:14px 36px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;text-decoration:none;gap:14px;min-width:0}.brand-seal{width:53px;height:53px;flex:0 0 auto;border:1px solid #b9a16d;border-radius:50%;display:grid;place-items:center;font-family:Georgia,serif;font-size:29px;color:#e2c88a;outline:1px solid #53634b;outline-offset:4px}.brand-lines{display:flex;flex-direction:column;gap:1px}.brand-overline{font-size:10px;font-weight:800;letter-spacing:.25em;color:#d9c18f}.brand-lines strong{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:26px;letter-spacing:-.02em}.header-links{display:flex;align-items:center;gap:30px}.header-link{background:transparent;color:#eee8d8;border:none;font-size:13px;letter-spacing:.03em;padding:10px 0}.header-link:hover{text-decoration:underline}.header-edition{font-size:10px;letter-spacing:.2em;color:#bdac7b;border-left:1px solid #4e625a;padding-left:27px}
.public-main{max-width:1540px;margin:auto;padding:33px 36px 37px}.page-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;max-width:1370px;margin:0 auto 25px}.eyebrow{color:#a2844d;letter-spacing:.18em;font-weight:800;font-size:10px}.page-intro h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;font-size:clamp(38px,4.2vw,57px);letter-spacing:-.05em;line-height:1.12;margin:7px 0 7px}.page-intro p{color:#676b62;font-size:14px;line-height:1.5;margin:0}.intro-flourish{display:flex;flex-direction:column;align-items:center;min-width:185px;color:#a79674}.intro-flourish span{font:58px Georgia,serif;line-height:.98}.intro-flourish small{font-size:10px;letter-spacing:.2em}
.reading-layout{display:grid;grid-template-columns:minmax(255px,290px) minmax(0,1fr);gap:30px;align-items:start}.catalog-panel{background:#f7f5ed;border:1px solid #dbd8cd;box-shadow:0 8px 24px rgba(28,38,26,.05);border-radius:5px;overflow:hidden;min-height:675px;padding:21px 0;position:sticky;top:16px;max-height:calc(100vh - 28px);overflow-y:auto}.panel-heading{display:flex;justify-content:space-between;align-items:center;color:#7f704f;font-size:10px;font-weight:900;letter-spacing:.19em;padding:0 20px 18px;border-bottom:1px solid #e3ddce}.sidebar-close{display:none;border:none;background:transparent;font-size:22px;color:#65746c}.search-field{margin:18px 15px 10px;display:flex;align-items:center;gap:7px;border:1px solid #d8d2c5;background:#fffdf8;border-radius:4px;padding:10px 10px;color:#7a857e}.search-field>span{font-size:22px;line-height:1}.search-field input{width:100%;min-width:0;outline:none;background:transparent;border:0;color:#26342d;font-size:12px}.search-field button{border:0;background:transparent;color:#84908b}.catalog-label{font-size:10px;font-weight:800;letter-spacing:.15em;color:#988055;padding:18px 19px 9px}.catalog-label.second-group{margin-top:22px;border-top:1px solid #e6e1d7;padding-top:24px}.catalog-item{text-align:left;display:flex;flex-direction:column;width:100%;padding:12px 20px;border:0;border-left:3px solid transparent;background:transparent;gap:3px;transition:background .12s}.catalog-item:hover,.catalog-item.selected{background:#eaece3;border-left-color:#a98b50}.catalog-item strong{font-size:13px;line-height:1.36;font-weight:650;color:#273c33}.catalog-code{font-size:10px;font-weight:800;color:#8e784e;letter-spacing:.08em}.catalog-item small{font-size:11px;color:#8d9188}.small-notice{font-size:12px;color:#85877e;line-height:1.6;padding:12px 20px}.catalog-bottom{margin:28px 19px 0;padding-top:15px;border-top:1px solid #e0dcce;display:flex;align-items:center;gap:10px;color:#8b8a7f;font-size:10px}.catalog-leaf{font-family:Georgia,serif;font-size:22px;color:#9d905c}
.book-area{min-width:0}.book-frame{position:relative;border-radius:4px 11px 11px 4px;background:#d3c0a0;padding:11px 12px 11px 17px;box-shadow:var(--shadow),inset 3px 0 #ae9773;min-height:657px}.book-spine{position:absolute;left:50%;top:10px;bottom:10px;width:22px;transform:translateX(-50%);background:linear-gradient(90deg,rgba(50,47,34,.13),rgba(44,37,20,.015) 32%,rgba(63,50,34,.08) 60%,transparent);z-index:2;pointer-events:none}.book-pages{display:grid;grid-template-columns:1fr 1fr;min-height:635px;box-shadow:inset 0 0 0 1px #e4dcc5}.book-sheet{background:var(--paper);padding:37px clamp(24px,3vw,53px) 46px;position:relative;min-width:0;box-shadow:inset 0 0 40px rgba(143,118,79,.045);overflow:hidden}.book-left{border-right:1px solid #e5decc;background:linear-gradient(90deg,#fffdf6 0%,#fffdf6 86%,#f2eedf 100%);text-align:center}.book-right{background:linear-gradient(90deg,#f5f0e3 0%,#fffdf6 6%,#fffdf6 100%)}.book-ornament{font-family:Georgia,serif;font-size:35px;color:#b3a278;margin:43px auto 21px}.volume-label{font-size:10px;letter-spacing:.19em;font-weight:800;color:#8e7c57;margin-bottom:40px}.cover-title{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(37px,4.1vw,58px);line-height:1.13;letter-spacing:-.045em;color:#1d342a}.cover-divider{width:84px;border-top:1px solid var(--gold);margin:29px auto}.cover-description{font-family:Georgia,serif;font-size:16px;line-height:1.72;color:#7e8176;max-width:330px;margin:0 auto 27px}.cover-seal{border:1px solid #d1c5a5;border-radius:50%;width:82px;height:82px;margin:40px auto 40px;display:grid;place-items:center;color:#bc9b62;font:43px Georgia,serif}.cover-bottom{font-size:11px;color:#938667;letter-spacing:.24em;font-weight:750;line-height:2}.cover-bottom span{font-size:10px;letter-spacing:.14em}.page-overline{display:flex;justify-content:space-between;gap:8px;text-align:left;font-size:9px;font-weight:800;letter-spacing:.14em;color:#9b8c6e;padding-bottom:15px;border-bottom:1px solid #dfd6c4;margin-bottom:25px}.page-overline span{opacity:.75}.right-title{font:normal 41px Georgia,serif;color:#263b30;margin:44px 0 15px}.heading-rule{width:42px;border-top:2px solid #b59c62;margin:19px auto 22px}.book-left .heading-rule{margin-left:auto;margin-right:auto}.book-right .heading-rule{margin-left:0}.foreword{font-family:Georgia,"Times New Roman",serif;font-size:16px;line-height:1.8;color:#5c6159;margin-bottom:19px}.preface-rule{height:1px;background:#e3dbcc;margin:35px 0 23px}.list-title,.law-toc-title{font-size:10px;letter-spacing:.2em;color:#8a7753;font-weight:800;margin-bottom:15px}.overview-law{display:grid;grid-template-columns:53px 1fr 12px;align-items:center;gap:7px;width:100%;border:0;border-bottom:1px solid #e7e0d3;padding:13px 0;background:transparent;text-align:left}.overview-law:hover{color:#9b7840}.overview-law span{font-size:11px;color:#988258}.overview-law strong{font-family:Georgia,serif;font-size:14px;font-weight:500;line-height:1.3}.folio{position:absolute;bottom:18px;left:0;right:0;text-align:center;font-family:Georgia,serif;color:#a69d8c;font-size:12px}.law-code-large{font:normal 51px Georgia,serif;color:#9c855a;margin-top:31px}.law-heading{font:normal clamp(28px,2.3vw,39px)/1.2 Georgia,serif;letter-spacing:-.035em;margin:8px 0 16px;color:#283b31;overflow-wrap:anywhere}.law-description{font-family:Georgia,serif;font-size:15px;line-height:1.7;color:#777c72}.law-meta{display:flex;justify-content:center;gap:13px;flex-wrap:wrap;font-size:10px;color:#999081;margin:27px 0 38px}.law-toc-title{text-align:left}.mini-toc{text-align:left;max-height:250px;overflow-y:auto}.mini-toc button{display:flex;gap:9px;width:100%;padding:10px 4px;text-align:left;background:transparent;border:0;border-bottom:1px dotted #d6cdbc;align-items:start}.mini-toc button:hover{background:#f4efe4}.mini-toc button span:first-child{white-space:nowrap;min-width:46px;font-weight:700;color:#866f47}.mini-toc button span:last-child{font:13px Georgia,serif;color:#555d55}.mini-toc p{font-size:11px;color:#8b8b81}.source-link{display:inline-block;margin-top:18px;font-size:11px;color:#846a43;text-underline-offset:3px}.page-loading{padding:30px;color:#8a887f;font:15px Georgia,serif}.sections-scroll{max-height:535px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#c5b89d transparent;padding-right:8px}.norm-article{text-align:left;border-bottom:1px solid #e0d8c9;padding:1px 0 22px;margin-bottom:28px}.norm-number{font:20px Georgia,serif;color:#a0804c;margin-bottom:5px}.norm-title{font:normal 23px/1.28 Georgia,serif;color:#2b4035;margin-bottom:15px}.norm-body{font:15px/1.73 Georgia,"Times New Roman",serif;white-space:pre-wrap;overflow-wrap:anywhere;color:#444c43;margin:0 0 12px}.priority-caption{font-size:10px;font-weight:800;color:#7f6b45;background:#efe7d4;border-left:3px solid #ab915d;padding:10px 11px;margin-bottom:13px}.override-heading{font:normal 17px Georgia,serif;margin-bottom:9px}.original-details{font-size:12px;color:#6a736a;border:1px solid #e5dcc8;padding:10px 13px;margin-top:10px}.original-details summary{cursor:pointer;font-weight:650}.original-details .norm-body{font-size:13px;margin-top:12px}.article-source{display:block;margin-top:12px;font-size:10px}.copy-link{border:0;background:transparent;color:#a08a61;font-size:10px;padding:7px 0}.copy-link:hover{text-decoration:underline}.pager{display:flex;justify-content:space-between;align-items:center;gap:7px;padding-top:7px;color:#8b867a;font-size:11px}.pager button{background:transparent;border:1px solid #d9d2c2;padding:7px 10px;border-radius:3px;color:#6a6e60}.pager button:hover:not(:disabled){background:#eee8d9}.mobile-contents{display:none}.below-book{display:flex;justify-content:space-between;color:#9a9a8f;letter-spacing:.12em;font-size:9px;padding:16px 10px 0}.public-footer{max-width:1540px;margin:0 auto;padding:10px 36px 22px;display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid #d6d4ca;color:#929188;font-size:10px}.public-footer small{font-size:9px;opacity:.9}.alert-error{background:#fce9e5;border:1px solid #efc8bf;color:#9e3b2f;padding:11px 15px;border-radius:4px;font-size:13px}.alert-success{background:#edf7f0;border:1px solid #badcc7;color:#2f6e44;padding:11px 15px;border-radius:4px;font-size:13px}
/* Verwaltung: bewusst unabhängig von der öffentlichen Buchansicht */
.admin-shell{min-height:100vh;background:#f2f3f1;color:#23352d}.admin-header{background:#172d27;color:white;padding:14px clamp(16px,4vw,64px);min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px}.admin-brand{display:flex;align-items:center;gap:12px}.mini-seal{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid #c2a76b;color:#dfca9a;font:25px Georgia,serif}.admin-brand>span:last-child{display:flex;flex-direction:column;gap:2px}.admin-brand b{font-family:Georgia,serif;font-size:19px;font-weight:500}.admin-brand small{font-size:10px;color:#bdbfb3;letter-spacing:.05em}.admin-head-right{display:flex;gap:13px;align-items:center;font-size:12px}.admin-main{max-width:1430px;padding:35px clamp(16px,3.5vw,55px) 75px;margin:0 auto}.admin-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px}.admin-toolbar h1{font-family:Georgia,serif;font-size:36px;line-height:1.2;font-weight:400;margin:5px 0}.admin-toolbar p{color:#7c857b;font-size:13px;margin:0}.toolbar-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{border:1px solid transparent;padding:10px 16px;border-radius:4px;font-size:12px;font-weight:750;transition:background .12s;white-space:nowrap}.btn-primary{background:#264c3e;color:white}.btn-primary:hover{background:#1a372d}.btn-outline{background:white;border-color:#cbd4cc;color:#294637}.btn-outline:hover{background:#e8eee9}.btn-ghost{background:transparent;border-color:#647a6c;color:#e1e8e0}.btn-danger{background:#fff6f5;color:#a3483e;border-color:#eec9c3}.btn-danger:hover{background:#ffe7e4}.btn.full{width:100%}.admin-tabs{display:flex;gap:25px;align-items:center;overflow-x:auto;border-bottom:1px solid #d2dad2;margin:31px 0 25px}.admin-tabs button{background:transparent;border:0;border-bottom:2px solid transparent;padding:11px 0 13px;white-space:nowrap;color:#78877d;font-size:13px;font-weight:650}.admin-tabs button.active{color:#224837;border-color:#b39251}.admin-alert{margin:0 0 17px}.admin-columns{display:grid;grid-template-columns:280px minmax(0,1fr);gap:23px;align-items:start}.admin-list{background:#fff;border:1px solid #e0e6df;padding:18px 0;min-height:330px;border-radius:6px}.admin-list-title{font-size:11px;font-weight:800;letter-spacing:.12em;color:#7b8d7e;padding:0 17px 15px;border-bottom:1px solid #e7ebe6;display:flex;justify-content:space-between}.admin-law-item{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:100%;text-align:left;border:none;border-left:3px solid transparent;background:transparent;padding:13px 19px}.admin-law-item:hover,.admin-law-item.active{border-left-color:#b49a62;background:#eff4ef}.admin-law-item b{font-size:13px;color:#273e32}.admin-law-item span{font-size:11px;color:#768278}.admin-law-item em{font-size:10px;font-style:normal;padding:3px 7px;border-radius:3px;background:#f1eee4;color:#897955}.admin-law-item em.published{background:#e2efe4;color:#317248}.admin-workspace{display:flex;flex-direction:column;gap:21px;min-width:0}.admin-card{background:white;border:1px solid #dfe7de;border-radius:6px;padding:clamp(18px,2.5vw,30px);box-shadow:0 8px 28px rgba(38,61,44,.025)}.admin-card-head{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:23px}.admin-card h2{font:normal 27px Georgia,serif;margin:4px 0 0}.admin-card h3{font:normal 22px Georgia,serif;margin:4px 0 0}.status-tag{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.09em;padding:7px 11px;border-radius:3px;background:#f7f0df;color:#9c8551}.status-tag.published{background:#e0f0e4;color:#31784d}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid label,.login-card label,.import-grid label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:750;color:#455749}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid textarea,.form-grid select,.login-card input,.import-grid input{display:block;width:100%;min-width:0;border-radius:4px;border:1px solid #cbd7ca;background:#fff;padding:11px 12px;color:#1d3226;font-weight:450;font-size:13px}.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus,.login-card input:focus,.import-grid input:focus{border-color:#a58a52;outline:2px solid #f4e9d4}.form-grid textarea{line-height:1.65;resize:vertical;white-space:pre-wrap}.form-grid label small{color:#7a8479;font-weight:400;font-size:11px}.form-actions{display:flex;align-items:center;gap:9px;justify-content:flex-start;margin-top:23px;flex-wrap:wrap}.section-chips{display:flex;flex-wrap:wrap;gap:8px;border-bottom:1px solid #e6ebe4;padding-bottom:19px;margin-bottom:23px}.section-chips button{border:1px solid #dbe4db;background:#fbfcfa;border-radius:4px;display:flex;align-items:center;gap:8px;max-width:100%;text-align:left;padding:9px 11px;font-size:11px;color:#596f5d}.section-chips button.active{border-color:#99b09f;background:#eaf4ed}.section-chips button span{max-width:210px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.section-chips button b{white-space:nowrap;color:#274635}.section-chips button i{width:7px;height:7px;border-radius:50%;background:#c8b281;flex:0 0 7px}.section-chips button i.published{background:#4b9774}.section-editor{padding-top:2px}.reference-box{padding:17px;background:#f8f7f2;border:1px solid #e9e5d7;border-radius:4px;margin:20px 0}.reference-box h4{font-weight:750;font-size:13px;margin:0 0 6px}.reference-box h4 span{font-weight:400;color:#929d8e;font-size:11px}.reference-box>p{font-size:12px;color:#78867c;margin:0 0 16px}.admin-empty{color:#79877c}.admin-loading{padding:80px 30px;text-align:center;color:#789087}.login-shell{display:grid;place-items:center;min-height:calc(100vh - 75px);padding:25px}.login-card{width:min(100%,410px);padding:37px;background:white;border:1px solid #e3e7e2;box-shadow:0 16px 45px rgba(23,40,30,.09);border-radius:5px;display:flex;flex-direction:column;gap:17px}.login-card h1{font:normal 34px Georgia,serif;margin:0}.login-card p:not(.alert-error){font-size:13px;color:#788579;margin:-8px 0 6px}.import-card>p{font-size:13px;color:#68796d;line-height:1.6;max-width:850px}.import-card>p a{text-decoration:underline;color:#866a36}.import-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:29px 0}.import-grid form{background:#f6f8f5;border:1px solid #e4ebe3;padding:20px;display:flex;flex-direction:column;gap:17px;border-radius:5px}.import-grid form h3{font:normal 22px Georgia,serif;margin:0}.import-grid form .btn{align-self:flex-start}.import-list-heading{font:normal 24px Georgia,serif;margin:30px 0 16px!important}.imported-row{border-top:1px solid #e7eee7;padding:13px 0;display:flex;justify-content:space-between;align-items:center;gap:12px}.imported-row>div{display:flex;flex-direction:column;gap:5px}.imported-row b{font-size:13px}.imported-row small{color:#829187;font-size:11px}.audit-row{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid #e3eae4;padding:14px 0;font-size:13px}.audit-row span{display:flex;flex-direction:column;gap:3px}.audit-row small{color:#929c93}.audit-row time{font-size:11px;color:#849186}.toast{position:fixed;bottom:26px;right:26px;border-radius:5px;background:#23493a;color:#fff;padding:13px 18px;box-shadow:0 7px 25px #0002;z-index:100;font-size:13px}
@media(max-width:1190px){.public-main{padding:25px 24px}.reading-layout{grid-template-columns:245px minmax(0,1fr);gap:19px}.book-sheet{padding:30px 24px 46px}.cover-title{font-size:40px}.law-heading{font-size:28px}.book-frame{min-height:640px}.book-pages{min-height:618px}.book-ornament{margin-top:28px}.catalog-panel{min-height:600px}}
@media(max-width:900px){.header-inner{padding:13px 23px}.reading-layout{grid-template-columns:minmax(0,1fr);gap:12px}.catalog-panel{position:static;max-height:none;min-height:0;display:none}.catalog-panel.catalog-open{display:block}.sidebar-close,.mobile-contents{display:block}.mobile-contents{background:#f6f4ec;border:1px solid #d9d5c7;padding:12px 18px;width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center;color:#3d5847;font-size:13px;border-radius:4px;margin-bottom:12px}.book-frame{min-height:600px}.book-pages{min-height:580px}.book-sheet{padding:28px clamp(22px,4vw,42px) 46px}.admin-columns{grid-template-columns:230px minmax(0,1fr);gap:13px}.admin-main{padding:22px 18px 55px}}
@media(max-width:700px){.header-inner{min-height:72px}.brand-seal{width:40px;height:40px;font-size:23px}.brand-lines strong{font-size:20px}.brand-overline{font-size:9px}.header-links{gap:10px}.header-link{font-size:11px}.header-edition{display:none}.page-intro{margin:0 auto 19px}.page-intro h1{font-size:40px}.intro-flourish{display:none}.public-main{padding:24px 12px 28px}.book-frame{padding:8px 8px 8px 11px;min-height:590px}.book-spine{display:none}.book-pages{grid-template-columns:minmax(0,1fr);min-height:570px}.book-left{display:none}.book-sheet{min-height:570px;padding:29px clamp(23px,6vw,40px) 46px;background:#fffcf5}.right-title{margin-top:18px}.sections-scroll{max-height:540px}.norm-body{font-size:15px}.foreword{font-size:16px}.page-overline{margin-bottom:15px}.below-book{padding:14px 5px 0}.below-book span{font-size:8px}.public-footer{padding:12px 15px 20px;flex-wrap:wrap}.admin-toolbar{align-items:flex-start;flex-direction:column}.admin-columns{grid-template-columns:minmax(0,1fr)}.admin-list{min-height:0;max-height:250px;overflow-y:auto}.admin-list-title{padding-bottom:9px}.admin-law-item{padding:10px 14px}.admin-tabs{gap:16px}.import-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:460px){.header-links .header-link:first-child{display:none}.brand{gap:10px}.brand-lines strong{font-size:18px}.brand-overline{letter-spacing:.16em}.site-header .header-inner{padding:13px 16px}.page-intro h1{font-size:35px}.page-intro p{font-size:12px}.form-grid,.form-grid.three{grid-template-columns:minmax(0,1fr)}.form-grid .wide{grid-column:auto}.admin-card-head{align-items:flex-start;flex-direction:column}.admin-header{padding:13px}.admin-brand b{font-size:17px}.admin-brand small{font-size:9px}.admin-head-right>span{display:none}.audit-row{align-items:flex-start;flex-direction:column;gap:5px}.admin-toolbar h1{font-size:31px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Vordersachsen – Oberfläche der öffentlichen Gesetzessammlung.
   Bereits kompiliertes Tailwind v4 bleibt im KeyHelp-Paket lokal enthalten. */
:root {
  --navy: #0D1B2A;
  --deep-blue: #1E3A5F;
  --accent-blue: #3B82F6;
  --gold: #D4AF37;
  --ink: #16243a;
  --green: #1E3A5F;
  --green-deep: #0D1B2A;
  --paper: #fffcf6;
  --linen: #f4f2ec;
  --line: #d8dce3;
  --shadow: 0 18px 54px rgba(13,27,42,.12);
}
body { background: #f5f6f8; color: var(--ink); }
a, button { -webkit-tap-highlight-color: transparent; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 3px solid #3B82F6; outline-offset: 3px; }
.top-rule { height: 3px; background: linear-gradient(90deg,#D4AF37,#e9cf79,#D4AF37); }
.site-header { position: relative; z-index: 3; background: #0D1B2A; border-bottom: 1px solid rgba(212,175,55,.4); color: #fff; }
.header-inner { max-width: 1550px; min-height: 78px; padding: 10px clamp(18px,4.4vw,75px); }
.brand { gap: 16px; }
.brand-seal { display: block; width: 55px; height: 55px; object-fit: contain; border: none; border-radius: 0; outline: none; filter: drop-shadow(0 3px 5px #0007); }
.brand-lines { border-left: 2px solid #D4AF37; padding-left: 16px; gap: 3px; }
.brand-overline { font-size: 9px; color: #d8c48c; letter-spacing: .18em; font-weight: 700; }
.brand-lines strong { font-size: clamp(19px,2.15vw,29px); color: #fff; letter-spacing: -.02em; white-space: nowrap; }
.header-links { gap: clamp(12px,3vw,43px); }
.header-link { position: relative; padding: 14px 2px; color: #ecf1f8; font-size: 14px; font-weight: 520; letter-spacing: .01em; white-space: nowrap; }
.header-link:hover { text-decoration: none; color: #fff; }
.header-link:after { position: absolute; content: ''; left: 0; right: 0; bottom: 6px; height: 2px; background: #D4AF37; transform: scaleX(0); transform-origin: left; transition: transform .15s; }
.header-link.active:after, .header-link:hover:after { transform: scaleX(1); }
.header-search { display: inline-flex; align-items: center; gap: 8px; }
.header-search svg { width: 19px; height: 19px; }
/* Startseite */
.landing-main { min-width: 0; background: #fff; }
.landing-hero { position: relative; display: flex; align-items: flex-end; min-height: clamp(245px,23vw,345px); overflow: hidden; background-color: #0D1B2A; background-image: url('/assets/brand/landesbanner.webp'); background-position: center 47%; background-size: cover; border-bottom: 3px solid #D4AF37; }
.hero-shade { position:absolute; inset:0; background: linear-gradient(90deg,rgba(13,27,42,.94) 0%,rgba(13,27,42,.81) 22%,rgba(13,27,42,.33) 40%,transparent 57%),linear-gradient(0deg,rgba(13,27,42,.48),transparent 43%); pointer-events: none; }
.hero-caption { position: relative; z-index: 1; width: min(1460px,100%); margin: 0 auto; padding: 25px clamp(24px,6vw,96px) 39px; color:#fff; }
.hero-kicker { display: block; margin-bottom: 12px; font-size: 10px; font-weight: 740; letter-spacing: .25em; color: #f0dc9b; }
.hero-caption h1 { font: 500 clamp(43px,4.2vw,68px)/.98 Georgia,'Times New Roman',serif; letter-spacing: -.035em; margin: 0 0 23px; text-shadow: 0 2px 20px #0007; }
.hero-gold-line { display: block; width: 100px; height: 3px; background: #D4AF37; }
.landing-content { max-width: 1350px; padding: 19px clamp(18px,4vw,58px) 31px; margin: 0 auto; text-align: center; }
.intro-ornament { display:flex; align-items:center; gap:17px; justify-content:center; color:#b78a13; margin: 0 auto 14px; }
.intro-ornament i { width:76px; height:1px; background:linear-gradient(90deg,transparent,#D4AF37); }
.intro-ornament i:last-child { transform: rotate(180deg); }
.intro-ornament svg { width:29px; height:29px; }
.landing-greeting { color:#0d2040; font: 500 clamp(22px,2.3vw,30px)/1.35 Georgia,'Times New Roman',serif; letter-spacing:-.017em; margin: 0 0 7px; }
.landing-lead { color:#46546b; font: 16px/1.6 Georgia,'Times New Roman',serif; margin: 0 auto 26px; max-width:960px; }
.home-search-wrap { width: min(840px,100%); margin: 0 auto 27px; position: relative; }
.home-search { height: 58px; border:1px solid #7c99c2; box-shadow: 0 8px 26px #0d1b2a14; background:#fff; border-radius: 9px; display:flex; align-items:center; overflow:hidden; text-align:left; }
.home-search > svg { width:22px; height:22px; margin-left:19px; margin-right:15px; color:#183f70; flex-shrink:0; }
.home-search input { flex:1; min-width:0; border:0; outline:0; background: transparent; font-size: 16px; color:#14263f; padding: 12px 0; }
.home-search input:focus-visible { outline:0; }
.home-search input::placeholder { color:#68788b; opacity:1; }
.home-search button { height:100%; width:77px; background: linear-gradient(150deg,#244e84,#001C4A); border:0; border-left:1px solid #D4AF37; display:grid; place-items:center; color:#fff; }
.home-search button:hover { background: #1E3A5F; }
.home-search button svg { height:24px; width:24px; }
.home-results { position: absolute; z-index: 4; top: 64px; left:0; right:0; background: #fff; border: 1px solid #c9d5e4; border-radius: 8px; box-shadow: 0 18px 36px #0d1b2a35; padding: 7px; text-align:left; max-height:310px; overflow-y:auto; }
.home-result { display:flex; width:100%; gap:5px; align-items:flex-start; padding: 10px 13px; border:0; border-bottom: 1px solid #eef0f4; background:transparent; text-align:left; color:#1e2d41; flex-direction:column; }
.home-result:hover { background: #f2f6fd; }
.home-result span { color:#866e2e; font-size:10px; letter-spacing:.09em; font-weight:750; }
.home-result strong { font-size:13px; }
.home-result small { color:#6b7789; font-size:11px; }
.feature-grid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap:19px; margin:0 auto 29px; }
.feature-card { background: #fff; border: 1px solid #dce2e9; border-bottom: 2px solid #D4AF37; border-radius:9px; padding: 20px 19px; display:flex; align-items:center; gap:16px; text-align:left; min-width:0; box-shadow: 0 4px 19px #0d1b2a08; transition:transform .15s,box-shadow .15s; }
.feature-card:hover { transform:translateY(-3px); box-shadow:0 12px 28px #0d1b2a18; }
.feature-icon { display:grid; place-items:center; width:55px; height:55px; min-width:55px; color:#143c70; background:#f0f4f9; border-radius:9px; }
.feature-icon svg { width:34px; height:34px; }
.feature-copy { border-left:2px solid #D4AF37; padding-left:14px; display:flex; flex-direction:column; gap:5px; }
.feature-copy strong { font: 600 clamp(17px,1.7vw,22px)/1.2 Georgia,'Times New Roman',serif; color:#162948; }
.feature-copy small { color:#4d5868; font-size:12px; line-height:1.5; }
.section-heading { display:flex; align-items:center; gap:28px; justify-content:center; margin: 4px auto 18px; }
.section-heading i { height:1px; width:min(21%,200px); background:linear-gradient(90deg,transparent,#D4AF37); }
.section-heading i:last-child { transform:rotate(180deg); }
.section-heading h2 { color:#13284a; font:600 28px/1.2 Georgia,'Times New Roman',serif; margin:0; }
.collection-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:19px; margin-bottom: 22px; }
.collection-tile { min-height:86px; border:1px solid #cbd6e4; border-bottom:3px solid #3B82F6; border-radius:8px; background:linear-gradient(115deg,#fff 0%,#f2f6fb 100%); display:flex; gap:18px; align-items:center; text-align:left; padding:15px 19px; color:#0e3058; box-shadow: 0 6px 15px #0d1b2a09; transition:transform .14s; }
.collection-tile:hover { transform:translateY(-2px); border-color:#a3b7d1; }
.collection-tile > span:nth-child(2) { border-left: 2px solid #D4AF37; padding-left:18px; font:600 clamp(18px,2vw,24px)/1.3 Georgia,'Times New Roman',serif; white-space:nowrap; }
.collection-icon { width:33px; height:35px; min-width:33px; }
.collection-icon svg { width:100%; height:100%; }
.collection-tile .tile-arrow { margin-left:auto; font:normal 20px Georgia,serif; color:#7b8da4; }
.tile-bund { border-bottom-color: #D4AF37; }
.tile-verordnung { border-bottom-color:#8F0106; }
.landing-cta { display:inline-flex; align-items:center; justify-content:center; gap:13px; padding:11px 30px; min-height:50px; border: 1px solid #D4AF37; box-shadow:0 7px 20px #0d1b2a30; background:linear-gradient(150deg,#244d7e,#001C4A); border-radius:8px; color:#fff; font:500 19px Georgia,'Times New Roman',serif; }
.landing-cta:hover { filter:brightness(1.13); }
.landing-cta svg { width:27px; height:27px; }
.public-footer { max-width:none; background: #0D1B2A; border-top:2px solid #D4AF37; color:#dce5f0; min-height:55px; padding:14px clamp(20px,6vw,90px); font-size:10px; line-height:1.5; }
.public-footer small { color:#bfcbdc; font-size:10px; opacity:.9; }
/* Bibliothek / Buchansicht: die ruhige Haptik bleibt bestehen, Grün wird durch Tiefblau ersetzt. */
.public-main { background:#f5f6f8; }
.page-intro h1 { color:#142946; }
.page-intro p { color:#68758a; }
.page-intro .eyebrow { color:#896d27; }
.intro-flourish { color:#c19f38; }
.catalog-panel { background:#fff; border:1px solid #d9e0e9; box-shadow:0 10px 26px #0d1b2a10; }
.panel-heading,.catalog-label { color:#806b35; }
.catalog-item:hover,.catalog-item.selected { background:#f0f5fc; }
.catalog-item.selected { border-left-color:#D4AF37; }
.catalog-item strong { color:#1e3657; }
.catalog-code { color:#4d719f; }
.book-frame { background:#d7cbb3; }
.book-left .cover-title,.law-heading,.right-title,.norm-title { color:#19304e; }
.book-left .volume-label,.page-overline { color:#987934; }
.priority-caption { color:#11436e; border-left-color: #D4AF37; background:#f3f6fa; }
.copy-link,.pager button { color:#1E3A5F; }
.mobile-contents { color:#1E3A5F; }
/* Verwaltung ist weiterhin separat, aber im selben Erscheinungsbild. */
.admin-shell { background:#f5f6f9; color:#1d2e46; }
.admin-header { background:#0D1B2A; border-bottom:2px solid #D4AF37; }
.admin-brand .mini-seal { border:0; border-radius:0; display:block; width:41px; height:41px; object-fit:contain; }
.btn-primary { background:#1E3A5F; }
.btn-primary:hover { background:#001C4A; }
.btn-outline { border-color:#b8c8d9; color:#1E3A5F; }
.btn-outline:hover { background:#eff4fb; }
.admin-tabs button.active { border-bottom-color:#D4AF37; color:#1E3A5F; }
.admin-law-item.active,.admin-law-item:hover { background:#f1f5fb; border-left-color:#D4AF37; }
.admin-law-item b,.admin-card h2,.admin-card h3 { color:#1d304d; }
.admin-card,.admin-list,.login-card { border-color:#d8e1eb; }
.form-grid label,.login-card label,.import-grid label { color:#334a67; }
.form-grid input,.form-grid select,.form-grid textarea,.login-card input,.import-grid input { border-color:#c4cedd; color:#122840; }
.toast { background:#1E3A5F; }
@media (max-width:900px) {
  .header-inner { padding-left:20px; padding-right:20px; }
  .landing-hero { min-height:260px; }
  .feature-card { padding:16px 12px; gap:10px; }
  .feature-icon { min-width:41px; width:41px; height:45px; }
  .feature-icon svg { width:26px; height:26px; }
  .feature-copy { padding-left:9px; }
  .feature-copy small { font-size:11px; }
  .collection-tile { padding:15px 12px; gap:10px; }
  .collection-tile > span:nth-child(2) { padding-left:11px; }
}
@media (max-width:700px) {
  .header-inner { min-height:69px; padding:10px 15px; }
  .brand-seal { width:37px; height:43px; }
  .brand-lines { padding-left:10px; }
  .brand-lines strong { font-size:17px; }
  .brand-overline { font-size:8px; }
  .header-links { gap:11px; }
  .header-link { font-size:11px; padding:11px 0; }
  .header-collection { display:none; }
  .header-search span { display:none; }
  .header-search svg { width:20px; height:20px; }
  .landing-hero { min-height:220px; background-size:cover; background-position:center center; }
  .hero-shade { background: linear-gradient(90deg,#0d1b2ae8,#0d1b2a7b 38%,#0d1b2a08 85%),linear-gradient(0deg,#0d1b2a70,transparent 70%); }
  .hero-caption { padding: 20px 25px 26px; }
  .hero-caption h1 { font-size:38px; margin-bottom:16px; }
  .hero-kicker { font-size:8px; letter-spacing:.13em; }
  .hero-gold-line { width:70px; height:2px; }
  .landing-content { padding: 22px 18px 27px; }
  .landing-greeting { font-size:24px; }
  .landing-lead { font-size:15px; margin-bottom:21px; }
  .home-search { height:53px; }
  .home-search button { width:59px; }
  .home-search input { font-size:14px; }
  .home-search > svg { width:18px; height:18px; margin-left:13px; margin-right:10px; }
  .feature-grid { grid-template-columns:1fr; gap:11px; margin-bottom:27px; }
  .feature-card { padding:13px 16px; }
  .feature-copy strong { font-size:20px; }
  .feature-copy small { font-size:12px; }
  .feature-icon { width:49px; min-width:49px; height:49px; }
  .feature-icon svg { width:30px; height:30px; }
  .collection-grid { grid-template-columns:1fr; gap:11px; margin-bottom:24px; }
  .collection-tile { min-height:67px; padding:11px 19px; }
  .collection-tile > span:nth-child(2) { font-size:21px; }
  .collection-icon { width:29px; height:31px; min-width:29px; }
  .section-heading { gap:18px; }
  .section-heading h2 { font-size:26px; }
  .public-footer { flex-direction:column; text-align:center; align-items:center; justify-content:center; gap:3px; padding:14px 18px; }
  .brand-lines strong { white-space:normal; }
}
@media (max-width:400px) {
  .brand { gap:7px; }
  .brand-lines strong { font-size:15px; }
  .header-links { gap:9px; }
  .header-search svg { width:18px; }
  .hero-caption h1 { font-size:34px; }
}

/* Final responsive hero arrangement: full heraldic banner is visible. */
@media(min-width:901px){.landing-hero{min-height:clamp(365px,29.5vw,445px)}}
@media(min-width:701px) and (max-width:900px){.landing-hero{min-height:330px}}
@media(max-width:700px){
 .landing-hero{display:block;min-height:0;padding-top:205px;background-color:#fff;background-size:auto 205px;background-position:center top;background-repeat:no-repeat}
 .hero-shade{display:none}
 .hero-caption{width:100%;padding:17px 18px 20px;text-align:center;color:#0D1B2A;background:#fff}
 .hero-kicker{color:#8d722f;margin-bottom:6px;font-size:9px}
 .hero-caption h1{font-size:34px;line-height:1.08;text-shadow:none;margin:0 0 13px}
 .hero-gold-line{margin:0 auto}
}
 
/* === Layout-Revision 2: kompaktes Wappen-Hero, leichte Lesefläche, CEF-Scrollbar === */
html, body { scrollbar-width: none; -ms-overflow-style: none; }
html::-webkit-scrollbar, body::-webkit-scrollbar { display:none; width:0; height:0; }
body { overflow-x:hidden; }
.landing-hero {
  height: 262px;
  min-height: 0;
  padding: 0;
  display: block;
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: #0D1B2A;
  border-bottom: 3px solid #D4AF37;
}
.landing-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background: url('/assets/brand/landesbanner.webp') center 54% / cover no-repeat;
  opacity: .84;
}
.landing-hero .hero-shade {
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(90deg, rgba(13,27,42,.04) 0%, rgba(13,27,42,.72) 27%, rgba(13,27,42,.995) 39%, rgba(13,27,42,.995) 62%, rgba(13,27,42,.63) 74%, rgba(13,27,42,.08) 100%),
    linear-gradient(0deg, rgba(13,27,42,.56), rgba(13,27,42,.02) 76%);
  pointer-events:none;
}
.landing-hero .hero-caption {
  position:relative;
  z-index:1;
  width:100%;
  max-width:950px;
  height:100%;
  padding: 8px 22px;
  margin:0 auto;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:25px;
  text-align:left;
  background:transparent;
  color:#fff;
}
.hero-crest {
  display:block;
  width:245px;
  height:245px;
  flex: 0 0 245px;
  object-fit:contain;
  filter:drop-shadow(0 7px 13px rgba(0,0,0,.35));
}
.hero-title-frame {
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  border-left:2px solid #D4AF37;
  padding-left:28px;
}
.landing-hero .hero-kicker {
  display:block;
  font:700 10px/1.4 ui-sans-serif,system-ui,sans-serif;
  letter-spacing:.22em;
  color:#e9d79f;
  margin:0 0 11px;
}
.landing-hero .hero-caption h1 {
  color:#fff;
  font: 500 clamp(45px,3.75vw,65px)/.96 Georgia,"Times New Roman",serif;
  letter-spacing:-.025em;
  margin:0;
  text-shadow: 0 2px 12px rgba(0,0,0,.38);
}
.landing-hero .hero-gold-line {
  display:block;
  height:3px;
  width:120px;
  margin:15px 0 0;
  background:#D4AF37;
}
.landing-content {
  max-width:1390px;
  padding:15px clamp(22px,3vw,45px) 25px;
}
.intro-ornament { margin-bottom:7px; }
.intro-ornament svg { width:25px; height:25px; }
.landing-greeting { font-size:clamp(24px,2.2vw,30px); margin-bottom:4px; }
.landing-lead { font-size:15px; line-height:1.5; margin-bottom:19px; }
.home-search-wrap { margin-bottom:24px; }
.home-search { height:57px; }
.feature-grid { gap:19px; margin-bottom:25px; }
.feature-card { min-height:97px; padding:16px 18px; }
.section-heading { margin: 2px auto 15px; }
.collection-grid { margin-bottom:19px; }
.collection-tile {
  min-height:80px;
  position:relative;
  overflow:hidden;
  background: linear-gradient(110deg, #fff 0%, #f3f6fb 72%, #e9eff8 100%);
}
.collection-tile::before {
  content:"";
  pointer-events:none;
  position:absolute;
  right:24px;
  top:-20px;
  bottom:-15px;
  width:115px;
  opacity:.075;
  border:4px solid #173d6d;
  border-radius:46% 46% 0 0;
  box-shadow:inset 0 15px #173d6d, -25px 12px 0 -13px #173d6d, 25px 12px 0 -13px #173d6d;
  transform:skewX(-11deg);
}
.collection-tile > span { position:relative; z-index:1; }
.landing-cta { min-height:47px; padding:9px 28px; }
.public-footer { min-height:43px; padding:9px 20px; }

@media(max-width:900px) {
  .landing-hero { height:235px; min-height:0; padding:0; }
  .landing-hero .hero-caption { gap:13px; }
  .hero-crest { width:205px; height:205px; flex-basis:205px; }
  .hero-title-frame { padding-left:19px; }
  .landing-hero .hero-caption h1 { font-size:clamp(34px,5vw,52px); }
  .feature-card { padding:14px 12px; }
}
@media(max-width:700px) {
  .landing-hero { height:214px; min-height:0; padding:0; }
  .landing-hero::before { background-position:center 52%; background-size:cover; }
  .landing-hero .hero-shade {
    display:block;
    background: linear-gradient(90deg, rgba(13,27,42,.45), rgba(13,27,42,.998) 34%, rgba(13,27,42,.995) 75%, rgba(13,27,42,.40));
  }
  .landing-hero .hero-caption {
    display:flex;
    flex-direction:row;
    gap:3px;
    padding:9px 8px;
    align-items:center;
    text-align:left;
    height:100%;
    background:transparent;
    color:#fff;
  }
  .hero-crest { flex-basis:126px; width:126px; height:170px; }
  .hero-title-frame { padding-left:11px; border-left-width:1px; }
  .landing-hero .hero-kicker { font-size:7px; margin-bottom:7px; letter-spacing:.1em; color:#e9d79f; }
  .landing-hero .hero-caption h1 { font-size:clamp(29px,6vw,37px); line-height:1.03; color:#fff; text-shadow:0 2px 9px #0008; margin:0; }
  .landing-hero .hero-gold-line { margin:9px 0 0; width:64px; height:2px; }
  .landing-content { padding:18px 16px 23px; }
  .landing-greeting { font-size:23px; }
  .feature-card { min-height:80px; padding:13px 15px; }
  .collection-tile { min-height:67px; }
}
@media(max-width:370px) {
  .hero-crest { flex-basis:105px; width:105px; height:155px; }
  .landing-hero .hero-caption h1 {font-size:28px;}
  .landing-hero .hero-kicker {font-size:6px;}
}

/* Dezente Rechtsgebiets-Motive als lokale SVG-Assets statt großflächiger Farbbilder. */
.collection-tile::before { display:none; }
.collection-tile { background-color:#fff; background-repeat:no-repeat; background-size:cover, 150px auto; background-position:center, right 12px center; }
.tile-land { background-image:linear-gradient(100deg,#fff 45%,#f4f7fbdd 100%),url('/assets/illustrations/landesrecht.svg'); }
.tile-bund { background-image:linear-gradient(100deg,#fff 45%,#f4f7fbdd 100%),url('/assets/illustrations/bundesrecht.svg'); }
.tile-verordnung { background-image:linear-gradient(100deg,#fff 45%,#f9f6f6aa 100%),url('/assets/illustrations/verordnungen.svg'); }

/* Footer sitzt auch bei hohen Desktop-Auflösungen am unteren Fensterrand. */
#app { min-height:100vh; min-height:100dvh; display:flex; flex-direction:column; }
.landing-main, .public-main { flex:1 0 auto; }
.public-footer { margin-top:auto; }
.admin-shell { width:100%; }
