/* Homepage palette: brand red, deep navy and a soft red-tinted surface. */
.home-page {
    --home-primary: #ef0548;
    --home-primary-dark: #c9043d;
    --home-primary-soft: #fdf6f8;
    --home-navy: #04213f;
    --home-navy-light: #052648;
    --home-white: #ffffff;
    overflow-x: clip;
}

.home-page img {
    max-width: 100%;
}

.home-page .color-red,
.home-page .color-primary {
    color: var(--home-primary) !important;
}

.home-page .color-d_black,
.home-page .color-pd_black {
    color: var(--home-navy) !important;
}

.home-page .bg-red,
.home-page .bg-yellow {
    background-color: var(--home-primary) !important;
}

.home-page .bg-dark_red,
.home-page .bg-dark_yellow,
.home-page .bg-dark_white {
    background-color: var(--home-primary-soft) !important;
}

.home-page .banner-home {
    background-color: var(--home-navy);
}

.home-page .banner-home__content .sub-title {
    background-color: var(--home-navy-light);
}

.home-page .theme-btn,
.home-page .btn-red,
.home-page .similar-work__item .top .icon,
.home-page .similar-work__item .theme-btn {
    color: var(--home-white);
    background-color: var(--home-primary);
}

.home-page .theme-btn:hover,
.home-page .theme-btn:focus,
.home-page .similar-work__item .theme-btn:hover,
.home-page .similar-work__item .theme-btn:focus {
    color: var(--home-white);
    background-color: var(--home-primary-dark);
}

.home-page .banner-home__content .theme-btn.btn-white-border {
    color: var(--home-white);
    background: transparent;
    border-color: var(--home-white);
}

.home-page .banner-home__content .theme-btn.btn-white-border:hover,
.home-page .banner-home__content .theme-btn.btn-white-border:focus {
    color: var(--home-white);
    background: var(--home-primary);
    border-color: var(--home-primary);
}

.home-page .similar-work__item .top .title a:hover,
.home-page .similar-work__item .top .title a:focus,
.home-page .our-portfolio-home__item .content .left .post-author a {
    color: var(--home-primary);
}

.home-page .our-portfolio-home__item .content .btn-link-share .theme-btn {
    color: var(--home-navy);
    background-color: #f8dde4;
}

.home-page .planning-success::after {
    background-color: rgb(4 33 63 / 88%);
}

.home-page input:focus,
.home-page textarea:focus,
.home-page select:focus {
    border-color: var(--home-primary);
}

/* Keep vertical rhythm compact and consistent across homepage sections. */
.home-page section:not(.banner-home) {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
}

.home-page .can-help-home-1 {
    padding-bottom: 50px !important;
}

.home-page .can-help-home-1 .can-help-background {
    height: calc(100% - 100px);
}

.home-page .can-help-overly-home .blog-news {
    padding-top: 50px !important;
}

.home-page .blog-news .blog-news__bottom {
    margin-top: 0 !important;
}

.home-page section .mb-60 {
    margin-bottom: 40px !important;
}

@media (max-width: 991px) {
    .home-page section:not(.banner-home) {
        padding-top: 70px !important;
        padding-bottom: 70px !important;
    }

    .home-page .can-help-home-1,
    .home-page .can-help-overly-home .blog-news {
        padding-top: 60px !important;
        padding-bottom: 60px !important;
    }

    .home-page .can-help-home-1 .can-help-background {
        height: 100%;
    }
}

@media (max-width: 767px) {
    .home-page section:not(.banner-home),
    .home-page .can-help-home-1,
    .home-page .can-help-overly-home .blog-news {
        padding-top: 55px !important;
        padding-bottom: 55px !important;
    }

    .home-page section .mb-60 {
        margin-bottom: 30px !important;
    }

    .home-page .banner-home__content .theme-btn__wrapper {
        gap: 12px;
    }

    .home-page .theme-btn {
        white-space: normal;
    }

    .home-page .can-help .contact-form {
        width: 100%;
        padding-right: 25px !important;
        padding-left: 25px !important;
    }

    .home-page .can-help__content .theme-btn,
    .home-page .can-help__content .theme-btn .text {
        min-width: 0;
        max-width: 100%;
    }

    .home-page .can-help__content .theme-btn h5 {
        overflow-wrap: anywhere;
    }
}

@media (max-width: 575px) {
    .home-page .our-portfolio-home__item .content {
        flex-direction: column !important;
    }

    .home-page .our-portfolio-home__item .content .left {
        padding: 22px 20px;
    }

    .home-page .our-portfolio-home__item .content .btn-link-share,
    .home-page .our-portfolio-home__item .content .btn-link-share .theme-btn {
        width: 100%;
    }

    .home-page .our-portfolio-home__item .content .btn-link-share .theme-btn {
        min-height: 54px;
        flex-direction: row;
        padding: 14px 20px;
    }

    .home-page .similar-work__item .top {
        gap: 15px;
    }

    .home-page .can-help .contact-form {
        padding: 28px 20px !important;
    }
}
