/*
Theme Name: KundenHub Portal
Theme URI: https://360onmedia.com/
Author: 360onmedia
Author URI: https://360onmedia.com/
Description: Modernes, neutrales WordPress Theme für das KundenHub Kundenportal. Mit Startseite, direktem Kundenlogin und automatischer Integration der KundenHub Seiten.
Version: 1.0.2
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.0
Text Domain: kundenhub-portal-theme
*/
:root{--kh-primary:#1769aa;--kh-dark:#0d1b2a;--kh-text:#1f2937;--kh-muted:#667085;--kh-bg:#f5f8fc;--kh-card:#fff;--kh-border:#dfe7f0;--kh-radius:22px;--kh-shadow:0 18px 50px rgba(13,27,42,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--kh-text);background:#fff;line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.kh-container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.kh-site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(223,231,240,.8)}.kh-header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.kh-brand-link{display:flex;align-items:center;gap:12px;font-weight:800}.kh-brand-link img{width:auto;max-height:42px}.kh-brand-mark{width:42px;height:42px;border-radius:14px;background:var(--kh-primary);color:#fff;display:grid;place-items:center;font-size:20px;font-weight:900}.kh-brand-copy{display:flex;flex-direction:column;line-height:1.12}.kh-brand-copy small{font-size:12px;color:var(--kh-muted);font-weight:600}.kh-nav{display:flex;align-items:center;gap:25px;font-weight:650;font-size:15px}.kh-nav a:hover{color:var(--kh-primary)}.kh-login-link,.kh-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:12px;padding:12px 19px;font-weight:750;transition:.2s ease;border:1px solid transparent}.kh-login-link,.kh-btn-primary{background:var(--kh-primary);color:#fff}.kh-login-link:hover,.kh-btn-primary:hover{filter:brightness(.92);transform:translateY(-1px)}.kh-btn-secondary{background:#fff;border-color:var(--kh-border);color:var(--kh-dark)}.kh-btn-secondary:hover{border-color:var(--kh-primary);color:var(--kh-primary)}.kh-menu-toggle{display:none;border:0;background:transparent;font-size:27px;cursor:pointer}.kh-hero{position:relative;overflow:hidden;padding:104px 0 92px;background:linear-gradient(135deg,#eef5fb 0%,#fff 56%,#e7f0f8 100%)}.kh-hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;background:color-mix(in srgb,var(--kh-primary) 12%,transparent);top:-220px;right:-110px}.kh-hero-grid{position:relative;display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}.kh-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:#fff;color:var(--kh-primary);font-size:13px;font-weight:800;border:1px solid var(--kh-border)}.kh-hero h1{font-size:clamp(42px,6vw,72px);line-height:1.03;letter-spacing:-.045em;margin:20px 0 22px;color:var(--kh-dark)}.kh-hero h1 span{color:var(--kh-primary)}.kh-hero p{font-size:19px;color:var(--kh-muted);max-width:650px;margin:0 0 30px}.kh-actions{display:flex;flex-wrap:wrap;gap:12px}.kh-trust{display:flex;flex-wrap:wrap;gap:18px;margin-top:28px;color:#475467;font-size:14px}.kh-trust span:before{content:"✓";color:var(--kh-primary);font-weight:900;margin-right:6px}.kh-portal-preview{background:var(--kh-dark);padding:20px;border-radius:30px;box-shadow:0 35px 80px rgba(13,27,42,.24);transform:rotate(1deg)}.kh-preview-window{background:#f6f8fb;border-radius:20px;overflow:hidden}.kh-preview-top{height:46px;background:#fff;border-bottom:1px solid var(--kh-border);display:flex;align-items:center;padding:0 18px;gap:7px}.kh-dot{width:9px;height:9px;border-radius:50%;background:#d4dce6}.kh-preview-body{display:grid;grid-template-columns:120px 1fr;min-height:360px}.kh-preview-side{background:#12263a;padding:24px 13px;color:#fff}.kh-preview-logo{height:34px;width:34px;border-radius:10px;background:var(--kh-primary);display:grid;place-items:center;font-weight:900;margin-bottom:27px}.kh-preview-menu{display:grid;gap:9px}.kh-preview-menu span{display:block;height:9px;border-radius:6px;background:rgba(255,255,255,.18)}.kh-preview-menu span:first-child{background:var(--kh-primary)}.kh-preview-content{padding:27px}.kh-preview-welcome{font-weight:800;color:var(--kh-dark);font-size:21px;margin-bottom:17px}.kh-preview-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.kh-preview-card{height:78px;border-radius:14px;background:#fff;border:1px solid var(--kh-border);padding:14px}.kh-preview-card b{display:block;width:42%;height:8px;border-radius:5px;background:#d6e3ee;margin-bottom:13px}.kh-preview-card i{display:block;width:66%;height:15px;border-radius:5px;background:var(--kh-primary);opacity:.75}.kh-preview-doc{height:54px;border-radius:12px;background:#fff;border:1px solid var(--kh-border);margin-top:9px;display:flex;align-items:center;padding:0 12px;gap:10px}.kh-preview-doc:before{content:"PDF";font-size:9px;font-weight:900;color:var(--kh-primary);background:#e6f0f8;border-radius:7px;padding:8px}.kh-preview-doc:after{content:"";height:8px;width:55%;background:#dbe4ed;border-radius:5px}.kh-section{padding:88px 0}.kh-section-alt{background:var(--kh-bg)}.kh-section-head{max-width:760px;margin:0 auto 48px;text-align:center}.kh-section-head span{color:var(--kh-primary);font-size:13px;text-transform:uppercase;letter-spacing:.12em;font-weight:850}.kh-section-head h2{font-size:clamp(31px,4vw,48px);line-height:1.12;letter-spacing:-.035em;margin:10px 0 15px;color:var(--kh-dark)}.kh-section-head p{color:var(--kh-muted);font-size:17px;margin:0}.kh-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.kh-feature{background:#fff;border:1px solid var(--kh-border);border-radius:var(--kh-radius);padding:28px;transition:.22s ease}.kh-feature:hover{transform:translateY(-4px);box-shadow:var(--kh-shadow);border-color:color-mix(in srgb,var(--kh-primary) 45%,#fff)}.kh-icon{width:48px;height:48px;border-radius:15px;background:color-mix(in srgb,var(--kh-primary) 12%,#fff);color:var(--kh-primary);display:grid;place-items:center;font-size:22px;margin-bottom:18px}.kh-feature h3{margin:0 0 10px;color:var(--kh-dark);font-size:20px}.kh-feature p{margin:0;color:var(--kh-muted);font-size:15px}.kh-process{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;counter-reset:step}.kh-step{position:relative;background:#fff;border:1px solid var(--kh-border);border-radius:18px;padding:25px;counter-increment:step}.kh-step:before{content:counter(step);width:34px;height:34px;border-radius:50%;background:var(--kh-primary);color:#fff;display:grid;place-items:center;font-weight:800;margin-bottom:16px}.kh-step h3{font-size:18px;margin:0 0 7px}.kh-step p{color:var(--kh-muted);font-size:14px;margin:0}.kh-cta{padding:72px 0}.kh-cta-box{position:relative;overflow:hidden;background:var(--kh-dark);color:#fff;border-radius:30px;padding:52px;display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center}.kh-cta-box:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;background:var(--kh-primary);right:-110px;top:-130px;opacity:.45}.kh-cta-box>div,.kh-cta-box>a{position:relative;z-index:1}.kh-cta h2{font-size:clamp(29px,4vw,44px);line-height:1.1;margin:0 0 12px}.kh-cta p{color:#c8d3df;margin:0;max-width:700px}.kh-site-footer{background:#08131f;color:#d5dde5;padding:55px 0 25px}.kh-footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:45px}.kh-footer-title{font-weight:850;color:#fff;font-size:20px;margin-bottom:11px}.kh-footer-copy,.kh-footer-links{color:#9eacba;font-size:14px}.kh-footer-links{display:grid;gap:8px}.kh-footer-links a:hover{color:#fff}.kh-footer-bottom{border-top:1px solid #1d2a37;margin-top:38px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#7f8e9c;font-size:13px}.kh-content-wrap{min-height:65vh;padding:65px 0}.kh-content{max-width:900px;margin:auto}.kh-content h1{font-size:42px;letter-spacing:-.03em}.kh-content .kundenhub-wrap,.kh-content .kh-login,.kh-content .kh-portal{max-width:100%}.kh-page-login .kh-content{max-width:1100px}.kh-page-login .entry-title,.kh-page-portal .entry-title{display:none}
@media(max-width:900px){.kh-nav{display:none;position:absolute;top:76px;left:20px;right:20px;background:#fff;border:1px solid var(--kh-border);border-radius:16px;padding:18px;box-shadow:var(--kh-shadow);flex-direction:column;align-items:stretch}.kh-nav.is-open{display:flex}.kh-menu-toggle{display:block}.kh-login-link{display:none}.kh-hero-grid{grid-template-columns:1fr;gap:48px}.kh-hero{text-align:center;padding-top:75px}.kh-hero p{margin-inline:auto}.kh-actions,.kh-trust{justify-content:center}.kh-portal-preview{max-width:620px;margin:auto}.kh-feature-grid{grid-template-columns:1fr 1fr}.kh-process{grid-template-columns:1fr 1fr}.kh-footer-grid{grid-template-columns:1fr 1fr}.kh-cta-box{grid-template-columns:1fr;text-align:center}.kh-cta-box .kh-btn{justify-self:center}}
@media(max-width:620px){.kh-container{width:min(100% - 26px,1180px)}.kh-header-inner{min-height:68px}.kh-brand-copy small{display:none}.kh-hero{padding:58px 0 60px}.kh-hero h1{font-size:42px}.kh-hero p{font-size:17px}.kh-actions{flex-direction:column}.kh-btn{width:100%}.kh-preview-body{grid-template-columns:74px 1fr;min-height:300px}.kh-preview-content{padding:18px}.kh-preview-stats{grid-template-columns:1fr}.kh-preview-card:nth-child(2){display:none}.kh-feature-grid,.kh-process,.kh-footer-grid{grid-template-columns:1fr}.kh-section{padding:65px 0}.kh-cta-box{padding:35px 23px}.kh-footer-bottom{flex-direction:column}.kh-content-wrap{padding:38px 0}}

.kh-content h2{margin-top:32px;color:var(--kh-dark);font-size:26px}.kh-content p{margin:0 0 16px}.kh-content small{color:var(--kh-muted)}

/* Rechtliche Seiten */
.kh-content article .entry-content{max-width:900px}
.kh-content article .entry-content h1{font-size:clamp(30px,4vw,48px);line-height:1.15;margin:0 0 30px}
.kh-content article .entry-content h2{margin:42px 0 14px;font-size:clamp(22px,3vw,30px);line-height:1.25;color:var(--kh-text)}
.kh-content article .entry-content p{margin:0 0 18px}
.kh-content article .entry-content ul{margin:0 0 24px;padding-left:24px}
.kh-content article .entry-content li{margin:7px 0}
.kh-content article .entry-content a{color:var(--kh-primary);text-decoration:underline;text-underline-offset:3px}
