  /* === bos.ten Original CI === */
  :root{
    --cd-red:#E7021D;       /* Primärfarbe / Akzent */
    --cd-red-dark:#b00118;
    --cd-ink:#393838;       /* Logo-/Headline-Anthrazit */
    --cd-grey:#54595F;      /* Sekundär-Text */
    --cd-grey-soft:#7A7A7A;
    --cd-line:#EBEBEB;
    --cd-bg:#ffffff;
    --cd-bg-soft:#f7f7f7;
    --cd-bg-dark:#2b2b2b;
    --maxw:1180px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;
    font-family:'Roboto',Arial,sans-serif;
    color:var(--cd-grey);
    background:var(--cd-bg);
    font-size:16px;
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
  }
  a{color:inherit;text-decoration:none}
  img{max-width:100%;display:block}
  h1,h2,h3,h4,h5{
    font-family:'Roboto Slab',Georgia,serif;
    color:var(--cd-ink);
    font-weight:500;
    line-height:1.2;
  }
  .container{max-width:var(--maxw);margin:0 auto;padding:0 28px}

  /* ===== Header ===== */
  header{
    position:sticky;top:0;z-index:50;
    background:#fff;
    border-bottom:1px solid var(--cd-line);
  }
  .nav{display:flex;align-items:center;justify-content:space-between;height:84px;gap:24px}
  .logo{display:flex;align-items:center}
  .logo img{height:32px;width:auto}
  nav ul{list-style:none;display:flex;gap:34px;margin:0;padding:0;font-size:15px;font-weight:400}
  nav a{
    color:var(--cd-grey);
    transition:color .2s;
    position:relative;
    padding:6px 0;
  }
  nav a:hover{color:var(--cd-red)}
  nav a::after{
    content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
    background:var(--cd-red);transform:scaleX(0);transform-origin:left;
    transition:transform .25s ease;
  }
  nav a:hover::after{transform:scaleX(1)}
  .nav-cta{
    background:var(--cd-red);color:#fff;
    padding:11px 22px;font-size:14px;font-weight:500;
    transition:background .2s;
    letter-spacing:.02em;
  }
  .nav-cta:hover{background:var(--cd-red-dark)}
  .nav-cta::after{display:none}
  @media(max-width:780px){nav ul{display:none}}

  /* ===== Hero ===== */
  .hero{
    position:relative;
    background:#0e0e0e;
    color:#fff;
    overflow:hidden;
    min-height:560px;
    display:flex;align-items:center;
    padding:90px 0;
  }
  .hero-bg{
    position:absolute;inset:0;
    background-image:url('img/home.jpg');
    background-size:cover;background-position:center;
    opacity:.55;
  }
  .hero::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(90deg, rgba(0,0,0,.85) 0%, rgba(0,0,0,.55) 50%, rgba(0,0,0,.2) 100%);
  }
  .hero .container{position:relative;z-index:2}
  .hero-content{max-width:680px}
  .eyebrow{
    display:inline-flex;align-items:center;gap:10px;
    font-size:12px;font-weight:500;letter-spacing:.22em;text-transform:uppercase;
    color:var(--cd-red);
    margin-bottom:24px;
  }
  .eyebrow::before{content:"";width:32px;height:2px;background:var(--cd-red)}
  .hero h1{
    font-size:clamp(38px,5.2vw,62px);
    color:#fff;
    margin:0 0 22px;
    font-weight:500;
  }
  .hero h1 .accent{color:var(--cd-red)}
  .hero p.lead{
    font-size:19px;line-height:1.55;
    color:rgba(255,255,255,.85);
    max-width:580px;margin:0 0 36px;
    font-weight:300;
  }
  .cta-row{display:flex;gap:14px;flex-wrap:wrap}
  .btn{
    display:inline-flex;align-items:center;gap:10px;
    padding:15px 32px;font-weight:500;font-size:15px;
    transition:transform .2s, background .2s, color .2s, border-color .2s;
    cursor:pointer;border:none;
    letter-spacing:.02em;
  }
  .btn-primary{background:var(--cd-red);color:#fff}
  .btn-primary:hover{background:var(--cd-red-dark);transform:translateY(-1px)}
  .btn-ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.4)}
  .btn-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08)}
  .btn .arrow{transition:transform .2s}
  .btn:hover .arrow{transform:translateX(4px)}

  /* ===== Stats ===== */
  .stats{
    background:var(--cd-bg-soft);
    border-bottom:1px solid var(--cd-line);
    padding:48px 0;
  }
  .stats-grid{
    display:grid;grid-template-columns:repeat(4,1fr);gap:32px;
    text-align:center;
  }
  @media(max-width:780px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:32px 16px}}
  .stat .num{
    font-family:'Roboto Slab',Georgia,serif;
    font-size:46px;font-weight:600;color:var(--cd-ink);
    line-height:1;letter-spacing:-.01em;
  }
  .stat .num small{font-size:22px;color:var(--cd-red);margin-left:2px;font-weight:500}
  .stat .lbl{
    margin-top:10px;font-size:13px;
    color:var(--cd-grey-soft);
    text-transform:uppercase;letter-spacing:.12em;
    font-weight:500;
  }

  /* ===== Sections ===== */
  section{padding:100px 0}
  .section-head{max-width:680px;margin-bottom:56px}
  .section-head h2{
    font-size:clamp(30px,3.8vw,44px);
    margin:14px 0 18px;
  }
  .section-head p{
    color:var(--cd-grey);font-size:18px;margin:0;
    font-weight:300;line-height:1.6;
  }

  /* Leistungen */
  .services{
    display:grid;grid-template-columns:repeat(3,1fr);gap:0;
    border-top:1px solid var(--cd-line);
    border-left:1px solid var(--cd-line);
  }
  @media(max-width:980px){.services{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:600px){.services{grid-template-columns:1fr}}
  .card{
    background:#fff;
    border-right:1px solid var(--cd-line);
    border-bottom:1px solid var(--cd-line);
    padding:40px 32px;
    transition:background .25s;
    position:relative;
  }
  .card:hover{background:var(--cd-bg-soft)}
  .card::before{
    content:"";position:absolute;left:0;top:0;width:3px;height:0;
    background:var(--cd-red);transition:height .3s ease;
  }
  .card:hover::before{height:100%}
  /* Feature-Cards: kaufmännische Betriebsführung & Zweitmarkt – dezent hervorgehoben durch permanenten roten Akzentstreifen */
  .card-feature::before{height:100%}
  .card .icon{
    width:48px;height:48px;
    display:flex;align-items:center;justify-content:center;
    margin-bottom:24px;color:var(--cd-red);
  }
  .card h3{font-size:20px;margin:0 0 12px;font-weight:500}
  .card p{color:var(--cd-grey);font-size:15px;margin:0;line-height:1.6}

  /* Bildband */
  .image-band{
    margin-top:0;
    display:grid;grid-template-columns:repeat(4,1fr);
  }
  @media(max-width:780px){.image-band{grid-template-columns:repeat(2,1fr)}}
  .image-band div{
    aspect-ratio:4/3;
    background-size:cover;background-position:center;
  }

  /* Zweitmarkt-Block */
  .market{
    padding:100px 0;
    background:#fff;
    border-top:1px solid var(--cd-line);
  }
  .market-grid{
    display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;
  }
  @media(max-width:880px){.market-grid{grid-template-columns:1fr;gap:40px}}
  .market-img{
    aspect-ratio:4/3;
    background-size:cover;background-position:center;
    position:relative;
  }
  .market-img::after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(135deg,rgba(231,2,29,.15),transparent 60%);
  }
  .market h2{font-size:clamp(30px,3.8vw,44px);margin:14px 0 22px}
  .market .lead-text{font-size:17px;color:var(--cd-grey);margin:0 0 28px;line-height:1.65;font-weight:300}
  .market-points{list-style:none;padding:0;margin:0 0 32px;display:grid;gap:16px}
  .market-points li{
    display:flex;gap:14px;align-items:flex-start;
    padding-left:0;font-size:15.5px;color:var(--cd-grey);
  }
  .market-points li::before{
    content:"";flex-shrink:0;width:6px;height:6px;background:var(--cd-red);
    margin-top:10px;
  }
  .market-points b{color:var(--cd-ink);font-weight:500;font-family:'Roboto Slab',Georgia,serif}

  /* Warum / Why */
  .why{
    background:var(--cd-bg-dark);
    color:#fff;
    padding:100px 0;
  }
  .why-grid{
    display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center;
  }
  @media(max-width:880px){.why-grid{grid-template-columns:1fr;gap:48px}}
  .why h2{color:#fff;font-size:clamp(30px,3.5vw,42px);margin:14px 0 22px}
  .why .lead-text{color:rgba(255,255,255,.75);font-size:17px;margin:0 0 0;font-weight:300;line-height:1.6}
  .why ul{list-style:none;padding:0;margin:0;display:grid;gap:0}
  .why li{
    display:flex;gap:18px;align-items:flex-start;
    color:rgba(255,255,255,.85);font-size:15.5px;
    padding:22px 0;
    border-bottom:1px solid rgba(255,255,255,.1);
  }
  .why li:first-child{padding-top:0}
  .why li:last-child{border-bottom:0}
  .why li b{color:#fff;font-weight:500;display:block;margin-bottom:3px;font-size:16px}
  .why .check{
    flex-shrink:0;width:28px;height:28px;
    background:var(--cd-red);color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-size:14px;font-weight:700;margin-top:2px;
  }

  /* TÜV-Sektion */
  .tuev-row{
    background:var(--cd-bg-soft);
    padding:60px 0;
    border-top:1px solid var(--cd-line);
    border-bottom:1px solid var(--cd-line);
  }
  .tuev-inner{
    display:flex;align-items:center;gap:40px;flex-wrap:wrap;justify-content:center;text-align:center;
  }
  .tuev-inner img{height:90px;width:auto}
  .tuev-inner p{
    margin:0;max-width:560px;font-size:16px;color:var(--cd-grey);
    text-align:left;
  }
  .tuev-inner p b{color:var(--cd-ink);display:block;font-family:'Roboto Slab',Georgia,serif;font-size:18px;margin-bottom:4px}
  @media(max-width:600px){.tuev-inner p{text-align:center}}

  /* Kontakt */
  .contact{padding:100px 0;background:#fff}
  .contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:80px;align-items:start}
  @media(max-width:880px){.contact-grid{grid-template-columns:1fr;gap:48px}}
  .contact h2{font-size:clamp(30px,3.8vw,44px);margin:14px 0 22px}
  .contact-info{display:grid;gap:22px;margin-top:32px;font-size:15px}
  .contact-info .row{display:flex;gap:16px;align-items:flex-start}
  .contact-info .row .ico{
    flex-shrink:0;width:42px;height:42px;
    background:var(--cd-bg-soft);
    color:var(--cd-red);
    display:flex;align-items:center;justify-content:center;
  }
  .contact-info b{display:block;font-weight:500;margin-bottom:2px;color:var(--cd-ink);font-family:'Roboto Slab',Georgia,serif;font-size:15px}
  .contact-info span{color:var(--cd-grey)}
  .contact-info a:hover{color:var(--cd-red)}

  form{
    background:var(--cd-bg-soft);
    padding:44px;
    border:1px solid var(--cd-line);
  }
  .field{margin-bottom:20px}
  .field label{
    display:block;font-size:12px;font-weight:500;
    color:var(--cd-grey-soft);margin-bottom:8px;
    text-transform:uppercase;letter-spacing:.1em;
  }
  .field input, .field textarea, .field select{
    width:100%;padding:14px 16px;
    border:1px solid var(--cd-line);
    background:#fff;font-family:inherit;font-size:15px;color:var(--cd-ink);
    transition:border-color .2s;
  }
  .field input:focus, .field textarea:focus, .field select:focus{
    outline:none;border-color:var(--cd-red);
  }
  .field textarea{min-height:130px;resize:vertical}
  .row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  @media(max-width:520px){.row2{grid-template-columns:1fr}}
  .checkbox{display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--cd-grey);margin:6px 0 22px}
  .checkbox input{width:auto;margin-top:3px}
  .checkbox a{color:var(--cd-red);text-decoration:underline}
  form button{width:100%;justify-content:center}

  /* Footer */
  footer{background:#1a1a1a;color:#9ea3a8;padding:64px 0 32px;font-size:14px}
  footer .logo img{filter:brightness(0) invert(1);height:28px}
  .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:48px;margin-bottom:48px;margin-top:24px}
  @media(max-width:780px){.foot-grid{grid-template-columns:1fr;gap:32px}}
  footer h4{
    color:#fff;font-size:12px;
    letter-spacing:.14em;text-transform:uppercase;font-weight:500;
    margin:0 0 16px;font-family:'Roboto',sans-serif;
  }
  footer ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}
  footer a:hover{color:var(--cd-red)}
  .foot-bottom{
    border-top:1px solid rgba(255,255,255,.08);
    padding-top:24px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:14px;
    font-size:13px;
  }
  .foot-bottom ul{display:flex;gap:24px;list-style:none;padding:0;margin:0}

  /* fade-in */
  .fade{opacity:0;transform:translateY(20px);transition:opacity .8s ease,transform .8s ease}
  .fade.in{opacity:1;transform:none}

  /* Legal pages */
  .legal-hero{
    background:var(--cd-bg-soft);
    border-bottom:1px solid var(--cd-line);
    padding:80px 0 60px;
  }
  .legal-hero h1{font-size:clamp(34px,4.5vw,50px);margin:0}
  .legal-hero .breadcrumb{
    font-size:13px;letter-spacing:.1em;text-transform:uppercase;
    color:var(--cd-grey-soft);margin-bottom:18px;font-weight:500;
  }
  .legal-hero .breadcrumb a:hover{color:var(--cd-red)}
  .legal{padding:80px 0 100px}
  .legal-content{max-width:780px;margin:0 auto}
  .legal-content h2{
    font-size:24px;margin:48px 0 16px;
    padding-bottom:10px;border-bottom:1px solid var(--cd-line);
  }
  .legal-content h2:first-child{margin-top:0}
  .legal-content h3{font-size:18px;margin:32px 0 10px}
  .legal-content p{margin:0 0 16px;line-height:1.7}
  .legal-content ul{padding-left:22px;margin:0 0 16px}
  .legal-content li{margin-bottom:8px;line-height:1.7}
  .legal-content a{color:var(--cd-red);text-decoration:underline}
  .legal-content a:hover{color:var(--cd-red-dark)}
  .legal-content .info-block{
    background:var(--cd-bg-soft);
    border-left:3px solid var(--cd-red);
    padding:24px 28px;margin:24px 0;
  }
  .legal-content .info-block p:last-child{margin-bottom:0}
  .legal-content .info-block b{color:var(--cd-ink);font-family:'Roboto Slab',Georgia,serif;font-weight:500}
