/* =========================================================
   PERFECT CLEAN TOPBAR & HEADER FIX (NO COLLAPSE, NO SVG OVERLAP)
   ========================================================= */

/* Hide default elementor giant SVG shape divider in topbar */
.elementor-element-67d316b>.e-con-inner>.elementor-shape,
.elementor-element-67d316b .elementor-shape-bottom {
    display: none !important;
}

#pxl-header-elementor,
.pxl-header-elementor-main,
.pxl-header-content,
.elementor-14 {
    background: transparent !important;
    position: relative !important;
    z-index: 9999 !important;
    width: 100% !important;
}

/* TOPBAR: Light Soft Mint Green Background (#d4f4ca) */
.elementor-element.elementor-element-67d316b,
.elementor-14 .elementor-element-67d316b {
    background-color: #d4f4ca !important;
    background: #d4f4ca !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 52px !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Ultra-Smooth Liquid Wave Bottom Edge on Topbar (Light Green) */
.elementor-element-67d316b::after,
.elementor-14 .elementor-element-67d316b::after {
    content: "" !important;
    position: absolute !important;
    bottom: -14px !important;
    left: 0 !important;
    width: 100% !important;
    height: 14px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='16' viewBox='0 0 60 16'%3E%3Cpath d='M0,0 L60,0 L60,5 Q45,16 30,5 Q15,-6 0,5 Z' fill='%23d4f4ca'%3E%3C/path%3E%3C/svg%3E") !important;
    background-size: 60px 16px !important;
    background-repeat: repeat-x !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

/* 3-Column Topbar Flex Row */
.elementor-element-67d316b>.e-con-inner,
.elementor-14 .elementor-element-67d316b>.e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1350px !important;
    margin: 0 auto !important;
    padding: 10px 30px 16px 30px !important;
    position: relative !important;
    z-index: 2 !important;
}

/* Left Column: Address & Email */
.elementor-element-ca903cf {
    flex: 1 1 35% !important;
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
}

.elementor-element-ca903cf .pxl-list {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-element-ca903cf .pxl-list .pxl--item {
    font-size: 13.5px !important;
    color: #0f4c5c !important;
    font-weight: 600 !important;
    white-space: nowrap !important;
}

.elementor-element-ca903cf .pxl-list a {
    color: #0f4c5c !important;
    text-decoration: none !important;
}

/* Center Column: Logo */
.elementor-element-ba3c59a {
    flex: 1 1 30% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
}

.elementor-element-ba3c59a .pxl-logo-inner {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-element-ba3c59a img {
    max-height: 100px !important;
    height: 100px !important;
    width: auto !important;
    object-fit: contain !important;
}

/* Right Column: Social Icons & Language */
.elementor-element-2cb3631 {
    flex: 1 1 35% !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 15px !important;
}

.elementor-element-a8c7d3e .pxl-icon-list {
    display: flex !important;
    flex-direction: row !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.elementor-element-a8c7d3e .pxl-icon-list a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    background: #ffffff !important;
    color: #00a8c6 !important;
    text-decoration: none !important;
    font-size: 12px !important;
}

/* MAIN HEADER BAR: Pure White (#ffffff) */
.elementor-element-24e227e,
.elementor-14 .elementor-element-24e227e {
    background-color: #ffffff !important;
    background: #ffffff !important;
    position: relative !important;
    z-index: 5 !important;
    display: block !important;
    width: 100% !important;
}

.elementor-element-24e227e>.e-con-inner,
.elementor-14 .elementor-element-24e227e>.e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1350px !important;
    margin: 0 auto !important;
    padding: 8px 30px !important;
    background: #ffffff !important;
}

/* Call Us Phone Box Left */
.elementor-element-332ae71 .pxl-icon-box {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}

.elementor-element-332ae71 .pxl-icon-box::before {
    content: "\f095" !important;
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    width: 44px !important;
    height: 44px !important;
    border-radius: 50% !important;
    border: 2px solid #00c4e6 !important;
    color: #00c4e6 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
}

.elementor-element-332ae71 .pxl-item--title {
    font-size: 11px !important;
    color: #666666 !important;
    margin: 0 !important;
}

.elementor-element-332ae71 .pxl-item--description,
.elementor-element-332ae71 .pxl-item--description a {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #0f4c5c !important;
    text-decoration: none !important;
}

/* Center Navigation Links */
.elementor-element-87d92ca .pxl-nav-menu ul.pxl-menu-primary,
.pxl-nav-menu ul {
    display: flex !important;
    flex-direction: row !important;
    gap: 32px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.pxl-nav-menu ul>li>a {
    font-weight: 700 !important;
    font-size: 15.5px !important;
    color: #2c3e50 !important;
    text-decoration: none !important;
    padding: 6px 0 !important;
}

.pxl-nav-menu ul>li.current-menu-item>a {
    color: #00a8c6 !important;
    border-bottom: 2px solid #00a8c6 !important;
}

/* Make Appointment Button - BRIGHT YELLOW (#ffdb00) */
.elementor-element-b72ebad .btn,
.elementor-element-b72ebad a {
    background-color: #ffdb00 !important;
    color: #000000 !important;
    padding: 8px 20px !important;
    height: 38px !important;
    border-radius: 50px !important;
    font-weight: 800 !important;
    font-size: 13.5px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    box-shadow: 0 4px 14px rgba(255, 219, 0, 0.4) !important;
}


/* =========================================================
   GREEN THEME FIX & CLOSER PHONE ICON / TEXT SPACING
   ========================================================= */

/* TOPBAR: Light Soft Mint Green Background (#d4f4ca) */
.elementor-element.elementor-element-67d316b,
.elementor-14 .elementor-element-67d316b {
    background-color: #d4f4ca !important;
    background: #d4f4ca !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 50px !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Ultra-Smooth Liquid Wave Edge fill with Light Green (#d4f4ca) */
.elementor-element-67d316b::after,
.elementor-14 .elementor-element-67d316b::after {
    content: "" !important;
    position: absolute !important;
    bottom: -15px !important;
    left: 0 !important;
    width: 100% !important;
    height: 16px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='16' viewBox='0 0 60 16'%3E%3Cpath d='M0,0 L60,0 L60,5 Q45,16 30,5 Q15,-6 0,5 Z' fill='%23d4f4ca'%3E%3C/path%3E%3C/svg%3E") !important;
    background-size: 60px 16px !important;
    background-repeat: repeat-x !important;
    z-index: 10 !important;
    pointer-events: none !important;
}

/* Topbar Left Address/Email Text Color */
.elementor-element-ca903cf .pxl-list .pxl--item,
.elementor-element-ca903cf .pxl-list a {
    color: #204510 !important;
}

/* Social Icons in Green Theme */
.elementor-element-a8c7d3e .pxl-icon-list a {
    background: #ffffff !important;
    color: #3ca200 !important;
}

/* MAIN HEADER PHONE BOX: CLOSER SPACING & GREEN COLOR (#3ca200) */
.elementor-element-332ae71 .pxl-icon-box {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    /* CLOSER TOGETHER! */
}

.elementor-element-332ae71 .pxl-icon-box::before {
    content: "\f095" !important;
    font-family: "Font Awesome 6 Free" !important;
    font-weight: 900 !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 50% !important;
    border: 2px solid #3ca200 !important;
    /* GREEN BORDER */
    color: #3ca200 !important;
    /* GREEN PHONE ICON */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 16px !important;
}

.elementor-element-332ae71 .pxl-item--title {
    font-size: 11px !important;
    color: #666666 !important;
    margin: 0 !important;
    line-height: 1.1 !important;
}

.elementor-element-332ae71 .pxl-item--description,
.elementor-element-332ae71 .pxl-item--description a {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: #3ca200 !important;
    /* GREEN PHONE NUMBER */
    text-decoration: none !important;
    line-height: 1.2 !important;
}

/* Active Menu Link Underline in Green Theme */
.pxl-nav-menu ul>li.current-menu-item>a,
.pxl-nav-menu ul>li>a:hover {
    color: #3ca200 !important;
    border-bottom: 2px solid #3ca200 !important;
}


/* =========================================================
   REDUCE MAIN HEADER HEIGHT (COMPACT & SLEEK)
   ========================================================= */

.elementor-element.elementor-element-24e227e,
.elementor-14 .elementor-element-24e227e {
    background-color: #ffffff !important;
    background: #ffffff !important;
    position: relative !important;
    z-index: 5 !important;
    display: block !important;
    width: 100% !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-element-24e227e>.e-con-inner,
.elementor-14 .elementor-element-24e227e>.e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1350px !important;
    margin: 0 auto !important;
    padding: 6px 30px !important;
    /* REDUCED PADDING FOR SLEEK COMPACT HEIGHT */
    background: #ffffff !important;
}

/* Phone icon size compact adjustment */
.elementor-element-332ae71 .pxl-icon-box::before {
    width: 36px !important;
    height: 36px !important;
    font-size: 14px !important;
}

.elementor-element-332ae71 .pxl-item--description,
.elementor-element-332ae71 .pxl-item--description a {
    font-size: 16px !important;
}

/* Make Appointment Button compact padding */
.elementor-element-b72ebad .btn,
.elementor-element-b72ebad a {
    padding: 8px 22px !important;
    font-size: 13.5px !important;
}


/* =========================================================
   EXTREMELY TIGHT SPACING FOR PHONE ICON & TEXT
   ========================================================= */

.elementor-element-332ae71 .pxl-icon-box {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
    /* EXTREMELY CLOSE SPACING */
}

.elementor-element-332ae71 .pxl-item--holder,
.elementor-element-332ae71 .pxl-item--content,
.elementor-element-332ae71 .pxl-item--title,
.elementor-element-332ae71 .pxl-item--description {
    margin-left: 0 !important;
    padding-left: 0 !important;
}


/* =========================================================
   EXACT 5PX GAP FOR PHONE ICON AND TEXT
   ========================================================= */

.elementor-element-332ae71 .pxl-icon-box {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    /* EXACTLY 5PX GAP AS REQUESTED */
}

.elementor-element-332ae71 .pxl-item--holder,
.elementor-element-332ae71 .pxl-item--content,
.elementor-element-332ae71 .pxl-item--title,
.elementor-element-332ae71 .pxl-item--description {
    margin-left: 0 !important;
    padding-left: 0 !important;
}


/* =========================================================
   FULL WIDTH / WIDER CONTAINER FOR TOPBAR & MAIN HEADER
   ========================================================= */

/* Expand Header Containers to Full Width (Max 1650px / 96% width) */
.elementor-element-67d316b>.e-con-inner,
.elementor-14 .elementor-element-67d316b>.e-con-inner {
    max-width: 96% !important;
    width: 96% !important;
    margin: 0 auto !important;
    padding: 2px 20px !important;
}

.elementor-element-24e227e>.e-con-inner,
.elementor-14 .elementor-element-24e227e>.e-con-inner {
    max-width: 96% !important;
    width: 96% !important;
    margin: 0 auto !important;
    padding: 8px 20px !important;
}

/* Ensure Left Widget (Phone Number) sits on far left */
.elementor-element-332ae71 {
    margin-left: 0 !important;
    padding-left: 0 !important;
}

/* Ensure Right Widget (Make Appointment Button) sits on far right */
.elementor-element-b72ebad {
    margin-right: 0 !important;
    padding-right: 0 !important;
}


/* =========================================================
   CLEAN PHONE ICON SVG FIX (NO EXTRA SVG GAP, REAL ANIMATED SVG)
   ========================================================= */

/* Remove duplicate FontAwesome ::before icon */
.elementor-element-332ae71 .pxl-icon-box::before,
.elementor-element-332ae71 .pxl-item--inner::before {
    display: none !important;
    content: none !important;
}

/* Style the actual animated SVG container into the green circle */
.elementor-element-332ae71 .pxl-item--icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    border-radius: 50% !important;
    border: 2px solid #3ca200 !important;
    background: #ffffff !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-element-332ae71 .pxl-item--icon a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-element-332ae71 .pxl-item--icon svg {
    width: 18px !important;
    height: 18px !important;
    display: block !important;
    margin: 0 auto !important;
}

.elementor-element-332ae71 .pxl-icon-box {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
}


/* =========================================================
   FORCE GREEN COLOR ON PHONE SVG ICON (#3CA200)
   ========================================================= */

.elementor-element-332ae71 .pxl-item--icon svg,
.elementor-element-332ae71 .pxl-item--icon svg * {
    fill: #3ca200 !important;
    color: #3ca200 !important;
}

.elementor-element-332ae71 .pxl-item--icon svg path {
    fill: #3ca200 !important;
}

.elementor-element-332ae71 .pxl-item--icon {
    border: 2px solid #3ca200 !important;
    background-color: transparent !important;
}

/* =========================================================
   HERO SECTION BADGE GREEN SVG SHAPE BACKGROUND (#3CA200)
   ========================================================= */

.elementor-element-6088006 .pxl-case-badge,
.elementor-element-6088006 .badge-inner,
.pxl-case-badge .badge-inner {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.elementor-element-6088006 .badge-inner::before,
.pxl-case-badge .badge-inner::before {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 220px !important;
    height: 220px !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='178' height='184' viewBox='-5 -5 188 194' fill='none'%3E%3Cpath d='M71.4206 5.55726C81.8329 -1.85242 95.7963 -1.85242 106.209 5.55726L107.174 6.24423C112.172 9.80068 118.139 11.7397 124.273 11.8L125.458 11.8117C138.237 11.9374 149.533 20.1448 153.602 32.2596L153.979 33.3828C155.932 39.1976 159.62 44.274 164.547 47.9281L165.499 48.6339C175.763 56.2469 180.078 69.5269 176.249 81.7193L175.894 82.8497C174.056 88.7018 174.056 94.9766 175.894 100.829L176.249 101.959C180.078 114.152 175.763 127.431 165.499 135.044L164.547 135.75C159.62 139.404 155.932 144.481 153.979 150.296L153.602 151.419C149.533 163.534 138.237 171.741 125.458 171.867L124.273 171.878C118.139 171.939 112.172 173.878 107.174 177.434L106.209 178.121C95.7963 185.531 81.8329 185.531 71.4206 178.121L70.4552 177.434C65.4575 173.878 59.4898 171.939 53.3562 171.878L52.1714 171.867C39.3923 171.741 28.0957 163.534 24.0273 151.419L23.6501 150.296C21.6973 144.481 18.009 139.404 13.0823 135.75L12.1306 135.044C1.86602 127.431 -2.4489 114.152 1.38053 101.959L1.73556 100.829C3.57359 94.9766 3.57359 88.7018 1.73556 82.8497L1.38053 81.7193C-2.4489 69.5269 1.86602 56.2469 12.1306 48.6339L13.0823 47.9281C18.009 44.274 21.6973 39.1976 23.6501 33.3828L24.0273 32.2596C28.0957 20.1448 39.3923 11.9374 52.1714 11.8117L53.3562 11.8C59.4898 11.7397 65.4575 9.80068 70.4552 6.24423L71.4206 5.55726Z' fill='%233CA200'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    z-index: -1 !important;
    pointer-events: none !important;
}

/* =========================================================
   PERFECT FOOTER DESIGN MATCHING REFERENCE IMAGE (WITH SITE GREEN THEME)
   ========================================================= */

#pxl-footer-elementor {
    background: #08190c !important;
    background: radial-gradient(circle at 50% 0%, #0d2813 0%, #051408 80%) !important;
    position: relative !important;
    color: #e2e8f0 !important;
    overflow: hidden !important;
    border-top: 3px solid #3ca200 !important;
}

#pxl-footer-elementor .e-con-inner {
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
}

/* 1. Top Row: Logo (Left) & Tagline (Right) */
.elementor-element-099a01c {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding-top: 35px !important;
    padding-bottom: 25px !important;
    margin-bottom: 35px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    width: 100% !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
}

.elementor-element-099a01c .pxl-border-animated,
.elementor-element-099a01c .pxl-border-anm,
.elementor-element-099a01c .pxl-border-glow {
    display: none !important;
}

.elementor-element-a727bd2 img {
    max-height: 85px !important;
    width: auto !important;
    filter: drop-shadow(0 4px 12px rgba(60, 162, 0, 0.3)) !important;
}

.elementor-element-e9c4659 .pxl-heading__title {
    color: #20b26c !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    letter-spacing: 0.2px !important;
    margin: 0 !important;
    text-align: right !important;
}

[dir="rtl"] .elementor-element-e9c4659 .pxl-heading__title {
    text-align: left !important;
}

/* 2. Main 4-Column Flat Layout */
.elementor-element-1ae8eb3 {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1.2fr 1.4fr !important;
    gap: 36px !important;
    align-items: start !important;
    padding-bottom: 30px !important;
}

@media (max-width: 1024px) {
    .elementor-element-1ae8eb3 {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 30px !important;
    }
}

@media (max-width: 640px) {
    .elementor-element-1ae8eb3 {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
    }
}

/* Section Headings with Gold Underline Divider */
#pxl-footer-elementor .pxl-heading__title {
    color: #179b57 !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    margin-bottom: 8px !important;
    position: relative !important;
    display: inline-block !important;
}

#pxl-footer-elementor .pxl-el-divider {
    height: 2px !important;
    width: 38px !important;
    background: #f2d701 !important;
    border-radius: 2px !important;
    margin-bottom: 18px !important;
}

/* Navigation Links */
#pxl-footer-elementor .pxl-link {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

#pxl-footer-elementor .pxl-link li {
    margin-bottom: 10px !important;
}

#pxl-footer-elementor .pxl-link a {
    color: #b8ccb9 !important;
    text-decoration: none !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    transition: all 0.25s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
}

#pxl-footer-elementor .pxl-link a:hover {
    color: #ffffff !important;
    transform: translateX(3px) !important;
}

[dir="rtl"] #pxl-footer-elementor .pxl-link a:hover {
    transform: translateX(-3px) !important;
}

#pxl-footer-elementor .pxl-link.style-3 a {
    color: #d0e1d2 !important;
}

#pxl-footer-elementor .pxl-link.style-3 svg {
    width: 17px !important;
    height: 17px !important;
    flex-shrink: 0 !important;
}

#pxl-footer-elementor .pxl-link.style-3 svg path {
    fill: #3ca200 !important;
}

/* 3. Social Media Icons Single Row */
.elementor-element-a19ab31 {
    margin-top: 18px !important;
    width: 100% !important;
}

.elementor-element-a19ab31 .pxl-icon-list {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
}

.elementor-element-a19ab31 .pxl-icon__item {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    border-radius: 50% !important;
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.16) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #20b26c !important;
    text-decoration: none !important;
    transition: all 0.25s ease !important;
}

.elementor-element-a19ab31 .pxl-icon__item:hover {
    background: #3ca200 !important;
    border-color: #3ca200 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
}

/* 4. Newsletter Subscription (Flat Layout matching image) */
.elementor-element-3dde174 {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    position: relative !important;
    width: 100% !important;
}

.elementor-element-65bdfae p {
    color: #b8ccb9 !important;
    font-size: 13.5px !important;
    line-height: 1.5 !important;
    margin-bottom: 18px !important;
}

.elementor-element-05e0e45,
.elementor-element-05e0e45 .pxl-contact-form,
.elementor-element-05e0e45 .wpcf7,
.elementor-element-05e0e45 .wpcf7-form,
.elementor-element-05e0e45 .wrap-ctf1-2,
.elementor-element-05e0e45 .input-filled,
.elementor-element-05e0e45 .input-filled p {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* Reset inner nested WPCF7 span wrapper */
.elementor-element-05e0e45 .wpcf7-form-control-wrap:not(.your-email),
.elementor-element-05e0e45 span[data-name="your-email"] {
    display: flex !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
}

/* Pure White Input Pill Box with Attached Button */
.elementor-element-05e0e45 .wpcf7-form-control-wrap.your-email {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 50px !important;
    padding: 4px 6px 4px 18px !important;
    gap: 8px !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.15) !important;
}

[dir="rtl"] .elementor-element-05e0e45 .wpcf7-form-control-wrap.your-email {
    padding: 4px 18px 4px 6px !important;
    flex-direction: row !important;
}

.elementor-element-05e0e45 .wpcf7-form-control-wrap.your-email:focus-within {
    border-color: #3ca200 !important;
    box-shadow: 0 0 0 3px rgba(60, 162, 0, 0.3) !important;
}

/* Input Text Box */
.elementor-element-05e0e45 input[type="email"].wpcf7-email {
    flex: 1 1 auto !important;
    width: 100% !important;
    min-width: 0 !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    color: #1a202c !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    height: 42px !important;
    padding: 0 !important;
    box-shadow: none !important;
}

.elementor-element-05e0e45 input[type="email"].wpcf7-email::placeholder {
    color: #718096 !important;
    font-size: 13.5px !important;
}

/* Yellow / Green Circular Action Button */
.elementor-element-05e0e45 button[type="submit"],
.elementor-element-05e0e45 .wpcf7-submit {
    flex-shrink: 0 !important;
    background: #3ca200 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 50% !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.25s ease !important;
    box-shadow: 0 4px 12px rgba(60, 162, 0, 0.4) !important;
    padding: 0 !important;
    margin: 0 !important;
}

.elementor-element-05e0e45 button[type="submit"]:hover,
.elementor-element-05e0e45 .wpcf7-submit:hover {
    background: #2f8300 !important;
    transform: scale(1.06) !important;
}

.elementor-element-05e0e45 button[type="submit"] svg {
    width: 16px !important;
    height: 16px !important;
}

.elementor-element-05e0e45 button[type="submit"] svg path {
    fill: #ffffff !important;
}

[dir="rtl"] .elementor-element-05e0e45 button[type="submit"] svg {
    transform: scaleX(-1) !important;
}

/* 5. Separate Bottom Bar (Copyright on Left, Back to Top on Right) */
#pxl-footer-elementor .elementor-element-0363e0b,
.elementor-element.elementor-element-0363e0b {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: 100% !important;
    clear: both !important;
    display: block !important;
    background: rgba(0, 0, 0, 0.28) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 16px 0 !important;
    margin-top: 30px !important;
    grid-column: 1 / -1 !important;
    z-index: 10 !important;
}

#pxl-footer-elementor .elementor-element-0363e0b > .e-con-inner {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 1320px !important;
    margin: 0 auto !important;
    padding: 0 24px !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}

#pxl-footer-elementor .elementor-element-29cf151,
#pxl-footer-elementor .elementor-element-29cf151 .pxl-item--inner {
    color: #8fa391 !important;
    font-size: 13.5px !important;
}

.elementor-element-29cf151 a.color-primary,
.elementor-element-29cf151 a {
    color: #3ca200 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

.elementor-element-8d7cb6d a {
    color: #b8ccb9 !important;
    font-size: 13.5px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    transition: color 0.2s ease !important;
}

.elementor-element-8d7cb6d a:hover {
    color: #3ca200 !important;
}