
    #terraceConstructionOverlay {
        position: fixed;
        inset: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, 0.38);
        z-index: 99999;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 20px;
        box-sizing: border-box;
    }

    #terraceConstructionPopup {
        position: relative;
        width: 100%;
        max-width: 560px;
        background: rgba(255, 255, 255, 0.93);
        color: #222;
        padding: 70px 45px 42px;
        text-align: center;
        box-sizing: border-box;
        border-radius: 3px;
        box-shadow: 0 15px 50px rgba(0, 0, 0, 0.25);
    }

    /* Building icon */
    .terrace-building-icon {
        position: absolute;
        top: -45px;
        left: 50%;
        transform: translateX(-50%);
        width: 90px;
        height: 90px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.96);
        display: flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 6px 20px rgba(0, 0, 0, 0.18);
    }

    .terrace-building-icon i {
        font-size: 38px;
        color: #333;
    }

    #terraceConstructionPopup h2 {
        margin: 0 0 18px;
        font-size: 30px;
        line-height: 1.3;
        font-weight: 500;
        letter-spacing: 0.3px;
        color: #222;
    }

    #terraceConstructionPopup p {
        margin: 0 auto 28px;
        max-width: 465px;
        font-size: 16px;
        line-height: 1.75;
        color: #555;
    }

    .terrace-contact-btn {
        display: inline-block;
        padding: 13px 32px;
        background: #222;
        color: #fff !important;
        text-decoration: none !important;
        font-size: 14px;
        font-weight: 500;
        letter-spacing: 0.3px;
        border-radius: 2px;
        transition: all 0.25s ease;
    }

    .terrace-contact-btn:hover {
        background: #444;
        color: #fff !important;
    }

    #terraceConstructionClose {
        position: absolute;
        top: 14px;
        right: 17px;
        width: 34px;
        height: 34px;
        padding: 0;
        background: transparent;
        border: none;
        color: #555;
        font-size: 27px;
        line-height: 34px;
        cursor: pointer;
        font-weight: 300;
        transition: color 0.2s ease;
    }

    #terraceConstructionClose:hover {
        color: #000;
    }

    @media (max-width: 600px) {

        #terraceConstructionPopup {
            max-width: 92%;
            padding: 65px 25px 35px;
        }

        .terrace-building-icon {
            width: 78px;
            height: 78px;
            top: -39px;
        }

        .terrace-building-icon i {
            font-size: 32px;
        }

        #terraceConstructionPopup h2 {
            font-size: 25px;
        }

        #terraceConstructionPopup p {
            font-size: 15px;
            line-height: 1.65;
        }
    }
