/* Tischlerei Peteritsch — Modernize v2.0 (Apr 2026) */
/* Neue Sektionen + Hero-Update + Scroll-Reveal + Footer-Badges */

/* === HERO: Partikel === */
.pet-hero__particles { position:absolute; inset:0; z-index:1; pointer-events:none; overflow:hidden; }
.pet-hero__particle { position:absolute; width:2px; height:2px; background:rgba(184,149,63,.3); border-radius:50%; animation:petParticleFloat linear infinite; }
.pet-hero__particle:nth-child(1) { left:10%; top:20%; animation-duration:15s; width:3px; height:3px; }
.pet-hero__particle:nth-child(2) { left:25%; top:60%; animation-duration:20s; animation-delay:-3s; }
.pet-hero__particle:nth-child(3) { left:50%; top:30%; animation-duration:18s; animation-delay:-5s; width:4px; height:4px; background:rgba(0,166,81,.2); }
.pet-hero__particle:nth-child(4) { left:70%; top:70%; animation-duration:22s; animation-delay:-8s; }
.pet-hero__particle:nth-child(5) { left:85%; top:15%; animation-duration:16s; animation-delay:-2s; width:3px; height:3px; }
.pet-hero__particle:nth-child(6) { left:40%; top:80%; animation-duration:25s; animation-delay:-10s; background:rgba(0,166,81,.15); }
@keyframes petParticleFloat {
  0% { transform:translateY(0) translateX(0); opacity:0; }
  10% { opacity:1; }
  90% { opacity:1; }
  100% { transform:translateY(-100vh) translateX(30px); opacity:0; }
}

/* === HERO: Fade-In === */
.pet-hero__content { animation:petHeroFadeIn 1.2s cubic-bezier(.22,1,.36,1) forwards; }
@keyframes petHeroFadeIn { 0%{opacity:0;transform:translateY(30px)} 100%{opacity:1;transform:translateY(0)} }

/* === HERO: Overlay verfeinert === */
.pet-hero__overlay { background:linear-gradient(180deg,rgba(0,0,0,.2) 0%,rgba(0,0,0,.45) 50%,rgba(26,26,26,.92) 100%); }

/* === HERO: Persönlicher Gruss === */
.pet-hero__greeting {
  font-family:var(--font-heading); font-style:italic;
  font-size:clamp(.9rem,1.5vw,1.05rem); color:rgba(184,149,63,.8);
  margin:0 auto 2.5rem; max-width:500px; line-height:1.5;
}
.pet-hero__greeting-name {
  display:block; margin-top:.5rem; font-style:normal;
  font-family:var(--font-body); font-size:.85rem; font-weight:600;
  letter-spacing:.05em; color:rgba(255,255,255,.5);
}

/* === HERO: Button Shine === */
.pet-hero__btn--primary { position:relative; overflow:hidden; }
.pet-hero__btn--primary span { position:relative; z-index:1; }
.pet-hero__btn--outline:hover { background:rgba(184,149,63,.05); }

/* === KUNDENSTIMMEN === */
.pet-testimonials { padding:6rem 1.5rem; background:var(--white); text-align:center; position:relative; overflow:hidden; }
.pet-testimonials::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,rgba(184,149,63,.3),transparent); }
.pet-testimonials__inner { max-width:1100px; margin:0 auto; }
.pet-testimonials__label { display:inline-block; font-family:var(--font-body); font-size:.8rem; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--primary); margin-bottom:.75rem; }
.pet-testimonials__title { font-family:var(--font-heading); font-size:clamp(2rem,4vw,3rem); color:var(--dark); margin:0 0 .75rem; }
.pet-testimonials__divider { width:80px; height:3px; background:var(--gradient-brand); margin:0 auto 1.5rem; border-radius:2px; }
.pet-testimonials__subtitle { font-family:var(--font-body); font-size:clamp(1rem,1.5vw,1.1rem); color:#555; max-width:550px; margin:0 auto 3.5rem; line-height:1.6; }
.pet-testimonials__grid { display:grid; grid-template-columns:repeat(2,1fr); gap:2rem; }
.pet-testimonials__card {
  background:var(--cream); border-radius:20px; padding:2.5rem; text-align:left;
  position:relative; transition:transform .3s,box-shadow .3s;
}
.pet-testimonials__card:hover { transform:translateY(-4px); box-shadow:0 12px 36px rgba(0,0,0,.08); }
.pet-testimonials__quote-mark {
  position:absolute; top:1.5rem; right:2rem;
  font-family:var(--font-heading); font-size:5rem; line-height:1;
  color:rgba(0,166,81,.08); pointer-events:none; user-select:none;
}
.pet-testimonials__stars { display:flex; gap:3px; margin-bottom:1.25rem; }
.pet-testimonials__stars svg { width:18px; height:18px; fill:var(--gold); }
.pet-testimonials__text { font-family:var(--font-body); font-size:1rem; color:#444; line-height:1.75; margin:0 0 1.5rem; font-style:italic; }
.pet-testimonials__author { display:flex; align-items:center; gap:.75rem; }
.pet-testimonials__author-avatar {
  width:44px; height:44px; border-radius:50%;
  background:var(--gradient-green); display:flex; align-items:center; justify-content:center;
  color:var(--white); font-family:var(--font-body); font-weight:700; font-size:1rem; flex-shrink:0;
}
.pet-testimonials__author-name { font-family:var(--font-body); font-weight:700; font-size:.95rem; color:var(--dark); display:block; }
.pet-testimonials__author-source { font-family:var(--font-body); font-size:.8rem; color:#999; }
.pet-testimonials__badge {
  margin-top:3rem; display:inline-flex; align-items:center; gap:.75rem;
  padding:12px 24px; background:var(--cream); border-radius:50px;
  border:1px solid rgba(0,166,81,.15);
}
.pet-testimonials__badge-icon { width:28px; height:28px; fill:none; stroke:var(--primary); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.pet-testimonials__badge-text { font-family:var(--font-body); font-size:.85rem; font-weight:600; color:#555; }
.pet-testimonials__badge-text strong { color:var(--primary); }

/* === PROZESS & VERTRAUEN === */
.pet-process {
  padding:5rem 1.5rem; background:linear-gradient(135deg,#1a1a1a 0%,#252525 100%);
  text-align:center; position:relative; overflow:hidden;
}
.pet-process::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; background:var(--gradient-brand); }
.pet-process__inner { max-width:1100px; margin:0 auto; }
.pet-process__label { display:inline-block; font-family:var(--font-body); font-size:.8rem; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--gold); margin-bottom:.75rem; }
.pet-process__title { font-family:var(--font-heading); font-size:clamp(2rem,4vw,2.8rem); color:var(--white); margin:0 0 .75rem; }
.pet-process__divider { width:80px; height:3px; background:var(--gradient-brand); margin:0 auto 1.5rem; border-radius:2px; }
.pet-process__subtitle { font-family:var(--font-body); font-size:clamp(1rem,1.5vw,1.1rem); color:rgba(255,255,255,.55); max-width:550px; margin:0 auto 3.5rem; line-height:1.6; }
.pet-process__steps { display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; position:relative; }
.pet-process__steps::before { content:''; position:absolute; top:40px; left:calc(12.5% + 1rem); right:calc(12.5% + 1rem); height:2px; background:linear-gradient(90deg,#00a651,#b8953f,#00a651,#b8953f); opacity:.3; }
.pet-process__step { position:relative; z-index:1; }
.pet-process__step-number {
  width:80px; height:80px; border-radius:50%; margin:0 auto 1.25rem;
  display:flex; align-items:center; justify-content:center; position:relative;
  background:#1a1a1a;
}
.pet-process__step-number::before { content:''; position:absolute; inset:0; border-radius:50%; background:var(--gradient-green); opacity:.15; }
.pet-process__step-number::after { content:''; position:absolute; inset:4px; border-radius:50%; border:2px solid rgba(0,166,81,.4); }
.pet-process__step-icon { width:32px; height:32px; fill:none; stroke:var(--primary); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; position:relative; z-index:1; }
.pet-process__step-title { font-family:var(--font-heading); font-size:1.2rem; color:var(--white); margin:0 0 .5rem; }
.pet-process__step-text { font-family:var(--font-body); font-size:.9rem; color:rgba(255,255,255,.5); line-height:1.6; margin:0; }
.pet-process__trust {
  display:flex; justify-content:center; gap:3rem; margin-top:3.5rem;
  padding-top:2.5rem; border-top:1px solid rgba(255,255,255,.06); flex-wrap:wrap;
}
.pet-process__trust-item { display:flex; align-items:center; gap:.75rem; }
.pet-process__trust-icon {
  width:40px; height:40px; border-radius:10px; background:rgba(0,166,81,.1);
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.pet-process__trust-icon svg { width:20px; height:20px; fill:none; stroke:var(--primary); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.pet-process__trust-text { font-family:var(--font-body); font-size:.85rem; font-weight:600; color:rgba(255,255,255,.65); text-align:left; line-height:1.3; }
.pet-process__trust-text strong { color:var(--white); display:block; font-size:.9rem; }

/* === FOOTER LOGO (PNG auf dunklem Hintergrund weiß machen) === */
.footer-brand img { filter:brightness(0) invert(1); }

/* === FOOTER BADGES === */
.footer-badges { display:flex; gap:.75rem; flex-wrap:wrap; margin-top:1.25rem; }
.footer-badge {
  display:inline-flex; align-items:center; gap:6px; padding:6px 14px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08);
  border-radius:50px; font-size:.75rem; font-weight:600; color:rgba(255,255,255,.7);
}
.footer-badge svg { width:14px; height:14px; fill:none; stroke:var(--primary); stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }

/* === SCROLL-REVEAL === */
.pet-reveal { opacity:0; transform:translateY(30px); transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1); }
.pet-reveal--visible { opacity:1; transform:translateY(0); }
.pet-reveal--left { transform:translateX(-40px); }
.pet-reveal--left.pet-reveal--visible { transform:translateX(0); }
.pet-reveal--right { transform:translateX(40px); }
.pet-reveal--right.pet-reveal--visible { transform:translateX(0); }
.pet-reveal--delay-1 { transition-delay:.1s; }
.pet-reveal--delay-2 { transition-delay:.2s; }
.pet-reveal--delay-3 { transition-delay:.3s; }
.pet-reveal--delay-4 { transition-delay:.4s; }

/* === ACCESSIBILITY === */
*:focus-visible { outline:2px solid var(--primary); outline-offset:3px; border-radius:4px; }
::selection { background:rgba(0,166,81,.15); color:var(--dark); }

/* === RESPONSIVE === */
@media(max-width:768px) {
  .pet-testimonials__grid { grid-template-columns:1fr; }
  .pet-testimonials__card { padding:2rem; }
  .pet-process__steps { grid-template-columns:repeat(2,1fr); gap:2.5rem 1.5rem; }
  .pet-process__steps::before { display:none; }
  .pet-process__trust { gap:1.5rem; }
  .pet-hero__particles { display:none; }
}
@media(max-width:560px) {
  .pet-testimonials { padding:4rem 1rem; }
  .pet-process { padding:4rem 1rem; }
  .pet-process__steps { grid-template-columns:1fr 1fr; gap:2rem 1rem; }
  .pet-process__trust { flex-direction:column; align-items:center; gap:1rem; }
}
@media(prefers-reduced-motion:reduce) {
  .pet-reveal { opacity:1; transform:none; transition:none; }
  .pet-hero__content { animation:none; }
  .pet-hero__particle { animation:none; display:none; }
  .pet-hero__bg { animation:none; }
  .pet-hero__scroll { animation:none; }
}
