:root{--ink:#10243e;--ink2:#304b68;--blue:#0b3d91;--blue2:#155db3;--mint:#087f75;--mint2:#0b6f67;--bg:#f5f8fc;--card:#fff;--line:#d7e1ec;--soft:#eaf1f8;--focus:#ffbf47;--danger:#9f1d24;--shadow:0 18px 50px rgba(17,43,75,.10);--r:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--blue);text-underline-offset:3px}button,input,textarea,select{font:inherit}button{cursor:pointer}.skip{position:fixed;left:12px;top:10px;transform:translateY(-150%);z-index:1000;background:#fff;color:#000;padding:12px 16px;border:3px solid var(--focus);border-radius:10px}.skip:focus{transform:none}.wrap{width:min(1180px,calc(100% - 40px));margin:auto}.maintenance{background:#fff1d6;color:#4f3500;padding:10px 20px;text-align:center;border-bottom:1px solid #e1bd6c}.topbar{position:sticky;top:0;z-index:50;background:rgba(245,248,252,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(151,173,197,.35)}.topbar-inner{height:84px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand img{display:block;width:min(275px,38vw);height:auto}.desktop-nav{display:flex;align-items:center;gap:24px;margin-left:auto}.desktop-nav a{text-decoration:none;color:var(--ink);font-weight:650}.desktop-nav a:hover{text-decoration:underline}.install-btn,.secondary{border:1px solid #9db1c7;background:#fff;color:var(--ink);font-weight:750;padding:12px 16px;border-radius:13px;min-height:44px}.hero{display:grid;grid-template-columns:.84fr 1.16fr;gap:58px;align-items:center;padding:74px 0 60px}.trust{display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid #bcd2e8;border-radius:999px;background:#fff;color:#36526f;font-size:.86rem;font-weight:700}.dot{width:9px;height:9px;background:var(--mint);border-radius:50%}.hero h1,.content-page h1{font-size:clamp(3rem,6.8vw,6.2rem);line-height:.96;letter-spacing:-.055em;margin:20px 0 26px}.hero h1 span{color:var(--blue)}.lede{font-size:clamp(1.15rem,2vw,1.42rem);color:var(--ink2);max-width:730px}.assistant-card,.feature-card,.issue-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow)}.assistant-card{padding:28px}.assistant-head{display:flex;gap:20px;align-items:flex-start;justify-content:space-between}.assistant-head h2,.feature-card h2,.issue-card h2,.section-head h2{font-size:clamp(1.65rem,3vw,2.55rem);line-height:1.08;letter-spacing:-.03em;margin:6px 0 18px}.kicker{font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:.11em;color:var(--mint2)}.ai-badge{font-size:.75rem;font-weight:750;padding:7px 10px;background:#e7f6f3;color:#075e57;border-radius:999px;border:1px solid #addbd5}.tool-form{display:grid;gap:11px}.tool-form label{font-weight:720;color:#213b57}.optional{color:#607891;font-weight:500;font-size:.9em}.tool-form textarea,.tool-form input,.tool-form select{width:100%;border:1.5px solid #9bb1c8;border-radius:13px;background:#fff;color:#10243e;padding:13px 14px;min-height:48px}.tool-form textarea{resize:vertical}.tool-form input:focus,.tool-form textarea:focus,.tool-form select:focus,.primary:focus,.secondary:focus,.quick-card:focus,.app-nav a:focus,.app-nav button:focus{outline:4px solid var(--focus);outline-offset:2px;border-color:#000}.form-row{display:grid;grid-template-columns:minmax(120px,.55fr) 1.45fr;gap:12px;align-items:end}.primary{border:0;border-radius:13px;background:var(--blue);color:#fff;font-weight:800;min-height:50px;padding:13px 18px;box-shadow:0 9px 24px rgba(11,61,145,.20)}.primary:hover{background:#082f71}.primary.inline{display:inline-flex;text-decoration:none;align-items:center}.result{margin-top:16px;background:#eef7ff;border-left:5px solid var(--blue);border-radius:12px;padding:16px;color:#173955;white-space:pre-wrap}.result.error{background:#fff0f1;border-color:var(--danger);color:#6b1217}.result .sources{white-space:normal;margin-top:15px;border-top:1px solid #c5d8e9;padding-top:12px}.result .source{display:block;padding:8px 0}.quick{padding:36px 0 75px}.section-head{max-width:820px;margin-bottom:28px}.section-lede{font-size:1.12rem;color:var(--ink2)}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.quick-card{text-align:left;border:1px solid var(--line);background:#fff;border-radius:18px;padding:20px;min-height:150px;display:flex;flex-direction:column;gap:8px;box-shadow:0 7px 22px rgba(22,53,87,.05);color:var(--ink)}.quick-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.quick-icon{font-size:1.65rem}.quick-card strong{font-size:1.08rem}.quick-card span:last-child{color:#5c748d}.feature-zone{padding:72px 0;background:#eaf1f8;border-block:1px solid #d7e1ec}.features{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}.feature-card{padding:30px}.feature-letter{display:grid;grid-template-columns:.85fr 1.15fr;gap:28px}.feature-letter .result{grid-column:1/-1}.file-drop{border:2px dashed #88a7c6!important;background:#f7fbff;border-radius:14px;padding:18px!important;display:grid;gap:2px;cursor:pointer}.file-drop span{font-size:.86rem;color:#607891}.file-drop input{padding:8px 0;border:0;min-height:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-bottom:75px}.steps>div{border-top:4px solid var(--blue);background:#fff;padding:24px;border-radius:0 0 18px 18px}.steps b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#e4edfa;color:var(--blue);margin-bottom:18px}.steps h3{margin:0 0 8px;font-size:1.2rem}.steps p{margin:0;color:var(--ink2)}#so-gehts{padding-top:75px}.issue-section{padding:0 0 80px}.issue-card{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:32px}.compact .form-row{grid-template-columns:.45fr 1fr}.privacy-note{margin-top:18px;padding:13px 15px;border:1px solid #c7d8e8;background:#f7fbff;border-radius:13px;color:var(--ink2)}.photo-upload{display:grid;gap:5px;border:1.5px dashed #86a6c4;border-radius:14px;padding:15px;background:#f8fbff;cursor:pointer}.photo-upload>span{font-size:.86rem;color:#607891;font-weight:550}.photo-upload input{border:0!important;padding:8px 0 0!important;min-height:0!important;background:transparent!important}.photo-status{font-size:.88rem;color:#536d86;overflow-wrap:anywhere}.photo-status.error{color:var(--danger);font-weight:700}.principles{background:#0b274f;color:#fff;padding:70px 0}.principles .kicker{color:#6ee0cf}.principle-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.principle-grid>div{border:1px solid #385677;background:#102f58;border-radius:16px;padding:22px}.principle-grid strong{font-size:1.1rem}.principle-grid p{color:#d7e4f1}.content-page{padding:54px 0 90px;max-width:900px}.content-page h1{font-size:clamp(2.8rem,7vw,5.5rem)}.back{display:inline-block;margin-bottom:18px}.richtext{font-size:1.08rem}.richtext h2{font-size:2rem;margin-top:2em}.richtext img{max-width:100%;height:auto}.contact-box{margin-top:38px}.hp{position:absolute;left:-9999px}footer{padding:48px 0 90px;background:#fff;border-top:1px solid var(--line)}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px}.footer-logo{width:220px}.footer-grid p{color:#526b84}.app-nav{display:none}
@media(max-width:950px){.desktop-nav{display:none}.hero{grid-template-columns:1fr;gap:30px;padding-top:48px}.hero-copy{max-width:760px}.features{grid-template-columns:1fr}.feature-letter{grid-template-columns:1fr 1fr}.quick-grid{grid-template-columns:repeat(2,1fr)}.principle-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.wrap{width:min(100% - 26px,1180px)}body{padding-bottom:70px}.topbar-inner{height:70px}.brand img{width:210px}.install-btn{display:none!important}.hero{padding:36px 0 40px}.hero h1{font-size:clamp(3.2rem,17vw,5rem)}.assistant-card,.feature-card,.issue-card{padding:20px;border-radius:19px}.assistant-head{display:block}.ai-badge{display:inline-flex;margin-bottom:12px}.form-row,.compact .form-row{grid-template-columns:1fr}.primary{width:100%}.quick{padding:22px 0 55px}.quick-grid{grid-template-columns:1fr 1fr;gap:10px}.quick-card{min-height:132px;padding:16px}.feature-zone{padding:50px 0}.feature-letter{grid-template-columns:1fr}.feature-letter .result{grid-column:auto}.steps{grid-template-columns:1fr}.issue-card{grid-template-columns:1fr;gap:18px}.principle-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.app-nav{position:fixed;z-index:80;display:grid;grid-template-columns:repeat(4,1fr);left:0;right:0;bottom:0;padding:6px max(8px,env(safe-area-inset-right)) max(7px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));background:rgba(255,255,255,.97);border-top:1px solid #cbd8e5;box-shadow:0 -8px 28px rgba(15,43,75,.1)}.app-nav a,.app-nav button{border:0;background:none;text-decoration:none;color:#2b4865;min-height:52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;font-size:.73rem;font-weight:700}.app-nav span{font-size:1.22rem;line-height:1}.app-nav [aria-current=page]{color:var(--blue)}footer{padding-bottom:35px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(forced-colors:active){.primary{border:2px solid ButtonText}.trust,.quick-card,.assistant-card,.feature-card{border:2px solid CanvasText}}

/* Rathaus-Lotse 2.0 */
.lotse-guide{white-space:normal;background:#fff;border:1px solid #c7d9eb;border-radius:14px;padding:16px;margin-bottom:14px}.lotse-guide-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.lotse-guide-head h3{margin:4px 0 2px;font-size:1.35rem}.place-badge{display:inline-flex;border-radius:999px;background:#e9f2ff;color:#174f9d;padding:6px 9px;font-weight:750;font-size:.82rem}.guide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:15px 0}.guide-grid>div{display:grid;gap:3px;background:#f7fafd;border:1px solid #dce7f2;border-radius:10px;padding:11px}.guide-grid strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#49647e}.guide-grid span{font-size:.92rem}.result-action{display:inline-flex;align-items:center;min-height:44px;border-radius:11px;background:var(--blue);color:#fff!important;text-decoration:none;font-weight:800;padding:10px 14px}.answer-text{white-space:normal}.source-health{display:inline-flex;border-radius:999px;padding:2px 6px}.source-health.ok{background:#e7f5ed;color:#0a6742}.source-health.redirect{background:#e9f2ff;color:#174f9d}.source-health.warn,.source-health.broken{background:#fff0e8;color:#8a3d00}@media(max-width:620px){.guide-grid{grid-template-columns:1fr}.lotse-guide-head{display:grid}}

/* V1.5.2: sichtbare Warte-/KI-Verarbeitung */
.result.is-loading{white-space:normal;background:#f5f9ff;border-left-color:#4f79b8}.wait-box{display:flex;align-items:center;gap:14px}.wait-spinner,.button-spinner{display:inline-block;border-radius:50%;border:3px solid #c8d8e9;border-top-color:var(--blue);animation:rathaus-spin .85s linear infinite;flex:0 0 auto}.wait-spinner{width:34px;height:34px}.button-spinner{width:18px;height:18px;border-width:2px;vertical-align:-3px;margin-right:7px;border-color:rgba(255,255,255,.42);border-top-color:#fff}.secondary .button-spinner{border-color:#b8c9da;border-top-color:var(--blue)}.wait-copy{display:grid;gap:2px}.wait-copy strong{font-size:1rem;color:#12385f}.wait-step{font-weight:650;color:#315676}.wait-time{font-size:.86rem;color:#607891}.wait-progress{position:relative;overflow:hidden;height:8px;margin:14px 0 9px;border-radius:999px;background:#dce8f5}.wait-progress span{position:absolute;inset:0 auto 0 -38%;width:38%;border-radius:inherit;background:var(--blue);animation:rathaus-progress 1.35s ease-in-out infinite}.wait-note{display:block;color:#526d86;line-height:1.45}.primary:disabled,.secondary:disabled{cursor:wait;opacity:.82}.result[aria-busy="true"]{min-height:118px}@keyframes rathaus-spin{to{transform:rotate(360deg)}}@keyframes rathaus-progress{0%{left:-38%;width:38%}50%{width:55%}100%{left:100%;width:38%}}@media(prefers-reduced-motion:reduce){.wait-spinner,.button-spinner{animation-duration:2.2s}.wait-progress span{animation:none;left:0;width:100%;opacity:.65}}

/* V1.6.0: Meine Stadt + Lebenslagen */
.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}.my-city-bar{background:#fff;border-bottom:1px solid var(--line)}.my-city-inner{display:flex;align-items:center;gap:14px;padding:14px 0}.my-city-copy{min-width:max-content}.my-city-copy strong{display:block;font-size:.95rem}.my-city-copy span{display:block;color:var(--ink2);font-size:.82rem}.city-picker{position:relative;flex:1;max-width:620px}.city-picker input{width:100%;min-height:46px;border:1.5px solid #9bb1c8;border-radius:13px;padding:11px 14px;background:#fff;color:var(--ink)}.city-picker input:focus{outline:4px solid var(--focus);outline-offset:2px;border-color:#000}.city-suggestions{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:70;background:#fff;border:1px solid #b9cadb;border-radius:14px;box-shadow:var(--shadow);overflow:hidden;max-height:320px;overflow-y:auto}.city-suggestions[hidden]{display:none}.city-option{display:block;width:100%;border:0;border-bottom:1px solid #e4ebf2;background:#fff;text-align:left;padding:12px 14px;color:var(--ink)}.city-option:last-child{border-bottom:0}.city-option:hover,.city-option:focus{background:#eef6ff;outline:0}.city-option strong{display:block}.city-option span{display:block;color:#607891;font-size:.84rem}.my-city-clear{white-space:nowrap}.life-section{padding:74px 0}.life-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.life-card{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:18px;padding:18px;text-align:left;min-height:148px;box-shadow:0 7px 22px rgba(22,53,87,.05)}.life-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.life-card:focus{outline:4px solid var(--focus);outline-offset:2px}.life-card .life-icon{font-size:1.8rem;display:block;margin-bottom:10px}.life-card strong{display:block;font-size:1rem}.life-card small{display:block;color:var(--ink2);margin-top:6px}.life-output{margin-top:22px;background:#fff;border:1px solid #c7d9eb;border-radius:18px;padding:20px}.life-output:empty{display:none}.life-output h3{margin:0 0 5px}.life-output>p{margin-top:0;color:var(--ink2)}.life-steps{display:grid;gap:11px;margin-top:16px}.life-step{display:grid;grid-template-columns:38px 1fr auto;gap:12px;align-items:start;border:1px solid #dce7f2;background:#f8fbff;border-radius:13px;padding:13px}.life-number{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#e4edfa;color:var(--blue);font-weight:850}.life-step strong{display:block}.life-step p{margin:4px 0 0;color:var(--ink2);font-size:.92rem}.compact-action{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:10px;background:var(--blue);color:#fff!important;text-decoration:none;font-weight:800;padding:9px 12px;white-space:nowrap}.life-missing{font-size:.86rem;color:#6b4e15;background:#fff6dc;border:1px solid #e9cf80;border-radius:9px;padding:6px 8px;display:inline-block;margin-top:6px}
@media(max-width:1050px){.life-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.my-city-inner{display:grid;grid-template-columns:1fr auto;gap:9px}.my-city-copy{grid-column:1/-1}.city-picker{max-width:none}.my-city-clear{min-height:46px}.life-section{padding:52px 0}.life-grid{grid-template-columns:1fr 1fr;gap:10px}.life-card{min-height:132px;padding:15px}.life-step{grid-template-columns:34px 1fr}.life-step .compact-action{grid-column:2;width:100%;margin-top:4px}}

/* V1.7.0: hochwertige lokale Leistungsseiten */
.local-service-page,.city-page{padding:34px 0 80px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:#5b7289;font-size:.9rem;margin:7px 0 30px}.breadcrumbs a{color:var(--blue)}.local-hero{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:32px;align-items:start;margin-bottom:26px}.local-hero h1{font-size:clamp(2.7rem,6vw,5.4rem);line-height:.98;letter-spacing:-.05em;margin:12px 0 20px}.local-trust{display:grid;gap:7px;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 8px 25px rgba(17,43,75,.06)}.local-trust strong{color:var(--blue)}.local-trust span{font-size:.86rem;color:var(--ink2)}.service-action-card{display:flex;justify-content:space-between;align-items:center;gap:22px;background:#0b274f;color:#fff;border-radius:22px;padding:26px 28px;margin:28px 0}.service-action-card .kicker{color:#76dfd0}.service-action-card h2{margin:4px 0 0}.service-action-card p{color:#dbe8f4;margin:7px 0 0}.service-action-card .primary{background:#fff;color:#0b3d91;box-shadow:none;white-space:nowrap}.service-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0 36px}.service-facts>div{display:grid;gap:5px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px}.service-facts strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#526d86}.service-facts code{font-size:.9rem}.local-columns{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:30px;align-items:start}.local-main{display:grid;gap:18px}.local-main>section{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px}.local-main h2{margin:0 0 10px;font-size:1.55rem}.source-caution{font-size:.9rem;color:#5c738a;background:#f7fafd;padding:11px;border-radius:10px}.info-pairs{display:grid;grid-template-columns:1fr 1fr;gap:14px}.info-pairs>div{background:#f8fbff;border:1px solid #dce7f2;border-radius:12px;padding:14px}.info-pairs p{margin:5px 0 0}.authority-box{display:grid;gap:7px}.authority-box strong{font-size:1.06rem}.official-links{margin:0;padding-left:20px}.official-links li+li{margin-top:8px}.local-aside{position:sticky;top:105px}.local-aside .assistant-card{padding:21px}.local-aside h2{font-size:1.5rem;margin:5px 0 12px}.related-links{display:grid;border-top:1px solid var(--line)}.related-links a{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);text-decoration:none;font-weight:700}.related-links a:hover{text-decoration:underline}.city-home-link{display:inline-flex;margin-top:16px;text-decoration:none}.independent-note{margin-top:30px;background:#eef5fb;border:1px solid #d1dfec;border-radius:16px;padding:19px}.independent-note p{margin:5px 0 0;color:var(--ink2)}.city-services{margin-top:26px}.city-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.city-service-card{display:grid;gap:12px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:18px;text-decoration:none;color:var(--ink);min-height:120px}.city-service-card:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.city-service-card span{color:var(--blue);font-weight:700;font-size:.9rem}
@media(max-width:900px){.local-hero,.local-columns{grid-template-columns:1fr}.local-aside{position:static}.service-facts{grid-template-columns:1fr 1fr}.city-service-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.local-service-page,.city-page{padding-top:22px}.service-action-card{display:grid;padding:21px}.service-action-card .primary{width:100%}.service-facts,.info-pairs,.city-service-grid{grid-template-columns:1fr}.local-hero h1{font-size:clamp(2.7rem,13vw,4.4rem)}}

/* V2.0.0: NRW-weite Abdeckung */
.directory-contact{display:grid;gap:6px;background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px;margin:20px 0 30px}.directory-contact strong{font-size:1.1rem}.directory-contact span,.directory-contact small{color:var(--ink2)}.directory-contact small{margin-top:5px}.service-source-note{display:grid;gap:4px;background:#fff8e6;border:1px solid #e7cd8b;border-radius:13px;padding:13px 15px;margin:-18px 0 30px;color:#5b4510}.service-source-note strong{color:#47350c}

/* V2.0.1: Rechtstexte – gut lesbar, barrierearm, mobil */
.legal-page{max-width:1180px;padding-top:46px}.legal-page>article>h1{max-width:820px;font-size:clamp(2.8rem,6vw,5.2rem);margin-bottom:18px}.legal-page>article>.lede{max-width:820px}.legal-layout{display:grid;grid-template-columns:270px minmax(0,760px);gap:46px;align-items:start;margin-top:38px}.legal-toc{position:sticky;top:112px}.legal-toc-inner{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 9px 25px rgba(17,43,75,.05)}.legal-toc strong{display:block;margin-bottom:10px;color:var(--ink)}.legal-toc nav{display:grid;gap:2px;max-height:65vh;overflow:auto;padding-right:4px}.legal-toc a{display:block;padding:8px 9px;border-radius:9px;text-decoration:none;color:#36526f;font-size:.9rem;line-height:1.35}.legal-toc a:hover,.legal-toc a:focus{background:#edf5ff;color:var(--blue);text-decoration:underline}.legal-content{background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(24px,4vw,46px);box-shadow:0 14px 40px rgba(17,43,75,.06);font-size:1.04rem;line-height:1.72;overflow-wrap:anywhere}.legal-content>.legal-intro{font-size:1.12rem;color:#304b68;background:#f3f8fd;border-left:5px solid var(--blue);border-radius:0 12px 12px 0;padding:15px 17px;margin-top:0}.legal-content h2{scroll-margin-top:115px;font-size:clamp(1.55rem,3vw,2.05rem);line-height:1.2;margin:2.4em 0 .7em;padding-top:.25em;border-top:1px solid #e2eaf2}.legal-content h2:first-of-type{margin-top:1.7em}.legal-content h3{font-size:1.25rem;line-height:1.3;margin:1.7em 0 .55em;color:#153b64}.legal-content h4{font-size:1.08rem;margin:1.5em 0 .45em}.legal-content p{margin:.65em 0 1.05em}.legal-content ul,.legal-content ol{padding-left:1.4em;margin:.7em 0 1.3em}.legal-content li+li{margin-top:.38em}.legal-content a{font-weight:650;overflow-wrap:anywhere}.legal-content code{background:#edf3f9;border:1px solid #d4e0ec;border-radius:6px;padding:1px 5px;font-size:.93em}.legal-content strong{color:#102d4d}.footer-links{display:flex;flex-wrap:wrap;gap:9px 18px}.footer-links a{font-weight:700}.legal-body .app-nav a[aria-current=page]{color:var(--blue)}
@media(max-width:900px){.legal-layout{grid-template-columns:1fr;gap:18px}.legal-toc{position:static}.legal-toc nav{grid-template-columns:1fr 1fr;max-height:none}.legal-content{padding:28px}}
@media(max-width:650px){.legal-page{padding-top:28px}.legal-layout{margin-top:25px}.legal-toc nav{grid-template-columns:1fr}.legal-toc-inner{padding:14px}.legal-content{border-radius:16px;padding:21px 18px;font-size:1rem;line-height:1.68}.legal-content h2{scroll-margin-top:88px}.legal-content>.legal-intro{font-size:1.02rem}.footer-links{display:grid}}

/* V2.0.2: Frontend-UX, Rathaus-Lotse als Assistent, bessere Lesbarkeit */
@media(min-width:951px){
  .wrap{width:min(1280px,calc(100% - 56px))}
}
.my-city-bar{background:#fff;border-bottom:1px solid #dce6ef;box-shadow:0 3px 14px rgba(17,43,75,.025)}
.my-city-inner{display:grid;grid-template-columns:minmax(330px,.95fr) minmax(440px,1.05fr);gap:28px;align-items:center;padding:20px 0}
.my-city-copy{min-width:0;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}
.my-city-copy>.kicker{white-space:nowrap}
.my-city-place{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 11px;min-width:0}
.my-city-place strong{font-size:1.18rem;line-height:1.25;color:var(--ink)}
.my-city-place small{font-size:.9rem;color:#5b7188;line-height:1.35}
.city-picker{max-width:none;width:100%}
.city-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.city-picker input{min-height:52px;border-radius:14px;padding:13px 16px;font-size:1rem}
.my-city-clear{min-height:52px;white-space:nowrap;padding-inline:18px}

.hero{display:block;padding:62px 0 74px}
.hero-copy{max-width:970px}
.hero .trust{margin-bottom:7px}
.hero h1{max-width:940px;font-size:clamp(3.7rem,7.5vw,6.8rem);margin:18px 0 22px;line-height:.94}
.hero .lede{max-width:900px;font-size:clamp(1.14rem,1.8vw,1.36rem);line-height:1.58}
.hero>.assistant-card{width:100%;margin-top:36px;padding:34px 38px 38px}
.hero>.assistant-card .assistant-head{align-items:center;margin-bottom:6px}
.hero>.assistant-card .assistant-head h2{font-size:clamp(1.9rem,3vw,2.75rem);max-width:850px;margin-bottom:10px}
.hero>.assistant-card .tool-form{gap:13px}
.hero>.assistant-card textarea{min-height:116px;font-size:1.06rem;line-height:1.55}
.hero>.assistant-card .form-row{grid-template-columns:minmax(160px,250px) minmax(300px,1fr)}
.hero>.assistant-card .primary{font-size:1.03rem}

#lotseResult{margin-top:28px;background:transparent;border:0;border-radius:0;padding:0;color:var(--ink);white-space:normal}
#lotseResult.is-loading{background:#f5f9ff;border:1px solid #d4e2f0;border-left:5px solid #4f79b8;border-radius:16px;padding:18px}
.assistant-journey-card{border:1px solid #cbdceb;border-radius:22px;padding:0;overflow:hidden;box-shadow:0 15px 40px rgba(17,43,75,.07);margin:0;background:#fff}
.journey-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:28px 30px;background:linear-gradient(135deg,#f8fbff,#eef6fd);border-bottom:1px solid #dce8f3}
.journey-header h3{font-size:clamp(1.85rem,3vw,2.6rem);line-height:1.08;margin:6px 0 8px;color:#102d4d}
.journey-header p{margin:0;color:#405b75;font-size:1.02rem}
.place-badge{align-self:flex-start;white-space:nowrap;font-size:.86rem;padding:8px 11px}
.location-note,.intent-note{margin:18px 30px 0;padding:13px 15px;border-radius:12px;display:flex;gap:8px;align-items:flex-start;line-height:1.45}
.location-note{background:#edf8f5;border:1px solid #b9dfd8;color:#135e57}
.intent-note{background:#fff7df;border:1px solid #e6cb7a;display:grid;color:#5c4710}
.assistant-journey{display:grid;gap:0;padding:8px 30px 4px}
.journey-step{display:grid;grid-template-columns:48px minmax(0,1fr);gap:17px;padding:24px 0;border-bottom:1px solid #e2eaf2}
.journey-step:last-child{border-bottom:0}
.journey-number{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#0b3d91;color:#fff;font-size:1.05rem;font-weight:850;box-shadow:0 5px 16px rgba(11,61,145,.2)}
.journey-label{display:block;color:#087f75;text-transform:uppercase;letter-spacing:.09em;font-size:.72rem;font-weight:850;margin-bottom:3px}
.journey-step h4{font-size:1.42rem;line-height:1.2;margin:0 0 11px;color:#102d4d}
.journey-step p{margin:6px 0;color:#314d69;line-height:1.55}
.document-list{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:8px}
.document-list li{display:grid;grid-template-columns:24px 1fr;gap:8px;align-items:start;padding:10px 12px;background:#f7fafd;border:1px solid #e0e9f1;border-radius:10px;color:#263f5a}
.document-list li>span:first-child{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#e2f3ed;color:#08765e;font-size:.77rem;font-weight:900;margin-top:1px}
.authority-name{font-size:1.12rem!important;font-weight:780;color:#102d4d!important}
.authority-contact{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:11px}
.authority-contact a,.authority-contact span{color:#36536f;text-decoration:none}
.authority-contact a:hover{text-decoration:underline}
.status-lines{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0 14px}
.status-lines p{margin:0;padding:11px 13px;border-radius:10px;background:#f7fafd;border:1px solid #dce7f1}
.action-stack{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.result-action{min-height:48px;padding:11px 16px;border-radius:12px}
.result-action.secondary-action{background:#fff;color:var(--blue)!important;border:1.5px solid #8faac5;box-shadow:none}
.good-to-know{margin:4px 30px 28px;padding:20px;border-radius:16px;background:#0f2c50;color:#fff}
.good-to-know h4{margin:0 0 12px;font-size:1.18rem;color:#fff}
.fact-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.fact-strip>div{display:grid;gap:5px;padding:13px 14px;background:#173a63;border:1px solid #345474;border-radius:11px}
.fact-strip strong{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;color:#95e4d6}
.fact-strip span{line-height:1.42;color:#f5f9fd}
.technical-details{margin:-12px 30px 26px;border-top:1px solid #e0e8f0;padding-top:13px;color:#516a82}
.technical-details summary{cursor:pointer;font-weight:700;color:#36536f}
.technical-details p{margin:8px 0 0}
.assistant-explanation{margin-top:18px;padding:22px 24px;border-radius:16px;background:#f8fbfe;border:1px solid #dce7f1;white-space:normal}
.assistant-explanation h4{font-size:1.2rem;margin:13px 0 6px;color:#14395f}
.assistant-explanation h4:first-of-type{margin-top:6px}
.assistant-explanation p{margin:6px 0 11px;line-height:1.62;color:#2e4a66}
.assistant-explanation ul{margin:7px 0 12px;padding-left:1.25rem;color:#2e4a66}
.sources-collapsed{margin-top:15px;border:1px solid #dce7f1;border-radius:13px;background:#fff;padding:0;white-space:normal}
.sources-collapsed summary{cursor:pointer;padding:13px 15px;font-weight:780;color:#294965}
.source-list{display:grid;gap:9px;padding:0 15px 15px}
.source-card{display:grid;gap:7px;border-top:1px solid #e3ebf3;padding-top:12px;white-space:normal}
.source-card:first-child{border-top:0}
.source-card>div:first-child{display:grid;gap:2px}
.source-card>div:first-child span{font-size:.9rem;color:#60758a}
.source-card-actions{display:flex;flex-wrap:wrap;gap:8px 14px}
.source-card-actions a{font-weight:750}
.source-card small{color:#64798d}

/* Über Rathaus.com */
.page-ueber-rathaus-com .content-page{max-width:1180px;padding-top:60px}
.page-ueber-rathaus-com .content-page>article>h1{max-width:900px}
.page-ueber-rathaus-com .richtext{font-size:1.07rem;line-height:1.68}
.about-intro{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:28px;align-items:stretch;margin:34px 0}
.about-intro-main,.about-intro-side,.about-panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(22px,3vw,34px);box-shadow:0 10px 30px rgba(17,43,75,.055)}
.about-intro-main h2{font-size:clamp(1.8rem,3vw,2.8rem);margin:0 0 14px;line-height:1.1}
.about-intro-main p{font-size:1.12rem;color:#304b68}
.about-intro-side{background:#0b274f;color:#fff;display:grid;align-content:center;gap:8px}
.about-intro-side strong{font-size:2.2rem;line-height:1;color:#7de3d5}
.about-intro-side p{margin:0;color:#e3edf7}
.about-values{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:28px 0 42px}
.about-value{background:#f7fbff;border:1px solid #d5e3ef;border-radius:16px;padding:20px}
.about-value span{font-size:1.7rem}.about-value h3{margin:10px 0 7px;font-size:1.18rem}.about-value p{margin:0;color:#4d6780}
.about-panel{margin:28px 0}.about-panel h2{margin-top:0}.about-mse{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:25px;align-items:start}
.about-facts{display:grid;gap:9px;background:#eef5fb;border-radius:15px;padding:17px}.about-facts strong{font-size:1.05rem}.about-facts span{color:#48637d}
.about-quote{border-left:5px solid var(--mint);padding:12px 0 12px 18px;margin:24px 0;font-size:1.25rem;font-weight:720;color:#183a5c}

@media(max-width:950px){
  .my-city-inner{grid-template-columns:1fr;gap:14px}.my-city-copy{grid-template-columns:auto 1fr}
  .hero{padding-top:46px}.hero>.assistant-card{margin-top:28px}
  .about-intro,.about-mse{grid-template-columns:1fr}.about-values{grid-template-columns:1fr 1fr}
}
@media(max-width:650px){
  .my-city-inner{display:grid;grid-template-columns:1fr;padding:15px 0}.my-city-copy{display:block}.my-city-copy>.kicker{display:block;margin-bottom:4px}.my-city-place{display:grid;gap:2px}.my-city-place strong{font-size:1.08rem}.city-search-row{grid-template-columns:1fr}.my-city-clear{width:100%}
  .hero{padding:34px 0 50px}.hero h1{font-size:clamp(3.15rem,15vw,4.9rem);margin-top:14px}.hero>.assistant-card{padding:22px 18px 24px;margin-top:24px}.hero>.assistant-card .form-row{grid-template-columns:1fr}
  .journey-header{display:grid;padding:22px 19px}.place-badge{white-space:normal}.location-note,.intent-note{margin:14px 18px 0}.assistant-journey{padding:4px 18px}.journey-step{grid-template-columns:40px 1fr;gap:12px;padding:20px 0}.journey-number{width:36px;height:36px}.journey-step h4{font-size:1.25rem}.status-lines{grid-template-columns:1fr}.action-stack{display:grid}.action-stack .result-action{width:100%;justify-content:center;text-align:center}.good-to-know{margin:4px 18px 22px;padding:16px}.fact-strip{grid-template-columns:1fr}.technical-details{margin:-8px 18px 20px}.assistant-explanation{padding:18px}.about-values{grid-template-columns:1fr}.page-ueber-rathaus-com .content-page{padding-top:34px}
}

/* V2.0.2: ruhigerer Seitenrhythmus und klarere Sektionen */
.section-head{max-width:900px;margin-bottom:32px}.section-head h2{margin-top:7px;margin-bottom:12px}.section-lede{max-width:820px;line-height:1.65}
.quick{padding:24px 0 76px}.quick-grid,.life-grid{gap:16px}.quick-card,.life-card{transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.quick-card:hover,.life-card:hover{border-color:#b6c9dc}
.quick-card{padding:22px;min-height:142px}.quick-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#eef5fc;font-size:1.45rem;margin-bottom:2px}.quick-card strong{font-size:1.12rem}.quick-card span:last-child{font-size:.91rem}
.life-section{padding:76px 0;background:linear-gradient(180deg,rgba(234,241,248,.4),rgba(245,248,252,0))}.life-card{min-height:142px;padding:20px}.life-card>span:first-child{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#fff4df;margin-bottom:9px}
.feature-zone{padding:76px 0;background:linear-gradient(180deg,#eaf1f8,#edf4fa)}.feature-card{box-shadow:0 12px 34px rgba(17,43,75,.07)}
#so-gehts{padding-top:82px}.steps{gap:16px;padding-bottom:82px}.steps>div{box-shadow:0 8px 24px rgba(17,43,75,.045)}
.issue-section{padding-bottom:88px}.issue-card{box-shadow:0 14px 38px rgba(17,43,75,.07)}
.principles{padding:76px 0}.principle-grid>div{min-height:160px}
footer{padding-top:54px}.footer-grid{gap:44px}.footer-grid strong{display:block;margin-bottom:8px}
@media(max-width:650px){.quick{padding-bottom:54px}.section-head{margin-bottom:22px}.life-section,.feature-zone,.principles{padding:54px 0}#so-gehts{padding-top:58px}.steps{padding-bottom:58px}.issue-section{padding-bottom:58px}}
.source-card-contact{display:flex;flex-wrap:wrap;gap:5px 16px;font-size:.9rem;color:#4d6780}.source-card-contact a{text-decoration:none}.source-card-contact a:hover{text-decoration:underline}

/* V2.1.0 – Lebenslagen, KI-Transparenz und flüchtige Formulare */
.ai-disclosure{display:flex;gap:13px;align-items:flex-start;background:#eef8f6;border:1px solid #b8ddd7;border-radius:14px;padding:14px 16px;margin:14px 0 18px;color:#173d48}.ai-disclosure .ai-mark,.ai-output-label .ai-mark{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:11px;background:#087f75;color:#fff;font-weight:850;letter-spacing:.04em}.ai-disclosure div{display:grid;gap:3px}.ai-disclosure strong{font-size:1rem}.ai-disclosure span:not(.ai-mark){font-size:.9rem;line-height:1.5;color:#36596a}.ai-output-label{display:flex;align-items:center;gap:10px;background:#e9f4ff;border:1px solid #c5daee;border-radius:12px;padding:10px 12px;margin:0 0 14px;color:#244866}.ai-output-label .ai-mark{flex-basis:32px;height:32px;border-radius:9px;background:#0b4aa2}.ai-output-label span:last-child{font-size:.86rem;line-height:1.45}
.consent-box{display:grid;gap:10px;margin:18px 0 4px;padding:14px;background:#f8fbfe;border:1px solid #d4e0eb;border-radius:13px}.consent-check{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;font-size:.88rem;line-height:1.45;color:#38546f;cursor:pointer}.consent-check input{width:20px;height:20px;margin:1px 0 0;accent-color:#0b4aa2}.consent-check a{font-weight:700}.consent-check.ai-consent{color:#264d58}.consent-check.sensitive-consent{background:#fff8eb;border:1px solid #ead8af;border-radius:10px;padding:10px}.compact-consent{margin:12px 0}
.life-groups{display:grid;gap:34px}.life-group{display:grid;gap:14px}.life-group h3{font-size:1.22rem;margin:0;color:#173a5d}.life-group .life-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.life-card{height:100%;text-align:left}.life-card small{display:block;line-height:1.35}.life-card.selected{outline:3px solid rgba(8,127,117,.22);border-color:#087f75;transform:translateY(-2px)}.life-assistant-start{margin:34px 0 0;background:#fff;border:1px solid var(--line);border-radius:20px;padding:clamp(20px,3vw,30px);box-shadow:0 12px 34px rgba(17,43,75,.07)}.life-assistant-start[hidden]{display:none}.life-assistant-start h3{margin:4px 0 12px;font-size:1.5rem}.life-stepper{display:grid;gap:14px;margin-top:20px}.life-assistant-step{background:#fff;border:1px solid #cbdbe9;border-radius:18px;padding:22px;box-shadow:0 8px 24px rgba(17,43,75,.055)}.life-step-progress{font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#087f75;margin-bottom:14px}.life-step-main{display:grid;grid-template-columns:48px 1fr;gap:16px}.life-step-main h4{font-size:1.45rem;margin:3px 0 8px}.life-authority{display:grid;gap:3px;background:#f1f6fb;border-radius:12px;padding:12px;margin:14px 0}.life-authority span{font-size:.86rem;color:#536d85}.life-step-nav{display:flex;justify-content:space-between;gap:12px;margin-top:20px;padding-top:16px;border-top:1px solid #e0e9f1}.life-step-nav button[disabled]{opacity:.45;cursor:not-allowed}.prepared-text{margin-top:16px}.prepared-text pre{white-space:pre-wrap;word-break:break-word;background:#f5f8fc;border:1px solid #d5e0eb;border-radius:12px;padding:14px;font:inherit;line-height:1.5;color:#1d3f61}
.privacy-mode-badge{display:inline-flex;align-items:center;gap:7px;border:1px solid #badccf;background:#effaf6;color:#12634f;border-radius:999px;padding:6px 10px;font-size:.8rem;font-weight:800}.privacy-mode-badge:before{content:'✓';font-weight:900}
@media(max-width:1050px){.life-group .life-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.life-group .life-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.life-step-main{grid-template-columns:40px 1fr}.life-step-nav{display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:520px){.life-group .life-grid{grid-template-columns:1fr}.life-card{min-height:0}.life-step-nav{grid-template-columns:1fr}.ai-disclosure{padding:12px}.consent-box{padding:12px}}

/* Rathaus.com V2.1.1 – unsichtbarer Spam-Schutz / Kontakt */
.form-security-note{display:block;color:#607891;font-size:.84rem;margin-top:2px}.contact-box .assistant-head{margin-bottom:8px}.contact-box>p{color:var(--ink2);margin:0 0 18px}.hp{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}

/* Rathaus.com V3.0.0 – First-Party Ads & Werbekundenportal */
.ad-slot-wrap{margin:22px auto 42px}.rathaus-ad{max-width:100%;background:#fff;border:1px solid #cbd7e3;border-radius:16px;padding:12px 14px;box-shadow:0 8px 24px rgba(16,45,77,.055);color:#173654;overflow:hidden}.rathaus-ad .ad-label,.ad-label{display:inline-flex;width:max-content;background:#1b2e43;color:#fff;font-size:.68rem;line-height:1;text-transform:uppercase;letter-spacing:.1em;font-weight:900;padding:6px 8px;border-radius:6px}.ad-topline{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px}.ad-topline small,.ad-copy small{color:#52697e}.ad-banner-link{display:block;border-radius:10px;overflow:hidden;background:#eef3f7;line-height:0}.ad-banner-link img{display:block;width:100%;height:auto;object-fit:cover}.rathaus-ad details{margin-top:8px;font-size:.78rem;color:#5a7084}.rathaus-ad details summary{cursor:pointer;font-weight:700}.rathaus-ad details p{margin:6px 0 0;line-height:1.45}.native-ad{padding:14px}.ad-native-grid{display:grid;grid-template-columns:minmax(120px,.32fr) minmax(0,.68fr);gap:18px;align-items:center}.ad-media img{display:block;width:100%;height:160px;object-fit:cover;border-radius:10px}.ad-copy{display:grid;gap:6px}.ad-copy strong{font-size:1.22rem;color:#173654}.ad-copy p{margin:0;color:#415d77;line-height:1.5}.ad-cta{display:inline-flex;width:max-content;min-height:44px;align-items:center;padding:9px 13px;background:#0b3d91;color:#fff!important;border-radius:10px;text-decoration:none;font-weight:800;margin-top:4px}

.ads-public-body{background:#f5f8fc}.ads-hero{padding:82px 0 70px;background:radial-gradient(circle at 80% 15%,rgba(14,127,117,.12),transparent 35%),linear-gradient(180deg,#f8fbff,#eef4fa)}.ads-hero h1{font-size:clamp(3rem,7vw,6rem);line-height:.98;max-width:1000px;margin:14px 0 20px}.ads-hero h1 span{color:#087f75}.ads-hero .lede{font-size:clamp(1.1rem,2vw,1.35rem);max-width:900px;line-height:1.65}.hero-actions,.center-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.ads-trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:44px}.ads-trust-row>div{background:#fff;border:1px solid #d4e0eb;border-radius:14px;padding:18px;display:grid;gap:5px}.ads-trust-row strong{color:#14395f}.ads-trust-row span{color:#5b7085}.ads-section{padding:74px 0}.ads-benefit-grid,.placement-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ads-benefit-grid article,.placement-grid article{background:#fff;border:1px solid #d6e1eb;border-radius:18px;padding:24px;box-shadow:0 8px 24px rgba(16,45,77,.04)}.ads-benefit-grid article>span{font-size:1.8rem}.ads-benefit-grid h3,.placement-grid h3{margin:12px 0 8px}.ads-benefit-grid p,.placement-grid p{color:#506a82;line-height:1.58}.ads-price-section{padding:78px 0;background:#0d2c4e;color:#fff}.ads-price-section .section-head h2,.ads-price-section .section-head p{color:#fff}.plan-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:16px}.plan-card{background:#fff;color:#183652;border-radius:18px;padding:24px;border:2px solid transparent;display:grid;gap:12px}.plan-card.featured{border-color:#38b5a8;transform:translateY(-4px)}.plan-code{font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;color:#087f75}.plan-card h3{font-size:1.55rem;margin:0}.plan-card p{margin:0;color:#536c83}.plan-price{display:flex;gap:12px;align-items:end}.plan-price strong{font-size:2rem;color:#0b3d91}.plan-price span{font-size:.8rem;color:#5e7183}.plan-card ul{padding-left:18px;margin:4px 0 10px;color:#466178}.ads-policy-strip{padding:52px 0;background:#e8f4f1}.ads-policy-strip>.wrap{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.ads-policy-strip h2{margin:7px 0}.faq-list{display:grid;gap:10px;max-width:900px}.faq-list details{background:#fff;border:1px solid #d6e1eb;border-radius:13px;padding:15px 18px}.faq-list summary{font-weight:800;cursor:pointer}.faq-list p{color:#506a82;line-height:1.6}

.ads-booking-main{padding:54px 0 90px}.booking-wizard{display:grid;grid-template-columns:minmax(250px,.28fr) minmax(0,.72fr);gap:22px;align-items:start}.booking-summary{position:sticky;top:92px;background:#0f2d50;color:#fff;border-radius:18px;padding:20px;display:grid;gap:12px}.booking-summary>strong{font-size:1.2rem}.booking-summary>div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #31506e;padding-top:9px}.booking-summary span{color:#b9cddd}.booking-summary b{text-align:right}.booking-summary .summary-price{margin-top:6px}.booking-steps{display:grid;gap:16px}.booking-step{position:relative;background:#fff;border:1px solid #d5e1ec;border-radius:18px;padding:26px 26px 26px 76px}.booking-step .step-no{position:absolute;left:24px;top:25px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#0b3d91;color:#fff;font-weight:900}.booking-step h2{margin:2px 0 18px}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:12px}.booking-plan-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.booking-plan{display:grid;gap:5px;border:1.5px solid #c7d6e4;border-radius:12px;padding:14px;cursor:pointer;background:#fbfdff}.booking-plan:has(input:checked){border-color:#0b3d91;box-shadow:0 0 0 2px rgba(11,61,145,.08)}.booking-plan input{width:auto}.booking-plan strong{font-size:1.08rem}.booking-plan span,.booking-plan small{color:#526a81}.placement-demo{margin-top:14px;border:1px dashed #91a9bf;border-radius:12px;padding:18px;background:#f7fafc}.legal-checks{display:grid;gap:10px}.final-step{border-color:#8dc9bf;background:#f5fcfa}.primary.big{font-size:1.06rem;min-height:54px}

.advertiser-body{background:#f2f6fa;color:#163552}.adportal-top{background:#fff;border-bottom:1px solid #d5e0ea;position:sticky;top:0;z-index:30}.adportal-top-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:16px}.adportal-top .brand{display:flex;align-items:center;gap:14px;text-decoration:none;color:#163552;font-weight:850}.adportal-top .brand img{width:190px;max-height:46px}.adportal-shell{display:grid;grid-template-columns:240px minmax(0,1fr);gap:26px;padding-top:32px;padding-bottom:70px}.adportal-nav{position:sticky;top:106px;align-self:start;background:#fff;border:1px solid #d6e1eb;border-radius:16px;padding:17px;display:grid;gap:7px}.adportal-nav>strong{font-size:1rem}.adportal-nav>small{color:#65788a;margin-bottom:8px}.adportal-nav nav{display:grid;gap:3px}.adportal-nav nav a{padding:9px 10px;border-radius:9px;color:#35516c;text-decoration:none;font-weight:700}.adportal-nav nav a:hover,.adportal-nav nav a.active{background:#eaf2f9;color:#0b3d91}.adportal-main{min-width:0}.adportal-card{background:#fff;border:1px solid #d6e1eb;border-radius:18px;padding:24px;margin-bottom:18px}.adportal-card h2{margin-top:0}.adportal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px}.adportal-stats>div{background:#fff;border:1px solid #d6e1eb;border-radius:14px;padding:17px;display:grid;gap:4px}.adportal-stats span{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:#63788c;font-weight:800}.adportal-stats strong{font-size:1.65rem;color:#123e68}.responsive-list{display:grid;gap:9px}.responsive-list article{display:grid;grid-template-columns:1fr auto auto;gap:12px;border-top:1px solid #e2e8ee;padding:11px 0}.creative-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.creative-preview{border:1px solid #d7e1e9;border-radius:14px;padding:13px;display:grid;gap:7px}.creative-preview img{width:100%;height:180px;object-fit:contain;background:#eef2f5;border-radius:8px}.status-pill{display:inline-flex;width:max-content;border-radius:999px;padding:5px 8px;font-size:.73rem;font-weight:800;background:#eef2f5}.status-pill.approved{background:#e2f5ec;color:#116444}.status-pill.rejected{background:#fde9eb;color:#8b1f2b}.status-pill.pending{background:#fff1cf;color:#6d4b00}.fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:12px 0}.fact-grid>div{display:grid;gap:3px;background:#f5f8fb;border-radius:10px;padding:11px}.fact-grid span{font-size:.75rem;color:#64788b}.advertiser-login-body{min-height:100vh;background:#eef4f9;display:grid;place-items:center;padding:24px}.advertiser-login-card{width:min(520px,100%);background:#fff;border:1px solid #d4e0eb;border-radius:20px;padding:34px;box-shadow:0 18px 50px rgba(17,43,75,.11)}.advertiser-login-card .brand img{width:230px}.advertiser-login-card h1{font-size:2.2rem}.notice.good{background:#eaf7f1;border:1px solid #b6dfd0;color:#155b45;padding:12px;border-radius:10px}

@media(max-width:900px){.ads-benefit-grid,.placement-grid{grid-template-columns:1fr 1fr}.ads-trust-row{grid-template-columns:1fr}.booking-wizard{grid-template-columns:1fr}.booking-summary{position:static;order:-1}.adportal-shell{grid-template-columns:1fr}.adportal-nav{position:static}.adportal-nav nav{grid-template-columns:repeat(3,1fr)}.adportal-stats{grid-template-columns:1fr 1fr}.ads-policy-strip>.wrap{grid-template-columns:1fr}.creative-grid{grid-template-columns:1fr}}
@media(max-width:650px){.ads-benefit-grid,.placement-grid,.booking-plan-grid,.form-grid-2,.adportal-stats,.fact-grid{grid-template-columns:1fr}.booking-step{padding:22px 18px 22px 62px}.booking-step .step-no{left:16px;top:20px}.ad-native-grid{grid-template-columns:1fr}.ad-media img{height:190px}.adportal-nav nav{grid-template-columns:1fr 1fr}.responsive-list article{grid-template-columns:1fr}.ad-topline{align-items:flex-start}.plan-card.featured{transform:none}}
.booking-creative-preview{border:1px solid #cbd5e1;border-radius:18px;padding:1rem;background:#fff;display:grid;gap:.55rem;max-width:680px}.booking-creative-preview .preview-img-wrap{min-height:120px;border-radius:12px;background:#f1f5f9;display:grid;place-items:center;overflow:hidden}.booking-creative-preview img{width:100%;max-height:280px;object-fit:contain}.booking-creative-preview .ad-cta{font-weight:700;color:var(--primary,#0b3d91)}
.preview-switch{display:flex;gap:.35rem;flex-wrap:wrap}.preview-switch button{border:1px solid #cbd5e1;background:#fff;border-radius:999px;padding:.45rem .8rem;cursor:pointer}.preview-switch button.active{background:#0b3d91;color:#fff;border-color:#0b3d91}#creativePreviewGrid[data-device="tablet"] .creative-preview{max-width:728px;margin-inline:auto}#creativePreviewGrid[data-device="mobile"] .creative-preview{max-width:320px;margin-inline:auto}#creativePreviewGrid[data-device="desktop"] .creative-preview{max-width:970px}
.ad-price-calculator{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.38fr);gap:1.25rem;padding:1.35rem;border:1px solid #dbe5f0;border-radius:1rem;background:#fff;box-shadow:0 12px 32px rgba(15,23,42,.06)}.ad-price-calculator label{display:grid;gap:.4rem;font-weight:700}.ad-price-calculator select{min-height:48px;border:1px solid #b9c7d8;border-radius:.7rem;padding:.65rem .8rem;background:#fff;color:#152235}.calculator-total{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:.55rem;padding:1.1rem;border-radius:.9rem;background:#eef5ff}.calculator-total>span{font-weight:700;color:#44546a}.calculator-total strong{font-size:clamp(1.45rem,3vw,2rem);line-height:1.1;color:#0b3d91}.calculator-total small{color:#526276;margin-bottom:.4rem}@media(max-width:800px){.ad-price-calculator{grid-template-columns:1fr}}

/* Rathaus Ads booking UX v3.0.1 */
.booking-page-head{max-width:820px;margin-bottom:28px}.booking-page-head h1{max-width:760px}.booking-wizard-v301{grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:28px}.booking-wizard-v301 .booking-summary{border-radius:22px;padding:22px;gap:18px;box-shadow:0 18px 42px rgba(15,45,80,.16)}.summary-head{display:grid!important;gap:4px;border:0!important;padding:0!important}.summary-head strong{font-size:1.3rem}.summary-list{display:grid!important;gap:0!important;border-top:1px solid #31506e!important;padding-top:0!important}.summary-list>div,.summary-price>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:10px 0;border-bottom:1px solid #31506e}.summary-list b,.summary-price b{max-width:180px;text-align:right}.summary-includes{display:block!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:14px;padding:14px!important;background:rgba(255,255,255,.05)}.summary-includes strong{display:block;margin-bottom:8px}.summary-includes p{margin:0;color:#d9e7f3}.summary-includes ul{margin:0;padding-left:18px;color:#d9e7f3;display:grid;gap:5px}.booking-summary .summary-price{display:block;border:0;padding:0;margin:0}.summary-price .summary-total{border-bottom:0;padding-top:14px}.summary-price .summary-total b{font-size:1.28rem;color:#fff}.summary-note{color:#bed2e5;line-height:1.45}.booking-steps{gap:22px}.booking-step{border-radius:22px;padding:26px 28px;transition:border-color .2s,box-shadow .2s,transform .2s}.booking-step.step-error{border-color:#b42318;box-shadow:0 0 0 4px rgba(180,35,24,.10)}.step-heading{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:14px;align-items:start;margin-bottom:22px}.booking-step .step-heading .step-no{position:static;width:38px;height:38px;flex:0 0 auto}.step-heading h2{margin:1px 0 5px}.step-heading p{margin:0;color:#5a7087;line-height:1.45}.step-status{align-self:center;border:1px solid #cbd9e6;background:#f6f9fc;color:#5d7287;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:800;white-space:nowrap}.step-status.done{border-color:#9bd5c9;background:#eefaf7;color:#096a61}.step-status.needs-attention{border-color:#e1c1a5;background:#fff8f1;color:#8a4b12}.booking-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px}.booking-form-grid .span-2{grid-column:1/-1}.field-control{position:relative;display:grid;gap:8px;min-width:0}.field-label{display:flex;align-items:center;gap:7px;font-weight:800;color:#16324f;line-height:1.25}.field-control input,.field-control select,.field-control textarea{width:100%;min-height:48px;border:1.5px solid #b9cad9;border-radius:12px;padding:11px 13px;background:#fff;color:#102b46;font:inherit;transition:border-color .18s,box-shadow .18s}.field-control textarea{min-height:96px;resize:vertical}.field-control input:hover,.field-control select:hover,.field-control textarea:hover{border-color:#7d9fbd}.field-control input:focus,.field-control select:focus,.field-control textarea:focus{outline:none;border-color:#0b3d91;box-shadow:0 0 0 4px rgba(11,61,145,.10)}.field-control small{color:#60778c;line-height:1.4}.field-help-button{width:24px;height:24px;min-width:24px;border-radius:50%;border:1px solid #8ca7be;background:#f3f8fc;color:#0b3d91;font-weight:900;line-height:1;cursor:pointer;padding:0}.field-help-button:hover,.field-help-button:focus-visible{background:#e6f0fa;outline:2px solid #0b3d91;outline-offset:2px}.field-help-popover{display:none;position:absolute;z-index:25;left:0;top:30px;max-width:360px;background:#0f2d50;color:#fff;border-radius:12px;padding:11px 13px;font-weight:500;font-size:.87rem;line-height:1.45;box-shadow:0 12px 28px rgba(11,35,58,.25)}.field-control.help-open .field-help-popover{display:block}.placement-help-card{margin-top:12px;border:1px solid #ccdbe8;background:#f5f9fc;border-radius:14px;padding:14px 16px;color:#405e77;line-height:1.5}.booking-plan-grid-v301{gap:16px}.enhanced-plan{position:relative;display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:16px;min-height:240px}.enhanced-plan>input{position:absolute;opacity:0;pointer-events:none}.plan-choice-mark{position:absolute;right:16px;top:16px;width:20px;height:20px;border-radius:50%;border:2px solid #9ab0c4;background:#fff}.enhanced-plan:has(input:checked) .plan-choice-mark{border:6px solid #0b3d91}.plan-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-right:30px}.plan-card-head strong{font-size:1.16rem;color:#102b46}.plan-info-button{width:28px;height:28px;border-radius:50%;border:1px solid #9ab0c4;background:#fff;color:#0b3d91;font-weight:900;cursor:pointer}.plan-price-main{font-weight:900;color:#0b3d91!important;font-size:1.15rem}.plan-price-main small{font-size:.78rem;font-weight:700;color:#64798d}.plan-short{color:#526a81!important;line-height:1.45}.enhanced-plan ul{margin:0;padding-left:19px;display:grid;gap:5px;color:#29465f}.plan-hover-help{margin-top:auto;border-top:1px solid #dbe6ee;padding-top:10px;color:#526a81!important;font-size:.84rem;line-height:1.4;opacity:.78}.enhanced-plan:hover{border-color:#6f93b3;box-shadow:0 10px 24px rgba(36,79,116,.08);transform:translateY(-1px)}.enhanced-plan:has(input:checked){border-color:#0b3d91;background:#f6f9ff;box-shadow:0 0 0 3px rgba(11,61,145,.08)}.plan-help-dialog{width:min(620px,calc(100% - 32px));border:0;border-radius:22px;padding:28px;box-shadow:0 24px 80px rgba(15,45,80,.34);color:#183650}.plan-help-dialog::backdrop{background:rgba(7,25,43,.55)}.plan-help-dialog .dialog-close{position:absolute;right:16px;top:14px;width:36px;height:36px;border:0;border-radius:50%;background:#eef4f9;font-size:1.45rem;cursor:pointer}.plan-help-dialog h2{margin:6px 0 10px}.plan-help-dialog h3{margin:22px 0 7px}.plan-help-dialog ul{display:grid;gap:7px}.topic-selection{margin-top:20px;border:1.5px solid #9fc9c2;background:#f4fbf9;border-radius:18px;padding:20px}.topic-selection-head{display:flex;justify-content:space-between;gap:20px;align-items:start;margin-bottom:15px}.topic-selection-head h3{margin:3px 0 6px}.topic-selection-head p{margin:0;color:#526f68}.topic-selection-head>strong{white-space:nowrap;background:#e3f5f1;color:#08695f;border-radius:999px;padding:7px 10px}.topic-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.topic-card{display:flex;gap:10px;align-items:flex-start;border:1px solid #c9ddd8;border-radius:14px;background:#fff;padding:13px;cursor:pointer}.topic-card input{width:19px;height:19px;margin-top:2px}.topic-card span{display:grid;gap:4px}.topic-card strong{color:#173850}.topic-card small{color:#607b75;line-height:1.35}.topic-card:has(input:checked){border-color:#087f75;box-shadow:0 0 0 2px rgba(8,127,117,.08)}.topic-card:has(input:disabled){opacity:.55;cursor:not-allowed}.topic-validation{margin:12px 0 0;font-weight:700;color:#2b625b}.notice.subtle{background:#f4f8fb;border:1px solid #cfdeea;color:#405f78}.explain-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.explain-grid>div{border:1px solid #d3e0ea;border-radius:14px;padding:16px;background:#f8fbfd}.explain-grid p{margin:7px 0 0;color:#557087}.payment-choice{display:flex;border:1.5px solid #b9ccdb;border-radius:14px;padding:17px;gap:12px;background:#fbfdff}.payment-choice input{width:20px}.payment-choice span{display:grid;gap:4px}.payment-choice small{color:#597187}.booking-final-summary{border:1px solid #d3e0ea;border-radius:15px;background:#f7fafc;padding:15px;margin-bottom:15px}.booking-final-summary dl{margin:0;display:grid;gap:0}.booking-final-summary dl>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:16px;padding:9px 0;border-bottom:1px solid #dfe8ef}.booking-final-summary dl>div:last-child{border-bottom:0}.booking-final-summary dt{font-weight:800;color:#49657d}.booking-final-summary dd{margin:0;font-weight:700;color:#173650}.cost-warning{border:1.5px solid #c17b35;background:#fff8ef;color:#6f3b0b;border-radius:14px;padding:15px 17px;margin-bottom:18px}.what-happens{border:1px solid #b8d9d2;background:#f4fbf9;border-radius:15px;padding:17px;margin-bottom:18px}.what-happens h3{margin:0 0 10px}.what-happens ol{margin:0;padding-left:22px;display:grid;gap:7px}.booking-submit{width:100%}.final-step{background:#fbfffd}.booking-creative-preview{margin-top:20px}.targeting-details{margin-top:18px}.targeting-details summary{cursor:pointer;font-weight:800;color:#0b3d91}
@media(max-width:1000px){.booking-wizard-v301{grid-template-columns:1fr}.booking-wizard-v301 .booking-summary{position:static;order:-1}.summary-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;column-gap:18px}.summary-list>div:nth-last-child(-n+1){border-bottom:1px solid #31506e}.booking-summary .summary-price{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.summary-price>div{display:block;border:1px solid #31506e;border-radius:12px;padding:11px}.summary-price b{display:block;max-width:none;text-align:left;margin-top:4px}.summary-price .summary-total{padding:11px}}
@media(max-width:700px){.ads-booking-main{padding-top:30px}.booking-step{padding:20px 17px}.step-heading{grid-template-columns:auto minmax(0,1fr);gap:10px}.step-status{grid-column:2;justify-self:start}.booking-form-grid,.topic-card-grid,.explain-grid{grid-template-columns:1fr}.booking-form-grid .span-2{grid-column:auto}.booking-plan-grid-v301{grid-template-columns:1fr}.summary-list{grid-template-columns:1fr!important}.booking-summary .summary-price{grid-template-columns:1fr}.topic-selection-head{display:grid}.booking-final-summary dl>div{grid-template-columns:1fr;gap:3px}.field-help-popover{position:static;margin-top:2px;max-width:none}.plan-help-dialog{padding:22px 18px}}

/* Rathaus Ads AI booking assistant v3.0.2 */
.contract-explain{margin-top:14px;border:1px solid #d2dfeb;background:#f7fafc;border-radius:14px;padding:14px 16px;color:#425f77;line-height:1.5}.preview-contract-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 16px}.preview-contract-row small{color:#60778d;max-width:500px}.ads-ai-assistant{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:90;width:min(420px,calc(100vw - 28px));pointer-events:none}.ads-ai-launcher,.ads-ai-panel{pointer-events:auto}.ads-ai-launcher{margin-left:auto;display:flex;align-items:center;gap:10px;border:1px solid #a8c2d8;border-radius:999px;background:#fff;color:#15344f;padding:10px 15px;box-shadow:0 12px 34px rgba(15,45,80,.20);cursor:pointer}.ads-ai-launcher span:not(.ai-dot){display:grid;text-align:left;line-height:1.1}.ads-ai-launcher small{margin-top:4px;color:#61788c}.ai-dot{width:11px;height:11px;border-radius:50%;background:#087f75;box-shadow:0 0 0 5px rgba(8,127,117,.12)}.ads-ai-panel{margin-top:10px;background:#fff;border:1px solid #c6d7e5;border-radius:22px;box-shadow:0 24px 70px rgba(12,40,65,.30);overflow:hidden}.ads-ai-head{display:flex;justify-content:space-between;gap:14px;align-items:start;padding:18px 18px 8px}.ads-ai-head h2{margin:3px 0 0;font-size:1.25rem}.ads-ai-close{border:0;background:#eff5f9;width:34px;height:34px;border-radius:50%;font-size:1.4rem;cursor:pointer}.ads-ai-intro{margin:0;padding:0 18px 12px;color:#587188;font-size:.9rem;line-height:1.45}.ads-ai-quick{display:flex;gap:7px;overflow:auto;padding:0 18px 12px;scrollbar-width:thin}.ads-ai-quick button{white-space:nowrap;border:1px solid #bdd0df;background:#f6f9fc;color:#16416a;border-radius:999px;padding:7px 10px;font-size:.8rem;cursor:pointer}.ads-ai-quick button:hover{background:#eaf3fa}.ads-ai-messages{max-height:310px;overflow:auto;background:#f4f8fb;border-block:1px solid #dbe6ee;padding:14px;display:grid;gap:10px}.ads-ai-message{max-width:92%;border-radius:14px;padding:11px 13px;line-height:1.45}.ads-ai-message strong{display:block;font-size:.78rem;margin-bottom:4px}.ads-ai-message p{margin:0}.ads-ai-message.assistant{background:#fff;border:1px solid #d1dfea;color:#173650}.ads-ai-message.user{justify-self:end;background:#0b3d91;color:#fff}.ads-ai-message ul{margin:9px 0 0;padding-left:19px;display:grid;gap:4px}.ads-ai-warning{margin-top:9px;border-left:3px solid #c37c2e;background:#fff8ef;padding:8px 9px;color:#6c3e12}.ads-ai-follow{display:block;margin-top:9px;color:#577188}.ads-ai-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.ads-ai-actions button{border:1px solid #0b3d91;background:#fff;color:#0b3d91;border-radius:9px;padding:7px 9px;font-weight:800;cursor:pointer}.ads-ai-form{padding:13px 14px 15px}.ads-ai-consent{display:flex;gap:8px;align-items:flex-start;font-size:.78rem;line-height:1.4;color:#5d7488;margin-bottom:10px}.ads-ai-consent input{margin-top:2px}.ads-ai-compose{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:end}.ads-ai-compose textarea{width:100%;min-height:54px;max-height:130px;border:1.5px solid #b7cbdc;border-radius:12px;padding:10px 11px;resize:vertical;font:inherit}.ads-ai-compose textarea:focus{outline:none;border-color:#0b3d91;box-shadow:0 0 0 3px rgba(11,61,145,.09)}.ads-ai-compose .primary{min-height:46px}.ads-ai-status{display:flex;align-items:center;gap:8px;margin-top:9px;color:#506b82;font-size:.84rem}.busy-spinner{width:18px;height:18px;border:2px solid #c3d5e3;border-top-color:#0b3d91;border-radius:50%;animation:adsSpin .8s linear infinite}@keyframes adsSpin{to{transform:rotate(360deg)}}
@media(max-width:650px){.ads-ai-assistant{right:8px;left:8px;bottom:max(8px,env(safe-area-inset-bottom));width:auto}.ads-ai-panel{max-height:78vh}.ads-ai-messages{max-height:280px}.ads-ai-compose{grid-template-columns:1fr}.ads-ai-launcher{padding:9px 12px}.preview-contract-row{display:grid}}

/* Rathaus Ads V3.0.4 – Anbieterangaben, ruhigeres Buchungslayout */
@media(min-width:951px){.ads-booking-main{width:min(1380px,calc(100% - 64px))}}
.booking-page-head{margin-bottom:20px}.booking-page-head p{max-width:880px;font-size:1.05rem;line-height:1.65;color:#4b657c}
.booking-provider-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:28px;align-items:center;background:linear-gradient(135deg,#f8fbff,#eef7f5);border:1px solid #c9dbe7;border-radius:20px;padding:20px 24px;margin:0 0 28px;box-shadow:0 10px 30px rgba(16,45,77,.05)}
.booking-provider-card strong{display:block;margin:5px 0 4px;font-size:1.15rem;color:#123a5f}.booking-provider-card p{margin:0;color:#587086}.booking-provider-contact{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;justify-items:start}.booking-provider-contact a,.booking-provider-contact span{font-size:.9rem;font-weight:650;color:#294d6d}.booking-provider-contact a{overflow-wrap:anywhere}.booking-wizard-v301{grid-template-columns:minmax(315px,370px) minmax(0,1fr);gap:32px}.booking-wizard-v301 .booking-summary{top:105px}.booking-step{box-shadow:0 8px 26px rgba(15,45,80,.035)}
.commercial-provider-strip{background:#e9f3f7;border-block:1px solid #cadce7;padding:26px 0}.commercial-provider-strip>.wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center}.commercial-provider-strip strong{display:block;margin:5px 0 4px;font-size:1.12rem;color:#12385c}.commercial-provider-strip p{margin:0;color:#536d84}.commercial-provider-links{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.commercial-provider-links a{font-weight:750}.ads-commercial-footer .footer-grid{grid-template-columns:1fr 1fr 1fr}.ads-commercial-footer .footer-links{display:grid;gap:5px}.ads-commercial-footer .footer-links a{width:max-content;max-width:100%}
@media(max-width:1000px){.booking-provider-card{grid-template-columns:1fr}.booking-provider-contact{grid-template-columns:repeat(2,minmax(0,1fr))}.commercial-provider-strip>.wrap{grid-template-columns:1fr}.commercial-provider-links{justify-content:flex-start}}
@media(max-width:650px){.booking-provider-card{padding:18px 16px;border-radius:16px}.booking-provider-contact{grid-template-columns:1fr;gap:7px}.ads-commercial-footer .footer-grid{grid-template-columns:1fr}.commercial-provider-links{display:grid;gap:8px}}

/* V3.0.8 – sichtbarer Werbe-Buchungsassistent */
.booking-ai-help{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin:1.25rem 0 1.5rem;padding:1.35rem 1.5rem;border:1px solid #b7c9df;border-radius:18px;background:#f8fbff;box-shadow:0 8px 24px rgba(22,48,82,.08)}
.booking-ai-help h2{margin:.2rem 0 .35rem;font-size:clamp(1.15rem,2vw,1.45rem)}
.booking-ai-help p{margin:0;max-width:62rem}
.booking-ai-help .primary{flex:0 0 auto}
@media(max-width:760px){.booking-ai-help{align-items:stretch;flex-direction:column}.booking-ai-help .primary{width:100%}}
.placement-format-card{display:grid;gap:.38rem;margin-top:.75rem;padding:1rem 1.1rem;border:1px solid #c9d7e7;border-radius:14px;background:#fff}
.placement-format-card strong{font-size:1rem}.placement-format-card span,.placement-format-card small{display:block}.placement-format-card small{color:#526276}
.creative-preflight-status{margin-top:.75rem;padding:.75rem .85rem;border-radius:10px;border:1px solid #c9d7e7;background:#f8fafc;font-size:.92rem;line-height:1.45}
.creative-preflight-status.ok{border-color:#7bbf9b;background:#effaf4}.creative-preflight-status.warning{border-color:#d8ae51;background:#fff9e8}.creative-preflight-status.error{border-color:#d98b8b;background:#fff2f2}.creative-preflight-status.info{border-color:#9eb8d4;background:#f4f8fd}
.creative-adjustment-confirm{display:flex;gap:.65rem;align-items:flex-start;margin-top:.7rem;padding:.75rem .85rem;border:1px solid #d8ae51;border-radius:10px;background:#fff9e8;font-weight:600}.creative-adjustment-confirm input{margin-top:.2rem;flex:0 0 auto}
.placement-public-size{display:flex;flex-wrap:wrap;gap:.35rem .8rem;margin-top:.8rem;padding-top:.7rem;border-top:1px solid #d8e1eb;font-size:.88rem}.placement-public-size strong{width:100%}.placement-public-size span{color:#526276}

/* Rathaus Ads V3.0.12 – visuelle Werbeplatz-Beispiele auf /werben */
#warum,#formate,#preisrechner,#tarife,#faq,#verfuegbare-formate{scroll-margin-top:100px}
.ads-showcase-section{padding-top:66px}.ads-showcase-head p{max-width:920px;color:#506a82;line-height:1.65}
.ads-placement-showcase{margin:28px 0 22px;padding:14px;background:linear-gradient(145deg,#f8fbff,#eef8f6);border:1px solid #cbdce8;border-radius:22px;box-shadow:0 18px 48px rgba(14,48,78,.08)}
.ads-placement-image-link{position:relative;display:block;overflow:hidden;border-radius:14px;background:#fff;border:1px solid #d7e3ec}
.ads-placement-image-link img{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;background:#fff}
.ads-placement-image-link:focus{outline:4px solid var(--focus);outline-offset:4px}.ads-placement-image-link:hover img{filter:saturate(1.02)}
.ads-placement-zoom{position:absolute;right:12px;bottom:12px;padding:8px 11px;border-radius:999px;background:rgba(13,44,78,.92);color:#fff;font-size:.82rem;font-weight:800;box-shadow:0 5px 18px rgba(0,0,0,.2)}
.ads-placement-showcase figcaption{padding:11px 5px 1px;color:#5c7185;font-size:.88rem;line-height:1.5}
.ads-page-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:24px 0}
.ads-page-example-grid article{background:#fff;border:1px solid #d4e0ea;border-radius:17px;padding:21px;box-shadow:0 8px 24px rgba(16,45,77,.04)}
.ads-page-example-label{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:999px;background:#e8f5f3;color:#087f75;font-size:.78rem;font-weight:900;letter-spacing:.02em}
.ads-page-example-grid h3{margin:11px 0 7px;color:#14395f}.ads-page-example-grid p{margin:0;color:#506a82;line-height:1.55}.ads-page-example-grid ul{margin:14px 0 0;padding-left:20px;color:#31516d;display:grid;gap:5px}
.ads-showcase-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin:24px 0 50px}
.ads-format-catalog{padding-top:4px;border-top:1px solid #d7e2eb}.ads-format-catalog .section-head.compact{padding-top:34px}.ads-format-catalog .section-head.compact h3{font-size:clamp(1.45rem,2.8vw,2rem);margin:7px 0}.ads-format-catalog .section-head.compact p{max-width:900px;color:#506a82}
@media(max-width:900px){.ads-page-example-grid{grid-template-columns:1fr}.ads-placement-showcase{padding:9px;border-radius:17px}.ads-placement-image-link{overflow:auto}.ads-placement-image-link img{min-width:760px;width:760px;max-width:none}.ads-placement-showcase figcaption{padding-inline:2px}.ads-placement-zoom{position:sticky;left:12px;bottom:12px;display:inline-flex;margin:-46px 0 10px 12px}}
@media(max-width:650px){.ads-showcase-section{padding-top:48px}.ads-showcase-actions{display:grid}.ads-showcase-actions .link{width:100%;justify-content:center}.ads-placement-showcase{margin-inline:-4px}.ads-placement-showcase figcaption{font-size:.82rem}}
@media(prefers-reduced-motion:reduce){.ads-placement-image-link:hover img{filter:none}}

/* Rathaus.com V3.0.14 – globale mobile Hauptnavigation */
.mobile-menu-toggle{display:none;align-items:center;justify-content:center;gap:9px;min-width:48px;min-height:48px;padding:8px 10px;border:1px solid #a9bdd1;border-radius:13px;background:#fff;color:var(--ink);font-weight:800;box-shadow:0 5px 18px rgba(16,45,77,.08)}
.mobile-menu-toggle:focus-visible{outline:4px solid var(--focus);outline-offset:2px}
.mobile-menu-icon{width:22px;height:18px;display:grid;align-content:space-between}.mobile-menu-icon i{display:block;width:22px;height:2px;border-radius:999px;background:currentColor;transition:transform .18s ease,opacity .18s ease}
.mobile-menu-toggle[aria-expanded="true"] .mobile-menu-icon i:nth-child(1){transform:translateY(8px) rotate(45deg)}.mobile-menu-toggle[aria-expanded="true"] .mobile-menu-icon i:nth-child(2){opacity:0}.mobile-menu-toggle[aria-expanded="true"] .mobile-menu-icon i:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.site-mobile-menu{position:absolute;left:0;right:0;top:100%;z-index:70;background:#fff;border-top:1px solid #d8e3ed;border-bottom:1px solid #c7d6e5;box-shadow:0 22px 45px rgba(15,43,75,.18)}
.site-mobile-menu[hidden]{display:none!important}.site-mobile-menu-inner{padding-block:12px 18px}.site-mobile-menu nav{display:grid;gap:5px}.site-mobile-menu a{display:flex;align-items:center;min-height:48px;padding:10px 13px;border-radius:11px;text-decoration:none;color:var(--ink);font-weight:760}.site-mobile-menu a:hover,.site-mobile-menu a:focus-visible,.site-mobile-menu a[aria-current="page"]{background:#edf4fb;color:var(--blue)}.site-mobile-menu a:focus-visible{outline:3px solid var(--focus);outline-offset:1px}.site-mobile-menu .mobile-menu-cta{margin-top:5px;background:var(--blue);color:#fff}.mobile-menu-open{overflow:hidden}
#warum,#werbeplaetze,#tarife,#faq,#verfuegbare-formate,.legacy-anchor{scroll-margin-top:110px}.legacy-anchor{display:block;height:0;overflow:hidden}
@media(max-width:950px){.mobile-menu-toggle{display:inline-flex}.header-cta{display:none}.topbar-inner{gap:12px}.brand{margin-right:auto}.mobile-menu-label{display:inline}.site-mobile-menu{max-height:calc(100vh - 84px);overflow:auto;overscroll-behavior:contain}}
@media(max-width:650px){.mobile-menu-toggle{min-width:46px;min-height:46px;padding-inline:9px}.mobile-menu-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-mobile-menu{max-height:calc(100vh - 70px)}#warum,#werbeplaetze,#tarife,#faq,#verfuegbare-formate,.legacy-anchor{scroll-margin-top:88px}}
@media(prefers-reduced-motion:reduce){.mobile-menu-icon i{transition:none}}

/* V3.0.15 — unmistakable /werben landing-page entry to the visual ad placement overview. */
.ads-live-notice{margin-top:24px;margin-bottom:8px;padding:15px 18px;border:2px solid #9cd9cf;border-radius:16px;background:linear-gradient(135deg,#effbf8,#f5f9ff);display:flex;gap:12px 18px;align-items:center;flex-wrap:wrap;box-shadow:0 10px 28px rgba(14,48,78,.07)}
.ads-live-notice strong{font-size:1.02rem;color:var(--ink)}.ads-live-notice span{color:#46627b;flex:1 1 360px}.ads-live-notice a{font-weight:850;color:var(--blue);text-decoration:none}.ads-live-notice a:hover{text-decoration:underline}.ads-live-notice a:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:5px}
@media(max-width:650px){.ads-live-notice{margin-top:16px;padding:14px}.ads-live-notice span{flex-basis:100%}.ads-live-notice a{width:100%}}
