/*
Theme name: Feeling Goods
Author: Insomedia
Version: 1.0
Description: Feeling Goods X Insomedia | Maatwerk template
*/

@font-face {
    font-family: 'Bodoni Antiqua URW';
    src: url('assets/fonts/BodoniAntT-Regu.woff2') format('woff2'),
    url('assets/fonts/BodoniAntT-Regu.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'MagdaCleanMono-bold';
    font-style: normal;
    font-weight: normal;
    font-display: auto;
    src: url('assets/fonts/MagdaCleanMono-Bold.ttf') format('truetype');
}

* { margin: 0; padding: 0; box-sizing: border-box; }

:root {
    --bs-link-color-rgb: rgba(29, 29, 27, 0.8);
    --bs-link-hover-color-rgb: rgba(29, 29, 27, 0.8);
}

body {
    --im-font-1: "futura-pt", serif;
    --im-font-2: "Bodoni Antiqua URW";
    --im-font-3: "MagdaCleanMono-bold";
    --im-color-title: rgba(29, 29, 27, 0.8);
    --im-color-text: #1D1D1B;
    --im-color-1: #E2B3A2;
    --im-color-2: #92B499;
    --im-color-2-hover: #6d8d73;
    --im-color-3: #FBF6F3;
    --im-color-4: #1D1D1B;
    --im-color-5: #92B499;
    --im-color-6: #92B499;
    --swiper-navigation-color: #fff;
}

input {  }
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button { opacity: 1; }

html, body { background: var(--im-color-3); font-family: var(--im-font-1); font-size: 22px; line-height: 32px; font-weight: 300; }

h1, h2, h3, h4, h5 { font-family: var(--im-font-2); font-weight: normal; color: var(--im-color-title); font-size: 36px; }

.wp-block-heading { font-size: 28px; }
.wp-block-columns { margin: 20px 0; }

b, strong, p strong { font-weight: 500; }

img { max-width: 100%; display: table; }

.button { font-family: var(--im-font-1); background: var(--im-color-6); color: #fff; font-size: 18px; font-weight: 500; border-radius: 10px; padding: 5px 20px; text-decoration: none; display: table; position: relative; transition: all .3s ease-in-out; }
.button.arrow { padding-right: 42px; }
.button.arrow:after { content: ''; position: absolute; top: 15px; right: 25px; width: 8px; height: 14px; background: url('images/chevron-right-solid.svg') no-repeat; background-size: contain; }
.button.alt { background: #fff; color: var(--im-color-6); }
.button.alt.arrow:after { background: url('images/chevron-right-solid-green.svg') no-repeat; }

#wrapper { position: relative; }

.header { background: var(--im-color-1); padding: 30px 0; }
.header .row { align-items: center; }
.header .header-info .my-account-links { display: flex; justify-content: flex-end; }
.header .header-info .my-account-links .my-account-link { position: relative; cursor: pointer; margin-left: 30px; text-decoration: none; display: flex; align-items: center; }
.header .header-info .my-account-links .my-account-link span.icon { width: 22px; height: 22px; display: inline-block; }
.header .header-info .my-account-links .my-account-link span.icon img { width: 100%; height: 100%; object-fit: contain; }
.header .header-info .my-account-links .my-account-link .cart_qty { width: 13px; height: 13px; border-radius: 13px; font-size: 11px; position: absolute; top: -2px; right: -4px; background: var(--im-color-title); color: #fff; display: flex; align-items: center; justify-content: center; }

.site-search { background: var(--im-color-1); height: 0; }
.site-search.active { height: auto; }
.site-search .woocommerce-product-search { display: flex; }
.site-search .woocommerce-product-search .search-field { width: 100%; height: 46px; padding: 5px 15px; border-top-left-radius: 10px; font-family: var(--im-font-1); color: #fff; border: 1px #fff solid; background: rgba(255,255,255,0.25); }
.site-search .woocommerce-product-search button { background: #fff; border: 0; padding: 0 15px; }
.site-search .woocommerce-product-search button img { width: 22px; height: 22px; object-fit: contain; display: table; }

.aws-container { padding-bottom: 30px; visibility: hidden; opacity: 0; transition: all .3s ease-in-out; }
.site-search.active .aws-container { visibility: visible; opacity: 1; }
.aws-container .aws-search-field { font-size: 16px; padding-left: 15px; border: 0; border-radius: 10px 0 0 10px !important; }
.aws-container .aws-search-form .aws-form-btn { border: 0; background: #fff; border-radius: 0 10px 10px 0 !important; }
.aws-container .aws-search-form .aws-form-btn:hover { background: var(--im-color-2-hover); }
.aws-container .aws-search-form .aws-form-btn:hover .aws-search-btn_icon { fill: currentColor; color: #fff; }
.aws-search-result ul li { font-size: 18px; }

.main-menu { font-family: var(--im-font-1); font-weight: 300; }
.main-menu .navigation ul { display: flex; margin: 0; padding: 0; list-style: none; gap: 30px; }
.main-menu .navigation ul li { position: relative; }
.main-menu .navigation ul li:after { width: 0%; height: 2px; background: #fff; content: ''; display: table; border-radius: 1px; transition: all .3s ease-in-out; }
.main-menu .navigation ul li:hover:after { width: 100%; }
.main-menu .navigation ul li.current-menu-item:after { width: 100%; }
.main-menu .navigation ul li a { color: #fff; text-decoration: none; padding: 0; font-size: 22px; font-weight: 400; display: table; text-transform: uppercase; }
.main-menu .navigation ul li .sub-menu { opacity: 0; visibility: hidden; min-width: 200px; box-shadow: 0 0 5px rgba(0,0,0,0.2); position: absolute; top: 50px; left: -10px; background: #fff; z-index: 999; flex-wrap: wrap; gap: 0; padding: 10px 0; transition: .2s all ease-in-out; }
.main-menu .navigation ul li .sub-menu.open { opacity: 1; visibility: visible; }
.main-menu .navigation ul li ul li { width: 100%; }
.main-menu .navigation ul li ul li a { font-size: 16px; color: #000; white-space: nowrap; display: block; padding: 3px 20px; }
.main-menu .navigation ul li ul li a:hover { text-decoration: underline; }

.main-menu .navigation ul li.menu-item-has-children > a { padding-right: 20px; }
.main-menu .navigation ul li.menu-item-has-children > a:before { content: ''; position: absolute; top: 50%; margin-top: -6px; right: 0; background: url('images/chevron-down-solid.svg') no-repeat; width: 12px; height: 12px; background-size: contain; }

.main-menu .navigation-close { font-size: 20px; display: none; border-bottom: 1px rgba(255,255,255,0.3) solid; width: 100%; height: 80px; padding: 0 15px; color: #fff; align-items: center; justify-content: end; }
.main-menu .navigation-close img { width: 24px; height: 24px; margin-right: 6px; position: relative; top: -2px; }

.main-menu .open-subnav { display: none; position: absolute; top: 0; right: 0; width: 46px; height: 46px; border-left: 1px #ccc solid;  }
.main-menu .open-subnav:before { position: relative; content: ''; width: 16px; height: 16px; top: 14px; left: 14px; display: table; background: url('images/chevron-right-solid.svg') no-repeat; background-size: 10px; background-position: center; transition: 0.3s all ease-in-out; }
.main-menu .open-subnav.active:before { transform: rotate(90deg); }

.mobile-menu { display: none; gap: 10px; padding: 10px 0; color: #fff; cursor: pointer; font-size: 24px; align-items: center; }
.mobile-menu span { position: relative; top: 3px; }
.mobile-menu .img { width: 24px; height: 24px; }
.mobile-menu .img img { width: 100%; height: 100%; object-fit: contain; }

.site-logo a { display: table; }
.site-logo .desktop { width: 250px; }
.site-logo .mobile { display: none; }

.site-usp { background: var(--im-color-1); padding: 10px 0; border-bottom: 1px #fff solid; line-height: 29px; font-size: 16px; font-weight: 400; }
.site-usp .items { display: flex; gap: 20px; }
.site-usp .items .item { display: flex; align-items: center; color: #fff; }
.site-usp .items .item span { width: 18px; height: 18px; display: table; margin-right: 10px; }
.site-usp .items .item span img { width: 100%; height: 100%; object-fit: contain; display: table; }

.breadcrumbs { color: #444; font-size: 18px; padding: 15px 0; }
.breadcrumbs p { margin-bottom: 0; }
.breadcrumbs a { color: #444; }
.breadcrumbs .separator { margin: 0 6px; }

.main-content { padding: 40px 0; }
.home .main-content { padding: 0; }
.single-product .main-content { padding-top: 0; }

.section { padding: 100px 0; }
.section.beige { background: var(--im-color-1); color: #fff; }
.section.pb-big { padding-bottom: 200px; }
.section.shape-bottom { position: relative; padding-bottom: 144px; }
.section.shape-bottom:before { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 84px; background: url('images/shape.png') repeat-x; }
.section .page-title { margin-bottom: 30px; }

.frontpage-banner { position: relative; background: rgb(226,179,162); }
.frontpage-banner .banner-image { /* margin-left: -75px; margin-right: -75px; */ }
.frontpage-banner .banner-image img { /* border-radius: 10px; */ width: 100%; object-fit: cover; height: 600px; }
.frontpage-banner:before { content: ''; position: absolute; bottom: 0; width: 100%; height: 84px; background: url('images/shape.png') repeat-x; }

.featured-categories .item .image { width: 100%; height: 300px; display: block; border-top-left-radius: 20px; overflow: hidden; }
.featured-categories .item .image img { width: 100%; height: 100%; object-fit: cover; }
.featured-categories .item .title { width: 100%; margin-top: 10px; display: table; text-decoration: none; }
.featured-categories .item .title h2 { font-size: 20px; text-align: center; }
.featured-categories .item .title h2 { font-size: 20px; text-align: center; }

.home-text .page-title { margin-bottom: 20px; }
.home-text .button { margin-top: 30px; }

.home-text-centered { text-align: center; max-width: 700px; margin: 0 auto; }
.home-text-centered .featured-image { /* margin-top: -200px; */ display: table; margin-left: auto; margin-right: auto; margin-bottom: 50px; }
.home-text-centered .page-title { margin-bottom: 20px; }
.home-text-centered .button { margin: 0 auto; margin-top: 30px; }

.footer { background: var(--im-color-1); padding: 144px 0 60px 0; color: #fff; position: relative; }
.footer:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 84px; background: url('images/shape.png') repeat-x; }
.footer .footer__item { font-family: var(--im-font-1); }
.footer .footer__item .widget:nth-child(2) { margin-top: 30px; }
.footer .footer__item h4 { font-size: 26px; color: #fff; margin-bottom: 20px; }
.footer .footer__item ul { margin: 0; padding: 0; list-style: none; }
.footer .footer__item a { color: #fff; text-decoration: none; }
.footer .footer__item.column-count .menu { /* column-count: 2; */ }

.social-footer { padding: 100px 0; background-position: center; background-size: cover; }
.social-footer span { font-family: var(--im-font-2); font-weight: 300; }
.social-footer .social-footer__item { width: 50%; margin-left: 50%; text-align: center; color: var(--im-color-5); }
.social-footer .social-footer__item .item-title span { font-size: 70px; line-height: 60px; border-bottom: 5px rgba(255,255,255,1) solid; padding-bottom: 20px; margin-bottom: 0; }
.social-footer .social-footer__item p span { font-size: 50px; line-height: 50px; display: table; margin: 0 auto; }
.social-footer .social-footer__item .icons { margin-top: 40px; font-size: 26px; }
.social-footer .social-footer__item .icons .social-icons { display: flex; gap: 20px; justify-content: center; }
.social-footer .social-footer__item .icons .social-icons a { width: 36px; height: 36px; display: table; }
.social-footer .social-footer__item .icons .social-icons svg path { fill: #1d1d1bcc; }
.social-footer .social-footer__item.text-white .icons .social-icons svg path { fill: #fff; }

.contact-info .contact-info__item { display: flex; align-items: center; gap: 10px; }
.contact-info .contact-info__item span { width: 20px; height: 20px; display: table; position: relative; top: -2px; }
.contact-info .contact-info__item span svg { width: 100%; height: 100%; object-fit: contain; }

.copyright { font-size: 18px; font-family: var(--im-font-1); padding: 20px 0; background: var(--im-color-1); border-top: 1px rgba(255,255,255,0.5) solid; color: #fff; }
.copyright a { color: #fff; }
.copyright p { margin-bottom: 0; }

.filter-button { display: none !important; width: 100%; background-color: var(--im-color-2) !important; color: #fff !important; margin-bottom: 20px; }
.filter-button span { width: 16px; height: 16px; display: inline-table; margin-right: 10px; }
.filter-button span img { width: 100%; height: 100%; object-fit: contain; }

.cat-products { background: rgba(255,255,255,0.75); padding: 20px; }
.cat-products h3 { font-size: 18px; margin-bottom: 10px;}
.cat-products ul { padding: 0; list-style: none; }
.cat-products ul li a { color: #000; text-decoration: none; }

.articles { display: flex; flex-wrap: wrap; margin: 0 -2%; }
.articles .article { width: 29.3333%; margin: 20px 2%; background: #fff; text-decoration: none; padding-bottom: 60px; position: relative; border-radius: 10px; overflow: hidden; }
.articles .article .article__thumbnail { width: 100%; height: 240px; }
.articles .article .article__thumbnail img { width: 100%; height: 100%; object-fit: cover; display: table; }
.articles .article .article__content { padding: 25px; display: table; }
.articles .article .article__content .post-date { padding: 0 15px; background: #eee; display: table; font-size: 16px; margin-bottom: 14px; border-radius: 10px; }
.articles .article .article__content h2 { font-size: 26px; }
.articles .article .button { position: absolute; bottom: 25px; left: 25px; }

.articles { display: flex; flex-wrap: wrap; margin: 0 -2%; }
.articles .article { width: 29.3333%; margin: 20px 2%; background: #fff; text-decoration: none; padding-bottom: 60px; position: relative; border-radius: 10px; overflow: hidden; }
.articles .article .article__thumbnail { width: 100%; height: 240px; }
.articles .article .article__thumbnail img { width: 100%; height: 100%; object-fit: cover; display: table; }
.articles .article .article__content { padding: 25px; display: table; }
.articles .article .article__content .post-date { padding: 0 15px; background: #eee; display: table; font-size: 16px; margin-bottom: 14px; border-radius: 10px; }
.articles .article .article__content h2 { font-size: 26px; }
.articles .article .button { position: absolute; bottom: 25px; left: 25px; }

.posts-navigation  { margin-top: 30px; }
.posts-navigation  .nav-links { display: flex; align-items: center; justify-content: center; gap: 20px; flex-direction: row-reverse; }

.article-small { max-width: 900px; margin: 0 auto; background: #fff; text-decoration: none; position: relative; border-radius: 10px; overflow: hidden; }
.article-small .article__thumbnail { width: 100%; height: 400px; }
.article-small .article__thumbnail img { width: 100%; height: 100%; object-fit: cover; display: table; }
.article-small .article__content { padding: 50px; display: table; }
.article-small .article__content .post-date { padding: 0 15px; background: #eee; display: table; font-size: 16px; margin-bottom: 14px; border-radius: 10px; }


/* Woocommerce */

.woocommerce-Price-currencySymbol {
    display: none !important;
}

.woocommerce-message, .woocommerce-info { border-top-color: var(--im-color-2); }
.woocommerce-message::before, .woocommerce-info::before { color: var(--im-color-2); }
.woocommerce-error, .woocommerce-info, .woocommerce-message { background: #fff; }
.woocommerce .woocommerce-message .button { background-color: var(--im-color-2); color: #fff; }
.woocommerce .woocommerce-message .button:hover { background-color: var(--im-color-2-hover); color: #fff; }

.woocommerce .woocommerce-error .button, .woocommerce .woocommerce-info .button, .woocommerce .woocommerce-message .button, .woocommerce-page .woocommerce-error .button, .woocommerce-page .woocommerce-info .button, .woocommerce-page .woocommerce-message .button {
    font-size: 18px;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button {
    font-size: 16px;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt {
    background-color: var(--im-color-2);
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce input.button.alt:hover {
    background-color: var(--im-color-2-hover);
}

.entry-title { margin-bottom: 20px; }

.woocommerce .woocommerce-ordering select { font-size: 16px; background-color: #fff; padding: 8px; border: 1px #ccc solid; }

.single-product h3 { font-size: 30px; }

.woocommerce div.product { width: 100%; display: table; padding-bottom: 50px;}
.woocommerce div.product .woocommerce-product-gallery { width: 48%; float: left; }
.woocommerce div.product .product_title { margin-bottom: 10px; }
.woocommerce div.product .product-extra_informatie { margin-bottom: 15px; }
.woocommerce div.product p.price, .woocommerce div.product span.price { font-family: var(--im-font-1); font-weight: 600; color: var(--im-color-title); font-size: 26px; margin-bottom: 20px; }
.woocommerce div.product p.price ins, .woocommerce div.product span.price ins { text-decoration: none; font-weight: 600; }
.woocommerce div.product p.price del { font-size: 22px; font-weight: 500; }
.woocommerce div.product form.cart div.quantity { margin-right: 10px; }
.woocommerce .quantity .qty { height: 44px; width: 5em; padding: 5px; border-radius: 6px; border: 1px #ccc solid; }
.woocommerce div.product form.cart .button { height: 44px; padding-left: 40px; padding-right: 40px; background: var(--im-color-5); color: #fff; font-size: 16px; font-weight: 700; border-radius: 6px; }
.woocommerce div.product form.cart .button:hover { background: var(--im-color-2-hover); }

.productinhoud { margin-bottom: 15px; border: 2px solid var(--im-color-2); color: var(--im-color-2); font-weight: 500; padding: 0 16px; border-radius: 20px; font-size: 16px; display: table; line-height: 28px; }
.woocommerce ul.products li.product .productinhoud { position: absolute; top: 25px; left: 25px; background: #fff; font-size: 14px; line-height: 24px; padding: 0 12px; }

.product-information { margin-bottom: 30px; display: flex; justify-content: space-between; }
.product-information .product-information__item { width: 48%; }
.product-information a { color: var(--im-color-text); }

.product-usp .product-usp__item { display: flex; align-items: center; gap: 10px; font-size: 20px; }
.product-usp .product-usp__item span { width: 20px; height: 20px; display: inline-table; position: relative; top: -3px; }
.product-usp .product-usp__item span svg { width: 100%; height: 100%; object-fit: contain; display: table; }

.product_ingredienten { margin-bottom: 40px; }
.product_ingredienten .product_ingredienten__items { margin-top: 20px; }
.product_ingredienten .product_ingredienten__items .product_ingredienten__item { display: flex; gap: 20px; margin-top: 10px; }
.product_ingredienten .product_ingredienten__items .product_ingredienten__item img { width: 60px; height: 60px; object-fit: contain; display: table; }
.product_ingredienten .product_ingredienten__items .product_ingredienten__item .item_info { width: calc(100% - 60px); font-size: 20px; }
.product_ingredienten .product_ingredienten__items .product_ingredienten__item .item_info .item_titel { font-family: var(--im-font-2); font-weight: 300; }
.product_ingredienten .product_ingredienten__items .product_ingredienten__item .item_info .item_tekst {  }

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.disabled:hover { background-color: var(--im-color-5); }

.woocommerce div.product form.cart { margin-bottom: 1em; }
.woocommerce div.product form.cart .variations { margin-bottom: 20px; }
.woocommerce div.product form.cart .variations td, .woocommerce div.product form.cart .variations th { vertical-align: middle; }
.woocommerce div.product form.cart .variations select { background-color: #fff; border-radius: 6px; border-color: #ccc; padding: 3px 20px; }
.reset_variations { display: none !important; }

.related.products h3 { margin-bottom: 20px; }

.woocommerce .products ul, .woocommerce ul.products { display: flex; flex-wrap: wrap; margin-top: 40px; }
.woocommerce ul.products li.product a img { height: 235px; object-fit: contain; }
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { width: 22.75%; background: #fff; padding: 25px; padding-bottom: 85px; margin: 0 3% 35px 0; }
.home .woocommerce ul.products li.product { margin-bottom: 0; }
.woocommerce ul.products li.product:hover, .woocommerce-page ul.products li.product:hover { box-shadow: 0 0 5px rgba(0, 0, 0, 0.25); }
.woocommerce ul.products li.last, .woocommerce-page ul.products li.last { margin-right: 0; }
.woocommerce ul.products li.product-category.product, .woocommerce-page ul.products li.product-category.product { padding-bottom: 25px; }
.woocommerce ul.products li.product .woocommerce-loop-category__title, .woocommerce ul.products li.product .woocommerce-loop-product__title, .woocommerce ul.products li.product h3 { font-size: 26px; text-transform: lowercase; }
.woocommerce ul.products li.product .price { font-family: var(--im-font-1); font-weight: 600; color: var(--im-color-title); position: absolute; left: 25px; bottom: 20px; font-size: 26px; }
.woocommerce ul.products li.product .price ins { text-decoration: none; font-weight: 600; }
.woocommerce ul.products li.product .price del { font-size: 22px; font-weight: 500; width: 100%; }
.woocommerce ul.products li.product .woocommerce-product-details__short-description { font-size: 17px; line-height: 24px; color: #6b6b6b; }
.woocommerce ul.products li.product .button { border-radius: 10px; padding: 10px 15px; background: var(--im-color-5); display: flex; position: absolute; bottom: 25px; right: 25px; align-items: center; color: #fff; }
.woocommerce ul.products li.product .button img { width: 20px; height: 20px; object-fit: contain; margin-bottom: 0; margin-left: 10px; }
.woocommerce ul.products li.product .added_to_cart.wc-forward { display: none; }

.woocommerce ul.products.columns-3 li.product, .woocommerce-page ul.products.columns-3 li.product { width: 31.3333%; }

.woocommerce ul.products li.product .woocommerce-loop-category__title { text-align: center; }
.woocommerce ul.products li.product .woocommerce-loop-category__title .count { display: none; }

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.added::after { content: ''; }

.product-loop-huidtype { font-size: 18px; line-height: 24px; margin-top: 10px; }
.product-loop-huidtype span { display: block; font-weight: 500;}

.carousel-main { background: #fff; margin-bottom: 15px; border: 1px solid #ccc; border-radius: 5px; }
.carousel-main .slide-inner {  }
.carousel-main .slide-inner img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: contain; }
.carousel-cell { width: 100%; height: 450px; border-radius: 5px; overflow: hidden; }
.carousel-nav .carousel-cell { height: 100px; width: 100px; padding: 10px; background: #fff; margin-right: 15px; border: 1px solid #ccc; }
.carousel-nav .carousel-cell.is-nav-selected { border: 1px solid #111111; }
.carousel-nav .carousel-cell .slide-inner { width :100%; height: 100%; position: relative; }
.carousel-nav .carousel-cell .slide-inner img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: contain; }

.woocommerce table.shop_table { background-color: #fff; }

.mobile-checkout-button { display: none; width: 100%; }
.mobile-checkout-button .button {  }

.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea { padding: 5px 10px; border-radius: 6px; border-width: 1px; }

.woocommerce-additional-fields { margin-top: 20px; }

.woocommerce #payment #place_order, .woocommerce-page #payment #place_order { float: none; width: 100%; text-align: center; border-radius: 6px; padding: 16px; font-size: 18px; }

.woocommerce-shipping-calculator { display: none !important; }

#add_payment_method .wc-proceed-to-checkout a.checkout-button, .woocommerce-cart .wc-proceed-to-checkout a.checkout-button, .woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
    font-size: 1em;
    font-weight: 500;
}

.woocommerce .shop_table .button { font-size: 16px; }

.checkout h3 { font-size: 24px; }

.woocommerce-account .woocommerce-MyAccount-navigation { background: #fff; padding: 30px; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { padding: 0; margin-bottom: 0; list-style: none; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a { text-decoration: none; }

.woocommerce-MyAccount-navigation-link--request-quote { display: none; }

/* Gravity Forms */

.gform-theme--api, .gform-theme--foundation {
    --gf-form-gap-y: 20px;
    --gf-font-weight-secondary: 400;
    --gf-ctrl-btn-font-size-md: 18px;
    --gf-font-size-primary: 18px;
}

#gform_wrapper_1[data-form-index="0"].gform-theme, [data-parent-form="1_0"] {
    --gf-font-size-secondary: 18px !important;
    --gf-color-primary: var(--im-color-2) !important;
    --gf-color-primary-darker: var(--im-color-2-hover) !important;
}

#gform_wrapper_2[data-form-index="0"].gform-theme, [data-parent-form="2_0"] {
    --gf-font-size-secondary: 18px !important;
    --gf-color-primary: var(--im-color-2) !important;
    --gf-color-primary-darker: var(--im-color-2-hover) !important;
}

/* BeRocket */

.bapf_sfilter { background: rgba(255,255,255,0.75); padding: 20px; }
.bapf_sfilter h3 { font-size: 24px; margin-bottom: 10px;}
.bapf_sfilter.bapf_ckbox label { font-size: 20px; line-height: 24px; }


.bapf_slidr.bapf_slidr_btmval .irs--round .irs-from:before,.bapf_slidr.bapf_slidr_btmval .irs--round .irs-single:before,.bapf_slidr.bapf_slidr_btmval .irs--round .irs-to:before {
    border-bottom-color: #000
}

.bapf_slidr.bapf_slidr_btmval .irs--round .irs-from:before,.bapf_slidr.bapf_slidr_btmval .irs--round .irs-single:before,.bapf_slidr.bapf_slidr_btmval .irs--round .irs-to:before {
    border-bottom-color: #000
}

.irs--round .irs-bar {
    background-color: #000
}

.irs--round .irs-handle {
    border: 4px solid #000;
    background-color: #fff;
    box-shadow: 0 1px 3px rgba(0,0,0,.3)
}

.irs--round .irs-from,.irs--round .irs-single,.irs--round .irs-to {
    background-color: #000;
    color: #fff;
}

.bapf_sfilter.bapf_ckbox input[type=checkbox] { margin-right: 8px; }
.bapf_show_hide { margin-top: 10px; display: table; font-weight: 600; }

#add_payment_method #payment ul.payment_methods li img, .woocommerce-cart #payment ul.payment_methods li img, .woocommerce-checkout #payment ul.payment_methods li img {
    margin-top: 9px;
}

@media (max-width: 1500px) {

    .frontpage-banner .banner-image { margin-left: 0; margin-right: 0; }

}

@media (max-width: 1200px) {

    .mobile-menu { display: flex; }

    .main-menu .navigation { visibility: hidden; opacity: 0; left: -100%; transition: 0.3s all ease-in-out; }
    .main-menu.open .navigation { visibility: visible; opacity: 1; left: 0; }
    .main-menu .navigation-close { display: flex; }
    .main-menu .navigation { position: fixed; top: 0; bottom: 0; width: 100%; background: var(--im-color-1); z-index: 99999; overflow-y: auto; box-shadow: 0 0 20px rgba(0,0,0,0.25); }
    .main-menu .navigation ul { display: flex; gap: 0; flex-wrap: wrap; }
    .main-menu .navigation ul li { width: 100%; border-bottom: 1px rgba(255,255,255,0.3) solid; }
    .main-menu .navigation ul li a { padding: 10px 15px; display: block;  }
    .main-menu .navigation ul li .sub-menu { border-top: 1px rgba(255,255,255,0.3) solid; padding: 0; display: none; visibility: visible; opacity: 1; width: 100%; box-shadow: none; position: relative; top: 0; left: 0; }
    .main-menu .navigation ul li .sub-menu.open { display: block; }
    .main-menu .navigation ul li.menu-item-has-children > a:before { display: none; }
    .main-menu .navigation ul li ul li:last-child { border-bottom: 0; }
    .main-menu .navigation ul li ul li a { padding: 10px 20px; }

    .main-menu .navigation ul li:after { display: none; }

    .main-menu .open-subnav { display: table; }

    .woocommerce .products ul, .woocommerce ul.products { justify-content: space-between; }
    .woocommerce ul.products[class*=columns-] li.product, .woocommerce-page ul.products[class*=columns-] li.product { width: 48%; margin-right: 0; margin-bottom: 20px; }
    .woocommerce .products ul::after, .woocommerce .products ul::before, .woocommerce ul.products::after, .woocommerce ul.products::before { display: none; }

    .frontpage-banner .banner-image img { height: 350px; }

}

@media (max-width: 992px) {

    .header { padding: 20px 0; }

    .site-usp .items .item:nth-child(3) { display: none; }

    .woocommerce div.product { padding-bottom: 0; }
    .woocommerce div.product .woocommerce-product-gallery { float: none; width: 100%; margin-bottom: 40px; }
    .woocommerce #content div.product div.summary, .woocommerce div.product div.summary, .woocommerce-page #content div.product div.summary, .woocommerce-page div.product div.summary { width: 100%; }

    .filter-button { display: block !important; margin-bottom: 20px !important; }

    .woocommerce-sidebar .widget-area { display: none; }
    .woocommerce-sidebar.active .widget-area { display: block; }

    .woocommerce .woocommerce-ordering { width: 100%; color: #000; margin-top: 10px; }
    .woocommerce .woocommerce-ordering select { width: 100%; color: #000; -webkit-appearance: none; }

    .woocommerce .woocommerce-message .button { margin-top: 20px; }

    .social-footer .social-footer__item { width: 100%; margin-left: 0; }
    .social-footer .social-footer__item .item-title span { font-size: 56px; line-height: 46px; border-bottom: 5px rgba(255,255,255,1) solid; padding-bottom: 20px; margin-bottom: 20px; }
    .social-footer .social-footer__item p span { font-size: 40px; line-height: 40px;}

    .articles .article { width: 46%; }

}

@media (max-width: 768px) {

    html, body { font-size: 20px; }

    .main-content {
        padding: 20px 0;
    }

    h1, h2, h3, h4, h5 { font-size: 30px; }

    .site-logo a { margin: 0 auto; }
    .site-logo .mobile { display: table; width: 30px; }
    .site-logo .desktop { display: none; }

    .header .woocommerce-product-search .search-field { height: 38px; font-size: 14px; }

    .site-usp .items { justify-content: center; }
    .site-usp .items .item:nth-child(2) { display: none; }

    .frontpage-banner .banner-image img { height: 200px; }

    .featured-banners .item { height: 260px; }
    .featured-banners .item .title h2 { font-size: 22px; }

    .featured-categories .item .image { height: 200px; }

    .mobile-checkout-button { display: table; }

    .header .header-info .my-account-links .my-account-link { margin-left: 20px; }

    .section { padding: 50px 20px; }

    .product-information { display: flex; flex-wrap: wrap; margin-bottom: 0; }
    .product-information .product-information__item { width: 100%; margin-bottom: 40px; }
    .product-information .product-information__item p:last-child { margin-bottom: 0; }

    .woocommerce .quantity .qty { width: 3em; }
    .woocommerce div.product form.cart .button { padding-left: 15px; padding-right: 15px; }

    .articles { display: flex; flex-wrap: wrap; margin: 0; }
    .articles .article { width: 100%; margin: 20px 0; }

}

@media (max-width: 575px) {

    .header .header-info .my-account-links .my-account-link .label { display: none; }

    .featured-categories .item { width: 100%; }
    .featured-categories .item .image { max-width: 240px; margin: 0 auto; }

    .woocommerce ul.products[class*=columns-] li.product, .woocommerce-page ul.products[class*=columns-] li.product { width: 100%; margin-bottom: 20px; }

}