/*general*/
:root {
	--template-font: Montserrat, sans-serif;
    --template-headings-font: Montserrat, sans-serif;

    --colors-foregrounds-content-secondary: #000;
}
html, body {
    overflow-x: hidden;
}
/*headings*/
.h4.homepage-group-title, h1, .h1 {
    font-size: 32px;
    text-transform: uppercase;
    font-weight: 700;
}
@media (max-width: 767px) {
.h4.homepage-group-title, .hp-info__title, .hp-about__title, h1, .h1 {
    font-size: 26px !important;
}}

/*buttons*/
a.btn.btn-default {
    font-weight: 600;
}
.btn.btn-secondary, a.btn.btn-secondary {
    height: 36px;
    background-color: transparent;
    color: #000;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: fit-content;
    padding: 5px 30px;
    border-color: var(--color-secondary);
}
.btn.btn-secondary::after, a.btn.btn-secondary::after, .btn.btn-primary::after, a.btn.btn-primary::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin-left: 0.4em;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3'/%3E%3C/svg%3E") no-repeat center / contain;
}
.btn.btn-secondary:hover, a.btn.btn-secondary:hover {
    background-color: var(--color-secondary);
    border-color: var(--color-secondary);
    color: #000;
}

.btn.btn-primary, a.btn.btn-primary {
    height: 36px;
    background-color: var(--color-secondary);
    color: #000;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: fit-content;
    padding: 5px 30px;
    border-color: var(--color-secondary);
    text-decoration: none !important;
}
/*headear*/
@media (min-width: 767px) {
.top-navigation-bar {
    display: none;
}}
.responsive-tools>a[data-target=search] {
    margin-right: 75px;
}
#header {
    background-color: #1E1E1E;
    border-color: #1E1E1E;
}
input[type=search].form-control {
    border: 0;
    border-radius: 0;
}
form#formSearchForm button.btn.btn-default {
    display: none;
}
.header-top .btn.cart-count .cart-price {
    font-weight: 600;
    color: #fff;
}
.header-top .btn.cart-count:before {
    margin-right: 10px;
}
.btn.cart-count:before, a.btn.cart-count:before {
    content: "" !important;
    width: 24px;
    height: 24px;
    background-image: url(/user/documents/upload/cart.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}
input[type=search].form-control {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='m21 21-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 24px;
}

/*hero*/
.before-carousel .content-wrapper-in,
.before-carousel .container {
    max-width: 1920px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
}
.before-carousel .banners-row {
    margin-left: 0;
    margin-right: 0;
}
.before-carousel .banners-row .col-sm-8 {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
}
.banners-row .col-sm-4 {
    display: none;
}
body.mobile .banners-row .col-sm-8 {
    padding-left: 0;
    padding-right: 0;
}

#carousel .item img {
    width: 100%;
    height: auto;
}
.banners-under-benefits {
    margin: 30px 0;
}
.banners-under-benefits .next-to-carousel-banners {
    display: flex;
    gap: 30px;
}
.banners-under-benefits .banner-wrapper {
    flex: 1 1 50%;
    margin: 0;
}
.banners-under-benefits .banner-wrapper > a {
    overflow: hidden;
}
.banners-under-benefits .banner-wrapper img {
    width: 100%;
    height: auto;
    display: block;
}
@media (max-width: 767px) {
.banners-under-benefits .next-to-carousel-banners {
    flex-direction: column;
    gap: 20px;
}}
.banners-under-benefits .banner-wrapper > a:hover img {
    transform: scale(1.05);
}
@media (min-width: 768px) { 
.extended-banner-texts {
    width: 768px;
}}
@media (min-width: 992px) {
.extended-banner-texts {
    width: 972px;
}}
@media (min-width: 1200px) {
.extended-banner-texts {
    width: 1178px;
}}
@media (min-width: 1440px) {
.extended-banner-texts {
    width: 1418px;
}}

.h4.homepage-group-title.hp-info__title {
    text-align: center;
}
.hp-info .homepage-group-header {
    display: flex;
    justify-content: center;
}



.extended-banner-link, .extended-banner-text, .extended-banner-title {
    position: relative;
    margin: 0;
    inset: unset;
    padding: 0;
    border: 0;
    background-color: transparent;
    box-shadow: none;
}
.extended-banner-texts {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    gap: 20px;
    justify-content: center;
}
.extended-banner-title {
    font-size: 64px;
    text-transform: uppercase;
    font-weight: 700;
    color: #fff;
    max-width: 670px;
    line-height: 1.2;
}
.extended-banner-text {
    font-size: 18px;
    color: #fff;
    max-width: 500px;
}
.extended-banner-link {
    height: 36px;
    background-color: var(--color-secondary);
    color: #000;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: fit-content;
    padding: 5px 30px;
}
.extended-banner-link::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin-left: 0.4em;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3'/%3E%3C/svg%3E") no-repeat center / contain;
}
.homepage-box.before-carousel {
    background-color: transparent;
    padding-bottom: 0;
    padding-top: 0;
    border: 0;
}
#carousel .item a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.7) 20%, rgba(0, 0, 0, 0.2) 50%);
}
@media (max-width: 992px) {
.extended-banner-title {
    font-size: 48px;
}}
@media (max-width: 768px) {
.extended-banner-title {
    font-size: 24px;
}
#carousel .item img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
}
.extended-banner-texts {
    padding: 0 20px;
}
.extended-banner-text {
    font-size: 14px;
}}

/*usp*/
.benefitBanner__title {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 700;
}
.benefitBanner__title, .benefitBanner__data, .benefitBanner__link {
    color: #000;
}
.benefitBanner__picture {
    flex: 0 0 45px;
    max-width: 45px;
}
@media (min-width: 768px) {
.banner-category a:hover img, .banner-footer a:hover img, .banner-wrapper a:hover img, .banners-content a:hover img, .footer-banner a:hover img {
    transform: scale(1.0);
}}
/*additional*/
.next-to-carousel-banners .extended-banner-title {
    font-size: 32px;
}
.next-to-carousel-banners .extended-banner-text {
    font-size: 16px;
}
.next-to-carousel-banners .extended-banner-texts {
    padding: 40px;
    width: 100%;
}

@media (min-width: 993px) and (max-width: 1200px) {
.next-to-carousel-banners .banner-wrapper img {
    aspect-ratio: 4 / 3;
    object-fit: cover;
}}
@media (max-width: 992px) {
.next-to-carousel-banners {
    flex-direction: column;
}}

@media (max-width: 768px) {
.next-to-carousel-banners .banner-wrapper img {
    aspect-ratio: 1;
    object-fit: cover;
}
.next-to-carousel-banners .extended-banner-texts {
    padding: 20px;
}}

/*nav*/
@media (min-width: 768px) {
#navigation {
    height: 50px;
}
.navigation-in {
    font-size: 16px;
    line-height: 16px;
    background-color: transparent;
}
.navigation-in ul li a b {
    font-weight: 600;
}
.navigation-in>ul>li>a {
    padding-bottom: 17px;
    padding-top: 15px;
}
.navigation-in>ul>li {
    border: 0 !important;
}
.navigation-in>ul>li>a {
    border-top: solid 1px;
    border-color: transparent;
}
.navigation-in>ul>li.exp>a, .navigation-in>ul>li>a:focus-visible, .navigation-in>ul>li>a:hover {
    background-color: transparent;
    color: var(--color-secondary);
    border-color: var(--color-secondary);
}}
.homepage-group-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.homepage-group-header .homepage-group-title {
    margin: 0;
}
.homepage-group-header .homepage-group-title-link {
    color: inherit;
    text-decoration: none;
}
@media (max-width: 768px) {
.homepage-group-header a.btn.btn-secondary {
    display: none;
}
.h4.homepage-group-title, h4.homepage-group-title {
    text-align: left;
}
.homepage-group-header .homepage-group-title-link .homepage-group-title::after {
    content: "";
    display: inline-block;
    width: 0.9em;
    height: 0.9em;
    margin-left: 0.4em;
    vertical-align: -0.1em;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3'/%3E%3C/svg%3E") no-repeat center / contain;
}}
.products-block .name {
    text-align: left;
}
/*product block*/
.products-block.products>div {
    border: 0;
}
.products-block .p {
    box-shadow: 0 0 10px rgb(0 0 0 / 20%);
}
.products-block.products .p .name {
    font-weight: 600;
    text-transform: uppercase;
    color: #000;
}
.products-block .p .p-in {
    padding: 20px;
}
.products-block .p a.image {
    margin-bottom: 0;
}
.products-block .ratings-wrapper .availability {
    text-align: left;
}
.products-block .ratings-wrapper .availability {
    font-weight: 600;
    font-size: 12px;
}
.products-block .ratings-wrapper .availability > span::before {
    content: "";
    display: inline-block;
    width: 7px;
    height: 7px;
    background-color: currentColor;
    border-radius: 100px;
    vertical-align: middle;
}
.products-block .ratings-wrapper {
    padding-bottom: 0;
    min-height: unset;
}
.products-block .p-bottom {
    margin-top: 20px;
}
.btn.btn-cart, .btn.btn-conversion, a.btn.btn-cart, a.btn.btn-conversion {
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 600;
    color: #000;
}
.btn.add-to-cart-button:before, .btn.btn-cart:before {
    display: none;
}
.btn.add-to-cart-button::after, .btn.btn-cart::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    margin-left: 0.4em;
    background-color: currentColor;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3'/%3E%3C/svg%3E") no-repeat center / contain;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M13.5 4.5 21 12m0 0-7.5 7.5M21 12H3'/%3E%3C/svg%3E") no-repeat center / contain;
}
.btn.btn-cart:hover, .btn.btn-conversion:hover, a.btn.btn-cart:hover, a.btn.btn-conversion:hover {
    background-color: var(--color-secondary);
    border-color: var(--color-secondary);
    color: #000;
}
.products-block.products .p .price span, .products-block.products .p .price strong {
    font-size: 18px;
}
.products-block {
    margin-left: -10px;
    margin-right: -10px;
}
@media (max-width: 768px) {
.products-block .p .p-in {
    padding: 10px;
    height: 100%;
    display: flex;
    flex-direction: column;
}
.products-block .p-bottom .p-tools, .products-block .p-bottom .prices {
    flex-basis: 100%;
}
.btn.btn-cart, .btn.btn-conversion, a.btn.btn-cart, a.btn.btn-conversion {
    width: 100%;
}
.products-block>div .prices {
    margin-bottom: 10px !important;
}
.products-block.products .p .name {
    font-size: 14px;
    height: 40px;
}
.products-block.products>div {
    padding: 5px;
}
.products-block {
    margin-left: -5px;
    margin-right: -5px;
}
.products-block .p-bottom {
    padding-top: 10px;
    margin-top: auto;
}
.products-block>div .p a.image {
    margin-bottom: 0;
}}
.products-block .p-bottom>div {
    display: flex;
}

/*mid banner*/
.rental-banner {
    margin: 0 calc(50% - 50vw);
}
.rental-banner__in {
    position: relative;
    max-width: 1920px;
    margin: 0 auto;
    padding: 60px 0 70px;
    background: #faf3e3;
    overflow: hidden;
}
.rental-banner__vector {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}
.rental-banner__vector--left {
    left: 0;
}
.rental-banner__vector--right {
    right: 0;
}
.rental-banner__title {
    margin: 0 0 12px;
    text-align: center;
    text-transform: uppercase;
}
.rental-banner__title-accent {
    color: var(--color-secondary);
}
.rental-banner__subtitle {
    margin: 0 auto;
    max-width: 700px;
    text-align: center;
    color: #000;
}
.rental-tiles {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 110px;
    align-items: stretch;
    position: relative;
    z-index: 1;
}
.rental-tile {
    display: block;
    background: #fff;
    padding: 0 28px 35px;
    text-align: center;
    color: #000 !important;
    text-decoration: none;
    transition: box-shadow 0.2s ease;
}
.h4.homepage-group-title.rental-banner__title {
    text-align: center;
}
.rental-tile:hover,
.rental-tile:focus {
    color: inherit;
    text-decoration: none;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}
.rental-tile__img {
    display: block;
    margin: -80px auto 20px;
    max-width: 100%;
    height: auto;
}
.rental-tile__title {
    display: block;
    font-size: 18px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 14px;
}
.rental-tile__text {
    margin: 0;
}
.rental-tile--featured {
    border: 2px solid var(--color-secondary);
}
.rental-tile--featured .rental-tile__img {
    margin-top: -110px;
}
.rental-banner__cta {
    margin: 45px 0 0;
    text-align: center;
    display: flex;
    justify-content: center;
}
.rental-banner__in .homepage-group-header {
    display: flex;
    justify-content: center;
}
@media (max-width: 1200px) {
    .rental-banner__vector {
        max-width: 120px;
    }
}

@media (max-width: 992px) {
    .rental-banner__vector {
        display: none;
    }

    .rental-tiles {
        grid-template-columns: 1fr;
        gap: 90px;
        margin-top: 100px;
    }

    .rental-tile--featured .rental-tile__img {
        margin-top: -90px;
    }
}
.homepage-box {
    background-color: transparent;
    border-bottom-color: transparent;
    border-top-color: transparent;
}


.hp-info__title,
.hp-about__title {
    font-size: 32px;
    font-weight: 700;
    line-height: 1.1;
}

.hp-info__title {
    margin: 0 0 10px;
    text-align: center;
    text-transform: uppercase;
}

.hp-info__title-accent {
    color: var(--color-primary);
}

.hp-info__subtitle {
    margin: 0 0 45px;
    text-align: center;
}

/* ---------- Společný dvousloupcový řádek ---------- */
.hp-info__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
    align-items: center;
}

.hp-info__row--about {
    margin-top: 90px;
}

.hp-info__media img {
    display: block;
    width: 100%;
    height: auto;
}

/* ---------- Kroky pronájmu ---------- */
.hp-steps {
    display: flex;
    flex-direction: column;
    gap: 40px;
    border-left: 2px solid var(--color-secondary);
    padding-left: 50px;
}

.hp-step {
    display: flex;
    align-items: flex-start;
    gap: 25px;
}

.hp-step__icon {
    flex: 0 0 auto;
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: hsl(var(--color-secondary-h) var(--color-secondary-s) 95%);
    color: var(--color-primary);
}

.hp-step__icon svg {
    width: 30px;
    height: 30px;
}

/* Ikony kroků přes CSS mask — Shoptet editor inline <svg> z HTML
   odstraňuje, proto nesmí být v markupu */
.hp-step__icon::before {
    content: "";
    width: 30px;
    height: 30px;
    background-color: currentColor;
    -webkit-mask: var(--icon) no-repeat center / contain;
    mask: var(--icon) no-repeat center / contain;
}

.hp-step__icon--form {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M11.35 3.836c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75 2.25 2.25 0 0 0-.1-.664m-5.8 0A2.251 2.251 0 0 1 13.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m8.9-4.414c.376.023.75.05 1.124.08 1.131.094 1.976 1.057 1.976 2.192V16.5A2.25 2.25 0 0 1 18 18.75h-2.25m-7.5-10.5H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V18.75m-7.5-10.5h6.375c.621 0 1.125.504 1.125 1.125v9.375m-8.25-3 1.5 1.5 3-3.75'/%3E%3C/svg%3E");
}

.hp-step__icon--date {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 0 1 2.25-2.25h13.5A2.25 2.25 0 0 1 21 7.5v11.25m-18 0A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75m-18 0v-7.5A2.25 2.25 0 0 1 5.25 9h13.5A2.25 2.25 0 0 1 21 11.25v7.5m-9-6h.008v.008H12v-.008ZM12 15h.008v.008H12V15Zm0 2.25h.008v.008H12v-.008ZM9.75 15h.008v.008H9.75V15Zm0 2.25h.008v.008H9.75v-.008ZM7.5 15h.008v.008H7.5V15Zm0 2.25h.008v.008H7.5v-.008Zm6.75-4.5h.008v.008h-.008v-.008Zm0 2.25h.008v.008h-.008V15Zm0 2.25h.008v.008h-.008v-.008Zm2.25-4.5h.008v.008H16.5v-.008Zm0 2.25h.008v.008H16.5V15Z'/%3E%3C/svg%3E");
}

.hp-step__icon--smile {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M15.182 15.182a4.5 4.5 0 0 1-6.364 0M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0ZM9.75 9.75c0 .414-.168.75-.375.75S9 10.164 9 9.75 9.168 9 9.375 9s.375.336.375.75Zm-.375 0h.008v.015h-.008V9.75Zm5.625 0c0 .414-.168.75-.375.75s-.375-.336-.375-.75.168-.75.375-.75.375.336.375.75Zm-.375 0h.008v.015h-.008V9.75Z'/%3E%3C/svg%3E");
}

.hp-step__title {
    display: block;
    text-transform: uppercase;
    margin-bottom: 6px;
}

.hp-step__text {
    margin: 0;
}

/* ---------- Specialista na bagry ---------- */
.hp-about__title {
    margin: 0 0 20px;
    text-align: left;
    text-transform: uppercase;
}

.hp-about__list {
    list-style: none;
    margin: 30px 0 0;
    padding: 0;
}

.hp-about__list li {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    font-weight: 700;
    color: var(--color-primary);
}

.hp-about__list svg {
    flex: 0 0 auto;
    width: 20px;
    height: 20px;
}

.hp-about__cta {
    margin: 35px 0 0;
}

/* ---------- Responzivita ---------- */
@media (max-width: 992px) {
    .hp-info__row {
        grid-template-columns: 1fr;
        gap: 35px;
    }

    .hp-steps {
        border-left: 0;
        padding-left: 0;
    }

    .hp-info__row--about {
        margin-top: 60px;
    }

    .hp-info__row--about .hp-info__media {
        order: -1;
    }
}
:where(body.ums_homepage_cart_checkout_headings--on) .welcome .h1, :where(body.ums_homepage_cart_checkout_headings--on) .welcome div {
    margin-left: 0;
    margin-right: 0;
    max-width: 100%;
}
.homepage-box.welcome-wrapper {
    padding-left: 0;
    padding-right: 0;
}
/*footer*/
footer#footer {
    background-color: #1E1E1E;
}
#footer>.container {
    background-color: transparent;
}
#footer .pageElement__heading {
    color: var(--color-secondary);
    font-weight: 600;
}
.custom-footer ul li, .custom-footer ul li a, #footer ul a {
    color: #fff;
}
@media (max-width: 768px) {
#footer .banner {
    min-height: unset;
    margin-bottom: 0;
}}
@media (min-width: 1200px) {
#footer .site-name {
    display: none;
}
.custom-footer {
    padding-left: 0;
}
.custom-footer {
    border-top: 0;
}}


.sb-contact-card {
    background: #faf3e3;
    padding: 35px;
    max-width: 360px;
}

.sb-contact-card__title {
    display: block;
    color: var(--color-primary);
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.sb-contact-card__list {
    list-style: none;
    margin: 0 0 25px;
    padding: 0;
}
.sb-contact-card .pageElement__heading {
    color: var(--color-primary) !important;
}

.sb-contact-card__link {
    color: #1E1E1E !important;
    font-weight: 600;
    text-decoration: none;
}

.sb-contact-card__link:hover {
    color: var(--color-primary) !important;
    text-decoration: none;
}
.sb-contact-card__link::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: -0.25em;
    margin-right: 12px;
    background-color: var(--color-primary);
    -webkit-mask: var(--icon) no-repeat center / contain;
    mask: var(--icon) no-repeat center / contain;
}

.sb-contact-card__link--tel::before {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M2.25 6.75c0 8.284 6.716 15 15 15h2.25a2.25 2.25 0 0 0 2.25-2.25v-1.372c0-.516-.351-.966-.852-1.091l-4.423-1.106c-.44-.11-.902.055-1.173.417l-.97 1.293c-.282.376-.769.542-1.21.38a12.035 12.035 0 0 1-7.143-7.143c-.162-.441.004-.928.38-1.21l1.293-.97c.363-.271.527-.734.417-1.173L6.963 3.102a1.125 1.125 0 0 0-1.091-.852H4.5A2.25 2.25 0 0 0 2.25 4.5v2.25Z'/%3E%3C/svg%3E");
}

.sb-contact-card__link--mail::before {
    --icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M21.75 6.75v10.5a2.25 2.25 0 0 1-2.25 2.25h-15a2.25 2.25 0 0 1-2.25-2.25V6.75m19.5 0A2.25 2.25 0 0 0 19.5 4.5h-15a2.25 2.25 0 0 0-2.25 2.25m19.5 0v.243a2.25 2.25 0 0 1-1.07 1.916l-7.5 4.615a2.25 2.25 0 0 1-2.36 0L3.32 8.91a2.25 2.25 0 0 1-1.07-1.916V6.75'/%3E%3C/svg%3E");
}

.sb-contact-card__logo {
    display: block;
}

.sb-contact-card__logo img {
    display: block;
    max-width: 190px;
    height: auto;
}

@media (max-width: 768px) {
    .sb-contact-card {
        max-width: none;
        padding: 20px;
    }
}

/* ---------- Footer bottom ---------- */
#footer .footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    margin-top: 40px;
    padding: 22px 20px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

#footer .footer-bottom .copyright {
    color: #8d8d8d;
    font-size: 13px;
    text-align: left;
}

#footer .footer-bottom .copyright a {
    color: #8d8d8d;
    text-decoration: underline;
}

#footer .footer-bottom .copyright a:hover {
    color: var(--color-secondary);
}

#footer #signature,
#footer #signature .title {
    color: #8d8d8d;
    font-size: 13px;
}

#footer .footer-bottom #signature {
    text-align: right;
}

@media (max-width: 768px) {
    #footer .footer-bottom {
        flex-direction: column-reverse;
        justify-content: center;
        gap: 6px;
    }

    #footer .footer-bottom .copyright,
    #footer .footer-bottom #signature {
        text-align: center;
    }
}

/* ---------- Brand vektor v pozadí footeru ---------- */
footer#footer {
    position: relative;
    overflow: hidden;
}

footer#footer::before {
    content: "";
    position: absolute;
    right: -60px;
    top: 50%;
    transform: translateY(-50%) rotate(12deg);
    width: 420px;
    height: 420px;
    background: url("https://www.smart-bagry.cz/user/documents/upload/sb-vector2.svg") no-repeat center / contain;
    opacity: 0.2;
    pointer-events: none;
}

#footer > .container {
    position: relative;
}

@media (max-width: 768px) {
    footer#footer::before {
        display: none;
    }
}
@media (min-width: 1200px) {
    .content-inner {
        max-width: 100%;
    }
}

/* ============================================
   Telefon v záhlaví
   - !important u display a width: šablona odkazům v hlavičce
     vnucuje display: none a šířku 40 px (styl ikonových tlačítek)
   ============================================ */

.header-phone {
    display: inline-flex !important;
    align-items: center;
    white-space: nowrap;
    width: auto !important;
    height: auto !important;
    color: #fff;
    font-weight: 600;
    text-decoration: none;
}

.header-phone:hover {
    color: var(--color-secondary);
    text-decoration: none;
}

/* Zlatý kruh s pulzujícím prstencem — odlišení od ikon košíku */
.header-phone__icon {
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: var(--color-secondary);
    margin-right: 12px;
    position: relative;
    animation: phonePulse 2.4s ease-out infinite;
}

/* Sluchátko uvnitř kruhu */
.header-phone__icon::before {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 19px;
    height: 19px;
    background-color: #1E1E1E;
    -webkit-mask: var(--icon-phone) no-repeat center / contain;
    mask: var(--icon-phone) no-repeat center / contain;
}

@keyframes phonePulse {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 197, 21, 0.45);
    }
    70% {
        box-shadow: 0 0 0 11px rgba(255, 197, 21, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(255, 197, 21, 0);
    }
}

.header-phone:hover .header-phone__icon {
    background: #fff;
}

/* Popisek nad číslem */
.header-phone__text {
    display: inline-flex;
    flex-direction: column;
    line-height: 1.3;
}

.header-phone__label {
    font-size: 11px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.header-phone:hover .header-phone__label {
    color: var(--color-secondary);
}

.header-phone {
    --icon-phone: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke-width='1.5' stroke='%23000'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' d='M2.25 6.75c0 8.284 6.716 15 15 15h2.25a2.25 2.25 0 0 0 2.25-2.25v-1.372c0-.516-.351-.966-.852-1.091l-4.423-1.106c-.44-.11-.902.055-1.173.417l-.97 1.293c-.282.376-.769.542-1.21.38a12.035 12.035 0 0 1-7.143-7.143c-.162-.441.004-.928.38-1.21l1.293-.97c.363-.271.527-.734.417-1.173L6.963 3.102a1.125 1.125 0 0 0-1.091-.852H4.5A2.25 2.25 0 0 0 2.25 4.5v2.25Z'/%3E%3C/svg%3E");
}

/* Desktop: sloupce hlavičky mají flex-basis 33 % — košík se uvolní
   na auto a telefon se k němu přirazí zprava, nic se nezalomí */
@media (min-width: 1200px) {
    #header .header-top .navigation-buttons {
        flex: 0 1 auto;
    }

    #header .header-top .header-phone {
        margin-left: auto;
        margin-right: 40px;
    }
}

/* Pod 1200 px (užší desktop, tablet, mobilní šablona) telefon skrýt */
@media (max-width: 1199px) {
    .header-phone {
        display: none !important;
    }
}
