/* =========================================
   PREMIUM TWO COLUMN BOX DESIGN
========================================= */

.icon-box-new-sec {
    padding: 100px 0;
    background:
        radial-gradient(circle at top left, rgba(222,45,38,0.05), transparent 30%),
        radial-gradient(circle at bottom right, rgba(255,115,108,0.05), transparent 30%),
        linear-gradient(to bottom, #fff, #fff7f6);
}

/* =========================================
   ROW LAYOUT
========================================= */
.icon-box-new-sec .row.g-4 {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;

    margin-left: -15px;
    margin-right: -15px;
}

/* =========================================
   SAME WIDTH COLUMNS
========================================= */
.icon-box-new-sec .icon-box-section {
    width: 50%;
    max-width: 50%;

    padding: 15px;

    display: flex;
}

/* =========================================
   SAME HEIGHT CARDS
========================================= */
.icon-box-new-sec .gt-about-content {
    position: relative;
    overflow: hidden;

    width: 100%;
    height: 100%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    min-height: 480px;

    padding: 50px 45px;

    border-radius: 30px;

    background: rgba(255,255,255,0.95);

    backdrop-filter: blur(10px);

    border: 1px solid rgba(255,255,255,0.4);

    transition: all 0.45s ease;

    box-shadow:
        0 15px 40px rgba(0,0,0,0.06),
        0 5px 20px rgba(222,45,38,0.08);
}

/* =========================================
   ANIMATED TOP BORDER
========================================= */
.icon-box-new-sec .gt-about-content::before {
    content: "";

    position: absolute;

    top: 0;
    left: -100%;

    width: 100%;
    height: 5px;

    background: linear-gradient(
        90deg,
        #de2d26,
        #ff736c,
        #ff9d98
    );

    transition: 0.7s ease;
}

/* Hover Animation */
.icon-box-new-sec .gt-about-content:hover::before {
    left: 0;
}

/* =========================================
   GLOW EFFECT
========================================= */
.icon-box-new-sec .gt-about-content::after {
    content: "";

    position: absolute;

    top: -100px;
    right: -100px;

    width: 220px;
    height: 220px;

    background: rgba(222,45,38,0.05);

    border-radius: 50%;

    transition: 0.5s ease;
}

/* Hover */
.icon-box-new-sec .gt-about-content:hover::after {
    transform: scale(1.2);
}

/* =========================================
   CARD HOVER EFFECT
========================================= */
.icon-box-new-sec .gt-about-content:hover {
    transform: translateY(-12px);

    box-shadow:
        0 25px 60px rgba(222,45,38,0.16),
        0 10px 30px rgba(0,0,0,0.08);

    border-color: rgba(222,45,38,0.2);
}

/* =========================================
   HEADING
========================================= */
.icon-box-new-sec h2 {
    position: relative;
    z-index: 2;

    font-size: 34px;
    font-weight: 700;

    color: #111;

    margin-bottom: 35px;

    line-height: 1.3;
}

/* Underline */
.icon-box-new-sec h2::after {
    content: "";

    display: block;

    width: 80px;
    height: 5px;

    margin-top: 15px;

    border-radius: 50px;

    background: linear-gradient(90deg, #de2d26, #ff736c);
}

/* =========================================
   BUTTON DESIGN
========================================= */
.icon-box-new-sec .gt-theme-btn,
.icon-box-new-sec .wpcf7-submit {
    position: relative;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    overflow: hidden;

    width: 100%;

    padding: 18px 34px;

    border: none;

    border-radius: 16px;

    background: linear-gradient(135deg, #de2d26, #ff5e57);

    color: #fff !important;

    font-size: 15px;
    font-weight: 700;

    letter-spacing: 0.5px;

    text-decoration: none;

    transition: all 0.35s ease;

    box-shadow: 0 12px 30px rgba(222,45,38,0.25);

    z-index: 2;
}

/* Shine Animation */
.icon-box-new-sec .gt-theme-btn::before,
.icon-box-new-sec .wpcf7-submit::before {
    content: "";

    position: absolute;

    top: 0;
    left: -120%;

    width: 100%;
    height: 100%;

    background: rgba(255,255,255,0.18);

    transform: skewX(-25deg);

    transition: 0.7s;
}

/* Hover Shine */
.icon-box-new-sec .gt-theme-btn:hover::before,
.icon-box-new-sec .wpcf7-submit:hover::before {
    left: 120%;
}

/* Hover */
.icon-box-new-sec .gt-theme-btn:hover,
.icon-box-new-sec .wpcf7-submit:hover {
    transform: translateY(-4px);

    box-shadow: 0 18px 40px rgba(222,45,38,0.35);
}

/* =========================================
   FORM BOX
========================================= */
.icon-box-new-sec .contact-page__input-box {
    position: relative;
    z-index: 2;

    background: linear-gradient(to bottom right, #fff9f8, #fff);

    padding: 32px;

    border-radius: 22px;

    border: 2px dashed rgba(222,45,38,0.22);

    margin-bottom: 30px;

    transition: all 0.35s ease;
}

/* Hover */
.icon-box-new-sec .contact-page__input-box:hover {
    border-color: #de2d26;

    background: #fff;

    box-shadow: 0 10px 25px rgba(222,45,38,0.08);
}

/* =========================================
   LABEL
========================================= */
.icon-box-new-sec label {
    display: block;

    margin-bottom: 15px;

    color: #de2d26;

    font-size: 17px;
    font-weight: 700;
}

/* =========================================
   FILE INPUT
========================================= */
.icon-box-new-sec .wpcf7-file {
    width: 100%;

    padding: 18px;

    border-radius: 14px;

    border: 2px dashed #de2d26;

    background: #fff;

    cursor: pointer;

    transition: all 0.3s ease;
}

/* Hover */
.icon-box-new-sec .wpcf7-file:hover {
    background: #fff5f4;

    box-shadow: 0 10px 20px rgba(222,45,38,0.08);
}

/* Upload Button */
.icon-box-new-sec .wpcf7-file::file-selector-button {
    background: linear-gradient(135deg, #de2d26, #ff5e57);

    color: #fff;

    border: none;

    padding: 12px 22px;

    margin-right: 15px;

    border-radius: 12px;

    cursor: pointer;

    font-weight: 600;

    transition: all 0.3s ease;
}

/* Hover */
.icon-box-new-sec .wpcf7-file::file-selector-button:hover {
    transform: translateY(-2px);
}

/* =========================================
   REMOVE EXTRA SPACING
========================================= */
.icon-box-new-sec p {
    margin-bottom: 0;
}
input.wpcf7-form-control.wpcf7-file.wpcf7-validates-as-required {
    color: #000;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.gt-theme-btn {
    background: #de2d26;
    color: #fff;
}
/* =========================================
   MOBILE RESPONSIVE
========================================= */
@media (max-width: 991px) {

    .icon-box-new-sec {
        padding: 70px 0;
    }

    .icon-box-new-sec .icon-box-section {
        width: 100%;
        max-width: 100%;
    }

    .icon-box-new-sec .gt-about-content {
        min-height: auto;

        padding: 35px 25px;
    }

    .icon-box-new-sec h2 {
        font-size: 28px;
    }
}
select {
    outline: none;
    border: none;
    width: 100%;
    background-color: var(--gt-white);
    color: var(--gt-text);
    line-height: 1;
    padding: 21px 20px;
    margin-bottom:30px
}


.pagination-wrapper {
    display: flex;
    gap: 8px;
    justify-content: center;
    align-items: center;
    margin: 20px 0;
}

.pagination-wrapper .page-numbers {
    display: inline-block;
    padding: 10px 16px;
    border: 2px solid #d4231e;
    color: #d4231e;
    text-decoration: none;
    font-weight: 500;
    border-radius: 6px;
    transition: all 0.3s ease;
}

/* Hover effect */
.pagination-wrapper .page-numbers:hover {
    background-color: #d4231e;
    color: #fff;
}

/* Active (current page) */
.pagination-wrapper .current {
    background-color: #d4231e;
    color: #fff;
    border-color: #d4231e;
    cursor: default;
}

/* Next button slightly different */
.pagination-wrapper .next {
    font-weight: 600;
    padding: 10px 18px;
}
/* Success message (green) */
.wpcf7 form.sent .wpcf7-response-output {
    background-color: #46b450;
    color: #155724;
    border: 1px solid #46b450;
	text-align:center;
}

/* Error / failed message (red) */
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
    background-color: #c62523;
    color: #721c24;
   text-align:center;

}


.wpcf7-response-output {
font-size: 12px;
margin: 0px !important;
}
.wpcf7-form p {margin:0px;}
.wpcf7-response-output {
    color: #fff !important;
    background-color: #f24224;
    border: 0px !important;
	margin:20px 0px !important;
}
.video-section {
    max-width: 900px;      /* controls video width */
    margin: 60px auto;     /* centers horizontally + top/bottom spacing */
    padding: 0 20px;       /* space from left & right */
}

.video-section iframe {
    width: 100%;
    height: 500px;         /* you can adjust or make responsive below */
    display: block;
}
.gt-gallery-image {
    position: relative;
    overflow: hidden;
}

.gt-gallery-image img {
    width: 100%;
    height: 300px; /* set your fixed height */
    object-fit: cover; /* keeps image nicely cropped */
    display: block;
}
.dark{background:#f6f6f6;}
.single-services .gt-about-image {
    margin: 0px !important;
}
.gt-training-thumb {
    width: 300px;
    height: 300px;
    overflow: hidden; /* ensures content stays inside */
}

.gt-training-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* keeps full image visible */
    display: block; /* removes extra space below image */
}
input#is-search-input-422 {
    width: 100%;
    height: 66px;
    border: none;
    outline: none;
    padding-left: 20px;
    padding-right: 70px; /* space for icon */
    background-color: var(--gt-white);
    font-size: 16px;
    font-weight: 400;
    color: var(--gt-text);
    transition: all 500ms ease;
}

span.is-search-icon {
    width: 66px;
    height: 66px;
    display: flex;
    justify-content: center;
    align-items: center; /* vertical center */
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%); /* 🔥 perfect vertical centering */
    font-size: 20px;
    color: var(--gt-white);
    background-color: var(--gt-theme);
    border: none;
    cursor: pointer;
}

span.is-search-icon svg {
    color: #fff !important;
    margin: 20px 0px;
    font-size: 20px !important;
}
.fixed-video {
    width: 100%;
    height: 450px; /* adjust as needed */
    object-fit: cover; /* keeps it nicely cropped */
}
.single-services .gt-details-image img {
    width: unset !important;
}
.hero-btn-group {
    justify-content: center;
}

.hero-videos .gt-hero-content .hero-desc {
    margin: 0 auto;
    visibility: visible;
    animation-delay: 0.4s;
    animation-name: fadeInUp;
    color: var(--gt-white);
    font-size: 20px;
    margin-bottom: 20px;
    width: 60%;
    text-align: center;
	text-shadow: 1px 2px 2px #000000;}
@media (max-width: 1280px) {
	.fixed-video {
    width: 100%;
    height: 300px;
}
}
@media (max-width: 1024px) {
	.fixed-video {
    width: 100%;
    height: 300px;
}
}
@media (max-width: 767px) {
	.fixed-video {
    width: 100%;
    height: 300px;
    object-fit: cover;
}
	.ti-widget.ti-goog .ti-col-1 .ti-reviews-container, .ti-widget.ti-goog .ti-col-1 .ti-footer {
		   margin: 12px 0px !important;
	}
	.gt-training-thumb {
		height:auto;
	}
	.hero-videos .gt-hero-content .hero-desc {
		width:100%;
		color:#000;
		text-shadow:none;
		 margin: 10px auto;
	}	
}
.call-now-btn {
    position: fixed;
    bottom: 20px;
    left: 20px;
    background: #de2d26;
    color: #fff;
    padding: 14px 20px;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .2);
    z-index: 9999;
    display: flex;
    align-items: center;
    gap: 8px;
}