/**
 * Theme Name:     GeneratePress Child
 * Author:         Tom Usborne
 * Template:       generatepress
 * Text Domain:	   generatepress-child
 * Description:    GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
 */

/* tubor website css */
.custom-quote-text a {
    color: #e80941;
    font-weight: bold;
}

/* end */





.custom-btn a { 
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* Hover Gradient Border */
.custom-icon-box {
    border: 1px solid transparent;
    background: 
        linear-gradient(white, white) padding-box, 
        linear-gradient(to right, #DB6230, #560591) border-box;
}
.works-icon-box {
    border: 1px solid transparent;
    background: 
        linear-gradient(white, white) padding-box, 
        linear-gradient(to right, #DB6230, #560591) border-box;
}

.custom-box-service {
    height: 172px;
    
    /* Vertical Center */
    display: flex;
    align-items: center !important;
    justify-content: center !important; /* optional (for horizontal center) */

    /* Gradient Border */
    border: 1px solid transparent;
    background: 
        linear-gradient(#ffffff, #ffffff) padding-box,
        linear-gradient(to left, #F24B04, #560591) border-box;
}

/* ecosystems section scroll */

/* ==================== BASE ==================== */
.custom-scroll-boxes,
.custom-scroll-boxes2,
.custom-scroll-boxes3 {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 600px;                    /* Adjust height if needed */
}

/* Scroll track common styles */
.custom-scroll-boxes .scroll-track,
.custom-scroll-boxes2 .scroll-track,
.custom-scroll-boxes3 .scroll-track {
    display: flex;
    flex-direction: column;
    will-change: transform;
}

/* 1. custom-scroll-boxes → Top to Bottom (Downward) */
.custom-scroll-boxes .scroll-track {
    animation: scrollDown 35s linear infinite;
}
.custom-scroll-boxes:hover .scroll-track {
    animation-play-state: paused;
}

/* 2. custom-scroll-boxes2 → Bottom to Top (Upward) */
.custom-scroll-boxes2 .scroll-track {
    animation: scrollUp 30s linear infinite;
}
.custom-scroll-boxes2:hover .scroll-track {
    animation-play-state: paused;
}

/* 3. custom-scroll-boxes3 → Top to Bottom (Downward) */
.custom-scroll-boxes3 .scroll-track {
    animation: scrollDown 42s linear infinite;
}
.custom-scroll-boxes3:hover .scroll-track {
    animation-play-state: paused;
}

/* ==================== KEYFRAMES ==================== */
@keyframes scrollDown {
    from { transform: translateY(0); }
    to   { transform: translateY(-50%); }
}

@keyframes scrollUp {
    from { transform: translateY(-50%); }   /* Start from bottom */
    to   { transform: translateY(0); }      /* Move up to top */
}


/* end */

/* Remove border from last tab */
.custom-tab .e-n-tabs-heading .e-n-tab-title:last-child {
    border-right: none;
	border-width: 0px !important;
}

@media (max-width:1024px) {
	.custom-btn a { 
    height: 42px;
}
}
@media (max-width:767px){
	.top-content-sec {
		position:unset !important;
		min-height:auto !important;
	}
	.custom-top-img-sec {
    min-height: auto !important;
}

}
/* ================= MOBILE FIX ================= */
@media (max-width: 767px) {

    /* Parent wrapper (IMPORTANT) */
    .ecosystems-row {   /*  replace with your actual parent section/column class */
        display: flex !important;
        flex-wrap: wrap !important;
    }

    /* Each scroll box */
    .custom-scroll-boxes,
    .custom-scroll-boxes2,
    .custom-scroll-boxes3 {
        width: 48% !important;
        height: 500px !important; /* optional smaller height for mobile */
    }
/* prevent overflow cutting */

	.scroll-track {
    width: 100%;
}
}



/* Form Layout */
.custom-form-7 .row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}

.custom-form-7 .col-md-6,
.custom-form-7 .col-12 {
    padding: 0 10px;
    margin-bottom: 20px;
}

.custom-form-7 .col-md-6 {
    width: 50%;
}

.custom-form-7 .col-12 {
    width: 100%;
}

/* Mobile Layout */
@media (max-width: 767px) {
    .custom-form-7 .col-md-6,
    .custom-form-7 .col-12 {
        width: 100%;
    }
}

/* Inputs, Selects & Textarea */
.custom-form-7 input:not([type="submit"]),
.custom-form-7 select,
.custom-form-7 textarea {
    width: 100%;
    height: 56px;
    padding: 0 18px;
    border: 1px solid #dcdcdc;
    border-radius: 8px;
    background: #fff;
    font-size: 15px;
    transition: all 0.3s ease;
    box-sizing: border-box;
}

.custom-form-7 textarea {
    height: 160px;
    padding: 15px 18px;
    resize: vertical;
}

/* Focus State */
.custom-form-7 input:not([type="submit"]):focus,
.custom-form-7 select:focus,
.custom-form-7 textarea:focus {
    outline: none;
    border-color: #E80941;
    box-shadow: 0 0 0 3px rgba(232, 9, 65, 0.12);
}

/* Placeholder */
.custom-form-7 ::placeholder {
    color: #888;
    opacity: 1;
}

/* Remove CF7 paragraph spacing */
.custom-form-7 p {
    margin: 0;
}

/* Submit Button */
.custom-form-7 .wpcf7-submit {
    background: #E80941 !important;
    color: #fff !important;
    border: none;
    border-radius: 8px;
    padding: 15px 40px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    min-width: 180px;
}

.custom-form-7 .wpcf7-submit:hover {
    background: #c90737 !important;
    transform: translateY(-2px);
}

.custom-form-7 .wpcf7-submit:active {
    transform: translateY(0);
}

/* Validation Messages */
.custom-form-7 .wpcf7-not-valid-tip {
    margin-top: 5px;
    font-size: 13px;
}

.custom-form-7 .wpcf7-response-output {
    margin-top: 20px !important;
    border-radius: 8px;
    padding: 12px 15px !important;
}

/* Hide textarea field */
.custom-service-form textarea,
.custom-service-form .wpcf7-form-control-wrap[data-name="your-message"] {
    display: none;
}