
:root{--bg:#041016;--bg2:#071b22;--panel:#081923;--teal:#36ddd4;--teal2:#86f2eb;--text:#f5f7f7;--muted:#c5d3d7;--line:rgba(54,221,212,.22)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}a{text-decoration:none;color:inherit}.wrap{max-width:1380px;margin:auto;padding:0 34px}
.topbar{background:#02090d;border-bottom:1px solid var(--line)}.topline{min-height:44px;display:flex;justify-content:flex-end;align-items:center;gap:24px;font-size:13px;font-weight:800;white-space:nowrap}.topline span+span{border-left:1px solid rgba(255,255,255,.22);padding-left:24px}
header{background:#07161c;position:sticky;top:0;z-index:99;border-bottom:1px solid var(--line)}.nav{height:92px;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;min-width:310px}.qmark{width:58px;height:58px;border:8px solid var(--teal);border-radius:50%;position:relative;margin-right:18px}.qmark:after{content:"";position:absolute;width:25px;height:8px;background:var(--teal);right:-18px;bottom:-7px;transform:rotate(45deg);border-radius:5px}.brandtext b{display:block;font-size:25px;letter-spacing:5px}.brandtext small{display:block;font-size:10px;letter-spacing:7px;margin-top:4px}.menu{margin-left:auto;display:flex;gap:28px;align-items:center;font-size:13px;font-weight:900}.menu-item{position:relative}.menu a{display:block;padding:34px 0}.menu a.active{border-bottom:3px solid var(--teal)}.drop{color:var(--teal)}
.dropdown{position:absolute;display:none;top:76px;left:-20px;width:640px;background:#06141a;border:1px solid var(--line);box-shadow:0 22px 60px rgba(0,0,0,.45);padding:18px;border-radius:14px;grid-template-columns:1fr 1fr;gap:8px}.menu-item:hover .dropdown,.menu-item:focus-within .dropdown{display:grid}.dropdown a{padding:10px 12px;border:1px solid rgba(255,255,255,.06);border-radius:9px;font-weight:700}.dropdown a:hover{background:#0b2530;color:var(--teal2)}
.hero{min-height:520px;background:linear-gradient(90deg,rgba(2,10,14,.95),rgba(2,10,14,.76) 45%,rgba(2,10,14,.12)),url('../media/asset-98a3d0ac28b1617f23a6.webp') center/cover no-repeat;display:flex;align-items:center}.hero-copy{max-width:650px;padding:58px 0}.hero h1{font-size:64px;line-height:.95;margin:0 0 16px}.hero h1 span{display:block;color:var(--teal)}.tagline{font-size:21px;font-weight:900}.rule{width:52px;height:4px;background:var(--teal);margin:18px 0}.intro{font-size:18px;line-height:1.55;font-weight:700}.actions{display:flex;gap:18px;margin-top:25px}.btn{display:inline-block;padding:15px 25px;border:2px solid var(--teal);font-weight:900;font-size:13px;text-align:center}.btn.primary{background:var(--teal);color:#08292d}
.trust{background:#09263c;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-grid{display:grid;grid-template-columns:1.25fr .8fr .8fr .9fr 2fr;align-items:center}.trust-item{min-height:112px;padding:17px 20px;border-right:1px solid rgba(54,221,212,.22);display:flex;align-items:center;gap:15px}.trust-item:last-child{border-right:0}.g{font-size:58px;font-weight:900}.stars{color:#ffd64a;letter-spacing:2px}.ico{font-size:32px;color:var(--teal)}.logos{display:flex;gap:14px;align-items:center;justify-content:center}.logos img{max-height:54px;max-width:112px;object-fit:contain;background:#fff;border-radius:7px;padding:5px}.logos img.budeg{background:#1e579e}
.forensics{display:grid;grid-template-columns:1.05fr 1fr .78fr;background:#041016}.forensic-img{min-height:330px;background:url('../media/asset-9bd7e4166c3d86b05b75.webp') center/cover no-repeat}.forensic-copy{padding:42px;display:flex;flex-direction:column;justify-content:center}.eyebrow,.kicker{color:var(--teal);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.forensic-copy h2{font-size:34px;margin:10px 0}.forensic-copy p,.checks{color:#d8e3e5;line-height:1.6}.checks{list-style:none;padding:0}.checks li{margin:7px 0}.checks li:before{content:'✓';color:var(--teal);margin-right:10px}.world{margin:22px;border:1px solid var(--teal);padding:24px;display:flex;flex-direction:column;justify-content:center}.world img{width:100%;max-height:130px;object-fit:contain}.world h3{color:var(--teal);font-size:13px;text-transform:uppercase}.bottom-benefits{background:#08243a}.benefit-grid{display:grid;grid-template-columns:repeat(4,1fr)}.benefit{padding:18px 20px;border-right:1px solid var(--line)}.benefit:last-child{border-right:0}.benefit b{color:#8ef6ef;display:block}.benefit small{color:#dce6e8}
.section{padding:78px 0}.light{background:#f5fafb;color:#102127}.dark{background:#06151c}.section h2{font-size:43px;margin:10px 0 14px}.lead{max-width:980px;font-size:17px;line-height:1.7;color:#566a70}.service-boxes{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:30px}.service-box{background:#fff;border:1px solid #d9e6e7;padding:28px}.service-box h3{font-size:28px;margin:0 0 10px}.service-list{display:grid;gap:0}.service-link{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 0;border-top:1px solid #e3ecee}.service-link:first-child{border-top:0}.service-link strong{display:block}.service-link small{display:block;color:#65777c;margin-top:4px;line-height:1.45}.service-link em{font-style:normal;color:#0c9294;font-size:22px}
.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:28px}.city-card{background:#0a1d25;border:1px solid var(--line);overflow:hidden}.city-card img{width:100%;height:170px;object-fit:cover;display:block}.city-card .pad{padding:18px}.city-card h3{margin:0 0 8px}.city-card p{color:#c6d5d8;line-height:1.55;font-size:14px}.city-card a{color:var(--teal2);font-weight:800}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:28px}.card{background:#0a1d25;border:1px solid var(--line);padding:26px}.card input,.card textarea,.card select{width:100%;background:#061219;color:#fff;border:1px solid rgba(54,221,212,.28);padding:14px;margin:7px 0 14px}.calbox{display:flex;min-height:410px;align-items:center;justify-content:center;text-align:center;background:linear-gradient(135deg,#092c38,#07151c);border:1px solid var(--line);padding:35px}.calbox h3{font-size:30px;margin:0 0 12px}.calbox p{color:#c9d7da;line-height:1.65}
footer{background:#020b0f;padding:42px 0;color:#a8bbc0}.foot{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}footer h4{color:#fff}.legal a{display:inline-block;margin-right:15px;color:#d7eaec}
.page-hero{min-height:430px;background-size:cover;background-position:center;display:flex;align-items:flex-end;border-bottom:1px solid var(--line)}.page-hero .inner{padding:68px 0;max-width:820px}.page-hero h1{font-size:52px;margin:8px 0 14px}.page-hero p{font-size:19px;line-height:1.65;color:#e0eaec}.page-main{background:#f7fbfb;color:#102127;padding:66px 0}.page-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:30px}.body-card{background:#fff;border:1px solid #dce8e9;padding:30px}.body-card h2,.body-card h3{color:#102127}.body-card p,.body-card li{font-size:16px;line-height:1.8;color:#42585e}.body-image{width:100%;height:360px;object-fit:cover;margin:22px 0}.side-card{background:#07171e;color:#fff;border:1px solid var(--line);padding:26px;position:sticky;top:122px}.side-card p,.side-card li{color:#d1dee0;line-height:1.7}.side-card .btn{width:100%;margin-top:12px}.city-hero{min-height:460px}.breadcrumbs{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#9ee7e3;font-weight:800}
@media(max-width:1100px){.menu{display:none}.trust-grid,.forensics,.service-boxes,.contact,.page-grid,.foot{grid-template-columns:1fr}.city-grid{grid-template-columns:1fr 1fr}.benefit-grid{grid-template-columns:1fr 1fr}.logos{flex-wrap:wrap}.brand{min-width:0}.topline{justify-content:center;flex-wrap:wrap;padding:8px 0}.trust-item{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:650px){.wrap{padding:0 18px}.brandtext b{font-size:19px}.brandtext small{font-size:8px}.qmark{width:44px;height:44px;border-width:6px}.hero h1{font-size:43px}.hero{background-position:68% center}.actions{flex-direction:column}.city-grid,.benefit-grid{grid-template-columns:1fr}.page-hero h1{font-size:36px}.topline{align-items:flex-start;flex-direction:column;gap:6px}.topline span+span{border:0;padding-left:0}.service-box{padding:20px}}

/* iPhone standalone fixes */
body{overflow-x:hidden}.topline{white-space:normal}.route{display:none;position:fixed;inset:0;z-index:9999;background:#07141a;overflow:auto}.route:target{display:block}.route .closebar{position:sticky;top:0;z-index:100;background:#020b0f;border-bottom:1px solid var(--line);padding:12px 18px;display:flex;justify-content:space-between;align-items:center}.route .closebar a{color:var(--teal2);font-weight:900}.route .page-hero{min-height:380px}.route .page-main{padding-bottom:90px}
@media(max-width:650px){header{position:relative}.nav{height:auto;min-height:82px;padding-top:14px;padding-bottom:14px}.brand{width:100%}.topbar{position:relative}.hero{min-height:480px}.hero-copy{padding:42px 0}.trust-grid{grid-template-columns:1fr!important}.forensics{grid-template-columns:1fr!important}.forensic-img{min-height:260px}.world{margin:18px}.service-boxes{grid-template-columns:1fr!important}.city-grid{grid-template-columns:1fr!important}.page-grid{grid-template-columns:1fr!important}.body-image{height:240px}.route .page-hero{min-height:330px}.menu{display:none}.logos{display:grid;grid-template-columns:repeat(3,1fr)}.logos img{max-width:100%;width:100%;height:54px}.topline span+span{padding-left:0}.topline{gap:4px}.section h2{font-size:34px}}

.service-second-visual{
  margin:26px 0 30px;
  border-radius:18px;
  overflow:hidden;
  background:#07171d;
  border:1px solid rgba(44,212,210,.22);
  box-shadow:0 18px 42px rgba(0,0,0,.20);
}
.service-second-visual img{
  display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;
}
.service-second-visual figcaption{
  padding:11px 15px 13px;color:#8da6ab;font-size:13px;line-height:1.45;
}
@media(max-width:700px){
  .service-second-visual{margin:20px 0 24px;border-radius:14px}
  .service-second-visual figcaption{font-size:12px}
}

/* v20 correction: clean premium images without grey frames */
.hero-slogan-v20{
  color:#67eee6;
  font-size:17px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin:0 0 14px;
}
.service-second-visual{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  overflow:hidden;
}
.service-second-visual img,
.body-card img,
.route img{
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
}
.service-second-visual figcaption{
  background:transparent !important;
  border:0 !important;
}
@media(max-width:700px){
  .hero-slogan-v20{font-size:13px;line-height:1.4;margin-bottom:10px}
}

/* Version 20 final refinements */
.city-grid{align-items:stretch}
.city-card{display:flex;flex-direction:column}
.city-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;border:0}
.city-card .city-copy{display:flex;flex-direction:column;flex:1}
.city-card .city-copy a{margin-top:auto}
@media(max-width:700px){.city-card img{aspect-ratio:16/9}}

/* v20 city photo correction */
.city-card img,.route[id^="stadt-"] .body-card img{
  border:0!important;outline:0!important;box-shadow:none!important;
  object-fit:cover!important;object-position:center!important;
}
.city-card img{aspect-ratio:16/9!important}
.route[id^="stadt-"] .body-card img{width:100%;aspect-ratio:16/9;height:auto}

/* v20: all city images embedded locally for iPhone/offline reliability */
.city-card img,
.route[id^="stadt-"] .body-card img{
  display:block!important;
  width:100%!important;
  aspect-ratio:16/9!important;
  object-fit:cover!important;
  object-position:center!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}

/* v20 – internationale Städte mit lokal eingebetteten Stadtfotos */
.intl-country-section{padding:64px 0;background:#06131a;border-top:1px solid rgba(58,220,215,.16)}
.intl-country-section h2{font-size:clamp(32px,4vw,48px);color:#fff;margin:7px 0 10px}
.intl-intro{max-width:980px;color:#a9bbc0;line-height:1.65;margin:0 0 26px}
.intl-city-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.intl-city-card{display:block;text-decoration:none;background:#091b23;border:1px solid rgba(58,220,215,.20);border-radius:14px;overflow:hidden}
.intl-city-card img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border:0!important;outline:0!important}
.intl-card-copy{padding:14px 16px 17px}.intl-card-copy h3{color:#fff;margin:0 0 5px}.intl-card-copy p{color:#9fb3b8;margin:0 0 11px}.intl-card-copy span{color:#58e2dc;font-weight:800}
.intl-route{display:none;position:fixed;inset:0;z-index:99999;background:#06131a;overflow:auto}
.intl-route:target{display:block}
.intl-close{position:sticky;top:0;z-index:10;display:block;padding:16px 24px;background:#031017;color:#72ebe5;text-align:right;font-weight:900}
.intl-route-hero{min-height:390px;background-size:cover;background-position:center;display:flex;align-items:flex-end}
.intl-route-hero .wrap{padding-top:80px;padding-bottom:48px}.intl-route-hero h1{font-size:clamp(38px,6vw,68px);color:#fff;margin:7px 0 12px}
.intl-route-hero p{color:#deebed;font-size:18px;max-width:760px}
.intl-route-body{padding-top:44px;padding-bottom:76px}.intl-route-body .body-card{max-width:960px;margin:0 auto}
.intl-route-body img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border:0!important;box-shadow:none!important;margin:24px 0}
@media(max-width:980px){.intl-city-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:580px){.intl-city-grid{grid-template-columns:1fr}.intl-country-section{padding:46px 0}.intl-route-hero{min-height:310px}.intl-close{text-align:center}}



/* v32 premium refinement — individually edited service and city pages */
:root{
  --petrol:#102638;
  --petrol-deep:#071A2B;
  --petrol-satin:#1B3A4F;
  --cream:#FBFAF7;
  --card:#FFFFFF;
  --platinum:#D5E0E1;
  --turquoise:#35C8BE;
  --ice:#A9D7DC;
  --bg:var(--petrol);
  --bg2:var(--petrol);
  --panel:var(--cream);
  --teal:var(--turquoise);
  --teal2:var(--turquoise);
  --text:var(--cream);
  --muted:rgba(251,250,247,.80);
  --line:rgba(169,215,220,.30);
  --radius-sm:10px;
  --radius-md:16px;
  --radius-lg:24px;
  --shadow-soft:0 18px 50px rgba(7,21,33,.12);
  --shadow-deep:0 26px 72px rgba(7,21,33,.29);
  --focus:0 0 0 4px rgba(53,200,190,.24);
}
html{scroll-padding-top:112px}
body{
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  line-height:1.5;
}
::selection{background:rgba(53,200,190,.34);color:#071A2B}
a,button,input,select,textarea{transition:border-color .22s ease,background-color .22s ease,color .22s ease,box-shadow .22s ease,transform .22s ease,opacity .22s ease}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:2px solid var(--teal2);outline-offset:3px;box-shadow:var(--focus)
}
.skip-link{position:fixed;left:18px;top:12px;z-index:1000000;padding:11px 15px;border-radius:9px;background:var(--teal);color:#031116;font-weight:900;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}
.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}

.topbar{background:linear-gradient(94deg,#071A2B 0%,#102638 52%,#123449 100%)}
.topline{
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr);
  align-items:stretch;gap:8px;min-height:0;padding:8px 22px;white-space:normal
}
.topline .top-contact-item{min-width:0;border:0!important;padding:0!important}
.top-contact{
  display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-height:48px;padding:7px 11px;
  border:1px solid rgba(169,215,220,.20);border-radius:10px;background:rgba(247,243,235,.04);color:#edf1f2
}
.top-contact:hover{border-color:rgba(169,215,220,.72);background:rgba(169,215,220,.10);color:var(--cream);transform:translateY(-1px)}
.top-contact__icon{width:21px;height:21px;margin:auto;color:var(--turquoise);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.top-contact__copy{display:block;min-width:0;line-height:1.12}
.top-contact__copy small{display:block;margin-bottom:3px;color:rgba(247,243,235,.80);font-size:8.5px;font-weight:900;letter-spacing:.105em;text-transform:uppercase}
.top-contact__copy strong{display:block;overflow-wrap:anywhere;color:var(--cream);font-size:12px;font-weight:820;letter-spacing:.015em}
header{background:rgba(10,27,41,.95);backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px)}
.nav{position:relative;gap:14px}
.brand{border-radius:10px}
.brand:hover .qmark{filter:drop-shadow(0 0 12px rgba(169,215,220,.32))}
.qmark{transition:filter .25s ease,transform .25s ease}
.brand:hover .qmark{transform:rotate(-3deg)}
.menu a{letter-spacing:.025em}
.menu>a,.menu-item>a{position:relative}
.menu>a:after,.menu-item>a:after{content:"";position:absolute;left:0;right:100%;bottom:25px;height:2px;background:var(--teal);transition:right .22s ease}
.menu>a:hover:after,.menu-item>a:hover:after{right:0}
.dropdown{border-radius:var(--radius-md);box-shadow:var(--shadow-deep);backdrop-filter:blur(18px)}
.dropdown a:hover{transform:translateX(3px)}
.dropdown__heading{display:none}

@media(min-width:1101px){
  .nav{
    display:grid;grid-template-columns:minmax(255px,1fr) auto minmax(255px,1fr);
    align-items:center;gap:0
  }
  .brand{grid-column:1;justify-self:start}
  .menu{
    grid-column:2;justify-self:center;justify-content:center;min-width:0;margin:0;
    gap:clamp(27px,2.35vw,42px);font-size:12.5px
  }
  .menu>a,.menu-item>a{white-space:nowrap}
  .dropdown{
    width:min(700px,calc(100vw - 48px));font-size:12px;line-height:1.38
  }
  .dropdown a{overflow-wrap:anywhere;hyphens:auto}
  .menu>.menu-item:nth-of-type(1) .dropdown{left:-118px}
  .menu>.menu-item:nth-of-type(2) .dropdown.dropdown--cities{
    left:50%;width:min(920px,calc(100vw - 40px));max-height:min(68vh,610px);
    grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 8px;padding:18px;
    overflow-y:auto;overscroll-behavior:contain;transform:translateX(-56%)
  }
  .dropdown--cities .dropdown__heading{
    display:block;grid-column:1/-1;margin:0 0 4px;padding:3px 8px 12px;
    border-bottom:1px solid rgba(169,215,220,.26);color:var(--platinum);
    font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase
  }
  .dropdown--cities a{display:flex;align-items:center;min-height:38px;padding:8px 10px}
}

.hero-copy{max-width:840px}
.hero-brandline{
  display:inline-flex;align-items:center;gap:12px;margin-bottom:18px;
  color:var(--teal2);font-size:13px;font-weight:850;letter-spacing:.18em;text-transform:uppercase
}
.hero-brandline:before{content:"";width:38px;height:2px;border-radius:2px;background:var(--teal)}
.hero h1{max-width:820px;font-size:clamp(56px,5.25vw,76px);line-height:.96;letter-spacing:-.035em;text-wrap:balance}
.hero h1 span{display:block;color:var(--teal)}
.hero .intro{max-width:720px}
.btn{border-radius:10px;letter-spacing:.045em;box-shadow:0 0 0 rgba(0,0,0,0)}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(0,0,0,.18)}
.btn.primary:hover{box-shadow:0 14px 34px rgba(169,215,220,.17)}

.section h2,.page-hero h1,.intl-route-hero h1{text-wrap:balance;letter-spacing:-.025em}
.trust-item,.benefit{transition:background-color .22s ease}
.trust-item:hover,.benefit:hover{background:rgba(169,215,220,.035)}
.service-box,.card,.body-card{border-radius:var(--radius-md);box-shadow:0 8px 30px rgba(16,38,56,.06)}
.country-overview{margin-top:clamp(38px,6vw,72px);padding-top:clamp(28px,4vw,46px);border-top:1px solid rgba(169,215,220,.28)}
.country-overview>h3{margin:0 0 22px;font-size:clamp(25px,3vw,38px);color:var(--cream)}
.country-overview__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.country-overview__card{display:block;padding:25px;border:1px solid rgba(169,215,220,.3);border-radius:14px;background:linear-gradient(145deg,rgba(169,215,220,.12),rgba(255,255,255,.025));transition:.2s ease}
.country-overview__card:hover{transform:translateY(-3px);border-color:var(--turquoise)}
.country-overview__card strong{display:block;margin-bottom:8px;color:#fff;font-size:21px}
.country-overview__card span{color:var(--muted);line-height:1.55}
.service-link{border-radius:8px;padding-left:10px;padding-right:10px;margin:0 -10px}
.service-link:hover{background:#F9F4EA;transform:translateX(3px)}
.service-link em{transition:transform .22s ease}
.service-link:hover em{transform:translateX(4px)}

.city-card,.intl-city-card{position:relative;border-radius:var(--radius-md);box-shadow:0 12px 32px rgba(0,0,0,.12);isolation:isolate;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}
.city-card:before,.intl-city-card:before{
  content:attr(data-city-label);position:absolute;z-index:0;left:0;right:0;top:0;aspect-ratio:16/9;
  display:grid;place-items:center;padding:22px;text-align:center;color:rgba(208,224,227,.82);
  font-size:clamp(15px,1.4vw,20px);font-weight:850;letter-spacing:.08em;text-transform:uppercase;
  background:radial-gradient(circle at 76% 18%,rgba(169,215,220,.16),transparent 38%),linear-gradient(135deg,#102638,#041016)
}
.city-card img,.intl-city-card img,.route[id^="stadt-"] .body-card img,.intl-route .body-card img{
  opacity:.08;filter:saturate(.7);background:#071A2B
}
.city-card>img,.intl-city-card>img{position:relative;z-index:1}
.city-card img.city-photo-ready,.intl-city-card img.city-photo-ready,.route[id^="stadt-"] .body-card img.city-photo-ready,.intl-route .body-card img.city-photo-ready{
  opacity:1;filter:saturate(.92) contrast(1.03)
}
.city-card:hover,.intl-city-card:hover{transform:translateY(-5px);border-color:rgba(169,215,220,.48);box-shadow:0 20px 48px rgba(0,0,0,.24)}
.city-card:hover img,.intl-city-card:hover img{transform:scale(1.025)}
.city-card img,.intl-city-card img{transition:opacity .35s ease,filter .35s ease,transform .45s ease}
.city-card .pad,.city-card .city-copy,.intl-card-copy{position:relative;z-index:2;background:#0a1d25}
.city-card .city-copy{padding:18px}
.city-card h3,.intl-city-card h3{font-size:20px}
.city-card p,.intl-city-card p{line-height:1.65}

.route[id^="stadt-"] .page-hero,.intl-route .intl-route-hero{
  position:relative;isolation:isolate;
  background-image:linear-gradient(90deg,rgba(7,21,33,.95),rgba(7,21,33,.70) 52%,rgba(7,21,33,.28)),var(--city-photo-local,linear-gradient(135deg,#102638,#041016))!important;
  background-size:cover!important;background-position:center!important
}
.route[id^="stadt-"] .page-hero:after,.intl-route .intl-route-hero:after{
  content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(7,21,33,.38));pointer-events:none
}
.route .closebar,.intl-close{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.route .closebar a,.intl-close{border-radius:9px}
.route .closebar a:hover,.intl-close:hover{background:rgba(169,215,220,.09)}
.page-copy{padding:68px 0;max-width:840px}
.page-hero p,.intl-route-hero p{max-width:800px}
.route-body,.intl-route-body{background:#FBF8F1;color:#102638;padding-top:52px;padding-bottom:80px}
.route .body-grid{align-items:start}
.route .page-grid{align-items:start}
.route .body-card,.intl-route .body-card{box-shadow:0 18px 48px rgba(16,38,56,.10)}
.body-card>img.service-image-clean-crop,
.service-second-visual img.service-image-clean-crop{
  display:block;width:100%!important;height:auto!important;aspect-ratio:16/9!important;
  object-fit:cover!important;object-position:left center!important
}
.service-single-image-frame{width:100%;aspect-ratio:16/9;margin:24px 0;overflow:hidden;border-radius:12px;background:var(--petrol)}
.service-single-image-frame img.service-single-panel{display:block!important;width:100%!important;max-width:none!important;height:100%!important;min-height:0!important;margin:0!important;border:0!important;border-radius:0!important;object-fit:cover!important;object-position:center!important;transform:none!important}
.service-second-visual:has(img.service-image-clean-crop){overflow:hidden}
.service-hero-single-image{background-position:center,center!important;background-size:cover,cover!important}

.service-certification{
  margin:26px 0;padding:22px 24px;border:1px solid #c7e3e4;border-left:4px solid var(--teal);
  border-radius:12px;background:linear-gradient(135deg,#F9F4EA,#F9F4EA);box-shadow:0 12px 32px rgba(19,46,66,.08)
}
.service-certification strong{display:block;margin-bottom:8px;color:#132E42;font-size:13px;letter-spacing:.13em;text-transform:uppercase}
.service-certification p{margin:0;color:#294b51;line-height:1.7}
.service-certification a{display:inline-flex;margin-top:12px;color:#557F86;font-size:13px;font-weight:850}
.service-certification a:hover{color:#557F86}
.installer-certificates{
  margin:34px 0 30px;padding:30px;border:1px solid rgba(139,111,60,.20);border-radius:18px;
  background:linear-gradient(145deg,#FBF8F1 0%,#F9F4EA 100%);box-shadow:0 16px 38px rgba(16,38,56,.08)
}
.installer-certificates__intro{max-width:760px;margin-bottom:22px}
.installer-certificates__kicker{display:block;margin-bottom:8px;color:#557F86;font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.installer-certificates h3{margin:0 0 10px;color:#132E42;font-size:clamp(22px,3vw,31px);line-height:1.15;letter-spacing:-.02em}
.installer-certificates__intro p{margin:0;color:#35555b;line-height:1.7}
.certificate-grid{display:grid;grid-template-columns:1fr;gap:10px}
.certificate-link-row{
  display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;min-width:0;padding:16px 18px;
  border:1px solid rgba(19,46,66,.14);border-radius:11px;background:#fff;color:#102638;text-decoration:none;
  box-shadow:0 8px 20px rgba(16,38,56,.055);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease
}
.certificate-link-row:hover,.certificate-link-row:focus-visible{transform:translateY(-2px);border-color:#76AAB1;box-shadow:0 13px 28px rgba(16,38,56,.10)}
.certificate-link-row__title{min-width:0;color:#132E42;font-size:15px;font-weight:850;line-height:1.35}
.certificate-link-row__validity{color:#49666b;font-size:12px;font-weight:750;white-space:nowrap}
.certificate-link-row__action{color:#557F86;font-size:12px;font-weight:900;letter-spacing:.03em;white-space:nowrap}
.certificate-link-row__action:after{content:"↗";margin-left:7px}

.intl-card-route{display:block;color:inherit;text-decoration:none}
.city-photo-credit{
  display:inline-flex;align-items:center;gap:7px;width:max-content;max-width:100%;padding:0;border:0;background:transparent;
  color:#789398!important;font-size:10px;line-height:1.35;font-weight:800;letter-spacing:.10em;text-decoration:none;text-transform:uppercase;
  transition:color .2s ease,opacity .2s ease
}
.city-photo-credit:before{content:"";display:block;width:13px;height:1px;flex:0 0 13px;background:currentColor;opacity:.55}
.city-photo-credit:hover,.city-photo-credit:focus-visible{color:var(--teal2)!important}
.city-photo-credit--card{margin-top:12px}
.intl-city-card>.city-photo-credit--card{margin:-3px 16px 15px}
.city-photo-credit--inline{display:flex;margin:-12px 0 22px auto;color:#6c878c!important}
.city-photo-credit-row{
  display:flex;justify-content:flex-end;padding:8px max(22px,calc((100vw - 1160px)/2));
  border-bottom:1px solid rgba(208,224,227,.09);background:#071A2B
}
.city-photo-credit-row .city-photo-credit{color:#718b90!important}
.city-photo-credit-row .city-photo-credit:hover,.city-photo-credit-row .city-photo-credit:focus-visible{color:var(--teal2)!important}

.contact .card label{display:block;color:#dce9eb;font-size:13px;font-weight:750;letter-spacing:.02em}
.card input,.card textarea,.card select{border-radius:9px;font:inherit}
.card input:hover,.card textarea:hover,.card select:hover{border-color:rgba(169,215,220,.55)}
.card input:focus,.card textarea:focus,.card select:focus{border-color:var(--teal);background:#071A2B}
.form-note,.form-status{font-size:12px;line-height:1.55;color:#9fb5ba}
.form-status{min-height:19px;color:var(--teal2);font-weight:700}
.calbox{border-radius:var(--radius-md);box-shadow:var(--shadow-soft)}
.legal a{padding:4px 0}
footer a:hover{color:var(--teal2)}

.menu-toggle{display:none;margin-left:auto;width:48px;height:44px;border:1px solid rgba(169,215,220,.30);border-radius:10px;background:#071A2B;color:#fff;align-items:center;justify-content:center;cursor:pointer}
.menu-toggle-bars,.menu-toggle-bars:before,.menu-toggle-bars:after{display:block;width:22px;height:2px;border-radius:2px;background:var(--teal2);transition:transform .22s ease,opacity .22s ease}
.menu-toggle-bars{position:relative}.menu-toggle-bars:before,.menu-toggle-bars:after{content:"";position:absolute;left:0}.menu-toggle-bars:before{top:-7px}.menu-toggle-bars:after{top:7px}
.menu-toggle[aria-expanded="true"] .menu-toggle-bars{background:transparent}.menu-toggle[aria-expanded="true"] .menu-toggle-bars:before{top:0;transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-toggle-bars:after{top:0;transform:rotate(-45deg)}
.mobile-menu-panel{
  display:none;position:fixed;z-index:1000000;inset:0;overflow:auto;padding:0 0 40px;
  background:linear-gradient(160deg,var(--petrol),#071A2B 76%);color:var(--cream)
}
.mobile-menu-panel:target{display:block}
.mobile-menu-panel__header{
  position:sticky;z-index:2;top:0;display:flex;align-items:center;justify-content:space-between;gap:18px;
  min-height:74px;padding:14px 20px;border-bottom:1px solid rgba(169,215,220,.28);background:rgba(7,21,33,.97);backdrop-filter:blur(14px)
}
.mobile-menu-panel__header strong{font-size:13px;letter-spacing:.14em}
.mobile-menu-panel__close{padding:9px 11px;border:1px solid rgba(169,215,220,.32);border-radius:8px;color:var(--turquoise);font-size:12px;font-weight:900}
.mobile-menu-panel__links{display:grid;gap:8px;max-width:720px;margin:0 auto;padding:22px 18px}
.mobile-menu-panel__link,.mobile-menu-panel__details summary{
  display:flex;align-items:center;justify-content:space-between;min-height:53px;padding:13px 15px;
  border:1px solid rgba(169,215,220,.20);border-radius:10px;background:rgba(247,243,235,.035);color:var(--cream);font-size:14px;font-weight:850
}
.mobile-menu-panel__link:after{content:"→";color:var(--turquoise)}
.mobile-menu-panel__details summary{cursor:pointer;list-style:none}
.mobile-menu-panel__details summary::-webkit-details-marker{display:none}
.mobile-menu-panel__details summary:after{content:"+";color:var(--turquoise);font-size:22px;font-weight:500}
.mobile-menu-panel__details[open] summary:after{content:"−"}
.mobile-menu-panel__details>div{display:grid;gap:5px;padding:8px 0 2px 12px}
.mobile-menu-panel__sublink{padding:11px 13px;border-left:2px solid rgba(169,215,220,.38);color:rgba(247,243,235,.78);font-size:12px;line-height:1.35}
.mobile-menu-panel__sublink:hover{border-left-color:var(--turquoise);background:rgba(169,215,220,.07);color:var(--cream)}

/* Midnight premium palette: warm ivory, architectural navy and platinum ice blue */
body{
  background:var(--cream);
  font-family:-apple-system,BlinkMacSystemFont,"Avenir Next","Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-kerning:normal;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased
}
button,input,select,textarea{font-family:inherit}
h1,h2,h3,h4,.brandtext,.btn{font-family:"Avenir Next",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}
::selection{background:var(--turquoise);color:var(--petrol)}
.topbar{
  background:linear-gradient(94deg,#071A2B 0%,#102638 52%,#123449 100%);
  border-bottom:1px solid rgba(169,215,220,.28)
}
header{
  background:
    radial-gradient(circle at 8% -80%,rgba(169,215,220,.18),transparent 39%),
    linear-gradient(108deg,#071A2B 0%,#102638 55%,#123449 100%);
  border-bottom:1px solid rgba(169,215,220,.36);box-shadow:0 12px 34px rgba(7,21,33,.28)
}
.top-contact{border-color:rgba(169,215,220,.20);background:rgba(247,243,235,.04)}
.top-contact:hover{border-color:rgba(169,215,220,.72);background:rgba(169,215,220,.10)}
.dropdown{background:linear-gradient(145deg,rgba(7,21,33,.99),rgba(20,45,64,.985));border-color:rgba(169,215,220,.28)}
.dropdown a{border-color:rgba(247,243,235,.08)}
.dropdown a:hover{background:rgba(169,215,220,.12)}
.hero{border-bottom:1px solid rgba(169,215,220,.34)}
.trust{
  background:var(--cream);color:var(--petrol);
  border-top:1px solid rgba(16,38,56,.10);border-bottom:1px solid rgba(16,38,56,.13)
}
.trust-item{border-color:rgba(16,38,56,.13)}
.trust-item:hover{background:rgba(169,215,220,.08)}
.trust .ico{color:var(--petrol)}
.trust .trust-item .stars{
  color:#F4B400!important;text-shadow:0 1px 0 rgba(16,38,56,.10)
}
.trust-item:not(.logos)>div:last-child{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:5px}
.trust-item strong{display:block;color:var(--petrol);font-size:15px;font-weight:800;line-height:1.25;letter-spacing:-.01em}
.trust-item small{display:block;color:rgba(16,38,56,.72);font-size:13px;font-weight:500;line-height:1.42}
.trust-item .stars{font-size:18px;line-height:1.15;letter-spacing:3px}
.trust-item .g,.trust-item .ico{flex:0 0 58px;text-align:center}
.trust .trust-item.trust-item--statement>.trust-statement-copy{
  display:block;min-width:0
}
.trust .trust-item--statement .trust-statement-copy strong{
  display:block;margin:0;color:var(--petrol);font-size:15px;font-weight:800;line-height:1.34
}
.trust .trust-item--legal{gap:8px;padding-left:10px;padding-right:10px}
.trust .trust-item--legal .ico{flex:0 0 30px;font-size:28px}
.trust .trust-item--legal .trust-statement-copy strong{font-size:15px}
@media(min-width:1101px) and (max-width:1240px){
  .trust .trust-item--legal .ico{display:none}
}
.forensics{background:var(--petrol)}
.forensic-copy h2,.world h3{color:var(--cream)}
.forensic-copy p,.checks{color:rgba(247,243,235,.84)}
.world{border-color:var(--turquoise);background:rgba(169,215,220,.055)}
.bottom-benefits{
  background:var(--cream);color:var(--petrol);
  border-bottom:1px solid rgba(16,38,56,.12)
}
.benefit{border-color:rgba(16,38,56,.13)}
.benefit:hover{background:rgba(169,215,220,.08)}
.benefit b{color:var(--petrol)}
.benefit small{color:rgba(16,38,56,.72)}
.section.light,.section.dark,.intl-country-section{
  background:var(--cream);color:var(--petrol)
}
.section.dark,.intl-country-section{border-top:1px solid rgba(16,38,56,.10)}
.section h2,.section h3,.intl-country-section h2{color:var(--petrol)}
.lead,.intl-intro{color:rgba(16,38,56,.72)}
.section .kicker,.intl-country-section .kicker{
  display:inline-flex;align-items:center;gap:9px;color:var(--petrol)
}
.section .kicker:before,.intl-country-section .kicker:before{
  content:"";width:24px;height:2px;background:var(--turquoise)
}
.service-box{
  background:var(--cream);color:var(--petrol);border-color:rgba(16,38,56,.14);
  box-shadow:0 16px 40px rgba(16,38,56,.08)
}
.service-link{border-color:rgba(16,38,56,.11)}
.service-link:hover{background:rgba(169,215,220,.09)}
.service-link small{color:rgba(16,38,56,.69)}
.service-link em{color:var(--petrol)}
.section#ueber .lead{max-width:980px}
.about-story{display:grid;grid-template-columns:minmax(0,1.62fr) minmax(285px,.68fr);gap:52px;align-items:start;margin-top:36px}
.about-story__main{max-width:840px}
.about-story__main p{margin:0;color:rgba(16,38,56,.76);font-size:17px;line-height:1.78}
.about-story__main p+p{margin-top:22px}
.about-story__main .about-story__opening{color:var(--petrol);font-size:20px;font-weight:620;line-height:1.62;letter-spacing:-.012em}
.about-story__main .about-story__closing{
  margin-top:30px;padding:22px 24px;border-left:3px solid var(--turquoise);border-radius:0 12px 12px 0;
  background:rgba(169,215,220,.10);color:var(--petrol);font-weight:650;line-height:1.68
}
.about-story__aside{overflow:hidden;border:1px solid rgba(16,38,56,.13);border-radius:18px;background:rgba(255,255,255,.42);box-shadow:0 18px 42px rgba(16,38,56,.08)}
.about-fact{padding:24px 26px}
.about-fact+.about-fact{border-top:1px solid rgba(16,38,56,.11)}
.about-fact strong{display:block;color:var(--petrol);font-size:18px;font-weight:820;line-height:1.25;letter-spacing:-.015em}
.about-fact small{display:block;margin-top:7px;color:rgba(16,38,56,.67);font-size:13px;font-weight:560;line-height:1.52}
.about-fact:first-child{background:linear-gradient(135deg,rgba(169,215,220,.14),rgba(255,255,255,.10))}
.about-fact:first-child strong{font-size:36px;line-height:1;color:#21465D}
.city-card,.intl-city-card{
  background:var(--cream);color:var(--petrol);border-color:rgba(16,38,56,.14);
  box-shadow:0 14px 36px rgba(16,38,56,.10)
}
.city-card:hover,.intl-city-card:hover{
  border-color:rgba(169,215,220,.88);box-shadow:0 22px 52px rgba(16,38,56,.17)
}
.city-card .pad,.city-card .city-copy,.intl-card-copy{background:var(--cream)}
.city-card h3,.intl-city-card h3,.intl-card-copy h3{color:var(--petrol)}
.city-card p,.intl-city-card p,.intl-card-copy p{color:rgba(16,38,56,.70)}
.city-card a,.intl-card-copy span{color:var(--petrol)}
.intl-card-copy span{display:inline-flex;border-bottom:2px solid var(--turquoise);padding-bottom:2px}
.city-photo-credit{color:rgba(16,38,56,.58)!important}
.city-photo-credit:hover,.city-photo-credit:focus-visible{color:var(--petrol)!important}
.intl-country-section{border-top-color:rgba(16,38,56,.12)}
.route,.intl-route{background:var(--petrol)}
.route .closebar,.intl-close{
  background:linear-gradient(105deg,rgba(16,38,56,.99),rgba(27,58,79,.98));
  border-color:rgba(169,215,220,.38);box-shadow:0 12px 30px rgba(7,21,33,.20)
}
.route .closebar a,.intl-close{color:var(--turquoise)}
.route .closebar a:hover,.intl-close:hover{background:rgba(169,215,220,.10)}
.route .page-hero,.intl-route .intl-route-hero{position:relative;isolation:isolate;overflow:hidden}
.route .page-hero:before,.intl-route .intl-route-hero:before{
  content:"";position:absolute;z-index:0;inset:0;pointer-events:none;
  background:radial-gradient(circle at 86% 18%,rgba(169,215,220,.24),transparent 35%),linear-gradient(120deg,rgba(27,58,79,.12),rgba(169,215,220,.08) 48%,rgba(16,38,56,.14))
}
.route .page-hero>.wrap,.intl-route .intl-route-hero>.wrap{position:relative;z-index:1}
.page-hero h1,.intl-route-hero h1{color:#f8f6ef;text-shadow:0 3px 18px rgba(7,21,33,.24);font-weight:780;letter-spacing:-.032em}
.page-hero .breadcrumbs,.page-hero .eyebrow,.intl-route-hero .eyebrow{color:var(--turquoise)}
.route[id^="stadt-"] .page-hero,.intl-route .intl-route-hero{
  background-image:linear-gradient(90deg,rgba(16,38,56,.96),rgba(16,38,56,.76) 52%,rgba(16,38,56,.22)),var(--city-photo-local,linear-gradient(135deg,var(--petrol),var(--petrol)))!important
}
.route[id^="stadt-"] .page-hero:after,.intl-route .intl-route-hero:after{
  background:linear-gradient(180deg,transparent 58%,rgba(16,38,56,.42))
}
#leistung-spyware-auf-mobilfunkgeraeten-aufdecken .page-hero{
  background-image:
    linear-gradient(90deg,rgba(16,38,56,.98) 0%,rgba(16,38,56,.86) 48%,rgba(16,38,56,.42) 100%),
    url('../media/asset-91608c438db503e0dac7-panel-left.webp')!important;
  background-size:cover,cover!important;
  background-position:center,center!important;
  background-repeat:no-repeat!important
}
.route-body,.intl-route-body,.page-main{background:var(--cream);color:var(--petrol)}
.body-card{
  background:var(--cream);color:var(--petrol);border-color:rgba(16,38,56,.14);
  box-shadow:0 18px 48px rgba(16,38,56,.09)
}
.body-card h2,.body-card h3{color:var(--petrol)}
.body-card p,.body-card li{color:rgba(16,38,56,.76)}
.side-card{background:var(--petrol);color:var(--cream);border-color:rgba(169,215,220,.30)}
.side-card h3{color:var(--cream)}
.side-card p,.side-card li{color:rgba(247,243,235,.82)}
.service-certification{
  border-color:rgba(16,38,56,.16);border-left-color:var(--turquoise);
  background:linear-gradient(135deg,rgba(169,215,220,.09),rgba(247,243,235,.35));
  box-shadow:0 12px 32px rgba(16,38,56,.07)
}
.service-certification strong,.service-certification p{color:var(--petrol)}
.service-certification a{color:var(--petrol);border-bottom:2px solid var(--turquoise)}
.service-certification a:hover{color:var(--petrol)}
.professional-profile{
  margin:42px 0 8px;padding-top:38px;border-top:1px solid rgba(16,38,56,.16)
}
.professional-profile__header{max-width:820px;margin-bottom:24px}
.professional-profile__eyebrow,.professional-panel__eyebrow{
  display:inline-flex;align-items:center;gap:9px;margin-bottom:9px;color:var(--petrol);
  font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase
}
.professional-profile__eyebrow:before,.professional-panel__eyebrow:before{
  content:"";width:24px;height:2px;background:var(--turquoise)
}
.professional-profile__header h3{
  margin:0 0 13px;color:var(--petrol);font-size:clamp(26px,3.4vw,38px);line-height:1.1;letter-spacing:-.025em
}
.professional-profile__header p{margin:0;color:rgba(16,38,56,.76);font-size:15px;line-height:1.78}
.professional-qualification{
  display:grid;grid-template-columns:minmax(170px,.42fr) minmax(0,1fr);gap:12px 24px;align-items:center;
  margin:20px 0 24px;padding:19px 21px;border:1px solid rgba(169,215,220,.58);border-radius:13px;
  background:linear-gradient(135deg,rgba(169,215,220,.13),rgba(247,243,235,.50));box-shadow:0 10px 26px rgba(16,38,56,.06)
}
.professional-qualification__label{
  color:var(--petrol);font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase
}
.professional-qualification__copy strong{display:block;margin-bottom:5px;color:var(--petrol);font-size:16px;line-height:1.28}
.body-card .professional-qualification__copy p{margin:0;color:rgba(16,38,56,.73);font-size:12px;line-height:1.65}
.forensic-service-areas{margin:26px 0 32px}
.forensic-area-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.forensic-area-card{
  position:relative;min-width:0;padding:25px 24px 23px;border:1px solid rgba(16,38,56,.14);border-radius:16px;
  background:var(--card);box-shadow:0 13px 32px rgba(16,38,56,.065)
}
.forensic-area-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;border-radius:16px 0 0 16px;background:var(--turquoise)}
.forensic-area-card__label,.platform-card__label{
  display:block;margin-bottom:8px;color:rgba(16,38,56,.61);font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase
}
.body-card .forensic-area-card h4{margin:0 0 11px;color:var(--petrol);font-size:22px;line-height:1.18;letter-spacing:-.015em}
.body-card .forensic-area-card p{margin:0;color:rgba(16,38,56,.74);font-size:13px;line-height:1.72}
.forensic-area-card__list{margin:18px 0 0!important;padding:16px 0 0!important;border-top:1px solid rgba(16,38,56,.11);list-style:none!important}
.body-card .forensic-area-card__list li{position:relative;margin:7px 0;padding:0 0 0 18px;color:rgba(16,38,56,.71);font-size:11px;line-height:1.55}
.forensic-area-card__list li:before{content:"";position:absolute;left:0;top:.55em;width:7px;height:7px;border:2px solid var(--turquoise);border-radius:50%}
.platform-comparison{
  margin:34px 0;padding:clamp(25px,4vw,38px);border:1px solid rgba(16,38,56,.15);border-radius:19px;
  background:linear-gradient(145deg,rgba(16,38,56,.045),rgba(169,215,220,.075));box-shadow:0 18px 42px rgba(16,38,56,.075)
}
.body-card .platform-comparison h3{margin:0 0 13px;color:var(--petrol);font-size:clamp(24px,3vw,33px);line-height:1.15;letter-spacing:-.022em}
.body-card .platform-comparison__intro{margin:0;color:rgba(16,38,56,.75);font-size:14px;line-height:1.75}
.body-card .platform-comparison__difference{
  margin:21px 0 23px;padding:16px 18px;border-left:4px solid var(--turquoise);border-radius:0 10px 10px 0;
  background:rgba(255,255,255,.72);color:var(--petrol);font-size:13px;font-weight:700;line-height:1.68
}
.platform-comparison__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.platform-card{min-width:0;padding:22px;border:1px solid rgba(16,38,56,.13);border-radius:14px;background:rgba(255,255,255,.88)}
.body-card .platform-card h4{margin:0 0 4px;color:var(--petrol);font-size:21px;line-height:1.2}
.body-card .platform-card__subtitle{margin:0 0 17px;color:rgba(16,38,56,.62);font-size:11px;font-weight:800;line-height:1.45}
.platform-card dl{margin:0}
.platform-card dl div{padding:11px 0;border-top:1px solid rgba(16,38,56,.10)}
.platform-card dt{margin:0 0 3px;color:var(--petrol);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.platform-card dd{margin:0;color:rgba(16,38,56,.72);font-size:11px;line-height:1.55}
.platform-source-links{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0!important;padding:0!important;list-style:none!important}
.body-card .platform-source-links li{margin:0;padding:0}
.platform-source-links a{
  display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border:1px solid rgba(16,38,56,.17);border-radius:8px;
  background:rgba(255,255,255,.78);color:var(--petrol);font-size:10px;font-weight:900
}
.platform-source-links a:after{content:"↗";margin-left:6px;color:var(--turquoise)}
.platform-source-links a:hover{border-color:var(--turquoise);background:#fff}
.forensic-toolchain__header{max-width:820px;margin:40px 0 17px}
.body-card .forensic-toolchain__header h3{margin:0 0 11px;color:var(--petrol);font-size:clamp(23px,3vw,31px);line-height:1.17;letter-spacing:-.02em}
.body-card .forensic-toolchain__header p{margin:0;color:rgba(16,38,56,.75);font-size:13px;line-height:1.72}
.technology-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:25px 0 30px}
.technology-card{
  min-width:0;padding:22px 22px 20px;border:1px solid rgba(16,38,56,.15);border-radius:14px;
  background:linear-gradient(145deg,var(--cream),rgba(169,215,220,.055));
  box-shadow:0 10px 28px rgba(16,38,56,.055);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease
}
.technology-card:last-child:nth-child(odd){grid-column:1/-1}
.technology-card:hover{transform:translateY(-2px);border-color:rgba(169,215,220,.85);box-shadow:0 16px 34px rgba(16,38,56,.10)}
.technology-card__label{
  display:block;margin-bottom:8px;color:rgba(16,38,56,.64);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase
}
.technology-card h4{margin:0 0 9px;color:var(--petrol);font-size:19px;line-height:1.22;letter-spacing:-.01em}
.technology-card p{margin:0;color:rgba(16,38,56,.73);font-size:13px;line-height:1.68}
.technology-card a{
  display:inline-flex;margin-top:14px;padding-bottom:2px;border-bottom:2px solid var(--turquoise);
  color:var(--petrol);font-size:11px;font-weight:900;letter-spacing:.025em
}
.technology-card a:hover{color:#557F86}
.evidence-panel{
  margin:30px 0 18px;padding:clamp(24px,4vw,36px);border:1px solid rgba(169,215,220,.34);border-radius:18px;
  background:var(--petrol);color:var(--cream);box-shadow:0 20px 46px rgba(16,38,56,.16)
}
.body-card .evidence-panel .professional-panel__eyebrow{color:var(--turquoise)}
.body-card .evidence-panel h3{margin:0 0 14px;color:var(--cream);font-size:clamp(23px,3vw,32px);line-height:1.16;letter-spacing:-.02em}
.body-card .evidence-panel p{margin:10px 0;color:rgba(247,243,235,.82);font-size:14px;line-height:1.74}
.evidence-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 18px;margin:22px 0 0;padding:0;list-style:none}
.body-card .evidence-checklist li{position:relative;margin:0;padding:0 0 0 20px;color:rgba(247,243,235,.86);font-size:12px;line-height:1.58}
.evidence-checklist li:before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border:2px solid var(--turquoise);border-radius:50%}
.legal-framework{
  margin:18px 0;padding:clamp(22px,3.5vw,32px);border:1px solid rgba(16,38,56,.16);border-left:4px solid var(--turquoise);
  border-radius:14px;background:linear-gradient(135deg,rgba(169,215,220,.10),rgba(247,243,235,.48));
  box-shadow:0 12px 32px rgba(16,38,56,.065)
}
.body-card .legal-framework h3{margin:0 0 13px;color:var(--petrol);font-size:clamp(22px,2.8vw,29px);line-height:1.18}
.body-card .legal-framework p{margin:9px 0;color:rgba(16,38,56,.77);font-size:13px;line-height:1.72}
.legal-source-links{display:flex;flex-wrap:wrap;gap:8px;margin:19px 0 0!important;padding:0!important;list-style:none}
.body-card .legal-source-links li{margin:0;padding:0}
.legal-source-links a{
  display:inline-flex;align-items:center;min-height:34px;padding:7px 10px;border:1px solid rgba(16,38,56,.18);border-radius:8px;
  background:var(--cream);color:var(--petrol);font-size:10px;font-weight:900;letter-spacing:.025em
}
.legal-source-links a:after{content:"↗";margin-left:6px;color:var(--petrol)}
.legal-source-links a:hover{border-color:var(--turquoise);background:rgba(169,215,220,.13)}
.method-limit{
  margin:18px 0 0;padding:20px 22px;border:1px solid rgba(16,38,56,.14);border-radius:12px;background:rgba(16,38,56,.035)
}
.body-card .method-limit h4{margin:0 0 7px;color:var(--petrol);font-size:15px;line-height:1.3}
.body-card .method-limit p{margin:0;color:rgba(16,38,56,.71);font-size:12px;line-height:1.67}
.installer-certificates{
  border-color:rgba(16,38,56,.16);
  background:linear-gradient(145deg,rgba(169,215,220,.08),rgba(247,243,235,.45));
  box-shadow:0 16px 38px rgba(16,38,56,.08)
}
.installer-certificates__kicker,.installer-certificates h3,.installer-certificates__intro p{color:var(--petrol)}
.certificate-link-row{background:var(--cream);color:var(--petrol);border-color:rgba(16,38,56,.15)}
.certificate-link-row:hover,.certificate-link-row:focus-visible{border-color:var(--turquoise)}
.certificate-link-row__title,.certificate-link-row__validity,.certificate-link-row__action{color:var(--petrol)}
#kontakt .contact{color:var(--petrol)}
#kontakt .card{
  background:var(--cream);color:var(--petrol);border-color:rgba(16,38,56,.16);
  box-shadow:0 16px 42px rgba(16,38,56,.09)
}
#kontakt .card label{color:var(--petrol)}
#kontakt .card input,#kontakt .card textarea,#kontakt .card select{
  background:transparent;color:var(--petrol);border-color:rgba(16,38,56,.24)
}
#kontakt .card input:hover,#kontakt .card textarea:hover,#kontakt .card select:hover{border-color:var(--turquoise)}
#kontakt .card input:focus,#kontakt .card textarea:focus,#kontakt .card select:focus{
  background:rgba(169,215,220,.08);border-color:var(--turquoise)
}
#kontakt .form-note{color:rgba(16,38,56,.64)}
#kontakt .form-status{color:var(--petrol)}
.calbox{background:var(--petrol);color:var(--cream);border-color:rgba(169,215,220,.30)}
.calbox h3{color:var(--cream)}
.calbox p{color:rgba(247,243,235,.82)}
.city-photo-credit-row{background:var(--petrol);border-color:rgba(169,215,220,.12)}
.city-photo-credit-row .city-photo-credit{color:rgba(247,243,235,.50)!important}
.city-photo-credit-row .city-photo-credit:hover,.city-photo-credit-row .city-photo-credit:focus-visible{color:var(--turquoise)!important}
footer{
  background:
    radial-gradient(circle at 84% 0,rgba(169,215,220,.13),transparent 31%),
    linear-gradient(112deg,#071A2B 0%,#0d2638 58%,#17323f 100%);
  color:rgba(247,243,235,.72);border-top:1px solid rgba(169,215,220,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025)
}
footer h4{color:var(--cream)}
footer .footer-heading{margin:0 0 14px;color:var(--cream);font-size:16px;line-height:1.25}
.footer-owner{
  margin:7px 0 18px;color:var(--turquoise);font-size:13px;font-weight:850;
  letter-spacing:.095em;text-transform:uppercase
}
.footer-legal-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:3px}
.footer-legal-links a{
  display:flex;min-width:0;min-height:62px;flex-direction:column;justify-content:center;
  padding:11px 12px;border:1px solid rgba(169,215,220,.19);border-radius:10px;
  background:rgba(247,243,235,.035);color:var(--cream)
}
.footer-legal-links a:last-child{grid-column:1/-1}
.footer-legal-links a:hover{
  border-color:rgba(169,215,220,.68);background:rgba(169,215,220,.09);transform:translateY(-1px)
}
.footer-legal-links span{font-size:12px;font-weight:850;line-height:1.25}
.footer-legal-links small{margin-top:3px;color:rgba(247,243,235,.57);font-size:9px;font-weight:650;line-height:1.3}
@media(min-width:751px){
  footer .foot>div+div{padding-left:30px;border-left:1px solid rgba(169,215,220,.18)}
}

/* Legal documents: consistent hierarchy without changing the legal wording */
.legal-route .page-main{background:var(--cream)}
.legal-route .page-main{padding-top:clamp(92px,10vw,138px)}
.legal-route .closebar+ .page-main{margin-top:0}
.legal-document{
  max-width:1080px;padding:clamp(30px,5vw,62px)!important;color:var(--petrol);
  box-shadow:0 20px 54px rgba(16,38,56,.10)
}
.legal-document-header{
  position:static!important;inset:auto!important;z-index:auto!important;display:block!important;
  min-height:0!important;height:auto!important;margin:-6px 0 38px;padding:0 0 27px!important;
  border:0!important;border-bottom:1px solid rgba(16,38,56,.16)!important;
  background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;transform:none!important
}
.legal-document-header span{
  display:flex;align-items:center;gap:10px;margin-bottom:13px;color:var(--turquoise);
  font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase
}
.legal-document-header span:before{content:"";width:28px;height:2px;background:var(--turquoise)}
.legal-document-header h1{
  margin:0;color:var(--petrol);font-size:clamp(34px,5vw,54px);line-height:1.04;letter-spacing:-.035em
}
.legal-document-header p{
  max-width:760px;margin:15px 0 0!important;color:rgba(16,38,56,.70)!important;
  font-size:15px!important;line-height:1.65!important
}
.legal-document>h2{
  margin:34px 0 13px;padding-top:24px;border-top:1px solid rgba(16,38,56,.12);
  color:var(--petrol);font-size:clamp(20px,2.5vw,27px);line-height:1.25;letter-spacing:-.018em
}
.legal-document-header+h2{margin-top:0;padding-top:0;border-top:0}
.legal-document>h3{margin:25px 0 10px;color:var(--petrol);font-size:17px;line-height:1.35}
.legal-document>p,.legal-document>ul,.legal-document>ol{
  max-width:930px;color:rgba(16,38,56,.76);font-size:14px;line-height:1.78
}
.legal-document>p{margin:10px 0}
.legal-document>ul,.legal-document>ol{margin:13px 0 20px;padding-left:22px}
.legal-document li{margin:7px 0}
.legal-document a:not(.btn){
  color:var(--petrol);font-weight:760;text-decoration:underline;
  text-decoration-color:rgba(169,215,220,.78);text-underline-offset:3px
}
.legal-document a:not(.btn):hover{color:#557F86;text-decoration-color:var(--turquoise)}
.legal-numbered-paragraph{margin:11px 0!important}
.legal-document-source{
  margin:-19px 0 29px!important;padding:13px 15px;border-left:3px solid var(--turquoise);
  background:rgba(169,215,220,.07);font-size:13px!important
}

/* Semantic internal navigation */
.breadcrumb{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;
  color:rgba(247,243,235,.72);font-size:11px;font-weight:850;letter-spacing:.10em;text-transform:uppercase
}
.breadcrumb a{color:var(--cream)}
.breadcrumb a:hover{color:var(--turquoise)}
.breadcrumb span+span:before,.breadcrumb a+span:before{content:"/";margin-right:8px;color:var(--turquoise)}
.related-links{
  margin-top:34px;padding-top:24px;border-top:1px solid rgba(16,38,56,.14)
}
.related-links h3{margin:0 0 13px;font-size:18px;color:var(--petrol)}
.related-links__grid{display:flex;flex-wrap:wrap;gap:9px}
.related-links a{
  display:inline-flex;align-items:center;min-height:42px;padding:9px 13px;border:1px solid rgba(16,38,56,.18);
  max-width:100%;overflow-wrap:anywhere;border-radius:9px;background:rgba(169,215,220,.055);
  color:var(--petrol);font-size:13px;font-weight:800
}
.related-links a:after{content:"→";margin-left:8px;color:var(--petrol)}
.related-links a:hover{background:var(--turquoise);border-color:var(--turquoise);transform:translateY(-1px)}

/* Plain-text city-photo attribution in the imprint */
#legal-impressum:has(#bildnachweise-stadtfotografie:target),
#legal-impressum.is-credit-target{display:block}
.imprint-photo-credits{
  max-width:none;margin:46px 0 0;padding:clamp(30px,4vw,48px) 0 0;
  border-top:1px solid rgba(16,38,56,.17)
}
.photo-credits-header{max-width:960px;margin-bottom:24px}
.photo-credits-header h3{margin:0 0 13px;color:var(--petrol);font-size:clamp(26px,3.5vw,38px);line-height:1.12;letter-spacing:-.025em}
.photo-credits-header>p{max-width:900px;margin:0;color:rgba(16,38,56,.74);font-size:14px;line-height:1.7}
.photo-credits-header>p+p{margin-top:10px}
.photo-credit-list{margin:0;padding:0;list-style:none;columns:2;column-gap:42px}
.photo-credit-entry{
  break-inside:avoid;margin:0;padding:11px 0;border-bottom:1px solid rgba(16,38,56,.12);
  color:rgba(16,38,56,.73);font-size:12px;line-height:1.58;overflow-wrap:anywhere
}
.photo-credit-entry strong{color:var(--petrol);font-weight:850}
.photo-credit-entry a{color:var(--petrol);font-weight:800;text-decoration:underline;text-decoration-color:rgba(169,215,220,.85);text-underline-offset:3px}
.faq-section{margin-top:clamp(42px,6vw,76px);padding-top:clamp(30px,4vw,48px);border-top:1px solid rgba(16,38,56,.14)}
.faq-section__intro{max-width:760px;color:rgba(16,38,56,.72)}
.faq-list{display:grid;gap:12px;margin-top:24px}
.faq-item{overflow:hidden;border:1px solid rgba(16,38,56,.14);border-radius:14px;background:var(--card);box-shadow:0 10px 28px rgba(7,26,43,.06)}
.faq-item summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;color:var(--petrol);font-weight:800;cursor:pointer;list-style:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:"+";flex:0 0 auto;color:var(--turquoise);font-size:24px;font-weight:500}
.faq-item[open] summary:after{content:"−"}
.faq-item__answer{padding:0 20px 20px;color:rgba(16,38,56,.76);line-height:1.72}
.faq-item__answer p{margin:0}
.route-faq-shell{padding:8px 0 clamp(62px,8vw,96px);background:#FBF8F1;color:var(--petrol)}
.route-faq-shell .faq-section{margin-left:auto;margin-right:auto}
.home-faq{background:#FBF8F1;color:var(--petrol)}
.home-faq .faq-section{margin-top:0;padding-top:0;border-top:0}
.section h1.section-page-title{margin:10px 0 14px;color:inherit;font-size:43px;line-height:1.12;letter-spacing:-.025em;text-wrap:balance}
.forensic-area-card__link{display:inline-flex;margin-top:16px;padding-bottom:2px;border-bottom:2px solid var(--turquoise);color:var(--petrol);font-size:12px;font-weight:850}
.spyware-first-response{margin:30px 0;padding:clamp(24px,4vw,36px);border:1px solid rgba(16,38,56,.15);border-left:4px solid var(--turquoise);border-radius:0 16px 16px 0;background:rgba(169,215,220,.10)}
.body-card .spyware-first-response h3{margin-top:0}
.source-links{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 0;padding:0;list-style:none}
.source-links a{display:inline-flex;padding:9px 12px;border:1px solid rgba(16,38,56,.18);border-radius:8px;color:var(--petrol);font-size:12px;font-weight:800}
.source-links a:hover{border-color:var(--turquoise);background:#fff}
.photo-credit-entry a:hover{color:#557F86}
.service-boxes,.page-grid,.contact{min-width:0}
.service-box,.body-card,.side-card,.legal-document{min-width:0;max-width:100%}
.service-link,.service-link>span{min-width:0}
.service-link>span,.body-card,.side-card,.legal-document,.legal-document a{overflow-wrap:anywhere;word-break:break-word}
@media(max-width:650px){.section h1.section-page-title{font-size:34px}}

@media(max-width:1100px){
  .menu-toggle{display:inline-flex}
  .menu{display:none!important}
  .trust .trust-item--statement{
    display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;
    min-height:88px;padding:18px 20px;gap:16px
  }
  .trust .trust-item--statement .ico{
    display:block;width:46px;justify-self:center;flex:none;text-align:center;font-size:28px
  }
  .trust .trust-item--statement>.trust-statement-copy{display:block;min-width:0;align-self:center}
  .trust .trust-item--statement .trust-statement-copy strong{
    display:block;margin:0;text-align:left;font-size:15px;line-height:1.35;white-space:normal
  }
}
@media(max-width:650px){
  .country-overview__grid{grid-template-columns:1fr}
  html{scroll-padding-top:24px}
  .topline a{min-height:27px}
  .brandtext b{letter-spacing:3.5px}
  .brandtext small{letter-spacing:5px}
  .section{padding:60px 0}
  .section h2{font-size:clamp(30px,9vw,38px)}
  .hero-brandline{font-size:11px;letter-spacing:.14em;margin-bottom:14px}
  .hero-brandline:before{width:28px}
  .hero h1{font-size:clamp(42px,12vw,56px);line-height:1}
  .topline{grid-template-columns:1fr;gap:5px;padding:7px 14px}
  .top-contact{min-height:43px;padding:5px 9px;grid-template-columns:30px minmax(0,1fr)}
  .top-contact__icon{width:18px;height:18px}
  .top-contact__copy small{color:rgba(247,243,235,.92);font-size:8.5px;font-weight:950;letter-spacing:.085em;margin-bottom:3px}
  .top-contact__copy strong{font-size:11px}
  .city-card,.intl-city-card,.service-box,.card,.body-card,.calbox{border-radius:14px}
  .trust-item{min-height:0;padding:22px 18px;gap:16px}
  .trust-item:not(.logos)>div:last-child{gap:4px}
  .trust-item strong{font-size:16px;line-height:1.25}
  .trust-item small{font-size:13px;line-height:1.42}
  .trust .trust-item--statement .trust-statement-copy strong{font-size:14px;line-height:1.36}
  .trust-item .g,.trust-item .ico{flex-basis:54px;font-size:30px}
  .trust-item .g{font-size:54px}
  .about-story{grid-template-columns:1fr;gap:28px;margin-top:26px}
  .about-story__main p{font-size:16px;line-height:1.72}
  .about-story__main .about-story__opening{font-size:18px;line-height:1.58}
  .about-story__main .about-story__closing{margin-top:26px;padding:19px 20px;line-height:1.65}
  .about-fact{padding:21px 22px}
  .page-copy{padding:48px 0}
  .city-photo-credit-row{padding:8px 14px}
  .route-body,.intl-route-body{padding-top:28px;padding-bottom:60px}
  .related-links__grid{display:grid;grid-template-columns:1fr}
  .related-links a{width:100%;justify-content:space-between}
  .footer-legal-links{grid-template-columns:1fr}
  .footer-legal-links a:last-child{grid-column:auto}
  .footer-legal-links a{min-height:56px}
  .legal-document{padding:28px 19px!important}
  .legal-document-header{margin:0 0 29px;padding-bottom:22px}
  .legal-document-header h1{font-size:clamp(31px,10vw,42px)}
  .legal-document>h2{margin-top:29px;padding-top:21px;font-size:21px}
  .legal-document>p,.legal-document>ul,.legal-document>ol{font-size:13px;line-height:1.72}
  .photo-credit-list{columns:1}
  .forensic-area-grid,.platform-comparison__grid{grid-template-columns:1fr}
  .technology-grid{grid-template-columns:1fr}
  .technology-card:last-child:nth-child(odd){grid-column:auto}
  .evidence-checklist{grid-template-columns:1fr}
  .professional-qualification{grid-template-columns:1fr}
}
@media(max-width:560px){
  .professional-profile{margin-top:32px;padding-top:30px}
  .technology-card{padding:19px 17px}
  .forensic-area-card,.platform-card{padding:20px 17px}
  .platform-comparison{padding:22px 17px}
  .evidence-panel,.legal-framework{padding:21px 17px}
  .method-limit{padding:18px 16px}
  .installer-certificates{padding:20px 16px}
  .certificate-link-row{grid-template-columns:1fr;gap:5px;padding:14px 15px}
  .certificate-link-row__validity,.certificate-link-row__action{white-space:normal}
  .imprint-photo-credits{padding:30px 0 0}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
}

.city-card img.city-photo-local,
.intl-city-card img.city-photo-local,
.route[id^="stadt-"] .body-card img.city-photo-local,
.intl-route .body-card img.city-photo-local{
  background-image:none!important;
  background-color:#071A2B!important;
}
.city-card img.city-photo-local:not([data-city-photo-loaded="true"]),
.intl-city-card img.city-photo-local:not([data-city-photo-loaded="true"]),
.route[id^="stadt-"] .body-card img.city-photo-local:not([data-city-photo-loaded="true"]),
.intl-route .body-card img.city-photo-local:not([data-city-photo-loaded="true"]){
  opacity:.08!important;
}
.city-card img.city-photo-local[data-city-photo-loaded="true"],
.intl-city-card img.city-photo-local[data-city-photo-loaded="true"],
.route[id^="stadt-"] .body-card img.city-photo-local[data-city-photo-loaded="true"],
.intl-route .body-card img.city-photo-local[data-city-photo-loaded="true"]{
  opacity:1!important;filter:saturate(.92) contrast(1.03)!important;
}
.route[id^="stadt-"] .page-hero,.intl-route .intl-route-hero{
  background-image:linear-gradient(90deg,rgba(16,38,56,.96),rgba(16,38,56,.76) 52%,rgba(16,38,56,.22)),var(--city-photo-local,linear-gradient(135deg,var(--petrol),var(--petrol)))!important;
}
[data-city-key="aachen"]{--city-photo-local:url("../media/asset-6b45976d52b109f1d304.webp")}
[data-city-key="augsburg"]{--city-photo-local:url("../media/asset-e7b6c5faada71e884812.webp")}
[data-city-key="bari"]{--city-photo-local:url("../media/asset-4d8016743ebe7c42e096.webp")}
[data-city-key="berlin"]{--city-photo-local:url("../media/asset-c36eec95d295b9286f26.webp")}
[data-city-key="bielefeld"]{--city-photo-local:url("../media/asset-253dea9b32404df186a8.webp")}
[data-city-key="bochum"]{--city-photo-local:url("../media/asset-41f918a2b1d955386450.webp")}
[data-city-key="bologna"]{--city-photo-local:url("../media/asset-c374adc7fc55f4bf8016.webp")}
[data-city-key="bonn"]{--city-photo-local:url("../media/asset-745eaf262e16c90a10ac.webp")}
[data-city-key="bozen"]{--city-photo-local:url("../media/asset-9c86c6d05240b8ca2e87.webp")}
[data-city-key="braunschweig"]{--city-photo-local:url("../media/asset-10770e573b68545a21f4.webp")}
[data-city-key="bregenz"]{--city-photo-local:url("../media/asset-c43976c0c365e0d17a40.webp")}
[data-city-key="bremen"]{--city-photo-local:url("../media/asset-a51920e8e4f1cd7b3bd1.webp")}
[data-city-key="brescia"]{--city-photo-local:url("../media/asset-8b70c844ed7288701910.webp")}
[data-city-key="brixen"]{--city-photo-local:url("../media/asset-bb41f15cc8a89fb16351.webp")}
[data-city-key="budapest"]{--city-photo-local:url("../media/asset-2a5dbb54de78b22e18f7.webp")}
[data-city-key="cagliari"]{--city-photo-local:url("../media/asset-169e6b65bddd20ae2ece.webp")}
[data-city-key="catania"]{--city-photo-local:url("../media/asset-2c8b334f7cf158adaebf.webp")}
[data-city-key="chemnitz"]{--city-photo-local:url("../media/asset-4b4586ab767084eb72a1.webp")}
[data-city-key="darmstadt"]{--city-photo-local:url("../media/asset-1873d59ea37969888687.webp")}
[data-city-key="debrecen"]{--city-photo-local:url("../media/asset-e6f07674fc1955db10e5.webp")}
[data-city-key="dornbirn"]{--city-photo-local:url("../media/asset-7e8be076f96c748ff9cb.webp")}
[data-city-key="dortmund"]{--city-photo-local:url("../media/asset-b5b93d985d05adefc8ae.webp")}
[data-city-key="dresden"]{--city-photo-local:url("../media/asset-490dad0b3bbdb4849fdb.webp")}
[data-city-key="duisburg"]{--city-photo-local:url("../media/asset-6f615dee24bfe8a0895a.webp")}
[data-city-key="dusseldorf"]{--city-photo-local:url("../media/asset-565674996a1315dbc22f.webp")}
[data-city-key="erfurt"]{--city-photo-local:url("../media/asset-9c554d74832d089d8691.webp")}
[data-city-key="essen"]{--city-photo-local:url("../media/asset-f6b23a626a8ef59a510b.webp")}
[data-city-key="esslingen-am-neckar"]{--city-photo-local:url("../media/asset-f7e2a0e6377de4edc218.webp")}
[data-city-key="florenz"]{--city-photo-local:url("../media/asset-f4092d8989c4b7f3417b.webp")}
[data-city-key="frankfurt-am-main"]{--city-photo-local:url("../media/asset-9965fc4ee12814f99d08.webp")}
[data-city-key="freiburg-im-breisgau"]{--city-photo-local:url("../media/asset-4feac4035691c1a2bf42.webp")}
[data-city-key="gelsenkirchen"]{--city-photo-local:url("../media/asset-2f35c0f5ea0a1f0736a0.webp")}
[data-city-key="genua"]{--city-photo-local:url("../media/asset-80ddcc32d5fb7beea94c.webp")}
[data-city-key="graz"]{--city-photo-local:url("../media/asset-b46d476e4c72eda8d8b7.webp")}
[data-city-key="gyor"]{--city-photo-local:url("../media/asset-83726197a26adbb66a3f.webp")}
[data-city-key="halle-saale"]{--city-photo-local:url("../media/asset-713cb83dc65f1a0b2873.webp")}
[data-city-key="hamburg"]{--city-photo-local:url("../media/asset-d27fde8904051e3740c0.webp")}
[data-city-key="hannover"]{--city-photo-local:url("../media/asset-75581ddc59a21bc4b446.webp")}
[data-city-key="heidelberg"]{--city-photo-local:url("../media/asset-d4b0fedd5e91ec1f847d.webp")}
[data-city-key="ingolstadt"]{--city-photo-local:url("../media/asset-0e2a64ecb6595e34c14b.webp")}
[data-city-key="innsbruck"]{--city-photo-local:url("../media/asset-e61619f1d71db2b35637.webp")}
[data-city-key="karlsruhe"]{--city-photo-local:url("../media/asset-73024a6c81d9dd083a0e.webp")}
[data-city-key="kassel"]{--city-photo-local:url("../media/asset-257b7c51ff109eaf0b3f.webp")}
[data-city-key="kecskemet"]{--city-photo-local:url("../media/asset-eb0af60e71ac887389a4.webp")}
[data-city-key="kiel"]{--city-photo-local:url("../media/asset-f062587e61878ef5c24e.webp")}
[data-city-key="klagenfurt-am-worthersee"]{--city-photo-local:url("../media/asset-52b2e068c76f401dd315.webp")}
[data-city-key="krefeld"]{--city-photo-local:url("../media/asset-ffdc44e1c317eaaf3c66.webp")}
[data-city-key="krems-an-der-donau"]{--city-photo-local:url("../media/asset-e3c9ef616e8947d935e8.webp")}
[data-city-key="koln"]{--city-photo-local:url("../media/asset-056eb7e1f9fd99b2b98f.webp")}
[data-city-key="lecce"]{--city-photo-local:url("../media/asset-aa14c67267e0faedc677.webp")}
[data-city-key="leipzig"]{--city-photo-local:url("../media/asset-237e3d81d5794e734ce6.webp")}
[data-city-key="linz"]{--city-photo-local:url("../media/asset-69cd25441634548f96f9.webp")}
[data-city-key="lubeck"]{--city-photo-local:url("../media/asset-df9216472fe243ee2c16.webp")}
[data-city-key="magdeburg"]{--city-photo-local:url("../media/asset-642bf27c6f2a18c2c656.webp")}
[data-city-key="mailand"]{--city-photo-local:url("../media/asset-8dafa564213a386c987d.webp")}
[data-city-key="mainz"]{--city-photo-local:url("../media/asset-9cd1a6e0ccf07f1d4ba6.webp")}
[data-city-key="mannheim"]{--city-photo-local:url("../media/asset-5c414559b27a05968315.webp")}
[data-city-key="meran"]{--city-photo-local:url("../media/asset-0cffef47a8001a4518e3.webp")}
[data-city-key="messina"]{--city-photo-local:url("../media/asset-bc2c0ed71f9b5a7de3a0.webp")}
[data-city-key="miskolc"]{--city-photo-local:url("../media/asset-86150226f0557b7d36fb.webp")}
[data-city-key="monchengladbach"]{--city-photo-local:url("../media/asset-ef1c43fd358393f03720.webp")}
[data-city-key="munchen"]{--city-photo-local:url("../media/asset-a4f4d0f5f4a597875f71.webp")}
[data-city-key="munster"]{--city-photo-local:url("../media/asset-aff1ff31b42f603c4087.webp")}
[data-city-key="neapel"]{--city-photo-local:url("../media/asset-91779b2dc0c790d328d1.webp")}
[data-city-key="nyiregyhaza"]{--city-photo-local:url("../media/asset-3866cfc053ae09d377a9.webp")}
[data-city-key="nurnberg"]{--city-photo-local:url("../media/asset-d067c47f79fc23b5de61.webp")}
[data-city-key="padua"]{--city-photo-local:url("../media/asset-a5ea88ab4a596df73d82.webp")}
[data-city-key="palermo"]{--city-photo-local:url("../media/asset-cf0e6e7d19cd7e301699.webp")}
[data-city-key="parma"]{--city-photo-local:url("../media/asset-583ffa07c85b2ed102bd.webp")}
[data-city-key="perugia"]{--city-photo-local:url("../media/asset-d8ac0286d5cd15fb132a.webp")}
[data-city-key="potsdam"]{--city-photo-local:url("../media/asset-987295520ef374e23f5d.webp")}
[data-city-key="pecs"]{--city-photo-local:url("../media/asset-9e3373be3f51f4722a6e.webp")}
[data-city-key="regensburg"]{--city-photo-local:url("../media/asset-6dbffd7521bf303443cd.webp")}
[data-city-key="rimini"]{--city-photo-local:url("../media/asset-19af5d0d75357863fff6.webp")}
[data-city-key="rom"]{--city-photo-local:url("../media/asset-73447c3325041f6f2ddf.webp")}
[data-city-key="rostock"]{--city-photo-local:url("../media/asset-d2f6d94ae101fb6d8a85.webp")}
[data-city-key="saarbrucken"]{--city-photo-local:url("../media/asset-3a5cd95df06063aa490a.webp")}
[data-city-key="salzburg"]{--city-photo-local:url("../media/asset-d0fed1c01e836b9fdb2b.webp")}
[data-city-key="sopron"]{--city-photo-local:url("../media/asset-b1ce414159ff563fba63.webp")}
[data-city-key="st-polten"]{--city-photo-local:url("../media/asset-98b50182479acb71f1c6.webp")}
[data-city-key="stuttgart"]{--city-photo-local:url("../media/asset-3f70f71c54c42bbdd8e2.webp")}
[data-city-key="szeged"]{--city-photo-local:url("../media/asset-531c1b5d67b2f6174b1e.webp")}
[data-city-key="szekesfehervar"]{--city-photo-local:url("../media/asset-7eaa30fe20d256cfc23b.webp")}
[data-city-key="triest"]{--city-photo-local:url("../media/asset-b5409b27f26a3ac94d94.webp")}
[data-city-key="turin"]{--city-photo-local:url("../media/asset-9af921288295bed37573.webp")}
[data-city-key="ulm"]{--city-photo-local:url("../media/asset-cfa484786c98335a14b0.webp")}
[data-city-key="venedig"]{--city-photo-local:url("../media/asset-e9dc53931c06f643e1d9.webp")}
[data-city-key="verona"]{--city-photo-local:url("../media/asset-ceb965644a2b5a33e8a1.webp")}
[data-city-key="veszprem"]{--city-photo-local:url("../media/asset-467038c9399fdd468e9a.webp")}
[data-city-key="villach"]{--city-photo-local:url("../media/asset-08c99a6d8b6a07a637e6.webp")}
[data-city-key="wels"]{--city-photo-local:url("../media/asset-190e3381b9570863b45d.webp")}
[data-city-key="wien"]{--city-photo-local:url("../media/asset-d383ba1a038ecca2e7a8.webp")}
[data-city-key="wiesbaden"]{--city-photo-local:url("../media/asset-1fc4650467c5b89f77fc.webp")}
[data-city-key="wuppertal"]{--city-photo-local:url("../media/asset-9dd486a133c5afb7a87d.webp")}
[data-city-key="wurzburg"]{--city-photo-local:url("../media/asset-c64f13c1c3df07eced32.webp")}
[data-city-key="zalaegerszeg"]{--city-photo-local:url("../media/asset-60fae547c56ec462c43d.webp")}

/* WordPress integration */
.qt-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
body.admin-bar header{top:32px}
@media(max-width:782px){body.admin-bar header{top:46px}}
.quintego-route-active .quintego-premium-root>.route,.quintego-route-active .quintego-premium-root>.intl-route,.quintego-route-active .quintego-premium-root>.intl-country-section{display:block!important;position:static!important;inset:auto!important;opacity:1!important;visibility:visible!important;transform:none!important;overflow:visible!important;min-height:0!important;z-index:auto!important}
.quintego-route-active .standalone-content{display:block!important;position:static!important;opacity:1!important;visibility:visible!important;transform:none!important;margin:0!important}
.quintego-route-active .standalone-content .page-main{padding-top:clamp(46px,7vw,86px)}
.quintego-route-active .legal-route .page-main{padding-top:clamp(54px,7vw,92px)!important}
.quintego-route-active .legal-document-header{position:relative;z-index:2}
.quintego-route-active .closebar,.quintego-route-active .intl-close{display:none!important}

/* WCAG 2.2 AA accessibility layer */
#main-content{min-width:0}
#main-content:focus{outline:0}
#main-content:focus-visible{outline:3px solid var(--turquoise);outline-offset:-3px}
.mobile-menu-panel.is-open{display:block}
body.mobile-menu-open{overflow:hidden}
.mobile-menu-panel__close{min-width:44px;min-height:44px;background:transparent;font:inherit;cursor:pointer}
.mobile-menu-panel__sublink{display:block;min-height:44px}
.card input,.card select,.card textarea,.btn,button{min-height:44px}
.form-note{max-width:70ch}
@media(forced-colors:active){
  .skip-link,.btn,.menu-toggle,.mobile-menu-panel__close,.faq-item summary,.service-link,.related-links a{border:2px solid ButtonText}
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,#main-content:focus-visible{outline:3px solid Highlight!important;outline-offset:3px}
  .qmark,.forensic-area-card:before{forced-color-adjust:none}
}
.service-box h2,.service-box h3{margin:0 0 10px;font-size:28px;overflow-wrap:anywhere;word-break:break-word}
.service-link{width:100%;max-width:100%;flex-wrap:wrap}
.service-link strong,.service-link small{overflow-wrap:anywhere;word-break:break-word}
.city-card h2,.intl-city-card h2,.intl-card-copy h2{margin:0 0 8px;color:var(--petrol);font-size:20px}
.calbox h2{margin:0 0 12px;color:var(--cream);font-size:30px}

/* Final reported visual corrections — precise alignment and premium contrast */
@media(min-width:1101px){
  .nav{grid-template-columns:minmax(250px,.82fr) auto minmax(120px,.42fr)}
  .menu{gap:clamp(38px,3.15vw,56px);font-size:13px}
  .menu>a,.menu-item>a{padding-left:2px;padding-right:2px}
  .service-list{grid-auto-rows:140px}
  .service-link{height:140px}
}
.forensics{
  grid-template-columns:minmax(300px,1.05fr) minmax(440px,1fr) minmax(300px,.78fr);
  align-items:stretch;border-top:1px solid rgba(53,200,190,.36);border-bottom:1px solid rgba(53,200,190,.36)
}
.forensic-img{min-height:100%}
.forensic-copy{
  justify-content:flex-start;padding:clamp(34px,3vw,48px);
  border-left:1px solid rgba(53,200,190,.36);border-right:1px solid rgba(53,200,190,.36)
}
.forensic-copy p{margin:0 0 18px}
.forensic-tools-intro strong{color:var(--cream)}
.forensic-toolchain{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:4px 0 22px}
.forensic-toolchain span:last-child:nth-child(odd){grid-column:1/-1}
.forensic-toolchain span{
  display:flex;min-width:0;min-height:82px;flex-direction:column;justify-content:center;padding:12px 13px;
  border:1px solid rgba(53,200,190,.32);border-radius:10px;background:rgba(247,243,235,.045)
}
.forensic-toolchain b{color:var(--cream);font-size:12px;line-height:1.3;overflow-wrap:anywhere}
.forensic-toolchain small{margin-top:4px;color:rgba(247,243,235,.72);font-size:10px;line-height:1.35}
.checks{display:grid;gap:10px;margin:0 0 24px}
.checks li{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;margin:0}
.checks li:before{margin:0;line-height:1.6;text-align:center}
.world{
  margin:0;padding:clamp(34px,3vw,48px);border:0;justify-content:center;
  background:linear-gradient(145deg,rgba(169,215,220,.075),rgba(7,26,43,.08))
}
.world img{margin:8px 0 18px;border-radius:10px}
.service-link{
  display:grid;grid-template-columns:minmax(0,1fr) 32px;align-items:center;column-gap:16px;
  flex-wrap:initial;padding:15px 10px
}
.service-link em{
  display:grid;place-items:center;justify-self:end;width:32px;height:32px;line-height:1;font-size:22px
}
.service-link:hover em{transform:translateX(2px)}
.country-overview>h2,.country-overview>h3{color:var(--petrol)}
.country-overview__card{
  display:flex;min-height:172px;flex-direction:column;justify-content:center;padding:28px;
  border-color:rgba(53,200,190,.34);background:linear-gradient(145deg,#102638,#071A2B);
  box-shadow:0 16px 38px rgba(7,26,43,.16)
}
.country-overview__card strong{color:var(--cream)}
.country-overview__card span{color:rgba(247,243,235,.82)}
.country-overview__card:hover,.country-overview__card:focus-visible{
  border-color:var(--turquoise);background:linear-gradient(145deg,#17374c,#0a2235);box-shadow:0 20px 44px rgba(7,26,43,.23)
}
.contact{align-items:start}
.calbox{
  position:relative;align-self:start;min-height:0;justify-content:flex-start;overflow:hidden;text-align:left;
  padding:clamp(30px,4vw,46px);background:radial-gradient(circle at 92% 5%,rgba(53,200,190,.18),transparent 34%),linear-gradient(145deg,#102638,#071A2B)
}
.calbox:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--turquoise),var(--ice))}
.calbox__inner{width:100%;max-width:600px}
.calbox__eyebrow{display:block;margin-bottom:10px;color:var(--turquoise);font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.contact .calbox h2,.contact .calbox h3{margin:0 0 14px;color:var(--cream);font-size:clamp(27px,2.7vw,34px);line-height:1.14;text-wrap:balance}
.calbox__benefits{display:grid;gap:11px;margin:24px 0;padding:0;list-style:none}
.calbox__benefits li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;color:rgba(247,243,235,.9);line-height:1.5}
.calbox__benefits li:before{content:"✓";color:var(--turquoise);font-weight:900}
.calbox .btn{margin-top:4px}
.calbox__note{display:block;margin-top:15px;color:rgba(247,243,235,.62);font-size:11px;line-height:1.5}
@media(max-width:1100px){
  .forensics{grid-template-columns:1fr;border-left:0;border-right:0}
  .forensic-img{min-height:340px}
  .forensic-copy{border:0;border-top:1px solid rgba(53,200,190,.36);border-bottom:1px solid rgba(53,200,190,.36)}
  .world{border:0;padding:clamp(30px,6vw,48px)}
  .service-link{height:auto;min-height:104px}
}
@media(max-width:650px){
  .forensic-img{min-height:270px}
  .forensic-toolchain{grid-template-columns:1fr}
  .forensic-toolchain span{min-height:70px}
  .forensic-copy,.world{padding:30px 20px}
  .service-link{grid-template-columns:minmax(0,1fr) 32px;min-height:112px}
  .country-overview__card{min-height:150px;padding:24px}
  .calbox{padding:30px 24px}
}
.service-box h2,.service-box h3{overflow-wrap:normal;word-break:normal;hyphens:auto}
.service-link strong,.service-link small{overflow-wrap:break-word;word-break:normal;hyphens:auto}
@media(max-width:650px){.service-box h2,.service-box h3{font-size:25px;line-height:1.16}}

/* v1.1.1 production hardening
 * Elementor themes and browser dark-mode heuristics must not replace the
 * carefully chosen foreground colours after the plugin CSS has loaded. */
:root{color-scheme:light only}
html,body.quintego-premium-active,body.quintego-elementor-canvas{color-scheme:light only}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root{
  color-scheme:light only;
  color:var(--cream)!important;
  font-family:-apple-system,BlinkMacSystemFont,"Avenir Next","Segoe UI",Roboto,Helvetica,Arial,sans-serif!important;
  -webkit-text-size-adjust:100%;text-size-adjust:100%;
  font-synthesis:none;
}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(h1,h2,h3,h4,p,a,span,strong,small,li,label,summary,button,input,select,textarea,em){
  font-family:inherit;
  -webkit-text-fill-color:currentColor!important;
}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(input,select,textarea,button){color-scheme:light only}

/* Light content surfaces. These selectors deliberately outrank Elementor's
 * global heading/text colours and remain stable regardless of stylesheet order. */
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(
  .trust,.bottom-benefits,.section.light,.section.dark,.intl-country-section,
  .page-main,.route-body,.intl-route-body,.body-card,.service-box,.city-card,
  .intl-city-card,#kontakt .card,.legal-document,.faq-item,.about-story__aside,
  .platform-card,.technology-card,.installer-certificates,.certificate-link-row
){color:var(--petrol)!important;background-color:var(--cream)}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(
  .trust,.bottom-benefits,.section.light,.section.dark,.intl-country-section,
  .page-main,.route-body,.intl-route-body,.body-card,.service-box,.city-card,
  .intl-city-card,#kontakt .card,.legal-document,.faq-item,.about-story__aside,
  .platform-card,.technology-card,.installer-certificates,.certificate-link-row
) :where(h1,h2,h3,h4,p,a,span,strong,small,li,label,summary,em,dt,dd){color:inherit!important}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(
  .section.light,.section.dark,.intl-country-section,.page-main,.route-body,
  .intl-route-body,.body-card,.service-box,.city-card,.intl-city-card,
  #kontakt .card,.legal-document,.faq-item
) :where(p,li,small,dd){color:#405b63!important}

/* Dark and photographic surfaces. */
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(
  .topbar,header,.hero,.forensics,footer,.page-hero,.intl-route-hero,.dropdown,
  .side-card,.calbox,.evidence-panel,.country-overview__card,.mobile-menu-panel,
  .route .closebar,.intl-close,.city-photo-credit-row
){color:var(--cream)!important}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(
  .topbar,header,.hero,.forensics,footer,.page-hero,.intl-route-hero,.dropdown,
  .side-card,.calbox,.evidence-panel,.country-overview__card,.mobile-menu-panel,
  .route .closebar,.intl-close,.city-photo-credit-row
) :where(h1,h2,h3,h4,p,a,span,strong,small,li,label,summary,em,button){color:inherit!important}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(.hero,.forensics,.page-hero,.intl-route-hero,.side-card,.calbox,.evidence-panel,footer) :where(p,li,small){color:#dbe5e5!important}

body.quintego-premium-active .quintego-premium-root.quintego-premium-root .brand,
body.quintego-premium-active .quintego-premium-root.quintego-premium-root .brandtext,
body.quintego-premium-active .quintego-premium-root.quintego-premium-root .brandtext b,
body.quintego-premium-active .quintego-premium-root.quintego-premium-root .brandtext small,
body.quintego-premium-active .quintego-premium-root.quintego-premium-root .menu a,
body.quintego-premium-active .quintego-premium-root.quintego-premium-root .top-contact{color:var(--cream)!important}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(.hero h1 span,.hero-brandline,.forensics .eyebrow,.page-hero .eyebrow,.intl-route-hero .eyebrow,.page-hero .breadcrumbs,.drop,.footer-owner,.calbox__eyebrow,.evidence-panel .professional-panel__eyebrow,.route .closebar a,.intl-close){color:var(--turquoise)!important}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root .btn.primary,
body.quintego-premium-active .quintego-premium-root.quintego-premium-root button.btn.primary{
  background:var(--turquoise)!important;
  border-color:var(--turquoise)!important;
  color:var(--petrol-deep)!important;
}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(.card input,.card select,.card textarea){
  background-color:#fff!important;color:var(--petrol)!important;
  -webkit-text-fill-color:var(--petrol)!important;
}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(.card input,.card select,.card textarea)::placeholder{color:#5b7076!important;opacity:1}

/* Some city templates intentionally combine body-card and side-card. Keep the
 * dark call-to-action surface from being flattened by the light-card rule. */
body.quintego-premium-active .quintego-premium-root.quintego-premium-root .side-card.side-card{
  background:var(--petrol)!important;color:var(--cream)!important
}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root .side-card.side-card :where(h2,h3,h4,p,a,span,strong,small,li){color:inherit!important}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root .side-card.side-card .btn.primary{
  color:var(--petrol-deep)!important
}

/* City and international FAQ blocks are direct route children rather than
 * children of route-body. Give them their own readable light surface and the
 * same horizontal alignment as the rest of the standalone page. */
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(.route,.intl-route) > .faq-section{
  box-sizing:border-box;margin:0!important;
  padding:clamp(42px,6vw,76px) max(24px,calc((100vw - 1226px)/2)) clamp(58px,7vw,90px);
  background:var(--cream)!important;color:var(--petrol)!important;
  border-top:1px solid rgba(16,38,56,.14)
}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(.route,.intl-route) > .faq-section :where(h2,h3,h4,summary,strong,a){color:var(--petrol)!important}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(.route,.intl-route) > .faq-section :where(p,small){color:#405b63!important}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(.route,.intl-route) > .faq-section .kicker{color:var(--petrol)!important}

@media(prefers-color-scheme:dark){
  html,body.quintego-premium-active,body.quintego-elementor-canvas{color-scheme:light only}
  body.quintego-premium-active,body.quintego-elementor-canvas{background:var(--cream)!important}
  body.quintego-premium-active .quintego-premium-root.quintego-premium-root{color-scheme:light only}
}

/* Native WordPress/Elementor pages: the generated widget is intentionally
 * edge-to-edge, while optional user additions receive the normal site grid. */
body.quintego-elementor-canvas #primary,
body.quintego-elementor-canvas .elementor,
body.quintego-elementor-canvas .elementor-section-wrap,
body.quintego-elementor-canvas .elementor-widget-quintego-site-suite,
body.quintego-elementor-canvas .elementor-widget-quintego-editable-route,
body.quintego-elementor-canvas .elementor-widget-quintego-site-suite > .elementor-widget-container,
body.quintego-elementor-canvas .elementor-widget-quintego-editable-route > .elementor-widget-container{
  width:100%;max-width:none;margin:0;padding:0
}
.quintego-elementor-insert{
  padding:clamp(38px,5vw,70px) 0;
  background:var(--cream);color:var(--petrol);
  border-bottom:1px solid rgba(16,38,56,.12)
}
.quintego-elementor-insert :where(h1,h2,h3,h4,p,li,a,strong){color:inherit}
.quintego-elementor-custom-body{background:var(--cream);color:var(--petrol)}

/* v1.2.1 — substantive, readable location-page depth. */
.city-seo-depth{
  margin:clamp(38px,5vw,62px) 0 34px;padding:clamp(24px,4vw,42px);
  border:1px solid rgba(16,38,56,.14);border-radius:18px;
  background:linear-gradient(145deg,rgba(169,215,220,.20),rgba(247,243,235,.88) 48%,#fff);
  box-shadow:0 18px 46px rgba(16,38,56,.08)
}
.city-seo-depth>.kicker{margin:0 0 10px;color:#126d70!important;font-size:11px;font-weight:900;letter-spacing:.12em}
.body-card .city-seo-depth>h2{margin:0;max-width:820px;font-size:clamp(27px,3.2vw,39px);line-height:1.14;letter-spacing:-.025em;text-wrap:balance}
.body-card .city-seo-depth__intro{max-width:820px;margin:18px 0 0;color:#334f57!important;font-size:16px;line-height:1.78}
.city-seo-depth__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;margin-top:28px}
.city-seo-depth__card{
  position:relative;min-width:0;padding:23px 21px 24px;border:1px solid rgba(16,38,56,.12);
  border-radius:13px;background:#fff;box-shadow:0 10px 26px rgba(16,38,56,.055)
}
.city-seo-depth__card:before{content:"";position:absolute;inset:0 0 auto;height:3px;border-radius:13px 13px 0 0;background:var(--turquoise)}
.body-card .city-seo-depth__card h3{margin:2px 0 11px;font-size:18px;line-height:1.28}
.body-card .city-seo-depth__card p{margin:0;color:#405b63!important;font-size:14px;line-height:1.72}
.city-seo-depth__service{
  margin-top:14px;padding:24px;border:1px solid rgba(53,200,190,.38);border-radius:13px;
  background:linear-gradient(145deg,#102638,#071a2b);color:var(--cream)!important
}
.body-card .city-seo-depth__service h3{margin:0 0 9px;color:var(--cream)!important;font-size:20px;line-height:1.3}
.body-card .city-seo-depth__service p{margin:0;color:#dbe5e5!important;font-size:14px;line-height:1.72}
.body-card .city-seo-depth__disclosure{
  margin:16px 0 0;padding:14px 16px;border-left:3px solid #126d70;background:rgba(255,255,255,.66);
  color:#405b63!important;font-size:12px;line-height:1.65
}
.city-route-faq summary{font-weight:800}
@media(max-width:650px){
  .city-seo-depth{margin:32px -9px 28px;padding:24px 17px;border-radius:14px}
  .city-seo-depth__grid{grid-template-columns:1fr;margin-top:22px}
  .city-seo-depth__card,.city-seo-depth__service{padding:20px 17px}
}
@media(forced-colors:active){
  .city-seo-depth,.city-seo-depth__card,.city-seo-depth__service{border:2px solid CanvasText;box-shadow:none}
  .city-seo-depth__card:before{background:CanvasText}
}

/* v1.2.5 — full-width Elementor isolation and a quieter warm-white palette.
 * The outer rules neutralise boxed widths inherited from the active theme;
 * QUINTEGO's own .wrap containers remain the intentional content grid. */
body.quintego-elementor-canvas{
  width:100%!important;max-width:none!important;min-width:320px!important;
  margin:0!important;padding:0!important;background:var(--cream)!important;
  overflow-x:hidden!important
}
body.quintego-elementor-canvas #primary,
body.quintego-elementor-canvas #primary>.elementor,
body.quintego-elementor-canvas #primary>.elementor>.elementor-inner,
body.quintego-elementor-canvas #primary>.elementor>.elementor-inner>.elementor-section-wrap,
body.quintego-elementor-canvas #primary>.elementor>.elementor-section-wrap,
body.quintego-elementor-canvas #primary>.elementor>.elementor-top-section,
body.quintego-elementor-canvas #primary>.elementor>.elementor-section-wrap>.elementor-top-section,
body.quintego-elementor-canvas #primary>.elementor>.elementor-inner>.elementor-section-wrap>.elementor-top-section,
body.quintego-elementor-canvas .elementor-top-section>.elementor-container,
body.quintego-elementor-canvas .elementor-top-section>.elementor-container>.elementor-column,
body.quintego-elementor-canvas .elementor-top-section>.elementor-container>.elementor-column>.elementor-widget-wrap,
body.quintego-elementor-canvas .elementor-widget-quintego-site-suite,
body.quintego-elementor-canvas .elementor-widget-quintego-site-suite>.elementor-widget-container,
body.quintego-elementor-canvas .elementor-widget-quintego-editable-route,
body.quintego-elementor-canvas .elementor-widget-quintego-editable-route>.elementor-widget-container,
body.quintego-elementor-canvas .quintego-premium-root{
  box-sizing:border-box!important;width:100%!important;max-width:none!important;
  margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important
}
body.quintego-elementor-canvas .elementor-section.elementor-section-boxed>.elementor-container{
  max-width:none!important
}
body.quintego-elementor-canvas .elementor-column-gap-default>.elementor-column>.elementor-element-populated,
body.quintego-elementor-canvas .elementor-column-gap-extended>.elementor-column>.elementor-element-populated{
  padding-left:0!important;padding-right:0!important
}

body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(
  .section.light,.section.dark,.intl-country-section,.page-main,.route-body,
  .intl-route-body,.route-faq-shell,.home-faq,.legal-route .page-main
){background-color:var(--cream)!important}
body.quintego-premium-active .quintego-premium-root.quintego-premium-root :where(
  .body-card,.service-box,.city-card,.intl-city-card,.intl-card-copy,
  #kontakt .card,.legal-document,.faq-item,.about-story__aside,.platform-card,
  .technology-card,.installer-certificates,.certificate-link-row
){background-color:var(--card)!important}
.city-seo-depth{
  background:linear-gradient(145deg,rgba(169,215,220,.14),rgba(251,250,247,.96) 48%,#fff)
}

/* The AJAX qualification content is substantially longer than its compact
 * contact panel. A full-width article avoids a permanently empty right half;
 * the contact panel becomes a concise horizontal action band below it. */
#leistung-ajax-alarmanlagen .page-grid{
  grid-template-columns:minmax(0,1fr)!important;gap:22px!important
}
#leistung-ajax-alarmanlagen .body-card{
  width:100%;padding:clamp(28px,4vw,52px)
}
#leistung-ajax-alarmanlagen .body-card>h2,
#leistung-ajax-alarmanlagen .body-card>h3,
#leistung-ajax-alarmanlagen .body-card>p,
#leistung-ajax-alarmanlagen .body-card>ul{
  width:min(100%,920px);margin-left:auto;margin-right:auto
}
#leistung-ajax-alarmanlagen .body-card>.service-certification,
#leistung-ajax-alarmanlagen .body-card>.installer-certificates,
#leistung-ajax-alarmanlagen .body-card>.service-single-image-frame,
#leistung-ajax-alarmanlagen .body-card>.service-second-visual,
#leistung-ajax-alarmanlagen .body-card>.related-links{
  width:min(100%,1120px);margin-left:auto;margin-right:auto
}
#leistung-ajax-alarmanlagen .installer-certificates{
  padding:clamp(24px,3.5vw,38px);background:linear-gradient(145deg,rgba(169,215,220,.10),#fff)
}
#leistung-ajax-alarmanlagen .certificate-link-row{
  grid-template-columns:minmax(260px,1fr) minmax(210px,auto) minmax(100px,auto);
  min-height:74px;padding:17px 20px
}
#leistung-ajax-alarmanlagen .side-card{
  position:static!important;top:auto!important;display:grid;
  grid-template-columns:minmax(280px,1.35fr) repeat(3,minmax(155px,.62fr));
  grid-template-rows:auto auto;align-items:center;gap:8px 14px;
  width:100%;padding:26px 28px
}
#leistung-ajax-alarmanlagen .side-card h3{
  grid-column:1;grid-row:1;margin:0
}
#leistung-ajax-alarmanlagen .side-card p{
  grid-column:1;grid-row:2;margin:0
}
#leistung-ajax-alarmanlagen .side-card .btn{
  align-self:stretch;display:flex;align-items:center;justify-content:center;
  min-height:58px;margin:0
}
#leistung-ajax-alarmanlagen .side-card .btn:nth-of-type(1){grid-column:2;grid-row:1/3}
#leistung-ajax-alarmanlagen .side-card .btn:nth-of-type(2){grid-column:3;grid-row:1/3}
#leistung-ajax-alarmanlagen .side-card .btn:nth-of-type(3){grid-column:4;grid-row:1/3}
@media(max-width:980px){
  #leistung-ajax-alarmanlagen .certificate-link-row{grid-template-columns:minmax(0,1fr) auto;gap:7px 16px}
  #leistung-ajax-alarmanlagen .certificate-link-row__action{grid-column:1/-1}
  #leistung-ajax-alarmanlagen .side-card{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  #leistung-ajax-alarmanlagen .side-card h3,
  #leistung-ajax-alarmanlagen .side-card p{grid-column:1/-1;grid-row:auto}
  #leistung-ajax-alarmanlagen .side-card .btn:nth-of-type(1),
  #leistung-ajax-alarmanlagen .side-card .btn:nth-of-type(2),
  #leistung-ajax-alarmanlagen .side-card .btn:nth-of-type(3){grid-column:auto;grid-row:auto}
}
@media(max-width:650px){
  #leistung-ajax-alarmanlagen .body-card{padding:24px 18px}
  #leistung-ajax-alarmanlagen .certificate-link-row{grid-template-columns:1fr;min-height:0}
  #leistung-ajax-alarmanlagen .certificate-link-row__action{grid-column:auto}
  #leistung-ajax-alarmanlagen .side-card{display:flex;flex-direction:column;align-items:stretch;padding:25px 20px}
  #leistung-ajax-alarmanlagen .side-card .btn{width:100%;margin-top:6px}
}

/* v1.2.6 — consistent premium composition on every service page.
 * Long articles no longer share their full height with a short empty sidebar.
 * The action panel leads as a compact full-width band, followed by a spacious
 * article whose text measure remains deliberately readable. */
.route[id^="leistung-"] .page-grid{
  grid-template-columns:minmax(0,1fr)!important;gap:22px!important
}
.route[id^="leistung-"] .body-card{
  order:2;width:100%;padding:clamp(28px,4vw,52px)
}
.route[id^="leistung-"] .body-card>*{
  width:min(100%,1120px);margin-left:auto;margin-right:auto
}
.route[id^="leistung-"] .body-card>:where(h2,h3,h4,p,ul,ol){
  width:min(100%,920px)
}
.route[id^="leistung-"] .side-card{
  order:1;position:static!important;top:auto!important;display:grid;
  grid-template-columns:minmax(280px,1.35fr) repeat(3,minmax(155px,.62fr));
  grid-template-rows:auto auto;align-items:center;gap:8px 14px;
  width:100%;padding:26px 28px;border-radius:16px
}
.route[id^="leistung-"] .side-card h3{
  grid-column:1;grid-row:1;margin:0
}
.route[id^="leistung-"] .side-card p{
  grid-column:1;grid-row:2;margin:0
}
.route[id^="leistung-"] .side-card .btn{
  align-self:stretch;display:flex;align-items:center;justify-content:center;
  min-height:58px;margin:0
}
.route[id^="leistung-"] .side-card .btn:nth-of-type(1){grid-column:2;grid-row:1/3}
.route[id^="leistung-"] .side-card .btn:nth-of-type(2){grid-column:3;grid-row:1/3}
.route[id^="leistung-"] .side-card .btn:nth-of-type(3){grid-column:4;grid-row:1/3}
@media(max-width:980px){
  .route[id^="leistung-"] .side-card{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .route[id^="leistung-"] .side-card h3,
  .route[id^="leistung-"] .side-card p{grid-column:1/-1;grid-row:auto}
  .route[id^="leistung-"] .side-card .btn:nth-of-type(1),
  .route[id^="leistung-"] .side-card .btn:nth-of-type(2),
  .route[id^="leistung-"] .side-card .btn:nth-of-type(3){grid-column:auto;grid-row:auto}
}
@media(max-width:650px){
  .route[id^="leistung-"] .body-card{padding:24px 18px}
  .route[id^="leistung-"] .side-card{display:flex;flex-direction:column;align-items:stretch;padding:25px 20px}
  .route[id^="leistung-"] .side-card .btn{width:100%;margin-top:6px}
}
