.site-footer{
        padding:54px 0 24px;
        background:#fffaf7;
        border-top:1px solid var(--line);
    }

    .footer-grid{
        display:grid;
        grid-template-columns:1.25fr .65fr 1fr 1fr;
        gap:clamp(28px,4vw,58px);
        align-items:start;
    }

    .footer-brand{
        max-width:290px;
    }

    .footer-logo{
        display:block;
        width:140px;
        height:140px;
        margin:-8px 0 16px;
    }

    .footer-logo img{
        display:block;
        width:100%;
        height:100%;
        object-fit:contain;
        object-position:left center;
    }

    .footer-brand p{
        max-width:270px;
        margin:0;
        color:var(--muted);
        font-size:14px;
        line-height:1.65;
    }

    .footer-col h4{
        margin:0 0 18px;
        color:var(--wine);
        font-size:12px;
        line-height:1;
        font-weight:700;
        letter-spacing:.1em;
        text-transform:uppercase;
    }

    .footer-col > a,
    .footer-nav a{
        display:block;
        width:max-content;
        max-width:100%;
        margin:9px 0;
        color:#66555a;
        font-size:14px;
        line-height:1.4;
        text-decoration:none;
        transition:color .2s ease;
    }

    .footer-col > a:hover,
    .footer-nav a:hover{
        color:#c86f82;
    }

    .footer-location + .footer-location{
        margin-top:20px;
    }

    .footer-location strong{
        display:block;
        margin:0 0 5px;
        color:#58464b;
        font-family:var(--serif);
        font-size:19px;
        line-height:1.15;
        font-weight:600;
    }

    .footer-location p{
        margin:0;
        color:var(--muted);
        font-size:13px;
        line-height:1.55;
    }

    .footer-socials{
        display:flex;
        align-items:center;
        flex-wrap:wrap;
        gap:10px;
        margin-top:22px;
    }

    .footer-socials a{
        width:38px;
        height:38px;
        flex:0 0 38px;
        display:grid;
        place-items:center;
        border:1px solid rgba(200,111,130,.34);
        border-radius:50%;
        background:#fff;
        color:#c86f82;
        text-decoration:none;
        transition:background-color .2s ease,border-color .2s ease,color .2s ease;
    }

    .footer-socials a:hover{
        border-color:#c86f82;
        background:#c86f82;
        color:#fff;
    }

    .footer-socials svg{
        width:18px;
        height:18px;
        fill:none;
        stroke:currentColor;
        stroke-width:1.7;
        stroke-linecap:round;
        stroke-linejoin:round;
    }

    .footer-socials a:nth-child(2) svg,
    .footer-socials a:nth-child(3) svg,
    .footer-socials a:nth-child(4) svg{
        fill:currentColor;
        stroke:none;
    }

    .footer-bottom{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:24px;
        margin-top:38px;
        padding-top:22px;
        border-top:1px solid var(--line);
        color:#8a777d;
        font-size:11px;
        line-height:1.5;
    }

    .footer-legal{
        display:flex;
        align-items:center;
        justify-content:flex-end;
        flex-wrap:wrap;
        gap:10px 20px;
    }

    .footer-legal a,
    .footer-legal button{
        margin:0;
        padding:0;
        border:0;
        background:transparent;
        color:#8a777d;
        cursor:pointer;
        font:inherit;
        line-height:1.5;
        text-decoration:none;
        transition:color .2s ease;
    }

    .footer-legal a:hover,
    .footer-legal button:hover{
        color:#c86f82;
    }

    @media (max-width:980px){
        .footer-grid{
            grid-template-columns:1.15fr .85fr;
            gap:38px 46px;
        }

        .footer-brand{
            max-width:340px;
        }
    }

    @media (max-width:620px){
        .site-footer{
            padding:46px 0 22px;
        }

        .footer-grid{
            grid-template-columns:1fr;
            gap:34px;
        }

        .footer-brand{
            max-width:none;
        }

        .footer-brand p{
            max-width:340px;
        }

        .footer-bottom{
            align-items:flex-start;
            flex-direction:column;
            gap:14px;
            margin-top:34px;
        }

        .footer-legal{
            justify-content:flex-start;
            gap:9px 16px;
        }
    }
