.elementor-927 .elementor-element.elementor-element-6f61ad9{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-927 .elementor-element.elementor-element-25dd4f8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-927 .elementor-element.elementor-element-e403d70{width:var( --container-widget-width, 74.656% );max-width:74.656%;--container-widget-width:74.656%;--container-widget-flex-grow:0;}.elementor-927 .elementor-element.elementor-element-e403d70.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-927 .elementor-element.elementor-element-1528e0c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-927 .elementor-element.elementor-element-1528e0c.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-927 .elementor-element.elementor-element-dd88ce5{--grid-template-columns:repeat(0, auto);text-align:right;--grid-column-gap:5px;--grid-row-gap:0px;}.elementor-927 .elementor-element.elementor-element-31acaa3{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-927 .elementor-element.elementor-element-31acaa3.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-927 .elementor-element.elementor-element-0fa5031{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-927 .elementor-element.elementor-element-0fa5031.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-927 .elementor-element.elementor-element-6a17d9f{text-align:start;}.elementor-927 .elementor-element.elementor-element-365d448{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-927 .elementor-element.elementor-element-365d448.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-927 .elementor-element.elementor-element-97d60e9 .elementor-menu-toggle{margin:0 auto;}.elementor-927 .elementor-element.elementor-element-97d60e9 .elementor-nav-menu--main .elementor-item{color:#7B05E2;fill:#7B05E2;}.elementor-927 .elementor-element.elementor-element-97d60e9 .elementor-nav-menu--dropdown{background-color:#12F9C1;border-style:solid;}.elementor-927 .elementor-element.elementor-element-fbf8102{width:var( --container-widget-width, 39% );max-width:39%;--container-widget-width:39%;--container-widget-flex-grow:0;}.elementor-927 .elementor-element.elementor-element-fbf8102.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-927 .elementor-element.elementor-element-1528e0c{--width:101px;}.elementor-927 .elementor-element.elementor-element-dd88ce5.elementor-element{--align-self:flex-start;}.elementor-927 .elementor-element.elementor-element-31acaa3{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-927 .elementor-element.elementor-element-6a17d9f.elementor-element{--align-self:flex-start;}.elementor-927 .elementor-element.elementor-element-6a17d9f{text-align:center;}.elementor-927 .elementor-element.elementor-element-6a17d9f img{width:100%;}.elementor-927 .elementor-element.elementor-element-97d60e9{z-index:100;}.elementor-927 .elementor-element.elementor-element-fbf8102.elementor-element{--align-self:flex-end;}}@media(min-width:768px){.elementor-927 .elementor-element.elementor-element-25dd4f8{--width:50%;}.elementor-927 .elementor-element.elementor-element-1528e0c{--width:50%;}.elementor-927 .elementor-element.elementor-element-31acaa3{--width:99.672%;}.elementor-927 .elementor-element.elementor-element-0fa5031{--width:19.608%;}.elementor-927 .elementor-element.elementor-element-365d448{--width:41.168%;}}/* Start custom CSS for text-editor, class: .elementor-element-e403d70 *//* Contact container */
.elementor-element-e403d70 p {
    color: #340458 !important;
    font-weight: 500 !important;
}

/* Contact links - dark purple */
.elementor-element-e403d70 a {
    color: #340458 !important;
    text-decoration: none !important;
    padding: 5px 8px !important;
    display: inline-block !important;
    transition: all 0.3s ease !important;
}

/* Phone icon before phone number */
.elementor-element-e403d70 a[href^="tel"]::before {
    content: "📞 " !important;
}

/* Email icon before email */
.elementor-element-e403d70 a[href^="mailto"]::before {
    content: "✉️ " !important;
}

/* Hover - cyan background */
.elementor-element-e403d70 a:hover {
    background-color: #12F9C1 !important;
    color: #340458 !important;
    border-radius: 4px !important;
}

/* Focus - dotted box outline */
.elementor-element-e403d70 a:focus {
    outline: 2px dotted #000000 !important;
    outline-offset: 4px !important;
    text-decoration: none !important;
    border-radius: 4px !important;
}

/* Contact links - purple bold text, no outline */
.elementor-element-e403d70 a {
    color: #7B05E2 !important;
    text-decoration: none !important;
    padding: 5px 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    font-weight: 700 !important;
    transition: all 0.3s ease !important;
    background-color: transparent !important;
    border: none !important;
}

/* Icons before links - purple color */
.elementor-element-e403d70 a[href^="tel"]::before {
    content: "📞" !important;
    font-size: 18px !important;
}

.elementor-element-e403d70 a[href^="mailto"]::before {
    content: "✉️" !important;
    font-size: 18px !important;
}

/* Hover - cyan background */
.elementor-element-e403d70 a:hover {
    background-color: #12F9C1 !important;
    color: #340458 !important;
    border-radius: 4px !important;
}

/* Focus - dotted black outline box */
.elementor-element-e403d70 a:focus {
    outline: 2px dotted #000000 !important;
    outline-offset: 4px !important;
    text-decoration: none !important;
    border-radius: 4px !important;
}

/* Contact container */
.elementor-element-e403d70 p {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
}/* End custom CSS */
/* Start custom CSS for social-icons, class: .elementor-element-dd88ce5 *//* Social media icons - circle outline style */
.elementor-social-icon {
    background-color: transparent !important;
    border: 3px solid #7B05E2 !important;
    border-radius: 50% !important;
    width: 45px !important;
    height: 45px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all 0.3s ease !important;
    padding: 10px !important;
}

/* Social media icon SVGs - purple color */
.elementor-social-icon svg {
    fill: #7B05E2 !important;
    width: 22px !important;
    height: 22px !important;
}

/* Specific styling for Facebook icon */
.elementor-social-icon-facebook svg {
    fill: #7B05E2 !important;
}

/* Specific styling for LinkedIn icon - override the inline blue color */
.elementor-social-icon svg path {
    fill: #7B05E2 !important;
}

/* Hover effect - filled background */
.elementor-social-icon:hover {
    background-color: #7B05E2 !important;
    border-color: #7B05E2 !important;
}

/* Hover effect - white icon color */
.elementor-social-icon:hover svg,
.elementor-social-icon:hover svg path {
    fill: #ffffff !important;
}

/* Grid spacing between icons */
.elementor-social-icons-wrapper.elementor-grid {
    gap: 15px !important;
    display: flex !important;
    align-items: center !important;
}

/* Remove default spacing */
.elementor-grid-item {
    margin: 0 !important;
    padding: 0 !important;
}

/* Hide screen reader text */
.elementor-screen-only {
    display: none !important;
}


/* Push social media icons to the far right corner */
.elementor-social-icons-wrapper {
    margin-left: auto !important;
    justify-content: flex-end !important;
    display: flex !important;
    gap: 15px !important;
}

/* Ensure parent container allows right alignment */
.elementor-widget-social-icons .elementor-widget-container {
    display: flex !important;
    justify-content: flex-end !important;
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-97d60e9 *//* Hide submenu by default */
.elementor-nav-menu--dropdown {
    display: none !important;
}

/* Show submenu ONLY when aria-expanded = true */
.elementor-nav-menu 
.menu-item-has-children > a[aria-expanded="true"] 
+ .elementor-nav-menu--dropdown {
    display: flex !important;
}

/* Basic submenu styling */
.elementor-nav-menu--dropdown {
    flex-direction: column !important;
    width: 280px !important;
    background: #ffffff !important;
    border-top: 3px solid #6600cc !important;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
    padding: 8px 0 !important;
    position: absolute !important;
    z-index: 9999 !important;
}/* End custom CSS */
/* Start custom CSS for search, class: .elementor-element-fbf8102 *//* Search button styling - matching height with input */
button.e-search-submit {
    background-color: #12F9C1 !important;
    color: #340458 !important;
    padding: 12px 25px !important;
    width: auto !important;
    min-width: auto !important;
    height: 50px !important;
    font-weight: 600 !important;
    border: none !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    font-size: 16px !important;
}

/* Search button text styling */
button.e-search-submit span {
    color: #340458 !important;
    font-size: 16px !important;
}

/* Hover effect for button */
button.e-search-submit:hover {
    background-color: #0DD9A8 !important;
    opacity: 0.9 !important;
}

/* Position search icon inside the input box on LEFT */
div.e-search-input-wrapper label.e-search-label {
    position: absolute !important;
    left: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 10 !important;
    pointer-events: none !important;
    margin: 0 !important;
}

/* Search input field - matching height with button */
input.e-search-input {
    border: 2px solid #000 !important;
    padding: 12px 15px 12px 45px !important;
    font-size: 16px !important;
    height: 50px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Style the search icon */
label.e-search-label svg {
    width: 20px !important;
    height: 20px !important;
    fill: #333 !important;
}

/* Style the search form container - align everything in one line */
form.e-search-form {
    display: flex !important;
    align-items: center !important;
    gap: 0px !important;
    flex-wrap: nowrap !important;
}

/* Style the input wrapper */
div.e-search-input-wrapper {
    position: relative !important;
    flex: 1 !important;
    max-width: none !important;
}

/* Hide the screen-only text */
span.elementor-screen-only {
    display: none !important;
}

/* Make the search container full width */
.e-search {
    width: 100% !important;
    display: block !important;
}

/* Placeholder text styling */
input.e-search-input::placeholder {
    color: #666 !important;
    font-size: 16px !important;
}
/* Push search bar to the absolute right corner */
.e-search,
.elementor-widget-search-form {
    margin-left: auto !important;
    width: auto !important;
    display: flex !important;
    justify-content: flex-end !important;
}

/* Search form - align to right */
form.e-search-form {
    display: flex !important;
    align-items: center !important;
    gap: 0px !important;
    justify-content: flex-end !important;
    margin-left: auto !important;
}

/* Search input wrapper - compact width */
div.e-search-input-wrapper {
    position: relative !important;
    width: 300px !important;
    max-width: 300px !important;
    flex-shrink: 0 !important;
}

/* Search widget container - force right alignment */
.elementor-widget-search-form .elementor-widget-container {
    display: flex !important;
    justify-content: flex-end !important;
    width: 100% !important;
}

/* If the search is in a column, align the column content to right */
.elementor-element .elementor-widget-search-form {
    text-align: right !important;
}
/* Container - prevent overflow */
.elementor-container {
    max-width: 100% !important;
    overflow: hidden !important;
}

/* Search form - reduce width to fit */
div.e-search-input-wrapper {
    position: relative !important;
    width: 250px !important;
    max-width: 250px !important;
    flex-shrink: 0 !important;
}

/* Search input */
input.e-search-input {
    border: 2px solid #000 !important;
    padding: 12px 15px 12px 45px !important;
    height: 50px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Search button - smaller padding */
button.e-search-submit {
    background-color: #12F9C1 !important;
    color: #340458 !important;
    padding: 12px 20px !important;
    height: 50px !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    min-width: auto !important;
    width: auto !important;
    border: none !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
}

/* Ensure parent section doesn't overflow */
.elementor-section {
    overflow: hidden !important;
}

/* Menu spacing - reduce gap if needed */
.elementor-nav-menu {
    gap: 25px !important;
}
/* Prevent horizontal scroll - contain everything */
body {
    overflow-x: hidden !important;
}

.elementor-section {
    overflow: hidden !important;
    max-width: 100% !important;
}

.elementor-container {
    max-width: 100% !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

/* Reduce search input width further */
div.e-search-input-wrapper {
    position: relative !important;
    width: 200px !important;
    max-width: 200px !important;
}/* End custom CSS */