/*
Theme Name: Bodylix Hello Child
Description: Custom child theme for Bodylix, built on Hello Elementor.
Author: Bodylix
Template: hello-elementor
Version: 1.0.0
Text Domain: bodylix-hello-child
*/

:root {
    --bodylix-green: #1FA35B;
    --bodylix-navy: #1D2939;
    --bodylix-orange: #FF7A00;
    --bodylix-text: #344054;
    --bodylix-border: #E4E7EC;
}

/* Header */
.site-header,
header.site-header {
    background: #fff;
}

.site-header .site-navigation ul.menu,
.site-header ul.menu {
    display: flex;
    align-items: center;
    gap: 28px;
    margin: 0;
    padding: 0;
}

.site-header .site-navigation ul.menu li,
.site-header ul.menu li {
    margin: 0;
    padding: 0;
}

.site-header .site-navigation ul.menu li a,
.site-header ul.menu li a {
    color: var(--bodylix-navy);
    font-size: 16px;
    font-weight: 500;
    line-height: 1.4;
    text-decoration: none;
    transition: color .2s ease;
}

.site-header .site-navigation ul.menu li a:hover,
.site-header ul.menu li a:hover {
    color: var(--bodylix-green);
}

.site-header .site-logo img,
.site-header .custom-logo {
    max-width: 240px;
    height: auto;
}

/* Footer */
.site-footer,
footer.site-footer {
    background: var(--bodylix-navy);
    color: #fff;
}

.site-footer .menu,
.site-footer ul.menu {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 18px 30px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.site-footer .menu li,
.site-footer ul.menu li {
    margin: 0;
    padding: 0;
}

.site-footer .menu a,
.site-footer ul.menu li a {
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    text-decoration: none;
    transition: color .2s ease;
}

.site-footer .menu a:hover,
.site-footer ul.menu li a:hover {
    color: var(--bodylix-green);
}

/* General */
a {
    transition: color .2s ease;
}

.elementor-button,
button,
input[type="submit"] {
    transition: background-color .2s ease, transform .2s ease;
}

.elementor-button:hover,
button:hover,
input[type="submit"]:hover {
    transform: translateY(-1px);
}

/* Mobile */
@media (max-width: 767px) {
    .site-header .site-logo img,
    .site-header .custom-logo {
        max-width: 190px;
    }

    .site-header .site-navigation ul.menu,
    .site-header ul.menu {
        gap: 14px 20px;
    }

    .site-header .site-navigation ul.menu li a,
    .site-header ul.menu li a {
        font-size: 15px;
    }

    .site-footer .menu,
    .site-footer ul.menu {
        gap: 14px 20px;
    }

    .site-footer .menu a,
    .site-footer ul.menu li a {
        font-size: 14px;
    }
}
