/* GENERAL */
html {
    /* Override Bootsrap scroll-behaviour: smooth */
    scroll-behavior: auto !important;
    --pt-calc: 150px;
}
.grecaptcha-badge { 
    opacity:0; 
}
.text-balance {
    text-wrap: balance;
}
.zIndex-0 {
    z-index: 0;
}
.zIndex-1 {
    z-index: 1;
}
.zIndex-2 {
    z-index: 2;
}
.wrapper {
    padding: 0;
}
section {
    position: relative;
}
.img-container, .ratio-container {
    position: relative;
    overflow: hidden;
}
.img-container img {
    width: 100%;
}
.brd-t {
    border-top: 1px solid var(--color-black);
}
.brd-b {
    border-bottom: 1px solid var(--color-black);
}
.brd-l {
    border-left: 1px solid var(--color-black);
}
.brd-r {
    border-right: 1px solid var(--color-black);
}
@media (min-width: 744px) {
    .brd-r-res {
        border-right: 1px solid var(--color-black);
    }
}
.brd-gray-b {
    border-bottom: 1px solid var(--color-dark-gray);
}
a {
    color: var(--color-black);
    text-decoration: none;
}
a:hover {
    color: var(--color-orange);
}
.abs-pos {
    position: absolute;
}
.rad20 {
    border-radius: 20px;
}
.rad10 {
    border-radius: 10px;
}
.rad5 {
    border-radius: 5px;
}
.aspect-ratio-1-1 {
    aspect-ratio: 1 / 1;
}
.gap-20 {
    gap: 20px;
}
.img-abs img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: contain;
}
.white-frame {
    border: none;
    border-radius: 20px;
    background-color: var(--color-white);
}
.gray-frame {
    border: none;
    border-radius: 20px;
    background-color: var(--color-gray);
}
.dgray-frame {
    border: none;
    border-radius: 20px;
    background-color: var(--color-dark-gray);
}
.orange-frame {
    border: none;
    border-radius: 20px;
    background-color: var(--color-orange);
}
.bg-white-mob {
    background-color: var(--color-white);
    border-radius: 20px;
}
@media (min-width: 768px) {
    .bg-white-mob {
        background-color: transparent;
    }
}
@media (max-width: 1200px) {
    .bg-white-tablet {
        background-color: var(--color-white);
        border-radius: 10px;
    }
}
@media (max-width: 1800px) {
    .bg-white-res {
        background-color: var(--color-white);
        border-radius: 20px;
    }
}
.disabled {
    opacity: 0.5;
    user-select: none;
    pointer-events: none;
}
/* END GENERAL */
/* ABOUT */
.layout-about .ratio-big{
    position: relative;
    aspect-ratio: 910 / 560;
}
.ratio-big img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}
.layout-about .ratio-profile{
    position: relative;
    aspect-ratio: 290 / 355;
}
.ratio-profile img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}
/* END ABOUT */
/* CONTACT */
iframe {
    height: 300px;
}
@media (min-width: 744px) {
    iframe {
        height: 400px;
    }
}
@media (min-width: 1800px) {
    iframe {
        height: 522px;
        border-radius: 20px;
    }
}
/* CONTACT FORM */
.wpcf7 {
    max-width: 100%;
}
.wpcf7 .wpcf7-form p {
    margin-bottom: 0;
}
.wpcf7 .wpcf7-form label {
    width: 100%;
}
.wpcf7 input[type=text],
.wpcf7 input[type=email],
.wpcf7 input[type=tel],
.wpcf7 textarea {
    width: 100%!important;
    background: transparent !important;
    border: none !important;
    border-radius: 0;
    border-bottom: 1px solid var(--color-dark-gray) !important;
    color: var(--color-black) !important;
    outline: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    font-size: 1rem;
    padding: 0 0 20px 11px!important;
    /* margin: 0; */
}
.wpcf7 input[type=text]::placeholder,
.wpcf7 input[type=email]::placeholder,
.wpcf7 input[type=tel]::placeholder,
.wpcf7 textarea::placeholder {
    color: var(--color-black);
}
.wpcf7-list-item {
    margin: 0;
}
/* END CONTACT FORM */
/* END CONTACT */
/* BLOG */
.ratio-blog-home{
    position: relative;
    aspect-ratio: 490 / 302;
    border-radius: 6px;
}
.ratio-blog-home img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}
.ratio-blog {
    aspect-ratio: 1220 / 752;
}
.ratio-blog img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.ratio-grid-blog {
    position: relative;
    aspect-ratio: 430 / 300 ;
}
.ratio-grid-blog img {
    object-fit: cover;
    position: absolute;
    height: 100%;
}
/* END BLOG */
/* VCarousel Horizontal */
#product-gallery #boxes .swiper-slide {
    position: relative;
    width: 100%;
    aspect-ratio: 755 / 529;
}
#product-gallery #boxes .swiper-slide img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}
#product-gallery .thumbBox {
    overflow: hidden;
}
#product-gallery .swiper-scrollbar {
    left: 0;
    right: 0;
    width: 100%;
}
/* END VCarousel Horizontal */
.vcarousel-cell.product {
    max-width: 292px;
}
@media (min-width: 1200px) {
    .vcarousel-cell.product {
        max-width: 363px;
    }
}
.flickity-page-dots {
    position: relative;
    margin-top: 40px;
    bottom: 0;
}
@media (min-width: 744px) {
    .flickity-page-dots {
        margin-top: 60px;
    }
}
@media (min-width: 1200px) {
    .flickity-page-dots {
        margin-top: 100px;
    }
}
.flickity-page-dots .dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 2px;
    background: #333;
    border-radius: 50%;
    opacity: .25;
    cursor: pointer
}

.wooloop-product__title {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.4em;
    /* height: 2.8em !important; */
    max-height: 2.8em;
}
.wooloop-product__price {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.125em;
    /* height: 3em !important; */
    max-height: 3em;
}
.wooloop-product__price-horizontal {
    display: flex;
    gap: 5px;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.125em;
    /* height: 3em !important; */
    max-height: 3em;
}
.wooloop-product__price-horizontal bdi,
.wooloop-product__price-horizontal ins bdi {
    margin-top: 0;
}
#ship-to-different-address {
    font-size: calc(1rem + ((1vw - 0.225rem) * 0.5208)); /* 16 - 18 */
    line-height: 140%;
}
@media (min-width: 744px) {
    #ship-to-different-address {
        font-size: 1.125rem; /* 18 */
    }
}
@media (min-width: 1200px) {
    #ship-to-different-address {
        font-size: calc(1.125rem + ((1vw - 0.75rem) * 0.3333)); /* 18 - 20 */
        line-height: 120%;
    }
}
@media (min-width: 1800px) {
    #ship-to-different-address {
        font-size: 1.25rem; /* 20 */
    }
}
.wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer {
    display: none;
}
.variable-item.selected {
    background: var(--color-white) !important;
}

.p-extra-small {
    font-size: calc(0.625rem + ((1vw - 0.225rem) * 0.1302)); /* 10 - 11 */
}

.woocommerce-variation-description {
    display: none;
}

.woocommerce .product .img-container.feat_img img {
    position: absolute;
    top: 0;
    left: 0;
    object-fit: contain;
    width: 100%;
    height: 100%;
    padding-top: 1.5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 5rem;
}

body.single-product.woocommerce table.shop_attributes th.woocommerce-product-attributes-item__label {
    width: 40% !important;
}
body.single-product.woocommerce table.shop_attributes td.woocommerce-product-attributes-item__value {
    width: 60% !important;
}

.stock.preorder-stock {
    color: #ff7a00 !important;
}
.stihl-preorder-notice {
    color: #ff7a00 !important;
    margin-top: 0.5rem;
}
.product-availability.preorder,
.product-availability.preorder span {
    color: #ff7a00 !important;
}

/* Social Btns */
a.social-icon svg {
    transition: transform 0.3s ease;
}
a.social-icon:hover svg {
    transform: translateY(-5px);
}