:root{
  --gpnw-blue:#4AA8D8;
  --gpnw-blue-strong:#2388bd;
  --gpnw-orange:#F0A020;
  --gpnw-orange-strong:#d68600;
  --gpnw-dark:#3A3A3A;
  --gpnw-white:#fff;
  --gpnw-blue-light:#E8F4FB;
  --gpnw-orange-light:#FEF5E4;
  --gpnw-gray-light:#F5F5F5;
  --gpnw-gray-mid:#888;
  --gpnw-border:#dce8ef;
  --gpnw-shadow:0 22px 58px rgba(58,58,58,.10);
  --gpnw-radius:26px;
  --gpnw-container:1340px;
  --gpnw-content:1180px;
  --gpnw-transition:.25s ease;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,'Segoe UI',sans-serif;color:var(--gpnw-dark);background:#fff;font-size:18px;line-height:1.72;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:var(--gpnw-blue-strong);text-decoration:none;transition:color var(--gpnw-transition)}a:hover{text-decoration:underline}img{max-width:100%;height:auto}.screen-reader-text{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:20px;background:#fff;z-index:9999;padding:10px 14px;border:2px solid var(--gpnw-blue)}

.gpnw-topline{height:7px;background:linear-gradient(90deg,var(--gpnw-blue) 0%,var(--gpnw-orange) 55%,var(--gpnw-blue) 100%)}
.site-header{background:rgba(255,255,255,.96);backdrop-filter:saturate(130%) blur(8px);border-bottom:1px solid var(--gpnw-border);position:sticky;top:0;z-index:50}.admin-bar .site-header{top:32px}.site-header__inner{max-width:var(--gpnw-container);margin:0 auto;display:flex;align-items:center;gap:28px;padding:15px 30px}.site-logo img{display:block;width:214px;height:auto}.primary-navigation{margin-left:auto}.primary-navigation ul{display:flex;align-items:center;gap:24px;list-style:none;margin:0;padding:0}.primary-navigation a{color:var(--gpnw-dark);font-weight:800;font-size:15px;transition:color var(--gpnw-transition)}.primary-navigation a:hover{color:var(--gpnw-blue-strong);text-decoration:none}.header-cta,.wp-block-button__link,.gpnw-btn{display:inline-block;background:linear-gradient(135deg,var(--gpnw-orange),var(--gpnw-orange-strong));color:#fff!important;border-radius:999px;padding:12px 23px;font-weight:900;border:0;text-decoration:none!important;box-shadow:0 12px 28px rgba(240,160,32,.28);transition:transform var(--gpnw-transition),box-shadow var(--gpnw-transition)}.header-cta:hover,.wp-block-button__link:hover,.gpnw-btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(240,160,32,.36)}.wp-block-button.is-style-outline .wp-block-button__link{background:#fff;color:var(--gpnw-blue-strong)!important;border:2px solid var(--gpnw-blue);box-shadow:none}.menu-toggle{display:none;background:var(--gpnw-dark);color:#fff;border:0;border-radius:999px;padding:10px 16px;font-weight:800}

.site-main{min-height:50vh}.gpnw-content-wrap,.gpnw-page-title-wrap{max-width:var(--gpnw-container);margin-left:auto;margin-right:auto;padding-left:30px;padding-right:30px}.gpnw-frontpage .gpnw-page-title-wrap{display:none}.gpnw-content-wrap :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) > *{max-width:var(--gpnw-content);margin-left:auto;margin-right:auto}.gpnw-content-wrap :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) > .alignwide,.gpnw-content-wrap :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) > .gpnw-section,.gpnw-content-wrap :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) > .gpnw-stats{max-width:var(--gpnw-container)}

.gpnw-page-title-wrap{margin-top:34px;margin-bottom:30px;padding:58px 44px;border-radius:30px;background:linear-gradient(135deg,var(--gpnw-blue-light) 0%,#fff 46%,var(--gpnw-orange-light) 100%);border:1px solid var(--gpnw-border);box-shadow:var(--gpnw-shadow);position:relative;overflow:hidden}.gpnw-page-title-wrap:before{content:"";position:absolute;left:0;top:0;bottom:0;width:10px;background:linear-gradient(180deg,var(--gpnw-blue),var(--gpnw-orange))}.gpnw-page-title{font-size:clamp(36px,4.6vw,64px);line-height:1.06;margin:0;font-weight:900;letter-spacing:-.04em;text-wrap:balance}

:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h1,.editor-styles-wrapper h1{font-size:clamp(36px,4.4vw,62px);line-height:1.08;letter-spacing:-.04em;color:var(--gpnw-dark);font-weight:900;margin:0 0 22px;text-wrap:balance;hyphens:none;word-break:normal;overflow-wrap:normal}:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2,.editor-styles-wrapper h2{font-size:clamp(26px,2.6vw,38px);line-height:1.16;letter-spacing:-.02em;color:var(--gpnw-dark);font-weight:900;margin:0 0 22px;text-wrap:balance;hyphens:none;word-break:normal;overflow-wrap:normal}:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2:after,.editor-styles-wrapper h2:after{content:"";display:block;width:88px;height:5px;border-radius:999px;background:linear-gradient(90deg,var(--gpnw-blue),var(--gpnw-orange));margin-top:13px}:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h3,.editor-styles-wrapper h3{font-size:clamp(20px,1.8vw,26px);line-height:1.24;letter-spacing:-.01em;color:var(--gpnw-blue);font-weight:900;margin:0 0 12px;text-wrap:balance;hyphens:none;word-break:normal;overflow-wrap:normal}:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h4,.editor-styles-wrapper h4{font-size:clamp(18px,1.35vw,22px);line-height:1.3;color:var(--gpnw-orange-strong);font-weight:900;text-transform:uppercase;letter-spacing:.035em;margin:0 0 10px}:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) p,.editor-styles-wrapper p{max-width:1120px;hyphens:none;word-break:normal;overflow-wrap:normal;text-wrap:pretty}.gpnw-lead{font-size:clamp(20px,1.55vw,24px);line-height:1.66;max-width:1140px;color:#4b4b4b}

.gpnw-section{max-width:var(--gpnw-container);margin:38px auto;padding:68px 48px;border-radius:30px;background:#fff;border:1px solid var(--gpnw-border);box-shadow:0 18px 46px rgba(58,58,58,.065);position:relative;overflow:hidden}.gpnw-section:before{content:"";position:absolute;left:0;top:0;right:0;height:6px;background:linear-gradient(90deg,var(--gpnw-blue),var(--gpnw-orange));opacity:.95}.gpnw-section:nth-of-type(odd){background:linear-gradient(135deg,#fff 0%,#fff 65%,var(--gpnw-orange-light) 100%)}.gpnw-section:nth-of-type(even){background:linear-gradient(135deg,#fff 0%,var(--gpnw-blue-light) 100%)}.gpnw-section.is-compact{padding-top:48px;padding-bottom:48px}.gpnw-section > .wp-block-group__inner-container > p:not(.gpnw-kicker),.gpnw-section > p:not(.gpnw-kicker){max-width:1120px}

.gpnw-hero{max-width:var(--gpnw-container);margin:34px auto 28px;padding:74px 52px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.75fr);gap:56px;align-items:center;border-radius:34px;background:linear-gradient(135deg,#fff 0%,var(--gpnw-blue-light) 48%,var(--gpnw-orange-light) 100%);border:1px solid var(--gpnw-border);box-shadow:var(--gpnw-shadow);position:relative;overflow:hidden}.gpnw-hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:12px;background:linear-gradient(180deg,var(--gpnw-blue),var(--gpnw-orange))}.gpnw-hero h1{font-size:clamp(40px,5vw,68px);line-height:1.06;margin:0 0 20px;font-weight:900;letter-spacing:-.045em;max-width:930px;text-wrap:balance;hyphens:none;word-break:normal}.gpnw-hero h1 strong,.gpnw-highlight{color:var(--gpnw-blue-strong)}.gpnw-kicker{display:inline-flex;align-items:center;gap:9px;background:#fff;border:2px solid var(--gpnw-blue);color:#126f9a;border-radius:999px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:900;padding:8px 14px;margin:0 0 18px;box-shadow:0 8px 20px rgba(74,168,216,.13)}.gpnw-kicker:before{content:"";width:9px;height:9px;background:var(--gpnw-orange);border-radius:999px}.gpnw-hero .wp-block-buttons{margin-top:28px}.gpnw-photo-box{background:linear-gradient(145deg,#fff,var(--gpnw-blue-light));border-radius:28px;min-height:330px;display:flex;align-items:center;justify-content:center;border:1px solid #cbe6f4;box-shadow:0 18px 42px rgba(74,168,216,.16);position:relative;overflow:hidden;text-align:center;color:#3e7f9e;font-weight:900;padding:32px}.gpnw-photo-box:before{content:"";position:absolute;inset:auto -40px -55px auto;width:170px;height:170px;border-radius:50%;background:rgba(240,160,32,.28)}.gpnw-photo-box p{position:relative;z-index:2;margin:0;color:#3e7f9e;font-weight:900;text-align:center;border:2px dashed rgba(74,168,216,.55);border-radius:18px;padding:24px 30px;background:rgba(255,255,255,.68);max-width:520px}.gpnw-photo-box:after{display:none!important}

.gpnw-stats{max-width:var(--gpnw-container);margin:28px auto;padding:0 30px;background:transparent;color:var(--gpnw-dark)}.gpnw-stats .gpnw-section{max-width:100%;margin:0;padding:28px;border-radius:28px;background:linear-gradient(135deg,var(--gpnw-dark) 0%,#2f5367 70%,#5f4c2c 100%);border:0;color:#fff}.gpnw-stats .gpnw-section:before{display:none}.gpnw-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.gpnw-stat{min-width:0;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);border-left:6px solid var(--gpnw-orange);border-radius:18px;padding:18px 18px 16px}.gpnw-stat strong{display:block;font-size:clamp(29px,2.2vw,38px);line-height:1.02;font-weight:900;white-space:nowrap;letter-spacing:-.025em;color:#fff}.gpnw-stat span{display:block;color:#f1f1f1;font-size:14px;line-height:1.28;margin-top:7px}

.gpnw-card-grid,.gpnw-card-grid>.wp-block-group__inner-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:26px;width:100%}.gpnw-card,.wp-block-group.gpnw-card{background:#fff;border:1px solid var(--gpnw-border);border-top:8px solid var(--gpnw-blue);border-radius:24px;padding:30px;box-shadow:0 14px 34px rgba(58,58,58,.075);min-width:0;transition:transform var(--gpnw-transition),box-shadow var(--gpnw-transition)}.gpnw-card:hover,.wp-block-group.gpnw-card:hover{transform:translateY(-4px);box-shadow:0 20px 42px rgba(58,58,58,.13)}.gpnw-card:nth-child(even),.wp-block-group.gpnw-card:nth-child(even){border-top-color:var(--gpnw-orange)}.gpnw-card-blue{background:linear-gradient(145deg,#fff,var(--gpnw-blue-light))}.gpnw-card-orange{background:linear-gradient(145deg,#fff,var(--gpnw-orange-light))}.gpnw-card h3{font-size:clamp(23px,1.85vw,29px);line-height:1.18;color:var(--gpnw-dark);margin:0 0 12px;hyphens:none;overflow-wrap:normal;word-break:normal}.gpnw-card p{font-size:16.5px;line-height:1.62;max-width:100%}.gpnw-card .wp-block-buttons{margin-top:18px}.gpnw-two-col>.wp-block-group__inner-container{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:start}.gpnw-gallery-placeholders{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:22px}.gpnw-gallery-placeholders .gpnw-photo-box{min-height:210px}

.gpnw-steps{counter-reset:step}.gpnw-step{display:grid;grid-template-columns:74px 1fr;gap:6px 22px;border-top:1px solid rgba(58,58,58,.13);padding:25px 0}.gpnw-step:before{grid-column:1;grid-row:1/-1;counter-increment:step;content:counter(step);width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--gpnw-blue),var(--gpnw-orange));color:#fff;font-size:28px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 22px rgba(74,168,216,.20);transition:transform var(--gpnw-transition)}.gpnw-step:hover:before{transform:scale(1.08)}.gpnw-step h3{grid-column:2;margin:0 0 6px}.gpnw-step p{grid-column:2;margin:0;max-width:100%}.gpnw-banner{background:linear-gradient(135deg,var(--gpnw-blue-light),#fff 50%,var(--gpnw-orange-light));border-radius:30px;padding:56px;box-shadow:var(--gpnw-shadow)}.gpnw-note{background:#fff;border-left:7px solid var(--gpnw-blue);padding:24px;border-radius:0 18px 18px 0;box-shadow:0 10px 26px rgba(74,168,216,.10)}.gpnw-warning{background:var(--gpnw-orange-light);border-left:7px solid var(--gpnw-orange);padding:24px;border-radius:0 18px 18px 0}.gpnw-note p,.gpnw-warning p{margin:0}.gpnw-plugin-placeholder{border:2px dashed var(--gpnw-blue);background:linear-gradient(135deg,var(--gpnw-blue-light),#fff);border-radius:22px;padding:30px;margin:26px 0;font-weight:700}.wp-block-table{overflow-x:auto}.wp-block-table table{border-collapse:collapse;width:100%;font-size:15.5px;background:#fff}.wp-block-table th{background:linear-gradient(90deg,var(--gpnw-dark),#4c4c4c);color:#fff;text-align:left}.wp-block-table td,.wp-block-table th{border:1px solid #ddd;padding:13px 14px;vertical-align:top}.wp-block-table tbody tr:nth-child(even){background:#fbfdfe}

.site-footer{background:var(--gpnw-blue-light);color:var(--gpnw-dark);margin-top:82px;border-top:1px solid var(--gpnw-border)}.site-footer__inner{max-width:var(--gpnw-container);margin:0 auto;padding:40px 30px;display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:34px}.site-footer h2,.site-footer h3{color:var(--gpnw-dark);margin-top:0}.site-footer h3{font-size:18px}.site-footer h3:after{display:none}.site-footer p,.site-footer li{color:#555}.site-footer ul{list-style:none;margin:0;padding:0}.site-footer li{margin:0 0 8px}.site-footer a{color:var(--gpnw-blue-strong)}.site-footer__bottom{border-top:1px solid var(--gpnw-border);text-align:center;padding:14px 30px;color:#888}

@media (max-width:1100px){.gpnw-hero{grid-template-columns:1fr}.gpnw-photo-box{min-height:250px}.gpnw-two-col>.wp-block-group__inner-container{grid-template-columns:1fr}.site-footer__inner{grid-template-columns:1fr 1fr}.site-header__inner{flex-wrap:wrap}.menu-toggle{display:inline-block;margin-left:auto}.primary-navigation{display:none;width:100%;order:5;margin-left:0}.primary-navigation.is-open{display:block}.primary-navigation ul{display:block}.primary-navigation li{border-top:1px solid var(--gpnw-border);padding:11px 0}.header-cta{display:none}}
@media (max-width:760px){body{font-size:17px}.admin-bar .site-header{top:0}.site-header__inner,.gpnw-content-wrap,.gpnw-page-title-wrap{padding-left:22px;padding-right:22px}.site-logo img{width:176px}.gpnw-page-title-wrap{padding:42px 26px;margin-top:22px}.gpnw-section{padding:46px 24px;margin:24px auto;border-radius:24px}.gpnw-hero{padding:48px 26px;margin-top:22px;border-radius:26px}.gpnw-hero h1{font-size:42px}.gpnw-lead{font-size:19px}.gpnw-card-grid,.gpnw-card-grid>.wp-block-group__inner-container,.gpnw-stat-grid,.gpnw-gallery-placeholders,.site-footer__inner{grid-template-columns:1fr}.gpnw-stats{padding-left:22px;padding-right:22px}.gpnw-step{grid-template-columns:1fr}.gpnw-step:before{margin-bottom:6px}.gpnw-banner{padding:38px 26px}:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h1{font-size:40px}:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2{font-size:30px}:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h3{font-size:23px}}

.gpnw-related-links{background:linear-gradient(135deg,var(--gpnw-blue-light),#fff 60%);border:1px solid var(--gpnw-border);border-radius:22px;padding:26px 28px;margin:30px 0}.gpnw-related-links h3,.gpnw-related-links h4{margin:0 0 10px;font-size:17px;color:var(--gpnw-dark);text-transform:none;letter-spacing:0}.gpnw-related-links h3:after{display:none}.gpnw-related-links ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.gpnw-related-links a{font-weight:700;display:inline-flex;align-items:center;gap:6px}.gpnw-related-links a:before{content:"\2192";color:var(--gpnw-orange-strong);transition:transform var(--gpnw-transition)}.gpnw-related-links a:hover:before{transform:translateX(4px)}
@media (prefers-reduced-motion:reduce){.gpnw-card,.wp-block-group.gpnw-card,.header-cta,.wp-block-button__link,.gpnw-btn,.gpnw-step:before,a,.primary-navigation a,.gpnw-related-links a:before{transition:none!important}.gpnw-card:hover,.wp-block-group.gpnw-card:hover,.header-cta:hover,.wp-block-button__link:hover,.gpnw-btn:hover,.gpnw-step:hover:before,.gpnw-related-links a:hover:before{transform:none!important}}

/* === v6.6.0: Ergaenzungen fuer modernes Gutenberg-Markup (ohne Legacy-inner-container) === */
.gpnw-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:38px;align-items:start}
.gpnw-two-col>.gpnw-col,.gpnw-two-col>.wp-block-group{min-width:0}
.gpnw-hero>.wp-block-group{min-width:0}
.gpnw-stats-band{max-width:var(--gpnw-container);margin:28px auto;padding:28px;border-radius:28px;background:linear-gradient(135deg,var(--gpnw-dark) 0%,#2f5367 70%,#5f4c2c 100%);color:#fff}
.gpnw-stats-band .gpnw-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}
.gpnw-stat p{margin:0;max-width:100%}
.gpnw-stat-number{font-size:clamp(29px,2.2vw,38px);line-height:1.02;font-weight:900;white-space:nowrap;letter-spacing:-.025em;color:#fff}
.gpnw-stat-label{color:#f1f1f1;font-size:14px;line-height:1.28;margin-top:7px!important}
.gpnw-steps>.wp-block-group.gpnw-step{display:grid}
.gpnw-hero .gpnw-hero-title{color:var(--gpnw-dark)}
@media (max-width:1100px){.gpnw-two-col{grid-template-columns:1fr}}
@media (max-width:760px){.gpnw-stats-band{margin-left:22px;margin-right:22px;padding:22px}.gpnw-stats-band .gpnw-stat-grid{grid-template-columns:1fr}}

/* === v6.7.1: Hauptmenü-Eintraege nie mehrzeilig umbrechen === */
.primary-navigation a{white-space:nowrap}
.header-cta{white-space:nowrap}
@media (max-width:1100px){.primary-navigation a{white-space:normal}}


/* === v6.7.2: ruhigere Typografie + schoenere Formulare === */
body{font-size:17px;line-height:1.68}
.site-header__inner{gap:24px;padding-top:13px;padding-bottom:13px}
.primary-navigation ul{gap:20px}
.primary-navigation a{font-size:14px;font-weight:700;letter-spacing:.01em}
.header-cta,.wp-block-button__link,.gpnw-btn{padding:11px 21px;font-weight:800}

.gpnw-page-title-wrap{padding:52px 42px}
.gpnw-page-title{font-size:clamp(34px,4vw,56px);line-height:1.08;font-weight:800}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h1,.editor-styles-wrapper h1{font-size:clamp(34px,4vw,56px);line-height:1.1;font-weight:800;margin:0 0 20px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2,.editor-styles-wrapper h2{font-size:clamp(25px,2.4vw,36px);line-height:1.18;font-weight:800;margin:0 0 18px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2:after,.editor-styles-wrapper h2:after{width:72px;height:4px;margin-top:11px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h3,.editor-styles-wrapper h3{font-size:clamp(20px,1.65vw,25px);line-height:1.26;font-weight:700;color:#317fa8}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h4,.editor-styles-wrapper h4{font-size:clamp(16px,1.15vw,19px);line-height:1.34;font-weight:700;letter-spacing:.03em}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) p,.editor-styles-wrapper p,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) li,.editor-styles-wrapper li{font-size:17px;line-height:1.72}
.gpnw-lead{font-size:clamp(18px,1.35vw,21px);line-height:1.7;color:#4f4f4f}

.gpnw-section{padding:58px 42px}
.gpnw-hero{padding:64px 48px;gap:44px}
.gpnw-hero h1{font-size:clamp(38px,4.5vw,60px);line-height:1.07;font-weight:800;max-width:12ch;margin-bottom:18px}
.gpnw-kicker{font-size:11px;padding:8px 13px}
.gpnw-photo-box,.gpnw-photo-box p{font-weight:700}

.gpnw-stats .gpnw-section,.gpnw-stats-band{padding:24px}
.gpnw-stat-grid,.gpnw-stats-band .gpnw-stat-grid{gap:16px}
.gpnw-stat{padding:16px 16px 14px;border-radius:16px}
.gpnw-stat strong,.gpnw-stat-number{font-size:clamp(26px,2vw,34px);font-weight:800}
.gpnw-stat span,.gpnw-stat-label{font-size:13px;line-height:1.35}

.gpnw-card,.wp-block-group.gpnw-card{padding:28px;border-radius:22px}
.gpnw-card h3{font-size:clamp(21px,1.55vw,25px);line-height:1.22;font-weight:800;text-wrap:balance}
.gpnw-card p{font-size:16px;line-height:1.66}
.gpnw-step{gap:6px 20px;padding:22px 0}
.gpnw-step h3{font-size:clamp(20px,1.55vw,24px)}
.gpnw-step p{font-size:16.5px;line-height:1.65}
.gpnw-banner{padding:48px}
.gpnw-note,.gpnw-warning{padding:22px}
.wp-block-table table{font-size:15px}
.wp-block-table td,.wp-block-table th{padding:12px 13px}
.site-footer__inner{padding-top:36px;padding-bottom:36px}
.site-footer p,.site-footer li{font-size:15px;line-height:1.65}

/* Formulare / Plugin-Formulare ruhiger und schoener */
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form,
.editor-styles-wrapper form{max-width:100%}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form p,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form li,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form label,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form legend,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form label,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form legend{font-size:16px;line-height:1.55}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form label,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form legend,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form label,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form legend{display:block;font-weight:700;color:#2f3b45;margin-bottom:8px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form select,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form textarea,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form select,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form textarea,
.editor-styles-wrapper input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
.editor-styles-wrapper select,
.editor-styles-wrapper textarea{
  width:100%;max-width:100%;border:1.5px solid #c8dae4;background:#fff;color:#2f3b45;
  border-radius:14px;padding:14px 16px;font-size:16px;line-height:1.45;
  box-shadow:0 2px 10px rgba(58,58,58,.04);transition:border-color var(--gpnw-transition),box-shadow var(--gpnw-transition),background-color var(--gpnw-transition)
}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form textarea,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form textarea,
.editor-styles-wrapper textarea{min-height:150px;resize:vertical}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input:focus,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form select:focus,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form textarea:focus,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input:focus,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form select:focus,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form textarea:focus,
.editor-styles-wrapper input:focus,
.editor-styles-wrapper select:focus,
.editor-styles-wrapper textarea:focus{
  outline:none;border-color:var(--gpnw-blue);
  box-shadow:0 0 0 4px rgba(74,168,216,.16),0 8px 20px rgba(74,168,216,.08)
}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input::placeholder,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form textarea::placeholder,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input::placeholder,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form textarea::placeholder{color:#8d9aa3}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input[type="checkbox"],
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input[type="radio"],
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input[type="checkbox"],
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input[type="radio"]{accent-color:var(--gpnw-blue-strong);transform:translateY(1px);margin-right:10px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form .checkbox,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form .radio,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form .checkbox,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form .radio{display:flex;align-items:flex-start;gap:10px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form fieldset,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form fieldset,
.editor-styles-wrapper fieldset{
  border:1px solid #d7e9f2;border-radius:18px;padding:22px 22px 18px;margin:18px 0 22px;
  background:linear-gradient(135deg,rgba(232,244,251,.88),rgba(255,255,255,.98))
}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form fieldset legend,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form fieldset legend,
.editor-styles-wrapper fieldset legend{padding:0 8px;font-size:17px;font-weight:800;color:#245c7a}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form .description,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form .help,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form .help-text,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form small,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form .description,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form .help,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form .help-text,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form small{display:block;color:#61717b;font-size:14px;line-height:1.5;margin-top:6px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form .notice,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form .message,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form .hint,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form .info,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form .notice,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form .message,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form .hint,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form .info{
  padding:16px 18px;border-radius:16px;border:1px solid #cfe4ef;background:linear-gradient(135deg,#eef8fd,#fff);color:#32566a;margin:16px 0
}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form button,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input[type="submit"],
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input[type="button"],
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form button,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input[type="submit"],
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input[type="button"]{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  background:linear-gradient(135deg,var(--gpnw-orange),var(--gpnw-orange-strong));
  color:#fff;border:0;border-radius:999px;padding:12px 22px;font-size:16px;font-weight:800;
  box-shadow:0 12px 28px rgba(240,160,32,.24);cursor:pointer
}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form button:hover,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input[type="submit"]:hover,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input[type="button"]:hover,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form button:hover,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input[type="submit"]:hover,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input[type="button"]:hover{transform:translateY(-1px)}

@media (max-width:760px){
  body{font-size:16px;line-height:1.64}
  .gpnw-page-title-wrap{padding:40px 24px}
  .gpnw-section{padding:42px 24px}
  .gpnw-hero{padding:42px 24px;gap:28px}
  .gpnw-hero h1{font-size:clamp(32px,8.2vw,46px);max-width:none}
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h1,.editor-styles-wrapper h1{font-size:clamp(30px,8vw,42px)}
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2,.editor-styles-wrapper h2{font-size:clamp(24px,6.5vw,30px)}
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h3,.editor-styles-wrapper h3{font-size:22px}
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) p,.editor-styles-wrapper p,
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) li,.editor-styles-wrapper li{font-size:16px}
  .site-header__inner{gap:18px}
  .site-footer__inner{padding-top:30px;padding-bottom:30px}
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form select,
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form textarea,
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form select,
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form textarea{font-size:16px;padding:13px 14px}
}

/* ================================================================
   === v6.7.3: Feinschliff - ruhiger, leichter, professioneller ===
   Aufbauend auf v6.7.2. Nur Optik, keine Logik.
   ================================================================ */

/* --- 10 · Typografie weiter entschaerft (Gewichte statt Groessen) --- */
body{font-size:16.5px;line-height:1.7}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2,.editor-styles-wrapper h2{font-weight:700;margin:0 0 16px}
.gpnw-page-title{font-weight:700}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h1,.editor-styles-wrapper h1{font-weight:800}
.gpnw-hero h1{font-weight:800}
.gpnw-kicker{font-weight:700;letter-spacing:.07em}
.gpnw-card h3{font-weight:700}
.gpnw-step h3{font-weight:700}
.header-cta,.wp-block-button__link,.gpnw-btn{font-weight:700}
.primary-navigation a{font-weight:600}
.gpnw-banner h2{font-weight:700}
.menu-toggle{font-weight:700}

/* --- 11 · Header ca. 12 % kompakter --- */
.site-header__inner{padding-top:10px;padding-bottom:10px;gap:22px}
.site-logo img{width:190px}
.primary-navigation ul{gap:18px}
.header-cta{padding:10px 19px;font-size:15px}
.gpnw-topline{height:5px}

/* --- 12 · Seitentitel-Kasten flacher und ruhiger (Variante A) --- */
.gpnw-page-title-wrap{margin-top:22px;margin-bottom:22px;padding:30px 36px;border-radius:22px;box-shadow:0 10px 28px rgba(58,58,58,.07)}
.gpnw-page-title-wrap:before{width:6px}
.gpnw-page-title{font-size:clamp(28px,3.2vw,44px);line-height:1.12}

/* --- 13 · Hauptaktionskarte hervorheben, Nebenkarten beruhigen (nur CSS,
       nutzt die vorhandene Klasse gpnw-card-blue der "Jetzt bewerben"-Karte) --- */
.gpnw-card-blue{border:2px solid var(--gpnw-blue);border-top:8px solid var(--gpnw-blue);box-shadow:0 18px 40px rgba(74,168,216,.18)}
.gpnw-card:not(.gpnw-card-blue):not(.gpnw-card-orange){border-top-width:5px}
.gpnw-card:not(.gpnw-card-blue):not(.gpnw-card-orange):nth-child(even){border-top-color:var(--gpnw-blue)}
.gpnw-card:not(.gpnw-card-blue) .wp-block-button__link{background:#fff;color:var(--gpnw-blue-strong)!important;border:2px solid var(--gpnw-blue);box-shadow:none;padding:9px 18px;font-size:15px}
.gpnw-card:not(.gpnw-card-blue) .wp-block-button__link:hover{background:var(--gpnw-blue-light);transform:none;box-shadow:none}
.gpnw-card:hover,.wp-block-group.gpnw-card:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(58,58,58,.10)}
.gpnw-card-blue:hover{box-shadow:0 22px 46px rgba(74,168,216,.22)}

/* --- 14 · Tabellen weicher und weniger technisch --- */
.wp-block-table table{border-collapse:separate;border-spacing:0;border:1px solid #e2ecf2;border-radius:16px;overflow:hidden;font-size:15px}
.wp-block-table th{background:#eef5fa;color:#33505f;font-size:13px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;border:0;border-bottom:1px solid #dce8ef;padding:13px 16px}
.wp-block-table td{border:0;border-bottom:1px solid #edf3f7;padding:14px 16px;line-height:1.6}
.wp-block-table tbody tr:last-child td{border-bottom:0}
.wp-block-table tbody tr:nth-child(even){background:#fafcfe}
.wp-block-table tbody tr:hover{background:#f2f8fc}

/* --- 15 · Formulare behutsam verfeinert --- */
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form label,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form legend,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form label,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form legend{font-weight:600;margin-bottom:7px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form select,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form textarea,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form select,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form textarea{padding:12px 14px;border-radius:12px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input:focus,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form select:focus,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form textarea:focus,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input:focus,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form select:focus,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form textarea:focus{box-shadow:0 0 0 3px rgba(74,168,216,.15)}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form fieldset legend,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form fieldset legend{font-weight:700;font-size:16px}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form button,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input[type="submit"],:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) form input[type="button"],
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form button,:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input[type="submit"],:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-form input[type="button"]{font-weight:700;padding:11px 21px}

/* --- 16 · Foto-Platzhalter dezenter (nur Optik, Texte unveraendert) --- */
.gpnw-photo-box{min-height:240px;box-shadow:0 12px 28px rgba(74,168,216,.10)}
.gpnw-photo-box p{font-weight:600;font-size:14px;line-height:1.5;color:#6b93a8;border:1.5px dashed rgba(74,168,216,.4);padding:16px 22px;background:rgba(255,255,255,.6)}
.gpnw-photo-box:before{opacity:.55}
.gpnw-gallery-placeholders .gpnw-photo-box{min-height:165px}
.gpnw-gallery-placeholders{gap:18px}

/* --- 17 · Footer ruhiger und stabil --- */
.site-footer{margin-top:56px;overflow:hidden}
.site-footer__inner{padding-top:32px;padding-bottom:32px;gap:30px}
.site-footer__inner>*{min-width:0}
.site-footer h2{font-size:19px;font-weight:700;margin-bottom:10px}
.site-footer h3{font-size:15px;font-weight:700;letter-spacing:.02em}
.site-footer p,.site-footer li{font-size:14.5px}
.site-footer__bottom{font-size:13px;padding:12px 30px}

/* --- 18 · Abstaende harmonisieren --- */
.gpnw-hero{margin:24px auto 22px;padding:54px 44px;gap:40px}
.gpnw-section{margin:26px auto;padding:48px 38px}
.gpnw-banner{padding:42px 40px}
.gpnw-note,.gpnw-warning{padding:20px 22px}
.gpnw-stats-band,.gpnw-stats .gpnw-section{margin-top:22px;margin-bottom:22px}
.gpnw-hero .wp-block-buttons{margin-top:22px}
.gpnw-card .wp-block-buttons{margin-top:16px}

/* --- Klickbare Statistik-Kacheln (aus v6.7.2/Fable, greift nach Setup-Lauf) --- */
.gpnw-stat{position:relative}
.gpnw-stat-number a{color:#fff;text-decoration:none}
.gpnw-stat-number a:hover{text-decoration:none}
.gpnw-stat-linked .gpnw-stat-number a::after{content:"";position:absolute;inset:0;border-radius:16px}
.gpnw-stat-linked{transition:transform var(--gpnw-transition),background var(--gpnw-transition),border-color var(--gpnw-transition)}
.gpnw-stat-linked:hover{transform:translateY(-3px);background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.35)}
.gpnw-stat-linked:focus-within{outline:2px solid var(--gpnw-orange);outline-offset:2px}

/* --- Mobile Nachjustierung --- */
@media (max-width:760px){
  body{font-size:16px}
  .site-logo img{width:164px}
  .gpnw-page-title-wrap{padding:26px 22px;margin-top:18px}
  .gpnw-page-title{font-size:clamp(26px,7vw,34px)}
  .gpnw-hero{padding:38px 22px;margin-top:18px}
  .gpnw-section{padding:36px 22px;margin:20px auto}
  .gpnw-banner{padding:32px 24px}
  .gpnw-photo-box{min-height:190px}
  .site-footer{margin-top:40px}
  .wp-block-table th{font-size:12px;padding:11px 12px}
  .wp-block-table td{padding:12px}
}
@media (prefers-reduced-motion:reduce){.gpnw-stat-linked{transition:none!important}.gpnw-stat-linked:hover{transform:none!important}}

/* ================================================================
   === v7.0.0: Footer-Bottom dunkel, zentrierter CTA ===
   ================================================================ */
/* --- 1 · Unterste Footer-Zeile: CD-Dunkelgrau mit weißer Schrift --- */
.site-footer__bottom{background:var(--gpnw-dark);color:#fff;margin-top:0}
.site-footer__bottom p{color:#fff;margin:0}
.site-footer__bottom a{color:#fff;text-decoration:underline}
.site-footer__bottom a:hover{color:var(--gpnw-orange)}

/* --- 3 · Zentrierter Haupt-Button auf der Bewerben-Seite --- */
.gpnw-cta-center{display:flex;justify-content:center;margin:6px auto 4px;max-width:var(--gpnw-container)}
.gpnw-cta-center .wp-block-button__link{font-size:17px;padding:15px 34px}

/* ================================================================
   === v7.0.2: Textbreite, 4-Karten-Reihe, einheitliche Buttons ===
   Nur Design. Keine Logik, keine Inhalte, keine Struktur.
   ================================================================ */

/* --- 1 · v7.20.0: Zeichenbreiten-Begrenzung entfernt --- */
/* Die fixe max-width in Zeichen (zuletzt 92ch, vorher 76ch) war komplett
   losgeloest von der tatsaechlichen Kasten-/Sektionsbreite (bis zu
   var(--gpnw-content)=1180px bzw. var(--gpnw-container)=1340px) und liess
   dadurch innerhalb breiter Kaesten/Sektionen eine grosse ungenutzte
   Leerflaeche rechts neben dem Text entstehen ("Text bricht zu frueh um").
   Die umgebenden Container sind bereits sinnvoll breitenbegrenzt - eine
   zusaetzliche Zeichen-Grenze auf Absatzebene ist daher unnoetig und
   schaedlich. */

/* --- 2 · Vier Kategorie-Karten nebeneinander (Desktop 4, Tablet 2, Mobil 1) --- */
/* Greift nur fuer die Karten der Bewerben-Seite (4er-Grid), damit andere
   Karten-Raster unveraendert bleiben. Auf grossen Schirmen 4 Spalten; die
   Karten duerfen auf schmalen Schirmen sauber umbrechen. */
.gpnw-card-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1100px){.gpnw-card-grid,.gpnw-card-grid>.wp-block-group__inner-container{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:680px){.gpnw-card-grid,.gpnw-card-grid>.wp-block-group__inner-container{grid-template-columns:1fr}}

/* --- 3 · Alle Kategorie-Buttons einheitlich: WEISS mit blauem Rand --- */
/* Hebt den automatischen Wechsel (jede 2. Karte gefuellt/umrandet) fuer die
   Bewerben-Karten auf. Kartenfarbe oben (blau/orange) bleibt unveraendert. */
.gpnw-card .wp-block-button__link{
  background:#fff!important;
  color:var(--gpnw-blue-strong)!important;
  border:2px solid var(--gpnw-blue)!important;
  box-shadow:none!important;
  padding:11px 22px;
  font-size:15px;
}
.gpnw-card .wp-block-button__link:hover{
  background:var(--gpnw-blue-light)!important;
  color:var(--gpnw-blue-strong)!important;
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(74,168,216,.18)!important;
}

/* ================================================================
   === v7.0.3: Aufgeraeumte Typografie-Skala (CD-konform) ===
   Vereinheitlicht die ueber 35 gewucherten Schriftgroessen auf EINE
   feste, ruhige Skala. Naeher am Corporate Design: kleinere Titel,
   Light-Gewichte fuer grosse Headlines statt 900, ruhigere Navigation.
   Hierarchie H1 > H2 > H3 > Lead > Text bleibt erhalten.
   Dieser Block steht bewusst am Ende und ist damit maßgeblich.
   ================================================================ */

/* --- Grund-Skala als Variablen (eine Quelle der Wahrheit) --- */
:root{
  --gpnw-fs-h1:clamp(32px,3.6vw,50px);
  --gpnw-fs-h2:clamp(24px,2.2vw,32px);
  --gpnw-fs-h3:clamp(19px,1.5vw,23px);
  --gpnw-fs-h4:clamp(16px,1.15vw,18px);
  --gpnw-fs-lead:clamp(18px,1.35vw,21px);
  --gpnw-fs-body:17px;
  --gpnw-fs-small:15px;
}

/* --- Fließtext --- */
body{font-size:var(--gpnw-fs-body);line-height:1.7}

/* --- H1: gross, aber ruhig (Light 600 statt 900), CD-Dunkelgrau --- */
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h1,.editor-styles-wrapper h1,.gpnw-hero h1{
  font-size:var(--gpnw-fs-h1);
  line-height:1.12;
  font-weight:600;
  letter-spacing:-.02em;
  color:var(--gpnw-dark);
  margin:0 0 20px;
  text-wrap:balance;
}
.gpnw-hero h1{max-width:16ch}

/* --- H2: klare Abschnittsueberschrift (700), mit blauer Unterlinie wie im CD --- */
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2,.editor-styles-wrapper h2{
  font-size:var(--gpnw-fs-h2);
  line-height:1.2;
  font-weight:700;
  letter-spacing:-.01em;
  color:var(--gpnw-dark);
  margin:0 0 18px;
  text-wrap:balance;
}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2:after,.editor-styles-wrapper h2:after{
  content:"";display:block;width:72px;height:4px;border-radius:999px;
  background:linear-gradient(90deg,var(--gpnw-blue),var(--gpnw-orange));margin-top:11px;
}

/* --- H3: Zwischenueberschrift (700), CD-Blau --- */
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h3,.editor-styles-wrapper h3,.gpnw-card h3,.gpnw-step h3{
  font-size:var(--gpnw-fs-h3);
  line-height:1.28;
  font-weight:700;
  letter-spacing:0;
  color:var(--gpnw-blue-strong);
  margin:0 0 12px;
  text-wrap:balance;
}

/* --- H4: kleine Label-Ueberschrift --- */
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h4,.editor-styles-wrapper h4{
  font-size:var(--gpnw-fs-h4);
  line-height:1.32;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.03em;
  color:var(--gpnw-orange-strong);
  margin:0 0 10px;
}

/* --- Lead-Absatz --- */
.gpnw-lead{font-size:var(--gpnw-fs-lead);line-height:1.68;font-weight:400;color:#4b4b4b}

/* --- 5 · Navigation: groesser und ruhiger (600 statt 800) --- */
.primary-navigation a{font-size:16px;font-weight:600;letter-spacing:.005em}

/* --- Buttons/CTA ruhiger (800 statt 900) --- */
.header-cta,.wp-block-button__link,.gpnw-btn{font-weight:700}

/* --- Mobile Feinjustierung der Skala --- */
@media (max-width:760px){
  body{font-size:16.5px}
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h1,.editor-styles-wrapper h1,.gpnw-hero h1{font-size:clamp(28px,7.5vw,36px)}
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h2,.editor-styles-wrapper h2{font-size:clamp(22px,5.5vw,28px)}
  :is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h3,.editor-styles-wrapper h3{font-size:clamp(18px,4.5vw,21px)}
  .primary-navigation a{font-size:16px}
}

/* ================================================================
   === v7.1.0: Stimme-Formular (Etappe 1: Ansicht) ===
   ================================================================ */
.gpnw-stimme-form{max-width:760px}
.gpnw-form-note{background:var(--gpnw-orange-light);border:1px solid var(--gpnw-orange);color:#8a5a00;border-radius:12px;padding:12px 16px;font-size:14px;margin-bottom:22px}
.gpnw-form fieldset{border:1px solid var(--gpnw-border);border-radius:16px;padding:22px 24px;margin:0 0 22px}
.gpnw-form legend{font-weight:700;color:var(--gpnw-blue-strong);padding:0 8px;font-size:17px}
.gpnw-form label{display:block;font-weight:600;margin-bottom:16px;color:var(--gpnw-dark)}
.gpnw-form input:not([type=checkbox]):not([type=file]),.gpnw-form textarea{display:block;width:100%;margin-top:6px;padding:11px 14px;border:1px solid #cdd8de;border-radius:11px;font:inherit;font-weight:400;box-sizing:border-box}
.gpnw-form input:focus,.gpnw-form textarea:focus{outline:none;border-color:var(--gpnw-blue);box-shadow:0 0 0 3px rgba(74,168,216,.15)}
.gpnw-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.gpnw-check{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.5}
.gpnw-check input{margin-top:3px;flex-shrink:0}
.gpnw-stimme-submit{margin-top:4px;cursor:pointer;border:0;font-size:16px}
@media (max-width:680px){.gpnw-form-row{grid-template-columns:1fr}}

/* v7.1.1: Stimme-Formular vereinfacht – prominente Freitext-Frage */
.gpnw-stimme-frage{font-size:17px;font-weight:700;color:var(--gpnw-dark)}
.gpnw-stimme-frage textarea{font-weight:400;margin-top:10px}

/* v7.1.2: Interesse-Mehrfachauswahl (Unterstützungsformen anklickbar) */
.gpnw-interesse{background:var(--gpnw-blue-light)}
.gpnw-interesse-item{align-items:flex-start;padding:12px 14px;border:1px solid var(--gpnw-border);border-radius:12px;background:#fff;margin-bottom:12px;transition:border-color var(--gpnw-transition),box-shadow var(--gpnw-transition)}
.gpnw-interesse-item:hover{border-color:var(--gpnw-blue)}
.gpnw-interesse-item span{font-weight:400;line-height:1.5}
.gpnw-interesse-item strong{color:var(--gpnw-blue-strong);font-size:15.5px}
.gpnw-interesse .gpnw-hint{margin-top:4px;font-size:13.5px;color:var(--gpnw-gray-mid)}

/* ================================================================
   === v7.2.0: Echte Bild-Blöcke, Stimme Foto+Logo, Customizer ===
   ================================================================ */
/* Bild-Platzhalter (core/image) dezent rahmen, damit im Editor & Frontend
   klar ist, dass hier ein Bild ersetzt werden kann. */
.gpnw-photo-slot{margin:0}
.gpnw-photo-slot img{display:block;width:100%;height:auto;border-radius:16px;border:1px solid var(--gpnw-border)}
.gpnw-gallery-placeholders .gpnw-photo-slot img{border-radius:14px}

/* v7.19.3 · Logo/Portraetfotos auf Sponsoren-, Herausgeber-, Schirmherrin-
   und Medienpartner-Profilseiten sollen NICHT wie ein Hero-Bild die volle
   Spaltenbreite einnehmen (das sprengte bei quadratischen Logos/Portraets
   die Seite). Zusaetzliche Klasse neben gpnw-photo-slot, NICHT dessen
   Ersatz - Hero-/Galerie-/Eventfotos bleiben unveraendert grossformatig. */
.gpnw-profile-photo{max-width:220px}
.gpnw-profile-photo img{border-radius:12px}

/* ================================================================
   === v7.3.0: "Wie geht es weiter?"-Abschnitt + Menü-Ergänzung ===
   ================================================================ */
.gpnw-next{background:var(--gpnw-gray-light,#F5F5F5)}
.gpnw-next h2{font-size:var(--gpnw-fs-h3)}
.gpnw-next h2:after{width:48px;height:3px}
.gpnw-next .wp-block-buttons{gap:12px}

/* v7.10.0 · Social-Media-Icons im Footer */
.footer-social{list-style:none;margin:14px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:14px}
.footer-social li{margin:0}
.footer-social a{display:inline-flex;align-items:center;gap:7px;color:var(--gpnw-blue-strong);font-weight:700;font-size:14px;text-decoration:none}
.footer-social a:hover{color:var(--gpnw-orange-strong);text-decoration:none}
.footer-social svg{display:block}

/* ================================================================
   === v7.21.0: Zwischenueberschriften (H3) im Fliesstext dezenter ===
   Interviewfragen und aehnliche H3-Zwischentitel waren mit bis zu
   23px deutlich groesser als die 17px-Antworten darunter - der
   Groessensprung wirkte unausgewogen (Rueckmeldung Juergen,
   20.07.2026). H3 im Inhalt jetzt nur noch minimal groesser als der
   Fliesstext; Farbe (CD-Blau) und Fettung tragen die Hierarchie.
   Karten- und Ablauf-Titel (.gpnw-card/.gpnw-step) behalten bewusst
   ihre bisherige Groesse - das sind UI-Kacheln, keine Zwischentitel.
   ================================================================ */
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) h3,.editor-styles-wrapper h3{font-size:clamp(17px,1.1vw,18.5px)}
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-card h3,
:is(.entry-content,.gpnw-content-wrap,.gpnw-frontpage) .gpnw-step h3,
.editor-styles-wrapper .gpnw-card h3,.editor-styles-wrapper .gpnw-step h3{font-size:var(--gpnw-fs-h3)}

/* v7.23.0 · Sponsoren-, Traeger- und Partnerraster ([gpnw_sponsoren]).
   Der Logoplatz hat bewusst eine feste Hoehe und passt das Bild mittig
   ein (object-fit:contain), statt es zu strecken: Nur so stehen breite
   Schriftzuege und kompakte Bildmarken sauber nebeneinander. Die helle
   Flaeche dahinter faengt aeltere JPG-Logos mit weissem Hintergrund ab,
   die sonst als sichtbare Kaesten auffallen wuerden. */
/* v7.24.1 · Der Abschnitt begrenzt seine Breite selbst und zentriert sich.
   Auf der Startseite gilt die Inhaltsbreite naemlich nur fuer Bloecke mit
   der Klasse .gpnw-section - ein frei im Seitenfluss stehender Shortcode
   liefe sonst ueber die volle Fensterbreite und waere seitlich
   abgeschnitten. So sitzt der Abschnitt richtig, egal wo er eingefuegt
   wird: innerhalb einer Section genauso wie direkt auf der Seite. */
.gpnw-sponsoren{max-width:var(--gpnw-content);margin:0 auto;padding:0 clamp(16px,3vw,24px);box-sizing:border-box}
/* v7.24.2 · Bildsprache an die uebrigen Karten des Themes angeglichen:
   5px blauer Balken oben, 22px Radius und der permanente weiche Schatten
   wie bei .gpnw-card; Ueberschriften bekommen dieselbe blau-orange
   Akzentlinie, die das Theme unter h2 setzt. Vorher wirkte der Abschnitt
   wie aus einem fremden Baukasten. */
.gpnw-sponsoren h3{margin:0 0 20px;font-size:clamp(21px,1.6vw,26px);font-weight:800;line-height:1.22;color:var(--gpnw-dark)}
.gpnw-sponsoren h3:after{content:"";display:block;width:72px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--gpnw-blue),var(--gpnw-orange));margin-top:11px}
.gpnw-sponsor-grid{display:grid;gap:18px;margin:0 0 40px}
.gpnw-sponsor-grid.is-traeger{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.gpnw-sponsor-grid.is-sponsoren{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.gpnw-sponsor-card{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;text-align:center;background:#fff;border:1px solid var(--gpnw-border);border-top:5px solid var(--gpnw-blue);border-radius:22px;padding:24px 18px 22px;text-decoration:none;color:inherit;min-width:0;box-shadow:0 14px 34px rgba(58,58,58,.075);transition:transform var(--gpnw-transition),box-shadow var(--gpnw-transition)}
.gpnw-sponsor-card:hover,.gpnw-sponsor-card:focus-visible{transform:translateY(-4px);box-shadow:0 20px 42px rgba(58,58,58,.13)}
.gpnw-sponsor-media{display:flex;align-items:center;justify-content:center;width:100%;height:78px;margin-bottom:16px;padding:8px;background:var(--gpnw-gray-light);border-radius:14px;overflow:hidden}
.gpnw-sponsor-media img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block}
.gpnw-sponsor-media.is-portrait{width:92px;height:92px;padding:0;border-radius:50%;background:var(--gpnw-blue-light)}
.gpnw-sponsor-media.is-portrait img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.gpnw-sponsor-fallback{padding:0 8px;font-size:13px;line-height:1.35;color:var(--gpnw-gray-mid)}
.gpnw-sponsor-name{display:block;font-weight:800;font-size:17px;line-height:1.25;color:var(--gpnw-dark);text-wrap:balance}
.gpnw-sponsor-rolle{display:block;margin-top:5px;font-size:13px;line-height:1.4;color:var(--gpnw-gray-mid)}
.gpnw-partner-line{margin:0;padding-top:22px;border-top:1px solid var(--gpnw-border)}
.gpnw-partner-line p{margin:0;font-size:var(--gpnw-fs-small);line-height:1.75;color:var(--gpnw-gray-mid)}
.gpnw-partner-line strong{color:var(--gpnw-dark);font-weight:800}
@media(max-width:760px){
  .gpnw-sponsor-grid{gap:14px;margin-bottom:32px}
  .gpnw-sponsor-grid.is-sponsoren{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
  .gpnw-sponsor-media{height:64px;margin-bottom:13px}
  .gpnw-sponsor-card{padding:18px 13px 16px;border-radius:20px}
  .gpnw-sponsor-name{font-size:15px}
}
@media(prefers-reduced-motion:reduce){
  .gpnw-sponsor-card,.gpnw-sponsor-card:hover,.gpnw-sponsor-card:focus-visible{transform:none;transition:none}
}

/* v7.25.0 · Preistraeger-Archiv ([gpnw_preistraeger]). Begrenzt seine
   Breite selbst - gleiche Begruendung wie beim Sponsorenraster. Die
   Tabelle nutzt die vorhandenen wp-block-table-Stile des Themes und darf
   auf schmalen Schirmen seitlich scrollen statt zu ueberlaufen. */
.gpnw-preistraeger{max-width:var(--gpnw-content);margin:0 auto}
.gpnw-preistraeger-tabelle{overflow-x:auto}
.gpnw-preistraeger-archiv h3{margin:30px 0 8px}
.gpnw-preistraeger-archiv h3:first-child{margin-top:0}
.gpnw-preistraeger-archiv p{margin:0 0 6px}
.gpnw-preistraeger a{color:var(--gpnw-blue-strong);text-decoration:underline;text-underline-offset:2px}
.gpnw-preistraeger a:hover{color:var(--gpnw-orange-strong)}


/* v7.27.0 · Interview-Vorschaukarten. Gleiche Bildsprache wie die
   Sponsorenkacheln (5px blauer Balken, 22px Radius, weicher Schatten),
   nur linksbuendig, weil hier Fliesstext steht. */
.gpnw-interviews{max-width:var(--gpnw-content);margin:0 auto}
.gpnw-interviews h3{margin:0 0 12px;font-size:clamp(21px,1.6vw,26px);font-weight:800;line-height:1.22;color:var(--gpnw-dark)}
.gpnw-interviews h3:after{content:"";display:block;width:72px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--gpnw-blue),var(--gpnw-orange));margin-top:11px}
.gpnw-interviews-intro{margin:0 0 26px;color:var(--gpnw-gray-mid);font-size:var(--gpnw-fs-small)}
.gpnw-interview-grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
.gpnw-interview-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--gpnw-border);border-top:5px solid var(--gpnw-blue);border-radius:22px;padding:24px 22px 20px;text-decoration:none;color:inherit;min-width:0;box-shadow:0 14px 34px rgba(58,58,58,.075);transition:transform var(--gpnw-transition),box-shadow var(--gpnw-transition)}
.gpnw-interview-card:hover,.gpnw-interview-card:focus-visible{transform:translateY(-4px);box-shadow:0 20px 42px rgba(58,58,58,.13)}
.gpnw-interview-name{display:block;font-weight:800;font-size:19px;line-height:1.25;color:var(--gpnw-dark)}
.gpnw-interview-rolle{display:block;margin-top:4px;font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--gpnw-blue-strong)}
.gpnw-interview-frage{display:block;margin-top:14px;font-weight:700;font-size:15px;line-height:1.4;color:var(--gpnw-dark)}
.gpnw-interview-antwort{display:block;margin-top:8px;font-size:var(--gpnw-fs-small);line-height:1.65;color:var(--gpnw-gray-mid)}
/* v7.30.1 · margin-top:auto statt eines festen Abstands. Die Karte ist
   ein Flex-Container, die Rasterzeile streckt alle Karten auf gleiche
   Hoehe - ohne das haengt der Link je nach Textlaenge irgendwo in der
   Mitte und darunter klafft die Karte leer (z. B. Hardy Stricker mit
   einem Satz Anreisser). So sitzt er immer buendig am Kartenfuss. */
.gpnw-interview-mehr{display:block;margin-top:auto;padding-top:16px;font-weight:800;font-size:14px;color:var(--gpnw-blue-strong)}
.gpnw-interview-card:hover .gpnw-interview-mehr{color:var(--gpnw-orange-strong)}
@media(max-width:760px){
  .gpnw-interview-grid{grid-template-columns:1fr;gap:14px}
  .gpnw-interview-card{padding:20px 16px 18px;border-radius:20px}
}


/* v7.28.0 · Frage-Antwort-Gestaltung in den Interviews.
   Die Klassen setzt das Theme beim Ausliefern (inc/interviews.php),
   der gespeicherte Seiteninhalt bleibt unveraendert.
   v7.29.0 · Vorangestellt steht :is(.gpnw-content-wrap,.entry-content).
   Das ist noetig, weil die Grundtypografie des Themes ueber
   :is(.entry-content,...) h2/h3 greift und sonst spezifischer waere -
   so kommt das hier ohne !important aus. .gpnw-content-wrap ist dabei
   der Container, den page.php tatsaechlich ausgibt; .entry-content
   steht nur zur Sicherheit mit drin.
   Die Fragen werden fortlaufend nummeriert; der Zaehler haengt an der
   Seite, damit er pro Interview bei 1 beginnt. */
.gpnw-interview-seite :is(.gpnw-content-wrap,.entry-content){counter-reset:gpnwfrage}
:is(.gpnw-content-wrap,.entry-content) .gpnw-frage{
  display:flex;align-items:flex-start;gap:16px;
  margin:40px 0 16px;padding-top:28px;border-top:1px solid var(--gpnw-border);
  font-size:clamp(18px,1.45vw,22px);line-height:1.34;letter-spacing:-.01em;
  font-weight:800;color:var(--gpnw-dark);text-wrap:balance;
  counter-increment:gpnwfrage;
}
/* Nur falls eine Frage ganz am Anfang eines Containers steht - dort
   waere die Trennlinie eine Linie ins Leere. Auf den Profilseiten
   stehen vor der ersten Frage Vorstellungstext und Bild, die Linie
   trennt dort also sinnvoll Einleitung und Interview. */
:is(.gpnw-content-wrap,.entry-content) .gpnw-frage:first-child{margin-top:0;padding-top:0;border-top:0}
/* Die blau-orange Akzentlinie des Themes gehoert unter Abschnittstitel,
   nicht unter jede einzelne Frage. */
:is(.gpnw-content-wrap,.entry-content) .gpnw-frage:after{display:none}
:is(.gpnw-content-wrap,.entry-content) .gpnw-frage:before{
  content:counter(gpnwfrage);flex:0 0 auto;
  width:40px;height:40px;line-height:40px;border-radius:50%;
  /* v7.30.0 · Bewusst KEIN Blau-Orange-Verlauf wie sonst im Theme: auf
     40px liegt die Verlaufsmitte mitten im Kreis und ergibt einen
     stumpfen Oliv-Ton. Auf grossen Flaechen (Akzentbalken, Kopfbereich)
     funktioniert der Verlauf, hier nicht. Blau in sich. */
  background:linear-gradient(135deg,var(--gpnw-blue),var(--gpnw-blue-strong));
  color:#fff;font-size:17px;font-weight:900;text-align:center;
  letter-spacing:0;box-shadow:0 8px 18px rgba(74,168,216,.26);
}
:is(.gpnw-content-wrap,.entry-content) .gpnw-antwort{
  margin:0 0 15px 56px;padding-left:20px;max-width:900px;
  border-left:3px solid var(--gpnw-blue-light);
  font-size:17px;line-height:1.78;color:#4b4b4b;
}
:is(.gpnw-content-wrap,.entry-content) .gpnw-frage + .gpnw-antwort{margin-top:0}
@media(max-width:760px){
  :is(.gpnw-content-wrap,.entry-content) .gpnw-frage{gap:12px;margin-top:32px;padding-top:22px;font-size:18px}
  :is(.gpnw-content-wrap,.entry-content) .gpnw-frage:before{width:32px;height:32px;line-height:32px;font-size:14px}
  :is(.gpnw-content-wrap,.entry-content) .gpnw-antwort{margin-left:0;padding-left:15px;font-size:16.5px}
}
@media print{
  :is(.gpnw-content-wrap,.entry-content) .gpnw-frage:before{box-shadow:none}
}
