/*
Theme Name: BK-Fahrzeughandel
Author: BK-Fahrzeughandel GmbH
Description: Premium Nutzfahrzeugmarktplatz Theme – minimalistisch, hell, Elementor-kompatibel.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 8.0
License: Private
Text Domain: bk-fahrzeughandel
*/

:root {
  --white:#FFFFFF; --off:#F7F7F5; --light:#EFEFED; --line:#E5E5E3;
  --mid:#CCCCCA; --text:#111111; --text60:#666666; --text30:#AAAAAA;
  --black:#111111; --green:#1A7F4B;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{background:var(--off);color:var(--text);font-family:'Inter',sans-serif;font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
h1,h2,h3,h4,h5,h6{font-family:'Playfair Display',serif;font-weight:400;line-height:1.1;color:var(--black);}
p{font-size:14px;line-height:1.8;color:var(--text60);}
a{color:inherit;transition:color 0.2s;}
img{max-width:100%;height:auto;}

/* NAV */
#bk-nav{position:fixed;inset:0 0 auto 0;z-index:9999;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:rgba(255,255,255,0.95);backdrop-filter:blur(20px);border-bottom:1px solid var(--line);transition:box-shadow 0.3s;}
.bk-logo{text-decoration:none;display:flex;flex-direction:column;gap:2px;}
.bk-logo-name{font-family:'Playfair Display',serif;font-size:15px;font-weight:500;letter-spacing:0.03em;color:var(--black);}
.bk-logo-sub{font-size:9px;font-weight:400;letter-spacing:0.2em;text-transform:uppercase;color:var(--text30);}
#bk-nav .nav-menu{display:flex;gap:36px;list-style:none;margin:0;padding:0;}
#bk-nav .nav-menu a{text-decoration:none;font-size:12px;font-weight:400;letter-spacing:0.05em;color:var(--text60);transition:color 0.2s;}
#bk-nav .nav-menu a:hover,#bk-nav .nav-menu .current-menu-item>a{color:var(--text);}
.bk-nav-right{display:flex;gap:8px;align-items:center;}
.bk-btn-outline{height:34px;padding:0 18px;border:1px solid var(--mid);background:transparent;color:var(--text60);font-family:'Inter',sans-serif;font-size:12px;border-radius:3px;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;}
.bk-btn-outline:hover{border-color:var(--text);color:var(--text);}
.bk-btn-dark{height:34px;padding:0 20px;background:var(--black);color:white;border:none;font-family:'Inter',sans-serif;font-size:12px;font-weight:500;border-radius:3px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;transition:background 0.2s;}
.bk-btn-dark:hover{background:#2a2a2a;color:white;}

/* MAIN */
#bk-main{padding-top:64px;min-height:60vh;}

/* FOOTER */
#bk-footer{background:var(--white);border-top:1px solid var(--line);padding:72px 40px 40px;}
.bk-footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:56px;padding-bottom:56px;border-bottom:1px solid var(--line);}
.bk-footer-desc{font-size:13px;font-weight:300;color:var(--text60);line-height:1.75;margin-top:16px;max-width:260px;}
.bk-footer-col h4{font-size:9px;font-weight:500;letter-spacing:0.22em;text-transform:uppercase;color:var(--text30);margin-bottom:20px;font-family:'Inter',sans-serif;}
.bk-footer-col ul{list-style:none;margin:0;padding:0;}
.bk-footer-col ul li+li{margin-top:12px;}
.bk-footer-col ul a{font-size:13px;font-weight:300;color:var(--text60);text-decoration:none;transition:color 0.2s;}
.bk-footer-col ul a:hover{color:var(--text);}
.bk-footer-bottom{display:flex;align-items:center;justify-content:space-between;padding-top:28px;}
.bk-footer-copy{font-size:11px;color:var(--text30);}
.bk-footer-langs{display:flex;gap:18px;}
.bk-footer-langs a{font-size:10px;color:var(--text30);text-decoration:none;letter-spacing:0.1em;transition:color 0.2s;}
.bk-footer-langs a:hover{color:var(--text60);}

/* GEMEINSAME KOMPONENTEN */
.bk-eyebrow{font-size:10px;font-weight:500;letter-spacing:0.22em;text-transform:uppercase;color:var(--text30);margin-bottom:14px;font-family:'Inter',sans-serif;}
.bk-section-title{font-family:'Playfair Display',serif;font-size:clamp(28px,3.2vw,42px);font-weight:400;line-height:1.15;color:var(--black);}
.bk-section-title em{font-style:italic;color:var(--text60);}
.bk-section{padding:96px 40px;border-bottom:1px solid var(--line);}
.bk-section.alt{background:var(--off);}
.bk-section-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:52px;}
.bk-section-link{font-size:12px;font-weight:400;color:var(--text30);text-decoration:none;letter-spacing:0.06em;border-bottom:1px solid var(--mid);padding-bottom:3px;transition:all 0.2s;}
.bk-section-link:hover{color:var(--text);border-color:var(--text);}

.bk-btn-primary{height:50px;padding:0 36px;background:var(--black);color:var(--white);border:none;border-radius:3px;font-family:'Inter',sans-serif;font-size:13px;font-weight:500;letter-spacing:0.04em;cursor:pointer;transition:all 0.22s;display:inline-flex;align-items:center;text-decoration:none;}
.bk-btn-primary:hover{background:#2a2a2a;transform:translateY(-1px);color:white;}
.bk-btn-white{height:50px;padding:0 36px;background:var(--white);color:var(--black);border:none;border-radius:3px;font-family:'Inter',sans-serif;font-size:13px;font-weight:500;letter-spacing:0.04em;cursor:pointer;transition:all 0.22s;display:inline-flex;align-items:center;text-decoration:none;}
.bk-btn-white:hover{background:var(--off);transform:translateY(-1px);}
.bk-btn-ghost{height:50px;padding:0 28px;background:transparent;color:rgba(255,255,255,0.45);border:1px solid rgba(255,255,255,0.15);border-radius:3px;font-family:'Inter',sans-serif;font-size:13px;cursor:pointer;transition:all 0.22s;display:inline-flex;align-items:center;text-decoration:none;}
.bk-btn-ghost:hover{border-color:rgba(255,255,255,0.4);color:rgba(255,255,255,0.7);}

.bk-grid-lined{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:4px;overflow:hidden;}

/* TICKER */
.bk-ticker{background:var(--off);border-top:1px solid var(--line);border-bottom:1px solid var(--line);height:46px;overflow:hidden;display:flex;align-items:center;}
.bk-ticker-track{display:flex;animation:bk-scroll 38s linear infinite;width:max-content;}
@keyframes bk-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.bk-ticker-item{display:inline-flex;align-items:center;padding:0 40px;font-size:11px;font-weight:400;letter-spacing:0.09em;text-transform:uppercase;color:var(--text30);border-right:1px solid var(--line);height:46px;white-space:nowrap;font-family:'Inter',sans-serif;}
.bk-ticker-price{margin-left:16px;color:var(--text60);font-weight:500;}

/* STATS */
.bk-stats-bar{display:grid;border-top:1px solid var(--line);}
.bk-stat{padding:32px 0 32px 40px;border-right:1px solid var(--line);}
.bk-stat:last-child{border-right:none;}
.bk-stat-n{font-family:'Playfair Display',serif;font-size:30px;color:var(--black);line-height:1;margin-bottom:5px;}
.bk-stat-l{font-size:11px;color:var(--text30);letter-spacing:0.05em;font-family:'Inter',sans-serif;}

/* FAHRZEUGKARTE */
.bk-card{background:var(--white);cursor:pointer;transition:background 0.22s;}
.bk-card:hover{background:var(--off);}
.bk-card-img{height:160px;background:var(--light);display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid var(--line);}
.bk-card-img svg{width:100px;height:56px;fill:var(--mid);}
.bk-card-img-badge{position:absolute;top:12px;left:12px;font-size:9px;font-weight:500;letter-spacing:0.14em;text-transform:uppercase;padding:4px 8px;border-radius:2px;border:1px solid var(--mid);background:var(--white);color:var(--text60);font-family:'Inter',sans-serif;}
.bk-card-img-badge.live{border-color:var(--black);color:var(--black);}
.bk-card-body{padding:20px;}
.bk-card-make{font-size:10px;font-weight:500;letter-spacing:0.16em;text-transform:uppercase;color:var(--text30);margin-bottom:5px;font-family:'Inter',sans-serif;}
.bk-card-name{font-family:'Playfair Display',serif;font-size:18px;color:var(--black);line-height:1.2;margin-bottom:14px;}
.bk-card-specs{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:16px;}
.bk-card-spec{font-size:10px;color:var(--text60);padding:3px 7px;border:1px solid var(--line);border-radius:2px;font-family:'Inter',sans-serif;}
.bk-card-foot{padding-top:14px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-end;}
.bk-card-price-lbl{font-size:9px;letter-spacing:0.14em;text-transform:uppercase;color:var(--text30);margin-bottom:3px;font-family:'Inter',sans-serif;}
.bk-card-price{font-family:'Playfair Display',serif;font-size:20px;color:var(--black);}
.bk-card-loc{font-size:10px;color:var(--text30);font-family:'Inter',sans-serif;}
.bk-card-timer{font-size:12px;color:var(--text);font-variant-numeric:tabular-nums;letter-spacing:0.05em;font-family:'Inter',sans-serif;}

/* KATEGORIE */
.bk-cat{background:var(--white);padding:44px 32px;cursor:pointer;transition:background 0.22s;display:flex;flex-direction:column;justify-content:space-between;min-height:220px;}
.bk-cat:hover{background:var(--off);}
.bk-cat-name{font-family:'Playfair Display',serif;font-size:20px;color:var(--black);line-height:1.2;}
.bk-cat-count{font-size:11px;color:var(--text30);margin-top:8px;font-family:'Inter',sans-serif;}
.bk-cat-arrow{font-size:16px;color:var(--mid);align-self:flex-end;transition:all 0.22s;}
.bk-cat:hover .bk-cat-arrow{color:var(--text);transform:translate(3px,-3px);}

/* SCHRITTE */
.bk-step{background:var(--white);padding:44px 32px;}
.bk-step-n{font-family:'Playfair Display',serif;font-size:44px;color:var(--light);line-height:1;margin-bottom:28px;}
.bk-step-title{font-size:14px;font-weight:500;color:var(--black);margin-bottom:10px;font-family:'Inter',sans-serif;}
.bk-step-desc{font-size:13px;color:var(--text60);line-height:1.75;font-family:'Inter',sans-serif;}

/* CTA DUNKEL */
.bk-cta-dark{background:var(--black);padding:120px 40px;text-align:center;}
.bk-cta-dark h2{font-family:'Playfair Display',serif;font-size:clamp(32px,4.5vw,58px);color:var(--white);margin-bottom:20px;}
.bk-cta-dark h2 em{font-style:italic;color:rgba(255,255,255,0.45);}
.bk-cta-dark p{font-size:14px;color:rgba(255,255,255,0.4);margin-bottom:44px;}
.bk-cta-row{display:flex;gap:14px;justify-content:center;}

/* SUCHFORMULAR */
.bk-search-form{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 148px;border:1px solid var(--line);border-radius:4px;overflow:hidden;background:var(--white);box-shadow:0 2px 24px rgba(0,0,0,0.06);}
.bk-sf{padding:20px 22px;border-right:1px solid var(--line);background:var(--white);display:flex;flex-direction:column;gap:7px;transition:background 0.2s;}
.bk-sf:hover,.bk-sf:focus-within{background:var(--off);}
.bk-sf label{font-size:9px;font-weight:500;letter-spacing:0.2em;text-transform:uppercase;color:var(--text30);font-family:'Inter',sans-serif;}
.bk-sf select,.bk-sf input{background:transparent;border:none;outline:none;font-family:'Inter',sans-serif;font-size:14px;font-weight:300;color:var(--text);width:100%;appearance:none;-webkit-appearance:none;}
.bk-sf-submit{background:var(--black);border:none;font-family:'Inter',sans-serif;font-size:13px;font-weight:500;color:var(--white);letter-spacing:0.06em;cursor:pointer;transition:background 0.2s;}
.bk-sf-submit:hover{background:#2a2a2a;}

/* REVEAL */
.bk-reveal{opacity:0;transform:translateY(14px);transition:opacity 0.65s ease,transform 0.65s ease;}
.bk-reveal.in{opacity:1;transform:translateY(0);}

/* RESPONSIVE */
@media(max-width:1100px){
  #bk-nav,#bk-footer,.bk-section,.bk-cta-dark{padding-left:32px;padding-right:32px;}
  .bk-footer-grid{grid-template-columns:1fr 1fr;gap:40px;}
  .bk-search-form{grid-template-columns:1fr 1fr;}
  .bk-sf-submit{grid-column:span 2;height:52px;}
}
@media(max-width:768px){
  #bk-nav{padding:0 24px;}
  #bk-nav .nav-menu{display:none;}
  #bk-footer,.bk-section,.bk-cta-dark{padding-left:24px;padding-right:24px;}
  .bk-footer-grid{grid-template-columns:1fr;}
  .bk-footer-bottom{flex-direction:column;gap:16px;}
  .bk-search-form{grid-template-columns:1fr;}
  .bk-sf-submit{grid-column:span 1;}
  .bk-cta-row{flex-direction:column;align-items:center;}
  .bk-stats-bar{grid-template-columns:1fr 1fr!important;}
}
