/* ================== COLLAPSE ================== */
.collapse-container .collapse-content {
  border-bottom: 1px solid #D0D1D3;
  padding-bottom: 20px;
}

.collapse-opiniocollapsen-container .collapse-content {
  padding-left: 15px;
  padding-right: 15px;
}

@media only screen and (min-width: 979px) {
  .projector_page .collapse-opinion-container {
    border-top: 1px solid #ededed;
  }
  .projector_page .collapse-container .collapse-content {
    display: block !important;
    border-color: #EDEDED;
  }
  .projector_page .collapse-opinion-container .collapse-content {
    padding-left: 0;
    padding-right: 0;
    margin-left: -20px;
    margin-right: -15px;
  }
}

@media only screen and (max-width: 978px) {
  .collapse-content-desc {
    padding-top: 30px;
  }
  .collapse-content-desc .row {
    margin-left: 0;
    margin-right: 0;
  }
}

.collapse-container .collapse-title {
  font-size: 19px;
  font-weight: 500;
  color: #111111;
  padding: 18px 0;
  border-bottom: 1px solid #EDEDED;
}

.collapse-container .collapse-title .param_group {
  margin: 0;
  font-size: inherit;
}

.collapse-container.open .collapse-title {
  border-color: #fff;
}

.collapse-container .collapse-content-open {
  display: block;
}

@media only screen and (max-width: 978px) {
  .collapse-container .collapse-title {
    cursor: pointer;
    background-image: url('/data/include/cms/do_open_icon.svg');
    background-position: calc(100% - 15px) center;
    background-repeat: no-repeat;
    border-color: #D0D1D3;
    padding-left: 15px;
  }
}

.colapse-deskop.collapse-container .collapse-title {
  cursor: pointer;
  background-image: url('/data/include/cms/do_open_icon.svg');
  background-position: calc(100% - 30px) center;
  background-repeat: no-repeat;
  border-color: #D0D1D3;
  padding-left: 0;
  padding-right: 35px;
}

.askforproduct__description_txt {
  display: none;
}

.askforproduct {
  padding: 30px 15px 0;
  position: relative;
  margin-bottom: 50px;
  width: 100%;
}

@media only screen and (min-width: 979px) {
  .colapse-deskop.collapse-container .collapse-title {
    padding-left: 15px;
  }
  .collapse-content-open h2 {
    font-size: 21px;
    line-height: 28px;
  }
  .collapse-container .collapse-content-open {
    padding: 50px 0;
  }
  .collapse-container .collapse-content-open.collapse-content-desc {
    padding-bottom: 30px;
  }
  .collapse-container .collapse-title {
    font-size: 26px;
    padding: 30px 0;
  }
  .askforproduct__description_txt {
    padding-top: 80px;
    background-image: url('/data/include/cms/ask_icon.svg');
    background-repeat: no-repeat;
    background-position: center top;
    display: block;
    text-align: center;
    font-size: 14px;
    letter-spacing: 0.35px;
    color: #111111;
  }
  .askforproduct {
    padding: 60px 0;
  }
}

@media only screen and (max-width: 978px) {
  .collapse-container.open .collapse-title {
    background-image: url('/data/include/cms/do_close_icon.svg');
  }
}

.colapse-deskop.collapse-container.open .collapse-title {
  background-image: url('/data/include/cms/do_close_icon.svg');
}

/* ================== BLOG ================== */
.text-center {
  text-align: center;
}

.standar-blog-item p {
  line-height: 30px;
}

.standar-blog-item iframe {
  max-width: 100%;
}

.text_page h1,
.contact_page h1 {
  width: 100%;
  text-align: center;
  font-size: 26px;
  line-height: 34px;
}

@media(min-width: 979px) {
  .text_page h1,
  .contact_page h1 {
    font-size: 36px;
    line-height: 44px;
  }
}

#blog-item.standar-blog-item {
  max-width: none;
  width: 100%;
}

#blog-item.standar-blog-item button {
  margin-bottom: 0;
  width: 100%;
}

#blog-item.standar-blog-item h2 {
  margin-top: 0 !important;
}

#blog-item.standar-blog-item .blog-item_sub h2 {
  font-size: 21px;
  line-height: 32px;
}

.standar-blog-item .hr {
  width: 100%;
  height: 1px;
  background-color: #E5E5E5;
}

.blog-item_section_pd {
  padding: 50px 0;
}

.blog-item_section_h1 {
  padding-bottom: 50px;
}

/* 🔹 NOWA KLASA – wersja z mniejszym paddingiem */
.blog-item_section_pd--compact {
  padding: 20px 0;
}

@media(min-width: 979px) {
  .blog-item_section_pd--compact {
    padding: 30px 0;
  }
}

.bi-deskop {
  display: none;
}

@media(min-width: 979px) {
  #blog-item.standar-blog-item button {
    width: auto;
  }
  #blog-item.standar-blog-item .blog-item_sub h2 {
    font-size: 32px;
    line-height: 42px;
  }
  .blog-item_section_pd {
    padding: 100px 0;
  }
  .blog-item_section_h1 {
    padding-bottom: 70px;
  }
  .bi-mobile {
    display: none;
  }
  .bi-deskop {
    display: block;
  }
}

.bi-boxes {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

.bi-box {
  flex: 0 0 100%;
  color: #fff;
  padding: 0;
}

.box-content {
  padding: 50px 15px 35px;
}

#blog-item.standar-blog-item button a {
  width: 100%;
}

.bi-box-img {
  min-height: 79.5vw;
  width: 100%;
  height: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

#blog-item.standar-blog-item .collapse-title h3 {
  margin: 0 25px 0 0;
  font-size: 18px;
  line-height: 26px;
}

#blog-item.standar-blog-item .collapse-content h4 {
  font-size: 14px;
  margin-top: 0;
  font-weight: 400;
  font-style: italic;
  color: rgb(119, 119, 119);
  line-height: 30px;
}

.standar-blog-item .colapse-deskop.collapse-container.open .collapse-title {
  border-bottom: none;
}

.bi-faq {
  border-top: 1px solid #D0D1D3;
}

@media(min-width: 979px) {
  #blog-item.standar-blog-item .collapse-content h4 {
    font-size: 16px;
  }
  .bi-faq {
    border: 1px solid #D0D1D3;
  }
  #blog-item.standar-blog-item .collapse-content {
    padding-left: 35px;
    padding-right: 35px;
    padding-bottom: 0;
  }
  #blog-item.standar-blog-item .collapse-content p:last-child {
    padding-bottom: 35px;
    margin-bottom: 0;
  }
  #blog-item.standar-blog-item .collapse-title h3 {
    margin-left: 20px;
    font-size: 21px;
    line-height: 32px;
  }
  .box-content {
    padding: 100px 115px 85px;
    min-height: 676px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .bi-box-img {
    min-height: 676px;
  }
  .bi-box {
    flex: 0 0 50%;
  }
  #blog-item.standar-blog-item button a {
    width: auto;
  }
  .section-1140 {
    display: table;
    margin: 0 auto;
    max-width: 1140px;
  }
  .section-870 {
    display: table;
    margin: 0 auto;
    max-width: 870px;
  }
  #blog-item button {
    margin-right: 15px;
  }
}

.blog-item_seciton_green {
  background: #F2F6FE;
  position: relative;
}

#blog-item.standar-blog-item button a {
  border: 1px solid #111;
  background-color: #111;
}

#blog-item.standar-blog-item button a:hover {
  background-color: #353535;
}

#blog-item button a.outline {
  border-color: #111;
  background-color: transparent;
  color: #111;
}

#blog-item button a.outline:hover {
  background: #efefef;
}

#blog-item.standar-blog-item .box-content button a {
  border-color: #fff;
  background-color: #fff;
  color: #111;
}

#blog-item.standar-blog-item .box-content button a:hover {
  background-color: #dfdfdf;
}

#blog-item.standar-blog-item .box-content a.outline {
  border-color: #fff;
  background-color: transparent;
  color: #fff;
}

#blog-item.standar-blog-item .box-content a.outline:hover {
  background: #ebebeb1f;
}

.bi-row-container {
  padding: 0 15px;
}

@media(max-width: 978px) {
  .blog-item_seciton_green {
    margin-left: -15px;
    margin-right: -15px;
  }
  .order-mobile-first {
    order: -1;
  }
  .order-mobile-first img {
    margin-bottom: 15px;
  }
  .bi-opinion .d-flex > div {
    flex: 0 0 100% !important;
    padding-left: 0 !important;
    padding-top: 30px;
  }
  .menu-panel.col-nav-inline .account_link,
  .menu-panel.col-nav-inline .wishes_link {
    width: 28px;
    height: 28px;
  }
  .col-nav-inline #menu_basket > a {
    width: 28px;
    height: 28px;
  }
  .standar-blog-item iframe {
    height: 55vw;
  }
  .bi-row-container .col-md-6,
  .bi-row-container .col-md-12 {
    padding-right: 0;
    padding-left: 0;
  }
  #blog-item.standar-blog-item button:nth-child(n + 2):not(.contact-form-send) {
    margin-top: 6px;
  }
  .colapse-deskop.collapse-container .collapse-title {
    background-position: right center;
  }
  .bi-boxes {
    margin-left: -15px;
    margin-right: -15px;
  }
}

.bi-links a {
  text-decoration: none;
  margin-bottom: 30px;
}

.bi-links a img {
  vertical-align: middle;
}

.bi-links a span {
  max-width: calc(100% - 52px);
  display: inline-block;
  margin-left: 15px;
  vertical-align: middle;
  font-size: 18px;
  line-height: 1.1;
  font-weight: 500;
}

.bi-container {
  height: 100%;
  display: flex;
  align-items: center;
}

#blog-item.standar-blog-item form label {
  font-size: 1.4rem;
}

#blog-item.standar-blog-item form textarea {
  padding-left: 16px;
}

#blog-item.standar-blog-item form button {
  padding-left: 30px;
  padding-right: 30px;
  margin-top: 25px;
  width: auto;
  letter-spacing: 0.35px;
  font-weight: 500;
}

#blog-item.standar-blog-item form .reult-contact-form div {
  font-size: 13px;
  background-color: #D3F9E9;
  border-radius: 6px;
  padding: 10px 10px 10px 40px;
  margin-top: 20px;
  background-image: url('/data/include/cms/new_contact_form_ok.svg');
  background-position: 10px center;
  background-repeat: no-repeat;
  line-height: 18px;
}

#blog-item.standar-blog-item .blog-item_section-mobile-100 {
  width: 100%;
}

#blog-item.standar-blog-item .bi-boreder-box {
  border: 1px solid #D0D1D3;
  border-bottom: none;
  padding: 30px 35px;
}

.cms-green-payments {
  padding: 30px 35px;
}

.bi-boreder-box-row {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

ul li,
ol li {
  margin-bottom: 6px;
}

@media(max-width: 978px) {
  #blog-item.standar-blog-item .cm, .text_menu__txt .cm {
      overflow: initial;
      max-width: none;
  }
  #blog-item.standar-blog-item .blog-item_section-mobile-100 {
    margin-left: -30px;
    margin-right: -30px;
    width: calc(100% + 60px);
  }
  #blog-item.standar-blog-item .bi-boreder-box {
    padding: 18px 15px;
    border-left: none;
    border-right: none;
  }
  .cms-green-payments {
    padding: 18px 15px;
  }
  .bi-boreder-box-row {
    flex-direction: column;
    align-items: start;
  }
  .bi-boreder-box-row > div {
    margin-left: 20px;
    flex-direction: column;
    align-items: start !important;
  }
  .bi-boreder-box-row > div .text-right {
    text-align: left !important;
    margin-left: 0 !important;
  }

}

  @media(max-width: 978px) {
  .blog-item_section_pd--compact .order-mobile-first img {
    margin-bottom: 0px;
  }
}

/* Ukrycie sekcji polityki bezpieczeństwa IAI w koszyku */
#menu_security_policy.menu_box.securityPolicy {
    display: none !important;
}

/* Ukrycie dokładnej ilości sztuk na karcie produktu */
#projector_amount {
    display: none !important;
}

/* ==========================================================================
   BLUSCAN - TYPOGRAFIA (FINAL v3)
   Sekcje: Opisy produktów, Boksy, FAQ (Text & Headers), Strony info
   ========================================================================== */

/* 1. Wspólne style dla tekstu podstawowego i list (14px / 23px) */
/* Dodano: .questions__question h3 (Pytania w FAQ) */
.bi-content p, .bi-content ul, .bi-content ol, .bi-content li,
#projector_longdescription p, #projector_longdescription ul, #projector_longdescription ol, #projector_longdescription li,
.box-content p, .box-content ul, .box-content ol, .box-content li,
.collapse-content p, .collapse-content ul, .collapse-content ol, .collapse-content li,
.standar-blog-item .text-center p, .standar-blog-item .text-center ul, .standar-blog-item .text-center ol, .standar-blog-item .text-center li,
.questions__question h3 {
    font-size: 14px !important;
    line-height: 23px !important;
}

/* 2. Stylizacja nagłówków H2 i elementów o wadze Regular (Weight 400) */
/* Dodano: .questions__question h3 */
.bi-content h2,
#projector_longdescription h2,
.box-content h2,
.collapse-content h2,
.standar-blog-item .text-center h2,
.questions__question h3 {
    font-weight: 400 !important;
}

/* 3. Stylizacja nagłówków H3 na stronach tekstowych (Lekkie + Większy oddech) */
.standar-blog-item .text-center h3 {
    font-weight: 400 !important;
    line-height: 1.6 !important;
}

/* 4. Odstępy pod akapitami */
.bi-content p,
#projector_longdescription p,
.box-content p,
.collapse-content p,
.standar-blog-item .text-center p {
    margin-bottom: 15px;
}

/* 5. Odstępy między punktami listy */
.bi-content li,
#projector_longdescription li,
.box-content li,
.collapse-content li,
.standar-blog-item .text-center li {
    margin-bottom: 10px; 
}

/* 6. Reset marginesów dla list zagnieżdżonych */
.bi-content li p,
#projector_longdescription li p,
.box-content li p,
.collapse-content li p,
.standar-blog-item .text-center li p {
    margin-bottom: 0;
}

/* 7. Odstęp górny dla przycisków */
.bi-content .btn,
#projector_longdescription .btn,
.box-content .btn,
.collapse-content .btn,
.standar-blog-item .text-center .btn {
    margin-top: 7px !important;
}

/* --- BLUSCAN SEO CONTENT STYLES (Start) --- */

.seo-content-container {
    max-width: 100%;
    margin-top: 40px;
    font-family: inherit;
    line-height: 1.6;
    color: #333;
}

/* Nagłówki */
.seo-content-container h2 {
    font-size: 1.5em;
    margin-bottom: 15px;
    font-weight: 700;
    color: #1a1a1a;
}

.seo-content-container h3 {
    font-size: 1.2em;
    margin-top: 25px;
    margin-bottom: 10px;
    font-weight: 600;
    color: #1a1a1a;
}

/* Linki - Kolory marki */
.seo-content-container a {
    color: #009cab !important;
    text-decoration: underline;
    font-weight: bold;
    transition: color 0.2s ease;
}

.seo-content-container a:hover {
    color: #00666f !important;
}

/* Tabele - Responsywne i czytelne */
.seo-table-wrapper {
    overflow-x: auto;
    margin-bottom: 20px;
}

.seo-content-container table {
    width: 100%;
    border-collapse: collapse;
    min-width: 300px;
    font-size: 0.95em;
}

.seo-content-container th {
    background-color: #f8f9fa;
    border-bottom: 2px solid #ddd;
    padding: 10px;
    text-align: left;
    font-weight: 600;
}

.seo-content-container td {
    border-bottom: 1px solid #eee;
    padding: 10px;
}

/* Listy i Akcenty */
.seo-list-accent li {
    margin-bottom: 10px;
    padding-left: 10px;
    border-left: 3px solid #009cab; /* Kolor marki */
    list-style: none;
}

/* Boxy (Cross-sell / Info) */
.seo-box {
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    padding: 15px;
    border-radius: 4px;
    margin-top: 30px;
}

.seo-separator {
    border: 0;
    border-top: 1px solid #eee;
    margin: 30px 0;
}

/* FAQ i inne */
.seo-faq-item {
    margin-bottom: 20px;
}
.seo-faq-question {
    margin-bottom: 5px;
    font-weight: bold;
    display: block;
}
.seo-faq-answer {
    margin-top: 0;
}

/* --- BLUSCAN SEO CONTENT STYLES (End) --- */

.cms-green{background: #008B740F;padding:25px;}
.cms-green-img{padding-right:15px;}
.cms-green-img img{min-width:47px;}
.cms-green-desc-1{color:#008B74;line-height:25px;font-weight:500;font-size:18px;}
.cms-green-desc-2{padding-top:5px;line-height:17px;font-size:14px;letter-spacing:0.35px;}
@media (max-width:978px){
.cms-green{margin-bottom:25px;}}
@media (min-width:979px){
.cms-green-img{padding-right:20px;}
.cms-green{align-items:center;padding:25px 15px;}
}

/* --- BLUSCAN SEKCJA W STOPCE BANER I LOGO --- */

/* Kontener główny - usunięty margines górny (0 zamiast 20px) */
.footer-custom-banners {
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
}

/* Rząd z logotypami - 3 kolumny */
.footer-logos-row {
    display: flex;
    gap: 14px; 
    margin-bottom: 14px;
}

/* Pojedynczy szary box */
.footer-logo-box {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: #F8F8F8;
    padding: 14px;
    flex: 1;
    text-decoration: none;
    min-height: 140px;
    box-sizing: border-box;
    border: 1px solid transparent;
    transition: all 0.2s ease-in-out;
    text-align: center;
}

/* Wewnętrzny kontener dla logotypów z podpisami */
.footer-box-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px; /* Odstęp między logo a tekstem */
}

/* Teksty pod logotypami */
.footer-box-caption {
    font-size: 13px;
    color: #333;
    line-height: 1.3;
    display: block;
}

/* Hover: ciemniejsze tło + obrys */
.footer-logo-box:hover {
    background-color: #f0f0f0;
    border-color: #d1d1d1;
}

/* Specyficzne wymiary dla logo VET (Desktop) */
.footer-logo-box img.img-vet {
    width: 140px;
    height: 116px;
    object-fit: contain;
}

/* Pozostałe logotypy */
.footer-logo-box img:not(.img-vet) {
    max-width: 100%;
    height: auto;
    max-height: 80px;
    display: block;
}

/* Baner na dole */
.footer-banner-row img {
    width: 100%;
    height: auto;
    display: block;
}

/* -------------------------------------- */
/* Responsywność - Wersja Mobilna         */
/* -------------------------------------- */
@media (max-width: 767px) {
    .footer-custom-banners {
        margin-top: 0px;
    }

    .footer-logos-row {
        flex-direction: column;
        gap: 8px;
        margin-bottom: 8px;
    }
    
    .footer-logo-box {
        width: 100%;
        padding: 15px; /* Margines w środku boksów zgodnie z prośbą */
        min-height: auto; 
    }

    /* Zaktualizowane logo VET na telefonie */
    .footer-logo-box img.img-vet {
        width: 130px;
        height: auto;
    }

    .footer-box-caption {
        font-size: 12px;
    }
}