:root {
  --blue: #0B1F3B;
  --grey: #F5F6F7;
  --text: #333333;
  --white: #ffffff;
  --container-width: 1380px;
  --container-padding: 20px;
  --container-padding-block: 96px;

  /* FONT-16PX */
  --font-family-base: 'Inter', sans-serif;
  --font-size-base: 16px;
  --font-weight-base: 400;
  --line-height-base: 1.7;

  --hover-grey: #afafaf;

  /* FONT-22PX  */
  --font-family-secondary: 'Libre Baskerville', serif;
  --font-22px: 22px;
  --line-height-22px: 1.5em;
  --font-weight-22px: 700;
}


/* Reusable class using your variables */
.text-22-bold-secondary {
  font-family: var(--font-family-secondary);
  font-size: var(--font-22px);
  line-height: var(--line-height-22px);
  font-weight: var(--font-weight-22px);
}
.text-22-regular-secondary {
  font-family: var(--font-family-base);
  font-size: var(--font-22px);
  line-height: var(--line-height-22px);
  font-weight: 400;
}
.text-16-light{
  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  font-weight: var(--font-weight-base);
}
.hover-gray{
  transition: color 0.3s ease;
}
.hover-gray:hover{
  color: var(--hover-grey);
}
/* ============================== GLOBAL STYLING ============================== */
body{
  overflow-x: clip !important;
}
p:last-child {
  margin-block-end: 0px !important;
  margin-bottom: 0px !important;
}
::-webkit-scrollbar {
  width: 12px;
}
::-webkit-scrollbar-track {
  background-color: #f9f9f9;
}
::-webkit-scrollbar-thumb {
  background-color: var(--blue);
  border-radius: 5px;
}
.wp-element-button {
  transition: all 0.6s ease !important;
}
.wp-element-button:hover {
  transform: scale(1.05);
}
input:focus,
textarea:focus {
  outline: none;
  box-shadow: none;
  border-color: var(--blue);
}
.entry-header{
  display: none;
}
/* ============================== CONTACT PAGE ============================== */
#gform_1 label{
  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  font-weight: var(--font-weight-base);
}
#gform_1 input,
#gform_1 textarea,
#gform_1 select{
  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  font-weight: var(--font-weight-base);
}
#gform_1 textarea{
  height: 150px;
}
#gform_1 input:focus,
#gform_1 textarea:focus,
#gform_1 select:focus {
  outline: none;
  box-shadow: none;
  border-color: var(--blue);
}
#gform_1 input,
#gform_1 textarea,
#gform_1 select{
  border: 1px solid #858f9d;
}
#gform_submit_button_1{
  padding-block: 5px;
  transition: all 0.3s ease;
}
#gform_submit_button_1:hover{
  transform: scale(1.05);
}
.transfer-box {
  padding: 10px;
  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
  line-height: var(--line-height-base);
  font-weight: var(--font-weight-base);
  background: var(--grey);
  border-left: 4px solid var(--blue);
}
#gform_1 #field_1_21,
#gform_1 #field_1_23 {
    display: none;
}
/* ============================== 404 STYLING ============================== */
.custom-404 {
    background-image: url('/wp-content/uploads/2026/04/Frame-6356112-1.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 20px;
}

.custom-404 .content-404 h1 {
    font-size: 120px;
    color: #fff;
    margin-bottom: 10px;
}

.custom-404 .content-404 p {
    font-size: 20px;
    color: #fff;
    margin-bottom: 30px;
}

.custom-404 .wp-block-button__link {
    background-color: #ffffff;
    color: #000;
    padding: 12px 24px;
    text-decoration: none;
    border-radius: 4px;
    display: inline-block;
}

.custom-404 .wp-block-button__link:hover {
    background-color: #000;
    color: #fff;
}


/* ============================== HOMPAGE STYLING ============================== */
.home-hero{
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.home-hero,
.inner-page-banner{
  margin-top: -200px !important;
}
.home-hero.alignfull {
  max-width: var(--container-width);
  width: 100%;
  margin: 0 auto;
  padding-inline: var(--container-padding);
}
.home-hero > .wp-block-group.is-layout-constrained {
  max-width: var(--container-width);
  width: 100%;
  margin: 0 auto;
  padding-inline: var(--container-padding);
}
.home-hero.inner-page-banner .wp-block-group.is-content-justification-left.is-layout-constrained{
  max-width: 100% !important;
}
.home-hero .wp-block-group.is-content-justification-left.is-layout-constrained {
  max-width: 909px;
  width: 100%;
  margin-right: auto;
  margin-left: 0 !important;
}
.gradient-box{
  background-color: transparent !important;
  background-image: linear-gradient(90deg, var(--blue) 20%, var(--white) 100%) !important;
}
.row-with-image img{
  max-width: 276px;
}
.icon-box-wrapper img{
  height: 42px !important;
}
.icon-box-wrapper h3:hover{
  text-decoration: underline;
  text-decoration-color: #858f9d;
}
.con-with-image > * + *{
  margin-top: 35px !important;
}
.con-with-image h2{
  max-width: 700px;
  margin-right: auto;
  margin-left: 0 !important;
}
.con-with-image .row-with-image{
  display: grid;
  grid-template-columns: 1fr 276px;
  gap: 24px;
}
.con-with-image ul{
  padding-left: 24px;
}
#primary{
  margin: 0 !important;
}
.con-with-image h2{
  padding-bottom: 8px;
}
#ast-scroll-top .ast-icon{
  position: relative;
  top: 12px;
}
#gform_confirmation_message_1{
    color: green;
}
#gform_1_validation_container h2{
    text-align: left !important;
    padding-bottom: 0px !important;
}



/* ============================== LANDING PAGES STYLING ============================== */

/* ACCORDION STYLES FAQ  */
.faq-sm .wp-block-accordion-item{
  padding: 15px;
  border: 1px solid var(--grey);
  border-radius: 8px;
  box-shadow: rgba(0, 0, 0, 0.04) 0px 3px 5px;

}
.faq-sm  .wp-block-accordion-item.is-open{
  background-color: var(--grey) !important;
}
.faq-sm .wp-block-accordion-heading__toggle:hover,
.faq-sm .wp-block-accordion-heading__toggle:focus{
  background-color: transparent !important;
}
.faq-sm .wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-title,
.faq-sm .wp-block-accordion-heading__toggle:focus .wp-block-accordion-heading__toggle-title,
.faq-sm .wp-block-accordion-heading__toggle:hover .wp-block-accordion-heading__toggle-icon,
.faq-sm .wp-block-accordion-heading__toggle:focus .wp-block-accordion-heading__toggle-icon{
  color: var(--blue);
  background-color: transparent !important;
}
.faq-sm .wp-block-accordion-heading__toggle:focus{
  background-color: transparent !important;
}
.faq-sm .wp-block-accordion-heading__toggle{
  box-shadow: none !important;
}
.faq-sm .wp-block-accordion-panel{
  margin-top: 15px !important;
}

/* ============================== MEDIA QUERIES STYLING ============================== */

@media (max-width: 1100px) {
  :root{
      --font-22px: 20px;
  }
}
@media (min-width: 921px){

  .no-margin{
    margin-top: 0 !important;
  }
}
@media (max-width: 920px) {
  :root{
    --container-padding-block: 50px;
  }
  #gform_1_validation_container {
      padding-inline: 20px;
  }
  #gform_confirmation_message_1{
    text-align: center;
  }
  #gform_1 .gform_footer {
    justify-content: center;
  }
  .fd-col{
    flex-direction: column;
    gap: 35px;
  }
  .fd-col-rev{
    flex-direction: column-reverse;
    gap: 35px;
  }
  .content-box ul{
    padding-left: 0px;
  }
  .is-style-align-items-start{
    align-items: center !important;
  }
  .content-box h1,
  .content-box h2,
  .content-box h3,
  .content-box p{
    text-align: center !important;
  }
  .content-box .wp-block-buttons{
    justify-content: center;
  }
  .content-box{
    align-items: center !important;
  }
  .icon-box-wrapper{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 40px 20px !important;
  }
  .con-with-image .row-with-image{
    grid-template-columns: 1fr;
    gap: 35px;
  }
  .con-with-image .row-with-image figure{
    text-align: center;
  }
  .con-with-image ul{
    text-align: center;
    list-style-position: inside;
  }
  .con-with-image h2{
    max-width: 100%;
  }
  .inner-page-banner{
    min-height: 65vh !important;
  }
  .inner-page-box{
    padding-top: 150px !important;
  }
  .inner-page-banner h1 br{
    display: none;
  }
}
@media (max-width: 620px) {
  :root {
    --font-size-base: 14px; 
    --font-22px: 18px;
  }
  .gradient-box{
    padding-block: 30px !important;
  }
  .home-hero,
  .inner-page-banner{
    margin-top: -160px !important;
  }
  .icon-box-wrapper{
    padding-top: 0px !important;
    grid-template-columns: repeat(1, minmax(0, 1fr)) !important;
  }
  .icon-box-wrapper h3,
  .icon-box-wrapper p,
  .icon-box-wrapper figure{
    text-align: center !important;
  }
  .inner-page-banner{
    min-height: 50vh !important;
  }
}
@media (min-width: 921px) and (max-width: 1281px){
  h1{
    font-size: 40px !important;
  }
}

/* ============================== GUTENBERG STYLES ============================== */
.is-style-align-items-center {
  display: flex;
  align-items: center;
}

.is-style-align-items-start {
  display: flex;
  align-items: flex-start;
}

.is-style-align-items-end {
  display: flex;
  align-items: flex-end;
}
