/* MineShop Werkzeug-Stile (26.08.2026) - umgezogen aus customHeadJsFiles.
   Block 1: abgespeckte Symbolschrift fuer die Portal-Leiste (78 KB statt 3,9 MB).
   Block 2: Hinweis "beiliegende Inhaltsstoffe" ausblenden. */
@font-face{font-family:"MineShop Symbole";font-style:normal;font-weight:300 700;font-display:block;src:url(https://automobile.mineshop.de/fonts/symbols.woff2) format("woff2")}#msPortalLeiste .material-symbols-outlined{font-family:"MineShop Symbole" !important}

.article-declaration-alert{display:none !important}
/* ===== Kompakte Kategorieliste am Handy (26.08.2026, Noli - Vorbild Galaxus) =====
   Aus der Kachel wird eine Zeile: Bild links, rechts Preis zuerst, dann Name,
   darunter Varianten und Kaufknopf. Nur bis 760px - Desktop bleibt unveraendert. */
@media (max-width:760px){
  .cms-listing-row > .cms-listing-col{flex:0 0 100%;max-width:100%;
    border-bottom:1px solid #eceff2;padding:10px 4px 14px;margin:0}
  .cms-listing-row > .cms-listing-col:last-child{border-bottom:0}
  .cms-listing-row .card.product-box{border:0;box-shadow:none;border-radius:0;background:transparent}
  .cms-listing-row .card.product-box .card-body{display:grid;grid-template-columns:116px 1fr;
    column-gap:14px;align-items:start;padding:0;position:relative}
  /* Bildspalte */
  .cms-listing-row .card.product-box .product-image-wrapper{grid-column:1;grid-row:1 / span 5;
    height:auto;min-height:0;padding:0;margin:0}
  .cms-listing-row .card.product-box .product-image-wrapper img{max-height:116px;object-fit:contain}
  /* Energiepfeil klein unter das Bild */
  .cms-listing-row .card.product-box .ms-en{grid-column:1;justify-self:start;margin:4px 0 0;
    transform:scale(.82);transform-origin:left top}
  /* Rabatt-Badges klein aufs Bild */
  .cms-listing-row .card.product-box .product-badges{position:absolute;left:0;top:0;z-index:3;
    transform:scale(.8);transform-origin:left top}
  /* Bestands-Abzeichen kompakter in die Bildecke */
  .cms-listing-row .card.product-box .ms-bestand{font-size:9.5px !important;padding:2px 5px !important;
    right:4px !important;top:4px !important;left:auto !important}
  /* Infospalte: Preis zuerst, dann Name */
  .cms-listing-row .card.product-box .product-info{grid-column:2;display:flex;flex-direction:column;
    gap:3px;padding:0;margin:0}
  .cms-listing-row .card.product-box .product-price-info{order:-1;margin:0;padding:0}
  .cms-listing-row .card.product-box .product-price-info .product-price,
  .cms-listing-row .card.product-box .product-price{font-size:17.5px;font-weight:800;margin:0;line-height:1.2}
  .cms-listing-row .card.product-box .product-name{order:0;font-size:14px;line-height:1.35;margin:0;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:0}
  .cms-listing-row .card.product-box .product-variant-characteristics{order:1;font-size:12px;
    color:#8a939b;min-height:0;margin:0}
  /* Kaufbereich kompakt rechtsbuendig */
  .cms-listing-row .card.product-box .product-action{order:10;margin:8px 0 0;display:flex;justify-content:flex-end}
  .cms-listing-row .card.product-box .product-action .btn{padding:7px 14px;font-size:13.5px;border-radius:999px}
}

/* Feinschliff Kompaktliste (2. Runde) */
@media (max-width:760px){
  .cms-listing-row .card.product-box .product-image-wrapper{position:relative}
  .cms-listing-row .card.product-box .product-info,
  .cms-listing-row .card.product-box .product-info > *{text-align:left !important;justify-content:flex-start}
  .cms-listing-row .card.product-box .product-price-info,
  .cms-listing-row .card.product-box .product-price-info *{text-align:left !important;margin-left:0 !important}
  .cms-listing-row .card.product-box .product-info{min-height:0 !important;height:auto !important}
  .cms-listing-row .card.product-box .product-name{min-height:0 !important}
  /* Der Details/Kauf-Knopf zieht die Zeile sonst in die Laenge (margin-top:auto im Theme) */
  .cms-listing-row .card.product-box .product-action{margin-top:6px !important;justify-content:flex-start !important}
  .cms-listing-row .card.product-box .product-action .btn{padding:6px 16px;font-size:13px}
  /* Zeilenhoehe eng am Inhalt */
  .cms-listing-row .card.product-box .card-body{min-height:0}
  .cms-listing-row > .cms-listing-col{padding:12px 4px}
}

/* Runde 3: explizite Gitterplaetze - Info NEBEN das Bild, nicht darunter */
@media (max-width:760px){
  .cms-listing-row .card.product-box .card-body{grid-template-rows:auto auto}
  .cms-listing-row .card.product-box .product-image-wrapper{grid-row:1 !important;grid-column:1}
  .cms-listing-row .card.product-box .ms-en{grid-row:2;grid-column:1}
  .cms-listing-row .card.product-box .product-info{grid-column:2 !important;grid-row:1 / span 2 !important;align-self:start}
  .cms-listing-row .card.product-box .product-variant-characteristics:empty{display:none}
  .cms-listing-row .card.product-box .product-action{text-align:left !important}
  .cms-listing-row .card.product-box .product-action .btn{margin:0}
}

/* Polier-Runde: Typografie und Details-Zeiger */
@media (max-width:760px){
  .cms-listing-row .card.product-box .product-price{font-size:19px;letter-spacing:-.2px}
  .cms-listing-row .card.product-box .product-name{font-weight:400;color:#2a3138}
  .cms-listing-row .card.product-box .product-name b{font-weight:800}
  /* Details: schlanker Zeiger rechts statt grauer Klops */
  .cms-listing-row .card.product-box .product-action{justify-content:flex-end !important;text-align:right !important;margin-top:2px !important}
  .cms-listing-row .card.product-box .product-action .btn{background:transparent;border:0;box-shadow:none;
    color:#f8821f;font-weight:700;font-size:13.5px;padding:4px 2px}
  .cms-listing-row .card.product-box .product-action .btn::after{content:" \203A";font-size:16px}
}

/* Energie-Label ueber den Preis (Wunsch Noli) */
@media (max-width:760px){
  .cms-listing-row .card.product-box .product-image-wrapper{grid-row:1 / span 2 !important}
  .cms-listing-row .card.product-box .ms-en{grid-column:2 !important;grid-row:1 !important;
    justify-self:start;align-self:start;margin:0 0 4px !important;
    transform:scale(.72);transform-origin:left top}
  .cms-listing-row .card.product-box .product-info{grid-row:2 !important}
}

/* Unsichtbare Merkmal-Platzhalterzeile raus, Details enger */
@media (max-width:760px){
  .cms-listing-row .card.product-box .product-variant-characteristics{display:none !important}
  .cms-listing-row .card.product-box .product-action{margin-top:0 !important}
}

/* Kopfzeile: schweben beim Hochwischen, abtauchen beim Runterscrollen (kopfzeile.js) */
@media (max-width:760px){
  .header-main.ms-kopf-fix{position:fixed !important;top:0;left:0;right:0;z-index:1040;
    background:#fff;box-shadow:0 2px 14px rgba(15,30,50,.10);
    transition:transform .22s ease;transform:translateY(0)}
  .header-main.ms-kopf-fix.ms-kopf-weg{transform:translateY(-105%);box-shadow:none}
  body.ms-kopf-platz{padding-top:var(--ms-kopf-h,125px)}
}

/* Brotkrumen am Handy: "Du bist hier:" weg, eine schlanke wischbare Zeile (26.08.2026, Noli) */
@media (max-width:760px){
  .breadcrumb-pretext{display:none !important}
  .breadcrumb-container{padding-top:4px;padding-bottom:2px}
  .breadcrumb-container .breadcrumb{flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;font-size:11.5px;margin:0;padding:2px 0}
  .breadcrumb-container .breadcrumb::-webkit-scrollbar{display:none}
  .breadcrumb-container .breadcrumb-item{white-space:nowrap;color:#8a939b}
  .breadcrumb-container .breadcrumb-item a{color:#8a939b}
}

/* Produktseite am Handy zusammenquetschen (26.08.2026, Noli):
   Ziel - Titel, Bild, Preis, Energie und Kaufknopf ohne Scrollen sichtbar. */
@media (max-width:760px){
  .is-ctl-product .cms-section{padding-top:4px !important;padding-bottom:4px !important}
  .is-ctl-product .cms-block{padding-top:0 !important;padding-bottom:0 !important}
  .is-ctl-product h1.product-detail-name{font-size:23px;line-height:1.2;margin:2px 0 0}
  .is-ctl-product .product-detail-manufacturer{margin:2px 0 2px !important;font-size:13px;color:#8a939b}
  .is-ctl-product .product-detail-media{margin-bottom:4px !important}
  .is-ctl-product .gallery-slider-row{margin-top:0 !important}
  .is-ctl-product .product-detail-price-container{margin-top:0 !important}
  .is-ctl-product .product-detail-buy .ms-en-gross{margin:2px 0 !important}
}

/* Nachzug: die Block-Container des Seitenbaukastens tragen die Hauptluft */
@media (max-width:760px){
  .is-ctl-product .cms-block-container{padding-top:4px !important;padding-bottom:4px !important}
  .is-ctl-product .gallery-slider-row{margin-bottom:6px !important}
  .is-ctl-product .product-detail-buy{margin-bottom:6px !important}
}

/* Letzter Zug: Restluft ueber dem Titel + Galerie sanft deckeln */
@media (max-width:760px){
  .is-ctl-product .breadcrumb-container{margin-bottom:0 !important}
  .is-ctl-product .cms-page > .cms-section:first-child .cms-block-container{padding-top:0 !important}
  .is-ctl-product .cms-page > .cms-section:first-child{padding-top:0 !important}
  .is-ctl-product .gallery-slider-item img{max-height:210px !important;object-fit:contain;width:auto;margin:0 auto}
  .is-ctl-product .gallery-slider-row .gallery-slider-item{display:flex;align-items:center;justify-content:center}
}

/* Kaufbox innen eng: Steuer-/Lieferzeilen ohne Grossabstaende */
@media (max-width:760px){
  .is-ctl-product .product-detail-buy > *{margin-top:3px !important;margin-bottom:3px !important}
  .is-ctl-product .product-detail-tax-container{font-size:11.5px}
}

/* Praezisionsschnitt Kaufbox: Lieferzeile + Varianten-Gruppe eng */
@media (max-width:760px){
  .is-ctl-product .product-detail-delivery-information{margin-bottom:4px !important}
  .is-ctl-product .delivery-information{margin-bottom:2px !important;padding-top:2px !important}
  .is-ctl-product .product-detail-configurator-group{margin-bottom:4px !important}
  .is-ctl-product .product-detail-configurator-group-title{margin-bottom:2px !important;font-size:12.5px}
}

/* Marken-Zeile auf der Produktseite raus - die Marke steht schon im Titel (Wunsch Noli) */
@media (max-width:760px){
  .is-ctl-product .product-heading-manufacturer-logo-container{display:none !important}
}

/* Galerie-Hoehe wirklich deckeln: der Schiebe-Baukasten (tns) traegt sie inline */
@media (max-width:760px){
  .is-ctl-product .p2lab-product-video__gallery,
  .is-ctl-product .cms-element-image-gallery,
  .is-ctl-product .gallery-slider-row,
  .is-ctl-product .base-slider.gallery-slider,
  .is-ctl-product .gallery-slider-row .tns-outer,
  .is-ctl-product .gallery-slider-row .tns-ovh{max-height:242px !important;height:auto !important}
  .is-ctl-product .gallery-slider-item img{max-height:236px !important}
}

/* Bilder sauber EINPASSEN statt beschneiden: beide Richtungen begrenzt,
   Seitenverhaeltnis bleibt - hoch, quer, quadratisch, alles ganz im Rahmen */
@media (max-width:760px){
  .is-ctl-product .gallery-slider-item img{
    max-height:236px !important;max-width:100% !important;
    width:auto !important;height:auto !important;
    object-fit:contain !important;margin:0 auto !important;display:block}
  .is-ctl-product .gallery-slider-item{display:flex !important;align-items:center !important;
    justify-content:center !important}
}

/* Einpassen fuer ALLE Produktbild-Bausteine (Schieber UND Einzelbild) */
@media (max-width:760px){
  .is-ctl-product .product-detail-media img:not(.zoom-modal-wrapper img):not(.zoom-modal img),
  .is-ctl-product .cms-element-image-gallery img:not(.zoom-modal-wrapper img):not(.zoom-modal img){
    max-height:236px !important;max-width:100% !important;
    width:auto !important;height:auto !important;
    object-fit:contain !important;margin:0 auto !important;display:block}
}

/* Shop-Portal-Leiste randlos-nativ wie in den Portalen (26.08.2026, Noli):
   buendig an den Kanten und am unteren Rand - sitzt direkt ueber der
   Browser-Leiste und wirkt mit ihr wie aus einem Guss. */
@media (max-width:760px){
  #msPortalLeiste{left:0 !important;right:0 !important;bottom:0 !important;
    border-radius:0 !important;border:0 !important;border-top:1px solid #e4e9ef !important;
    padding-bottom:calc(12px + env(safe-area-inset-bottom)) !important;
    box-shadow:0 -8px 26px rgba(15,30,50,.12) !important;background:#fff !important}
  body{padding-bottom:calc(96px + env(safe-area-inset-bottom)) !important}
}

/* Safari-Material fuer die Shop-Leiste: durchscheinend + Milchglas wie die
   Browser-Leiste darunter - wirkt wie EIN durchgehendes Band (26.08.2026, Noli) */
@media (max-width:760px){
  #msPortalLeiste{background:rgba(249,249,249,.88) !important;
    -webkit-backdrop-filter:saturate(180%) blur(18px) !important;
    backdrop-filter:saturate(180%) blur(18px) !important;
    box-shadow:none !important;border-top:.5px solid rgba(0,0,0,.12) !important}
}

/* Farbton exakt aus Nolis Screenshot gemessen: Safari-Leiste = rgb(248,249,249).
   Voll deckend, damit der Ton konstant bleibt wie beim Browser-Band darunter. */
@media (max-width:760px){
  #msPortalLeiste{background:rgb(248,249,249) !important;
    -webkit-backdrop-filter:none !important;backdrop-filter:none !important}
}

/* Endgueltig (Noli): Leiste rein weiss wie der Shop-Hintergrund */
@media (max-width:760px){
  #msPortalLeiste{background:#ffffff !important}
}

/* Nahtlos: auch die Haarlinie weg - nichts als reines Weiss */
@media (max-width:760px){
  #msPortalLeiste{border-top:0 !important;border:0 !important}
}



/* Shopping-Blitzer weg: hat die Menue-Ebene nur EINEN Eintrag (= die sinnlose
   Shopping-Station), ist sie unsichtbar - der Auto-Sprung klickt sie blind durch.
   Ebenen mit echten Kategorien haben viele Eintraege und bleiben unberuehrt. */
@media (max-width:760px){
  .navigation-offcanvas-list-item:only-child{opacity:0 !important}
}

/* "Zeige alle Kategorien" (fuehrt auf eine leere Seite) am Handy entfernen */
@media (max-width:760px){
  .navigation-offcanvas-overlay a.is-home-link{display:none !important}
}

/* Web-Ansicht (Safari): Leiste 5mm (~19px) tiefer - rueckt naeher an die
   Browser-Leiste. In der Heimbildschirm-App (standalone) bleibt alles wie es ist. */
@media (max-width:760px){
  #msPortalLeiste{transform:translateY(19px)}
}
@media (max-width:760px) and (display-mode: standalone){
  #msPortalLeiste{transform:none}
}

/* ===== Aehnliche Artikel kompakt, Version 2 (27.08.2026, Noli) =====
   Der Schieber BLEIBT Schieber (wischen wie gewohnt) - nur die Karte selbst
   traegt das kompakte Zeilen-Format der Kategorienliste. Ein Drittel der Hoehe. */
@media (max-width:760px){
  .is-ctl-product .product-slider .tns-ovh{height:auto !important}
  .is-ctl-product .product-slider .card.product-box{border:0;box-shadow:none;background:transparent}
  .is-ctl-product .product-slider .card.product-box .card-body{display:grid;
    grid-template-columns:116px 1fr;grid-template-rows:auto auto;column-gap:14px;
    align-items:start;padding:6px 4px;position:relative}
  .is-ctl-product .product-slider .card.product-box .product-image-wrapper{grid-column:1;grid-row:1 / span 2;
    height:auto;min-height:0;padding:0;margin:0;position:relative}
  .is-ctl-product .product-slider .card.product-box .product-image-wrapper img{max-height:116px;object-fit:contain}
  .is-ctl-product .product-slider .card.product-box .ms-en{grid-column:2;grid-row:1;
    justify-self:start;align-self:start;margin:0 0 4px;transform:scale(.72);transform-origin:left top}
  .is-ctl-product .product-slider .card.product-box .ms-bestand{font-size:9.5px !important;
    padding:2px 5px !important;right:4px !important;top:4px !important;left:auto !important}
  .is-ctl-product .product-slider .card.product-box .product-info{grid-column:2;grid-row:2;
    display:flex;flex-direction:column;gap:3px;padding:0;margin:0;min-height:0 !important}
  .is-ctl-product .product-slider .card.product-box .product-info > *{text-align:left !important}
  .is-ctl-product .product-slider .card.product-box .product-price-info{order:-1;margin:0;padding:0;text-align:left !important}
  .is-ctl-product .product-slider .card.product-box .product-price{font-size:17px;font-weight:800;margin:0;line-height:1.2;text-align:left !important}
  .is-ctl-product .product-slider .card.product-box .product-name{order:0;font-size:13.5px;line-height:1.35;margin:0;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:0 !important;text-align:left !important}
  .is-ctl-product .product-slider .card.product-box .product-variant-characteristics{display:none !important}
  .is-ctl-product .product-slider .card.product-box .product-action{order:10;margin:2px 0 0 !important;
    display:flex;justify-content:flex-end !important}
  .is-ctl-product .product-slider .card.product-box .product-action .btn{background:transparent;border:0;box-shadow:none;
    color:#f8821f;font-weight:700;font-size:13px;padding:3px 2px}
}

/* Aehnliche Artikel: Pfeile weg (wischen!), Inhalt kompakter, Preis links */
@media (max-width:760px){
  .is-ctl-product .product-slider .base-slider-controls,
  .is-ctl-product .product-slider [class*=slider-controls],
  .is-ctl-product .product-slider button[data-controls]{display:none !important}
  .is-ctl-product .product-slider .card.product-box .card-body{grid-template-columns:96px 1fr;column-gap:12px;padding:4px 2px}
  .is-ctl-product .product-slider .card.product-box .product-image-wrapper img{max-height:96px}
  .is-ctl-product .product-slider .card.product-box .ms-en{transform:scale(.62)}
  .is-ctl-product .product-slider .card.product-box .product-price,
  .is-ctl-product .product-slider .card.product-box .product-price-info,
  .is-ctl-product .product-slider .card.product-box .product-price-info *{font-size:15.5px !important;
    text-align:left !important;margin-left:0 !important;justify-content:flex-start !important;font-weight:800}
  .is-ctl-product .product-slider .card.product-box .product-name{font-size:12.5px}
  .is-ctl-product .product-slider .card.product-box .product-action .btn{font-size:12px;padding:2px}
}

/* Wisch-Signale fuer Aehnliche Artikel: Mini-Pfeilchips an den Raendern
   + Auslauf-Schleier rechts. Ersetzt das komplette Verstecken der Pfeile. */
@media (max-width:760px){
  .is-ctl-product .product-slider .base-slider-controls,
  .is-ctl-product .product-slider [class*=slider-controls]{display:block !important}
  .is-ctl-product .product-slider button[data-controls]{display:flex !important;
    position:absolute;top:50%;transform:translateY(-50%);z-index:5;
    width:26px;height:26px;padding:0;border:0;border-radius:999px;
    background:rgba(255,255,255,.92);box-shadow:0 1px 6px rgba(15,30,50,.18);
    align-items:center;justify-content:center;color:#f8821f}
  .is-ctl-product .product-slider button[data-controls=prev]{left:-2px}
  .is-ctl-product .product-slider button[data-controls=next]{right:-2px}
  .is-ctl-product .product-slider button[data-controls] svg,
  .is-ctl-product .product-slider button[data-controls] .icon{width:13px;height:13px}
  /* Auslauf-Schleier rechts: deutet die Fortsetzung an */
  .is-ctl-product .product-slider .tns-ovh{position:relative}
  .is-ctl-product .product-slider .tns-ovh::after{content:"";position:absolute;top:0;right:0;bottom:0;width:26px;
    background:linear-gradient(to left, rgba(255,255,255,.95), rgba(255,255,255,0));pointer-events:none;z-index:4}
}

/* Pfeilchips auf Hoehe der Produktbild-Mitte (Bild 96px + 4px Polster -> Mitte ~52px) */
@media (max-width:760px){
  .is-ctl-product .product-slider button[data-controls]{top:52px !important}
}

/* Pfeilchips etwas einruecken - nicht mehr am Randsaum kleben */
@media (max-width:760px){
  .is-ctl-product .product-slider button[data-controls=prev]{left:8px !important}
  .is-ctl-product .product-slider button[data-controls=next]{right:8px !important}
}

/* ZOOM-BEFREIUNG: im geoeffneten Vollbild-Zoom gelten die 236px-Deckel NICHT -
   dort soll das Bild gross sein. Hebt die Einpassregeln innerhalb von Modalen auf. */
@media (max-width:760px){
  .is-ctl-product .modal img,
  .is-ctl-product [class*=zoom-modal] .modal img,
  .modal .gallery-slider-item img,
  .modal .product-detail-media img{
    max-height:none !important;max-width:none !important}
}

/* MineSuche ist die einzige Vorschlags-Ebene - Shopwares eigenen Vorschlag stumm */
.search-suggest, .js-search-result{display:none !important}

/* 29.08.2026 (Noli): Shop-Leiste in der installierten App einen Hauch tiefer */
@media (display-mode: standalone){ #msPortalLeiste{transform:translateY(10px)} }
/* 29.08.2026 (Noli): verwaistes Minus im Fussbereich - titellose Klappzeile ausblenden */
.footer-column-headline.has-no-headline{display:none !important}
/* 29.08.2026 (Noli): "Letzte Suchen" abgeschnitten - Verlaufs-Panel scrollbar */
#msSucheFeld{overflow-y:auto !important;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
#msSucheFeld > *:last-child{margin-bottom:14px}
/* 30.08.2026 (Noli): Seite nicht mehr verkleinerbar - Breite hart geklemmt */
html,body{overflow-x:hidden !important;max-width:100vw !important}
/* 30.08.2026 (Noli): PC-Navigation zeigt nur noch "Shopping" - die 5 Portal-Reiter
   raus aus der Kategorie-Leiste (jede PC-Breite). Die Portale sitzen unten in der
   Shop-Leiste (#msLeiste). Handy/Tablet-Menue bleibt unangetastet. */
@media (min-width:761px){
  .megamenu-item:has(> a.megamenu-link[href*="kleinanzeigen.mineshop.de"]),
  .megamenu-item:has(> a.megamenu-link[href*="jobs.mineshop.de"]),
  .megamenu-item:has(> a.megamenu-link[href*="automobile.mineshop.de"]),
  .megamenu-item:has(> a.megamenu-link[href*="immobilien.mineshop.de"]),
  .megamenu-item:has(> a.megamenu-link[href*="firmensuche.mineshop.de"]){display:none !important}
}
/* 30.08.2026 (Noli): "Shopping" blitzte beim Laden kurz auf, bevor menue.js die
   Kategorien einbaut. Der Original-Eintrag (einziger mit data-megamenu-trigger,
   unsere Kategorie-Eintraege sind .ms-kat ohne dieses Attribut) ist ab sofort
   von Anfang an unsichtbar - menue.js klickt den versteckten Knopf weiterhin. */
.megamenu-list > .megamenu-item[data-megamenu-trigger]:not(.ms-kat){display:none !important}
/* 30.08.2026 (Noli): Bewegungsqualitaet im Shop - wie in den fuenf Portalen.
   1) Die CSS-Standardkurve "ease" laeuft traege an; echte Ease-out-Kurve startet
      sofort und laeuft sanft aus, wirkt dadurch schneller.
   2) Produktkarten-Hover lief 0.5 s - fuer eine Hover-Rueckmeldung viel zu lang
      (Richtwert unter 0.3 s). Nach-oben-Knopf animierte mit "all" alles mit. */
*{transition-timing-function:cubic-bezier(.32,.72,0,1) !important}
.card{transition-duration:.18s !important}
.scroll-up-button{transition:opacity .2s, visibility .2s, transform .2s !important}
@media (prefers-reduced-motion: reduce){ *{transition:none !important; animation:none !important} }
/* 30.08.2026 (Noli): Shop-Handy, zwei Punkte aus der Pruefung.
   1) TIPPZIELE: Apple/Google verlangen 44px. Konto-Menue, Logo, Produktname und
      der Sprunglink lagen bei 17-37px. Nur die Klickflaeche waechst, die Schrift
      bleibt, wie sie ist. */
.account-menu .list-group-item,
.skip-to-content-link{min-height:44px;display:flex;align-items:center}   /* .header-logo-main-link steht seit 24.09. in layout/meta.html.twig */
.product-name{min-height:44px;display:flex;align-items:center;justify-content:center}
.account-menu .account-aside-item, .account-menu a{min-height:44px;display:flex;align-items:center}
/* 2) LAYOUT-SPRINGEN: Bilder ohne Massangabe lassen den Inhalt beim Laden huepfen.
      Seitenverhaeltnisse aus den echten Dateien gemessen. */
.header-logo-main-img{aspect-ratio:340/39}
.image-slider-image, .cms-teaser-media{aspect-ratio:2/1}
.product-image{aspect-ratio:1/1}
img[src*="Firmensuche-Banner"], img[src*="Kleinanzeigen-Banner"]{aspect-ratio:800/580}
img[src*="Immobilien-Banner"]{aspect-ratio:1246/482}

/* 31.08./01.09.2026 Kopfbalken-Regeln entfernt (24.09.2026): der Kopf wird seit 24.09. in layout/meta.html.twig gesetzt (84px am PC). */

/* 03.09.2026 (Noli): Eingabefelder beim Anmelden/Registrieren/Konto/Kasse - der Rahmen
   war kaum sichtbar (Strasse, Ort, PLZ). Rahmen dunkler, Fokusfarbe des Themes bleibt. */
.is-ctl-auth .form-control, .is-ctl-register .form-control, .is-ctl-account .form-control,
.is-ctl-address .form-control, .is-ctl-checkout .form-control,
.is-ctl-auth .form-select, .is-ctl-register .form-select, .is-ctl-account .form-select,
.is-ctl-address .form-select, .is-ctl-checkout .form-select{
  border-color:#8f99a3 !important;
}
.is-ctl-auth .form-control:focus, .is-ctl-register .form-control:focus, .is-ctl-account .form-control:focus,
.is-ctl-address .form-control:focus, .is-ctl-checkout .form-control:focus,
.is-ctl-auth .form-select:focus, .is-ctl-register .form-select:focus, .is-ctl-account .form-select:focus,
.is-ctl-address .form-select:focus, .is-ctl-checkout .form-select:focus{
  border-color:#f8821f !important;
}

/* 03.09.2026 (Noli): Menuepunkt "Kleinanzeigen" (/marketplace/) aus dem Konto-Menue entfernen -
   in der Konto-Seitenleiste UND im Konto-Dropdown der Kopfzeile. Der Punkt stammt aus einer
   Shopware-Vorlage (kein Serverzugang bei Internex), darum hier ausgeblendet. */
.account-aside-item[href="/marketplace/"], .account-aside-item[href^="/marketplace"]{display:none !important}

/* 19.09.2026 (Noli): Banner auf der Startseite mit abgerundeten Ecken */
.cms-block-zen-grid-8-4 .cms-element-image-slider, .cms-block-zen-grid-8-4 .cms-element-image-slider img, .cms-block-zen-grid-8-4 .cms-element-image-slider .image-slider-item,
.cms-block-image-two-column .cms-element-image, .cms-block-image-two-column .cms-element-image img, .cms-block-image-two-column .cms-image-container,
.cms-block-image-cover .cms-element-image, .cms-block-image-cover .cms-element-image img, .cms-block-image-cover .cms-image-container{ border-radius: 22px; overflow: hidden; }
/* 19.09.2026 (Noli): runde Ecken auch fuer die USP-Leiste und die Teaser-Kacheln (Gamingparadies, Computergalaxie, Handy-Himmel) */
.cms-element-zen-features, .cms-element-zen-features .zen-features-inner, .cms-element-zen-features > div,
.cms-element-zen-teaser, .cms-element-zen-teaser .cms-teaser-inner{ border-radius: 22px; }
.cms-element-zen-teaser img, .cms-element-zen-teaser .cms-image-container, .cms-element-zen-teaser .cms-teaser-image, .cms-element-zen-teaser .cms-teaser-media-container{ border-radius: 22px; }
.cms-element-zen-features .cms-element-zen-features-text{ hyphens: manual; }
/* 19.09.2026 (Noli): Karussell "Meistgekaufte Artikel" kompakter, ziehbar, ohne Pfeile */
.cms-element-product-slider .product-slider-controls-prev, .cms-element-product-slider .product-slider-controls-next{ display: none !important; }
.cms-element-product-slider .ms-ziehbar, .cms-element-product-slider .ms-ziehbar .product-box{ cursor: grab; }
.cms-element-product-slider .ms-ziehbar:active{ cursor: grabbing; }
.cms-element-product-slider .product-box .product-image-wrapper{ height: 150px; max-height: 150px; }
.cms-element-product-slider .product-box .product-image{ max-height: 150px; }
.cms-element-product-slider .product-box .product-name{ font-size: 14px; line-height: 1.3; min-height: 0; margin-top: 8px; }
.cms-element-product-slider .product-box .product-price-info, .cms-element-product-slider .product-box .product-price-wrapper{ margin: 4px 0 0; }
.cms-element-product-slider .product-box .product-description, .cms-element-product-slider .product-box .product-action, .cms-element-product-slider .product-box .product-rating, .cms-element-product-slider .product-box .product-variant-characteristics{ display: none !important; }
.cms-element-product-slider .product-box .card-body{ padding: 12px 10px; }
.cms-element-product-slider .cms-element-title{ font-size: 22px; margin-bottom: 8px; }
/* 24.09.2026 (Noli): Name immer 2 Zeilen hoch, Preis steht bei allen Artikeln auf der 3. Zeile (vorher min-height 0, kurze Namen 1 Zeile) */
.cms-element-product-slider .product-box .product-name{ height: 2.6em; min-height: 2.6em; max-height: 2.6em; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
/* 19.09.2026 (Noli): Karussell laeuft ohne Halt durch - gleichmaessige Bewegung statt Schritt/Pause */
.cms-element-product-slider .tns-slider{ transition-timing-function: linear !important; }
/* 19.09.2026 (Noli): eigenes Laufband statt tiny-slider */
.cms-element-product-slider .ms-laufband{ display: flex; will-change: transform; }
.cms-element-product-slider .ms-laufband-spur{ display: flex; flex: 0 0 auto; margin-right: 16px; }
.cms-element-product-slider .ms-laufband-karte{ flex: 0 0 220px; width: 220px; margin-right: 16px; }
.cms-element-product-slider .ms-laufband .product-box{ margin: 0; height: 100%; }
.cms-element-product-slider .ms-laufband-fenster{ overflow: hidden; width: 100%; }
.cms-element-product-slider .ms-laufband-titel{ font-size: 22px; font-weight: 700; margin: 0 0 12px; }
.cms-element-product-slider .ms-laufband-karte .product-box{ display: block; }
.cms-element-product-slider .ms-laufband img{ -webkit-user-drag: none; user-select: none; }
/* 19.09.2026 (Noli): oranger Strich oben an der Portal-Leiste am PC, wie der Balken am Seitenanfang (Handy bleibt nahtlos weiss) */
@media (min-width: 761px){
  #msLeiste, #msPortalLeiste{ border-top: 8px solid #FF8121 !important; box-shadow: 0 -6px 18px rgba(0,0,0,.06) !important; left: 0 !important; right: 0 !important; }
}
/* 20.09.2026 (Noli): Artikel mit dem eigenen Produktlayout (MS-/ChiroGun-Artikel, Lager Sursee) hatten im CMS-Block 'Galerie + Kaufbox'
   padding-left/right 0 - die Bootstrap-Zeile (margin -20px) ragte dadurch 20 px ueber beide Raender, Texte wurden am Bildschirmrand
   abgeschnitten. Das Alltron-Layout hat den Theme-Standard 36 px. Am PC bekommen jetzt alle Produktseiten-Bloecke 36 px; Handy unveraendert. */
@media (min-width: 901px){
  .is-ctl-product .cms-block > .cms-block-container{ padding-left: 36px !important; padding-right: 36px !important; }
}

/* 21.09.2026 16:51 (Noli): Offcanvas-Warenkorb. (1) "Zur Kasse" lag hinter der Portal-Leiste (75 px, z 2147481300) - Platz am Ende des
   Korbs, damit der Knopf beim Scrollen frei wird. (2) Zwei Scrollbalken: Bootstrap sperrt nur body, das Theme scrollt aber ueber html -
   bei offenem Korb scrollt nur noch der Korb. Nur PC (min-width 901px), Handy unveraendert. */
@media (min-width: 901px){
  /* 17:01: der Korb endet jetzt OBERHALB der Leiste (Panel 75 px kuerzer), statt Platz am Ende zu lassen */
  .offcanvas.cart-offcanvas{ height: calc(100% - 75px) !important; bottom: 75px !important; }
  .offcanvas.cart-offcanvas .offcanvas-body{ padding-bottom: 24px !important; }
  html:has(.offcanvas.show){ overflow: hidden !important; }
  html.msKorbOffen{ overflow: hidden !important; }
}
/* 21.09.2026 17:05: die Push-Karte (unten rechts, z 2147481400) lag bei offenem Korb ueber "Zur Kasse" - bei offenem Korb ausblenden */
html.msKorbOffen #msPushKarte, html:has(.offcanvas.show) #msPushKarte{ display: none !important; }
/* 21.09.2026 19:08 (Noli: "Produktnummer eingeben und Versanddetails im Warenkorb entfernen, weiss nicht wofuer das ist"):
   Shopware-Zeile unter den Positionen (Artikel per Nummer hinzufuegen + Versandkosten-Aufklapper) auf der Warenkorbseite ausblenden */
.is-ctl-checkout.is-act-cartpage .cart-add-product-container, .is-ctl-checkout.is-act-cartpage .cart-shipping-costs-container, .checkout-cart .cart-add-product-container, .checkout-cart .cart-shipping-costs-container, .cart-add-product-container, .cart-shipping-costs-container { display: none !important; }
/* 21.09.2026 20:18 (Noli: "entferne die Nummer von uns, wir moechten nur Beratungen ueber die Welt annehmen"): Hotline 0800 77 77 22 im
   Kassen-Kopf (header-minimal-contact, Zen-Theme) ausblenden, stattdessen Hinweis auf Lorena */
.header-minimal-contact strong:nth-of-type(2), .header-minimal-contact small, .header-minimal-contact br { display: none !important; }
/* 25.09.2026: Name aus "Mein Assistent" (--ms-assi-name setzt assistent.js, sonst Lorena) */
.header-minimal-contact::after { content: "Frag " var(--ms-assi-name, "Lorena") ", die Welt unten auf der Seite hilft dir sofort."; display: block; font-size: 13px; color: #64748b; margin-top: 2px; }
a[href="tel:0800777722"] { display: none !important; }

/* 24.09.2026 (Noli, Bildschirmfoto O'Yeet Shaker: "Schrift faengt zu weit links an ohne Sicherheitsabstand").
   Gemessen: die eigenen O'Yeet-Produktlayouts (Shaker Bottle, Walking Pad, Laufband, Massageguns, Waagen) setzen bei
   Titel, Kaufbox, Beschreibung und Zubehoer den seitlichen Abstand auf 0 (style="padding-left: 0"). Preis, Farbe,
   Lagerbestand usw. begannen darum am Handy bei 0 px statt wie im Standard-Layout bei 20 px.
   Nur am Handy, nur Bloecke mit Abstand 0 - Standard-Seiten haben diesen Stil nicht und bleiben unveraendert. */
@media (max-width:767px){
  .cms-block-product-heading > .cms-block-container[style*="padding-left: 0"],
  .cms-block-gallery-buybox > .cms-block-container[style*="padding-left: 0"],
  .cms-block-product-description-reviews > .cms-block-container[style*="padding-left: 0"],
  .cms-block-cross-selling > .cms-block-container[style*="padding-left: 0"]{padding-left:20px !important;padding-right:20px !important}
}

/* 24.09.2026 18:10 (Noli, Bilder aus der App): am Handy den Lorena-Kasten (Set-Berater) und "Zuletzt angesehen" so breit wie
   die anderen Kaesten (Wochendeal-Karte 20px Rand), und in "Zuletzt angesehen" immer 2 ganze Artikel nebeneinander. */
@media (max-width:767px){
  .msSb, .msZs{padding-left:0 !important;padding-right:0 !important}
  .msZsL{scroll-snap-type:x mandatory}
  .msZsA{flex:0 0 calc((100% - 12px) / 2) !important;box-sizing:border-box;scroll-snap-align:start;min-width:0}
}

