:root{--color-primary:#ae1010;--color-primary-darker:#850b0b;--color-primary-lighter:#c62424;--color-on-primary:#fff;--color-secondary:#333;--color-bg:#fff;--font-sans:"Roboto Condensed",Arial,sans-serif}body{font-family:"Roboto Condensed",Arial,sans-serif}.btn-primary{background:#ae1010;color:#fff}.btn-primary:hover{background:#850b0b}.vitcas-topbar{background:#ae1010;color:white;padding:.6rem 1.5rem;display:flex;gap:1.5rem;justify-content:space-between;flex-wrap:wrap}.vitcas-topbar a{color:inherit}.custom-top-links__list{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.vitcas-topbar img{max-height:24px;width:auto}.vitcas-footer{background:#f3f3f3;padding-top:2rem;margin-top:2rem}.vitcas-footer .block-title{font-size:1.25rem;margin-bottom:1rem}.vitcas-footer ul{list-style:none;padding:0}.vitcas-footer li{margin:.5rem 0}.vitcas-footer [data-content-type="column-line"]{gap:1.5rem}.vitcas-footer [data-content-type="column"]{min-width:0}.kowal-payment-icons,.kowal-dostawcy-icons,.kowal-socialmedia-icons{display:flex;gap:.75rem;flex-wrap:wrap;margin:.75rem 0}.payment-icon,.dostawcy-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #ddd;border-radius:.3rem;padding:.5rem;min-width:85px;font-size:.8rem;cursor:pointer}.payment-icon{background:var(--payment-icon-bg,#fff)}.payment-icon img,.dostawcy-icon img{width:70px;height:29px;object-fit:contain}.socialmedia-icon img{max-width:32px}.dostawcy-icons-header{display:flex;justify-content:space-between;margin-top:1rem}.dostawcy-button button{color:#ae1010;text-decoration:underline}.kowal-product-info{margin:1.5rem 0}.kowal-product-info__heading{font-size:1.2rem;font-weight:600}.kowal-product-info__row{display:flex;gap:.75rem;align-items:center;margin:.6rem 0}.kowal-product-info__icon svg{width:28px;height:28px}.kowal-product-info__body{display:flex;gap:.5rem;align-items:center}.field-tooltip-content,.field-tooltip .label{display:none}.field-tooltip-action{display:inline-block;border:1px solid #888;border-radius:50%;width:20px;height:20px;cursor:pointer;text-align:center}.field-tooltip-action:before{content:"?"}.vitcas-dialog{border:0;border-radius:.5rem;padding:2rem;max-width:min(650px,92vw);max-height:85vh;width:100%;overflow:auto}.vitcas-dialog::backdrop{background:#0009}.vitcas-dialog h2{font-size:1.35rem;font-weight:bold;margin-bottom:1rem}.vitcas-close{position:absolute;right:.75rem;top:.4rem;font-size:2rem}.vitcas-dialog form{display:grid;gap:.75rem}.vitcas-dialog input,.vitcas-dialog textarea{border:1px solid #aaa;padding:.6rem;width:100%}.vitcas-dialog [type="submit"]{background:#ae1010;color:#fff;padding:.6rem 1rem}.vitcas-inquiry{margin-top:1rem}.kowal-related-profiles__items[data-role="profile-slider-track"]{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory}.kowal-related-profiles__items[data-role="profile-slider-track"]>.kowal-related-profiles__item{flex:0 0 250px;scroll-snap-align:start}.amblog-post-list .post-items{display:grid;gap:1rem}.amblog-post-list .post-item-photo img{width:100%}.amblog-post-list .post-item-name{display:block;margin:.75rem 0}.cms-page-view h2,.cms-index-index h2{font-size:1.5rem;font-weight:600}.cms-page-view p,.cms-index-index p{margin-bottom:1rem}.cms-index-index .page-main{padding-top:0}.kowal-labels-content{margin:.5rem 0}@media(max-width:767px){.vitcas-topbar{padding:.5rem .75rem;font-size:.85rem}.vitcas-footer [data-content-type="column-line"]{flex-direction:column}.vitcas-footer [data-content-type="column"],.cms-index-index [data-content-type="column"]{width:100%!important}.vitcas-dialog{padding:1.5rem}}
.vitcas-contact-link{position:fixed;right:0;bottom:2rem;z-index:30;background:#ae1010;color:white;padding:.75rem;border-radius:.4rem 0 0 .4rem}.cms-index-index .row,.cms-page-view .row{display:flex;flex-wrap:wrap;margin:0 -.5rem}.cms-index-index [class*="col-"],.cms-page-view [class*="col-"]{padding:0 .5rem}.cms-index-index .col-sm-3,.cms-page-view .col-sm-3{width:25%}.cms-index-index .col-sm-4,.cms-page-view .col-sm-4{width:33.3333%}.cms-index-index .col-sm-6,.cms-page-view .col-sm-6{width:50%}@media(max-width:767px){.cms-index-index [class*="col-sm-"],.cms-page-view [class*="col-sm-"]{width:100%}}
.language-flags--inline{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.language-flags__flag{max-width:24px;height:auto}.language-flags__sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.cms-index-index .products-grid .product-item .actions-secondary{display:none}
.ask-question-form{margin:1rem 0}.ask-form-container:not([hidden]){display:block;margin-top:1rem}.ask-form-container form{display:grid;gap:1rem}.ask-form-container .field{margin:.75rem 0}.ask-form-container textarea,.ask-form-container input[type=text],.ask-form-container input[type=email]{border:1px solid #aaa;padding:.5rem;width:100%}.amfaq_questions details{margin:.75rem 0;border-bottom:1px solid #ddd;padding:.75rem 0}.amfaq_questions summary{cursor:pointer;font-weight:bold}.amfaq_questions .am-content{margin-top:1rem}.availability-table{width:100%;font-size:.85rem}.availability-table td,.availability-table th{padding:.5rem;border:1px solid #ddd}

/* Match shop.vitcas.com's compact links and language strip. */
.vitcas-topbar {
    display: block;
    padding: 0;
    background: #000;
    color: #fff;
    font-size: 14px;
    line-height: 20px;
}
.vitcas-topbar__inner {
    display: flex;
    flex-wrap: wrap;
    min-height: 29px;
    padding-block: 3px;
    gap: 4px 24px;
    align-items: center;
    justify-content: space-between;
}
.vitcas-topbar .custom-top-links--hyva {
    flex: 0 1 auto;
    width: auto;
    max-width: none;
    padding: 0;
    background: transparent;
}
.vitcas-topbar .custom-top-links .custom-top-links__list {
    display: flex;
    flex-wrap: wrap;
    width: auto;
    max-width: none;
    justify-content: flex-start;
    gap: 0 18px;
    font-size: 14px;
    line-height: 20px;
}
.vitcas-topbar .custom-top-links__group,
.vitcas-topbar .custom-top-links__group-list { display: contents; }
.vitcas-topbar .custom-top-links__link,
.vitcas-topbar .custom-top-links__text {
    line-height: 20px;
    white-space: nowrap;
}
.vitcas-topbar .language-flags-hyva {
    flex: 0 0 auto;
    margin-inline-start: auto;
    line-height: 11px;
}
.vitcas-topbar .language-flags-hyva__inline { flex-wrap: nowrap; }
.vitcas-topbar .language-flags-hyva__list > li,
.vitcas-topbar .language-flags-hyva__item { display: flex; align-items: center; }
.vitcas-topbar .language-flags-hyva__flag {
    display: block;
    width: 14px;
    height: 11px;
    max-height: 11px;
}
@media (max-width: 767px) {
    .vitcas-topbar { background: #5d5d5d; }
    .vitcas-topbar__inner { padding: 0 10px; justify-content: center; }
    .vitcas-topbar .custom-top-links--hyva { width: 100%; }
    .vitcas-topbar .custom-top-links .custom-top-links__list { justify-content: center; column-gap: 12px; }
    .vitcas-topbar .language-flags-hyva { display: none; }
}

/* CMS footer: retain its content and widgets while matching the UK storefront. */
#html-body .page-footer {
    margin-top: 32px;
    padding-top: 15px;
    background: #efefef;
    color: #1c1c1c;
    font-size: 14px;
    line-height: 20px;
}
#html-body .page-footer .vitcas-footer { margin: 0; padding: 0; background: transparent; }
#html-body .page-footer > .widget { width: 100%; max-width: none; margin: 0; padding: 0; }
#html-body .page-footer [data-content-type="row"] { padding: 0; }
#html-body .page-footer [data-content-type="row"] > .row-full-width-inner {
    width: 100%;
    margin-inline: auto;
    padding-inline: 24px;
}
#html-body .page-footer [data-content-type="divider"] { padding-top: 20px; }
#html-body .page-footer hr { margin: 0 0 24px; border: 0; border-top: 1px solid #cecece; }
#html-body .page-footer [data-content-type="column-line"] {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    padding-bottom: 24px;
}
#html-body .page-footer .pagebuilder-column { width: auto; min-width: 0; }
#html-body .page-footer .block-title,
#html-body .page-footer .block-title strong { font-size: 14px !important; line-height: 20px; font-weight: 700; }
#html-body .page-footer .block-title { margin-bottom: 16px; }
#html-body .page-footer p { margin: 0; }
#html-body .page-footer ul { margin: 0; padding: 0; list-style: none; }
#html-body .page-footer li { margin: 0; }
#html-body .page-footer .features li { margin-bottom: 2px; }
#html-body .page-footer .contact-info li + li { margin-top: 2px; }
#html-body .page-footer .features a,
#html-body .page-footer .contact-info a { color: #ff0000 !important; text-decoration: none; }
#html-body .page-footer .features a:hover,
#html-body .page-footer .contact-info a:hover { text-decoration: underline; }
#html-body .page-footer .kowal-payment-icons {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 5px;
    margin: 0;
}
#html-body .page-footer .payment-icon {
    min-width: 0;
    height: 37px;
    padding: 4px;
    border: 0;
    border-radius: 4px;
}
#html-body .page-footer .payment-icon img { width: 70px; max-width: 100%; height: 29px; object-fit: contain; }
#html-body .page-footer .kowal-socialmedia-icons { gap: 22px; margin: 20px 8px 0; }
#html-body .page-footer .socialmedia-icon a { display: inline-flex; }
#html-body .page-footer .socialmedia-icon img { width: 30px; height: 30px; }
#html-body .page-footer .socialmedia-icon span {
    position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
    overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
#html-body .page-footer [data-content-type="row"] + [data-content-type="row"] {
    background: #000;
    color: #fff;
    text-align: center;
    padding: 4px 0 2px;
}
#html-body .page-footer [data-content-type="row"] + [data-content-type="row"] + [data-content-type="row"] { padding: 3px 0 7px; }
#html-body .page-footer .language-flags-hyva { display: block; line-height: 11px; }
#html-body .page-footer .language-flags-hyva__inline { justify-content: center; }
#html-body .page-footer .language-flags-hyva__list > li,
#html-body .page-footer .language-flags-hyva__item { display: flex; align-items: center; }
#html-body .page-footer .language-flags-hyva__flag { display: block; max-height: 11px; }
@media (min-width: 640px) { #html-body .page-footer [data-content-type="row"] > .row-full-width-inner { max-width: 640px; } }
@media (min-width: 768px) { #html-body .page-footer [data-content-type="row"] > .row-full-width-inner { max-width: 768px; } }
@media (min-width: 1024px) { #html-body .page-footer [data-content-type="row"] > .row-full-width-inner { max-width: 1024px; } }
@media (min-width: 1280px) { #html-body .page-footer [data-content-type="row"] > .row-full-width-inner { max-width: 1280px; } }
@media (min-width: 1536px) { #html-body .page-footer [data-content-type="row"] > .row-full-width-inner { max-width: 1536px; } }
@media (max-width: 767px) {
    #html-body .page-footer [data-content-type="row"] > .row-full-width-inner { padding-inline: 10px; }
    #html-body .page-footer [data-content-type="column-line"] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 10px; }
    #html-body .page-footer .pagebuilder-column { width: auto !important; }
    #html-body .page-footer .kowal-payment-icons { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #html-body .page-footer .kowal-socialmedia-icons { gap: 16px; margin-inline: 0; }
}
#html-body .page-footer .pagebuilder-column:last-child > [data-content-type="html"] { margin-bottom: 0; }
#html-body .page-footer .socialmedia-icon,
#html-body .page-footer .socialmedia-icon a {
    min-width: 0; width: 30px; height: 30px; padding: 0;
    border: 0; box-shadow: none; background: transparent;
}

/* PageBuilder category cards, shared by the homepage and category landing pages. */
#html-body:is(.cms-index-index,.catalog-category-view) main .pagebuilder-column:has(> figure):has(.block-category-link,.block-category-link-inline) {
    position: relative;
    width: auto !important;
    min-width: 0;
    margin: 0;
    overflow: hidden;
    border-radius: 8px;
    background: #f3f3f3;
}
#html-body:is(.cms-index-index,.catalog-category-view) main [data-content-type="column-line"]:has(> .pagebuilder-column > figure):has(.block-category-link,.block-category-link-inline) {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 20px;
    margin-block: 5px;
}
#html-body.catalog-category-view main [data-content-type="column-line"]:has(> .pagebuilder-column > figure):has(.block-category-link,.block-category-link-inline) { grid-template-columns: repeat(2,minmax(0,1fr)); }
#html-body.catalog-category-view main [data-content-type="column-line"]:has(> .pagebuilder-column:nth-child(3) > figure):has(.block-category-link,.block-category-link-inline) { grid-template-columns: repeat(3,minmax(0,1fr)); }
#html-body:is(.cms-index-index,.catalog-category-view) main [data-content-type="column-line"]:has(> .pagebuilder-column:nth-child(4) > figure):has(.block-category-link,.block-category-link-inline) { grid-template-columns: repeat(4,minmax(0,1fr)); }
#html-body:is(.cms-index-index,.catalog-category-view) main .pagebuilder-column:has(.block-category-link,.block-category-link-inline) > figure { margin: 0; }
#html-body:is(.cms-index-index,.catalog-category-view) main .pagebuilder-column:has(.block-category-link,.block-category-link-inline) > figure img { width: 100%; height: auto; }
#html-body:is(.cms-index-index,.catalog-category-view) main .pagebuilder-column:has(> figure):has(.block-category-link,.block-category-link-inline) > [data-content-type="html"] {
    position: absolute;
    inset: auto 0 0;
    margin: 0;
    padding: 0;
    background: rgb(255 255 255 / 88%);
}
#html-body:is(.cms-index-index,.catalog-category-view) main .pagebuilder-column:has(> figure) :is(.block-category-link,.block-category-link-inline) { display: block; margin: 0; padding: 0; }
#html-body:is(.cms-index-index,.catalog-category-view) main .pagebuilder-column:has(> figure) :is(.block-category-link,.block-category-link-inline) a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 8px 12px;
    color: #ff0000;
    font-size: 18px;
    font-weight: 400;
    line-height: 24px;
    text-align: center;
    text-decoration: none;
}
#html-body:is(.cms-index-index,.catalog-category-view) main .pagebuilder-column:has(> figure) :is(.block-category-link,.block-category-link-inline) a:hover { color: #ae1010; text-decoration: underline; }
#html-body.cms-index-index main .pagebuilder-column:has(> figure) :is(.block-category-link,.block-category-link-inline) a { font-size: 16px; font-weight: 400; line-height: 21px; }
#html-body.cms-index-index main .pagebuilder-column:has(> figure) .block-category-link-inline a:is([href$="/produkty.html"],[href$="/zastosowania.html"],[href*="/calculator/"],[href*="/kalkulator"]) { font-size: 24px; font-weight: 600; line-height: 30px; }
.vitcas-featured-posts__heading { margin: 0 0 16px; font-size: 24px; font-weight: 600; line-height: 32px; }
.vitcas-featured-posts__list { display: grid; gap: 20px; margin: 0; padding: 0; list-style: none; }
.vitcas-featured-posts__card { overflow: hidden; border: 1px solid #d1d5db; border-radius: 8px; background: #fff; box-shadow: 0 2px 5px #0000000a; }
.vitcas-featured-posts__photo { display: block; overflow: hidden; }
.vitcas-featured-posts__photo img { display: block; width: 100%; aspect-ratio: 8 / 5; object-fit: cover; transition: transform .2s; }
.vitcas-featured-posts__photo:hover img { transform: scale(1.03); }
.vitcas-featured-posts__details { padding: 16px; }
.vitcas-featured-posts__title { margin: 0 0 12px; font-size: 18px; font-weight: 600; line-height: 24px; }
.vitcas-featured-posts__title a:hover { color: #ae1010; }
.vitcas-featured-posts__more { display: inline-flex; gap: 8px; align-items: center; color: #ae1010; font-size: 14px; font-weight: 600; }
.vitcas-featured-posts__more:hover { text-decoration: underline; }
@media (max-width: 1023px) and (min-width: 640px) {
    #html-body:is(.cms-index-index,.catalog-category-view) main [data-content-type="column-line"]:has(> .pagebuilder-column > figure):has(.block-category-link,.block-category-link-inline) { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 639px) {
    #html-body:is(.cms-index-index,.catalog-category-view) main [data-content-type="column-line"]:has(> .pagebuilder-column > figure):has(.block-category-link,.block-category-link-inline) { grid-template-columns: minmax(0,1fr) !important; gap: 16px; }
}
@media (prefers-reduced-motion: reduce) { .vitcas-featured-posts__photo img { transition: none; } }

/* Align the header strip and footer with the 1700px main content container. */
#html-body .vitcas-topbar__inner,
#html-body .page-footer [data-content-type="row"] > .row-full-width-inner {
    width: 100%;
    max-width: min(100%, 1700px);
    margin-inline: auto;
}

/* Product sidebars follow the main product content when columns stack. */
@media (max-width: 1023px) {
    .catalog-product-view.page-layout-2columns-right .columns > .column.main { order: 0; }
    .catalog-product-view.page-layout-2columns-right .columns > .sidebar-main { order: 1; }
    .catalog-product-view.page-layout-2columns-right .columns > .sidebar-additional { order: 2; }
}

/* Compact desktop megamenu, using the existing Hyva keyboard/hover behavior. */
.vitcas-megamenu > div { padding-inline: 16px; }
.vitcas-megamenu nav > ul { gap: 0 18px; padding-block: 8px; }
.vitcas-megamenu nav > ul > li { position: static; }
.vitcas-megamenu nav > ul > li > span { font-size: 14px; line-height: 20px; }
.vitcas-megamenu a.level-0 { padding: 6px 2px; }
.vitcas-megamenu__panel {
    position: absolute; z-index: 40; top: 100%; left: 0;
    display: grid; grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 18px 24px; width: min(1100px,calc(100vw - 48px));
    max-height: min(70vh,640px); overflow-y: auto;
    margin: 0; padding: 20px; background: #fff;
    border: 1px solid #ddd; border-radius: 8px;
    box-shadow: 0 8px 24px #0002; list-style: none;
}
.vitcas-megamenu__group { min-width: 0; }
.vitcas-megamenu__category {
    display: block; padding: 6px 8px; font-size: 16px; font-weight: 600;
    line-height: 22px; color: #ae1010; border-bottom: 1px solid #eee;
}
.vitcas-megamenu__links,
.vitcas-megamenu__nested { margin: 6px 0 0; padding: 0; list-style: none; }
.vitcas-megamenu__links a { display: block; padding: 5px 8px; font-size: 14px; line-height: 20px; white-space: normal; }
.vitcas-megamenu__nested { margin: 0; padding-inline-start: 12px; }
.vitcas-megamenu__nested a { font-size: 13px; line-height: 18px; }
.vitcas-megamenu__panel a:hover,
.vitcas-megamenu__panel a:focus-visible { background: #f3f3f3; color: #ae1010; border-radius: 4px; }
@media (min-width: 1440px) { .vitcas-megamenu__panel { grid-template-columns: repeat(4,minmax(0,1fr)); } }

.catalog-product-view .column.main .kowal-dostawcy-icons,
.catalog-product-view .column.main .kowal-payment-icons {
    display: grid; grid-template-columns: repeat(8,minmax(0,1fr)); gap: 5px; margin-block: 12px;
}
.catalog-product-view .column.main .dostawcy-icon,
.catalog-product-view .column.main .payment-icon { min-width: 0; min-height: 42px; padding: 4px; font-size: 10px; line-height: 12px; text-align: center; }
.catalog-product-view .column.main .dostawcy-icon img,
.catalog-product-view .column.main .payment-icon img { width: 60px; max-width: 100%; height: 24px; object-fit: contain; }
.catalog-product-view .column.main .dostawcy-icon span,
.catalog-product-view .column.main .payment-icon span { max-width: 100%; overflow-wrap: anywhere; }
.catalog-product-view .sidebar-main .kowal-product-info { margin: 24px 0 0; }
.catalog-product-view .sidebar-main .kowal-product-info__heading { font-size: 20px; line-height: 26px; font-weight: 600; }
@media (max-width: 639px) {
    .catalog-product-view .column.main .kowal-dostawcy-icons,
    .catalog-product-view .column.main .kowal-payment-icons { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
/* Kowal's Hyva menu enhancer supplies its own inner grid. */
.vitcas-megamenu__panel:has(> .kowal-hyva-panel-shell) { display: block; }
#header .vitcas-megamenu__panel .kowal-hyva-panel-shell { width: 100%; min-width: 0; }
#header .vitcas-megamenu__panel .kowal-menu-panel { width: 100%; gap: 18px 24px; }
#header .vitcas-megamenu__panel .kowal-menu-column { min-width: 0; padding: 0; }
#header .vitcas-megamenu__panel .kowal-menu-column-title { display: block; font-size: 15px; font-weight: 600; line-height: 21px; padding: 6px 8px; color: #ae1010; }
#header .vitcas-megamenu__panel .kowal-menu-column-links { margin: 6px 0 0; padding: 0; }
#header .vitcas-megamenu__panel .kowal-menu-row { margin: 0; padding: 0; }
#header .vitcas-megamenu__panel .kowal-menu-heading > a { padding: 5px 8px; font-size: 14px; line-height: 20px; white-space: normal; }
