*,
*::before,
*::after{
    box-sizing:border-box;
}

html,
body{
    margin:0;
    padding:0;
}

.gs-header{
    position:fixed;
    top:0;
    left:0;
    z-index:1000;
    width:100%;
    font-family:'Montserrat',sans-serif;
    background:transparent;
    border-bottom:1px solid transparent;
    transition:background 300ms ease,border-color 300ms ease,box-shadow 300ms ease;
}

.gs-header-inner{
    width:100%;
    max-width:1480px;
    min-height:94px;
    margin:0 auto;
    padding:0 55px;
    display:grid;
    grid-template-columns:180px 1fr 280px;
    align-items:center;
    transition:min-height 300ms ease;
}

.gs-header-logo{
    display:inline-flex;
    justify-self:start;
    align-items:center;
    position:relative;
}

.gs-header-logo img{
    display:block;
    width:auto;
    height:48px;
    transition:opacity 250ms ease;
}

.gs-header-logo-dark{
    position:absolute;
    left:0;
    opacity:0;
    pointer-events:none;
}

.gs-header-nav{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:50px;
}

.gs-header-nav a,
.gs-header-phone{
    color:#ffffff;
    font-size:12px;
    font-weight:600;
    line-height:1.4;
    text-decoration:none;
    transition:color 250ms ease;
}

.gs-header-nav a.is-active{
    color:#d7b273;
}

.gs-header-phone{
    font-size:17px;
    font-weight:700;
}

.gs-header-contact{
    justify-self:end;
    display:flex;
    align-items:center;
    gap:18px;
}

.gs-header-socials{
    display:flex;
    align-items:center;
    gap:7px;
}

.gs-header-socials a{
    width:34px;
    height:34px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#d7b273;
    border:1px solid rgba(215,178,115,0.45);
    background:rgba(255,255,255,0.035);
    text-decoration:none;
    transition:background 250ms ease,color 250ms ease,transform 250ms ease,border-color 250ms ease;
}

.gs-header-socials a:hover{
    color:#292e30;
    background:#d7b273;
    border-color:#d7b273;
    transform:translateY(-2px);
}

.gs-header-socials svg,
.gs-header-mobile-socials svg{
    width:16px;
    height:16px;
    fill:currentColor;
}

.gs-header-socials a:nth-child(2) svg,
.gs-header-mobile-socials a:nth-child(2) svg{
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
}

.gs-header-socials .gs-header-icon-fill,
.gs-header-mobile-socials .gs-header-icon-fill{
    fill:currentColor;
    stroke:none;
}

.gs-header-mobile-socials{
    display:none;
}

.gs-header-burger{
    display:none;
    width:44px;
    height:44px;
    padding:0;
    border:1px solid rgba(215,178,115,0.45);
    background:rgba(255,255,255,0.04);
    color:#d7b273;
    cursor:pointer;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    gap:5px;
    transition:background 250ms ease,border-color 250ms ease;
}

.gs-header-burger span{
    display:block;
    width:20px;
    height:1.5px;
    background:currentColor;
    transition:transform 250ms ease,opacity 200ms ease;
}

.gs-header.is-scrolled{
    background:rgba(255,255,255,0.98);
    border-bottom-color:rgba(215,178,115,0.20);
    box-shadow:0 12px 36px rgba(24,29,31,0.10);
    backdrop-filter:blur(12px);
}

.gs-header.is-scrolled .gs-header-inner{
    min-height:78px;
}

.gs-header.is-scrolled .gs-header-logo-light{
    opacity:0;
}

.gs-header.is-scrolled .gs-header-logo-dark{
    opacity:1;
}

.gs-header.is-scrolled .gs-header-nav a,
.gs-header.is-scrolled .gs-header-phone{
    color:#53585a;
}

.gs-header.is-scrolled .gs-header-socials a{
    color:#53585a;
    background:#ffffff;
    border-color:rgba(215,178,115,0.50);
}

.gs-header.is-scrolled .gs-header-socials a:hover{
    color:#292e30;
    background:#d7b273;
}

.gs-header.is-scrolled .gs-header-nav a.is-active,
.gs-header.is-scrolled .gs-header-nav a:hover,
.gs-header.is-scrolled .gs-header-phone:hover{
    color:#c2974b;
}

.gs-header.is-scrolled .gs-header-burger,
.gs-header.menu-open .gs-header-burger{
    color:#53585a;
    background:#ffffff;
    border-color:rgba(215,178,115,0.55);
}

.gs-header.menu-open{
    background:rgba(255,255,255,0.99);
    border-bottom-color:rgba(215,178,115,0.20);
    box-shadow:0 12px 36px rgba(24,29,31,0.10);
}

.gs-header.menu-open .gs-header-logo-light{
    opacity:0;
}

.gs-header.menu-open .gs-header-logo-dark{
    opacity:1;
}

.gs-header.menu-open .gs-header-phone{
    color:#53585a;
}

.gs-header.menu-open .gs-header-burger span:nth-child(1){
    transform:translateY(6.5px) rotate(45deg);
}

.gs-header.menu-open .gs-header-burger span:nth-child(2){
    opacity:0;
}

.gs-header.menu-open .gs-header-burger span:nth-child(3){
    transform:translateY(-6.5px) rotate(-45deg);
}

@media(max-width:1100px){
    .gs-header-inner{
        padding:0 35px;
        grid-template-columns:150px 1fr 240px;
    }

    .gs-header-nav{
        gap:24px;
    }
}

@media(max-width:768px){
    .gs-header-inner{
        min-height:72px;
        padding:0 25px;
        grid-template-columns:1fr auto auto;
        gap:16px;
    }

    .gs-header-logo img{
        height:40px;
    }

    .gs-header-nav{
        position:absolute;
        top:100%;
        left:0;
        width:100%;
        display:flex;
        flex-direction:column;
        align-items:stretch;
        gap:0;
        padding:10px 25px 22px;
        background:rgba(255,255,255,0.99);
        border-top:1px solid rgba(215,178,115,0.14);
        border-bottom:1px solid rgba(215,178,115,0.22);
        box-shadow:0 20px 36px rgba(24,29,31,0.12);
        opacity:0;
        visibility:hidden;
        transform:translateY(-10px);
        pointer-events:none;
        transition:opacity 250ms ease,visibility 250ms ease,transform 250ms ease;
    }

    .gs-header-nav a,
    .gs-header.is-scrolled .gs-header-nav a{
        width:100%;
        padding:15px 0;
        color:#53585a;
        font-size:13px;
        border-bottom:1px solid rgba(83,88,90,0.10);
    }

    .gs-header-nav a:last-child{
        border-bottom:none;
    }

    .gs-header-mobile-socials{
        display:block;
        padding:20px 0 4px;
    }

    .gs-header-mobile-socials > span{
        display:block;
        margin-bottom:12px;
        color:#c2974b;
        font-size:10px;
        font-weight:700;
        letter-spacing:2.5px;
        text-transform:uppercase;
    }

    .gs-header-mobile-socials > div{
        display:flex;
        gap:9px;
    }

    .gs-header-mobile-socials a,
    .gs-header.is-scrolled .gs-header-mobile-socials a{
        width:42px;
        height:42px;
        padding:0;
        display:inline-flex;
        align-items:center;
        justify-content:center;
        color:#53585a;
        border:1px solid rgba(215,178,115,0.48);
        background:#ffffff;
    }

    .gs-header-mobile-socials a:hover{
        color:#292e30;
        background:#d7b273;
    }

    .gs-header-nav a.is-active,
    .gs-header.is-scrolled .gs-header-nav a.is-active{
        color:#c2974b;
    }

    .gs-header.menu-open .gs-header-nav{
        opacity:1;
        visibility:visible;
        transform:translateY(0);
        pointer-events:auto;
    }

    .gs-header-phone{
        font-size:14px;
    }

    .gs-header-socials{
        display:none;
    }

    .gs-header-burger{
        display:flex;
    }
}

@media(max-width:480px){
    .gs-header-inner{
        grid-template-columns:1fr auto;
    }

    .gs-header-contact{
        display:none;
    }
}

@media(prefers-reduced-motion:reduce){
    .gs-header,
    .gs-header-inner,
    .gs-header-logo img,
    .gs-header-nav a,
    .gs-header-phone,
    .gs-header-socials a,
    .gs-header-mobile-socials a,
    .gs-header-burger,
    .gs-header-burger span{
        transition:none !important;
    }
}
