/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */
.masonry-breadcrumbs {
    width: 100%;
    font-family: 'Segoe UI', Roboto, sans-serif;
    font-size: 0.9rem;
    color: #FFF;
}

.masonry-breadcrumbs a {
    color: #FFF;
    text-decoration: none;
    transition: color 0.2s ease;
}

.masonry-breadcrumbs a:hover {
    color: #FFF;
    text-decoration: underline;
}

.bc-sep {
    margin: 0 10px;
    color: #FFF;
}

.bc-current {
    color: #FFF;
    font-weight: 500;
}

/* Base Slider Styling when active */
.swiper-container-initialized {
    display: block !important; /* Kills CSS Grid */
    overflow: hidden !important;
    position: relative;
}

.swiper-container-initialized > .swiper-wrapper {
    display: flex !important;
    flex-direction: row !important;
    height: 100%;
}

/* Container & Inner Reset */
.is-swiper-active, 
.is-swiper-active > .e-con-inner {
    display: block !important;
    grid-template-columns: none !important;
    grid-template-rows: none !important;
    gap: 0 !important;
    overflow: hidden !important;
    position: relative !important;
}

/* Swiper Wrapper - Must be Flex */
.is-swiper-active .swiper-wrapper {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    box-sizing: content-box !important;
}

/* Slides - Must NOT have hardcoded width */
.is-swiper-active .swiper-slide {
    height: auto !important;
    flex-shrink: 0 !important;
    grid-column: auto !important;
    grid-row: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    /* We allow Swiper to set the width via inline styles */
}

/* Ensure widgets inside slides fill the slide width */
.is-swiper-active .swiper-slide > * {
    width: 100% !important;
    max-width: 100% !important;
}

.swiper-button-next, .swiper-button-prev {
    color: #afafaf;
}

.swiper-button-next:after, .swiper-button-prev:after {
    font-size: 2rem;
}

/* Contact Form 7 - Professional Masonry Theme Styles */
.contact-form-wrapper {
    margin: 1rem auto;
    padding: 1.5rem;
    background: #ffffff;
    border-radius: 8px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.05);
}

.form-row {
    margin-bottom: 1.5rem;
}

.form-row label {
    display: block;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #333;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Input & Textarea Fields */
.contact-form-wrapper input[type="text"],
.contact-form-wrapper input[type="email"],
.contact-form-wrapper input[type="tel"],
.contact-form-wrapper select,
.contact-form-wrapper textarea {
    width: 100%;
    padding: 12px 15px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 1rem;
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
    background-color: #f9f9f9;
}

.contact-form-wrapper input:focus,
.contact-form-wrapper select:focus,
.contact-form-wrapper textarea:focus {
    border-color: #222; /* Professional dark accent */
    box-shadow: 0 0 0 3px rgba(34, 34, 34, 0.1);
    background-color: #fff;
    outline: none;
}

.contact-form-wrapper textarea {
    resize: vertical;
}

/* Submit Button */
.form-submit .btn-estimate {
    width: 100%;
    padding: 16px;
    background-color: #3f86b6;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-size: 1.1rem;
    font-weight: 700;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.1s active;
    text-transform: uppercase;
}

.form-submit .btn-estimate:hover {
    background-color: #a35614;
}

/* CF7 Validation &