/** site-header **/

.site-header .navigation .menu a svg {
    display: block;
    position: absolute;

    top: -0.8rem;
    left: calc(-0.8rem - 0.3em);
    right: -0.8rem;
    bottom: -0.8rem;

    width: calc(100% + 1.6rem + 0.3em);
    height: calc(100% + 1.6rem);
}

.site-header .navigation .menu a svg rect {
    fill: none;

    stroke: #fff;
    stroke-width: 4;
    stroke-dasharray: 0, 400;
    stroke-dashoffset: 48;

    transition: stroke-dasharray 0.6s ease-out;
}

@media (any-hover: hover) {
    .site-header .navigation .menu a:hover svg rect {
        stroke-dasharray: 400, 0;
    }
}


/** site-footer **/

.site-footer .contacts li a {
    transition: color 0.3s ease-out;
}

@media (any-hover: hover) {
    .site-footer .contacts li a:hover {
        color: #ffffff;
        text-decoration: underline;
    }
}


/** elements: pilars **/

@media (any-hover: hover) {
    .pilars ul li:hover {
        width: 30rem !important;
    }
}


/** elements: button **/

.button:after {
    z-index: 1;

    width: 0%;
    top: 0;
    left: 0;
    bottom: 0;

    content: '';
    display: block;
    position: absolute;
    background: #ffffff;

    transition: width 0.3s ease-out;
}

.button.black:after {
    background: #292929;
}

@media (any-hover: hover) {
    .button:hover {
        color: #292929;
    }

    .button.black:hover {
        color: #ffffff;
    }

    .button:hover:after {
        width: 100%;
    }
}


/** pages: home **/

@media (any-hover: hover) {
    .page-home .projects a.project:hover {
        transform: scale(1.02);
    }
}


/** single: projects **/

@media (any-hover: hover) {
    .single-projects .banner .contact a:hover {
        transform: scale(1.05);
    }
}
