/*
Theme Name: Astra Child
Theme URI: https://wpastra.com/
Description: Child theme for Astra
Author: Your Name
Template: astra
Version: 1.0
*/

body {
}

/*Header*/
.header_action {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
    color: white;
    display: flex;
    align-items: center;
    gap: 8px;
    text-transform: uppercase;
}

.header_action a {
    background: #1e73be;
    color: #fff;
    padding: 8px 16px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: all 0.25s ease;
}


/* HOME */
.header_action a::before {
    content: "📞";
    font-size: 16px;
}

.header_action a:hover {
    background: #0E2A47;
    transform: translateY(-1px);
}
.hero-features{
    display:flex;
    gap:15px;
    margin-top:25px;
    flex-wrap:wrap;
}

.feature-item{
    display:flex;
    align-items:center;
    gap:8px;
    background:rgba(255,255,255,0.12);
    padding:10px 16px;
    border-radius:8px;
    color:#fff;
    font-weight:500;
    font-size:14px;
}

.feature-item .icon{
    font-size:16px;
}

.hero_badges{
  pointer-events: none;
  cursor: default;
}
.floating-reviews-btn {
  position: fixed;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  z-index: 9999;
}

.floating-reviews-btn img {
  width: 120px;
  height: auto;
  display: block;
  transition: transform 0.2s ease;
}

.floating-reviews-btn:hover img {
  transform: scale(1.05);
}

/*brands carrousel*/
.sub_word span{
    text-transform: uppercase;
    color: #1e73be ;
}
.sub_word strong{
    color: #1e73be ;
}
.areas-serve-section .sub_word{
    color: #1e73be ;
}



/*


value boxes


*/



/* wrapper for both boxes */
.uagb-block-d6967857{
    display: flex;
    flex-wrap: wrap;
    gap: 28px;
    justify-content: center;
}

/* each box */
.uagb-block-d6967857 > .wp-block-uagb-info-box{
    flex: 1 1 320px;
    max-width: 460px;
}

/* main card */
.uagb-block-d6967857 .uagb-infobox-margin-wrapper{
    position: relative;
    border-radius: 34px;
    padding: 38px 30px;
    min-height: 260px;
    overflow: hidden;
    box-sizing: border-box;
}

/* dashed line inside */
.uagb-block-d6967857 .uagb-infobox-margin-wrapper::before{
    content: "";
    position: absolute;
    top: 18px;
    left: 18px;
    right: 18px;
    bottom: 18px;
    border: 2px dashed #2d9cdb;
    border-radius: 22px;
    pointer-events: none;
    opacity: 0.9;
}

/* content above the dashed line */
.uagb-block-d6967857 .uagb-ifb-content{
    position: relative;
    z-index: 2;
    text-align: left;
}

/* title */
.uagb-block-d6967857 .uagb-ifb-title{
    color: #0b2e63;
    font-size: 30px;
    font-weight: 700;
    line-height: 1.15;
    margin-bottom: 16px;
}

/* description */
.uagb-block-d6967857 .uagb-ifb-desc{
    color: #334155;
    font-size: 18px;
    line-height: 1.65;
    margin: 0;
}

/* optional: make second title blue */
.uagb-block-05b3180e .uagb-ifb-title{
    color: #1e73be;
}

/* hover */
.uagb-block-d6967857 .uagb-infobox-margin-wrapper{
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.uagb-block-d6967857 .uagb-infobox-margin-wrapper:hover{
    transform: translateY(-4px);
    box-shadow: 0 16px 35px rgba(11, 46, 99, 0.18);
}

/* mobile */
@media (max-width: 768px){
    .uagb-block-d6967857{
        gap: 18px;
    }

    .uagb-block-d6967857 .uagb-infobox-margin-wrapper{
        border-width: 12px;
        border-radius: 24px;
        padding: 28px 22px;
        min-height: auto;
    }

    .uagb-block-d6967857 .uagb-infobox-margin-wrapper::before{
        top: 14px;
        left: 14px;
        right: 14px;
        bottom: 14px;
        border-radius: 16px;
    }

    .uagb-block-d6967857 .uagb-ifb-title{
        font-size: 24px;
    }

    .uagb-block-d6967857 .uagb-ifb-desc{
        font-size: 16px;
    }
}



/*


Services  Home

*/
/* wrapper */
.uagb-block-412906eb{
    display:flex;
    flex-direction:column;
    gap:22px;
}

/* each item */
.uagb-block-412906eb .wp-block-uagb-info-box{
    transition: all 0.3s ease;
}

/* card style */
.uagb-block-412906eb .uagb-infobox-margin-wrapper{
    display:flex;
    align-items:flex-start;
    gap:18px;
    padding:22px 20px;
    border-radius:16px;
    background:#ffffff;
    border:1px solid #e5e7eb;
    box-shadow:0 6px 18px rgba(0,0,0,0.06);
    transition: all 0.3s ease;
}

/* hover effect */
.uagb-block-412906eb .uagb-infobox-margin-wrapper:hover{
    transform: translateY(-4px);
    box-shadow:0 12px 30px rgba(0,0,0,0.12);
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
}

/* icon circle */
.uagb-block-412906eb .uagb-iconbox-icon-wrap{
    background:#f1f5f9;
    width:52px;
    height:52px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    flex-shrink:0;
    transition: all 0.3s ease;
}

/* icon svg */
.uagb-block-412906eb .uagb-iconbox-icon-wrap svg{
    width:22px;
    height:22px;
    fill:#1e73be;
}

/* hover icon */
.uagb-block-412906eb .uagb-infobox-margin-wrapper:hover .uagb-iconbox-icon-wrap{
    background:#1e73be;
}

.uagb-block-412906eb .uagb-infobox-margin-wrapper:hover svg{
    fill:#ffffff;
}

/* title */
.uagb-block-412906eb .uagb-ifb-title{
    font-size:20px;
    font-weight:700;
    color:#0f172a;
    margin-bottom:6px;
}

/* description */
.uagb-block-412906eb .uagb-ifb-desc{
    font-size:15px;
    color:#64748b;
    line-height:1.6;
    margin:0;
}

/* subtle left accent line */
.uagb-block-412906eb .uagb-infobox-margin-wrapper{
    position:relative;
}

.uagb-block-412906eb .uagb-infobox-margin-wrapper::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    bottom:0;
    width:4px;
    background:#1e73be;
    border-radius:16px 0 0 16px;
    opacity:0;
    transition:0.3s;
}

.uagb-block-412906eb .uagb-infobox-margin-wrapper:hover::before{
    opacity:1;
}

/* mobile */
@media (max-width:768px){
    .uagb-block-412906eb .uagb-infobox-margin-wrapper{
        padding:18px;
    }

    .uagb-block-412906eb .uagb-ifb-title{
        font-size:18px;
    }

    .uagb-block-412906eb .uagb-ifb-desc{
        font-size:14px;
    }
}



/* center wrapper */
.uagb-ifb-button-wrapper{
    margin-top: 28px;
}

/* main button */
.uagb-ifb-button-wrapper .uagb-infobox-cta-link{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 16px 28px;
    border-radius: 999px;
    text-decoration: none;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.2px;
    color: #ffffff;
    background: linear-gradient(135deg, #1e73be 0%, #0b2e63 100%);
    box-shadow: 0 10px 24px rgba(11, 46, 99, 0.22);
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* shine effect */
.uagb-ifb-button-wrapper .uagb-infobox-cta-link::before{
    content: "";
    position: absolute;
    top: 0;
    left: -130%;
    width: 120%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.20),
        transparent
    );
    transition: left 0.65s ease;
}

/* text above shine */
.uagb-ifb-button-wrapper .uagb-inline-editing{
    position: relative;
    z-index: 2;
}

/* arrow icon */
.uagb-ifb-button-wrapper .uagb-infobox-cta-link svg{
    width: 15px;
    height: 15px;
    fill: #ffffff;
    position: relative;
    z-index: 2;
    transition: transform 0.3s ease;
}

/* hover */
.uagb-ifb-button-wrapper .uagb-infobox-cta-link:hover{
    transform: translateY(-3px);
    box-shadow: 0 16px 34px rgba(11, 46, 99, 0.30);
}

.uagb-ifb-button-wrapper .uagb-infobox-cta-link:hover::before{
    left: 100%;
}

.uagb-ifb-button-wrapper .uagb-infobox-cta-link:hover svg{
    transform: translateX(5px);
}

/* optional active */
.uagb-ifb-button-wrapper .uagb-infobox-cta-link:active{
    transform: translateY(-1px);
}



/*

footer

*/
#media_image-1{
    margin-top: -80px;
    margin-bottom: 25px;
}
#text-1{
    margin-bottom: 10px;
}
#text-1 p:last-child {
    color: #9393c3;
}

.areas-serve-section{
    border-top: 1px solid rgba(255,255,255,0.1);
    padding-top: 48px;
    margin-top: 48px;
}

.areas-serve-heading{
    text-align: center;
    margin-bottom: 32px;
}

.areas-serve-heading h4{
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 10px;
}

.areas-serve-heading h3{
    color: #ffffff;
    font-size: 38px;
    font-weight: 700;
    margin: 0;
}

.areas-serve-grid{
    list-style: none;
    padding: 0;
    margin: 0 auto;
    max-width: 1200px;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 32px;
    row-gap: 24px;
    text-align: center;
}

.areas-serve-grid li{
    margin: 0;
    padding: 0;
}

.areas-serve-grid a{
    color: #d1d5db;
    text-decoration: none;
    font-size: 16px;
    transition: color 0.3s ease;
}

.areas-serve-grid a:hover{
    color: #ffffff;
}

@media (max-width: 1024px){
    .areas-serve-grid{
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 767px){
    .areas-serve-grid{
        grid-template-columns: repeat(2, 1fr);
    }

    .areas-serve-heading h3{
        font-size: 30px;
    }
}
.link_copy{
    color: #90c7ff;
}



.contact-info-block {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 24px;
}

.contact-item {
  display: flex;
  align-items: center;
}

.contact-icon {
  width: 20px;
  height: 20px;
  margin-right: 12px;
  flex-shrink: 0;
  color: #1e73be;
}

.footer-link {
  color: #ffffff;
  text-decoration: none;
  font-size: 15px;
  line-height: 1.5;
}

.footer-link .label {
  font-weight: 600;
}

.footer-link .text {
  color: #bfbfbf;
}

.phone-link {
  font-weight: 600;
}

.footer-link:hover {
  color: #1e73be;
}

.nolink_subheadings a {
    pointer-events: none;
    text-decoration: none;
    color: inherit;
    cursor: default;
}
.site-footer #nav_menu-1 .sub-menu, .site-footer #nav_menu-1 .dropdown-menu-toggle{
    display: none;
}

#ast-hf-menu-1 .sub-menu a{
    color: #0F172A;
}

#ast-hf-menu-1 .sub-menu a:hover{
    color: #4E7DB4;
}






/*

Services


*/

/* Target ONLY the content box */
.uagb-timeline__events-inner--content {
  background: #c5d1df70;
  padding: 20px 24px;
  border-radius: 12px;
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
  transition: all 0.3s ease;
  border: 1px solid rgba(0,0,0,0.05);
}

/* Hover effect */
.uagb-timeline__events-inner--content:hover {
  transform: translateY(-4px);
  box-shadow: 0 15px 35px rgba(0,0,0,0.12);
}

/* Title */
.uagb-timeline__heading {
  font-size: 18px;
  font-weight: 700;
  color: #1f4f88;
  margin-bottom: 6px;
}

/* Description */
.uagb-timeline-desc-content {
  font-size: 17px;
  font-weight: 800;
  color: #6b7280;
  line-height: 1.6;
}

/* Optional subtle accent line */
.uagb-timeline__events-inner--content::before {
  content: "";
  display: block;
  width: 40px;
  height: 3px;
  background: var(--ast-global-color-8);
  margin-bottom: 10px;
  border-radius: 2px;
}
.uagb-timeline__arrow{
    display: none;
}



/*

services boxes


*/
/* SERVICE CARDS IMPROVED */
.uagb-block-a73e712d .wp-block-uagb-info-box {
  border-radius: 18px;
  transition: all 0.35s ease;
  cursor: pointer;
  background: #f8fafc;
}

/* Hover */
.uagb-block-a73e712d .wp-block-uagb-info-box:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0,0,0,0.08);
  border-color: #1e73be;
}

/* Icon animation */
.uagb-block-a73e712d .uagb-ifb-icon-wrap svg {
  transition: transform 0.3s ease;
}

.uagb-block-a73e712d .wp-block-uagb-info-box:hover .uagb-ifb-icon-wrap svg {
  transform: scale(1.15) rotate(5deg);
}

/* Title color on hover */
.uagb-block-a73e712d .uagb-ifb-title {
  transition: color 0.3s ease;
}

.uagb-block-a73e712d .wp-block-uagb-info-box:hover .uagb-ifb-title {
  color: #1e73be;
}




/*


services button

*/

/* NEW BUTTON STYLE (match previous) */
.services_hero .uagb-button__wrapper .uagb-buttons-repeater{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 16px 28px;
    border-radius: 999px;
    text-decoration: none;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.2px;
    color: #ffffff;
    background: linear-gradient(135deg, #1e73be 0%, #0b2e63 100%);
    box-shadow: 0 10px 24px rgba(11, 46, 99, 0.22);
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* shine */
.services_hero .uagb-button__wrapper .uagb-buttons-repeater::before{
    content: "";
    position: absolute;
    top: 0;
    left: -130%;
    width: 120%;
    height: 100%;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255,255,255,0.20),
        transparent
    );
    transition: left 0.65s ease;
}

/* FIX TEXT (important) */
.services_hero .uagb-button__wrapper .uagb-buttons-repeater .uagb-button__link{
    position: relative;
    z-index: 2;
    color: #fff;
}

/* icon */
.services_hero .uagb-button__wrapper .uagb-buttons-repeater svg{
    width: 15px;
    height: 15px;
    fill: #ffffff;
    position: relative;
    z-index: 2;
    transition: transform 0.3s ease;
}

/* hover */
.services_hero .uagb-button__wrapper .uagb-buttons-repeater:hover{
    transform: translateY(-3px);
    box-shadow: 0 16px 34px rgba(11, 46, 99, 0.30);
}

.services_hero .uagb-button__wrapper .uagb-buttons-repeater:hover::before{
    left: 100%;
}

.services_hero .uagb-button__wrapper .uagb-buttons-repeater:hover svg{
    transform: translateX(5px);
}

/* active */
.services_hero .uagb-button__wrapper .uagb-buttons-repeater:active{
    transform: translateY(-1px);
}
 
.services_hero .services_heading_book mark{
    font-size: 1.6rem;
}



/*


about page


*/


.hero_heading mark{
        background: linear-gradient(90deg, #1e73be, #60a5fa);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 700;
    font-size: 35px;
}
.hero_photo mark{
        background: linear-gradient(90deg, #1e73be, #60a5fa);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 700;
}





/*



book BUTTON



*/

.hcp-button{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 26px;
    border-radius: 999px;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.3px;
    color: #fff;
    background: linear-gradient(135deg, #1e73be, #0e2a47);
    border: none;
    cursor: pointer;
    transition: all 0.25s ease;
    box-shadow: 0 8px 20px rgba(14, 42, 71, 0.25);
}

/* hover */
.hcp-button:hover{
    transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(14, 42, 71, 0.35);
}

/* click */
.hcp-button:active{
    transform: translateY(0);
    box-shadow: 0 6px 14px rgba(14, 42, 71, 0.2);
}


/*

reviews_page

*/

.MuiGrid-container > .MuiGrid-item:first-child{
    display: none;
}



/*

services_form

*/
/* Form container */
#srfm-form-3247 {
    max-width: 600px;
    margin: auto;
    padding: 20px;
}

/* Labels */
.srfm-block-label {
    font-weight: 600;
    margin-bottom: 5px;
    display: block;
    color: #0e2a47;
}

/* Inputs / textarea / select */
.srfm-input-common,
.srfm-dropdown-input,
.srfm-input-textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 14px;
    transition: all 0.2s ease;
}

/* Focus effect */
.srfm-input-common:focus,
.srfm-dropdown-input:focus,
.srfm-input-textarea:focus {
    border-color: #1e73be;
    outline: none;
    box-shadow: 0 0 0 2px rgba(30,115,190,0.2);
}

/* Spacing between fields */
.srfm-block {
    margin-bottom: 15px;
}

/* Button */
.srfm-submit-button {
    background: #1e73be;
    color: white;
    padding: 12px 20px;
    border-radius: 6px;
    border: none;
    font-weight: 600;
    cursor: pointer;
    transition: 0.2s;
}

/* Button hover */
.srfm-submit-button:hover {
    background: #155a94;
}

/* Description text */
.srfm-description {
    font-size: 12px;
    color: #666;
    margin-bottom: 5px;
}

/* Error text */
.srfm-error-message {
    font-size: 12px;
    color: #d63638;
}







/*
responsive css
*/

/*
footer

*/
@media (max-width: 768px) {
#block-16 .contact-item{
        justify-content: center;
}

}












