/*--------------------------------------------------------------
# Main style & custom components
--------------------------------------------------------------*/


@import url('https://fonts.googleapis.com/css2?family=Roboto:wdth,wght@75..100,100..900&display=swap');

body {
    margin: 0;
    background: #fff;
    color: #111;
    font-family: "Roboto", Helvetica, Arial, sans-serif;
    font-size: 16px;
    line-height: 1.62857;
}

.container-big {
    width: 100%;
    max-width: 1656px;
    margin: 0 auto;
    margin-left: auto;
    margin-right: auto;
    padding-right: 15px;
    padding-left: 15px;
}

.container-mid {
    width: 100%;
    max-width: 1380px;
    margin: 0 auto;
    margin-left: auto;
    margin-right: auto;
    padding-right: 15px;
    padding-left: 15px;
    width: 100%;
}

a {
    color: #aa0000;
    font-weight: 700;
    background-color: transparent;
    transition: .2s ease-in-out;
}

a:active,
a:hover {
    color: #aa0000;
    outline: 0;
    text-decoration: none;
}

.entry-content ul li,
p {
    margin-bottom: 1rem;
    font-size: 1.1rem;
    font-weight: 300;
}

strong {
    font-weight: 700;
}

.btn-main {
    line-height: 2rem;
}

.entry-content input[type="submit"],
.btn-main a {
    transition: .2s ease-in-out;
    background: #aa0000;
    border: 2px solid #aa0000;
    color: #fff;
    border-radius: 2rem;
    padding: 0.7rem 1.8rem;
    font-size: 1.1rem;
    font-weight: 700;
    text-transform: uppercase;
}

.entry-content input[type="submit"]:hover,
.btn-main a:hover {
    background: #111;
    border: 2px solid #111;
}


.btn-main a .fa-light {
    padding-left: .5rem;
    color: #fff;
}

.btn-main a:hover .fa-light {
    padding-left: .5rem;
    color: #aa0000
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
#wrapper {
    background: url('https://www.handy-co.net/wp-content/uploads/2025/04/page-bg.jpg')center top;
    background-repeat: no-repeat;
}

.mh-top {
    background: #f4f4f4;
    padding: .75rem 0;
    font-size: .9rem;
    font-weight: 300;
    border-bottom: 1px solid #ddd;
}

.mh-top a {
    font-weight: 700;
    color: #111;
}

.mh-top .fa-light {
    color: #aa0000;
    padding-right: .25rem;
}

.mht-1 .fa-light,
.mht-3 .fa-light {
    padding-left: .5rem;
}

.mht-4 {
    text-align: right;
}

.mht-4 .fa-brands {
    padding: 0 0 0 .5rem;
}

.mastheader {
    padding: 0;
    z-index: 999;
}

.mh-main {
    padding: 1.5rem 0;
    position: relative;
}

.mh-top .row,
.mh-main .row {
    align-items: center;
}

.logo {
    height: auto;
}

.logo img {
    max-width: 100%;
    max-height: 96px;
}

.navbar {
    margin: 0;
    padding: 0;
}

.navbar-light .navbar-nav .nav-link {
    color: #111;
    margin: 0rem 2rem 0;
    font-size: 1.1rem;
    font-weight: 700;
    border-radius: 0;
}

.navbar-light .navbar-nav .nav-link:focus,
.navbar-light .navbar-nav .nav-link:hover {
    border-bottom: 1px solid #aa0000;
}

.navbar-light .navbar-nav .active>.nav-link,
.navbar-light .navbar-nav .nav-link.active,
.navbar-light .navbar-nav .nav-link.open,
.navbar-light .navbar-nav .open>.nav-link {
    border-bottom: 1px solid #aa0000;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 10rem;
    padding: 0;
    margin: 1.05rem 0 0 0;
    font-size: 1rem;
    color: #44484a;
    text-align: left;
    list-style: none;
    background-color: transparent;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: none;
    border-radius: 0rem;
}

.dropdown-item {
    display: block;
    width: 100%;
    padding: 0.3rem 0.6rem;
    clear: both;
    font-weight: 400;
    color: #fff;
    text-align: inherit;
    white-space: nowrap;
    background: #44484a;
    border: 0;
    font-size: .8rem;
}

.dropdown-item:focus,
.dropdown-item:hover {
    color: #44484a;
    text-decoration: none;
    background-color: #eaeaea;
}

.dropdown-item.active,
.dropdown-item:active {
    color: #44484a;
    text-decoration: none;
    background-color: #eaeaea;
}

.dropdown-toggle::after {
    color: #44484a
}

.mhm-btn {
    text-align: right;
}


/*--------------------------------------------------------------
# Slider
--------------------------------------------------------------*/
.top {
    position: relative;
}

#slider {}

#slider .item {
    position: relative;
    padding: 6.5rem 0;
    border-radius: 2rem 2rem 0 0;
    text-align: center;
}

#slider .box {
    position: relative;
    z-index: 999;
}


#slider .item h2 {
    margin: 0rem auto 0rem;
    font-weight: 700;
    font-size: 4rem;
    max-width: 55%;
    color: #fff;
}

#slider .item h3 {
    margin: 3rem 0 1.75rem;
    font-weight: 500;
    font-size: 1.3rem;
    color: #aa0000;
    text-transform: uppercase;
    letter-spacing: 2px;
}

#slider .item .text {
    margin: 0 auto 4rem;
    letter-spacing: 0px;
    max-width: 45%;
    color: #fff
}

#slider .item .text p {
    font-size: 1.1rem;
    font-weight: 300;
}

#slider .mask {
    z-index: 99;
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgb(0, 0, 0);
    background: linear-gradient(120deg, rgb(0 0 0 / 95%) 0%, rgb(0 0 0 / 73%) 50%, rgb(0 0 0 / 17%) 80%);
    top: 0;
    left: 0;
    border-radius: 2rem 2rem 0 0
}


#slider .btn-main a {
    padding: 1.2rem 2.4rem;
    color: #fff;
}

#slider .btn-main a:hover {
    color: #fff;
}


#slider .owl-controls .owl-buttons div {
    color: #fff;
    display: inline-block;
    zoom: 1;
    display: inline;
    margin: 0 1rem;
    padding: 0;
    font-size: 1.8rem;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    background: transparent;
    filter: Alpha(Opacity=50);
    opacity: 0.5;
}

#slider .owl-controls .owl-buttons div {
    color: #fff;
    display: inline-block;
    zoom: 1;
    display: inline;
    margin: 0 1rem;
    padding: 0;
    font-size: 1.8rem;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    background: transparent;
    filter: Alpha(Opacity=50);
    opacity: 0.5;
}

#slider .owl-controls.clickable .owl-buttons div:hover {
    filter: Alpha(Opacity=100);
    opacity: 1;
    text-decoration: none;
}

#slider .owl-prev::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    content: "\f104";
}

#slider .owl-next::before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 400;
    content: "\f105";
}

#slider .owl-controls {
    position: absolute;
    margin: 0;
    bottom: auto;
    left: auto;
    right: 3.5%;
    top: 5rem;
}

#slider .owl-controls .owl-page {
    display: block;
}

#slider .owl-controls .owl-page span {
    width: 1rem;
    height: 1rem;
    margin: 0 0 1rem;
    filter: Alpha(Opacity=50);
    opacity: 0.5;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    background: #fff;
    transition: .2s ease-in-out;
}

#slider .owl-controls .owl-page.active span,
#slider .owl-controls.clickable .owl-page:hover span {
    filter: Alpha(Opacity=100);
    transition: .2s ease-in-out;
    opacity: 1;
}

.top {
    position: relative;
}

.scroll-top {
    text-align: right;
}

.scroll-down {
    position: absolute;
    z-index: 999;
    bottom: 14.5rem;
    right: 2%;
    line-height: 45px
}

.scroll-top a,
.scroll-down a {
    transition: .25s ease-in-out;
    font-size: 1rem;
    font-weight: 700;
    color: #fff;
    background: #aa0000;
    padding: 1rem 1.25rem;
    border-radius: 100%;
}

.scroll-top a:hover,
.scroll-down a:hover {
    color: #fff;
    background: #111;
}

/*--------------------------------------------------------------
# Homepage
--------------------------------------------------------------*/
.service {
    padding: 5rem 0;
}

.service__about-left {
    text-align: center;
}

.service__about-left h1 {
    margin: 0rem auto 2rem;
    font-weight: 700;
    font-size: 2.4rem;
    max-width: 65%;
}

.service__about-left h2 {
    margin: 0rem auto 3rem;
    font-weight: 500;
    font-size: 1.2rem;
    color: #aa0000;
    max-width: 70%;
    letter-spacing: 2px;
}

.service__about-left .txt {
    max-width: 65%;
    margin: 0 auto 4rem auto;
}

.widgets {
    margin-bottom: 3rem;
}

.widgets .box {
    position: relative;
    width: 100%;
    margin-bottom: 2rem;
    padding-bottom: 100%;
    overflow: hidden;
    cursor: pointer;
    background-size: contain;
    background-position: center;
    border-radius: 2rem;
    background-repeat: no-repeat;
}

.widgets .box .bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-color: rgba(0, 0, 0, 0.25);
    background-position: center;
    background-repeat: no-repeat;
    transition: all 0.3s ease;
}

.widgets .box:hover .bg {
    background-color: rgba(0, 0, 0, 0.65);
}

.widgets .box .txt {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    color: white;
    width: 90%;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: transform 0.3s ease;
}

.widgets .box .txt h3 {
    margin: 0 0 .5rem;
    font-size: 2rem;
    transition: transform 0.3s ease;
}

.widgets .box .txt h3 a {
    color: #fff;
    text-decoration: none;
    border-bottom: 2px solid transparent;
    transition: border-color 0.3s ease;
}

.widgets .box .txt h3 a:hover {
    border-bottom: 2px solid #aa0000;
}


.widgets .box .txt .content {
    font-size: .9rem;
    color: #d2d2d2;
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: opacity 0.3s ease, max-height 0.3s ease;
}

.widgets .box:hover .txt h3 {
    transform: translateY(-25%);
}

.widgets .box:hover .txt .content {
    opacity: 1;
    max-height: 200px;
}

.about {
    padding: 0 0 5rem 0;
    background: linear-gradient(to bottom, #fff 0%, #aa000017 100%);
}

.about__left h2 {
    margin: 0rem 0 2rem;
    font-weight: 700;
    font-size: 2.4rem;
    max-width: 80%;
}

.about__right .slick-dots li button:before {
    font-size: 16px;
    color: #aa0000
}

.about__right .slick-slide img {
    border-radius: 2rem
}

.realizations {
    padding: 5rem 0;
    background: #aa0000
}

.realizations h2 {
    margin: 0rem 0 1rem;
    font-weight: 700;
    font-size: 2.4rem;
    max-width: 80%;
    color: #fff;
}

.realizations .txt {
    color: #fff;
    max-width: 50%;
}

#slider-realizations {
    margin-top: 5rem;
}

.realizations .item {
    min-height: 460px;
    margin-right: 2rem;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    border-radius: 2rem
}

#slider-realizations .mask {
    z-index: 99;
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgb(0, 0, 0);
    background: linear-gradient(30deg, rgb(0 0 0 / 95%) 0%, rgb(0 0 0 / 29%) 50%, rgb(0 0 0 / 17%) 80%);
    top: 0;
    left: 0;
    border-radius: 2rem
}

.realizations .item .box {
    position: absolute;
    z-index: 999;
    bottom: 2.5rem;
    left: 2.5rem;
    color: #fff;
}

.realizations .item .box h3 {
    font-size: 2rem;
    max-width: 75%;
    margin: 0 0 3rem;
    font-weight: 700;
}

#slider-realizations .owl-controls .owl-page span {
    width: 1rem;
    height: 1rem;
    background: #fff;
}

/*--------------------------------------------------------------
# Pages
--------------------------------------------------------------*/

.page-title .pt-inner {
    background: url('https://www.handy-co.net/wp-content/uploads/2025/05/page-title.jpg') center center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    padding: 10rem 0rem;
    border-radius: 2rem 2rem 0 0
}

.page-title .mask {
    z-index: 99;
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgb(0, 0, 0);
    background: linear-gradient(120deg, rgb(0 0 0 / 95%) 0%, rgb(0 0 0 / 73%) 50%, rgb(0 0 0 / 17%) 80%);
    top: 0;
    left: 0;
    border-radius: 2rem 2rem 0 0
}

.page-title .pt-inner,
.page-title .container-big {
    position: relative;
    z-index: 999;
}

.page-title h1 {
    z-index: 999;
    position: relative;
    font-size: 2.6rem;
    margin: 0;
    font-weight: 700;
    color: #fff;
}

.page-title h3 {
    z-index: 999;
    position: relative;
    margin: 0rem;
    font-weight: 500;
    font-size: 1rem;
    color: #aa0000;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.page-wrapper {
    padding: 0 0 0rem;
    background: #2e292b
}

body.product-template-default #main,
.entry-page {
    background: #fff;
    padding: 6rem 0
}

.entry-content {}

.entry-content h2 {
    margin: 3rem 0 2rem;
    font-size: 2rem;
    font-weight: 700;
}

.entry-content h3 {
    margin: 2rem 0 1rem;
    font-weight: 700;
    font-size: 1.5rem;
    color: #aa0000;
}

body.page-id-79 .wpcf7 .row>*:nth-child(4),
body.page-id-79 .wpcf7 .row>*:nth-child(5),
body.page-id-79 .wpcf7 .row>*:nth-child(6) {
    margin-top: 1rem;
}

.entry-content ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.entry-content .slick-dots li::before {
    content: none
}

.entry-content ul li::before {
    font: var(--fa-font-solid);
    content: "\f0da";
    padding: 0 0.3rem 0 0;
    color: #aa0000;
    font-weight: 500;
}

.entry-content ol li {
    font-size: 1.1rem;
    font-weight: 300;
}

.entry-content p:last-child {
    margin-bottom: 0
}

.entry-content label {
    width: 100%;
}

.entry-content input,
.entry-content select,
.entry-content textarea {
    border: 2px solid #ddd;
    border-radius: 1rem;
    font-size: 1rem
}

.entry-content .wpcf7-checkbox {
    border: 0;
    padding: 0
}

.entry-content .wpcf7-checkbox .first {
    margin-left: 0;
}

.entry-content .wpcf7-checkbox label .wpcf7-list-item-label {
    font-weight: 400;
    font-size: .85rem
}

.entry-content textarea {
    margin-top: 1rem;
}

.entry-content .wpcf7 label {
    font-weight: 700;
    margin: 1rem 0 0 0;
}

.entry-content .wpcf7 .wpcf7-radio label {
    font-weight: 400;
    margin-top: .5rem;
}

.entry-content .wpcf7 .wpcf7-radio .first {
    margin: 0;
}

.entry-content .form-control:focus {
    border-color: #aa0000;
}

.entry-content table td {
    border: 2px solid #aa0000;
    padding: 1.5rem 1.5rem;
    font-size: 1rem
}

.entry-content table tr:nth-child(even) {
    background: #aa000021
}

.entry-content table thead {
    border: none;
    background: #45474b;
    color: #fff;
}

.entry-content table tbody tr>*:nth-child(1) {
    background: #aa0000;
    color: #fff;
    border-color: #3f7487;
    font-size: 1.2rem;
    font-weight: 700;
}

.entry-content table thead th {
    padding: 2rem 1rem;
    border: 2px solid #aa0000;
    ;
}

.entry-content table tr:last-child td {
    padding: 2rem 1rem
}

.entry-content table td a {
    font-size: 1.2rem;
    background: #444849;
    border: 2px solid #444849;
    color: #fff;
    border-radius: 0px;
    padding: 0.8rem 1.2rem;
    font-size: 1rem;
    font-weight: 500;
    text-transform: uppercase
}

.entry-content table td a:hover {
    background: #6b9eb6;
    border: 2px solid #6b9eb6;
}

.wpcf7 p {
    font-size: .9rem;
}

.wpcf7-not-valid-tip {
    color: #dc3232;
    font-size: .75rem;
    font-weight: normal;
    display: block;
}

.wpcf7 form .wpcf7-response-output {
    padding: 1rem;
}

article {
    margin-bottom: 3rem;
}

article,
.content__thumb {
    position: relative;
    transition: .25s ease-in-out;
}

.content__thumb img {
    max-width: 100%;
    max-height: 320px;
    object-fit: cover;
    border-radius: 2rem;
    transition: .25s ease-in-out;
}

.content__thumb img:hover {
    opacity: .85;
}

article .content__box {
    margin: 1rem 0 0;
    text-align: center;
}

.content__box h3 {
    font-size: 1.6rem;
    text-align: center;
    margin: 0 0 2rem;
    font-weight: 700;
}

.content__box h3 a {
    color: #111
}


/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/

.cta {
    background: linear-gradient(to right, #fff 0%, #fff 50%, rgb(0 0 0 / 95%) 50%, rgb(0 0 0 / 95%) 100%);
}

.cta .cta-left iframe {

    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    filter: grayscale(100%);
}

.cta .container-fluid {
    padding: 0;
}

.cta .row {
    margin: 0;
}

.cta .row>* {
    padding: 0;
}

.cta-inner {
    padding: 5rem 0 5rem 3rem;
}

.cta h2 {
    font-size: 2.4rem;
    margin: 0 0 1rem;
    font-weight: 700;
    color: #fff;
}

.cta p {
    margin: 0 0 1.5rem 0;
    font-size: 1rem;
    max-width: 85%;
    color: #dadada
}

.cta .phone a,
.cta .envelope a {
    color: #fff;
}

.cta .phone .fa-sharp,
.cta .envelope .fa-sharp {
    color: #aa0000;
    padding-right: .5rem;
}

.cta .envelope {
    font-size: 1.4rem;
    margin: -.5rem 0 1rem 0;
    color: #fff;
}

.cta .btn-main {
    margin-top: 2rem;
}

.cta .phone {
    font-size: 2rem;
    margin-bottom: 1rem;
    font-weight: 700;
    color: #fff;
}

#footer-wrapper {
    margin-top: -9px;
    padding: 5rem 0;
    background: url('https://www.handy-co.net/wp-content/uploads/2025/05/fw-bg.jpg') center center;
    background-size: cover;
    background-repeat: no-repeat;
    color: #a8a8a8
}

.footer-widget h2 {
    font-size: 1.6rem;
    margin: 0 0 1rem;
    font-weight: 700;
    color: #fff;
}

.footer-widget .widget {}

.footer-widget a {
    color: #fff;
}

.footer-widget strong {
    color: #fff;
}

#block-10>* {
    margin-left: .5rem;
}

.footer-widget li,
.footer-widget p {
    font-size: 1rem;
}

.footer-widget ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.footer-widget ul li {
    margin-bottom: .75rem
}

.footer-widget ul li::before {
    font: var(--fa-font-solid);
    content: "\f0da";
    padding: 0 0.3rem 0 0;
    color: #aa0000;
    font-weight: 500;
}

#block-10 {
    text-align: right;
}

#block-10 .fa-brands {
    font-size: 1.8rem;
}

.footer-widget li a {
    font-weight: 400;
}

.footer-widget li {
    transition: .2s ease-in-out;
}

.footer-widget li:hover {
    padding-left: .5rem;
}

#block-2 img {
    background: #fff;
    padding: 2rem;
    border-radius: 0 0 2rem 2rem;
    margin-top: -5rem;
}

.footer-bottom {
    background: transparent;
    padding: 5rem 0 0rem 0;
    font-size: 1rem;
}

.fb-inner .row {
    align-items: center;
}

.footer-bottom a {
    color: #fff;
}

.footer-bottom .footer-credits {
    margin-bottom: 0;
    text-align: left;
}

.footer-bottom .footer-author {
    text-align: left;

}

.footer-bottom .footer-credits a,
.footer-bottom a,
.footer-bottom .footer-author a {
    font-weight: 700;
}

.footer-bottom .footer-credits a:hover,
.footer-bottom a:hover,
.footer-bottom .footer-author a:hover {}