:root {
    --bs-body-color: #3c3c3b;
    --color-logo-6: #c13718;
    --color-logo-2: #e64a29;
    --color-logo-3: #f9b253;
    --color-soft-dark: #87838c;
    --color-light-gray: #f3f3f3;
    --bs-link-color: var(--color-logo-2);
    --bs-link-hover-color: var(--color-logo-6);
    --bs-link-color-rgb: 230, 74, 41;

}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--color-logo-2);
    --bs-btn-border-color: var(--color-logo-2);
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--color-logo-6);
    --bs-btn-hover-border-color: var(--color-logo-6);
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--color-logo-6);
    --bs-btn-active-border-color: var(--color-logo-6);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: #0d6efd;
    --bs-btn-disabled-border-color: #0d6efd;
}

.bg-color-3 {
    background-color: var(--color-logo-3);
}

.bg-color-2 {
    background-color: var(--color-logo-2);
}

.bg-image-02 {
    background: url(../assets/images/img02.webp);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.bg-image-02::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .7);
}

.text-color-2 {
    color: var(--color-logo-2);
}

.text-color-3 {
    color: var(--color-logo-3);
}

.bg-color-6 {
    background-color: var(--color-logo-6);
}

.text-color-6 {
    color: var(--color-logo-6);
}

.bg-gradient-logo-vertical {
    background: linear-gradient(0deg, rgba(193, 55, 24, 1) 0%, rgba(230, 74, 41, 1) 50%, rgba(249, 178, 83, 1) 100%);
}

.form-select,
.form-control {
    border-radius: 0;
}

.btn-primary {
    background-color: var(--color-logo-2);
    border-color: var(--color-logo-2);
    color: white;
}

#logo .cls-1 {
    fill: #3c3c3b;
}

#logo .cls-2 {
    fill: #e64a29;
}

#logo .cls-6 {
    fill: #c13718;
}

#logo .cls-5 {
    fill: #e94f33;
}

#logo .cls-4 {
    fill: #ed7936;
}

#logo .cls-3 {
    fill: var(--color-logo-3);
}

.ui-slider {
    margin-left: 0.5rem;
    margin-right: 0.5rem;
}

.ui-slider-handle {
    border-radius: 30px;
    background-color: var(--color-light-gray) !important;
    border-color: black !important;
}

.ui-widget-content .ui-state-active,
.ui-widget-content .ui-state-focus {
    background-color: black !important;
    border: 1px solid black !important;
    outline: 0;
}

.ui-widget.ui-widget-content {
    border: 0 !important;
    background-color: var(--color-light-gray);
    margin-top: 25px;
}

.ui-slider-handle span {
    background-color: var(--color-soft-dark);
    border: 1px solid black;
    border-radius: 3px;
    font-size: 12px;
    padding: 0px 5px;
    position: absolute;
    bottom: calc(100% + 10px);
    left: 50%;
    transform: translateX(-50%);
    color: white;
}

.ui-slider-handle span::before {
    position: absolute;
    bottom: -3px;
    left: 50%;
    display: inline-block;
    width: 6px;
    height: 6px;
    margin-left: -3px;
    content: "";
    background-color: var(--color-soft-dark);
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

#block-designbydp-headerblock {
    position: relative;
}

#block-designbydp-headerblock .nav-link {
    color: var(--bs-body-color);
    border-bottom: 2px solid transparent;

}

#block-designbydp-headerblock .nav-link:hover {
    color: black;
    border-bottom: 2px solid var(--color-logo-2);
}

#block-designbydp-headerblock .nav-link:hover i {
    color: var(--color-logo-2);
}


.contact-block::before,
#block-designbydp-headerblock::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../assets/images/cubes_bg.png);
    background-size: 550px;
    background-position: center;
    opacity: 0.15;
}

#block-designbydp-headerblock #logo {
    height: 100px;
}

#block-designbydp-headerblock #logo .cls-1 {
    fill: #3c3c3b;
    fill: hsl(0, 0%, 100%);
}

#block-designbydp-headerblock #logo .cls-2 {
    fill: #e64a29;
    fill: hsl(0, 0%, 75%);
}

#block-designbydp-headerblock #logo .cls-6 {
    fill: #c13718;
    fill: hsl(0, 0%, 80%);
}

#block-designbydp-headerblock #logo .cls-5 {
    fill: #e94f33;
    fill: hsl(0, 0%, 85%);
}


#block-designbydp-headerblock #logo .cls-4 {
    fill: #ed7936;
    fill: hsl(0, 0%, 90%);
}

#block-designbydp-headerblock #logo .cls-3 {
    fill: #f9b253;
    fill: hsl(0, 0%, 95%);
}

#block-designbydp-headerblock .nav a {
    padding: 0 1em;
}

#block-designbydp-footerblock #logo {
    height: 50px;
}

#block-designbydp-footerblock a {
    color: var(--bs-link-color);
}

#block-designbydp-footerblock a:hover {
    color: var(--bs-link-hover-color);
}

/*block-designbydp-footerblock*/

.feature-icon-small {
    width: 3rem;
    height: 3rem;
}

h1.title {
    color: var(--bs-tertiary-color);
    text-align: center;
    margin-top: 2rem;
}

.bg-image-cover {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.bg-image-fixed {
    background-attachment: fixed;
}

.parceiros img {
    margin: 1em;
}

.parceiros img.clinicamassama,
.parceiros img.clinicafitares {
    max-width: 150px;
}

.parceiros img.draftin,
.parceiros img.draftinhomes {
    max-width: 110px;
}

.parceiros img.fullbeat {
    max-width: 110px;
}

.parceiros img.habidata {
    max-width: 60px;
}

.parceiros img.lenso {
    max-width: 110px;
}

.parceiros img.mgcp {
    max-width: 75px;
}

.parceiros img.raylou {
    max-width: 60px;
}

.parceiros img.rebirth {
    max-width: 85px;
}

.parceiros img.sportsclubecascais {
    max-width: 82px;
}

.parceiros img.vertline {
    max-width: 120px;
}

.parceiros img.symanicproductions {
    max-width: 120px;
}

#products-category-menu {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 9999;
    pointer-events: none;
}

#products-category-menu.active {
    pointer-events: all;
}

#products-category-menu .overlay {
    background: rgb(230 74 41 / 0%);
    width: 100%;
    height: 100%;
    position: fixed;
    z-index: -2;
    transition: background .2s linear;
    cursor: url(../assets/images/close.png) 11 11, pointer;
}

#products-category-menu.active .overlay {
    background: rgb(230 74 41 / 40%);
}

#products-category-menu #logo {
    width: auto;
    height: auto;
    margin: auto;
}

#products-category-menu>div {
    transform: translateX(-100%);
    transition: all .2s linear;
}

#products-category-menu.active>div {
    transform: translateX(0);
}

#products-category-menu.active>ul {
    display: block;
}

#products-category-menu li>div {
    height: 32px;
    position: relative;
    cursor: pointer;
}

#products-category-menu li>div::before {
    content: "";
    position: absolute;
    height: 100%;
    width: 0%;
    left: 0;
    top: 0;
    background-color: rgba(255, 255, 255, .15);
    transition: all .2s ease-in-out;
    z-index: -1;
}

#products-category-menu li.active>div::before,
#products-category-menu li:hover>div::before {
    width: 100%;
}

#products-category-menu li.active ul {
    background-color: rgba(0, 0, 0, .2);
}

#products-category-menu li.active>ul {
    display: block !important;
}

#products-category-menu li.active>div::before {
    background-color: rgba(255, 255, 255, .3);
}

#products-category-menu li .chevron {
    width: 42px;
}

#products-category-menu li i {
    border-color: #ffffff;
    box-sizing: content-box;
    width: 6px;
    height: 6px;
    -webkit-transition: -webkit-transform .3s;
    transition: transform .3s;
    transition-timing-function: cubic-bezier(.68, -.55, .265, 1.55);
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    position: relative;
    display: block;
    top: 50%;
    left: 50%;
    margin: 0 0 0 -5px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

#products-category-menu .sub-menu {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0%;
    padding: 0;
    margin: 0;
    opacity: 0;
    pointer-events: none;
    transition: all .2s ease-in-out;
    z-index: -1;
    white-space: nowrap;
    display: none;
}

#products-category-menu.active .sub-menu.active {
    left: 100%;
    opacity: 1;
    pointer-events: all;
}

#products-category-menu .sub-menu.level-1 {
    background-color: rgb(224 84 54 / 90%);
}

#products-category-menu .sub-menu.level-2 {
    background-color: rgb(227 99 72 / 90%);
}

#products-category-menu .sub-menu.level-3 {
    background-color: rgb(236 120 95 / 90%);
}


/* STORE */


/* body.path-checkout header,
body.path-cart header,
body.path-product header,
body.path-store header, */
body:not(.path-store, .path-cart, .path-product) header {
    position: relative;
    /* min-height: 170px; */
    box-sizing: content-box;
    border-bottom: 10px solid var(--color-light-gray);
}

/* body.path-checkout header .navbar,
body.path-cart header .navbar,
body.path-product header .navbar,
body.path-store header .navbar, */
body:not(.path-frontpage) header .navbar {
    background-color: black;
}

.block-page-title-block,
body.path-store #form-products-search,
body.path-store .highlighted-products-block,
body.path-store .categories-block,
.page-node-type-basic main,
#checkout-order-information-form-wrapper {
    margin-top: 4vw;
}

body.path-store #form-products-search .product,
.highlighted-products-block .product,
body.path-store .categories-block .term {
    padding-bottom: var(--bs-gutter-x);
    height: 100%;
}

body.path-store #form-products-search .product .image,
.highlighted-products-block .image,
body.path-store .categories-block .image {
    flex-grow: 1;
    display: flex;
    align-items: center;
}

body.path-store #form-products-search .product a,
.highlighted-products-block a,
body.path-store .categories-block a {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: 100%;
    justify-content: center;
    padding: var(--bs-gutter-x);
    text-decoration: none;
    transition: all .2s linear;
}

body.path-store .categories-block a {
    background-color: var(--color-light-gray);
}

body.path-store #form-products-search .product a,
.highlighted-products-block a {
    border: 1px solid var(--bs-border-color);
}

body.path-store #form-products-search .product a:hover,
.highlighted-products-block a:hover {
    border: 1px solid black;
    background-color: var(--color-light-gray);
}

body.path-store .categories-block a:hover {
    background-color: var(--color-logo-yellow);
}

body.path-store #form-products-search .product button,
.highlighted-products-block button {
    width: 100%;
    margin-top: var(--bs-gutter-x);
    pointer-events: none;
    margin-left: 0;
    border-radius: 0;
}

body.path-store #form-products-search .product a:hover button,
.highlighted-products-block a:hover button {
    background-color: var(--color-logo-6);
    border-color: var(--color-logo-6);
}

body.path-store .categories-block a span {
    padding-top: var(--bs-gutter-x);
    text-align: center;
    color: black;
    line-height: 16px;
    font-weight: 400;
}

body.path-store #form-products-search .product .price,
.highlighted-products-block .price {
    /* flex-grow: 1; */
    display: flex;
    align-items: flex-end;
}

body.path-store #form-products-search .product span,
.highlighted-products-block a span {
    padding-top: var(--bs-gutter-x);
    color: black;
    font-size: 16px;
    line-height: 18px;
    font-weight: 400;
    /* flex-grow: 1; */
}

body.path-store .categories-block img {
    mix-blend-mode: multiply;
    max-width: 80px;
    max-height: 80px;
}

body.path-store #form-products-search .product img,
.highlighted-products-block img {
    mix-blend-mode: multiply;
    max-height: 180px;
    width: auto;
    max-width: 100%;
    height: auto;
}

body.path-store #form-products-search .product .body {
    display: none;
}


body.path-store #form-products-search #edit-view-mode a+a {
    margin-left: 1rem;
}

body.path-store #form-products-search #edit-view-mode a {
    width: 38px;
    height: 38px;
    border: 1px solid var(--bs-border-color);
    background-color: white;
    line-height: 38px;
    text-align: center;
    color: black;
    cursor: pointer;
}

body.path-store #form-products-search #edit-view-mode a:hover {
    background-color: var(--color-logo-3);
}

body.path-store #form-products-search #edit-view-mode a.active {
    background-color: var(--color-logo-2);
    color: white;
}

body.path-store .ajax-progress {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, .3);
    z-index: 100;
    display: flex;
    justify-content: center;
    align-items: center;
}

body.path-store .ajax-progress-throbber .throbber {
    background-image: url(../imgs/loading.png);
    background-size: cover;
    width: 80px;
    height: 80px;
    padding: 0;
    animation: rotating .5s linear infinite;
}

@keyframes rotating {
    from {
        -ms-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        -webkit-transform: rotate(0deg);
        -o-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    to {
        -ms-transform: rotate(360deg);
        -moz-transform: rotate(360deg);
        -webkit-transform: rotate(360deg);
        -o-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}


body.path-store #form-products-search .reset-form {
    display: block;
    margin-bottom: 1rem;
    border-radius: 0;
}

body.path-store #form-products-search #edit-sidebar .wrapper {
    border: 1px solid var(--bs-border-color);
}

body.path-store #form-products-search #edit-sidebar #edit-price .fieldset-wrapper .js-form-item {
    display: none;
}

body.path-store #form-products-search #edit-sidebar .form-type-select>label,
body.path-store #form-products-search #edit-sidebar .form-item-search>label,
body.path-store #form-products-search #edit-sidebar #edit-price>legend,
body.path-store #form-products-search #edit-sidebar .form-item-search,
body.path-store #form-products-search .categories-with-images>legend,
body.path-store #form-products-search .fieldgroup>legend {
    font-weight: 500;
    text-transform: uppercase;
    color: black;
    margin-bottom: 0.5rem;
    font-size: inherit;
}

body.path-store #form-products-search #edit-sidebar .form-item-search {
    margin-bottom: 1em;
}

body.path-store #form-products-search .custom-category-checkbox {
    position: relative;
}

body.path-store #form-products-search .custom-category-checkbox input {
    display: none;
}

body.path-store #form-products-search .form-type-radio label {
    cursor: pointer;
    display: block;
    margin: 0;
    padding-left: 10px !important;
}

body.path-store #form-products-search .form-type-radio input {
    /* position: absolute; */
    z-index: -1;
}

body.path-store #form-products-search .custom-category-checkbox label {
    /* padding-left: 45px;
  height: 35px; */
    cursor: pointer;
    line-height: 20px;
    display: flex;
    flex-direction: row;
    align-items: center;
}

body.path-store #form-products-search .custom-category-checkbox label:hover span {
    color: black;
}

body.path-store #form-products-search .custom-category-checkbox label span {
    padding-left: 10px !important;
}

body.path-store #form-products-search .custom-category-checkbox label span,
body.path-store #form-products-search .form-type-radio label {
    width: 100%;
    color: var(--bs-border-color);
    line-height: 1em;
    font-size: 14px;
    padding: 5px 0;
}

body.path-store #form-products-search .custom-category-checkbox label span+span {
    text-align: center;
    width: 30px;
    font-size: 12px;
}

body.path-store #form-products-search .custom-category-checkbox input:checked+label span,
body.path-store #form-products-search .form-type-radio input:checked+label {
    font-weight: 500;
    color: black;
}

body.path-store #form-products-search .custom-category-checkbox img {
    width: 35px;
    /* position: absolute;
  left: 0; */
}

body.path-store #form-products-search #search-results {
    margin-top: 25px;
}

body.path-store #form-products-search #edit-results-count {
    flex-grow: 1;
    display: flex;
    align-items: flex-end;
}

body.path-store #form-products-search #edit-results-count span {
    height: 38px;
    line-height: 38px;
}

body.path-store #form-products-search .form-item {
    margin-top: 0;
}

body.path-store #form-products-search #edit-main .form-item {
    margin: 0;
}

.page-node-type-product .product-image {
    max-width: 100%;
    max-height: 100vh;
    margin: auto;
    object-fit: contain;
}

.page-node-type-product .product-thumbnail {
    width: 60px;
    height: 60px;
    margin: 0 5px;
    object-fit: contain;
    cursor: pointer;
    opacity: 0.6;
    transition: opacity 0.3s ease;
}

.page-node-type-product .product-thumbnail:hover,
.page-node-type-product .product-thumbnail.active {
    opacity: 1;
}

#edit-main.lines-mode .title {
    text-align: start;
}

#edit-main:not(.lines-mode) .title {
    text-align: center;
}

@media (min-width: 576px) {

    #products-category-menu li.active>ul {
        display: none !important;
    }

    #products-category-menu ul {
        list-style: none;
    }

    #products-category-menu ul ul {
        display: none !important;
    }

    #products-category-menu .sub-menu {
        display: block;
    }
}

@media (min-width: 768px) {}

@media (min-width: 992px) {

    body.path-store #form-products-search .lines-mode #search-results>.row>div {
        width: 100%;
    }

    body.path-store #form-products-search .lines-mode .product a {
        display: flex;
        flex-direction: row;
        column-gap: var(--bs-gutter-x);
    }

    body.path-store #form-products-search .lines-mode .product .content {
        width: 100%;
    }

    body.path-store #form-products-search .lines-mode .product .content .title {
        padding-top: 0;
    }

    body.path-store #form-products-search .lines-mode .product .body {
        display: block !important;
        text-align: left;
        line-height: 20px;
        font-size: 14px;
        color: var(--bs-secondary-color);
        padding-top: 10px;
    }

    body.path-store #form-products-search .lines-mode .product .price {
        text-wrap: nowrap;
    }

}

@media (min-width: 1200px) {}

@media (min-width: 1400px) {}