*{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{font-family:var(--sans);color:var(--ink);background:var(--paper);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;font-weight:400}
  .wrap{max-width:1160px;margin:0 auto;padding:0 30px}
  a{color:inherit;text-decoration:none}
  h1,h2,h3{font-weight:500;line-height:1.12;letter-spacing:.01em}

  /* Logo-Lockup: CD-Monogramm im Quadratrahmen + Wortmarke */
  .brand{display:flex;align-items:center;gap:13px;line-height:1}
  .logo-mark{flex:none;width:50px;height:50px;color:#fff}
  .logo-mark svg{display:block;width:100%;height:100%;overflow:visible}
  .logo-txt{display:flex;flex-direction:column;line-height:1}
  .logo-txt .dl{font-weight:600;font-size:14px;letter-spacing:.2em;text-transform:uppercase;color:#fff}
  .logo-txt .jc{font-weight:400;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:#eec39a;margin-top:6px}

  /* header dunkel */
  header{position:sticky;top:0;z-index:50;background:rgba(42,13,8,.94);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.12)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:84px}
  nav ul{display:flex;gap:28px;list-style:none;align-items:center}
  nav a{font-size:15px;font-weight:500;color:#ecdbcf;transition:color .2s}
  nav a:hover{color:#fff}
  .nav-cta{background:var(--red);color:#fff!important;padding:11px 20px;border-radius:3px;transition:background .2s}
  .nav-cta:hover{background:#9c4f16}

  /* HERO: tief-dunkles Band, große Aussage, drei Punkte darunter */
  .hero{background-color:var(--blue-deep);background-image:linear-gradient(165deg,var(--navy),var(--blue-deep) 55%,var(--blue));color:#fff;position:relative;overflow:hidden}
  .hero .halftone{position:absolute;inset:0;opacity:.35;
    background-image:radial-gradient(rgba(255,255,255,.16) 1px,transparent 1.4px);
    background-size:9px 9px;
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 30%,#000 75%,transparent);
            mask-image:linear-gradient(90deg,transparent,#000 30%,#000 75%,transparent)}
  .hero .wrap{position:relative;z-index:2;text-align:center;padding:96px 30px 84px;max-width:900px}
  .eyebrow{display:inline-block;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:#eec39a;font-weight:600;margin-bottom:16px}
  .hero h1{font-size:clamp(32px,5vw,54px);font-weight:400;color:#fff}
  .hero h1 b{font-weight:600;color:#f0b98c}
  .hero p{color:#ead9c9;font-size:19px;margin:22px auto 0;max-width:640px}
  .btn{display:inline-flex;align-items:center;gap:9px;padding:14px 30px;border-radius:3px;font-weight:500;font-size:15px;letter-spacing:.02em;transition:.2s}
  .btn-red{background:var(--red);color:#fff}
  .btn-red:hover{background:#9c4f16}
  .btn-ghost{border:1.5px solid rgba(255,255,255,.45);color:#fff}
  .btn-ghost:hover{background:rgba(255,255,255,.1)}
  .btn-row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:32px}

  /* drei Punkte als überlappende Karten */
  .hero-cards{position:relative;z-index:3;margin-top:-46px;padding-bottom:0}
  .hc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
  .hc{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--red);border-radius:8px;padding:26px 26px;box-shadow:0 22px 48px -30px rgba(58,18,11,.55)}
  .hc:nth-child(2){border-top-color:var(--blue)}
  .hc .hc-title{font-size:18.5px;font-weight:600;margin-bottom:6px}
  .hc p{color:var(--muted);font-size:14.5px}

  section{padding:88px 0}
  .sec-head{text-align:center;max-width:680px;margin:0 auto 52px}
  .sec-head .eyebrow{color:var(--red)}
  .sec-head h2{font-size:clamp(28px,4vw,40px);font-weight:400}
  .sec-head h2 b{font-weight:600;color:var(--blue)}
  .sec-head p{color:var(--muted);font-size:17px;margin-top:14px}

  /* Leistungen im Wechsel-Layout */
  .feat{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;padding:34px 0}
  .feat:nth-child(even) .vis{order:2}
  .feat .vis{background:var(--band-2);border:1px solid var(--line);border-radius:10px;aspect-ratio:16/10;position:relative;overflow:hidden;box-shadow:0 20px 46px -30px rgba(58,18,11,.55)}
  .feat .vis img{width:100%;height:100%;object-fit:cover;display:block}

  /* Arbeitsproben */
  .ap{background:var(--paper-2)}
  .ap-item{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;align-items:center;padding:34px 0;border-bottom:1px solid var(--line)}
  .ap-item:last-child{border-bottom:0}
  .ap-media{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .ap-media figure{position:relative;margin:0;border-radius:10px;overflow:hidden;aspect-ratio:4/3;box-shadow:0 16px 38px -28px rgba(58,18,11,.5)}
  .ap-media img{width:100%;height:100%;object-fit:cover;display:block}
  .ap-media figcaption{position:absolute;top:10px;left:10px;font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;padding:4px 10px;border-radius:4px;background:rgba(255,255,255,.9)}
  .ap-media .vor figcaption{color:var(--red)}
  .ap-media .nach figcaption{color:var(--blue)}
  .ap-body .kat{display:inline-block;font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--red);font-weight:600;margin-bottom:8px}
  .ap-body h3{font-size:23px;font-weight:600;margin-bottom:10px}
  .ap-body h3 span{color:var(--blue)}
  .ap-body p{color:var(--muted);font-size:15.5px}
  .feat .num{font-size:52px;font-weight:600;color:#968773;line-height:1}
  .feat h3{font-size:26px;font-weight:600;margin:6px 0 12px}
  .feat h3 span{color:var(--blue)}
  .feat p{color:var(--muted);font-size:16px}
  .feat ul{list-style:none;margin-top:16px;display:flex;flex-direction:column;gap:9px}
  .feat li{display:flex;gap:10px;font-size:15px;color:#4a3d33}
  .feat li::before{content:"";flex:none;width:7px;height:7px;margin-top:9px;border-radius:50%;background:var(--red)}

  /* Prozess dunkel */
  .process{background:var(--navy);color:#fff}
  .process .sec-head h2{color:#fff}.process .sec-head h2 b{color:#f0b98c}
  .process .eyebrow{color:#eec39a}.process .sec-head p{color:#dcc7b5}
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
  .pstep{text-align:center}
  .pstep .n{width:58px;height:58px;border-radius:50%;background:rgba(255,255,255,.1);border:1.5px solid rgba(255,255,255,.4);color:#fff;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:600;margin:0 auto 18px}
  .pstep h3{font-size:19px;font-weight:600;margin-bottom:8px}
  .pstep p{color:#dcc7b5;font-size:14.5px}

  /* Über mich hell */
  .about{background:var(--paper-2)}
  .about .wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:center}
  .portrait{background:#efe3d2;border-radius:10px;aspect-ratio:4/5;position:relative;overflow:hidden;box-shadow:0 20px 50px -28px rgba(58,18,11,.6)}
  .portrait img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
  .about .eyebrow{color:var(--red)}
  .about h2{font-size:clamp(26px,3.6vw,38px);font-weight:400}
  .about h2 b{color:var(--blue);font-weight:600}
  .about p{color:var(--muted);font-size:16.5px;margin-top:16px}
  .about .skills{list-style:none;margin-top:20px;display:flex;flex-direction:column;gap:9px}
  .about .skills li{display:flex;gap:10px;font-size:15.5px;color:#4a3d33}
  .about .skills li::before{content:"";flex:none;width:7px;height:7px;margin-top:9px;border-radius:50%;background:var(--red)}
  .about .name{font-size:15px;color:var(--ink);margin-top:22px}
  .about .name b{color:var(--blue);font-weight:600}

  /* CTA dunkel */
  .cta{text-align:center;background-color:var(--blue-deep);background-image:linear-gradient(165deg,var(--navy),var(--blue-deep));color:#fff}
  .cta .eyebrow{color:#eec39a}
  .cta h2{font-size:clamp(28px,4vw,40px);font-weight:400;max-width:660px;margin:0 auto;color:#fff}
  .cta h2 b{color:#f0b98c;font-weight:600}
  .cta p{color:#ead9c9;font-size:17px;margin:16px auto 0;max-width:520px}
  .cta .btn{margin-top:28px}

  footer{background:#1f0a06;color:#c6ad9c;padding:48px 0 32px}
  .foot-grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:30px;align-items:center}
  footer .logo-txt .dl{color:#fff}footer .logo-txt .jc{color:#eec39a}
  .foot-nav{display:flex;gap:26px}
  .foot-nav a{font-size:14.5px}.foot-nav a:hover{color:#fff}
  .foot-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:30px;padding-top:20px;font-size:13px;color:#9c8574;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}

  .note{position:fixed;bottom:14px;left:14px;z-index:99;background:#1f0a06;color:#e0d2c4;font-size:12px;padding:8px 14px;border-radius:3px}
  .note b{color:#f0b98c}

  @media(max-width:900px){
    .hc-grid,.steps{grid-template-columns:1fr}
    .feat{grid-template-columns:1fr;gap:26px}
    .feat:nth-child(even) .vis{order:0}
    .ap-item{grid-template-columns:1fr;gap:22px}
    .about .wrap{grid-template-columns:1fr;gap:32px}
    nav ul{display:none}
  }
  @media(max-width:560px){.steps{grid-template-columns:1fr}}

  /* Kontaktformular */
  .form-wrap{max-width:640px;margin:34px auto 0;text-align:left}
  .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
  .field{margin-bottom:16px}
  .field label{display:block;font-size:13.5px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#eec39a;margin-bottom:7px}
  .field input,.field textarea,.field select{width:100%;padding:13px 15px;border:1px solid rgba(255,255,255,.28);border-radius:3px;background:rgba(255,255,255,.07);color:#fff;font-family:var(--sans);font-size:16px;transition:border-color .2s,background .2s}
  .field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:var(--red-soft);background:rgba(255,255,255,.12)}
  .field textarea{min-height:130px;resize:vertical}
  .field select option{color:#2b211b}
  .consent{display:flex;gap:11px;align-items:flex-start;margin:6px 0 20px;font-size:14px;color:#e8d5c6;text-align:left}
  .consent input{width:18px;height:18px;flex:none;margin-top:3px;accent-color:var(--red)}
  .consent a{text-decoration:underline}
  .form-msg{margin-top:18px;padding:14px 16px;border-radius:3px;font-size:15px;display:none}
  .form-msg.ok{display:block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.3);color:#fff}
  .form-msg.err{display:block;background:rgba(0,0,0,.25);border:1px solid var(--red-soft);color:#ffd9bd}
  .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
  @media(max-width:700px){.form-row{grid-template-columns:1fr}}

  /* Rechtstexte (Impressum, Datenschutz) */
  .legal{padding:70px 0 90px;background:var(--paper)}
  .legal h1{font-size:clamp(30px,4vw,42px);color:var(--blue);margin-bottom:26px}
  .legal-body{max-width:760px}
  .legal-body h2{font-size:20px;font-weight:600;color:var(--blue);margin:30px 0 10px}
  .legal-body h3{font-size:17px;font-weight:600;margin:22px 0 8px}
  .legal-body p{color:var(--muted);margin-bottom:12px}
  .legal-body ul,.legal-body ol{color:var(--muted);margin:0 0 12px 20px}
  .legal-body li{margin-bottom:6px}
  .legal-body a{color:var(--red);text-decoration:underline}
