/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/


/* MENU STYLING */

@media only screen and (max-width: 850px) {
    li.tab-mobile-btn a {
    background-color: #ef3c43;
    color: #fff !important;
    padding: 20px;
}

}


/* FONTS & Buttons */

h1 {
    font-size: 45px;
    line-height: 55px !important;
    font-weight: 400;
}

h2 {
    line-height: 36px !important;
    font-weight: 400;
}

.subheading .elementor-heading-title.elementor-size-default {
    color: #878787 !important;
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
}

a.elementor-button:hover {
    font-weight: 500;
}


/*Fill box*/
.my-btn .elementor-button::before{
    content:'';
    position: absolute;
    background: #1E2457; /*<-- Change fill color here*/
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transform: scaleX(0);
    transform-origin: right; /*<-- Change fill out direction*/
    transition: transform .4s ease; /*<-- Change fill speed */
}

/*Hover class*/
.my-btn .elementor-button:hover::before{
    transform: scaleX(1);
    transform-origin: left; /*<-- Change fill in direction*/

}

/*Button text*/
.my-btn .elementor-button-text{
    z-index: 1;
}

/*Hover Icon*/
.my-btn:hover .elementor-button-icon {
    color: white !important;
    z-index: 1;
    transition: color .5s ease
    width: 20px;
    fill: #fff !important;
    border-radius: 5px !important;
}


/*Icon size */
.my-btn .elementor-button-icon{
    transform: scale(1); /*<-- Change icon size*/
    padding-left: 5px;
    border-radius: 5px !important;
}


.elementor-widget-heading a:hover {
    color: #EF3C43 !important;
}


@media only screen and (max-width: 850px) {
    .banner-subheading {
    margin-bottom: 10px !important;
}
}


@media only screen and (max-width: 450px) {
    h1 {
    font-size: 40px;
    line-height: 45px !important;
}
}


/* HOME PAGE STYLING */

a.elementor-button .elementor-slide-button::before {
    content: url(https://trpfs.co.za/wp-content/uploads/2023/09/slider-arrow-2-1.svg);
    margin-right: 20px;
    width: 30px;
}

.elementor-button.elementor-slide-button.elementor-size-xs {
    align-items: center !important;
    display: flex !important;
    align-content: center;
    padding: 0px !important;
}

.swiper-slide-contents {
    background-color: #1E2457;
    padding: 25px 40px;
}

.elementor-swiper-button {
    transform: translateY(-100%) !important;
    background-color: #1E2457;
}

.elementor-swiper-button-prev {
    padding: 20px 40px 20px 20px !important;
    margin-right: 0px !important;
    float: right !important;
    display: inline !important;
    position: relative !important;
    margin-right: 10% !important;
}

.elementor-swiper-button-next {
    padding: 20px 20px 20px 40px !important;
    margin-right: 0px !important;
    float: right !important;
    display: inline !important;
    position: absolute !important;
    top: 700px !important;
    right: 0% !important;
}

i.eicon-chevron-left, i.eicon-chevron-right {
    display: none;
}


.elementor-swiper-button-prev::before {
    content: url(https://trpfs.co.za/wp-content/uploads/2023/09/slider-arrow-1.svg);
}

.elementor-swiper-button-next::before {
    content: url(https://trpfs.co.za/wp-content/uploads/2023/09/slider-arrow-2-1.svg);
}

.elementor-swiper-button.elementor-swiper-button-prev:hover {
    background-color: #EF3C43;
}

.elementor-swiper-button.elementor-swiper-button-next:hover {
    background-color: #EF3C43;
}

div#clickable:hover {
    cursor: pointer;
    background: #1E2457;
    border-radius: 50%;
    border: none;
    -webkit-transition: background-color 2s;
}

div#clickable:hover span.elementor-heading-title {
color: #fff;
border-radius: 50%;
}

div#clickable:hover .fa-long-arrow-alt-right:before {
    color: #fff;
}

.btn:before {
    content: url('https://trpfs.co.za/wp-content/uploads/2023/09/slider-arrow-2-1.svg');
    font-size: 20px;    
    width: 30px;
    height: 30px;
}


/*.btn1:hover svg {
    left: 50%;
    transform: translateX(-50%);
}

.btn1 svg {
    position: absolute;
    left: -45px;
    transition: 1s;
}

.btn1:hover .elementor-button-text {
    transform: translateX(130%) !important;
}

.btn1 .elementor-button-text {
    transition: 1s !important;
}

.btn1 {
    overflow: hidden;
}*/


/* SERVICES PAGE STYLING */

span.elementor-button-icon.elementor-align-icon-left {
    font-size: 40px;
}

.banner-btn span.elementor-button-text {
    margin-top: 5px !important;
    margin-left: 10px;
    letter-spacing: 2px;
    font-size: 12px;
}

.arrow-btn span.elementor-button-text {
    margin-top: 2px;
}

.banner-btn span.elementor-button-icon.elementor-align-icon-left {
    font-size: 55px;
}

.service-blocks .elementor-column:nth-child(2n-1) {
    background-color: #eff2f6;
}

.service-blocks .elementor-column:nth-child(2n-0) {
    background-color: #dce4ef;
}

span.page-numbers.prev, a.page-numbers.next {
    border: 1px solid #f2f4f6;
    padding: 10px 15px;
}

.page-numbers.prev:hover, a.page-numbers.next:hover, span.page-numbers.prev:hover {
    border: 1px solid #f2f4f6;
    padding: 10px 15px;
}

a.page-numbers {
    border: 1px solid #f2f4f6;
    padding: 10px 15px;
}

span.page-numbers.current, a.page-numbers:hover {
    background-color: #ef3c43;
    padding: 10px 15px;
}




/* POSTS STYLING */

a.elementor-post__read-more {
    font-size: 14px !important;
    line-height: 18px;
    letter-spacing: 2px;
    text-transform: uppercase;
    border: 2px solid #ef3c43;
    padding: 10px 20px;
    border-radius: 5px;
}



/* FAQ PAGE STYLING */


.faq-heading h2 {
    font-size: 20px !important;
    color: #ef3c43 !important;
    text-decoration: underline;
    font-weight: 400;
    margin-bottom: 15px;
}

.elementor-toggle .elementor-tab-title.elementor-active {
    border-bottom: none;
    text-decoration: underline;
}



/* CONTACT PAGE STYLING */


.contact-details .elementor-icon-box-title {
    font-size: 20px !important;
    padding-bottom: 5px;
}

span.head-underline {
    text-decoration: underline;
}

span.bold-text {
    font-weight: 600;
}



/* GRAVITY FORMS STYLING */

.gform_heading, span.gfield_required {
    display: none !important;
}

label.gfield_label.gform-field-label {
    font-family: 'Poppins';
    font-weight: 400 !important;
    font-size: 14px !important;
}

.ginput_container {
    margin-bottom: 15px;
}

.gfield input, .gfield textarea, .gfield select {
    background-color: #eff2f6 !important;
    border: none;
    outline: none;
    padding: 10px 15px !important;
}

.gfield input::placeholder, .gfield textarea::placeholder, .gfield select::placeholder {
    font-size: 14px !important;
    color: #878787;
}

input#gform_submit_button_1, input#gform_submit_button_2 {
    font-family: 'Poppins';
    font-size: 15px !important;
    letter-spacing: 2px;
    border: none;
}


input#gform_submit_button_1:hover, input#gform_submit_button_2:hover {
    border: none !important;
}



/* MEDIA QUERIES */


@media only screen and (max-width: 850px) {
    .elementor-swiper-button-prev {
    padding: 15px 30px 15px 15px !important;
    margin-right: 0px !important;
    float: right !important;
    display: inline !important;
    position: relative !important;
    margin-right: 16% !important;
}
}

.tablet-slider .elementor-swiper-button-next {
    padding: 15px 15px 15px 30px !important;
    margin-right: 0px !important;
    float: right !important;
    display: inline !important;
    position: absolute !important;
    top: 600px !important;
    right: 0% !important;
}
}

@media only screen and (max-width: 550px) {
    .tab-columns .elementor-column-gap-extended>.elementor-column>.elementor-element-populated {
    padding: 0px 10px !important;
}

   .elementor-swiper-button-prev {
    padding: 15px 30px 15px 15px !important;
    margin-right: 0px !important;
    float: right !important;
    display: inline !important;
    position: relative !important;
    margin-right: 34% !important;
}

}

