/*
Theme Name: DPC Homes Child
Theme URI: https://dpchomes.my/
Description: Lightweight property archive and optional per-property single templates for DPC Homes, retaining Hello Elementor header/footer and existing DPC Homes Snippets data.
Author: Hooray Multimedia Solutions
Template: hello-elementor
Version: 1.2.4
Text Domain: dpch-child
Requires PHP: 7.4
*/


/* ============================================================
   DPC Homes - custom site styles (added in v1.1.1)
   ============================================================ */
.mobile-only {
    display: none;
}

.elementor-widget-n-menu .e-n-menu-title.e-current,
.elementor-widget-n-menu .e-n-menu-title.e-current a {
    color: #1f2124;
}

.elementor-post__title a,
.second-level-menu nav ul li a {
    color: black !important;
}

.single-post .wp-block-button .wp-block-button__link {
    background-color: var(--e-global-color-primary) !important;
    font-weight: 600;
    fill: #000000;
    color: #000000;
    border-radius: 99px 99px 99px 99px;
    padding: 12px 24px;
}

.single-post .wp-block-button .wp-block-button__link:hover {
    background-color: var(--e-global-color-primary) !important;
    color: #000000 !important;
}

.single-post h3 {
    margin-bottom: 10px;
}

.article-excerpt {
    position: relative;
}

.article-excerpt .text-content {
    max-height: 250px;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

.article-excerpt.expanded .text-content {
    max-height: 1000px;
}

/* Gradient overlay for collapsed article excerpt. */
.article-excerpt::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 65px;
    width: 100%;
    height: 120px;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 65%);
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.article-excerpt.expanded::after {
    opacity: 0;
}

button.toggle-btn {
    margin-top: 0;
    cursor: pointer;
    border: none;
    border-radius: 0;
    background: transparent;
    color: #000000;
    font-size: 16px;
    font-weight: 600;
    padding: 12px 24px;
    transition: all 0.3s;
    position: relative;
    display: inline-block;
}

/* Divider: supports both toggle-btn and toggle-button class names. */
button.toggle-btn::after,
button.toggle-button::after {
    content: '';
    position: absolute;
    display: block;
    left: 0;
    bottom: -4px;
    width: 30%;
    height: 2px;
    background-color: black;
    transition: width 0.3s ease;
}

button.toggle-btn:hover::after,
button.toggle-button:hover::after {
    width: 100%;
}

.single-properties .swiper-button-next,
.single-properties .swiper-button-prev,
.single-ch-property .swiper-button-next,
.single-ch-property .swiper-button-prev {
    text-align: center;
}

.custom-menu-switcher button {
    color: #000000 !important;
}

.thumb_img img {
    object-fit: cover;
}

@media (max-width: 767px) {
    .swiper-button-prev {
        display: block;
    }
}


/* ============================================================
   v1.2.1 – right-click warning (sitewide frontend only)
   ============================================================ */
.dpch-context-warning[hidden] { display: none !important; }
.dpch-context-warning, .dpch-context-warning * { box-sizing: border-box; }
.dpch-context-warning { position: fixed; inset: 0; z-index: 2147483000; display: grid; place-items: center; padding: 20px; }
.dpch-context-warning__backdrop { position: absolute; inset: 0; background: rgba(20, 20, 20, .45); }
.dpch-context-warning__dialog { position: relative; width: min(100%, 400px); border: 1px solid #e8dfcd; border-radius: 16px; background: #fffefa; box-shadow: 0 18px 65px rgba(0,0,0,.25); padding: 27px 26px 25px; text-align: center; color: #27251f; font-family: 'Poppins', Arial, sans-serif; }
.dpch-context-warning__dialog h2 { font-family: 'Inter', Arial, sans-serif; font-weight: 600; font-size: 22px; line-height: 1.3; margin: 12px 0 8px; color: #27251f; }
.dpch-context-warning__dialog p { font-family: 'Poppins', Arial, sans-serif; font-weight: 400; font-size: 14px; line-height: 1.6; margin: 0 0 21px; color: #6c675f; }
.dpch-context-warning__mark { width: 45px; height: 45px; display: grid; place-items: center; margin: auto; border-radius: 50%; background: #fff1c6; color: #9f711f; font: 600 25px/1 'Inter', Arial, sans-serif; }
.dpch-context-warning__x { position: absolute; top: 8px; right: 10px; border: 0; background: transparent; color: #706c64; padding: 7px 10px; font: 600 26px/1 'Inter', Arial, sans-serif; cursor: pointer; }
.dpch-context-warning__confirm { display: inline-flex; justify-content: center; align-items: center; min-width: 116px; min-height: 41px; padding: 9px 22px; border: 0; border-radius: 9px; background: #ffdc76; color: #25221d; font: 600 14px/1.3 'Inter', Arial, sans-serif; cursor: pointer; }
.dpch-context-warning__confirm:hover { background: #f5c956; }
.dpch-context-warning button:focus-visible { outline: 3px solid #a97718; outline-offset: 3px; }
