/* =========================================================
   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: -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;
}

/* 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;
}