/* =====================================================================
   Alternativ-Artikelseite (details_alt) — Stilschicht nach Relaunch-Mockup
   Wirkt NUR innerhalb von .details-alt (fullproductinfo_alt) — Rest des
   Shops bleibt unberührt. Schriften Inter/Outfit folgen später als Dateien.
   ===================================================================== */

.details-alt{
  --ligno:#d4001a;
  --ligno-dark:#a80016;
  --ink:#2c3133;
  --line:#e3e6e3;
  --head:#f5f6f4;
  color:var(--ink);
}

/* ---------- Titelbereich (Mitte) ---------- */
.details-alt .details-title{text-align:left;letter-spacing:-.01em;font-weight:600;}
.details-alt .details-alt-artnum{color:#8a908e;font-size:.85rem;}
.details-alt .details-shortdesc{color:#41484a;}

/* ---------- Galerie: schmal, Hauptbild oben, Thumbs als Leiste darunter ---------- */
@media (min-width:768px){
  .details-alt .details-alt-gallery .gallery>.carousel{display:block;height:auto;width:100%;}
  .details-alt .details-alt-gallery .gallery .wrap{
    display:block;position:relative;width:100%;aspect-ratio:1/1;
    border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden;
  }
  .details-alt .details-alt-gallery .gallery .wrap figure{
    position:absolute;inset:0;margin:0;padding:10px;
    transform:none !important;transition:opacity .2s ease;
  }
  .details-alt .details-alt-gallery .gallery .thumbnails{
    display:flex;flex-direction:row;flex-wrap:wrap;gap:.5rem;margin-top:.6rem;
    max-height:none;min-width:0;overflow:visible;padding:0;align-self:auto;flex-basis:auto;
  }
  .details-alt .details-alt-gallery .gallery .thumbnails .thumb{min-width:0;width:64px;height:64px;margin:0;}
  .details-alt .details-alt-gallery .gallery .thumbnails .thumb img{
    width:100%;height:100%;border:1px solid var(--line);border-radius:6px;padding:2px;
  }
  /* aktives Thumbnail rot markieren (überschreibt die weisse Apex-Markierung) */
  .details-alt .gallery .gallery-helper:nth-child(1):checked~.thumbnails .thumb:nth-of-type(1) img,
  .details-alt .gallery .gallery-helper:nth-child(2):checked~.thumbnails .thumb:nth-of-type(2) img,
  .details-alt .gallery .gallery-helper:nth-child(3):checked~.thumbnails .thumb:nth-of-type(3) img,
  .details-alt .gallery .gallery-helper:nth-child(4):checked~.thumbnails .thumb:nth-of-type(4) img,
  .details-alt .gallery .gallery-helper:nth-child(5):checked~.thumbnails .thumb:nth-of-type(5) img,
  .details-alt .gallery .gallery-helper:nth-child(6):checked~.thumbnails .thumb:nth-of-type(6) img,
  .details-alt .gallery .gallery-helper:nth-child(7):checked~.thumbnails .thumb:nth-of-type(7) img,
  .details-alt .gallery .gallery-helper:nth-child(8):checked~.thumbnails .thumb:nth-of-type(8) img{
    border-color:var(--ligno);box-shadow:0 0 0 1px var(--ligno);
  }
}

/* ---------- Kaufbox ---------- */
.details-alt .details-alt-buybox{background:var(--head);border:1px solid var(--line);border-radius:10px;}
.details-alt .details-alt-buybox .stockFlag{font-weight:600;}
.details-alt .details-alt-buybox .price{
  font-family:"Oswald","Outfit",sans-serif;font-size:2rem;font-weight:600;color:var(--ink);
}
.details-alt .details-alt-buybox .price-from{font-size:.9rem;color:#8a908e;}
.details-alt .details-alt-buybox .vat-info-text{font-size:.8rem;color:#8a908e;}
.details-alt .details-alt-buybox .vat-info-text a{color:#6a716f;}

/* Warenkorb-Button dezent: weiss mit rotem Text, kein roter Block */
.details-alt .details-alt-buybox #toBasket{
  background:#fff;border:1px solid var(--line);color:var(--ligno);font-weight:600;
}
.details-alt .details-alt-buybox #toBasket:hover{background:#fff;border-color:var(--ligno);color:var(--ligno-dark);}
.details-alt .details-alt-buybox #toBasket:disabled,
.details-alt .details-alt-buybox #toBasket[disabled]{
  background:#f1f2f0;border-color:var(--line);color:#9aa09e;opacity:1;cursor:not-allowed;
}
.details-alt .details-alt-buybox #amountToBasket{max-width:90px;background:#fff;flex:0 0 auto;}

/* Zubehör-Sprunglink als ruhiger Rahmen-Button */
.details-alt .details-alt-accessories-link{
  display:inline-flex;align-items:center;gap:.45rem;margin-top:.5rem;
  color:var(--ink);text-decoration:none;border:1px solid var(--ink);
  border-radius:6px;padding:.45rem .85rem;font-weight:600;
}
.details-alt .details-alt-accessories-link:hover{background:#fff;text-decoration:none;}

/* ---------- Rechte Spalte ---------- */
.details-alt .details-alt-side .brand-name{
  font-weight:600;font-size:1.05rem;color:var(--ink);text-decoration:none;
}
.details-alt .details-alt-side .brand-name:hover{color:var(--ligno);}
.details-alt .details-alt-side .product-links .btn{
  background:none;border:0;text-align:left;padding:.15rem 0;
  color:var(--ink);font-size:.9rem;width:auto;box-shadow:none;
}
.details-alt .details-alt-side .product-links .btn:hover{
  background:none;color:var(--ligno);text-decoration:underline;
}
/* Produktsicherheit (GPSR): Aufklapper rechts unten, Langfassung unten (gpsr_alt.html.twig) */
.details-alt details.details-alt-gpsr{border:1px solid var(--line);border-radius:8px;overflow:hidden;font-size:.78rem;line-height:1.45;color:#41484a;}
.details-alt details.details-alt-gpsr summary{list-style:none;cursor:pointer;padding:.5rem 2rem .5rem .7rem;background:#f7f8f6;font-weight:600;color:#6a716f;position:relative;}
.details-alt details.details-alt-gpsr summary::-webkit-details-marker{display:none;}
.details-alt details.details-alt-gpsr summary::after{content:"+";position:absolute;right:.7rem;top:.35rem;color:var(--ligno);font-size:1rem;}
.details-alt details.details-alt-gpsr[open] summary::after{content:"\2212";}
.details-alt .details-alt-gpsr__body{padding:.55rem .7rem .7rem;}
.details-alt .details-alt-gpsr__body a{color:#6a716f;}
.details-alt .details-alt-gpsr__body a:hover{color:var(--ligno);}
.details-alt .details-alt-gpsr__lbl{display:block;font-size:.66rem;letter-spacing:.08em;text-transform:uppercase;color:#8a908e;margin:.5rem 0 .1rem;}
.details-alt .details-alt-gpsr__lbl:first-child{margin-top:0;}
.details-alt .details-alt-gpsr__more{display:inline-block;margin-top:.3rem;}
.details-alt .details-alt-gpsr__warn{border-left:3px solid #b7791f;padding-left:.5rem;}
.details-alt .details-alt-gpsr__warn p{margin:0 0 .3rem;}
.details-alt .details-alt-gpsr__warn ul{margin:0 0 .3rem;padding-left:1rem;}
.details-alt details.details-alt-gpsr-full{border:1px solid #e3e6e3;border-radius:8px;overflow:hidden;color:#41484a;scroll-margin-top:6rem;}
.details-alt details.details-alt-gpsr-full summary{list-style:none;cursor:pointer;padding:.7rem 1rem;background:#f7f8f6;font-weight:600;position:relative;}
.details-alt details.details-alt-gpsr-full summary::-webkit-details-marker{display:none;}
.details-alt details.details-alt-gpsr-full summary::after{content:"+";position:absolute;right:1rem;color:#d4001a;font-size:1.1rem;}
.details-alt details.details-alt-gpsr-full[open] summary::after{content:"\2212";}
.details-alt .details-alt-gpsr-full__inner{padding:.8rem 1rem 1rem;scroll-margin-top:6rem;}
.details-alt .details-alt-gpsr-full__manu{color:#6a716f;font-size:.9rem;margin-bottom:.8rem;}
.details-alt .details-alt-gpsr-full__body{max-width:70ch;}

/* ---------- Feinschliff v2: Thumbs unter das Hauptbild, Titel linksbündig ---------- */
@media (min-width:768px){
  .details-alt .details-alt-gallery .gallery>.carousel{display:flex;flex-direction:column;}
  .details-alt .details-alt-gallery .gallery .wrap{order:1;}
  .details-alt .details-alt-gallery .gallery .thumbnails{order:2;}
}
.details-alt .details-alt-main h1.details-title{text-align:left !important;}

/* ---------- Mengen-Stepper + Lagerstückzahl ---------- */
.details-alt .details-alt-buybox .qty-step{
  background:#fff;border:1px solid var(--line);color:var(--ink);
  font-weight:600;flex:0 0 auto;width:44px;
}
.details-alt .details-alt-buybox .qty-step:hover{background:#fff;border-color:var(--ligno);color:var(--ligno);}
.details-alt .details-alt-buybox #amountToBasket{text-align:center;}
.details-alt .details-alt-buybox .stock-count{font-weight:400;color:#41484a;}

/* Fix: Apex setzt .stockFlag span absolut (für den Punkt) — Stückzahl wieder in den Textfluss */
.details-alt .details-alt-buybox .stockFlag .stock-count{
  position:static;font-size:inherit;line-height:inherit;
}

/* Staffelpreis-Knopf sichtbar machen (Apex färbt ihn weiss-auf-weiss) */
.details-alt .details-alt-buybox .dd-action{
  align-self:flex-start;width:auto;background:#fff;border:1px solid var(--line);
  color:var(--ligno);font-weight:600;font-size:.85rem;padding:.3rem .6rem;
  border-radius:6px;margin-bottom:.5rem;
}
.details-alt .details-alt-buybox .dd-action:hover{border-color:var(--ligno);color:var(--ligno-dark);background:#fff;}

/* Mengenfeld: Zahl sichtbar erzwingen */
.details-alt .details-alt-buybox #amountToBasket{
  color:#2c3133 !important;opacity:1 !important;font-size:1.1rem;
}

/* Fix Mengenfeld: Bootstrap gibt input-group-Feldern width:1% — feste Breite erzwingen */
.details-alt .details-alt-buybox #amountToBasket{
  width:70px !important;flex:0 0 70px !important;
}

/* ---------- Lightbox (grosse Bildvorschau mit Pfeilen, nach Mockup) ---------- */
.details-alt .details-alt-gallery .gallery .wrap figure{cursor:zoom-in;}
.details-alt .lightbox{
  position:fixed;inset:0;background:rgba(0,0,0,.85);display:none;
  align-items:center;justify-content:center;z-index:1080;padding:24px;
}
.details-alt .lightbox.open{display:flex;}
.details-alt .lightbox img{max-width:95vw;max-height:90vh;object-fit:contain;background:#fff;border-radius:6px;}
.details-alt .lightbox__close{
  position:absolute;top:14px;right:20px;background:none;border:0;color:#fff;
  font-size:2.2rem;line-height:1;cursor:pointer;
}
.details-alt .lightbox__nav{
  position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.15);
  border:0;color:#fff;font-size:2.4rem;line-height:1;width:54px;height:74px;
  cursor:pointer;border-radius:6px;
}
.details-alt .lightbox__nav:hover{background:rgba(255,255,255,.3);}
.details-alt .lightbox__prev{left:16px;}
.details-alt .lightbox__next{right:16px;}

/* ---------- Unterer Bereich: Überschriften, Technische-Daten-Tabelle, Downloads, FAQ ---------- */
.details-alt .spec-title{color:var(--ligno);font-weight:600;margin-bottom:.6rem;}
.details-alt .spec{margin:0;}
.details-alt .spec .spec-row{
  display:grid;grid-template-columns:44% 1fr;gap:.2rem 1rem;
  padding:.4rem 0;border-bottom:1px solid var(--line);
}
.details-alt .spec dt{font-weight:600;color:var(--ink);font-size:.92rem;}
.details-alt .spec dd{font-size:.92rem;margin:0;}
@media(max-width:600px){ .details-alt .spec .spec-row{grid-template-columns:1fr;} }
.details-alt .downloads a{text-decoration:none;color:var(--ink);}
.details-alt .downloads a:hover{text-decoration:underline;color:var(--ligno);}
.details-alt .details-alt-faq{color:#41484a;}
.details-alt .details-alt-contact{
  display:inline-flex;align-items:center;gap:.45rem;margin-top:.75rem;
  color:var(--ink);text-decoration:none;border:1px solid var(--ink);
  border-radius:6px;padding:.45rem .85rem;font-weight:600;
}
.details-alt .details-alt-contact:hover{background:var(--head);}

/* ---------- Hinweiskasten (Warenkorb-Sperre) ---------- */
.details-alt .basket-hint{
  display:flex;gap:.5rem;align-items:flex-start;font-size:.88rem;color:#41484a;
  background:#fdf3f4;border:1px solid #f3d4d8;border-left:3px solid var(--ligno);
  border-radius:6px;padding:.55rem .75rem;margin-bottom:.75rem;
}
.details-alt .basket-hint svg{flex:none;margin-top:2px;color:var(--ligno);}

/* ---------- Rechte Spalte: Logo, Downloads, Video-Fenster ---------- */
.details-alt .details-alt-side .brand-logo{max-height:42px;width:auto;}
.details-alt .details-alt-downloads .downloads a{
  display:flex;align-items:flex-start;gap:.4rem;margin-bottom:.45rem;
  color:var(--ink);text-decoration:none;font-size:.92rem;line-height:1.4;
}
.details-alt .details-alt-downloads .downloads a:hover{text-decoration:underline;color:var(--ligno);}
.details-alt .downloads .ico{flex:none;margin-top:2px;}
.details-alt .downloads .ico-pdf{color:var(--ligno);}
.details-alt .downloads .ico-film{color:#41484a;}
.details-alt .vlightbox{
  position:fixed;inset:0;background:rgba(0,0,0,.85);display:none;
  align-items:center;justify-content:center;z-index:1090;padding:24px;
}
.details-alt .vlightbox.open{display:flex;}
.details-alt .vlightbox__frame{width:min(900px,95vw);aspect-ratio:16/9;background:#000;border-radius:6px;overflow:hidden;}
.details-alt .vlightbox__frame iframe{width:100%;height:100%;border:0;}
.details-alt .vlightbox__close{
  position:absolute;top:14px;right:20px;background:none;border:0;color:#fff;
  font-size:2.2rem;line-height:1;cursor:pointer;
}

/* Downloads-Liste überall untereinander (auch im Tab-Bereich) */
.details-alt .downloads a{
  display:flex;align-items:flex-start;gap:.4rem;margin-bottom:.45rem;
  color:var(--ink);text-decoration:none;font-size:.92rem;line-height:1.4;
}
.details-alt .downloads a:hover{text-decoration:underline;color:var(--ligno);}

/* ---------- Template 2: Varianten-Icon-Raster ---------- */
.details-alt .variant-icons{display:flex;flex-wrap:wrap;gap:.5rem;}
.details-alt .variant-icon{
  width:112px;border:1px solid var(--line);border-radius:8px;padding:7px 6px;
  text-align:center;font-size:.82rem;line-height:1.25;color:var(--ink);
  text-decoration:none;background:#fff;
}
.details-alt .variant-icon img{
  width:100%;height:68px;object-fit:contain;margin-bottom:.35rem;display:block;
}
.details-alt .variant-icon span{display:block;}
.details-alt .variant-icon:hover{border-color:var(--ligno);color:var(--ligno);}
.details-alt .variant-icon.active{
  border-color:var(--ligno);box-shadow:0 0 0 1px var(--ligno);color:var(--ligno);font-weight:600;
}

/* ---------- Empfehlungs-Karten (ruhig, ohne Preis) + Abschnittsköpfe ---------- */
.details-alt .section-head{border-bottom:1px solid var(--line);padding-bottom:.5rem;margin:1.8rem 0 1.1rem;}
.details-alt .section-head h2{font-size:1.4rem;margin:0;}
.details-alt .section-head .sub{color:#6a716f;font-size:.92rem;}
.details-alt .prod-card{
  background:#fff;border:1px solid var(--line);border-radius:8px;overflow:hidden;
  height:100%;display:flex;flex-direction:column;
}
.details-alt .prod-card__imgwrap{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;padding:14px;}
.details-alt .prod-card__imgwrap img{max-width:100%;max-height:100%;object-fit:contain;}
.details-alt .prod-card__body{padding:.7rem .9rem .9rem;display:flex;flex-direction:column;flex:1;}
.details-alt .prod-card__title{font-size:.92rem;font-weight:600;line-height:1.3;}
.details-alt .prod-card__title a{color:var(--ink);text-decoration:none;}
.details-alt .prod-card__title a:hover{color:var(--ligno);}
.details-alt .prod-card__more{margin-top:auto;padding-top:.6rem;font-size:.83rem;font-weight:600;color:var(--ligno);text-decoration:none;}
.details-alt .prod-card__more:hover{text-decoration:underline;}

/* Hover-Fix: Apex färbt Button-Text beim Hover weiss — hier mit Vorfahrt übersteuern */
.details-alt .details-alt-buybox #toBasket:hover{
  color:var(--ligno-dark) !important;background:#fff !important;border-color:var(--ligno) !important;
}
.details-alt .details-alt-buybox .dd-action:hover{
  color:var(--ligno-dark) !important;background:#fff !important;border-color:var(--ligno) !important;
}
.details-alt .details-alt-buybox .qty-step:hover{
  color:var(--ligno) !important;background:#fff !important;border-color:var(--ligno) !important;
}
.details-alt .details-alt-side .product-links .btn:hover{
  color:var(--ligno) !important;background:none !important;border-color:transparent !important;
}
.details-alt .details-alt-accessories-link:hover,
.details-alt .details-alt-contact:hover{
  color:var(--ligno-dark) !important;background:#fff !important;
}

/* Graue Info-Fläche entfernen (Mockup hat keine); Inhalte stehen luftig ohne Kasten */
.details-alt .details-information{background:none;padding:.625rem 0;}

/* Brotkrumen-Navigation: Hover lesbar in Rot statt Weiss */
.breadcrumb a:hover,
.breadcrumb .breadcrumb-link:hover{color:#d4001a !important;}

/* Empfehlungs-Karten: eigene Thumb-Bilder in Originalgröße (scharf, lesbare Beschriftung) */
.details-alt .prod-card__imgwrap img{max-width:180px;max-height:180px;}

/* Empfehlungs-Thumbs: echte Größe bis max. 150x150 (100er bleiben 100, 150er dürfen 150) */
.details-alt .prod-card__imgwrap img{
  width:auto;height:auto;max-width:150px;max-height:150px;
}

/* ---------- Hinweisfeld (Zusatztext Detailseite): schlicht zwischen feinen Linien ---------- */
.details-alt .note-plain{
  display:flex;gap:.5rem;align-items:flex-start;font-size:.88rem;color:#41484a;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:.55rem 0;
}
.details-alt .note-plain svg{flex:none;margin-top:2px;color:#6a716f;}

/* FAQ-Links als Links erkennbar */
.details-alt .details-alt-faq a{color:var(--ligno);text-decoration:none;}
.details-alt .details-alt-faq a:hover{text-decoration:underline;color:var(--ligno-dark);}

/* ---------- FAQ-Bereich: Fragen als ruhige Zeilen mit ?-Symbol ---------- */
.details-alt .details-alt-faq p{
  margin:0;border-bottom:1px solid var(--line);
}
.details-alt .details-alt-faq p:last-of-type{border-bottom:0;}
.details-alt .details-alt-faq a{
  display:flex;align-items:flex-start;gap:.55rem;
  padding:.6rem 0;color:var(--ink);text-decoration:none;
  font-size:.95rem;line-height:1.45;
}
.details-alt .details-alt-faq a::before{
  content:"?";flex:none;width:20px;height:20px;margin-top:1px;
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:50%;background:#fdf3f4;border:1px solid #f3d4d8;
  color:var(--ligno);font-weight:700;font-size:.78rem;
}
.details-alt .details-alt-faq a:hover{color:var(--ligno-dark);text-decoration:underline;}
/* Falls Brocki im CMS-Baustein mehr HTML pflegt: Grundstile für Listen & Zwischenüberschriften */
.details-alt .details-alt-faq ul{margin:.3rem 0 .6rem;padding-left:1.1rem;}
.details-alt .details-alt-faq li{margin-bottom:.3rem;}
.details-alt .details-alt-faq h3, .details-alt .details-alt-faq .h5{
  font-size:1.05rem;font-weight:600;margin:.9rem 0 .3rem;color:var(--ink);
}

/* Kontakt-Knopf im FAQ-Bereich: kein ?-Symbol, kompakte Form */
.details-alt .details-alt-faq a.details-alt-contact::before{content:none;}
.details-alt .details-alt-faq a.details-alt-contact{
  display:inline-flex;width:auto;padding:.45rem .85rem;
  font-size:.95rem;color:var(--ink);
}

/* Mengeneinheit am Stepper (z.B. "Set", "Paar", "m") */
.details-alt .details-alt-buybox .qty-unit{
  display:flex;align-items:center;padding:0 .7rem;
  font-size:.95rem;color:#41484a;flex:0 0 auto;
  background:#fff;border:1px solid var(--line);border-left:0;
}

/* Grundpreis: klein, aber deutlich, direkt unter dem Preis (PAngV) */
.details-alt .details-alt-buybox .base-price{
  font-size:.95rem;font-weight:600;color:#41484a;line-height:1.4;
  font-family:"Inter",-apple-system,sans-serif;letter-spacing:0;
}

/* Grundpreis: eigene dezente Zeile unter dem Preis */
.details-alt .details-alt-buybox .base-price{
  display:block;width:100%;margin-top:.1rem;
  font-size:.85rem;font-weight:400;color:#8a908e;
}

/* ---------- Service-Spalte rechts: kompakte Liste statt verlorener Knoepfe ---------- */
.details-alt .details-alt-side .product-links{
  --bs-gutter-y:0;--bs-gutter-x:0;margin-bottom:1.1rem !important;
}
.details-alt .details-alt-side .product-links a.btn,
.details-alt .details-alt-side .product-links a{
  display:block;width:100%;
  background:none !important;border:0 !important;border-radius:0 !important;
  border-bottom:1px solid #f0f1ef !important;
  padding:.32rem 0 !important;margin:0 !important;
  font-size:.85rem !important;line-height:1.3 !important;
  color:#6a716f !important;text-align:left !important;text-decoration:none !important;
  box-shadow:none !important;
}
.details-alt .details-alt-side .product-links a:hover{
  color:#d4001a !important;background:none !important;
}
.details-alt .details-alt-side .product-links > :last-child a{border-bottom:0 !important;}

/* ---------- Langbeschreibungs-Bausteine (ld-*): einmal definiert, ueberall nutzbar ---------- */
.details-alt .ld-facts{background:#fafbf9;border:1px solid #e3e6e3;border-radius:8px;padding:.9rem 1.1rem;margin:1rem 0;}
.details-alt .ld-facts ul{list-style:none;margin:0;padding:0;}
.details-alt .ld-facts li{padding:.2rem 0;}
.details-alt .ld-facts li::before{content:"\2713  ";color:#2e8b57;}
.details-alt .ld-note{background:#fdf6f0;border-left:4px solid #d4001a;border-radius:0 8px 8px 0;padding:.9rem 1.1rem;margin:1rem 0;}
.details-alt .ld-note--tip{background:#f6faf6;border-left-color:#2e8b57;}
.details-alt .ld-note p{margin:0;}
.details-alt .ld-table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.93rem;}
.details-alt .ld-table th{background:#f5f6f4;text-align:left;padding:.55rem .8rem;border-bottom:2px solid #e3e6e3;}
.details-alt .ld-table td{padding:.5rem .8rem;border-bottom:1px solid #eef0ee;vertical-align:top;}
.details-alt .ld-table td:first-child{font-weight:600;white-space:nowrap;}
.details-alt details.ld-faq{border:1px solid #e3e6e3;border-radius:8px;margin-bottom:.5rem;overflow:hidden;}
.details-alt details.ld-faq summary{list-style:none;cursor:pointer;padding:.7rem 1rem;background:#f7f8f6;font-weight:600;position:relative;}
.details-alt details.ld-faq summary::-webkit-details-marker{display:none;}
.details-alt details.ld-faq summary::after{content:"+";position:absolute;right:1rem;color:#d4001a;font-size:1.1rem;}
.details-alt details.ld-faq[open] summary::after{content:"\2212";}
.details-alt details.ld-faq p{padding:.7rem 1rem;margin:0;}
.details-alt .ld-contact{color:#6a716f;text-align:center;margin-top:1.5rem;}

/* ---------- Sehr lange Beschreibungen: sanft kuerzen, kompletter Text bleibt im DOM (SEO) ---------- */
.details-alt-longdesc{position:relative;}
.details-alt-longdesc.is-clamped{max-height:640px;overflow:hidden;}
.details-alt-longdesc.is-clamped::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:90px;
  background:linear-gradient(rgba(255,255,255,0),#fff);
}
.details-alt .longdesc-toggle{
  display:inline-block;margin-top:.4rem;
  background:none;border:0;padding:0;cursor:pointer;
  font-size:.9rem;color:#d4001a;text-align:left;
}
.details-alt .longdesc-toggle:hover{color:#a80016;text-decoration:underline;}

/* Klebende Kaufleiste (mobil): erscheint, sobald die Kaufbox aus dem Bild
   gescrollt ist - Preis links, "In den Warenkorb" rechts (details_alt.js) */
.ligno-buybar{display:none;}
@media (max-width:991.98px){
  .ligno-buybar{
    display:flex;align-items:center;gap:.7rem;
    position:fixed;left:0;right:0;bottom:0;z-index:1060;
    background:#fff;border-top:1px solid #e3e6e3;
    padding:.55rem .9rem calc(.55rem + env(safe-area-inset-bottom,0px));
    transform:translateY(110%);transition:transform .22s ease;
  }
  .ligno-buybar.is-visible{transform:translateY(0);box-shadow:0 -4px 18px rgba(0,0,0,.09);}
  .ligno-buybar__price{font-weight:600;color:#2c3133;white-space:nowrap;font-size:1.05rem;}
  .ligno-buybar__btn{
    flex:1;text-align:center;background:#d4001a;color:#fff;border:0;border-radius:4px;
    padding:.65rem .8rem;font-size:.95rem;font-weight:600;
  }
  .ligno-buybar__btn:active{background:#a80016;}
}

/* ---------- Mobil: unterer Artikelbereich kompakt ---------- */
@media (max-width:991.98px){
  /* ueppige Abschnittsabstaende halbieren */
  .details-alt .row-spacer{margin-top:1.5rem !important;margin-bottom:1.5rem !important;}
  .details-alt .container-xxl.mt-5{margin-top:1.5rem !important;}

  /* Beschreibung: Zwischenueberschriften nicht mehr wuchtig */
  .details-alt-longdesc h2{font-size:1.3rem !important;}
  .details-alt-longdesc h3{font-size:1.12rem !important;}

  /* Technische Daten: Label und Wert nebeneinander, enger; ab 7 Zeilen
     einklappbar (details_alt.js setzt is-clamped + Knopf) */
  .details-alt .spec .spec-row{grid-template-columns:42% 1fr;gap:.5rem;padding:.42rem 0;}
  .details-alt .spec dt{font-size:.85rem;}
  .details-alt .spec dd{font-size:.88rem;}
  .details-alt .spec.is-clamped .spec-row:nth-child(n+7){display:none;}
  .spec-toggle{display:block;background:none;border:0;color:#d4001a;font-weight:600;font-size:.9rem;padding:.5rem 0;cursor:pointer;}

  /* Zubehoer-/Empfehlungs-Karten: wischbare Reihe wie auf der Startseite */
  .details-alt .prod-cards{
    display:flex;flex-wrap:nowrap;overflow-x:auto;scroll-snap-type:x mandatory;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;
    -webkit-mask-image:linear-gradient(90deg,#000 93%,transparent);
    mask-image:linear-gradient(90deg,#000 93%,transparent);padding-bottom:.3rem;
  }
  .details-alt .prod-cards::-webkit-scrollbar{display:none;}
  .details-alt .prod-cards > [class*="col"]{flex:0 0 46%;max-width:46%;scroll-snap-align:start;}
}

/* ---------- OBI-Paket: Sektions-Akkordeon, Service-Zeile, Sprungknopf, Varianten-Sheet ---------- */
.variant-sheet,.variant-sheet-backdrop{display:none;}
@media (max-width:991.98px){
  /* Sprungknopf unter der Kaufbox */
  .details-alt-jump{
    display:block;margin:.6rem 0 0;padding:.55rem .9rem;
    border:1px solid #c9cecb;border-radius:999px;background:#fff;
    text-align:center;color:#2c3133;text-decoration:none;font-size:.92rem;font-weight:600;
  }
  #produktinfos{scroll-margin-top:130px;}

  /* Sektions-Akkordeon: details_alt.js baut .ligno-msec um jede Ueberschriften-Gruppe */
  .ligno-msec{border-top:1px solid #d9ddda;}
  .ligno-msec > .spec-title{
    position:relative;margin:0 !important;cursor:pointer;
    padding:.9rem 1.7rem .9rem 0 !important;color:#2c3133 !important;font-size:1.05rem !important;
  }
  .ligno-msec > .spec-title::after{
    content:"";position:absolute;right:.35rem;top:1.15rem;width:.55rem;height:.55rem;
    border-right:1.8px solid #41484a;border-bottom:1.8px solid #41484a;
    transform:rotate(45deg);transition:transform .2s;
  }
  .ligno-msec.is-open > .spec-title::after{transform:rotate(225deg);top:1.35rem;}
  .ligno-msec > *:not(.spec-title){display:none;}
  .ligno-msec.is-open > *:not(.spec-title){display:revert;}
  .ligno-msec.is-open{padding-bottom:1rem;}

  /* Service-Zeile: Pillen statt gestapelter Buttons, Hersteller-Logo als Kachel */
  .details-alt-side .brand-name{
    display:inline-block !important;border:1px solid #d9ddda;border-radius:8px;
    padding:.45rem .8rem;margin-bottom:.7rem !important;background:#fff;
  }
  .details-alt-side .brand-name .brand-logo{max-height:30px;max-width:120px;width:auto;}
  .details-alt-side .product-links{display:flex;flex-wrap:wrap;gap:.45rem;margin:0 0 1rem !important;}
  .details-alt-side .product-links > [class*="col"]{width:auto !important;flex:0 0 auto !important;}
  .details-alt-side .product-links .btn{
    width:auto !important;border:1px solid #d9ddda !important;border-radius:999px !important;
    background:#fff !important;padding:.42rem .85rem !important;font-size:.85rem !important;
    color:#41484a !important;
  }
  .details-alt-side .details-alt-downloads{display:none;} /* steckt mobil in Sektion Download/Filme */

  /* Varianten ab 7: Ausfuehrung-Zeile + Auswahl-Liste von unten */
  .variant-bar{
    display:flex;align-items:center;gap:.6rem;width:100%;margin:0 0 .9rem;
    padding:.65rem .9rem;border:1.5px solid #2c3133;border-radius:10px;background:#fff;text-align:left;
  }
  .variant-bar__label{font-size:.78rem;color:#6a716f;flex:none;}
  .variant-bar__value{flex:1;min-width:0;font-weight:600;color:#2c3133;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .variant-bar__chev{font-size:1.5rem;line-height:1;color:#6a716f;flex:none;}
  .variant-sheet-backdrop{
    display:block;position:fixed;inset:0;z-index:1095;background:rgba(20,22,21,.4);
    opacity:0;pointer-events:none;transition:opacity .25s ease;
  }
  .variant-sheet{
    display:block;position:fixed;left:0;right:0;bottom:0;z-index:1100;background:#fff;
    border-radius:14px 14px 0 0;max-height:75dvh;overflow-y:auto;-webkit-overflow-scrolling:touch;
    transform:translateY(105%);transition:transform .25s ease;padding:0 1rem 1.2rem;
  }
  body.ligno-vsheet-open .variant-sheet{transform:translateY(0);box-shadow:0 -8px 30px rgba(0,0,0,.18);}
  body.ligno-vsheet-open .variant-sheet-backdrop{opacity:1;pointer-events:auto;}
  body.ligno-vsheet-open{overflow:hidden;}
  .variant-sheet__head{
    display:flex;justify-content:space-between;align-items:center;
    padding:.9rem 0 .6rem;font-weight:600;position:sticky;top:0;background:#fff;z-index:1;
  }
  .variant-sheet__close{border:0;background:none;font-size:1.7rem;line-height:1;padding:.1rem .4rem;color:#41484a;}
  .variant-sheet__item{
    display:flex;align-items:center;gap:.7rem;padding:.55rem 0;
    border-bottom:1px solid #f2f4f1;color:#2c3133;text-decoration:none;
  }
  .variant-sheet__item img{width:44px;height:44px;object-fit:contain;flex:none;}
  .variant-sheet__item.is-active{color:#d4001a;font-weight:600;}
  .variant-sheet__item:last-child{border-bottom:0;}
}

/* Varianten-Sheet: Ruecksprung zum Vaterartikel als oberster Eintrag */
@media (max-width:991.98px){
  .variant-sheet__parent{font-weight:600;border-bottom:1px solid #e3e6e3 !important;}
  .variant-sheet__parenticon{
    width:44px;height:44px;flex:none;display:flex;align-items:center;justify-content:center;
    font-size:1.5rem;color:#6a716f;border:1px solid #e3e6e3;border-radius:8px;
  }
}

/* Video als Galerie-Slide (mobil): Standbild + Play-Knopf, oeffnet das Video-Fenster.
   Label im normalen Textfluss (kein absolute) - iOS malte sonst Artefakte */
@media (max-width:991.98px){
  .gallery-videoslide{margin:0;}
  .gallery-videoslide__btn{display:block;text-decoration:none;}
  .gallery-videoslide__imgwrap{position:relative;display:block;}
  .gallery-videoslide__imgwrap img{width:100%;filter:brightness(.85);display:block;}
  .gallery-videoslide__play{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.92);
    border:1px solid #d9ddda;
  }
  .gallery-videoslide__play::after{
    content:"";position:absolute;top:50%;left:54%;transform:translate(-50%,-50%);
    border-style:solid;border-width:12px 0 12px 20px;
    border-color:transparent transparent transparent #d4001a;
  }
  .gallery-videoslide__label{
    display:block;padding:.45rem .2rem 0;color:#41484a;font-size:.88rem;font-weight:600;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;
  }
}

/* Video-Zugaenge Desktop: Thumb in der Thumbnail-Leiste + Play-Kreis auf dem Bild */
@media (min-width:992px){
  .gallery .thumbnails .gallery-videothumb{
    display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:.12rem;
    width:64px;height:64px;box-sizing:border-box;margin:0 0 0 .3rem;padding:0;cursor:pointer;vertical-align:top;
    background:#fff;border:1px solid #d9ddda;border-radius:6px;
  }
  .gallery .thumbnails .gallery-videothumb:hover{border-color:#d4001a;}
  .gallery-videothumb__play{
    width:0;height:0;border-style:solid;border-width:6px 0 6px 10px;
    border-color:transparent transparent transparent #d4001a;
  }
  .gallery-videothumb__txt{font-size:.62rem;color:#41484a;letter-spacing:.03em;}

  .gallery .carousel{position:relative;}
  .gallery-videobadge{
    position:absolute;right:14px;bottom:auto;z-index:4;
    width:52px;height:52px;border-radius:50%;cursor:pointer;
    background:rgba(255,255,255,.93);border:1px solid #d9ddda;
  }
  .gallery-videobadge::after{
    content:"";position:absolute;top:50%;left:55%;transform:translate(-50%,-50%);
    border-style:solid;border-width:9px 0 9px 15px;
    border-color:transparent transparent transparent #d4001a;
  }
  .gallery-videobadge:hover{border-color:#d4001a;}
}

/* Preis-Einheit + Versandinfo-Link in der Lieferzeile */
.details-alt .price-unit{font-size:1.05rem;font-weight:600;color:#6a716f;margin-left:.15rem;}
.details-alt .stock-shipinfo{
  margin-left:.5rem;font-size:.85rem;color:#6a716f;text-decoration:underline;
  display:inline-flex;align-items:center;gap:.25rem;white-space:nowrap;
}
.details-alt .stock-shipinfo:hover{color:#d4001a;}

/* Versand: i-Symbol am zzgl.-Link + Frei-Grenze-Hinweis in der Kaufbox */
.details-alt .vat-info-text .shipinfo-ico{vertical-align:-2px;margin-left:1px;}
.details-alt .free-ship-hint{font-size:.85rem;color:#41484a;margin:.35rem 0 0;}
.details-alt .free-ship-hint strong{color:#1d7a36;}

/* Lieferumfang prominent in der Kaufzone */
.details-alt .delivery-scope{
  display:flex;align-items:flex-start;gap:.5rem;
  margin:.6rem 0 0;padding:.55rem .7rem;
  background:#f7f8f6;border-radius:6px;font-size:.88rem;color:#41484a;
}
.details-alt .delivery-scope svg{flex:none;margin-top:2px;color:#6a716f;}

/* Variantenleiste: ganz dezente einmalige Aufmerksamkeits-Animation.
   details_alt.js setzt .ligno-attn nur, wenn noch keine Variante gewaehlt ist;
   zwei sanfte Pulse (Rahmen + Hintergrund leicht rot getoent), dann Ruhe. */
@media (prefers-reduced-motion: no-preference) {
  .variant-bar.ligno-attn { animation: ligno-var-attn 2.2s ease-in-out 1s 2; }
  @keyframes ligno-var-attn {
    0%, 100% { border-color: #2c3133; background: #fff; }
    45%      { border-color: #c98d95; background: #fdf7f7; }
  }
}

/* Nachbesserung zu W2 (22.07. abends): width/height-Attribute an den
   Galeriebildern reservieren den Platz (CLS), aber die HOEHE muss dem
   Seitenverhaeltnis folgen - sonst verzerrt das Theme-CSS (nur width
   gesetzt) die Bilder. height:auto stellt das alte Verhalten sicher.
   (Identische Zeilen wurden am 22.07. bereits direkt auf dem Server
   angehaengt - diese Repo-Fassung ist die massgebliche.) */
.details-alt .gallery figure img{height:auto;}
