/* Lorenz Schädlingsbekämpfung — V5.2 Airy Professional Ziel: heller, ruhiger, hochwertiger; weniger Dashboard-/Kacheloptik. */
:root,
body,
body.night{ --bg:#f7f8f5!important; --paper:#ffffff!important; --ink:#1f2822!important; --muted:#667269!important; --sage:#eef3ee!important; --sage2:#e3ebe5!important; --green:#24583d!important; --green2:#173c2a!important; --line:#dce4dd!important; --lime:#a8c96a!important; --warm:#f2f0ea!important; --shadow:0 18px 48px rgba(24,55,39,.08)!important; --r:20px!important; --max:1180px!important;
}
html{color-scheme:light!important;background:var(--bg)!important}
body,body.night{background:var(--bg)!important;color:var(--ink)!important;font-size:16px;line-height:1.65}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 88% 4%,rgba(108,151,122,.08),transparent 32rem)}
.wrap{width:min(var(--max),calc(100% - 34px))!important} /* ---------- Header / navigation ---------- */
.topnote{background:var(--green2)!important;color:#f5faf6!important;border:0!important}
.topnote .wrap,.topnote.wrap{min-height:32px!important}
header.nav,body.night header.nav{ background:rgba(255,255,255,.94)!important; color:var(--ink)!important; border-bottom:1px solid rgba(31,68,46,.10)!important; box-shadow:0 7px 28px rgba(26,54,39,.05)!important; -webkit-backdrop-filter:blur(14px)!important;backdrop-filter:blur(14px)!important;
}
.navin{min-height:82px!important;height:auto!important}
.brand{color:var(--ink)!important;gap:12px!important}.brand img{width:68px!important}.brand span{font-size:15px!important;line-height:1.05!important}
.desktopnav,.desktopnav>a,.desktopnav>.navdrop>summary{color:var(--ink)!important;font-weight:740!important}
.desktopnav a:hover,.desktopnav>.navdrop>summary:hover,.navlogin{color:var(--green)!important}
.navmenu,body.night .navmenu{background:#fff!important;border:1px solid var(--line)!important;box-shadow:0 22px 54px rgba(24,55,39,.12)!important;border-radius:16px!important}
.navmenu a:hover,body.night .navmenu a:hover{background:var(--sage)!important;color:var(--green2)!important}
.navmenu .all,.navmenu.all,body.night .navmenu.all{background:var(--sage)!important;color:var(--green2)!important}
.menu{background:#fff!important;border:1px solid var(--line)!important;color:var(--ink)!important;box-shadow:none!important}
.mobilemenu{background:#fff!important;color:var(--ink)!important;border-radius:0 0 18px 18px!important}
.mobilemenu a,.mobilemenu summary{color:var(--ink)!important}.mobilemenu details div a{color:var(--muted)!important}
.mobileClose{color:var(--muted)!important} /* ---------- Buttons ---------- */
.btn{border-radius:12px!important;padding:12px 18px!important;min-height:46px!important;box-shadow:none!important;font-weight:780!important;letter-spacing:-.01em;transition:transform .18s ease,box-shadow .18s ease,background .18s ease!important}
.btn:hover{transform:translateY(-1px)!important}
.primary{background:var(--green)!important;color:#fff!important;border:1px solid var(--green)!important}
.primary:hover{background:var(--green2)!important;box-shadow:0 10px 24px rgba(28,82,53,.16)!important}
.soft{background:#fff!important;color:var(--green2)!important;border:1px solid #cfdad1!important}
.soft:hover{background:var(--sage)!important;border-color:#b8cabd!important} /* ---------- Type / spacing ---------- */
main{overflow:hidden}
h1,h2,h3{color:var(--ink)!important;text-wrap:balance;hyphens:none!important}
h1{font-size:clamp(40px,6.4vw,72px)!important;line-height:1.01!important;letter-spacing:-.052em!important;margin-top:16px!important;margin-bottom:20px!important}
h2{font-size:clamp(29px,4.1vw,48px)!important;line-height:1.08!important;letter-spacing:-.042em!important}
h3{letter-spacing:-.025em!important}
p{orphans:3;widows:3}
.kicker,.eyebrow{color:var(--green)!important}
.kicker{background:transparent!important;border:0!important;padding:0!important;border-radius:0!important;font-size:12px!important;letter-spacing:.085em!important}
.kicker::before{background:var(--green)!important}
.eyebrow{letter-spacing:.095em!important;font-size:11px!important}
.heroLead,.hero p,.sectionhead p,.sectionHead p,.lead,.panel p,.step p,.related span,.fact span,.legal,.muted{color:var(--muted)!important}
.breadcrumbs,.crumbs{color:#7a857d!important;margin-top:22px!important;margin-bottom:0!important}
.breadcrumbs a,.crumbs a{color:var(--green)!important} /* ---------- Hero ---------- */
.hero{padding:clamp(54px,8vw,98px) 0 clamp(58px,8vw,94px)!important;background:linear-gradient(180deg,#fff 0%,#fbfcfa 65%,var(--bg) 100%)!important}
.heroGrid{gap:clamp(34px,6vw,76px)!important;align-items:center!important}
.heroGrid>div:first-child{max-width:760px}
.hero p,.heroLead{font-size:clamp(17px,1.6vw,20px)!important;line-height:1.65!important;max-width:760px!important}
.heroActions{gap:10px!important;margin-top:24px!important}
.trust{margin-top:24px!important;color:#506158!important;font-size:13px!important;gap:7px 11px!important}
.trust .sep{color:#aebbb2!important}
.heroCard{ background:linear-gradient(150deg,#eef5ef 0%,#f7faf7 100%)!important; border:0!important;border-radius:28px!important;padding:clamp(24px,3.2vw,36px)!important; box-shadow:none!important;position:relative!important;overflow:hidden!important;
}
.heroCard::after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-90px;top:-95px;background:rgba(36,88,61,.07);pointer-events:none}
.heroCard h2{font-size:clamp(25px,3vw,34px)!important}
.heroCard p,.heroCard span{color:#5e6e64!important}
.heroCard .eyebrow{color:var(--green)!important}
.heroCard .auto{background:rgba(36,88,61,.10)!important;color:var(--green2)!important}
.season{background:#fff!important;border:1px solid #e1e9e2!important;border-radius:18px!important;padding:22px!important;box-shadow:0 12px 28px rgba(30,65,46,.05)!important}
.season small{color:var(--green)!important}.season h3{font-size:24px!important}.season p{font-size:15px!important}
.seasonLink,.textlink{color:var(--green)!important}
.dot{background:#cbd7ce!important}.dot.on{background:var(--green)!important} /* ---------- Main content: more breathing room ---------- */
section.content,main>section:not(.hero):not(.cta):not(.region){padding:clamp(58px,7vw,92px) 0!important}
section.content+section.content{border-top:0!important}
.sectionhead,.sectionHead{max-width:790px!important;margin-bottom:clamp(26px,4vw,44px)!important}
.sectionhead p,.sectionHead p{font-size:clamp(16px,1.5vw,18px)!important;line-height:1.7!important}
.sectionhead h2,.sectionTitle{margin-top:8px!important;margin-bottom:14px!important} /* ---------- Reduce card overload ---------- */
.panel:not(.business),.warning{ background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important; padding:10px 0!important;
}
.grid2{gap:clamp(32px,5vw,64px)!important}
.grid2>.panel:not(.business),.grid2>.warning{border-top:2px solid #dce7df!important;padding-top:22px!important}
.panel h3,.warning h3{font-size:clamp(21px,2.2vw,28px)!important;margin-bottom:10px!important} /* Existing trust cards become editorial columns, not boxes */
.seo46Authority{background:#fff!important}
.seo46TrustGrid{gap:clamp(26px,4vw,48px)!important}
.seo46TrustCard{ background:transparent!important;border:0!important;border-top:2px solid #dbe6de!important;border-radius:0!important; padding:22px 0 0!important;box-shadow:none!important;
}
.seo46TrustCard h3{font-size:21px!important}.seo46TrustCard p{color:var(--muted)!important} /* Accordions: calm list rows instead of many boxed cards */
.accordion{border-top:1px solid var(--line)!important}
details.box{ background:transparent!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;overflow:visible!important;margin:0!important;
}
details.box summary{padding:21px 2px!important;font-size:clamp(17px,1.7vw,20px)!important;font-weight:780!important;color:var(--ink)!important}
details.box summary::after{color:var(--green)!important}
details.box .detailbody{padding:0 2px 24px!important;border:0!important;color:var(--muted)!important}
details.box[open]{background:transparent!important}
.links{gap:10px 18px!important} /* Steps become an editorial process rail */
.steps{gap:0!important;border-top:1px solid var(--line)!important}
.step{background:transparent!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;padding:20px 0!important;box-shadow:none!important}
.step h3{font-size:20px!important;margin-bottom:5px!important}.step p{margin-bottom:0!important} /* Link grids: still clickable, visually quieter */
.related{gap:12px!important}
.related a,.serviceCard,.citycard{ background:#fff!important;border:1px solid #e1e7e2!important;border-radius:16px!important;padding:18px 19px!important;box-shadow:none!important;
}
.related a:hover,.serviceCard:hover,.citycard:hover{background:#f4f7f4!important;border-color:#cbd9ce!important}
.related a{color:var(--ink)!important}.related a span{margin-top:5px!important;line-height:1.5!important}
.servicechips{gap:8px!important}.servicechips a{background:#fff!important;border:1px solid var(--line)!important;color:var(--green2)!important}.servicechips a:hover{background:var(--sage)!important} /* Region modules */
.region{padding:clamp(42px,6vw,72px) 0!important;background:transparent!important}
.regionCard,.areaBox,.localFocus{ background:#eef4ef!important;border:0!important;border-radius:24px!important;padding:clamp(24px,4vw,38px)!important;box-shadow:none!important;
}
.regionCard p,.areaBox p,.localFocus p{color:#5f6d64!important}
.citychips span{background:#fff!important;color:var(--ink)!important;border:1px solid #dde5df!important} /* Image/evidence sections */
.lorenz-evidence{background:#fff!important}
.evidenceGrid,.evidenceSolo{gap:24px!important}
.evidenceCard{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important;margin:0!important}
.evidenceCard img{border-radius:24px!important;box-shadow:0 18px 48px rgba(26,56,40,.08)!important}
.evidenceCard figcaption{padding:15px 2px 0!important;color:var(--muted)!important;line-height:1.55!important}
.evidenceCard figcaption strong{color:var(--ink)!important;display:block!important;margin-bottom:4px!important}
.evidenceNote{background:var(--sage)!important;border:0!important;color:var(--muted)!important;border-radius:16px!important} /* Business / monitoring should feel premium, not like another card */
.panel.business,.business{ background:var(--green2)!important;color:#fff!important;border:0!important;border-radius:26px!important; padding:clamp(28px,5vw,48px)!important;box-shadow:none!important;
}
.business h2,.business h3,.business .eyebrow{color:#fff!important}.business p,.business .mini span{color:#dce9df!important}
.business .btn.soft{background:#fff!important;color:var(--green2)!important;border-color:#fff!important}
.business .mini{gap:9px!important}.business .mini span{border-color:rgba(255,255,255,.18)!important} /* CTA: one decisive dark-green block */
.cta{padding:clamp(24px,5vw,56px) 0 clamp(70px,8vw,108px)!important}
.ctabox,.ctabox.soft{ background:var(--green2)!important;color:#fff!important;border:0!important;border-radius:28px!important; padding:clamp(28px,5vw,54px)!important;box-shadow:none!important;
}
.ctabox h2{color:#fff!important;font-size:clamp(30px,4.6vw,50px)!important}.ctabox p{color:#dbe7df!important;font-size:17px!important}
.ctabox .btn.primary{background:#fff!important;color:var(--green2)!important;border-color:#fff!important}
.ctabox .btn.soft{background:transparent!important;color:#fff!important;border-color:rgba(255,255,255,.42)!important}
.ctabox .btn.soft:hover{background:rgba(255,255,255,.10)!important} /* Legal/privacy pages */
.privacyfacts{gap:14px!important}.fact{background:#fff!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:none!important}
details.card{background:#fff!important;border:1px solid var(--line)!important;border-radius:16px!important;margin-bottom:10px!important}
details.card .content{border-top-color:var(--line)!important}.emphasis{background:#eef4ef!important;border-color:#dce7df!important;color:var(--ink)!important}
.emphasis summary::after{color:var(--green)!important}.emphasis .content,.emphasis .muted{color:var(--muted)!important} /* Contact modal */
dialog#contactDialog{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important;box-shadow:0 30px 90px rgba(16,40,26,.22)!important}
#contactDialog .modalTop{background:#fff!important;border-bottom:1px solid var(--line)!important}
#contactDialog input,#contactDialog select,#contactDialog textarea,#formular input,#formular select,#formular textarea{background:#fff!important;color:var(--ink)!important;border-color:#ced9d1!important}
#contactDialog .captchaQuestion,#formular .captchaQuestion{background:var(--sage)!important;color:var(--ink)!important;border-color:var(--line)!important}
dialog::backdrop{background:rgba(15,32,22,.48)!important;backdrop-filter:blur(3px)} /* Privacy control */
.privacyFab,.privacyInfo{background:#fff!important;color:var(--ink)!important;border-color:var(--line)!important}.privacyInfo p{color:var(--muted)!important} /* Footer / mobile bar */
footer{background:#fff!important;color:#6e7971!important;border-top:1px solid var(--line)!important;padding-top:32px!important}
.footlinks a{color:var(--ink)!important}.footlinks a:hover{color:var(--green)!important}
.mobilebar,body.night .mobilebar{background:rgba(255,255,255,.96)!important;border-top:1px solid var(--line)!important;box-shadow:0 -10px 32px rgba(25,52,38,.08)!important} /* Homepage-specific hierarchy */
body.v52-home #leistungen{background:#fff!important;padding:clamp(68px,8vw,108px) 0!important}
body.v52-home .seo46Authority{padding:clamp(66px,8vw,104px) 0!important}
body.v52-home .region{background:#f1f5f1!important;padding:clamp(64px,8vw,96px) 0!important}
body.v52-home .regionCard{background:transparent!important;padding:0!important;border-radius:0!important}
body.v52-home main>section:not(.hero):not(.cta):not(.region):nth-of-type(even){background:#fbfcfa}
body.v52-home .audience{gap:48px!important}.audience>.panel{border-top:2px solid var(--line)!important;padding-top:22px!important}
body.v52-home .sectionTitle{max-width:900px!important} /* Make location/SEO-heavy pages feel less dense without hiding content */
.seo-city-links,.localCrosslinks,.seoIntent{background:#fbfcfa!important}
.seo-city-links .related,.localCrosslinks .related{margin-top:8px!important}
.intentGrid{gap:16px!important}.intentGrid>*{background:#fff!important;border:1px solid var(--line)!important;box-shadow:none!important} /* ---------- Responsive ---------- */
@media(min-width:760px){ .wrap{width:min(var(--max),calc(100% - 72px))!important} .heroGrid{grid-template-columns:minmax(0,1.16fr) minmax(340px,.84fr)!important} .seo46TrustGrid{grid-template-columns:repeat(3,1fr)!important} .steps{grid-template-columns:1fr 1fr!important;column-gap:44px!important;border-top:0!important} .step{border-top:1px solid var(--line)!important;border-bottom:0!important;padding:22px 0 28px!important}
}
@media(min-width:1280px){ .navin{min-height:88px!important}.brand img{width:76px!important}
}
@media(max-width:759px){ .wrap{width:min(100% - 30px,var(--max))!important} .topnote{font-size:11px!important} .navin{min-height:72px!important} .brand img{width:56px!important} .hero{padding:42px 0 58px!important} h1{font-size:clamp(38px,11.2vw,52px)!important;line-height:1.02!important} h2{font-size:clamp(28px,8.2vw,38px)!important} .heroCard{border-radius:22px!important;padding:22px!important} .season{padding:18px!important} section.content,main>section:not(.hero):not(.cta):not(.region){padding:54px 0!important} .sectionhead,.sectionHead{margin-bottom:28px!important} .grid2{gap:28px!important} .related{grid-template-columns:1fr!important} .panel.business,.business,.ctabox,.ctabox.soft{border-radius:22px!important} .heroActions .btn{flex:1 1 145px!important} .mobilebar .btn{min-height:48px!important}
}
@media(max-width:480px){ .brand span{display:none!important} .btn{padding:11px 14px!important} .heroActions{display:grid!important;grid-template-columns:1fr!important} .heroActions .btn{width:100%!important}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* V5.2 CTA override against legacy V5.0 brown secondary-action rules. */
:root,body,body.night{ --lorenz-soft-bg:#ffffff!important; --lorenz-soft-hover:#eef4ef!important; --lorenz-soft-ink:#173c2a!important;
}
a.btn.soft:not([href^="tel:"]),a.btn[data-open-contact]:not([href^="tel:"]){ background:#ffffff!important;color:var(--green2)!important;border:1px solid #cfdad1!important;
}
a.btn.soft:not([href^="tel:"]):hover,a.btn[data-open-contact]:not([href^="tel:"]):hover{ background:var(--sage)!important;color:var(--green2)!important;border-color:#b8cabd!important;
}
.ctabox .heroActions a.btn.soft:not([href^="tel:"]){ background:transparent!important;color:#ffffff!important;border:1px solid rgba(255,255,255,.46)!important;
}
.panel.business .heroActions a.btn.soft:not([href^="tel:"]){ background:#ffffff!important;color:var(--green2)!important;border-color:#ffffff!important;
}
.mobilebar a.btn.soft:not([href^="tel:"]){background:#ffffff!important;color:var(--green2)!important;border-color:#cfdad1!important}
/* Final mobile typography QA: German compound words must never split arbitrarily. */
h1,h2,h3{overflow-wrap:normal!important;word-break:normal!important;-webkit-hyphens:none!important;hyphens:none!important}
@media(max-width:759px){ body{font-size:16px!important} h1{font-size:clamp(36px,9.5vw,42px)!important;line-height:1.035!important;letter-spacing:-.045em!important} h2{font-size:clamp(28px,7.6vw,36px)!important;overflow-wrap:normal!important;word-break:normal!important} h3{overflow-wrap:normal!important;word-break:normal!important}
}
@media(max-width:759px){ html[lang^="de"] h1{font-size:clamp(33px,8.7vw,38px)!important;letter-spacing:-.043em!important}
} /* V5.2.1 – Kontaktformular: Adressdaten & Einsatzort */
dialog{max-height:min(92dvh,900px)!important;overflow:auto!important}
.modal{padding:clamp(20px,3vw,28px)!important}
.modalTop{margin-bottom:4px!important}
.modal h2{color:var(--ink)!important}
.fields{gap:13px!important}
.contactIdentity{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.contactAddressDetails{margin-top:2px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent}
.contactAddressDetails>summary{list-style:none;cursor:pointer;padding:17px 46px 17px 1px;font-weight:800;position:relative;color:var(--ink);line-height:1.25}
.contactAddressDetails>summary::-webkit-details-marker{display:none}
.contactAddressDetails>summary>span{display:block;color:var(--muted);font-size:12px;font-weight:620;margin-top:4px;line-height:1.4}
.contactAddressDetails>summary:after{content:"⌄";position:absolute;right:2px;top:14px;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--sage);color:var(--green2);font-size:18px;transition:transform .18s ease}
.contactAddressDetails[open]>summary:after{transform:rotate(180deg)}
.contactAddressBody{padding:2px 0 16px}
.contactAddressBlock{padding:17px 0;border-top:1px solid var(--line)}
.contactAddressBlock:first-child{border-top:0}
.contactAddressBlock h3{font-size:18px!important;line-height:1.15!important;margin:0 0 5px!important;color:var(--ink)!important}
.contactAddressBlock>p{font-size:12px!important;line-height:1.5!important;color:var(--muted)!important;margin:0 0 13px!important}
.contactAddressGrid,.contactStreetGrid{display:grid;gap:11px}
.contactAddressGrid{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)}
.contactStreetGrid{grid-template-columns:minmax(0,1fr) 128px}
.contactAutocomplete{position:relative;display:block}
.contactSuggestions{position:absolute;z-index:90;left:0;right:0;top:100%;margin-top:5px;background:#fff;border:1px solid var(--line);border-radius:13px;box-shadow:0 18px 42px rgba(24,55,39,.14);max-height:230px;overflow:auto;display:none}
.contactSuggestions.is-open{display:block}
.contactSuggestion{display:block;width:100%;border:0;border-bottom:1px solid #edf1ed;background:#fff;color:var(--ink);text-align:left;padding:10px 12px;font:inherit;font-size:13px;cursor:pointer}
.contactSuggestion:last-child{border-bottom:0}
.contactSuggestion:hover,.contactSuggestion.is-active{background:var(--sage)}
.contactSuggestion small{display:block;margin-top:2px;color:var(--muted);font-size:11px;line-height:1.3}
.contactSuggestionEmpty{padding:10px 12px;color:var(--muted);font-size:12px}
.contactFieldHint{display:block;color:var(--muted);font-size:11px;font-weight:520;line-height:1.4;margin:5px 0 0}
.contactOptional{color:var(--muted);font-weight:520}
.contactCheck{display:flex!important;align-items:flex-start;gap:9px;padding:4px 0 2px;font-size:13px!important;font-weight:720!important;cursor:pointer}
.contactCheck input{width:18px!important;height:18px!important;min-width:18px!important;margin:2px 0 0!important;padding:0!important;accent-color:var(--green)}
.contactCheck span{line-height:1.45}
.contactBillingBlock.is-hidden{display:none}
.contactAddressBlock input[aria-busy="true"]{background-image:linear-gradient(90deg,transparent,rgba(36,88,61,.06),transparent);background-size:200% 100%;animation:lorenzAddressLoading 1s linear infinite}
@keyframes lorenzAddressLoading{to{background-position:-200% 0}}
@media(max-width:620px){.contactIdentity,.contactAddressGrid,.contactStreetGrid{grid-template-columns:1fr}.contactAddressDetails>summary{padding-right:44px}.contactSuggestions{max-height:190px}} /* V5.2.3 – Dezente Hervorhebung Gewerbe & Monitoring in der Desktop-Navigation */
.desktopnav > a[href="./monitoring.html"]{ background:#eaf4ec!important; color:#24583d!important; border:1px solid #c8ddce!important; border-radius:999px!important; padding:9px 14px!important; box-shadow:0 3px 12px rgba(36,88,61,.06)!important; transition:background .16s ease,border-color .16s ease,transform .16s ease,box-shadow .16s ease!important;
}
.desktopnav > a[href="./monitoring.html"]:hover{ background:#dceee1!important; color:#173c2a!important; border-color:#b6d2bd!important; box-shadow:0 5px 16px rgba(36,88,61,.10)!important; transform:translateY(-1px);
} /* V5.2.5 – Praxisbilder Taubenabwehr */
.pigeonPractice{padding-top:42px!important;padding-bottom:58px!important}
.pigeonPractice .sectionhead{max-width:820px!important;margin-bottom:28px!important}
.pigeonPhotoGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:960px;margin:0 auto}
.pigeonPhoto{margin:0;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(23,60,42,.055)}
.pigeonPhoto img{display:block;width:100%;height:clamp(250px,28vw,340px);object-fit:cover;object-position:center 48%}
.pigeonPhoto figcaption{padding:13px 15px 15px;color:var(--muted);font-size:13px;line-height:1.45}
@media(max-width:680px){ .pigeonPractice{padding-top:34px!important;padding-bottom:48px!important} .pigeonPhotoGrid{grid-template-columns:1fr;gap:15px;max-width:540px} .pigeonPhoto img{height:260px}
} 

/* V5.2.7 FINAL QA — light-theme legibility, spacing and component consistency */
:root,body,body.night{
  --muted:#59665e!important;
}
body,body.night{
  background:var(--bg)!important;
  color:var(--ink)!important;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  text-rendering:optimizeLegibility;
}
/* Secondary copy must remain readable on every light surface. */
.heroLead,.hero p,.sectionhead p,.sectionHead p,.lead,
.panel p,.step p,.related span,.fact span,.legal,.muted,
.regionCard p,.areaBox p,.localFocus p,.pigeonPhoto figcaption,
.contactFieldHint,.contactOptional,.contactAddressDetails>summary>span,
.contactAddressBlock>p,.contactSuggestion small,.contactSuggestionEmpty{
  color:var(--muted)!important;
}
.heroCard p,.heroCard span,.heroCard .mini span,.season p{
  color:#59665e!important;
}
.breadcrumbs,.crumbs,.breadcrumbs span,.crumbs span{
  color:#59665e!important;
}
.trust{color:#506158!important}
.trust .sep{color:#667269!important}
.evidenceNote,.evidenceNote p,.evidenceNote strong,.evidenceNote em{
  color:#536057!important;
}
/* Legal contact box had legacy dark-theme foreground colors on a light card. */
.contactbox,.contactbox p,.contactbox strong,.contactbox span,.contactbox address,.contactbox a{
  color:var(--ink)!important;
}
.contactbox a{text-decoration-color:#8aa393!important}
/* Keep light cards and controls geometrically consistent. */
.heroCard,.regionCard,.areaBox,.localFocus,.serviceCard,.citycard,
.fact,details.card,.pigeonPhoto,.privacyInfo,dialog#contactDialog{
  border-radius:20px!important;
}
input,select,textarea{
  border-radius:12px!important;
}
#contactDialog input,#contactDialog select,#contactDialog textarea,
#formular input,#formular select,#formular textarea{
  color:var(--ink)!important;
  background:#fff!important;
}
/* Consistent paragraph rhythm without creating oversized gaps. */
article p,section p,.detailbody p{margin-top:0}
article p+p,.detailbody p+p{margin-top:.8em}
article p:last-child,.detailbody p:last-child{margin-bottom:0}
/* Prevent accidental tiny gaps and clipped copy in common grids. */
.grid2,.related,.serviceGrid,.seo46TrustGrid,.pigeonPhotoGrid{align-items:stretch}
.heroCard,.panel,.serviceCard,.citycard,.seo46TrustCard,.pigeonPhoto{min-width:0}
.heroCard p,.panel p,.serviceCard p,.citycard p,.seo46TrustCard p{overflow-wrap:break-word}
/* Preserve the requested green monitoring emphasis. */
.desktopnav > a[href="./monitoring.html"]{
  background:#eaf4ec!important;
  color:#24583d!important;
  border-color:#c8ddce!important;
}
@media(max-width:759px){
  .breadcrumbs,.crumbs{line-height:1.55!important}
  .pigeonPhoto figcaption{font-size:13px!important;line-height:1.5!important}
}
/* V5.2.7 legal-card contrast correction */
.card.emphasis{
  background:#eef4ef!important;
  border-color:#dce7df!important;
  color:var(--ink)!important;
}
.card.emphasis p,.card.emphasis strong,.card.emphasis span,.card.emphasis address,.card.emphasis a{
  color:var(--ink)!important;
}
