/* 1. Global & HTML Setup */
html {
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
}

/* 2. Grid Industry Section */
.grid-inducstruy .wdt-column .wdt-content-item {
    text-align: center;
    background: #ffffff;
    margin: 9px;
    padding: 10px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 30px;
    border: none !important;
}

.grid-inducstruy .wdt-column .wdt-content-item .wdt-content-media-group {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    padding-left: 0px !important;
    padding-right: 0px !important;
    margin-bottom: 0 !important;
}

/* 3. Three Column Layout 2 */
.three-colum-2 .wdt-column-wrapper .wdt-column .wdt-content-item {
    border-width: 1px;
    border-style: solid;
    min-height: 320px;
    padding: 20px;
    border-radius: 11px;
}

.three-colum-2 .wdt-column-wrapper .wdt-column :hover {
    background-color: #004b63;
    border: none;
}

.three-colum-2 .wdt-column-wrapper .wdt-column:hover h5, 
.three-colum-2 .wdt-column-wrapper .wdt-column:hover p, 
.three-colum-2 .wdt-column-wrapper .wdt-column:hover .wdt-content-icon svg {
    color: #ffffff;
    fill: #ffffff;
}

.three-colum-2 .wdt-column-wrapper .wdt-column .wdt-content-icon svg {
    fill: #004b63;
}

/* 4. Three Grid Column Spacing */
.three-grid-colum .wdt-column .wdt-content-item {
    min-height: 330px;
    padding-top: 50px;
}

/* 5. Contact Form 7 Box Styling */
.cf7-box {
    background-color: #ffffff;
    padding-top: 40px;
    padding-bottom: 40px;
    padding-left: 40px;
    padding-right: 40px;
    border-radius: 14px;
    border: 1px solid #eee;
	    max-width: 70%;
    display: block;
    margin: 0 auto;
}

/* 6. CF7 Grid - Safari Webkit Fixes */
.cf7-grid {
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
       gap: 5px 20px;
}

.cf7-col label,
.cf7-col-full label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 8px;
    color: #111;
}

.cf7-col label span,
.cf7-col-full label span {
    color: #d32f2f;
}

/* 7. Form Input Safari Appearance */
.cf7-col input,
.cf7-col select,
.cf7-col-full textarea {
    width: 100%;
    padding: 5px 6px !important;
    font-size: 14px;
    border-radius: 8px;
    border: 1px solid #dcdcdc;
    background: #fff;
    -webkit-appearance: none;
}

.cf7-col-full {
    -ms-grid-column-span: 2;
    grid-column: 1 / -1;
}

.cf7-col-full textarea {
    resize: vertical;
}

/* 8. Submit Button Optimization */
.wpcf7-submit {
    background-color: #111;
    color: #ffffff;
    border: none;
    padding: 14px 36px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    -webkit-appearance: none;
    -webkit-transition: background 0.2s ease-in-out;
    transition: background 0.2s ease-in-out;
}

.wpcf7-submit:hover {
    background-color: #000000;
}

/* 9. Consent and Links */
.cf7-consent {
    margin-top: 20px;
    font-size: 13px;
    color: #555;
}

.cf7-consent a {
    color: #111;
    text-decoration: underline;
}

.cf7-col .wpcf7-validates-as-number {
    padding: 22px !important;
}

/* 10. Responsive Media Queries */
@media (max-width: 768px) {
    .cf7-grid {
        display: block;
    }
    .cf7-col {
        margin-bottom: 15px;
    }
    .cf7-box {
        padding: 24px;
    }
}

/* 11. Custom Blog Sections */
.custom-blog-2colum .wdt-heading-content-wrapper, 
.custom-blog-2colum h2, 
.custom-blog-2colum H3 {
    color: #000000;
}

.custom-blog-2colum .elementor-column .elementor-widget {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 0px;
    padding-right: 0px;
}

.custom-blog-2colum H3 > span {
    font-size: 20pt !important;
}

.custom-blog-2colum H3 {
    margin-bottom: 3px !important;
}

.custom-blog-2colum .elementor-element-populated {
    padding: 30px 30px;
}

/* 12. Desktop Header Refinements */
@media only screen and (min-width: 1281px) {
    .wdt-header-menu .wdt-primary-nav > li > a {
        margin: 16px 0px;
        padding: 3px 7px !important;
    }
}

/* 13. Site Header & Sticky Fixes */
.site-header {
    background: -webkit-linear-gradient(315deg, #f0f9ff, #cbebff);
    background: linear-gradient(135deg, #f0f9ff, #cbebff);
    padding: 20px;
    text-align: center;
    -webkit-transition: background 0.3s ease;
    transition: background 0.3s ease;
    position: relative;
}

.sticky-header {
    position: -webkit-sticky;
    position: fixed;
    top: 0;
    width: 100%;
    left: 0;
    z-index: 9999;
}

.scrolled {
    background-color: #007bff;
}

/* 14. Sub Menu Logic for Safari */
.wdt-header-menu ul li ul.sub-menu > li > a {
    padding: 5px !important;
    width: 200px !important;
}

.wdt-primary-nav .menu-item-983 .sub-menu {
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    width: -webkit-max-content;
    width: max-content;
}

/* 15. Team Column Styles */
.team-2-colum .wdt-content-item .wdt-social-icons-list li a span {
    display: none;
}

.team-2-colum .wdt-content-item .wdt-social-icons-list li a {
    background-color: #334aff;
    padding: 25px;
    font-size: 20px;
    border-radius: 40px;
    color: #ffffff;
    display: inline-block;
}

.team-2-colum .wdt-content-item .wdt-social-icons-list li a:hover {
    background-color: #ffffff;
    padding: 25px;
    border: 1px solid #334aff;
    font-size: 20px;
    border-radius: 40px;
    color: #334aff;
}

/* 16. Footer & Payments Visuals */
.main-title-section-wrapper.overlay-wrapper > .main-title-section-bg:after {
    content: none;
}

.wdt-custom-footer-payments .wdt-content-item .wdt-content-image > span > img, 
.wdt-custom-footer-payments .wdt-content-item .wdt-content-image > a > img {
    width: auto;
    height: 30px;
}

.wdt-custom-footer-payments .wdt-content-item .wdt-content-media-group {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    border: none !important;
    background: transparent !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-radius: var(--wdtRadius_4X);
}

/* 17. Mega Menu & Icons */
.wdt-image-box-holder.wdt-rc-template-standard .wdt-content-item .wdt-content-media-group {
    padding: 0px !important;
    background-color: transparent !important;
}

.wdt-image-box-holder.wdt-rc-template-standard .wdt-content-item .wdt-content-detail-group {
    padding: 0px !important;
}

.region-flags .wdt-image-box-holder.wdt-rc-template-standard .wdt-content-item {
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
}

.region-flags .wdt-content-item .wdt-content-image-wrapper .wdt-content-image {
    max-width: 50px !important;
    max-height: 50px !important;
}

.service-main-icon img {
    max-height: 160px;
    width: auto;
}

.wdt-custom-footer-payments .wdt-content-item .wdt-content-image > span > img {
    height: 40px !important;
}

/* 18. Elementor Container Alignment */
.elementor-525 .elementor-element.elementor-element-68e306d > .elementor-element-populated, 
.elementor-525 .elementor-element.elementor-element-2e85ff0 > .elementor-element-populated {
    margin: 0px !important;
}

.wdt-sticky-column .wdt-custom-service-menu .widget.widget_nav_menu ul.menu li > a {
    padding: 14px !important;
    font-size: 14px;
    line-height: 1.5;
}

#header .wdt-elementor-container-fluid .wdt-header-menu ul.wdt-primary-nav li.has-mega-menu>ul.sub-menu {
    left: 0 !important;
    background-color: #153b4f;
    width: 300px !important;
    min-width: 790px !important;
    color: #ffffff;
}

/* 19. Hover Effects & Gradients */
.menu-item-1672 ul>li:hover, 
.mega-menu-wp .menu-item-983 ul>li:hover {
    background-image: -webkit-linear-gradient(135deg, var(--wdtPrimaryColor), var(--wdtQuaternaryColor));
    background-image: linear-gradient(135deg, var(--wdtPrimaryColor), var(--wdtQuaternaryColor));
    border-radius: 11px;
    padding: 3px;
}

.elementor-widget .elementor-icon-list-item {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.mega-menu-wp .elementor-widget.elementor-align-center .elementor-icon-list-item {
    justify-content: left !important;
    list-style: none !important;
    margin-top: 13px !important;
    margin-bottom: 13px !important;
}

.mega-menu-wp .wdt-header-menu li.has-mega-menu ul ul:hover {
    background-image: -webkit-linear-gradient(135deg, var(--wdtPrimaryColor), var(--wdtQuaternaryColor));
    background-image: linear-gradient(135deg, var(--wdtPrimaryColor), var(--wdtQuaternaryColor));
    border-radius: 11px;
    padding: 3px;
}


/* 21. Final Footer Scaling */
#wdt-custom-footer001 .wdt-content-image img {
    height: 60px !important;
    width: auto;
}
#wdt-image-box-86b93bd .wdt-content-item .wdt-content-image > a > img {
	max-width:30vh !important;
}
/* End of 301 line Safari Optimized CSS */
.wp-icon-group  .wdt-column-wrapper .wdt-column .wdt-content-icon-wrapper .wdt-content-icon>span{
        font-size: 22px;
    height: 50px !important;
    width: 50px !important; 
}
.wp-icon-group  .wdt-column-wrapper .wdt-column .wdt-content-item .wdt-content-detail-group .wdt-content-separator{
      display: none;
}
.wp-icon-group  .wdt-column-wrapper .wdt-column{
            padding: 0px 5px;
}
.wdt-cus-image-icon img{
width: auto;
    min-height: 90px;
}
.wdt-cus-image-icon .wdt-content-media-group{
    display: flex;
    gap: 20px;
}
.wdt-cus-image-icon  .wdt-content-item{
        background: #cfeeff;
    border-radius: 21px;
    padding: 20px;
}
.wdt-cus-image-box-icon .wdt-content-item .wdt-content-media-group{
        display: flex;
    gap: 20px;
    
}
.wdt-cus-image-box-icon .wdt-content-item .wdt-content-image img, .wp-cv-icon .wdt-content-image img{
    
        min-height: 90px;
    width: auto !important;
}
.wdt-cus-image-box-icon .wdt-content-item .wdt-content-elements-group{
     padding-top:20px;
}
.wdt-cus-image-box-icon .wdt-column-wrapper .wdt-column{
        background: #cfeeff;
      padding: 20px !important;
    margin: 10px 0px;
    border-radius: 30px;
}
.wdt-custom-iconbox .wdt-icon-box-holder .wdt-column-wrapper{
    
    flex-wrap: wrap;
        justify-content: center;
}
.wdt-custom-iconbox .wdt-icon-box-holder .wdt-content-title h5>a{
    color: #fff !important;
}
.wdt-custom-iconbox .wdt-icon-box-holder .wdt-content-icon span{
    font-size: 12px
}
.wp-vison-about .wdt-column .wdt-content-item {
    background: #eff5ff;
    height: 100%;
    border-radius: 50px;
}
.wp-vison-about .wdt-column .wdt-content-item ul{
	    display: grid;
    grid-template-columns: auto auto auto;
    text-align: left;
    gap: 0px 20px;
    list-style: none;

}
.elementor-element-7517509 .wdt-button-holder.wdt-button-style-underline:before{
   
    background-color: none !important;
    
}
.elementor-element-b377f7b .wdt-media-image-cover .wdt-content-image-wrapper {
        border-radius: 50px !important;
}
.contatc-from .wdt-content-item {
    display: flex;
}
.contatc-from .wdt-content-item  .wdt-content-detail-group{
    float: left;
    
    text-align: left
}
.contatc-from .wdt-content-item  .wdt-content-detail-group .wdt-content-title{
margin-bottom: 0px;    
}
.contatc-from .wdt-content-item  .wdt-content-media-group{
    margin-right: 10px
}
.wdt-button-holder.wdt-button-style-underline:before, .wdt-button-holder.wdt-button-style-overline:before{
    background-color: transparent;
}