/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.18.2
*/

/*************** ADD CUSTOM CSS HERE.   ***************/

.widget_search form.searchform {
    margin: 0;
}

:root {
    --color-black: #000000;
    --color-white: #ffffff;
    --color-grey: #cccccc;
    --FontAwesome: 'Font Awesome 5 Free';
    --font-html-size: 62.5%;
    --heading-font: 'Roboto', sans-serif;
    --alt-font-2: 'Roboto', sans-serif;
    --alt-font-3: 'Roboto', sans-serif;
}

html {
    font-size: var(--font-html-size);
}

body {
    font-size: 1.6rem !important;
}


p {
    margin-bottom: 1.5rem;
}


.nav-dark,
.dark,
.dark p,
.dark td {
    color: var(--color-white);
}


.col-child-left > .col-inner {
    margin-right: auto !important;
    margin-left: 0 !important;
}
.col-child-center > .col-inner {
    margin-right: auto !important;
    margin-left: auto !important;
}

.col-child-right > .col-inner {
    margin-right: 0 !important;
    margin-left: auto !important ;
}

.off-canvas-left .mfp-content,
.off-canvas-right .mfp-content {
    background-color: hsla(0, 0%, 100%, 1);
}

.off-canvas:not(.off-canvas-center) .nav-vertical li  a {
    font-size: 1em !important;
    text-transform: capitalize !important;
    font-weight: 500 !important;
    color: var(--color-black) !important;
}

.alt-font {
    font-family: "Be Vietnam Pro", sans-serif !important;
}

.section-title-container {
    margin-bottom:1.5rem;
}

.section-title-container.logo-back .section-title-main {
    position:relative;
    padding: 6rem 0 2rem;
}


.section-title-container.logo-back .section-title-main:after {
    content: '';
    display: block;
    width: 15rem;
    height: 12rem;
    background: url(/wp-content/uploads/2025/05/Logo.png) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: -1;
    opacity: 0.3;
}

.section-title-container  * {
     margin-bottom: 0rem;
}


.section-title-bold span, .section-title-bold-center span {
    border: none;
    padding: 5px 15px;
    background-color: var(--color-white);
}


h2.section-title {
    font-size:2.25em;
}

.bigger h2.section-title {
    font-size:2.5em;
}
.h1, .h2, h1, h2 {
    line-height: 1.4;
}

.section-title-center .section-title-main{
    flex:1;
}

.section-title-bold-center .section-title-main {
    flex: 0 0 auto;
    display: block;
    width: max-content;
    margin: 0 auto;
}

.section-title-bold-center b ,
.section-title-center b {
    display:none;
}

.section-title-normal {
    border-bottom: 0;
}
.section-title-normal span {
    border-bottom: 0;
    margin-bottom: 0;
    margin-right: 0;
    padding-bottom: 0;
}

form input[type="text"],
form input[type="tel"],
form input[type="email"],
form input[type="password"],
form select {
    box-shadow:none;
    height:5rem;
    border-radius:3rem;
    padding: 1rem 2rem;
}

form textarea {
    box-shadow:none;
    border-radius:3rem;
    padding:  1rem 2rem;
    resize:none;
}

button {
        font-size: 1em;
}



.input-icon {
    padding-right:4rem;
    background:url(/wp-content/uploads/2025/05/input-msg.png) no-repeat calc(100% - 2rem)  1.2rem / 2.4rem auto;
}

.input-icon.icon-name {
    background-image:url(/wp-content/uploads/2025/05/input-name.png);
}

.input-icon.icon-phone {
    background-image:url(/wp-content/uploads/2025/05/input-phone.png);
}

.input-icon.icon-mail {
    background-image:url(/wp-content/uploads/2025/05/input-mail.png);
}

.input-icon.icon-note {
    background-image:url(/wp-content/uploads/2025/05/input-msg.png);
}

.button:not(.icon), button:not(.icon), input[type=button]:not(.icon), input[type=reset], input[type=submit] {
    font-weight: 500;
    letter-spacing: 0;
    line-height: 4.8rem;
    min-height: 5rem;
    padding: 0 2.4rem ;
}



.button.is-rounded {
    border-radius:3rem;
}

.white {
    color: var(--color-black) !important;
}

.white.is-outline:hover {
    color: var(--color-black) !important;
}

.swal2-popup {
    font-size: 1em !important;
}

.nav-pagination>li>a, .nav-pagination>li>span {
    border: none;
    border-radius: 99px;
    display: block;
    font-size: 1.5rem;
    font-weight: bolder;
    height: 5rem;
    line-height: 5rem;
    min-width: 5rem;
    padding: 0 10px;
    text-align: center;
    transition: all .3s;
    vertical-align: top;
    width: auto;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    background-color: var(--color-white);
}


.post-item>.col-inner{
    background-color:var(--color-white);
}

.box-push .box-text {
    background-color: #fff;
    margin: -15% 0 auto auto;
    max-width: 85%;
    padding: 15px 20px;
}

.has-shadow .post-item:hover>.col-inner {
      box-shadow: 0 4px 25px rgba(0, 0, 0, 0.1);
}

.box.box-blog-post .post-title {
    font-family: "Be Vietnam Pro", sans-serif !important;
    font-weight:600; 
}

.box.box-blog-post .post-title:hover a {
    text-decoration:underline;
    color: var(--color-black);
}

.box .label {
    display: inline-block;
    background-color: var(--fs-color-primary);
    color: var(--color-white);
    font-size: 1.4rem;
    padding: 2px 8px;
    border-radius: 3rem;
}

.box .label.label-service {
    background-color: var(--fs-color-secondary);
}


.box .post-title {
    font-weight:500; 
}
.box .post-title.is-large {
    font-size:2rem;
}

.box .post-title.is-larger {
    font-size:2.4rem;
}


.box .post-title.is-xlarge {
    font-size:2.8rem;
}


.box .post-title.is-xxlarge {
    font-size:3.6rem;
}



.box-vertical {
    
}

.box-text {
    font-size:1em;
    padding-bottom: 1em;
    padding-top: .625em;
}

.box .is-divider {
    display:none;
}

.box .post-meta {
    position:relative;
    font-size:1.5rem;
    color:#696969;
    opacity:1;
    margin: 0.5rem 0;
}

.box .post-meta:before {
    content: '\f073';
    font-family: var(--FontAwesome);
    font-weight:bold;
    color:var(--fs-color-primary);
    margin-right: 0.6rem;
}


.is-large {
    font-size: 1.125em;
}

.is-larger {
    font-size: 1.25em;
}

.box  .button {
    border-radius:3rem;
    font-weight:500;
}

.fw-500 {
    font-weight:500;
}
.fw-600 {
    font-weight:600;
}


.last-reset p:has(+ style) {
    margin-bottom: 0;
}

.slider-nav-dots-dashes {
    padding-bottom:3rem;
}   

.slider-nav-dots-dashes .flickity-page-dots {
    left: 1.5rem;
    right: 1.5rem;
    display:flex;
}


.slider-nav-dots-dashes-spaced .flickity-page-dots {
    left: 0rem;
    right: 0rem;
    display:flex;
    height:10px;
    overflow:hidden;
}

.slider-nav-dots-dashes-spaced .flickity-page-dots .dot,
.slider-nav-dots-dashes .flickity-page-dots .dot {
    border-color: #E0E6F4;
    opacity: 1;
    height:4px;
    flex:1;
}


.slider-nav-dots-dashes-spaced .flickity-page-dots .dot {
    height: 1px;
    border-width: 1px;
    margin: 0 6px;
    position:relative;
    left:-4px;
    top:4px;
    transform:translateX(-50%);
    border-color: #ffffff4d;
}

.slider-nav-dots-dashes-spaced .flickity-page-dots .dot:after {
    content:'';
    display:inline-block;
    width:6px;
    height:6px;
    border-radius:50%;
    background-color:var(--fs-color-secondary);
    position: absolute;
    right: -10px;
    top: -3px;
}

.slider-nav-dots-dashes-spaced .flickity-page-dots .dot:last-child:before {
    content: '';
    display: inline-block;
    width: 50%;
    height: 2px;
    background-color: #ffffff4d;
    position: absolute;
    top: -1px;
    left: calc(100% + 1.2rem);
}
.dark .slider-nav-dots-dashes-spaced .flickity-page-dots .dot.is-selected,
.dark .slider-nav-dots-dashes-spaced .flickity-page-dots .dot.is-selected:last-child:before {
    border-color: #fff;
    background-color: #fff;
}

.slider-nav-dots-dashes-spaced .flickity-page-dots .dot:has( ~ .is-selected) {
    background-color: var(--fs-color-secondary) !important;
    border-color: var(--fs-color-secondary) !important;
}


.dark .slider-nav-dots-dashes-spaced .flickity-page-dots .dot:has( ~ .is-selected) {
    background-color: var(--color-white) !important;
    border-color: var(--color-white) !important;
}



.slider-nav-dots-dashes-spaced .flickity-page-dots .dot.is-selected,
.slider-nav-dots-dashes .flickity-page-dots .dot.is-selected {
    background-color: var(--fs-color-secondary);
    border-color: var(--fs-color-secondary);
}

.rank-math-breadcrumb {
    text-transform:initial !important;
    font-weight:500;
}
.breadcrumbs .divider, .breadcrumbs .separator {
    font-weight: 300;
    margin: 0 .3em;
    opacity: 1;
    position: relative;
    top: 0;
}

.flickity-button .flickity-button-icon {
    background-repeat: no-repeat ;
    background-size: 100% auto ;
    background-position: center;
    background: url(./assets/images/flickity-arrows) no-repeat center / 100% auto;
    fill: transparent !important;
}

.slider-nav-light .flickity-prev-next-button .arrow, .slider-nav-light .flickity-prev-next-button svg {
   fill: transparent !important;
}

.slider-nav-circle .flickity-prev-next-button:hover .arrow, .slider-nav-circle .flickity-prev-next-button:hover svg {
    fill: transparent !important;
    background-color: var(--fs-color-primary);
    border-color: var(--fs-color-primary);
}

.flickity-prev-next-button .arrow, .flickity-prev-next-button svg {
     fill: transparent !important;
}

.slider-nav-light.slider-nav-circle .flickity-button.previous:hover .flickity-button-icon,
.slider-nav-dark.slider-nav-circle .flickity-button.previous:hover .flickity-button-icon{
    background-image: url(./assets/images/flickity-arrows/arrow-left-light.png) ;
}

.slider-nav-light.slider-nav-circle .flickity-button.next:hover .flickity-button-icon ,
.slider-nav-dark.slider-nav-circle .flickity-button.next:hover .flickity-button-icon {
    background-image: url(./assets/images/flickity-arrows/arrow-light.png) ;
}


.slider-nav-circle .flickity-button .flickity-button-icon {
    background-size: 50% auto !important;
}

.flickity-button.previous .flickity-button-icon {
    background-image: url(./assets/images/flickity-arrows/arrow-left-light.png) ;
}

.slider-nav-light .flickity-button.previous .flickity-button-icon {
    background-image: url(./assets/images/flickity-arrows/arrow-left-light.png) ;
}

.slider-nav-light.slider-nav-circle .flickity-button.previous .flickity-button-icon {
    background-image: url(./assets/images/flickity-arrows/arrow-left-dark.png) ;
}

.slider-nav-dark .flickity-button.previous .flickity-button-icon {
    background-image: url(./assets/images/flickity-arrows/arrow-left-dark.png) ;
}

.flickity-button.next .flickity-button-icon {
    background-image: url(./assets/images/flickity-arrows/arrow-light.png) ;
}

.slider-nav-light .flickity-button.next .flickity-button-icon {
    background-image: url(./assets/images/flickity-arrows/arrow-light.png) ;
}

.slider-nav-light.slider-nav-circle .flickity-button.next .flickity-button-icon {
    background-image: url(./assets/images/flickity-arrows/arrow-dark.png) ;
}

.slider-nav-dark .flickity-button.next .flickity-button-icon {
    background-image: url(./assets/images/flickity-arrows/arrow-dark.png) ;
}

.slider-nav-light.slider-nav-circle .flickity-prev-next-button .arrow, 
.slider-nav-light.slider-nav-circle .flickity-prev-next-button svg {
    fill: transparent;
}

.slider-nav-light.slider-nav-circle .flickity-prev-next-button .flickity-button-icon{
    fill: transparent;
    padding: 28%;
    background-color: var(--color-white);
    border: none;
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}

.slider-nav-light.slider-nav-circle .flickity-button:hover .flickity-button-icon{
    background-color: var(--fs-color-primary);
}


.back-to-top.button {
    width:5rem;
    height:5rem;
    line-height:5rem;
    border-radius:0 !important;
    background-color: var(--fs-color-secondary) !important;
    color: var(--color-white) !important;
    border:none;
}

/*************** HEADER ***************/
.nav-column>li>a, .nav-dropdown>li>a, .nav-vertical-fly-out>li>a, .nav>li>a {
    color: var(--color-black);
    transition: all .2s;
}
.nav-dropdown {
    color: var(--color-black);
    border-radius:2rem;
    min-width:30rem;
}


.nav-dropdown > li {
    display:table-row !important;
    text-transform:initial !important;
    font-weight:500;
}
.nav-dropdown-bold .nav-column li>a:hover, .nav-dropdown-bold.dark .nav-column li>a:hover, .nav-dropdown.nav-dropdown-bold.dark>li>a:hover, .nav-dropdown.nav-dropdown-bold>li>a:hover {
    background-color: #F0F0FF;
    color: #3F3F95 !important;
    border-radius: 3rem;
}

.nav-dropdown>li.menu-item-has-children > a {
    position:relative;
}

.nav-dropdown>li.menu-item-has-children > a:after {
    content: '\f105';
    font-family: 'Font Awesome 6 Free';
    font-weight: bold;
    color: currentColor;
    position: absolute;
    top: 50%;
    right: 1.2rem;
    transform: translateY(-50%);
}
.nav-dropdown > li {
    position:relative;
}

.sub-menu .sub-menu {
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(100%);
    background-color: var(--color-white);
    border-radius: 2rem;
    padding: 2rem 0 !important;
    opacity:0;
}

.sub-menu li:hover > .sub-menu {
    opacity:1;
}

.nav-dropdown .menu-item-has-children>a, .nav-dropdown .nav-dropdown-col>a, .nav-dropdown .title>a {
    color: #000;
    font-size: 1em;
    font-weight: 500;
    text-transform: initial;
}

.nav-dropdown-bold .nav-column li>a, .nav-dropdown.nav-dropdown-bold>li>a {
    border-radius: 10px;
    margin: 0 10px;
    padding-left: 20px;
    padding-right: 20px;
}
.slider-show-nav .flickity-prev-next-button, .slider:hover .flickity-prev-next-button {
    opacity: 1;
    transform: translateX(0) !important;
}


.header-shadow .header-wrapper, .header-wrapper.stuck, .layout-shadow #wrapper {
     box-shadow: none; 
}
.stuck .header-bg-color {
    background-color: transparent;
}

#header.transparent #top-bar {
        background-color: transparent;
}
#header #top-bar .flex-center{
    flex: 1;
}

#header #top-bar .flex-left,
#header #top-bar .flex-right {
    display:none;
}

#header #top-bar  .header-block-block-1 {
    display: flex;
        justify-content: center;
    gap:3rem;
}

#header #top-bar  .header-block-block-1 .icon-box {
    width:max-content;
}

#header #masthead .header-inner {
    border-radius: 5rem;
    background-color: var(--color-white);
    padding: 0 3rem 0 0;
    box-shadow: 0 4px 35px rgba(0, 0, 0, 0.25);
}

.nav-size-medium>li>a {
    font-size: 0.875em;
}

#logo  {
 
    background-color: var(--color-white);
    border-radius: 5rem;
    box-shadow: 0 7px 15px rgba(0, 0, 0, 0.2);
    padding: 0 1rem 0 2rem;
}


#logo  a {
    font-size: 2.4rem;
    display:flex;
    align-items:center;
    gap:1.8rem;
}


.logo-tagline {
    font-style: normal;
    margin: 0;
    text-transform: uppercase;
    color: var(--fs-color-primary) !important;
}


#header .nav-outline>li>a {
    color:var(--color-black);
}

.header:not(.transparent) .header-nav-main.nav > li > a:hover, .header:not(.transparent) .header-nav-main.nav > li.active > a, .header:not(.transparent) .header-nav-main.nav > li.current > a, .header:not(.transparent) .header-nav-main.nav > li > a.active, .header:not(.transparent) .header-nav-main.nav > li > a.current {
    border-color: var(--fs-color-secondary);
}
#header .nav-outline>li.active>a,
#header .nav-outline>li:hover>a {
    border-color: var(--fs-color-secondary);
}

#header .header-main .nav > li > a {
    line-height: 78px;
    padding: 1.2rem 2.4rem;
}

#header .header-main .nav > li > a:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: 2px solid transparent;
    display: block;
    width: 100%;
    height: 44px;
    border-radius: 3rem;
}

#header .stuck .header-main .nav > li > a {
    line-height: 48px;
}

#header .header-main .nav > li.active > a:after,
#header .header-main .nav > li:hover > a:after {
    border-color: var(--fs-color-secondary);
}



.form-flat input:not([type=submit]), .form-flat select, .form-flat textarea {
    background-color: #f0f0f0 ;
    border-color: #f0f0f0 ;
    border-radius: 99px;
    box-shadow: none;
    color: currentColor ;
    height: 5rem;
}

.form-flat .button.icon {
    background-color: var(--fs-color-secondary) !important;
    border-color: var(--fs-color-secondary) !important;
    color: var(--color-white) !important;
    box-shadow: none;
    height:3.8rem;
    width:3.8rem;
}
    
.searchform-wrapper.form-flat .flex-col:last-of-type {
    margin-left: -4.8rem;
}    
.has-transparent + .page-title:first-of-type, 
.has-transparent + #main > .page-title, 
.has-transparent + #main > div > .page-title, 
#header.has-transparent + #main .page-header-wrapper:first-of-type .page-title {
    padding-top: 160px !important;
}

h2.entry-title,
h1.page-title,
h1.entry-title {
    font-size:4.4rem;
}
/*************** END HEADER ***************/

/*************** FOOTER ***************/

 #footer .footer-top-section .section-bg {
		display:none
}

#footer a {
    color: #62627B;
}

#footer a:hover {
    color: var(--color-white);
}

.absolute-footer.dark {
    color: #62627B;
    border-top: 1px solid #29296B;
    padding: 3rem 0;
}

.footer-secondary {
    padding: 0;
}

.dark .row-dashed .col:after, .dark .row-dashed .col:before, .dark .row-solid .col:after, .dark .row-solid .col:before {
    border-color: #29296B;
}

.row-dashed .col:after, .row-solid .col:after {
    border-bottom: 1px dashed #29296B;

}
#footer .ft-imgs > .col-inner {
    display:flex;
    align-items:center;
    gap:1.5rem
}

#footer .ft-img {
    margin:0 ;
}

#footer .ft-img img {
    height:35px;
    width:auto;
    object-fit:contain
}

#footer .ft-img:last-child img {
    height:25px;
}
/*************** END FOOTER ***************/




/*************** HOME PAGE ***************/
.hero-section ul {
    list-style:none;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:2rem;
    margin-bottom:6rem;
}


.hero-section ul li {
    margin:0;
    background:url(/wp-content/uploads/2025/05/arrow-green.png) no-repeat left center/ 3rem auto;
    padding-left:4rem;
    text-align:left;
}

.shade {
    background: rgba(0, 0, 0, .2);
    background: linear-gradient(0deg, #3E3F96, rgba(50, 50, 50, 0) 33%);
    opacity: 1 !important;
    transition: opacity .3s;
}

.icon-box h3{
    font-size:2.8rem;
    font-family: "Be Vietnam Pro", sans-serif !important;  
}


.row .service-row {
    margin-left: 0px !important;
    margin-right: 0px !important;
}


.why-us-section {
    
}

.why-us-row > .col > .col-inner {
    border: 3px solid transparent;
}

.why-us-row > .col > .col-inner:after {
    content: '';
    display: block;
    width: 1.8rem;
    height: 1.8rem;
    background-color: transparent;
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
    position: absolute;
    right: 1rem;
    bottom: 1rem;
}

.why-us-row > .col > .col-inner:hover {
    background-color: var(--color-white) !important;
     border-color: var(--fs-color-secondary);
}

.why-us-row > .col > .col-inner:hover:after {
      background-color: var(--fs-color-secondary);
}

.always-show-items .flickity-slider > * {
    opacity:1 !important;
}

.step {
    width: 19rem;
    height: 24rem;
    background: url(/wp-content/uploads/2025/05/step.png) no-repeat center / contain;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #848484;
    padding: 9rem 5rem 5rem;
    text-align: center;
}

.step p {
    display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
margin-bottom:0;
}

.step-row .col:hover .step {
    background-image: url(/wp-content/uploads/2025/05/step-hover.png);
    color:var(--color-black);
}

.text.step * {
    color: currentColor;
}

.step-row {
    counter-reset: step;
    overflow-x: auto;
    scrollbar-width: thin;
    padding-bottom: 2rem;
    flex-wrap:nowrap;
}
.step-row  > .col {
    min-width:22rem;
    padding-bottom: 5rem;
}

.step-row > .col:before,
.step-row > .col:after {
    content: '';
    position: absolute;
    bottom: 2px;
    left: 0;
    width: calc(50% - 0.6rem);
    height: 2px;
    display: block;
    background-color: #ffffff4d;
}

.step-row  > .col:first-child:before {
    left: 1.5rem;
    width: calc(50% - 2.1rem);
}


.step-row > .col:last-child:after {
    right: 1.5rem;
    width: calc(50% - 2.1rem);
}

.step-row  > .col:hover:before,
.step-row  > .col:has( ~ :hover ):before,
.step-row  > .col:has( ~ :hover ):after,
.step-row  > .col:hover:last-child:after{
    background-color: #fff;
}


.step-row .col:after  {
    left:auto;
    right: 0;
}

.step-row > .col > .col-inner {
    position:relative;
}

.step-row > .col > .col-inner:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: var(--fs-color-secondary);
    position: absolute;
    right: le;
    bottom: -5rem;
    left: 50%;
    transform: translateX(-50%);
}
.icon-angle-up:before {
    content: "\f176";
    font-family: var(--FontAwesome);
    font-weight: bold;
}

.post-img .icon-angle-right:before {
    content: "\f178";
    font-family: var(--FontAwesome);
    font-weight: bold;
}

.post-img  .icon-angle-left:before {
    content: "\f177";
    font-family: var(--FontAwesome);
    font-weight: bold;
}

.post-img  .icon-angle-down:before {
    content: "\f175";
    font-family: var(--FontAwesome);
    font-weight: bold;
}

.step-row {
  counter-reset: step;
}

.step-row  .step::before {
counter-increment: step;
    content: "0" counter(step);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, 14px);
    font-size: 3.6rem;
    font-family: 'UTM Alter Gothic' ,san-serif;
    color: var(--color-white);
}


.testimonials-section {
    background:linear-gradient(to bottom, #FFF4F5 0%, #fff 100%);
}


.testimonials-section .slider {
    margin-left:-3rem;
    margin-right:-3rem;
    padding-bottom:5rem;
}

.testimonials-section  .icon-box .icon-box-img {
    border-radius: 50%;
    border: 1px dashed #E64F4F;
    padding: 0.6rem;
}

.testimonials-section .icon-box img {
    padding-top: 0;
}

.slider-nav-dots-simple .flickity-page-dots .dot {
    background-color: #D9D9D9;
    border-color: #D9D9D9;
    opacity: 1;

    position:relative;
    width:8px;
    height:8px;
}


.slider-nav-dots-simple .flickity-page-dots .dot:after {
    content: '';
    position: absolute;
    width: 14px;
    height: 14px;
    border: 1px solid transparent;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.slider-nav-dots-simple .flickity-page-dots .dot.is-selected {
    background-color: var(--fs-color-secondary);
    border-color: var(--fs-color-secondary);
}

.slider-nav-dots-simple .flickity-page-dots .dot.is-selected:after {
    border-color: var(--fs-color-secondary);
}

.testimonials-section  .flickity-slider > .row > .col {
    padding:3rem !important
}

.testimonials-section .testimonials-row > .col > .col-inner {
    position:relative;
    box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.1);
}

.testimonials-section .testimonials-row > .col > .col-inner:before {
    content:'';
    display:block;
    width:18rem;

    aspect-ratio:1/1;
    background-color:#FFE5E7;
    position:absolute;
    top:0;
    left:0;
    z-index:0;
    clip-path: polygon(100% 0, 0% 100%, 0 0);
}

.testimonials-section .testimonials-row > .col > .col-inner:after {
    content:'';
    display:block;
    width:3rem;
    aspect-ratio:1/1;
    background-color:transparent;
    position:absolute;
    bottom:0;
    right:0;
    z-index:0;
    clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}

.testimonials-section .testimonials-row > .col:after {
    content: '';
    background-color: var(--color-white);
    border: 1px solid #E0E0E0;
    top: 2rem;
    left: 5rem;
    right:1rem;
    bottom:1rem;
    display: block;
    position: absolute;
    z-index: -1;
}


.testimonials-section .testimonials-row.is-selected > .col:after,
.testimonials-section .testimonials-row:hover > .col:after  {
    border-color:#5758AF;
}

.testimonials-section .testimonials-row.is-selected .icon-box .icon-box-img,
.testimonials-section .testimonials-row:hover .icon-box .icon-box-img  {
    border-color:#fff;
}

.testimonials-section .testimonials-row.is-selected > .col > .col-inner:before,
.testimonials-section .testimonials-row.is-selected > .col >  .col-inner:after,
.testimonials-section .testimonials-row:hover > .col >  .col-inner:before,
.testimonials-section .testimonials-row:hover > .col > .col-inner:after {
    background-color: var(--fs-color-secondary);
}

.box-bounce .box-text {
    padding: 15px 15px 20px;
    z-index: 1;
    width: 80%;
    margin: -10% 0 0 auto;
    background: #fff;
}


.box .button.is-large {
    font-size: 1.5rem;
    line-height: 4.2rem;
    height: 4.6rem;
    min-height: 4.6rem;
    text-transform: initial;
  
    border-color: var(--fs-color-secondary);
}   

.box.box-bounce:not(:hover)  .button.is-large {
      color: var(--color-black);
}

.button.is-black {
    color:var(--color-black);
}

.button.is-link {
    padding-left:0;
}

/*************** END HOME PAGE ***************/


/*************** ABOUT PAGE ***************/
.about-section {
    background: linear-gradient( to bottom , #FFF4F5 0%, #fff 100%);
}
.about-section .about-row {
    flex-wrap:nowrap;
    padding-bottom: 14rem;
}

.about-section .about-row .year-text {
    width: 12rem;
    height: 14rem;
    background-color: var(--fs-color-secondary);
    color: var(--color-white);
    place-content: center;
    text-align: center;
    line-height:1.25;
    font-size:2.4rem;
    font-family: var(--heading-font) !important;
    margin-bottom:-8rem;
    z-index:10;
    position:relative;
}

.about-section .about-row .year-text p{
    margin-bottom:0;
    line-height: 1;
}

.about-section .about-row .year-text strong {
    font-size: 8rem;
    line-height:1;

}

.about-section .about-row .desc-text {
    background-color: var(--fs-color-primary);
    color: var(--color-white);
    font-family: var(--alt-font-2);
    font-size: 3rem;
    max-width: 42rem;
    padding: 3rem 4rem;
    position: absolute;
    bottom: -14rem;
    left: 17%;
    z-index: 1;
    line-height: 1.05;
}

.about-section .about-row .team-image {
    padding-left:5rem;
}


.about-section .about-row > .col:last-child:after {
    content: '';
    width: 10rem;
    height: 100%;
    background-color: #FFF5F6;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.about-section .about-row > .col:last-child > .col-inner {
    z-index:1;
}

.about-section .icon-box {
    
}

.about-section .icon-box .icon-box-img {
    border-radius: 50%;
    border: 1px dashed #E64F4F;
    padding: 0.6rem;
}

.about-section .icon-box img {
    padding-top:0;
}

.timeline-row{
    flex-wrap:nowrap;
}

.timeline-row > .col  {

}

.history-list {
    position: relative;
    min-height:30rem;
}

.history-list::before {
    content: "";
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 2px;
    background: var(--color-white);
}

.history-list .col {
    padding: 0;
}

.history-list .box {
    max-width: 260px;
    margin: 0 auto;
    display: flex;
    gap: 100px;
    flex-direction: column;
    position: relative;
}

.history-list .col:nth-child(odd) .box {
    flex-direction: column-reverse;
}

.history-list .box-image img {
    width: 100%;
    height: 170px;
}

.history-list .box-text {
    height: 170px;
    overflow: hidden;
    display: flex;
    align-items: center;
    padding: 0;
    justify-content: center;
}

.history-list .box-text h3 {
    font-family: var(--alt-font-3) !important;
    font-weight: 400;
    font-size: 3.6rem;
    text-align: center;
    margin:0;
    color: var(--color-white);
}

.history-list .box::after {
    content: "";
    position: absolute;
    width: 3px;
    height: 24px;
    background-color: var(--color-white);
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    top: 50%;
}

.core-value-section .section-bg :is(img,picture,video) {
    height: auto;
    left: 0;
    -o-object-fit: cover;
    object-fit: contain;
    -o-object-position: 50% 50%;
    object-position: 100% 100%;
    position: absolute;
    top: 0;
    width: max-content;
    top: auto;
    bottom: 0;
}

.contact-info-col {
    background:url(/wp-content/uploads/2025/05/bgcontact.png) no-repeat center / 100% auto;
}

/*************** END ABOUT PAGE ***************/

/*************** BLOG ARCHIVE PAGE ***************/
.has-transparent .page-wrapper {
    padding-top: 0px;
}

.archive-page-header .title-bg {
    background-image: url(/wp-content/uploads/2025/05/Page-Banner-Bg.jpg);
    background-position: 50% 50%;
}

.archive-page-header{
    position:relative;
}


.blog-archive .archive-page-header {
    min-height:40rem;
    background-color:var(--fs-color-primary);
    margin-bottom:8rem;
    padding-top: 16rem;
}

.featured-title.archive-page-header .page-title-inner {
    min-height:24rem;
}

.widget-area .widget  {
    padding:3rem;
    background-color:var(--color-white);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    margin-bottom:4rem;
}

span.widget-title {
    font-size: 1.8rem;
    text-transform: initial;
    letter-spacing: 0;
    line-height: 1.4;
    margin-bottom: 3rem;
    display: inline-block;
    border-bottom: 3px solid var(--fs-color-secondary);
    padding: 0.5rem 0;
}

.widget-area .widget .widget-title + .is-divider {
    display:none;
}

.widget_search .searchform input[type=search] {
    box-shadow:none;
    height:5.6rem;
    border-right: none;
}
.widget_search .searchform button {
    width: 5.6rem;
    height: 5.6rem;
    background-color: #fff;
    border: 1px solid #D3D3D3;
    border-left: none;
    color: #000;
}


.select-resize-ghost, .select2-container .select2-choice, .select2-container .select2-selection, input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
    font-size: 1em;
}




.recent-blog-posts .badge {
    height: 8rem;
    width: 12rem;
    border-radius: 1rem;
    overflow: hidden;
}
.post_comments {
    display:none
}
.recent-blog-posts a {
    font-size:1.5rem;
    font-weight:600;
    line-height: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 4;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.widget>ul>li+li, ul.menu>li+li {
    border-top: none;
}

.blog-archive.has-sidebar .post-item .from_the_blog_excerpt {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.blog-archive.has-sidebar .page-numbers {
   text-align: left;
}


.sub-categories {
    
}

.sub-category-list {
    list-style:none;
}

.sub-category-list  li {
    margin: 0 0 1rem 1rem;
    display:inline-block;
    
}

.sub-category-list  li:first-child {
    margin-left:0;
}

.sub-category-list  li  a{
    background-color: var(--color-white);
    color: var(--color-black);
    padding: 1rem 2.4rem;
    display: inline-block;
    min-width: 12rem;
    font-size: 1.4rem;
    text-transform: uppercase;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    font-weight:500;
}


.sub-category-list  li.active  a{
    background-color: var(--fs-color-secondary);
    color: var(--color-white);

}

.sub-category-list  li:hover  a{
    background-color: var(--fs-color-primary);
    color: var(--color-white);

}


.service-item  {
    padding-bottom:4rem;
}

.service-item-layout-2 .post-title a {
    text-transform: uppercase ;
}

.service-item-layout-2 .post-title.is-xxlarge  {
    font-size: 3rem;
        text-align: center;
}
.service-item-layout-2 .post-title:hover a,
.service-item .post-title:hover a {
    text-decoration: underline ;
}


.service-item .col-inner {
    background-color:#3E3F95;
}

.service-item .box .box-text {
    position:relative;
}

.service-item .from_the_blog_excerpt  {
    display: -webkit-box;
-webkit-line-clamp: 8;
-webkit-box-orient: vertical;
overflow: hidden;
text-overflow: ellipsis;
}

.service-item .box .box-text:after {
    content:'';
    position:absolute;
    left:calc(100% - 1px );
    top:0;
    bottom:0;
    width: 25%;
    height:100%;
    background-color:#3E3F95;
    z-index:1;
    clip-path: polygon(100% 50%, 0 0, 0 100%);
}

.service-item .box .box-text:before {
    content:'';
    position:absolute;
    left: 100%;
    top:0;
    bottom:0;
    width: calc(25% + 20px);
    height:100%;
    background-color:#fff;
    z-index:1;
    clip-path: polygon(2rem 0, 100% 50%, 2rem 100%, 0 100%, 0 0);
}

/*************** END BLOG ARCHIVE PAGE ***************/

/*************** BLOG SINGLE ***************/
.blog-featured-title+#main .post-sidebar {
    padding-top: 0;
}


.wp-singular  article > .article-inner  {
    padding: 5rem 9.5rem;
    background-color: var(--color-white);
    box-shadow: 0 4px 35px rgba(0, 0, 0, 0.05);
}

.blog-featured-title {
    margin-bottom: 8rem;
}

.entry-content {
    padding:0;
}

.entry-content .form-flat input:not([type=submit]), .form-flat select, .form-flat textarea {
    background-color: #fff ;
    border-color: #D3D3D3 ;
    border-radius: 0;

}

.entry-content .searchform-wrapper {
    margin-bottom:4rem;
}

.entry-content .form-flat .button.icon {
    border-radius: 0;
    background-color: var(--color-white) !important;
    border-color: transparent !important;
    color: var(--color-black) !important;
    box-shadow: none;
}

.entry-content h1 {
    font-size:4rem;
    color: red;
    margin-bottom:4rem;
}

.blog-share{
    border-bottom: 1px solid #E6E6E6;
    padding: 2rem 0;
    margin-bottom: 3rem;
}


.capitalize {
    text-transform: capitalize;
}
.blog-share .share-icons-title {
    color:var(--color-black);
    font-size:1.8rem;
        text-decoration: underline;
}

.blog-share a {
    color:var(--fs-color-secondary);
}

.blog-share a:hover {
    color:var(--fs-color-primary);
}

#comments .comment-respond {
    background-color: transparent;
    padding: 0;
}


#comments .comment-respond #reply-title,
#comments .comment-respond .logged-in-as {
    display:none;
}


#comments .comment-respond .comment-form-comment label {
       font-size: 2rem;
    margin-bottom: 2rem;
}

#comments .comment-respond #submit {
    background-color: var(--fs-color-secondary);
    border-radius: 3rem;
}

#commentform {
    margin-bottom:0;
}
.related-post > .col > .col-inner {
    background-color: var(--color-white);
    padding: 5rem 9.5rem;
}
.related-title {
    font-size:2.4rem;
    text-decoration:underline;
    font-family:'Be Vietnam Pro', san-serif !important;
    margin-bottom:3rem;
}

.navigation-post .post-img {
    position:relative;
    display:inline-block;
}

.navigation-post .nav-previous .post-img {
        margin-right: 1.5rem;
}

.navigation-post .nav-next .post-img {
        margin-left: 1.5rem;
}

.navigation-post .post-img i {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    color: #fff;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 0, 0, 0.5);
    margin: 0 !important;
        opacity:0;
            font-size: 18px;
}


.navigation-post .post-img:hover i {
    opacity:1;
}
/*************** END BLOG SINGLE ***************/



/*************** SERVICE PAGE ***************/
.custom-related-services .related-services-inner > .col > .col-inner{
    padding: 5rem 9.5rem;
    background-color: var(--color-white);
}


.custom-related-services {
    margin-top:3rem;
}

.archive-service-list {
    counter-reset: service-count;
}

.archive-service-list .service-item .box-image {
    position:relative;
}

.archive-service-list .service-item .box-image:before {
    counter-increment: service-count;
    content: "0" counter(service-count);
    width: 6rem;
    height: 6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--fs-color-secondary);
    border-radius: 50%;
    position: absolute;
    bottom: 1.5rem;
    right: 1.5rem;
    z-index: 100;
    font-size: 2.25em;
    font-family: 'UTM Alter Gothic', san-serif;
}
/*************** END SERVICE PAGE ***************/
@media only screen and (min-width: 1900px) {
    
    .service-row-slider.row-full-width .flickity-button.previous  {
        left: -1.2rem;
    }
     .service-row-slider.row-full-width .flickity-button.next  {
        right: -1.2rem;
    }
}


@media only screen and (max-width: 1440px) {
    #header .header-main .nav > li > a {
        padding: 0.8rem 1.6rem;
    }
    
    #logo a {
        font-size: 2rem
    }
    
    #header #logo {
        width: 300px;
    }
    
}

@media only screen and (max-width: 1200px) {
    .about-section .about-row {
        flex-wrap: wrap;
        padding-bottom: 0rem;
    }
    .about-section .about-row > .col {
        flex-basis: 100% !important;
        max-width:  100% !important;
    }
    
    .about-section .about-row > .col:last-child > .col-inner {
        z-index: 1;
        padding-top: 20rem !important;
    }
    
    .about-section .about-row > .col:last-child:after {
        content: unset;
    }
    #header #top-bar {
        display:none;
    }
    
    #header .show-for-medium  {
        display: flex !important
    }
    
    #header .hide-for-medium  {
        display: none !important
    }
    .header-main .header-button > .button:not(.is-outline) {
        background-color: var(--fs-color-primary) !important;
        font-size:1em;
    }

    .box .post-title.is-larger {
        font-size:2.2rem;
    }
    
    
    .box .post-title.is-xlarge {
        font-size:2.4rem;
    }


    .box .post-title.is-xxlarge {
        font-size: 2.8rem;
    }
    
    .service-item .from_the_blog_excerpt  {
        -webkit-line-clamp: 4;
    }
}


@media only screen and (min-width: 850px) {

    #footer .footer-main-section .main-row > .col > .col-inner {
        padding: 8rem 2.4rem 7rem;
    }
    #footer .footer-main-section .main-row > .col:nth-child(1) {
        flex-basis: 35%;
        max-width: 35%;
    }
    #footer .footer-main-section .main-row > .col:nth-child(2) {
        flex-basis: 21%;
        max-width: 21%;
    }
    
    
    #footer .footer-main-section .main-row > .col:nth-child(3) {
        flex-basis: 23%;
        max-width: 23%;
    }
    
    #footer .footer-main-section .main-row > .col:nth-child(4) {
        flex-basis: 21%;
        max-width: 21%;
    }
    
    .blog-archive > .row > .col.large-3 {
        flex-basis: 29.5%;
        max-width: 29.5%;
    }
    
    .blog-archive > .row > .col.large-9 {
        flex-basis: 70.5%;
        max-width: 70.5%;
    }
    .about-section .about-row > .col:last-child {
        flex-basis: calc(41.6666666667% + 5rem);
        max-width:calc(41.6666666667% + 5rem);
        margin-left: -10rem;
    }



}

@media only screen and (max-width: 849px) {
    /*************** ADD TABLET CSS HERE  ***************/
    h2.entry-title,
    h1.page-title,
    h1.entry-title {
        font-size:3.6rem;
    }
    .select-resize-ghost,
    .select2-container .select2-choice,
    .select2-container .select2-selection,
    input[type='date'],
    input[type='email'],
    input[type='number'],
    input[type='password'],
    input[type='search'],
    input[type='tel'],
    input[type='text'],
    input[type='url'],
    select,
    textarea {
        font-size: 1.6rem;
    }
    
     .service-item .box {
        display:flex;
        flex-wrap: wrap;
    }
    
    .service-item .from_the_blog_excerpt  {
        -webkit-line-clamp: 3;
    }
    .service-item .box .box-text {
        width: 100% !important;
    }
    
    .service-item .box .box-text:before,
    .service-item .box .box-text:after {
        content:unset;
    }
    .service-item .box-vertical .box-image {
        width: 100% !important;
        order:-1;
    }

    #footer .footer-main-section .main-row > .col > .col-inner {
        
    }
    
    #header  .header-main {
        height: 70px;
    }
    
        #header #logo {
        width: 250px;
    }
    
    #header #logo img {
        max-height: 70px;
    }

    #header #logo  a{
        gap:1.2rem
    }
    
    .has-transparent + .page-title:first-of-type, .has-transparent + #main > .page-title, .has-transparent + #main > div > .page-title, #header.has-transparent + #main .page-header-wrapper:first-of-type .page-title {
        padding-top: 70px !important;
    }
    
    .blog-archive .archive-page-header {
        min-height: 31rem;
        background-color: var(--fs-color-primary);
        margin-bottom: 4rem;
        padding-top: 7rem;
    }
    
    .blog-featured-title {
        margin-bottom: 4rem;
    }
    
    .custom-related-services .related-services-inner > .col > .col-inner,
    .related-post > .col > .col-inner,
    .wp-singular article > .article-inner {
        padding: 3rem;
    }
    
    .related-title {
        font-size: 2rem
    }
    
    h2.section-title {
      font-size: 1.75em;
    }
    
    .bigger h2.section-title {
        font-size: 1.875em;
    }
    .icon-box h3 {
        font-size: 2.4rem;
    }
    
    .box .post-title.is-large {
        font-size:1.8rem;
    }
    
    .box .post-title.is-larger {
        font-size:2rem;
    }
    
    
    .box .post-title.is-xlarge {
        font-size:2.2rem;
    }


    .box .post-title.is-xxlarge {
        font-size: 2.4rem;
    }
    
    .about-section .about-row .year-text {
        width: 8rem;
        height: 8rem;
        background-color: var(--fs-color-secondary);
        color: var(--color-white);
        place-content: center;
        text-align: center;
        line-height: 1.25;
        font-size: 2rem;
        font-family: var(--heading-font) !important;
        margin-bottom: -5rem;
        z-index: 10;
        position: relative;
    }
    .about-section .about-row .team-image {
        padding-left: 3rem
    }
    
.about-section .about-row .year-text strong {
    font-size: 4rem;
    line-height: 1;
}
    .about-section .about-row .desc-text {
        background-color: var(--fs-color-primary);
        color: var(--color-white);
        font-family: var(--alt-font-2);
        font-size: 2rem;
        max-width: 100%;
        padding: 2rem;
        position: relative;
        bottom: auto;
        left: 3rem;
        z-index: 1;
        line-height: 1.05;
        top: -1.6rem;
    }
    
        .about-section .about-row > .col:last-child > .col-inner {
        z-index: 1;
        padding-top: 20rem !important;
        padding: 2rem !important;
        margin: 0 !important;
    }
    .hero-section ul {
        gap: 1rem;
        margin-bottom: 3rem;
    }
    
    .hero-section ul li {
        background: url(/wp-content/uploads/2025/05/arrow-green.png) no-repeat left center / 2rem auto;
        padding-left: 3rem;
    }
    
     .sub-category-list {
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:1rem
     }
    
    .sub-category-list li {
        margin:0;
    }
    .sub-category-list li a {
        width:100%;
    }
    
    .blog-featured-title+#main .post-sidebar {
        display:none;
    } 
}

@media only screen and (max-width: 549px) {
    /*************** ADD MOBILE ONLY CSS HERE  ***************/
    h2.entry-title,
    h1.page-title,
    h1.entry-title {
        font-size:2.8rem;
    }
      .icon-box h3 {
        font-size: 2rem;
    }

    #header #logo {
        box-shadow: none;
        width:120px;
    }
     .logo-tagline {
       display:none;
    }
    
    .history-list::before {
        max-width: calc(100% - 58px);
        left: 15px;
    }

    .history-list button.flickity-button {
        opacity: 1 !important;
        visibility: visible !important;
        z-index: 9;
    }

    .history-list button.flickity-button svg,
    .history-list button.flickity-button.flickity-prev-next-button.previous {
        display: none !important;
    }

    .history-list button.flickity-button.next::after {
        content: url(../icon/ep_top-right-s.svg);
        position: relative;
        top: 7px;
        left: 7px;
    }
    .box-push .box-text {
        background-color: #fff;
        margin: -0% 0 auto auto;
        max-width: 100%;
        padding: 15px 20px;
    }
    
    .box-vertical .box-text {
        padding:1.5rem;
    }
    
    .box .from_the_blog_excerpt {
        font-size:1.4rem;
    }
    .box .post-meta {
        font-size: 1.2rem;
    }
    
    .box .button.is-large {
        font-size: 1.4rem;
        line-height: 3.6rem;
        height: 4rem;
        min-height: 4rem;
        text-transform: initial;
        border-color: var(--fs-color-secondary);
    }
    
    .entry-content .searchform-wrapper {
         margin-bottom:2rem;
    }
    
    .entry-content h1 {
        font-size: 2.8rem;
        margin-bottom:2rem;
    }
    .rank-math-breadcrumb {
        font-size: 1.4rem;
    }
    
    .blog-share .share-icons-title {
        color: var(--color-black);
        font-size: 1.6rem;
        text-decoration: underline;
    }   
    #comments .comment-respond .comment-form-comment label {
        font-size: 1.8rem;
        margin-bottom: 2rem;
    }
    .button:not(.icon), button:not(.icon), input[type=button]:not(.icon), input[type=reset], input[type=submit] {
        font-weight: 500;
        letter-spacing: 0;
        line-height: 3.8rem;
        min-height: 4rem;
        padding: 0 2rem
    }
    
    .hero-section ul {
        grid-template-columns: 1fr;
                margin-bottom: 2rem;
    }
    
    .back-to-top.button {
        width:4rem;
        height:4rem;
        line-height:4rem;
    }

        .archive-service-list .service-item .box-image:before {
            width: 4rem;
            height: 4rem;
            right:1rem;
            bottom:1rem;
            font-size: 1.5em;
        }
        
    .sub-category-list {
        grid-template-columns:1fr;
     }
     
     
}
