/* Nur außerhalb des Feature-Seitenbaums eingebunden. Die bestehenden Inhalte bleiben nutzbar. */
body:not(#p1):not(#p6) #page-content {background:#f6f8fa;color:#172b3b;}
body:not(#p1):not(#p6) #page-content > .section {padding-block:0;}
body:not(:has(#slider)) #page-content {padding-top:160px;}
.mw-subpage,.mw-reference-page {padding-bottom:55px;}
.mw-subpage .mw-statement {border-bottom:1px solid #ccd8e2;margin-bottom:0;}
.mw-subpage .mw-statement h1 {font-size:clamp(38px,4.5vw,60px);}
.mw-detail-row {display:grid;grid-template-columns:.95fr 1.05fr;gap:65px;padding-block:70px;border-bottom:1px solid #ccd8e2;scroll-margin-top:125px;}
.mw-detail-heading .mw-service-icon {margin-bottom:23px;}
.mw-detail-row h2 {font-size:clamp(30px,3.4vw,44px);max-width:19ch;}
.mw-detail-copy {color:#465b6e;font-size:16px;}
.mw-detail-copy > p:last-child {margin-bottom:0;}
.mw-detail-row.mw-detail-panel {background:#eaf2f8;border:0;border-radius:24px;padding:44px;margin:55px 0 0;}
.mw-detail-row ol {list-style:none;margin:30px 0;padding:0;}
.mw-detail-row li {position:relative;margin:0;padding:18px 0 18px 34px;border-top:1px solid #c6d6e2;}
.mw-detail-row li::before {content:'\f058' / '';font-family:"Font Awesome 7 Free";font-weight:900;position:absolute;left:0;color:#2378b9;}
.mw-detail-row li strong {display:block;color:#172b3b;}
.mw-faq-section {padding-top:70px;display:grid;grid-template-columns:.95fr 1.05fr;gap:65px;}
.mw-faq-section h2 {font-size:clamp(30px,3.4vw,44px);}
.mw-faq details {border-top:1px solid #b7cbdc;}
.mw-faq details:last-child {border-bottom:1px solid #b7cbdc;}
.mw-faq summary {list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:25px;padding:24px 0;font-weight:700;line-height:1.45;color:#172b3b;}
.mw-faq summary::-webkit-details-marker {display:none;}
.mw-faq summary::after {content:'\f13a' / '';font-family:"Font Awesome 7 Free";font-weight:900;color:#2378b9;flex:none;}
.mw-faq details[open] summary::after {content:'\f139' / '';}
.mw-faq details p {font-size:15px;color:#465b6e;padding-right:20px;}
.mw-faq summary:focus-visible {outline:3px solid #2378b9;outline-offset:3px;}
.mw-subpage-end {padding:30px 0 75px;}
.mw-subpage-end .mw-finale h2 {max-width:24ch;}

/* Kontakt: ein voller Inhaltsbereich statt einer ungenutzten zweiten Containerspalte. */
#c104 > .frame-group-container > .frame-group-inner > .frame-container > .frame-inner > .contentcontainer {display:block;}
#c104 .contentcontainer-column {width:100%;}
#c104 .contentcontainer-column:empty {display:none;}
#c57,#c59,#c63,#c77,#c146 {animation:none!important;visibility:visible!important;}
.mw-contact-intro {padding:0;}
.mw-contact-grid {display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:22px;padding:45px 0 60px;}
.mw-contact-card {background:#fff;border:1px solid #dbe5ee;border-radius:20px;padding:30px;min-width:0;}
.mw-contact-card:first-child {background:#eaf2f8;}
.mw-contact-card .mw-service-icon {margin-bottom:23px;}
.mw-contact-card h2 {font-size:27px;margin:0 0 18px;}
.mw-contact-card p {color:#465b6e;font-size:15px;}
.mw-contact-card a {overflow-wrap:anywhere;}
.mw-contact-card .mw-contact-link {display:inline-block;font-weight:700;color:#1e658f;text-decoration:underline;text-underline-offset:4px;margin-top:8px;}
.mw-contact-address {display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;padding:15px 0 60px;border-bottom:1px solid #ccd8e2;margin-bottom:45px;}
.mw-contact-address h2 {font-size:clamp(32px,3.7vw,46px);}
.mw-contact-address h3 {font-size:22px;margin:24px 0 14px;}
.mw-contact-address p {color:#465b6e;font-size:16px;}
#p7 :is(#c85,#c62) {margin-bottom:40px;}
#p7 .privacy-overlay {border-radius:20px;overflow:hidden;}
#p7 iframe {max-width:100%;border:0;border-radius:20px;}

/* Vorhandene Umweltschutztexte erhalten ein ruhiges Raster neben dem Bild. */
#c148 {padding-top:55px;padding-bottom:65px;}
#c148 .contentcontainer {grid-template-columns:minmax(0,1fr) 240px;gap:60px;align-items:start;}
.mw-environment-page {padding:0;}
.mw-environment-page h1 {font-size:clamp(36px,4.5vw,58px);}
.mw-environment-page .mw-environment-lead {font-size:19px;color:#465b6e;line-height:1.6;}
.mw-environment-topics {margin-top:40px;}
.mw-topic-row {display:grid;grid-template-columns:42px minmax(0,1fr);gap:20px;border-top:1px solid #ccd8e2;padding:32px 0;}
.mw-topic-row > i {font-size:26px;color:#2378b9;padding-top:3px;}
.mw-topic-row h2 {font-size:29px;line-height:1.15;margin-bottom:20px;}
.mw-topic-row p {font-size:16px;color:#465b6e;}
.mw-topic-row a {color:#1e658f;text-decoration:underline;overflow-wrap:anywhere;}
#c149 {padding-top:20px;}
#c149 img {border-radius:24px;max-width:100%;height:auto;}

/* Rechtstexte: lesbare Zeilenlängen und dieselbe Typografie, keine inhaltliche Umformulierung. */
:is(#p9,#p10,#p11) #page-content {padding-bottom:70px;}
:is(#p9,#p10,#p11) #page-content > .section > .container {max-width:980px;background:#fff;border-radius:24px;padding:45px 50px;}
:is(#p9,#p10,#p11) #page-content .frame {padding-block:0;}
:is(#p9,#p10,#p11) #page-content {font-family:"Maven Pro",sans-serif;font-size:16px;line-height:1.75;}
:is(#p9,#p10,#p11) #page-content :is(h1,h2,h3,h4) {font-family:"Maven Pro",sans-serif;font-weight:700;color:#172b3b;line-height:1.25;letter-spacing:-.025em;text-transform:none;overflow-wrap:anywhere;}
:is(#p9,#p10,#p11) #page-content h1 {font-size:clamp(34px,4.5vw,54px);margin:0 0 32px;}
:is(#p9,#p10,#p11) #page-content h2 {font-size:27px;margin:40px 0 20px;}
:is(#p9,#p10,#p11) #page-content h3 {font-size:24px;margin:32px 0 16px;}
:is(#p9,#p10,#p11) #page-content h4 {font-size:21px;margin:28px 0 14px;}
:is(#p9,#p10,#p11) #page-content :is(h1,h2,h3,h4)::after {display:none;}
:is(#p9,#p10,#p11) #page-content .element-header {border:0;padding:0;}
:is(#p9,#p10,#p11) #page-content p {margin-bottom:1.3em;}
:is(#p9,#p10,#p11) #page-content a {color:#1e658f;overflow-wrap:anywhere;text-underline-offset:3px;}
:is(#p9,#p10,#p11) #page-content img {border-radius:16px;}
/* Den alten negativen Abstand zwischen Impressumskopf und Anbieterangaben aufheben. */
#p9 #page-content #c56 {margin-top:0;}

/* Referenzvorschauen und vorhandene weitere Inhaltsseiten verwenden den gleichen Rahmen. */
.mw-reference-heading {display:grid;grid-template-columns:1fr auto;align-items:end;gap:35px;padding:35px 0 40px;}
.mw-reference-heading h1 {font-size:clamp(32px,4.5vw,54px);margin:0;max-width:24ch;overflow-wrap:anywhere;}
.mw-reference-heading .mw-eyebrow {color:#2378b9;}
.mw-reference-preview {border:1px solid #dbe5ee;border-radius:20px;overflow:hidden;background:white;}
.mw-reference-preview iframe {display:block;width:100%;max-width:100%;border:0;}
#p4 #c130 {padding:20px 0 50px;}
#p4 #c130 .image-hover {border-radius:16px;overflow:hidden;}
#p23 #c78 {padding:55px 0;max-width:980px;margin-inline:auto;}
#p23 #c78 img {border-radius:20px;}
.mw-status-page {padding:45px 0 80px;max-width:800px;}
.mw-status-page h1 {font-size:clamp(35px,5vw,60px);}
.mw-status-page p {max-width:60ch;color:#465b6e;}

@media(max-width:991px){
 body:not(:has(#slider)) #page-content {padding-top:115px;}
 .mw-detail-row,.mw-faq-section,.mw-contact-address {gap:35px;}
 .mw-detail-row.mw-detail-panel {padding:30px;}
 .mw-contact-grid {grid-template-columns:1fr;gap:18px;}
 .mw-contact-card {display:grid;grid-template-columns:48px 1fr;gap:20px;padding:28px;}
 .mw-contact-card .mw-service-icon {margin:0;}
 #c148 .contentcontainer {grid-template-columns:minmax(0,1fr) 170px;gap:30px;}
 :is(#p9,#p10,#p11) #page-content > .section > .container {padding:35px;}
 .mw-reference-heading {grid-template-columns:1fr;gap:25px;}
 .mw-reference-heading .mw-quiet {justify-self:start;}
}
@media(max-width:767px){
 body:not(:has(#slider)) #page-content {padding-top:150px;}
 .mw-subpage .mw-statement h1 {font-size:clamp(34px,9vw,50px);}
 .mw-detail-row,.mw-faq-section,.mw-contact-address {grid-template-columns:1fr;gap:25px;padding-block:40px;}
 .mw-detail-row h2,.mw-faq-section h2 {font-size:32px;}
 .mw-detail-row.mw-detail-panel {padding:28px 20px;margin-top:35px;border-radius:16px;}
 .mw-detail-heading .mw-service-icon {margin-bottom:18px;}
 .mw-detail-copy {font-size:16px;}
 .mw-faq summary {padding-block:21px;font-size:16px;}
 .mw-subpage-end {padding:15px 0 40px;}
 .mw-contact-grid {padding:30px 0;}
 .mw-contact-card {grid-template-columns:38px minmax(0,1fr);gap:14px;padding:24px 18px;border-radius:16px;}
 .mw-contact-card h2 {font-size:24px;}
 .mw-contact-address {padding-top:15px;margin-bottom:30px;}
 #c148 {padding-top:35px;padding-bottom:30px;}
 #c148 .contentcontainer {grid-template-columns:1fr;gap:10px;}
 #c149 {max-width:260px;margin-inline:auto;padding-top:0;}
 .mw-environment-page h1 {font-size:36px;}
 .mw-environment-page .mw-environment-lead {font-size:17px;}
 .mw-topic-row {grid-template-columns:28px minmax(0,1fr);gap:14px;}
 .mw-topic-row h2 {font-size:25px;}
 .mw-topic-row > i {font-size:22px;}
 :is(#p9,#p10,#p11) #page-content > .section > .container {border-radius:16px;padding:26px 20px;max-width:calc(100% - 30px);}
 :is(#p9,#p10,#p11) #page-content h1 {font-size:34px;}
 :is(#p9,#p10,#p11) #page-content h2 {font-size:23px;}
 :is(#p9,#p10,#p11) #page-content h3 {font-size:22px;}
 .mw-reference-heading {padding-top:20px;}
 .mw-reference-heading h1 {font-size:34px;}
}

/* Auch geerbte Hero-Slider der Einzelseiten verwenden die Startseiten-Gestaltung. */
#slider .tp-caption.hero-caption {background:linear-gradient(90deg,rgba(10,28,46,.86),rgba(10,28,46,.5) 48%,rgba(10,28,46,.08));}
#slider .hero-copy {align-items:flex-start;text-align:left;max-width:1088px;gap:22px;}
#slider .hero-title {font-family:"Maven Pro",sans-serif;font-size:clamp(34px,4.5vw,62px)!important;font-weight:700;letter-spacing:-.04em;line-height:1.08!important;max-width:16ch;background:none;padding:0;color:#fff;}
#slider .hero-description {font-family:"Maven Pro",sans-serif;font-size:clamp(17px,1.8vw,22px)!important;line-height:1.5!important;max-width:46ch;background:none;padding:0;color:#f0f5fa;}
#slider .hero-title p,#slider .hero-description p {text-align:left;}
#slider .hero-rule {width:54px;background:#45a1e8;}
#slider .hero-action .btn {background:#45a1e8;border:1px solid #45a1e8;color:#172b3b!important;border-radius:5px;text-shadow:none;box-shadow:none;font-family:"Maven Pro",sans-serif;font-weight:700;letter-spacing:0;padding:13px 20px;}
#slider .hero-action .btn:hover,#slider .hero-action .btn:focus-visible {background:#75baf0;outline:2px solid white;outline-offset:3px;}
#slider .hero-loading {border-color:#45a1e840;border-top-color:#45a1e8;}
@media(min-width:992px){#slider .tp-caption.hero-caption{padding-top:155px!important;padding-bottom:60px!important;}}
@media(max-width:991px){#slider .hero-copy{gap:10px;}#slider .hero-title{font-size:29px!important;max-width:25ch;}#slider .hero-description{font-size:17px!important;}#slider .hero-action .btn{padding:7px 13px;}}
@media(max-width:576px){#slider .tp-caption.hero-caption{padding:95px 7% 30px!important;}#slider .hero-copy{gap:12px;max-width:100%;}#slider .hero-title{font-size:27px!important;max-width:20ch;line-height:1.12!important;}#slider .hero-description{font-size:14px!important;line-height:1.4!important;}#slider .hero-action .btn{font-size:13px!important;padding:8px 12px;}}

/* Leistungsübersicht und REDAXO-Projekte verwenden den gemeinsamen Seitenrhythmus. */
#p23 #c78 {max-width:none;padding:0;}
.mw-service-selection {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:50px 0 0;}
.mw-service-option {padding:36px;background:#fff;border:1px solid #d6e2eb;border-radius:22px;min-width:0;}
.mw-service-option-main {grid-column:1/-1;background:#eaf2f8;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);column-gap:55px;}
.mw-service-option-main > :is(.mw-service-icon,.mw-eyebrow,h2) {grid-column:1;}
.mw-service-option-main > .mw-service-icon {grid-row:1;}
.mw-service-option-main > .mw-eyebrow {grid-row:2;}
.mw-service-option-main > h2 {grid-row:3;}
.mw-service-option-main > p:not(.mw-eyebrow),.mw-service-option-main > a {grid-column:2;}
.mw-service-option-main > p:nth-child(4) {grid-row:1/3;}
.mw-service-option-main > p:nth-child(5) {grid-row:3;}
.mw-service-option-main > a {grid-row:4;}
.mw-service-option .mw-service-icon {margin-bottom:22px;}
.mw-service-option h2 {font-size:36px;margin-bottom:23px;}
.mw-service-option p:not(.mw-eyebrow) {color:#465b6e;font-size:16px;}
.mw-service-option a {justify-self:start;margin-top:12px;}
.mw-service-projects {padding-top:65px;scroll-margin-top:120px;}
.mw-service-projects-heading {max-width:700px;margin-bottom:32px;}
.mw-service-projects-heading h2 {font-size:clamp(32px,3.5vw,46px);}
.mw-service-projects-heading > p:last-child {color:#465b6e;font-size:17px;}
.mw-service-project-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
.mw-service-project {background:white;border:1px solid #d6e2eb;border-radius:22px;overflow:hidden;min-width:0;}
.mw-service-project-logo {padding:30px;border-bottom:1px solid #e0e9f0;}
.mw-service-project-logo img {display:block;width:100%;height:115px;object-fit:contain;border-radius:0!important;}
.mw-service-project-copy {padding:30px;}
.mw-service-project-copy h3 {font-size:27px;margin:0 0 20px;}
.mw-service-project-copy > p:not(.mw-eyebrow) {font-size:16px!important;line-height:1.65!important;color:#465b6e;}
.mw-service-topics {display:flex;flex-wrap:wrap;gap:12px 24px;padding:26px 0;border-bottom:1px solid #ccd8e2;}
.mw-service-topics a {color:#1e658f;text-decoration:underline;text-underline-offset:4px;font-weight:600;}
.mw-services-page a:focus-visible,.mw-service-topics a:focus-visible {outline:3px solid #2378b9;outline-offset:4px;}
.mw-services-page h1 span {color:#2378b9;}
.mw-service-additional {padding-top:45px;}
.mw-service-additional h2 {font-size:29px;}
.mw-service-project-links {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;margin:25px 0 16px;}
.mw-service-project-links a {padding:22px 0;border-top:1px solid #ccd8e2;display:flex;flex-direction:column;gap:6px;color:#172b3b;overflow-wrap:anywhere;}
.mw-service-project-links a span {font-size:14px;color:#1e658f;}
.mw-service-project-links a:hover strong {color:#2378b9;}
.mw-service-additional > p {font-size:14px!important;color:#465b6e;}
@media(max-width:767px){
 .mw-service-selection,.mw-service-project-grid {grid-template-columns:1fr;gap:20px;}
 .mw-service-selection {margin-top:30px;}
 .mw-service-option-main {display:block;}
 .mw-service-option,.mw-service-project-copy {padding:28px 22px;}
 .mw-service-option h2 {font-size:30px;}
 .mw-service-projects {padding-top:40px;}
 .mw-service-project-copy h3 {font-size:26px;}
 .mw-service-project-logo {padding:24px;}
 .mw-service-topics {gap:14px 22px;}
 .mw-service-project-links {grid-template-columns:1fr;}
}

/* Offizielle CMS-Wort-/Bildmarken: ausreichend Freiraum, unveränderte Farben und Seitenverhältnisse. */
.mw-cms-brand {width:360px;max-width:100%;aspect-ratio:190.97/81;display:flex;align-items:center;justify-content:center;margin:0 0 30px;background:#fff;border:1px solid #d6e2eb;border-radius:18px;overflow:hidden;}
.mw-cms-brand img {display:block;width:100%;max-width:100%;height:auto;border-radius:0!important;}
.mw-cms-brand-redaxo {background:#4d99d3;border-color:#4d99d3;}
.mw-cms-brand-redaxo img {width:79%;}
@media(max-width:767px){.mw-cms-brand {width:310px;margin-bottom:25px;border-radius:14px;}}
/* Das Logo darf die Mindestbreite der einspaltigen mobilen Einleitung nicht bestimmen. */
.mw-statement:has(.mw-cms-brand)>div {min-width:0;}

/* Leistungsübersicht: vorhandene Marken statt allgemeiner Icons, Originalfarben erhalten. */
#p3 .mw-offer-mark {height:82px;max-width:100%;display:flex;align-items:center;gap:18px;margin:0 0 24px;}
#p3 .mw-offer-mark img {display:block;max-width:100%;height:auto;border-radius:0;}
#p3 .mw-offer-mark-typo3 img {width:240px;}
#p3 .mw-offer-mark-redaxo img {width:280px;}
#p3 .mw-offer-mark-pure img {width:56px;flex:0 0 56px;}
#p3 .mw-offer-mark-pure span {font-family:"Maven Pro",sans-serif;font-size:32px;font-weight:700;line-height:1.05;letter-spacing:-.6px;color:#172b3b;}
#p3 .mw-service-option-main {grid-template-rows:auto auto auto;align-content:start;}
#p3 .mw-service-option-main > .mw-offer-mark {grid-column:1;grid-row:1/3;align-self:center;margin-bottom:0;}
#p3 .mw-service-option-main > .mw-eyebrow {grid-column:1;grid-row:3;align-self:start;}
#p3 .mw-service-option-main > p:nth-child(4) {grid-column:2;grid-row:1;}
#p3 .mw-service-option-main > p:nth-child(5) {grid-column:2;grid-row:2;}
#p3 .mw-service-option-main > a {grid-column:2;grid-row:3;}
@media(max-width:767px){
 #p3 .mw-service-option-main > .mw-offer-mark {margin-bottom:24px;}
 #p3 .mw-offer-mark {height:72px;}
 #p3 .mw-offer-mark-typo3 img {width:220px;}
 #p3 .mw-offer-mark-pure {gap:14px;}
 #p3 .mw-offer-mark-pure img {width:46px;flex-basis:46px;}
 #p3 .mw-offer-mark-pure span {font-size:29px;}
}
/* Angebotsvorteile von Pure Websites: kompakter, kontrastreicher Einstieg direkt nach der Einleitung. */
#p58 .mw-pure-benefits {background:#172b3b;color:#fff;border-radius:24px;margin:48px 0 0;padding:48px;scroll-margin-top:120px;}
#p58 .mw-pure-benefits-heading {display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;margin-bottom:32px;}
#p58 .mw-pure-benefits .mw-eyebrow {color:#a8d9ff;margin-bottom:18px;}
#p58 .mw-pure-benefits h2 {color:#fff;font-size:clamp(30px,3.5vw,44px);line-height:1.12;margin:0;}
#p58 .mw-pure-benefits h2 span {color:#76c1fa;}
#p58 .mw-pure-benefits-heading > p {font-size:17px;line-height:1.65;color:#e0eaf2;margin:0;}
#p58 .mw-pure-benefits-grid,#p58 .mw-pure-benefits-extra {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px;}
#p58 .mw-pure-benefits article {display:grid;grid-template-columns:30px minmax(0,1fr);gap:18px;padding:26px 0;border-top:1px solid #435a6d;min-width:0;}
#p58 .mw-pure-benefits article > i {color:#76c1fa;font-size:25px;line-height:1.3;}
#p58 .mw-pure-benefits h3 {font-size:24px;line-height:1.2;color:#fff;margin:0 0 13px;hyphens:auto;overflow-wrap:anywhere;}
#p58 .mw-pure-benefits article p {font-size:16px;line-height:1.65;color:#e0eaf2;margin:0;hyphens:auto;overflow-wrap:anywhere;}
#p58 .mw-pure-benefits-extra {margin-top:6px;}
#p58 .mw-pure-benefits-extra h3 {font-size:21px;}
#p58 .mw-pure-benefits-extra article > i {font-size:22px;}
#p58 .mw-pure-benefits .mw-pure-benefits-fit {font-size:14px;line-height:1.65;color:#c5d6e3;border-top:1px solid #435a6d;padding-top:22px;margin:5px 0 0;max-width:85ch;}
#p58 .mw-pure-benefits-jump {display:block;width:fit-content;margin-top:18px;}
@media(max-width:991.98px){
 #p58 .mw-pure-benefits {padding:32px;}
 #p58 .mw-pure-benefits-heading {grid-template-columns:1fr;gap:22px;}
 #p58 .mw-pure-benefits-grid,#p58 .mw-pure-benefits-extra {column-gap:28px;}
 #p58 .mw-pure-benefits article {grid-template-columns:1fr;gap:14px;}
}
@media(max-width:575.98px){
 #p58 .mw-pure-benefits {padding:28px 22px;margin-top:30px;border-radius:20px;}
 #p58 .mw-pure-benefits-grid,#p58 .mw-pure-benefits-extra {grid-template-columns:1fr;}
 #p58 .mw-pure-benefits-heading {margin-bottom:24px;}
 #p58 .mw-pure-benefits article {padding:24px 0;}
 #p58 .mw-pure-benefits h3 {font-size:23px;}
}
