/* ===== LOKALE SCHRIFTEN (self-hosted, kein Google-Transfer) ===== */
@font-face{ font-family:'Outfit'; src:url('outfit.woff2') format('woff2'); font-weight:100 900; font-style:normal; font-display:swap; }
@font-face{ font-family:'Playfair Display'; src:url('playfair.woff2') format('woff2'); font-weight:400 900; font-style:normal; font-display:swap; }
@font-face{ font-family:'Playfair Display'; src:url('playfair-italic.woff2') format('woff2'); font-weight:400 900; font-style:italic; font-display:swap; }


  :root {
    --black: #070707;
    --black-soft: #0e0e0e;
    --black-card: #141414;
    --black-border: #1f1f1f;
    --copper: #C4956A;
    --copper-light: #D4A87E;
    --copper-dark: #A67B5B;
    --copper-glow: rgba(196,149,106,0.08);
    --copper-glow2: rgba(196,149,106,0.04);
    --cream: #F0E6DA;
    --white: #F5F0EB;
    --gray: #888;
    --gray-dim: #555;
    --gray-dark: #333;
  }

  * { margin: 0; padding: 0; box-sizing: border-box; }

  html {
    scroll-behavior: smooth;
    font-size: 16px;
  }

  body {
    font-family: 'Outfit', sans-serif;
    background: var(--black);
    color: var(--white);
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
  }

  /* ===== NAVIGATION ===== */
  nav {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    padding: 20px 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: rgba(7,7,7,0.85);
    backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(196,149,106,0.08);
    transition: all 0.4s ease;
  }

  .nav-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
  }

  .nav-logo svg { width: 32px; height: 32px; }

  .logo-img {
    filter: invert(1) sepia(1) saturate(0.4) hue-rotate(340deg) brightness(0.9);
    object-fit: contain;
  }
  .logo-img-nav { width: 38px; height: 38px; }
  .logo-img-footer { width: 42px; height: 42px; }
  .logo-img-seal { width: 100px; height: 100px; filter: invert(1) sepia(1) saturate(0.3) hue-rotate(340deg) brightness(0.8) opacity(0.8); }

  .nav-links {
    display: flex;
    gap: 32px;
    list-style: none;
  }

  .nav-links a {
    color: var(--gray);
    text-decoration: none;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 1px;
    transition: color 0.3s;
  }

  .nav-links a:hover { color: var(--copper); }

  .nav-cta {
    background: transparent;
    border: 1px solid var(--copper);
    color: var(--copper);
    padding: 10px 24px;
    font-family: 'Outfit', sans-serif;
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-decoration: none;
    transition: all 0.3s;
    cursor: pointer;
  }

  .nav-cta:hover {
    background: var(--copper);
    color: var(--black);
  }

  /* ===== HERO ===== */
  .hero {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 120px 40px 80px;
    position: relative;
    overflow: hidden;
  }

  .hero::before {
    content: '';
    position: absolute;
    top: -200px;
    left: 50%;
    transform: translateX(-50%);
    width: 800px;
    height: 800px;
    background: radial-gradient(ellipse, rgba(196,149,106,0.06) 0%, transparent 70%);
    pointer-events: none;
  }

  .hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 20px;
    border: 1px solid var(--black-border);
    border-radius: 100px;
    font-size: 11px;
    color: var(--copper);
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 48px;
    background: var(--black-soft);
  }

  .hero-badge .dot {
    width: 6px;
    height: 6px;
    background: var(--copper);
    border-radius: 50%;
  }

  .hero h1 {
    font-family: 'Playfair Display', serif;
    font-size: clamp(36px, 6vw, 72px);
    font-weight: 400;
    line-height: 1.15;
    margin-bottom: 32px;
    max-width: 800px;
  }

  .hero h1 em {
    color: var(--copper);
    font-style: italic;
  }

  .hero-sub {
    font-size: 17px;
    font-weight: 300;
    color: var(--gray);
    line-height: 1.7;
    max-width: 520px;
    margin-bottom: 48px;
  }

  .hero-cta-group {
    display: flex;
    gap: 16px;
    align-items: center;
  }

  .btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--copper);
    color: var(--black);
    padding: 16px 36px;
    font-family: 'Outfit', sans-serif;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 2px;
    text-transform: uppercase;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: all 0.3s;
  }

  .btn-primary:hover {
    background: var(--copper-light);
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(196,149,106,0.2);
  }

  .btn-secondary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--gray);
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 1px;
    text-decoration: none;
    transition: color 0.3s;
  }

  .btn-secondary:hover { color: var(--copper); }

  .scroll-indicator {
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    color: var(--gray-dim);
    font-size: 10px;
    letter-spacing: 3px;
    text-transform: uppercase;
    animation: float 3s ease-in-out infinite;
  }

  @keyframes float {
    0%, 100% { transform: translateX(-50%) translateY(0); }
    50% { transform: translateX(-50%) translateY(8px); }
  }

  /* ===== SECTION BASE ===== */
  section {
    padding: 120px 40px;
    max-width: 1200px;
    margin: 0 auto;
  }

  .section-label {
    font-size: 11px;
    color: var(--copper);
    letter-spacing: 4px;
    text-transform: uppercase;
    margin-bottom: 20px;
  }

  .section-title {
    font-family: 'Playfair Display', serif;
    font-size: clamp(28px, 4vw, 44px);
    font-weight: 400;
    line-height: 1.25;
    margin-bottom: 24px;
  }

  .section-title em {
    color: var(--copper);
    font-style: italic;
  }

  /* ===== STORY ===== */
  .story {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
  }

  .story-text p {
    font-size: 16px;
    font-weight: 300;
    color: var(--gray);
    line-height: 1.9;
    margin-bottom: 20px;
  }

  .story-text strong {
    color: var(--cream);
    font-weight: 500;
  }

  .story-visual {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 400px;
  }

  .story-visual .diamond-large {
    width: 280px;
    height: 280px;
    opacity: 0.06;
    position: absolute;
  }

  .story-quote {
    position: relative;
    z-index: 1;
    padding: 40px;
    border-left: 2px solid var(--copper);
    max-width: 340px;
  }

  .story-quote p {
    font-family: 'Playfair Display', serif;
    font-size: 20px;
    font-style: italic;
    color: var(--cream);
    line-height: 1.6;
  }

  .story-quote .attribution {
    margin-top: 16px;
    font-family: 'Outfit', sans-serif;
    font-size: 12px;
    color: var(--copper);
    font-style: normal;
    letter-spacing: 2px;
    text-transform: uppercase;
  }

  /* ===== FEATURES ===== */
  .features-section {
    border-top: 1px solid var(--black-border);
  }

  .features-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    margin-top: 60px;
  }

  .feature-card {
    background: var(--black-soft);
    border: 1px solid var(--black-border);
    padding: 48px 40px;
    position: relative;
    overflow: hidden;
    transition: border-color 0.4s;
  }

  .feature-card:hover {
    border-color: rgba(196,149,106,0.3);
  }

  .feature-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--copper), transparent);
    opacity: 0;
    transition: opacity 0.4s;
  }

  .feature-card:hover::before { opacity: 1; }

  .feature-icon {
    width: 48px;
    height: 48px;
    margin-bottom: 24px;
  }

  .feature-name {
    font-size: 13px;
    font-weight: 600;
    color: var(--copper);
    letter-spacing: 3px;
    text-transform: uppercase;
    margin-bottom: 8px;
  }

  .feature-title {
    font-family: 'Playfair Display', serif;
    font-size: 24px;
    font-weight: 400;
    color: var(--cream);
    margin-bottom: 16px;
  }

  .feature-desc {
    font-size: 15px;
    font-weight: 300;
    color: var(--gray);
    line-height: 1.8;
  }

  .feature-stat {
    margin-top: 24px;
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
  }

  .feature-stat .number {
    font-size: 36px;
    font-weight: 700;
    color: var(--copper);
  }

  .feature-stat .unit {
    font-size: 14px;
    color: var(--gray);
    font-weight: 300;
  }

  /* ===== PERFECTFIT ===== */
  .perfectfit-section {
    border-top: 1px solid var(--black-border);
  }

  .perfectfit-card {
    margin-top: 60px;
    background: var(--copper-glow);
    border: 1px solid rgba(196,149,106,0.15);
    padding: 64px;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 48px;
    align-items: center;
  }

  .perfectfit-seal {
    width: 140px;
    height: 140px;
    flex-shrink: 0;
  }

  .perfectfit-content h3 {
    font-family: 'Playfair Display', serif;
    font-size: 28px;
    font-weight: 400;
    color: var(--cream);
    margin-bottom: 16px;
  }

  .perfectfit-content h3 em {
    color: var(--copper);
    font-style: italic;
  }

  .perfectfit-content p {
    font-size: 16px;
    font-weight: 300;
    color: var(--gray);
    line-height: 1.8;
    margin-bottom: 12px;
    max-width: 560px;
  }

  .perfectfit-content .contact-line {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 8px;
    padding: 10px 20px;
    background: var(--black-soft);
    border: 1px solid var(--black-border);
    color: var(--copper);
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 0.5px;
  }

  /* ===== SUPPORT / CONTACT ===== */
  .support-section {
    border-top: 1px solid var(--black-border);
    text-align: center;
  }

  .support-section .section-title {
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
  }

  .support-text {
    font-size: 16px;
    font-weight: 300;
    color: var(--gray);
    line-height: 1.8;
    max-width: 520px;
    margin: 0 auto 40px;
  }

  .support-email {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 20px 40px;
    border: 1px solid var(--copper);
    color: var(--copper);
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    text-decoration: none;
    transition: all 0.3s;
  }

  .support-email:hover {
    background: var(--copper);
    color: var(--black);
  }

  .support-note {
    margin-top: 24px;
    font-size: 13px;
    color: var(--gray-dim);
    font-weight: 300;
  }

  /* ===== AMAZON CTA ===== */
  .amazon-section {
    border-top: 1px solid var(--black-border);
    text-align: center;
    padding-bottom: 160px;
  }

  .amazon-section .section-title {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 40px;
  }

  .amazon-badges {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin-bottom: 48px;
    flex-wrap: wrap;
  }

  .amazon-badge {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
  }

  .amazon-badge .badge-icon {
    font-size: 24px;
    color: var(--copper);
  }

  .amazon-badge .badge-label {
    font-size: 11px;
    color: var(--gray);
    letter-spacing: 1px;
  }

  /* ===== FOOTER ===== */
  footer {
    border-top: 1px solid var(--black-border);
    padding: 60px 40px;
    max-width: 1200px;
    margin: 0 auto;
  }

  .footer-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 48px;
  }

  .footer-brand {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }

  .footer-brand .tagline {
    font-size: 13px;
    color: var(--gray-dim);
    font-style: italic;
    max-width: 360px;
    line-height: 1.6;
  }

  .footer-links {
    display: flex;
    gap: 32px;
  }

  .footer-links a {
    color: var(--gray-dim);
    text-decoration: none;
    font-size: 12px;
    letter-spacing: 1px;
    transition: color 0.3s;
  }

  .footer-links a:hover { color: var(--copper); }

  .footer-bottom {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 24px;
    border-top: 1px solid var(--black-border);
  }

  .footer-copy {
    font-size: 11px;
    color: var(--gray-dark);
    letter-spacing: 1px;
  }

  .footer-marke {
    font-size: 10px;
    color: var(--copper-dark);
    letter-spacing: 2px;
    text-transform: uppercase;
    border: 1px solid var(--copper-dark);
    padding: 4px 12px;
    opacity: 0.6;
  }

  /* ===== RESPONSIVE ===== */
  @media (max-width: 900px) {
    nav { padding: 16px 20px; }
    .nav-links { display: none; }
    section { padding: 80px 24px; }
    .story { grid-template-columns: 1fr; gap: 48px; }
    .story-visual { min-height: 200px; }
    .features-grid { grid-template-columns: 1fr; }
    .perfectfit-card {
      grid-template-columns: 1fr;
      padding: 40px 28px;
      text-align: center;
    }
    .perfectfit-seal { margin: 0 auto; }
    .hero { padding: 140px 24px 80px; }
    .hero-cta-group { flex-direction: column; }
    .footer-top { flex-direction: column; gap: 32px; }
    .amazon-badges { gap: 24px; }
  }

  /* ===== IMAGE INTEGRATION OVERRIDES ===== */
  .logo-img { filter: none !important; }
  .logo-img-nav { width: 40px; height: 40px; }
  .logo-img-footer { width: 46px; height: 46px; }
  .hero {
    background:
      linear-gradient(rgba(7,7,7,0.72), rgba(7,7,7,0.82) 55%, rgba(7,7,7,0.95) 100%),
      url('hero.jpg') center/cover no-repeat;
  }
  .story-visual { position: relative; overflow: hidden; border-radius: 4px; }
  .story-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: 0; }
  .story-visual::after {
    content: ''; position: absolute; inset: 0; z-index: 1;
    background: linear-gradient(90deg, rgba(7,7,7,0.9) 0%, rgba(7,7,7,0.55) 45%, rgba(7,7,7,0.2) 100%);
  }
  .story-quote { z-index: 3 !important; background: transparent; }

  .perfectfit-seal { object-fit: contain; border-radius: 50%; box-shadow: 0 10px 34px rgba(0,0,0,0.75), 0 0 0 1px rgba(196,149,106,0.28); }


/* ================= EXTENSION STYLES ================= */

/* --- Nav: active + mobile burger --- */
.nav-links a.active { color: var(--copper); }
.nav-burger { display:none; background:none; border:none; cursor:pointer; padding:6px; }
.nav-burger span { display:block; width:24px; height:2px; background:var(--copper); margin:5px 0; transition:.3s; }

@media (max-width: 900px) {
  .nav-burger { display:block; }
  .nav-links {
    display:none; position:absolute; top:100%; left:0; right:0;
    flex-direction:column; gap:0; background:rgba(7,7,7,0.98);
    border-bottom:1px solid var(--black-border); padding:8px 0; backdrop-filter:blur(20px);
  }
  .nav-links.open { display:flex; }
  .nav-links li { text-align:center; }
  .nav-links a { display:block; padding:16px; font-size:15px; }
}

/* --- Feature badges (FlexFit / GripMount seals) --- */
.feature-badge-img { width:112px; height:112px; object-fit:contain; margin-bottom:20px; }

/* --- 3-Jahre-Garantie seal (inline svg) --- */
.garantie-seal { width:150px; height:150px; flex-shrink:0; filter: drop-shadow(0 8px 24px rgba(0,0,0,.6)); }
.garantie-seal text { font-family:'Playfair Display', serif; }
.garantie-seal .lbl { font-family:'Outfit', sans-serif; }

/* --- GARANTIE SECTION (main page) --- */
.garantie-section { border-top:1px solid var(--black-border); }
.garantie-card {
  margin-top:60px; background:var(--copper-glow);
  border:1px solid rgba(196,149,106,0.15); padding:64px;
  display:grid; grid-template-columns:auto 1fr; gap:48px; align-items:center;
}
.garantie-content .kicker { font-size:12px; color:var(--copper); letter-spacing:3px; text-transform:uppercase; margin-bottom:12px; }
.garantie-content h3 { font-family:'Playfair Display',serif; font-size:30px; font-weight:400; color:var(--cream); margin-bottom:16px; line-height:1.25; }
.garantie-content h3 em { color:var(--copper); font-style:italic; }
.garantie-content p { font-size:16px; font-weight:300; color:var(--gray); line-height:1.8; margin-bottom:28px; max-width:560px; }

/* --- Forms (shared) --- */
.form-card { background:var(--black-soft); border:1px solid var(--black-border); padding:40px; }
.form-field { margin-bottom:22px; }
.form-field label { display:block; font-size:13px; color:var(--cream); letter-spacing:.5px; margin-bottom:8px; font-weight:400; }
.form-field .opt { color:var(--gray-dim); font-weight:300; }
.form-field input, .form-field select, .form-field textarea {
  width:100%; background:var(--black); border:1px solid var(--black-border);
  color:var(--white); font-family:'Outfit',sans-serif; font-size:15px;
  padding:15px 18px; transition:border-color .3s; border-radius:2px;
}
.form-field input:focus, .form-field select:focus, .form-field textarea:focus { outline:none; border-color:var(--copper); }
.form-field .hint { font-size:12px; color:var(--gray-dim); margin-top:6px; font-weight:300; }
.form-field textarea { resize:vertical; min-height:110px; }
.btn-full { width:100%; justify-content:center; border:none; }
.form-legal { font-size:12px; color:var(--gray-dim); line-height:1.7; margin-top:18px; font-weight:300; }
.form-legal a { color:var(--copper-dark); }
.form-success { display:none; text-align:center; padding:48px 32px; }
.form-success.show { display:block; }
.form-success .chk { width:60px;height:60px;border:1.5px solid var(--copper);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 24px; }
.form-success h3 { font-family:'Playfair Display',serif;font-size:26px;color:var(--cream);font-weight:400;margin-bottom:14px; }
.form-success p { color:var(--gray); font-weight:300; line-height:1.8; max-width:420px; margin:0 auto; }

/* --- Registration page --- */
.reg-header { padding:28px 40px; display:flex; justify-content:center; border-bottom:1px solid rgba(196,149,106,0.08); }
.reg-main { max-width:640px; margin:0 auto; padding:60px 32px 100px; }
.reg-hero { text-align:center; margin-bottom:48px; }
.reg-hero .badge-3j-wrap { display:flex; justify-content:center; margin-bottom:32px; }
.reg-hero h1 { font-family:'Playfair Display',serif; font-size:clamp(30px,5vw,42px); font-weight:400; color:var(--white); line-height:1.2; margin-bottom:18px; }
.reg-hero h1 em { color:var(--copper); font-style:italic; }
.reg-hero p { font-size:17px; color:var(--gray); font-weight:300; line-height:1.7; max-width:480px; margin:0 auto; }
.benefit-cards { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:40px; }
.benefit-card { background:var(--black-soft); border:1px solid var(--black-border); padding:28px; }
.benefit-card .bc-icon { color:var(--copper); margin-bottom:14px; }
.benefit-card h4 { font-size:16px; color:var(--cream); font-weight:500; margin-bottom:8px; }
.benefit-card p { font-size:13.5px; color:var(--gray); font-weight:300; line-height:1.6; }
.reg-trust { margin-top:40px; display:flex; align-items:center; gap:24px; padding:28px; border:1px solid rgba(196,149,106,0.15); background:var(--copper-glow2); }
.reg-trust img { width:84px; height:84px; flex-shrink:0; border-radius:50%; }
.reg-trust .rt-text { font-size:14px; color:var(--gray); font-weight:300; line-height:1.7; }
.reg-trust .rt-text a { color:var(--copper); text-decoration:none; }
.reg-footer { text-align:center; padding:40px 32px; border-top:1px solid var(--black-border); }
.reg-footer .tagline { font-size:13px; color:var(--gray-dim); font-style:italic; max-width:420px; margin:0 auto 16px; line-height:1.6; }
.reg-footer .links { display:flex; gap:24px; justify-content:center; }
.reg-footer .links a { color:var(--gray-dim); font-size:12px; text-decoration:none; letter-spacing:1px; }
.reg-footer .links a:hover { color:var(--copper); }

/* --- Unternehmen (B2B) page --- */
.b2b-hero { padding:160px 40px 80px; text-align:center; max-width:900px; margin:0 auto; }
.b2b-hero h1 { font-family:'Playfair Display',serif; font-size:clamp(32px,5vw,52px); font-weight:400; line-height:1.2; margin-bottom:24px; }
.b2b-hero h1 em { color:var(--copper); font-style:italic; }
.b2b-hero p { font-size:18px; color:var(--gray); font-weight:300; line-height:1.7; max-width:600px; margin:0 auto; }
.process-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-top:60px; }
.process-step { text-align:center; padding:36px 24px; border:1px solid var(--black-border); background:var(--black-soft); position:relative; }
.process-step .pn { font-family:'Playfair Display',serif; font-size:40px; color:var(--copper); margin-bottom:14px; }
.process-step h4 { font-size:17px; color:var(--cream); font-weight:500; margin-bottom:10px; }
.process-step p { font-size:14px; color:var(--gray); font-weight:300; line-height:1.7; }
.b2b-form-wrap { max-width:640px; margin:0 auto; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }

@media (max-width:900px) {
  .garantie-card { grid-template-columns:1fr; text-align:center; padding:40px 28px; }
  .garantie-seal { margin:0 auto; }
  .benefit-cards { grid-template-columns:1fr; }
  .process-steps { grid-template-columns:1fr; }
  .form-row { grid-template-columns:1fr; }
  .reg-trust { flex-direction:column; text-align:center; }
  .reg-trust img { margin:0 auto; }
}
.garantie-content strong { color: var(--cream); font-weight: 500; }

/* ================= WOW & GLOW UPDATE ================= */

/* Ambient copper field behind everything */
body::before{
  content:''; position:fixed; inset:0; pointer-events:none; z-index:0;
  background:
    radial-gradient(650px circle at 12% 12%, rgba(196,149,106,0.06), transparent 60%),
    radial-gradient(780px circle at 88% 84%, rgba(196,149,106,0.05), transparent 62%);
}
.hero, section, footer, .reg-main, .reg-header, .reg-footer, .b2b-hero { position:relative; z-index:1; }
nav{ z-index:100; }

/* Hero: bigger glow + gentle pulse */
.hero::before{
  width:1000px; height:1000px;
  background: radial-gradient(ellipse, rgba(196,149,106,0.12) 0%, transparent 68%);
  animation: heroPulse 7s ease-in-out infinite;
}
@keyframes heroPulse{ 0%,100%{opacity:.68;} 50%{opacity:1;} }

/* Glowing accent type */
.section-title em, .hero h1 em, .b2b-hero h1 em, .reg-hero h1 em { text-shadow: 0 0 30px rgba(196,149,106,0.35); }

/* Primary button: ambient glow + shimmer sweep */
.btn-primary{ position:relative; overflow:hidden; box-shadow:0 8px 28px rgba(196,149,106,0.22); }
.btn-primary:hover{ box-shadow:0 12px 46px rgba(196,149,106,0.42); }
.btn-primary::after{
  content:''; position:absolute; top:0; left:-130%; width:60%; height:100%;
  background:linear-gradient(120deg, transparent, rgba(255,255,255,0.35), transparent);
  transform:skewX(-20deg);
}
.btn-primary:hover::after{ animation: sweep .9s ease; }
@keyframes sweep{ to{ left:150%; } }
.nav-cta{ transition:all .3s; }
.nav-cta:hover{ box-shadow:0 6px 24px rgba(196,149,106,0.3); }

/* Cards: glow border + lift */
.feature-card, .benefit-card, .process-step, .why-item{
  transition: border-color .4s, box-shadow .4s, transform .4s;
}
.feature-card:hover, .benefit-card:hover, .process-step:hover, .why-item:hover{
  border-color: rgba(196,149,106,0.45);
  box-shadow: 0 24px 60px rgba(0,0,0,0.55), 0 0 50px rgba(196,149,106,0.10);
  transform: translateY(-5px);
}
.feature-card::before{ background:linear-gradient(90deg, transparent, var(--copper), transparent); }

/* Badges & seals glow */
.perfectfit-seal{ box-shadow:0 10px 34px rgba(0,0,0,0.75), 0 0 0 1px rgba(196,149,106,0.28), 0 0 46px rgba(196,149,106,0.22) !important; }
.garantie-seal{ filter: drop-shadow(0 0 26px rgba(196,149,106,0.30)) drop-shadow(0 8px 24px rgba(0,0,0,.6)); }
.feature-badge-img{ filter: drop-shadow(0 0 22px rgba(196,149,106,0.26)); transition:filter .4s; }
.feature-card:hover .feature-badge-img{ filter: drop-shadow(0 0 36px rgba(196,149,106,0.5)); }

/* Premium panels get illuminated backdrop */
.perfectfit-card, .garantie-card, .form-card{
  box-shadow: 0 30px 80px rgba(0,0,0,0.5), 0 0 60px rgba(196,149,106,0.06);
}
.garantie-card{ background: radial-gradient(130% 150% at 0% 0%, rgba(196,149,106,0.13), var(--copper-glow) 46%); }
.perfectfit-card{ background: radial-gradient(130% 150% at 100% 0%, rgba(196,149,106,0.11), var(--copper-glow) 52%); }

/* Form focus glow */
.form-field input:focus, .form-field select:focus, .form-field textarea:focus{
  box-shadow:0 0 0 3px rgba(196,149,106,0.12);
}

/* B2B hero glow */
.b2b-hero::before{
  content:''; position:absolute; top:-80px; left:50%; transform:translateX(-50%);
  width:920px; height:720px; z-index:-1; pointer-events:none;
  background:radial-gradient(ellipse, rgba(196,149,106,0.12), transparent 66%);
}

/* WARUM section (B2B business case) */
.why-section{ border-top:1px solid var(--black-border); }
.why-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:56px; }
.why-item{ display:flex; gap:22px; padding:32px; background:var(--black-soft); border:1px solid var(--black-border); }
.why-item .wi-ic{ flex-shrink:0; width:46px; height:46px; border:1px solid var(--copper-dark); border-radius:50%; display:flex; align-items:center; justify-content:center; color:var(--copper); box-shadow:0 0 24px rgba(196,149,106,0.10) inset; }
.why-item h4{ font-size:17px; color:var(--cream); font-weight:500; margin-bottom:8px; }
.why-item p{ font-size:14px; color:var(--gray); font-weight:300; line-height:1.7; }
@media(max-width:900px){ .why-grid{ grid-template-columns:1fr; } }

/* ===== CONSENT CHECKBOX ===== */
.form-consent { margin-top: 4px; margin-bottom: 22px; }
.checkbox-label { display:flex; gap:12px; align-items:flex-start; cursor:pointer; }
.checkbox-label input[type=checkbox]{ width:20px; height:20px; flex-shrink:0; margin-top:2px; accent-color:var(--copper); cursor:pointer; }
.checkbox-label span{ font-size:13px; color:var(--gray); line-height:1.6; font-weight:300; }
.checkbox-label a{ color:var(--copper); }

/* ===== LEGAL PAGES ===== */
.legal-nav { padding:22px 40px; display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid rgba(196,149,106,0.08); position:relative; z-index:1; }
.legal-nav a.back { color:var(--gray); font-size:13px; text-decoration:none; letter-spacing:1px; }
.legal-nav a.back:hover{ color:var(--copper); }
.legal-main { max-width:820px; margin:0 auto; padding:72px 32px 100px; position:relative; z-index:1; }
.legal-main h1 { font-family:'Playfair Display',serif; font-size:clamp(30px,5vw,42px); font-weight:400; color:var(--white); margin-bottom:10px; }
.legal-main .lead { color:var(--gray); font-weight:300; margin-bottom:40px; }
.legal-main h2 { font-family:'Playfair Display',serif; font-size:22px; font-weight:400; color:var(--cream); margin:42px 0 14px; }
.legal-main h3 { font-size:14px; color:var(--copper); font-weight:600; letter-spacing:1px; margin:24px 0 8px; text-transform:uppercase; }
.legal-main p, .legal-main li { font-size:15px; color:var(--gray); font-weight:300; line-height:1.9; margin-bottom:12px; }
.legal-main strong{ color:var(--cream); font-weight:500; }
.legal-main a{ color:var(--copper); word-break:break-word; }
.legal-main ul{ padding-left:22px; margin-bottom:16px; }
.legal-main address{ font-style:normal; color:var(--cream); line-height:1.9; margin-bottom:8px; }
.legal-note{ background:var(--copper-glow2); border:1px solid rgba(196,149,106,0.18); padding:16px 20px; font-size:13px; color:var(--gray); margin-bottom:36px; border-radius:2px; line-height:1.7; }
.legal-footer{ text-align:center; padding:36px; border-top:1px solid var(--black-border); font-size:12px; color:var(--gray-dark); position:relative; z-index:1; }

/* ================= MOBILE OVERFLOW FIXES ================= */
html, body { max-width:100%; overflow-x:hidden; }
img, svg, video { max-width:100%; }
.mobile-only { display:none; }
.features-grid.cols-3 { grid-template-columns:repeat(3,1fr); }

@media (max-width:900px){
  nav { padding:14px 20px; }
  .nav-cta { display:none; }            /* Amazon-Button wandert ins Burger-Menü */
  .mobile-only { display:block; }
  .features-grid.cols-3 { grid-template-columns:1fr !important; }
  .b2b-hero { padding:128px 24px 60px; }
  .b2b-hero::before { width:100%; }
  .amazon-section { padding-bottom:110px; }
  .why-item { padding:26px; }
}

@media (max-width:520px){
  section { padding:60px 20px; }
  .hero { padding:130px 20px 70px; }
  .perfectfit-card, .garantie-card, .form-card { padding:30px 20px; }
  .legal-main, .reg-main { padding-left:20px; padding-right:20px; }
  .legal-nav { padding:16px 20px; }
  .reg-header { padding:22px 20px; }
  .hero h1 { font-size:clamp(30px,8vw,44px); }
  .feature-card, .benefit-card { padding:32px 24px; }
  .amazon-badges { gap:18px 28px; }
}

/* ================= LOGO (crisp + glow) ================= */
.logo-img-nav { height:40px; width:auto; filter: drop-shadow(0 0 10px rgba(196,149,106,0.4)) !important; }
.logo-img-footer { height:46px; width:auto; }
.legal-nav .logo-img-nav, .reg-header .logo-img-nav { height:38px; }
html { scroll-padding-top: 84px; }

/* ================= NAV: scroll-shrink + animated burger ================= */
nav.scrolled { padding-top:12px; padding-bottom:12px; background:rgba(7,7,7,0.94); border-bottom-color:rgba(196,149,106,0.16); }
.nav-burger span { transition: transform .3s ease, opacity .25s ease; }
.nav-burger.open span:nth-child(1){ transform: translateY(7px) rotate(45deg); }
.nav-burger.open span:nth-child(2){ opacity:0; }
.nav-burger.open span:nth-child(3){ transform: translateY(-7px) rotate(-45deg); }

/* tap feedback (touch = no hover) */
.btn-primary:active, .nav-cta:active, .support-email:active { transform: scale(0.98); }
.feature-card:active, .benefit-card:active, .process-step:active, .why-item:active { border-color: rgba(196,149,106,0.45); }

/* 16px inputs prevent iOS auto-zoom */
.form-field input, .form-field select, .form-field textarea { font-size:16px; }

/* ================= HIGH-LEVEL MOBILE (<=900px) ================= */
@media (max-width:900px){
  html { scroll-padding-top: 72px; }
  .logo-img-nav { height:38px; }

  .nav-links{ padding:10px 0 16px; gap:0; box-shadow:0 22px 44px rgba(0,0,0,0.55); }
  .nav-links li{ border-top:1px solid rgba(255,255,255,0.04); }
  .nav-links li:first-child{ border-top:none; }
  .nav-links a{ padding:18px 24px; font-size:16px; letter-spacing:1px; color:var(--cream); }
  .nav-links a:active{ background:rgba(196,149,106,0.07); color:var(--copper); }
  .nav-links li.mobile-only{ padding:16px 24px 6px; }
  .nav-links li.mobile-only a{ display:block; text-align:center; background:var(--copper); color:var(--black); padding:16px; border-radius:2px; font-weight:600; letter-spacing:2px; text-transform:uppercase; font-size:13px; }

  .hero{ min-height:92vh; padding:118px 22px 72px; }
  .hero-badge{ margin-bottom:28px; font-size:10px; }
  .hero h1{ font-size:clamp(34px,8.5vw,50px); line-height:1.1; margin-bottom:22px; }
  .hero-sub{ font-size:16px; margin-bottom:36px; max-width:none; }
  .hero-cta-group{ flex-direction:column; align-items:center; width:100%; gap:14px; }
  .hero-cta-group .btn-primary{ width:100%; justify-content:center; padding:18px 28px; }
  .scroll-indicator{ display:none; }

  section{ padding:72px 22px; }
  .section-title{ font-size:clamp(26px,6.5vw,36px); }
  .features-grid, .features-grid.cols-3{ gap:16px; margin-top:40px; }

  .feature-card{ text-align:center; padding:40px 26px; }
  .feature-badge-img{ width:104px; height:104px; margin-left:auto; margin-right:auto; }
  .feature-card .feature-stat{ justify-content:center; }
  .feature-card::before{ opacity:1; }

  .story{ gap:36px; }
  .story-visual{ min-height:260px; }
  .story-quote{ padding:28px; max-width:none; }

  .perfectfit-card, .garantie-card{ text-align:center; gap:28px; padding:40px 26px; }
  .perfectfit-content .contact-line{ margin-left:auto; margin-right:auto; }
  .garantie-content .btn-primary{ width:100%; justify-content:center; }
  .perfectfit-seal, .garantie-seal{ margin:0 auto; }

  .support-email{ width:100%; justify-content:center; font-size:16px; }
  .amazon-section .btn-primary{ width:100%; justify-content:center; }

  .form-card{ padding:28px 22px; }
  .btn-full{ padding:18px; font-size:14px; }

  footer{ padding:52px 22px; }
  .footer-top{ flex-direction:column; align-items:center; text-align:center; gap:28px; }
  .footer-brand{ align-items:center; }
  .footer-brand .tagline{ max-width:320px; }
  .footer-links{ flex-wrap:wrap; justify-content:center; gap:18px 24px; }
  .footer-links a{ font-size:13px; }
  .footer-bottom{ flex-direction:column; gap:14px; text-align:center; }

  .b2b-hero h1{ font-size:clamp(30px,8vw,46px); }
  .b2b-hero p{ font-size:16px; }
  .process-steps{ gap:16px; margin-top:40px; }
  .reg-hero h1{ font-size:clamp(28px,7.5vw,40px); }
  .reg-trust{ padding:24px; }
}

@media (max-width:400px){
  .hero h1{ font-size:34px; }
  .feature-badge-img{ width:92px; height:92px; }
  .btn-primary{ letter-spacing:1.5px; }
  section{ padding:60px 18px; }
}

@media (prefers-reduced-motion: reduce){
  .hero::before{ animation:none; }
  html{ scroll-behavior:auto; }
}

/* ===== KI-KENNZEICHNUNG (EU AI Act, Art. 50) ===== */
.ai-label{
  position:absolute; z-index:6; bottom:14px; right:14px;
  display:inline-block; width:auto; max-width:calc(100% - 28px);
  white-space:nowrap; line-height:1;
  font-family:'Outfit',sans-serif; font-size:10px; font-weight:400;
  letter-spacing:1.5px; text-transform:uppercase;
  color:rgba(240,230,218,0.75);
  background:rgba(7,7,7,0.55);
  padding:6px 12px; border-radius:100px;
  border:1px solid rgba(196,149,106,0.22);
  pointer-events:none; user-select:none;
}
@media (max-width:900px){ .ai-label{ font-size:9px; padding:5px 10px; } }
