
/*
Theme Name: KFZ Experten NRW – Original Design
Version: 2.0
Description: WordPress-Theme im Original-Look der bestehenden KFZ Experten NRW Website.
*/
:root{
 --bg:#080e1c;--bg2:#101827;--text:#111827;--white:#fff;--muted:#c9d2df;
 --red:#d7353d;--red2:#bd2831;--line:#e4e7ec;--soft:#f6f7f9;--green:#5fd06f;
 --radius:20px;--shadow:0 12px 40px rgba(15,23,42,.10)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:#fff;line-height:1.55}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%;height:auto}
.container{width:min(1180px,92%);margin:auto}

/* top + header */
.topline{background:var(--bg);color:#fff;text-align:center;font-size:17px;padding:12px 15px}
.topline span+span{margin-left:35px}
.site-header{background:#fff;border-bottom:1px solid #e9ebef}
.header-inner{min-height:178px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.brand{font-weight:900;font-size:39px;line-height:.96;letter-spacing:-1.5px;max-width:560px}
.brand small{display:block;color:var(--red);font-size:39px;margin-top:5px}
.header-phone{background:var(--red);color:#fff;padding:23px 32px;border-radius:17px;font-weight:800;font-size:23px;white-space:nowrap}
.desktop-nav{background:#fff;border-bottom:1px solid #eceff2}
.desktop-nav .container{display:flex;align-items:center;justify-content:center;gap:30px;padding:16px 0;font-weight:700}
.desktop-nav a:hover{color:var(--red)}

/* hero */
.hero{background:linear-gradient(135deg,#0a101d 0%,#101928 65%,#0c1321 100%);color:#fff;padding:92px 0 70px}
.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:55px;align-items:center}
.kicker{font-size:17px;font-weight:800;letter-spacing:.16em}
.hero h1{font-size:clamp(54px,7vw,88px);line-height:.93;letter-spacing:-4px;margin:25px 0}
.hero-lead{font-size:24px;color:#d3dae5;max-width:760px}
.hero-actions{margin-top:34px;display:flex;gap:13px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:14px;padding:17px 28px;font-weight:800;font-size:19px}
.btn-red{background:var(--red);color:#fff}
.btn-outline{border:1px solid #566174;color:#fff}
.express{background:#fff;color:var(--text);border-radius:25px;padding:30px;box-shadow:0 25px 70px #0007}
.express h2{font-size:29px;margin:0 0 8px}
.express p{color:#667085}
.express .number{font-size:27px;font-weight:900;margin:18px 0}

/* stats */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:50px}
.stat{background:#fff;color:var(--text);border-radius:18px;padding:24px}
.stat strong{display:block;font-size:36px;line-height:1.05;margin-bottom:8px}

/* sections */
.section{padding:85px 0}
.section.soft{background:var(--soft)}
.section.dark{background:var(--bg);color:#fff}
.section-title{max-width:780px;margin-bottom:42px}
.section-title .kicker{color:var(--red);letter-spacing:.12em}
.section-title h2{font-size:clamp(38px,5vw,58px);line-height:1.03;letter-spacing:-2px;margin:10px 0}
.section-title p{font-size:19px;color:#667085}
.dark .section-title p{color:#c9d2df}

/* services */
.services{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.service{border:1px solid var(--line);background:#fff;border-radius:20px;padding:28px;box-shadow:var(--shadow)}
.service h3{font-size:23px;margin:0 0 10px}
.service p{color:#667085;margin:0 0 20px}
.service .more{color:var(--red);font-weight:800}

/* logos */
.insurance{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;align-items:center}
.insurance .logo-box{height:70px;border:1px solid var(--line);border-radius:15px;display:flex;align-items:center;justify-content:center;font-weight:900;color:#687386;background:#fff}

/* process */
.process{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.process-item{background:#fff;color:var(--text);border-radius:18px;padding:23px}
.process-item .num{font-size:13px;font-weight:900;color:var(--red)}
.process-item h3{margin:8px 0}
.process-item p{color:#667085}

/* about */
.about{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.about-placeholder{min-height:430px;border-radius:25px;background:linear-gradient(145deg,#dce2e9,#f5f6f8);display:flex;align-items:center;justify-content:center;color:#7a8595;font-weight:800}

/* reviews */
.reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.review{border:1px solid var(--line);border-radius:20px;padding:26px;background:#fff}
.stars{color:#e0a600;letter-spacing:2px}
.review p{font-size:17px}
.review small{color:#667085}

/* FAQ + contact */
.faq{max-width:900px}
.faq details{border-bottom:1px solid var(--line);padding:20px 0}
.faq summary{font-weight:800;font-size:18px;cursor:pointer}
.contact{background:var(--bg);color:#fff;border-radius:28px;padding:50px;display:grid;grid-template-columns:1fr 1fr;gap:40px}
.contact p{color:#c9d2df}
.contact-form input,.contact-form textarea{width:100%;border:0;border-radius:10px;padding:14px;margin-bottom:12px;font:inherit}
.contact-form textarea{min-height:130px}

/* pages */
.page-head{background:var(--bg);color:#fff;padding:75px 0}
.page-head h1{font-size:clamp(42px,6vw,72px);line-height:1;margin:12px 0}
.content{max-width:900px}
.content h2{font-size:35px;margin-top:45px}
.content p,.content li{font-size:18px}
.content img{border-radius:18px;margin:25px 0}

/* footer */
.footer{background:#070c15;color:#cbd5e1;padding:55px 0 25px}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:35px}
.footer .brand{font-size:25px;color:#fff}
.footer .brand small{font-size:25px}
.footer a:hover{color:#fff}
.footer-bottom{border-top:1px solid #273244;margin-top:35px;padding-top:20px;font-size:14px}

/* floating whatsapp */
.whatsapp{position:fixed;right:20px;bottom:20px;background:var(--green);color:#fff;padding:15px 25px;border-radius:999px;font-size:20px;font-weight:800;box-shadow:0 10px 30px #0003;z-index:100}

/* WordPress */
.wp-block-image img{border-radius:18px}
.alignwide{max-width:1180px;margin-left:auto;margin-right:auto}

@media(max-width:900px){
 .header-inner{min-height:176px}
 .brand{font-size:37px}.brand small{font-size:37px}
 .hero-grid,.about,.contact{grid-template-columns:1fr}
 .services,.reviews{grid-template-columns:1fr 1fr}
 .stats{grid-template-columns:1fr 1fr}
 .process{grid-template-columns:1fr 1fr}
 .insurance{grid-template-columns:repeat(3,1fr)}
 .desktop-nav .container{display:none}
}
@media(max-width:600px){
 .topline{font-size:17px;line-height:1.45}.topline span{display:block}.topline span+span{margin-left:0}
 .header-inner{min-height:176px;align-items:center}
 .brand{font-size:37px;max-width:calc(100% - 170px)}.brand small{font-size:37px}
 .header-phone{font-size:18px;padding:18px 20px}
 .hero{padding:70px 0 55px}.hero h1{font-size:54px;letter-spacing:-2px}.hero-lead{font-size:20px}
 .stats,.services,.reviews,.process{grid-template-columns:1fr}
 .insurance{grid-template-columns:1fr 1fr}
 .section{padding:60px 0}
 .contact{padding:30px}
}

.header-actions{display:flex;align-items:center;gap:12px}
.menu-toggle{display:none;border:1px solid #d7dbe2;background:#fff;border-radius:12px;padding:13px 17px;font-size:17px;font-weight:800;cursor:pointer}
@media(max-width:900px){
 .header-actions .menu-toggle{display:inline-block}
 .desktop-nav{display:none}
 .desktop-nav.is-open{display:block}
 .desktop-nav .container{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:8px 0}
 .desktop-nav a{padding:15px 8px;border-bottom:1px solid #eceff2;font-size:18px}
}

.video-placeholder{overflow:hidden;padding:0;background:#eef1f5;min-height:360px;border-radius:28px}.about-video{display:block;width:100%;height:100%;min-height:360px;object-fit:cover;border-radius:28px;background:#eef1f5}@media(max-width:700px){.video-placeholder,.about-video{min-height:300px}}
