:root {
    --primary: #9B2743;
    --secondary: #00B2A9;
    --muted: #F5F3E7;
    --white: #ffffff;
    --dark: #57423C;
    --black: #000000;
    --gray: #a8a9a7;
    --orange: #FFB25B;
}

/* COLORS */
.uk-section-primary {
    background-color: var(--primary) !important;
}

.uk-section-secondary {
    background-color: var(--secondary) !important;
}

.uk-section-muted {
    background-color: var(--muted) !important;
}

.bicolor-back {
    background: linear-gradient(to bottom, rgba(0, 178, 169, 0) 0%, rgba(0, 178, 169, 0) 50%, rgba(0, 178, 169, 1) 50%, rgba(0, 178, 169, 1) 100%);
}

.orange {
    color: var(--orange) !important;
}

/* ELEMENTI GRAFICI COMUNI */
.radius-30,
.radius-30-grid .uk-card,
.radius-30-grid img,
.radius-30-half.uk-panel {
    border-radius: 30px;
}

.radius-30-half img {
    border-radius: 30px 0 0 30px;
    margin-left: -40px;
    max-width: calc(100% + 40px);
}

.uk-border-rounded {
    border-radius: 10px;
}

.link-grid .el-link {
    font-size: 26px;
    line-height: 55px;
    color: var(--primary);
    border: 2px solid var(--primary);
    height: 55px;
    width: 55px;
    display: block;
    text-align: center;
    border-radius: 50%;
    position: absolute;
    bottom: 40px;
    right: 40px
}

.link-grid .el-content {
    width: calc(100% - 90px);
}

.tm-child-list-divider>ul>:nth-child(n+2),
.uk-list-divider>:nth-child(n+2) {
    border-color: var(--primary)
}

.onda {
    margin-bottom: -1px;
}

.onda-secondary {
    position: absolute;
    width: 100%;
    bottom: 0;
    z-index: 0;
}

.radius-30-half.uk-panel {
    border-radius: 30px;
    position: relative;
    z-index: 1;
    margin-bottom: -200px;
}

.ornament-title .el-title {
    position: relative;
}

.ornament-title .el-title:before {
    content: url(/images/layout/ornament-title-left.svg);
    position: absolute;
    margin-left: -45px;
    margin-top: 5px
}

.ornament-title .el-title:after {
    content: url(/images/layout/ornament-title-right.svg);
    position: absolute;
    margin-left: 15px;
    margin-top: 5px
}

.ornament-title-top:before {
    content: url(/images/layout/ornament-top-title.svg);
    display: block;
}

.quote:after {
    content: "";
    display: block;
    position: absolute;
    left: 50%;
    margin-top: 40px;
    margin-left: -32px;
    width: 64px;
    height: 64px;
    background: url(/images/layout/quote.svg) no-repeat;
    background-size: 100%;
}

.uk-divider-small.divider-orange::after {
    border-top: 2px solid var(--orange) !important;
}

.social-primary {
    color: var(--primary) !important;
    background: #fff !important;
}

.uk-section-primary:not(.uk-preserve-color) .uk-button-default {
    background-color: transparent;
    color: rgba(255, 255, 255, 1);
    border-color: rgba(255, 255, 255, 1);
}

.uk-section-primary:not(.uk-preserve-color) .uk-button-default:hover,
.uk-section-primary:not(.uk-preserve-color) .uk-button-default:focus {
    background-color: #fff;
    color: var(--primary);
    border-color: rgba(255, 255, 255, 1);
}

.leaflet-control-zoom-in,
.leaflet-touch .leaflet-bar a {
    color: #000;
}

.uk-slidenav {
    color: rgba(255, 255, 255, .5);
}

.uk-slidenav:hover,
.uk-slidenav:focus {
    color: rgba(255, 255, 255, .9)
}

.uk-slidenav:active {
    color: rgba(255, 255, 255, .5)
}

/* Typography */
body,
html {
    color: var(--dark);
}

.uk-h1,
h1 {
    font-size: 52px;
    line-height: 62px;
}

.uk-h2,
h2 {
    font-size: 40px;
    line-height: 50px;
}

.uk-h3,
h3,
.uk-card-title,
.menu .vrmenuslistcont .vrmenublock .vrmenublockname a {
    font-size: 32px;
    line-height: 42px;
}

.uk-h4,
h4 {
    font-size: 26px;
    line-height: 34px;
}

.uk-h5,
h5 {
    font-size: 22px;
    line-height: 30px;
}

.uk-h6,
h6 {
    font-size: 20px;
    line-height: 30px;
}

.black,
.uk-font-tertiary {
    font-weight: 900;
}

.wapp {
    position: fixed;
    bottom: 40px;
    right: 40px;
    z-index: 9999;
    background: transparent !important;
}

.wapp .fa-square-whatsapp {
    font-size: 50px;
    color: #25d366;
    background: url(/images/layout/wa-back.svg) center center no-repeat;
    background-size: 90% 90%;
    line-height: 30px;
}

/* NAVBAR */
.uk-navbar-left {
    flex-direction: row-reverse;
}

.uk-navbar .uk-icon-button {
    width: 40px;
    height: 40px;
}

/* BUTTON */
.uk-icon-button {
    border: 2px solid var(--primary);
    color: var(--primary);
    transition: .1s ease-in-out;
    transition-property: color, border-color;
    background-color: transparent;
}

.uk-icon-button:hover,
.uk-icon-button:focus {
    color: var(--dark);
    border-color: var(--dark);
}

/* FOOTER */
footer .uk-icon-button {
    width: 44px;
    height: 44px;
    font-size: 23px;
    line-height: 40px;
    margin-left: 10px
}

footer .black a,
footer .black a:hover,
footer .black a:focus {
    color: inherit !important;
}

/* PAGINE */
/* Homepage */

.slide-home img {
    width: 50%;
    right: 0;
    left: auto;
}

.slide-home .uk-light .uk-button-primary {
    background: var(--primary);
    color: #fff;
    border-color: var(--primary);
}

.slide-home .uk-light .uk-button-secondary {
    background: var(--secondary);
    color: #fff;
    border-color: var(--secondary);
}

.slide-home .uk-light .uk-button-primary:hover,
.slide-home .uk-light .uk-button-secondary:hover,
.slide-home .uk-light .uk-button-primary:focus,
.slide-home .uk-light .uk-button-secondary:focus {
    background: transparent;
    color: #fff;
    border-color: var(--white);
}

.slide-home .el-overlay.uk-panel {
    width: 50%;
    padding: 0;
    height: calc(100% - 40px);
    margin-top: -40px;
    display: flex;
    justify-content: center;
    position: relative;
    flex-direction: column;
}

.slide-home .el-overlay.uk-panel>* {
    padding-left: 40px;
    padding-right: 40px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

.slide-home .uk-position-bottom-center {
    background: var(--muted);
    width: 100%;
    height: 40px;
    margin: 0;
    --uk-position-margin-offset: 0px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.slide-home .uk-inverse-light .el-overlay.uk-panel {
    background: url(/images/layout/home/slideshow/ornament-top-left-m.svg) top left no-repeat, url(/images/layout/home/slideshow/ornament-bottom-left-m.svg) bottom left no-repeat,
        url(/images/layout/home/slideshow/ornament-top-right-m.svg) top right no-repeat, url(/images/layout/home/slideshow/ornament-bottom-right-m.svg) bottom right no-repeat;
    background-size: 10%
}

.slide-home .uk-inverse-dark .el-overlay.uk-panel {
    background: url(/images/layout/home/slideshow/ornament-top-left-m2.svg) top left no-repeat, url(/images/layout/home/slideshow/ornament-bottom-left-m2.svg) bottom left no-repeat,
        url(/images/layout/home/slideshow/ornament-top-right-m2.svg) top right no-repeat, url(/images/layout/home/slideshow/ornament-bottom-right-m2.svg) bottom right no-repeat;
    background-size: 10%
}

.slide-home .uk-light .uk-dotnav>.uk-active>* {
    background: var(--primary);
}

.slide-home .uk-light .uk-dotnav>*>* {
    background: var(--orange);
}

.slide-home .uk-light .uk-dotnav>*>*:hover,
.slide-home .uk-light .uk-dotnav>*>*:focus {
    background: var(--gray);
}

.spiral {
    background: url(/images/layout/home/spirals-left-bordeaux.svg) no-repeat left bottom, url(/images/layout/home/spirals-right-bordeaux.svg) no-repeat right 90px;
}

.uk-visible\@m.chi-home .uk-width-expand {
    margin-right: -40px;
    display: flex;
    align-items: center;
}

/* CHI SIAMO */
.team .el-content {
    position: absolute;
    top: -20px;
    left: 0;
    width: 100%;
    height: 100%;
}

.team .issa,
.team .gita,
.team .habi {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 250px;
    z-index: 1;
    position: relative;
}

.team .uk-panel img {
    position: relative;
    z-index: 2
}

.issa {
    background: url(/images/layout/chisiamo/issa.svg) center center no-repeat;
    background-size: 100%;
}

.gita {
    background: url(/images/layout/chisiamo/gita.svg) center center no-repeat;
    background-size: 100%;
}

.habi {
    background: url(/images/layout/chisiamo/habi.svg) center center no-repeat;
    background-size: 100%;
}

/* FAQ */
.ornaments-faq {
    background: url(/images/layout/faq/faq-top-left.svg) no-repeat top left, url(/images/layout/faq/faq-top-right.svg) no-repeat top right;
    background-size: 24%
}

.uk-accordion .el-item {
    background: #fff;
    padding: 30px;
    border-radius: 20px;
    border-top: 0;
    padding: 20px 30px;
}

.uk-accordion .el-item .el-title.uk-accordion-title {
    font-family: 'Nunito';
    line-height: 30px;
    font-weight: 900;
}

.uk-accordion .el-item.uk-open .el-title.uk-accordion-title {
    border-bottom: 2px solid var(--orange);
    padding-bottom: 20px
}

.uk-accordion-title::before {
    font-family: 'Font Awesome 6 Pro';
    font-weight: 400;
    font-size: 26px;
    line-height: 34px;
    width: auto;
    height: auto;
    margin-left: 0;
    background-image: none !important;
    color: var(--primary)
}

.uk-accordion .el-item.uk-open .uk-accordion-title::before {
    content: "\f056";
}

.uk-accordion .el-item .uk-accordion-title::before {
    content: "\f055";
}

/* NEWS */
.news-articolo .el-meta,
.news-articolo .el-content {
    font-weight: 700;
    color: var(--primary);
    display: inline-block;
}

.ornaments-news {
    background: url(/images/layout/news/news-top-left.svg) no-repeat top left, url(/images/layout/news/news-top-right.svg) no-repeat top right;
    background-size: 24%
}

/* MENU */
.menu #tm-main {
    background: var(--muted);
    padding-bottom: 20px;
    padding-top: 30px;
}

.menu .vrmenuslistcont .vrmenublock {
    flex-basis: 100%;
    margin: 0 0 20px;
    float: none;
    display: block;
    border-radius: 20px;
    background: #fff;
    border: none;
    padding: 30px;
    box-shadow: 4px 4px 30px rgba(255, 178, 91, 0.3);
    max-width: 800px;
}

.menu .vrmenuslistcont .vrmenublock img,
.menu .vrmenuslistcont .vrmenublock .vrmenublockdesc {
    display: none
}

.menu .vrmenuslistcont .vrmenublock .vrmenublockname {
    margin: 0;
    position: relative;
}

.menu .vrmenuslistcont .vrmenublock .vrmenublockname a {
    font-family: Changa;
    font-weight: 700;
    color: var(--primary);
    width: 100%;
    display: block;
    max-width: 80%;
    transition: all 0.2s;
}

.menu .vrmenuslistcont .vrmenublock .vrmenublockname a:hover,
.menu .vrmenuslistcont .vrmenublock .vrmenublockname a:focus {
    text-decoration: none;
    color: var(--secondary);
}

.menu .vrmenuslistcont .vrmenublock .vrmenublockname a:after {
    content: '\e0fc';
    font-family: "Font Awesome 6 Pro";
    float: right;
}

.menu .vrmenuslistcont .vrmenublock .vrmenublockname a:after {
    content: '\e09f';
    font-family: "Font Awesome 6 Pro";
    font-size: 26px;
    line-height: 55px;
    border: 2px solid;
    height: 55px;
    width: 55px;
    display: block;
    text-align: center;
    border-radius: 50%;
    top: -10px;
    position: absolute;
    right: 0;
}

.menu .vrmenu-detailslist {
    margin: 0;
    padding: 0;
}

.menu .vrmenu-detailsprodlist {
    border: 0;
    border-radius: 10px;
    background: #fff;
    padding: 30px;
}

.menu .vrmenu-detailsprodlist>div:nth-child(2n+1),
.menu .vrmenu-detailsprodlist>div {
    background: transparent;
    border: 0;
    padding: 0;
}

.menu .vrmenu-detailsprodsub,
.menu .vrmenu-detailsprodsub .vrmenu-detailsprodsubleft .vr-menudetailsprodsubnamedesc {
    padding: 0;
}

.menu .vrmenu-detailsprodsub {
    padding: 0;
    border-bottom: 4px dotted #FFB25B;
    padding-top: 20px;
}

.menu .vrmenu-detailshead {
    display: block;
    padding: 0;
    text-align: center;
}

.menu .vrmenu-sectionsbar {
    justify-content: center;
    background: transparent;
    border: 0;
    border-bottom: 1px solid rgba(87, 66, 60, 0.3);
    padding: 10px;
}

.menu .vrmenu-sectionsbar {
    justify-content: center;
    background: transparent;
    border: 0;
    border-bottom: 1px solid rgba(87, 66, 60, 0.3);
    padding: 10px;
}

.menu .vrmenu-sectionsbar>span {
    border-right: 0;
    padding: 0;
    margin: 0;
}

.menu .vrmenu-sectionsbar>span a,
.menu .vrmenu-sectionsp:first-child a:after {
    padding: 10px;
    display: inline;
}

.menu .vrmenu-sectionlight {
    color: inherit;
    border-bottom: 2px solid var(--primary) !important;
}

.menu .vrmenu-detailssection>h3 {
    padding: 20px 0;
    position: static;
    color: var(--primary);
    display: table;
    margin: 0;
    width: auto;
    border-bottom: 0;
}

.menu .vr-menudetailsprodsubnamedesc h6 {
    font-weight: 400;
}

.menu .vrmenu-detailsprodsub .vrmenu-detailsprodsubleft {
    width: 80%;
}

.menu .vrmenu-detailsprodsub .vrmenu-detailsprodsubleft .vr-menudetailsprodsubnamedesc {
    width: 100%;
}

.menu .vrmenu-detailsprodsub .vrmenu-detailsprodsubright {
    min-width: 20%;
    max-width: 20%;
}

.menu .vrmenu-detailsprodsubprice {
    margin: 0;
}

.menu .vrmenu-detailssectionsubdesc ul {
    list-style: none;
    padding: 0;
    font-weight: 700;
}

.menu .vrmenu-detailsprodsubdesc {
    margin-top: -20px;
}

.menu .vrmenu-detailsprod-optionslist {
    width: 100%;
}

.menu .vrmenu-detailsprodsubpricesp {
    padding: 0;
}

.menu .tm-bottom {
    padding-top: 0;
    background: var(--muted);
}

/*MOBILE*/
.uk-navbar-toggle {
    padding: 5px;
    background: var(--primary);
    width: 44px;
    height: 44px;
    min-height: 44px;
    border-radius: 27px;
}
.uk-close {
    color: #57423C;
}

/* RESPONSIVE */
@media (min-width: 1920px) {

    .spiral,
    .spiral-white {
        background-size: 20%;
    }

    .blog {
        margin-top: -270px !important;
    }
}

@media (max-width: 1399px) {
    .radius-30-half.uk-panel {
        max-width: calc(100% - 80px);
    }
}

@media (min-width: 1200px) {

    .uk-navbar-left,
    .uk-navbar-right {
        width: 40%;
    }

    .uk-navbar-left,
    .uk-navbar-right,
    [class*=uk-navbar-center] {
        justify-content: space-between;
    }

    .footer-logo .uk-width-1-2\@m.uk-first-column {
        width: 40% !important;
    }

    .uk-navbar-nav {
        gap: 24px;
    }

    .blog {
        margin-top: -230px;
    }

    .spiral-white {
        background: url(/images/layout/spirals-left-white.svg) no-repeat left 20%, url(/images/layout/spirals-right-white.svg) no-repeat right bottom;
    }
}

@media (min-width: 960px) and (max-width:1199px) {

    .uk-h6,
    h6 {
        font-size: 18px;
        line-height: 26px;
    }

    .uk-navbar-nav {
        gap: 18px;
    }

    .uk-navbar-left,
    .uk-navbar-right,
    [class*=uk-navbar-center] {
        gap: 20px;
    }

    .uk-navbar li a,
    .uk-navbar .uk-button {
        font-size: 16px;
    }

    .uk-navbar .uk-button {
        padding: 0 20px;
    }

    .uk-visible\@m.chi-home picture {
        display: block;
        width: calc(100% + 40px);
        height: 100%;
        margin-left: -40px;
        position: relative;
        overflow: hidden;
        border-radius: 30px 0 0 30px
    }

    .uk-visible\@m.chi-home picture img {
        position: absolute;
        left: 0;
        top: 0;
        min-height: 100%;
        min-width: 100%;
        border-radius: 0;
    }

    .blog {
        margin-top: -180px;
    }
}

@media screen and (max-width: 670px) {
    .menu .vrmenu-detailsprodsubprice {
        display: block;
        text-align: right;
        width: 100%;
    }

    .menu .vrmenu-detailsprodsub .vrmenu-detailsprodsubright {
        min-width: 100%;
        max-width: 100%;
    }

    .menu .vrmenu-detailsprodsub .vrmenu-detailsprodsubleft {
        width: 100%;
    }

    .menu .vrmenu-detailsprodsubpricesp {
        font-size: 18px !important;
    }
}

@media (min-width: 640px) {
    .footer-logo .uk-width-1-2\@m.uk-first-column {
        width: 50%;
    }

    .slider-home .uk-position-relative.uk-flex-1.uk-flex.uk-flex-column {
        margin-left: -20%;
        margin-right: -20%;
        overflow: hidden;
    }

    .slider-home .uk-slidenav-large {
        padding: 10px 20vw
    }

    .team .uk-panel img {
        padding: 18%;
    }
}

@media (max-width:959px) {
    .uk-heading-large {
        font-size: 48px;
        line-height: 52px;
    }

    .uk-h1,
    h1 {
        font-size: 42px;
        line-height: 52px;
    }

    .uk-h2,
    h2 {
        font-size: 30px;
        line-height: 40px;
    }

    .uk-h3,
    h3,
    .uk-card-title {
        font-size: 28px;
        line-height: 38px;
    }

    .uk-h4,
    h4 {
        font-size: 24px;
        line-height: 30px;
    }

    .uk-h5,
    h5 {
        font-size: 20px;
        line-height: 26px;
    }

    .uk-h6,
    h6 {
        font-size: 18px;
        line-height: 28px;
    }

    footer .uk-text-right {
        text-align: left !important;
    }
    
    .no-gap {
        margin-top: 70px !important;
    }

    .radius-30-half.uk-panel {
        max-width: calc(100% - 40px);
    }

    .radius-30-half img {
        border-radius: 30px;
        margin-left: -20px;
        max-width: calc(100% + 40px);
    }

    .slider-home.force-up {
        padding-top: 130px;
    }

    .wapp {
        bottom: 20px;
        right: 20px;
    }

    .blog {
        margin-top: -120px;
    }

    .icon-lista .el-item,
    .contatti-lista .uk-grid-margin {
        display: block;
        padding-top: 40px;
    }

    .icon-lista .el-item:first-child {
        padding-top: 0
    }

    .icon-lista h5,
    .icon-lista h6 {
        margin-top: 20px !important
    }

    .link-grid .el-content {
        width: 100%;
    }

    .link-grid .el-link {
        position: static;
        float: right;
    }

    .btn-menu.uk-position-relative {
    top: 190px !important;
    text-align: center !important;
    }

    .menu .vrmenu-sectionsbar {
    margin-top: 50px
    }
}

@media (max-width:767px) {
    .menu .vrmenu-sectionsbar {
        justify-content: left;
        overflow: scroll;
        scrollbar-width: auto;
    }
    .uk-heading-large {
        font-size: 42px;
        line-height: 52px;
    }
    .quote.creperie:after {
    margin-top: 10px;
    margin-left: -22px;
    width: 44px;
    height: 44px;
    }
}

@media screen and (max-width: 540px) {
    .menu .vrmenu-detailsprodsubpricesp {
        font-weight: 900;
        padding: 0;
    }
}

@media (max-width: 639px) {
    .slider-home .uk-position-relative.uk-flex-1.uk-flex.uk-flex-column {
        margin-left: 20px;
        margin-right: 20px;
        overflow: hidden;
    }

    .background-green .uk-background-width-1-1 {
        background-size: 240%;
    }

    .slide-home .el-overlay.uk-panel {
        height: 60% !important;
        margin-bottom: 0 !important;
    }

    .slide-home .el-meta {
        display: none;
    }

    .slide-home .uk-button {
        margin-top: -30px;
    }

    .slide-home .el-overlay.uk-panel>* {
        padding-left: 20px;
        padding-right: 20px;
    }

    .team .el-item.uk-panel {
        padding: 11vw;
    }

    .team .uk-panel img {
        padding: 4%;
    }
    h2.uk-h1  {
    font-size: 32px;
    line-height: 42px;
    }

.menu .vrmenuslistcont .vrmenublock {
    padding: 20px;
}
   .menu .vrmenuslistcont .vrmenublock .vrmenublockname{
    display:flex;
    min-height: 80px;
    align-items: center;
    }

.menu .vrmenuslistcont .vrmenublock .vrmenublockname a {
    font-size: 30px;
    line-height: 34px;
}

.menu .vrmenuslistcont .vrmenublock .vrmenublockname a:after {
    font-size: 24px;
    line-height: 40px;
    height: 40px;
    width: 40px;
    top: 50%;
    margin-top: -24px
}
}

@media (orientation: portrait) {
    .slide-home img {
        height: 40%;
        width: 100%;
    }

    .slide-home .el-overlay.uk-panel {
        width: 100%;
        padding: 0;
        height: calc(60% - 40px);
        margin-bottom: 40px;
    }

    .slide-home .uk-position-cover.uk-flex.uk-flex-left.uk-flex-middle {
        align-items: flex-end
    }

    .zoom-picture .uk-background-top-center {
        background-position: 50% 15%;
    }

    .zoom-picture .uk-background-cover {
        background-size: 250%;
    }
    .onda.h-mobile .uk-background-cover {
    min-height: 45vh !important;
    }
}

@media (orientation: landscape) {
    .zoom-picture .uk-background-top-center {
        background-position: 50% 14%;
    }

    .zoom-picture .uk-background-cover {
        background-size: 150%;
    }
}