/* ============================================================
   STRONA OGŁOSZENIA — galeria zdjęć + opis (Motoklik 2026).
   Ładowane z object.blade (pojazd + część). Zdjęcia pokazujemy
   w CAŁOŚCI (bez przycinania) w wysokiej rozdzielczości, w schludnej
   ramce zgodnej z rebrandingiem 2026.
   ============================================================ */

/* --- główna galeria: stała, elegancka ramka; pełne zdjęcie (contain) --- */
.slider-workshop.swiper-container {
    /* 2026-07-10: box ma ZAWSZE stały rozmiar — KWADRAT 1:1 (decyzja Daniela;
       wcześniej 4:3). Proporcje zdjęcia NIE zmieniają okna, box nie zależy
       od wysokości panelu bocznego. width:100% jest KONIECZNE: bez niej
       aspect-ratio potrafi wyliczyć szerokość z wysokości i galeria
       wyjeżdża z kolumny pod panel boczny. */
    width: 100%;
    aspect-ratio: 1 / 1;
    background:
        radial-gradient(130% 130% at 50% 0%, #ffffff 0%, #f3f1ec 100%);
    border-radius: 18px !important;
    overflow: hidden;
    border: 1px solid var(--tf-line, #eceae4);
    box-shadow: var(--tf-shadow-sm, 0 8px 26px -18px rgba(24, 18, 30, .26));
}
.slider-workshop.swiper-container .swiper-wrapper { height: 100% !important; }
.slider-workshop.swiper-container .swiper-slide { height: 100% !important; display: flex; }
.slider-workshop.swiper-container .image {
    width: 100%; height: 100%;
    display: flex; align-items: center; justify-content: center;
}
.slider-workshop.swiper-container .image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;     /* CAŁE zdjęcie, nic nie ucięte */
    object-position: center;
    display: block;
}

/* strzałki + przycisk pełnego ekranu ponad tłem letterboxa */
.slider-workshop .swiper-button-prev,
.slider-workshop .swiper-button-next { z-index: 3; }

/* --- pasek miniatur pod galerią: kwadraty 1:1 (height:auto bije main.css
   .slider-workshop-nav .image{height:100%}, żeby aspect-ratio faktycznie działał) --- */
.slider-workshop-nav .swiper-slide .image {
    aspect-ratio: 1 / 1;
    height: auto !important;
    border-radius: 12px; overflow: hidden;
    background: #f3f1ec;
}
.slider-workshop-nav .swiper-slide .image img {
    width: 100% !important; height: 100% !important;
    object-fit: cover; display: block;
}

/* --- opis oferty: typografia zgodna z 2026 --- */
.public-descryption-box {
    font-size: 15.5px;
    line-height: 1.72;
    color: #2c2733;
    word-break: break-word;
}
.public-descryption-box p { margin: 0 0 12px; }
.public-descryption-box p:last-child { margin-bottom: 0; }
.public-descryption-box strong, .public-descryption-box b { color: var(--tf-ink, #141019); }
.public-descryption-box ul,
.public-descryption-box ol { margin: 0 0 12px; padding-left: 22px; }
.public-descryption-box li { margin: 4px 0; }
.public-descryption-box a { color: var(--tf-brand-ink, #C2102A); text-decoration: underline; }
.public-descryption-box img { max-width: 100%; height: auto; border-radius: 12px; }

@media (max-width: 767.98px) {
    .slider-workshop.swiper-container { border-radius: 14px !important; }
}

/* ============================================================
   PANEL BOCZNY — decyzja Daniela (2026-07-10): panel NIE jest
   przyklejony (sticky) — stoi na górze kolumny i normalnie
   odjeżdża przy przewijaniu strony. Nadpisuje position:sticky
   z motoklik-2026.css (ten plik ładuje się później).
   ============================================================ */
@media (min-width: 768px) {
    .tf-offer-row .public-info-sidebar {
        position: static;
        margin-bottom: 0;
    }
}
