/*
Theme Name: asticotheme
Theme URI: None
Author: asticoweb.com
Author URI: https://asticoweb.com
Description: Simple wordpress theme made with ❤️ by asticoweb.com | All rights reserved ©
Tags: theme, madewithlove, asticonet, asticoweb, asticoweb.com, asticotheme, coding, spreadthelove, personal, personaluseonly
Version: 5.0
License: License asticoweb.com
License URI: https://asticoweb.com
Text Domain: asticotheme
*/

::selection {
    background: var(--cyan);
    color: white;
    text-shadow: none;
}

::-webkit-selection {
    background: var(--cyan);
    color: white;
    text-shadow: none;
}

::-moz-selection {
    background: var(--cyan);
    color: white;
    text-shadow: none;
}

*,
*:after,
*:before {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    outline: none !important;
    text-decoration: none;

}

section,
div,
header,
nav,
article,
section,
aside,
footer,
h1,
h2,
h3,
h4,
h5,
h6,
p,
a,
ul,
li,
figure,
figcaption,
class,
img {

    margin: 0;
    padding: 0;
}


html,
body {

    width: 100%;
    padding: 0;
    margin: 0;
    font-family: 'Funnel Display', sans-serif;
    position: relative;
    scroll-behavior: smooth;
    -webkit-tap-highlight-color: transparent;
}

body:not(#tinymce) {

    overflow-x: hidden;
    overflow-y: overlay;
    background: var(--bleu);
}

::-webkit-scrollbar {
    /* width: 10px;
    height: 10px; */
    width: 0;
    height: 0;
}

::-webkit-scrollbar-thumb {
    background: var(--vert);
}

::-webkit-scrollbar-button {
    display: none;
}

.page main>section>h1,
br.clear,
a.post-edit-link {

    display: none;
}

input::placeholder,
textarea::placeholder {

    opacity: 1 !important;
}

input {

    accent-color: var(--cyan);
}

:root {
    --bleu: #181932;
    --bleu2: #28285b;
    --vert: #8bbe44;
    --cyan: #2bb6ea;
    --gris25: #3c3d3f;
    --gris50: #76787c;
    --gris75: #b6b7bf;
    --blanc90: #dadbe5;
    --blanc95: #e7e8f2;
}

.balance {

    text-wrap: balance;
}

a {

    font-size: 1em;
}

.gradient-title .elementor-heading-title {

    background-image: linear-gradient(30deg, var(--cyan), var(--vert));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}

/*------------------------------------*\
    ARGOSIA TEXT
\*------------------------------------*/

.argosia-text span:first-child,
.argosia-text span:last-child {

    display: inline-block;
    transform: skew(-22.5deg) translate(0.075em);
}

.argosia-text span:last-child {

    transform: skew(22.5deg) translate(-0.075em);
}

.argosia-text span:nth-child(2) {

    position: relative;
}

.argosia-text span:nth-child(2):after {

    content: '';
    position: absolute;
    width: .175em;
    height: auto;
    aspect-ratio: 1;
    border-radius: 100%;
    left: 50%;
    top: 50%;
    translate: -50% -50%;
    background-color: currentColor;
}

/*------------------------------------*\
    BTN
\*------------------------------------*/

.elementor-button[type="submit"] {

    text-align: left;
    line-height: 0;
}

.elementor-button[type="submit"] .elementor-button-content-wrapper,
.elementor-widget-button:not(.underline) {

    line-height: 0;
    gap: 0 !important
}

.elementor-button[type="submit"] .elementor-button-content-wrapper,
.elementor-widget-button:not(.underline) a.elementor-button {

    background: none;
    padding: 0;
    border-radius: 0;
    display: inline-flex;
    align-items: center;
    text-wrap: nowrap;
}

.elementor-button[type="submit"] .elementor-button-content-wrapper:before,
.elementor-button[type="submit"] .elementor-button-content-wrapper:after,
.elementor-widget-button:not(.underline) a.elementor-button:before,
.elementor-widget-button:not(.underline) a.elementor-button:after {

    content: '';
    display: inline-block;
    width: 61.5px;
    height: 61.5px;
    border-radius: 100%;
    background-color: white;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.1 8.1'%3E%3Cpolygon fill='%23181932' points='0 0 0 1.66 5.27 1.66 0 6.93 1.17 8.1 6.44 2.83 6.44 8.1 8.1 8.1 8.1 0 0 0'/%3E%3C/svg%3E");
    background-size: 30%;
    background-position: center;
    background-repeat: no-repeat;
    transition:
        width .5s cubic-bezier(.75, 0, .25, 1),
        height .5s cubic-bezier(.75, 0, .25, 1),
        rotate .5s cubic-bezier(.75, 0, .25, 1);
}

.elementor-button[type="submit"] .elementor-button-content-wrapper:before,
.elementor-widget-button:not(.underline) a.elementor-button:before {

    width: 0;
    height: 0;
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.1 8.1'%3E%3Cpolygon fill='%23181932' points='0 0 0 1.66 5.27 1.66 0 6.93 1.17 8.1 6.44 2.83 6.44 8.1 8.1 8.1 8.1 0 0 0'/%3E%3C/svg%3E"),
        linear-gradient(45deg, var(--cyan), var(--vert));

    background-size: 30%, 100% 100%;
}

.elementor-button[type="submit"] .elementor-button-content-wrapper:hover::before,
.elementor-widget-button:not(.underline) a.elementor-button:hover::before {
    width: 61.5px;
    height: 61.5px;
    rotate: 45deg;
}

.elementor-button[type="submit"] .elementor-button-content-wrapper:hover::after,
.elementor-widget-button:not(.underline) a.elementor-button:hover::after {
    width: 0;
    height: 0;
    rotate: 45deg;
}

.elementor-button[type="submit"] .elementor-button-content-wrapper .elementor-button-text,
.elementor-widget-button:not(.underline) a.elementor-button .elementor-button-content-wrapper {

    background-color: var(--bleu2);
    padding: 15px 30px;
    border-radius: 100vh;
    line-height: 1.75em;
}

/*------------------------------------*\
    UNDERLINE
\*------------------------------------*/


.underline a,
.elementor-widget-text-editor a {

    background-image: linear-gradient(currentColor, currentColor);
    background-repeat: no-repeat;
    background-size: 100% 2px;
    background-position: bottom left;
    transition: background-size .5s cubic-bezier(.75, 0, .25, 1);
}

.underline a:hover,
.elementor-widget-text-editor a {

    background-size: 0% 2px;
    background-position: bottom right;
}

.underline a {

    background-image: linear-gradient(to right, var(--cyan), var(--vert));
}

/*------------------------------------*\
    EXIT
\*------------------------------------*/

#exit {

    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100lvh;
    background-color: rgb(24, 25, 50, .75);
    backdrop-filter: blur(10px);
    z-index: 999;
    display: none;
    cursor: pointer;
}

/*------------------------------------*\
    SWIPER
\*------------------------------------*/

.custom-swiper .swiper {

    overflow: visible !important;
}

.custom-swiper .e-loop-item:not(:last-of-type) {

    border-right: solid 1px rgba(255, 255, 255, .25) !important;
}

.custom-swiper .elementor-swiper-button {

    top: calc(100% + 50px) !important;
    background: var(--bleu2);
    transform: none !important;
    width: 61.5px !important;
    height: 61.5px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    font-size: 16px !important;
    border-radius: 100% !important;
}

.custom-swiper .elementor-swiper-button:hover {

    background: var(--cyan);
}

.custom-swiper .swiper-button-disabled {

    opacity: .25 !important;
    pointer-events: none !important;
}

.custom-swiper .elementor-swiper-button-prev {

    left: 50px !important;
}

.custom-swiper .elementor-swiper-button-next {

    right: auto !important;
    left: 117.75px !important;
    rotate: 180deg;
}

.custom-swiper:has(.e-loop-item:hover) .e-loop-item:not(:hover) .img:before {
    opacity: 1 !important;
}

.custom-swiper:has(.e-loop-item:hover) .e-loop-item:not(:hover) .img:after {
    opacity: .95 !important;
}

/*------------------------------------*\
    LOADER
\*------------------------------------*/

#icon-anim {

    position: absolute;
    z-index: 99999;
    width: 100px;
    height: auto;
    right: 50px;
    bottom: 50px;
    rotate: -90deg;
    scale: 1.5;
    animation: rotate 1s forwards, scale 1s forwards, icon 1s 1s forwards;
    display: none;
    pointer-events: none;
}

body.home #icon-anim {

    display: inherit;
}

@keyframes icon {

    to {

        opacity: 0;
        filter: blur(10px);
    }
}

#icon-anim #dot {

    scale: 0;
    animation: scale 1s forwards;
    transform-origin: center;
}

#icon-anim .circle {

    transform-box: fill-box;
    animation: translate 1s forwards;
}

#icon-anim #top {

    translate: 0 -100%;
}

#icon-anim #right {

    translate: 100%;
}

#icon-anim #bottom {

    translate: 0 100%;
}

#icon-anim #left {

    translate: -100%;
}

@keyframes rotate {

    to {

        rotate: 0deg;
    }
}

@keyframes translate {

    to {

        translate: 0;
    }
}

@keyframes scale {

    to {

        scale: 1;
    }
}

@keyframes opacity {

    to {

        opacity: 0;
    }
}

/*------------------------------------------------------------------------*/

#loader {
    position: fixed;
    z-index: 99998;
    inset: 0;
    display: flex;
    pointer-events: none;
}

#loader .column {
    width: 25%;
    height: 100%;
    background-color: var(--bleu2); 
}

#loader .column,
#loader.active .column {
    transform: translateY(0);
    transition: transform 0.5s cubic-bezier(.75, 0, .25, 1);
}

/*------------------------------------*/

#loader.loaded .column {
    transform: translateY(100%);
}

#loader.loaded .column:nth-child(1) {
    transition-delay: 0s;
}

#loader.loaded .column:nth-child(2) {
    transition-delay: 0.075s;
}

#loader.loaded .column:nth-child(3) {
    transition-delay: 0.15s;
}

#loader.loaded .column:nth-child(4) {
    transition-delay: 0.225s;
}

/*------------------------------------*/

body.home #loader.loaded .column:nth-child(1) {
    transition-delay: .75s;
}

body.home #loader.loaded .column:nth-child(2) {
    transition-delay: .825s;
}

body.home #loader.loaded .column:nth-child(3) {
    transition-delay: .865s;
}

body.home #loader.loaded .column:nth-child(4) {
    transition-delay: .975s;
}

/*------------------------------------*/

#loader.prepare .column {
    transform: translateY(-100%);
    transition: none;
}

/*------------------------------------*/


#loader.active .column:nth-child(1) {
    transition-delay: 0.225s;
}

#loader.active .column:nth-child(2) {
    transition-delay: 0.15s;
}

#loader.active .column:nth-child(3) {
    transition-delay: 0.075s;
}

#loader.active .column:nth-child(4) {
    transition-delay: 0s;
}

/*------------------------------------*\
    HEADER
\*------------------------------------*/

#header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 9999;
}

#header,
#header .wrapper {

    pointer-events: none;
}

#nav ul.contact,
#header .sub-menu-mask {

    display: none;
}

#header .wrapper {
    max-width: 1680px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 25px;
}

#header .container {

    display: flex;
    align-items: center;
    justify-content: space-between;
    background-color: rgba(255, 255, 255, .5);
    backdrop-filter: blur(10px);
    border-radius: 100vh;
    border: solid 1px rgba(255, 255, 255, .25);
    width: 750px;
    transition: width .5s cubic-bezier(.75, 0, .25, 1), background-color .5s cubic-bezier(.75, 0, .25, 1);
    pointer-events: auto;
}

#header .container:hover,
#header .container.submenu-active {
    background-color: white;
}

#header .container.submenu-active {

    width: 100%;
}

#header a#logo {

    background-color: white;
    padding: 6.75px;
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

#header a#logo svg {

    height: 61.5px;
    width: auto;
    fill: var(--bleu2);
}

#header ul#menu-menu {

    list-style: none;
    display: flex;
    gap: 50px;
    padding: 0 50px;
}

#header ul#menu-menu>li>a {

    display: inline-block;
    line-height: 75px;
    color: var(--bleu);

    background-image: linear-gradient(to right, var(--cyan), var(--vert));
    background-repeat: no-repeat;
    background-size: 0% 4px;
    background-position: bottom right;
    transition: background-size .5s cubic-bezier(.75, 0, .25, 1);
    translate: 0 1px;
}


#header ul#menu-menu>li:hover>a {

    background-size: 100% 4px;
    background-position: bottom left;
}

#header ul#menu-menu li.menu-item-has-children>a:after {

    content: '';
    display: inline-block;
    height: 1cap;
    width: 1cap;
    background-color: var(--cyan);
    margin-left: 6.25px;
    mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9.65 6.01'%3E%3Cpolygon points='8.48 0 4.82 3.66 1.17 .01 0 1.19 4.82 6.01 9.65 1.17 8.48 0'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-position: bottom;
}

#header .btn-wrapper {

    display: flex;
    gap: 6.75px;
    padding: 6.75px;
}

#header a#contact {

    color: white;
    background-color: var(--bleu2);
    padding: 15px 30px;
    display: block;
    height: 61.5px;
    border-radius: 100vh;
    transition: background-color .5s;
}


#header a#contact:hover {

    background-color: var(--bleu);
}


#header a#contact:after,
.underline .elementor-button-text:after {

    content: '';
    display: inline-block;
    height: 1cap;
    width: 1cap;
    background-color: white;
    margin-left: 12.5px;
    mask-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.1 8.1'%3E%3Cpolygon points='0 0 0 1.66 5.27 1.66 0 6.93 1.17 8.1 6.44 2.83 6.44 8.1 8.1 8.1 8.1 0 0 0'/%3E%3C/svg%3E");
    mask-repeat: no-repeat;
    mask-position: bottom;
}

#header .sub-menu-mask {

    width: calc(100% + 2px);
    position: absolute;
    left: -1px;
    top: 37.5px;
    z-index: -1;
    overflow: hidden;
    border-radius: 0 0 15px 15px;
}

#header .sub-menu {

    width: 100%;
    height: 100%;
    background: white;
    position: relative;
    border-radius: 0 0 15px 15px;
    padding: 50px 12.5px 12.5px;
    border: solid 1px rgba(255, 255, 255, .25);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 1fr);
    gap: 12.5px;
    overflow: hidden;
}

#header .sub-menu:before {

    content: '';
    position: absolute;
    left: 0;
    top: 37.5px;
    width: 100%;
    height: 1px;
    background-color: var(--blanc90);
}

#header .sub-menu li {

    list-style: none;
    transform: translateY(25px);
    transition: transform .5s cubic-bezier(.75, 0, .25, 1);
}

#header .sub-menu li.is-visible {

    transform: translateY(0);
}

#header .sub-menu li a {

    display: flex;
    border-radius: 7.5px;
    background-color: var(--blanc90);
    border: solid 1px rgba(255, 255, 255, .25);
    overflow: hidden;
    width: 100%;
    position: relative;
    aspect-ratio: 16/9;
}

#header .sub-menu li a:after {

    content: '';
    position: absolute;
    width: 50px;
    height: 50px;
    border-radius: 100%;
    right: 18.75px;
    top: 18.75px;
    background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8.1 8.1'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23181932; %7D %3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='0 0 0 1.66 5.27 1.66 0 6.93 1.17 8.1 6.44 2.83 6.44 8.1 8.1 8.1 8.1 0 0 0'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 33.333%;
    background-color: rgba(255, 255, 255, .5);
    backdrop-filter: blur(10px);
    transition: rotate .5s cubic-bezier(.75, 0, .25, 1);

}

#header .sub-menu li a:hover::after {

    rotate: 45deg;
}

#header .sub-menu li a img {

    position: absolute;
    inset: 0;
    object-fit: cover;
    object-position: center;
    width: 100%;
    height: 100%;
    transition: scale .5s cubic-bezier(.75, 0, .25, 1);
}

#header .sub-menu li a:hover img {

    scale: 1.1;
}

#header .sub-menu-title {

    padding: 25px;
    padding-top: 75px;
    background-image: linear-gradient(to top, rgba(24, 25, 50, 1) 0%, rgba(24, 25, 50, 0) 100%);
    color: white;
    font-size: 18px;
    line-height: 1.25;
    text-wrap: balance;
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 0;
    z-index: 1;

}

/*------------------------------------*\
    BURGER
\*------------------------------------*/

#menu {

    cursor: pointer;
    padding: 0;
    width: 61.5px;
    height: 61.5px;
    background: linear-gradient(45deg, var(--cyan), var(--vert));
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    display: none;
}

#menu span {

    width: 24.6px;
    height: 3px;
    background: var(--bleu2);
    position: absolute;
    transition: margin .3s, transform .3s;
    transform-origin: center;
}

#menu span.a {

    margin-bottom: 9.2px;
}

.active-first-span {

    transform: rotate(45deg) !important;
    margin: 0 !important;
}

#menu span.b {

    margin-top: 9.2px;
}

.active-last-span {

    transform: rotate(-45deg) !important;
    margin: 0 !important;
}

/*------------------------------------*\
    HEADER
\*------------------------------------*/

#footer {

    border-top: solid 1px rgba(255, 255, 255, .25);
    overflow: hidden;
}

#footer .wrapper {
    max-width: 1680px;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
}

#footer .columns {

    position: absolute;
    inset: 0;
    z-index: -1;
    display: flex;
    max-width: 1680px;
    margin: 0 auto;
}

#footer .columns .column:not(:last-child) {

    width: 25%;
    border-right: solid 1px rgba(255, 255, 255, .25);
}

#footer .container {

    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 50px;
}

#footer li {

    list-style: none;
}

#footer ul.contact a,
#footer .bottom button,
#footer .bottom a {

    background-image: linear-gradient(to right, var(--cyan), var(--vert));
    background-size: 0% 2px;
    background-position: bottom right;
    background-repeat: no-repeat;
    transition: background-size .5s cubic-bezier(.75, 0, .25, 1);
}

#footer ul.contact a:hover,
#footer .bottom button:hover,
#footer .bottom a:hover {

    background-size: 100% 2px;
    background-position: bottom left;
}

#footer .middle {

    padding: 0;
    padding-top: 50px;
    overflow: hidden;
}

#footer nav a,
#footer .baseline span {

    font-family: var(--e-global-typography-57a0987-font-family), Sans-serif;
    font-size: var(--e-global-typography-57a0987-font-size);
    font-weight: var(--e-global-typography-57a0987-font-weight);
    text-transform: var(--e-global-typography-57a0987-text-transform);
    line-height: var(--e-global-typography-57a0987-line-height);
}

#footer .baseline span {

    background-image: linear-gradient(30deg, var(--cyan), var(--vert));
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    line-height: 2;
    margin: -0.5em 0;
}

#footer a,
#footer button,
#footer p {

    color: white;
    font-weight: normal;
}

#footer .sub-menu {

    display: none;
}

#footer p {

    width: 300px;
}

#footer nav {

    position: absolute;
    text-align: center;
    left: 50%;
    translate: -50%;
}

#footer nav a {

    font-size: 18px;
}

#footer nav a:before,
#footer nav a:after {

    transition: padding .5s cubic-bezier(.75, 0, .25, 1);
}

#footer nav a:before {
    content: '\00005B';
}

#footer nav a:after {
    content: '\00005D';
}

#footer nav a:hover::before {
    padding-right: 6.25px;
}

#footer nav a:hover::after {
    padding-left: 6.25px;
}

#footer ul.contact {

    text-align: right;
}

#footer svg {

    fill: white;
    width: 100%;
    height: auto;
}

#footer svg>* {

    translate: 0 100%;
    transition: translate .5s cubic-bezier(.75, 0, .25, 1);
}

#footer svg>.active-footer {

    translate: 0 !important;
}

#footer .bottom {

    background-color: var(--bleu);
    padding: 25px;
    border-top: solid 1px rgba(255, 255, 255, .25);
}

#footer .bottom ul {

    display: flex;
    gap: 50px;
}

#footer .bottom a,
#footer .bottom button {

    color: var(--gris50);
    font-size: 16px;
}

/*------------------------------------------------------------------------*\
    RESPONSIVE
\*------------------------------------------------------------------------*/

@media only screen and (min-width:1680px) {

    #footer .wrapper,
    .custom-swiper .swiper-wrapper {

        border-left: solid 1px rgba(255, 255, 255, .25);
        border-right: solid 1px rgba(255, 255, 255, .25);
    }
}


@media only screen and (max-width:1024px) {

    .custom-swiper .swiper {

        padding-right: 50px;
    }

    .custom-swiper .elementor-swiper-button {

        display: none !important;
    }

    /*------------------------------------*\
    HEADER
\*------------------------------------*/

    #header .container {

        width: 100%;
    }

    #nav ul.contact {

        display: inherit;
        list-style: none;
        background-color: var(--blanc95);
        padding: 25px;
    }


    #nav ul.contact li a {

        color: var(--gris50);
    }

    #menu {

        display: flex;
    }

    #nav {

        position: absolute;
        top: calc(100% + 12.5px);
        background: white;
        width: 100%;
        border-radius: 15px;
        overflow: hidden;
        display: none;
    }

    #header ul#menu-menu {
        list-style: none;
        display: flex;
        gap: 50px;
        padding: 0;
        flex-direction: column;
        gap: 0;

    }

    #header ul#menu-menu>li {

        border-bottom: solid 1px rgba(0, 0, 0, .25);
    }

    #header ul#menu-menu>li>a {

        font-size: var(--e-global-typography-primary-font-size);
        font-weight: var(--e-global-typography-primary-font-weight);
        line-height: var(--e-global-typography-primary-line-height);
        translate: none;
        line-height: 1;
        padding: 25px;
        width: 100%;
        display: flex;
        justify-content: space-between;
    }

    #header .sub-menu-mask {
        display: inherit;
        width: 100%;
        position: static;
        border-radius: 0;
    }

    #header .sub-menu {

        padding: 0 25px 25px 25px;
        border: none;
        display: flex;
        flex-wrap: nowrap;
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch;
        scroll-snap-type: x mandatory;
    }

    #header .sub-menu:before {

        display: none;
    }

    #header .sub-menu li {

        transform: none;
        width: calc(50% - 75px);
        min-width: calc(50% - 75px);
        scroll-snap-align: center;
    }

    /*------------------------------------*\
    FOOTER
\*------------------------------------*/

    #footer .container.top {

        flex-wrap: wrap;
        gap: 50px;
        justify-content: center;
    }

    #footer .container.bottom {

        flex-wrap: wrap;
        justify-content: center;
    }

    #footer p {
        width: 100%;
        text-wrap: balance;
        text-align: center;
    }

    #footer nav {

        position: static;
        translate: none;
    }

    #footer ul.contact {

        text-align: center;
    }

    #footer .bottom ul {

        gap: 25px;
    }
}

@media only screen and (max-width:650px) {

    #icon-anim {

        width: 61.5px;
        bottom: 25px;
        right: 25px;
    }

    /*------------------------------------*\
    BTN
\*------------------------------------*/


    .elementor-widget-button:not(.underline) a.elementor-button:before,
    .elementor-widget-button:not(.underline) a.elementor-button:after,
    .elementor-widget-button:not(.underline) a.elementor-button:hover::before {
        width: 58px;
        height: 58px;
    }

    .elementor-widget-button:not(.underline) a.elementor-button:before {

        width: 0;
        height: 0;
    }

    /*------------------------------------*\
    HEADER
\*------------------------------------*/


    #header .wrapper {

        padding: 12.5px;
    }

    #header .sub-menu li {

        transform: none;
        width: calc(100% - 50px);
        min-width: calc(100% - 50px);
    }

    #header .sub-menu li a {

        aspect-ratio: 4/3;
    }

    /*------------------------------------*\
    FOOTER
\*------------------------------------*/

    #footer .container {

        padding: 25px;
    }

    #footer .middle {

        padding: 0;
        padding-top: 25px;
    }

    #footer .bottom {

        text-align: center;
        line-height: 1;
    }

    #footer .bottom a,
    #footer .bottom button {

        font-size: 12px;
    }

}