
@font-face {
    font-family: "NimrodCyr";
    src: url("../fonts/NimrodCyr.eot") format("eot");
    src: url("../fonts/NimrodCyr.eot?#iefix") format("embedded-opentype"),
      url("../fonts/NimrodCyr.woff") format("woff"),
      url("../fonts/NimrodCyr.ttf") format("truetype"),
      url("../fonts/NimrodCyr.svg#NimrodCyr") format("svg");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "CircularStdMedium";
    src: url("../fonts/CircularStdMedium.eot") format("eot");
    src: url("../fonts/CircularStdMedium.eot?#iefix") format("embedded-opentype"),
      url("../fonts/CircularStdMedium.woff") format("woff"),
      url("../fonts/CircularStdMedium.ttf") format("truetype"),
      url("../fonts/CircularStdMedium.svg#CircularStdMedium") format("svg");
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: "CircularStdBook";
    src: url("../fonts/CircularStdBook.eot") format("eot");
    src: url("../fonts/CircularStdBook.eot?#iefix") format("embedded-opentype"),
      url("../fonts/CircularStdBook.woff") format("woff"),
      url("../fonts/CircularStdBook.ttf") format("truetype"),
      url("../fonts/CircularStdBook.svg#CircularStdBook") format("svg");
    font-weight: normal;
    font-style: normal;
}

:root {
    --color-white: #ffffff;
    --color-black: #000000;
    --color-DarkGray: #202020;
    --color-gray: #8F908B;
    --color-red: #DB0100;
    --font-CircularStdMedium:'CircularStdMedium',sans-serif,Arial,Helvetica;
    --font-CircularStdBook:'CircularStdBook',sans-serif,Arial,Helvetica;
    --font-NimrodCyr:'NimrodCyr',sans-serif,Arial,Helvetica;
}
body{ font-family: var(--font-CircularStdBook); font-size:16px;color: var(--color-gray);background:#fff;overflow-x:unset;position:relative;word-wrap:break-word;margin: 0; padding: 0;}
html{ margin: 0; padding: 0;}
html.lenis,html.lenis body { height: auto;}
.lenis.lenis-smooth { scroll-behavior: auto !important;}
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain;}
.lenis.lenis-stopped { overflow: clip;}
.lenis.lenis-smooth iframe { pointer-events: none;}
img{max-width:100%;height:auto;transition:.3s;-webkit-transition:.3s;-moz-transition:.3s}
a{text-decoration:none;cursor:pointer;transition:.3s;-webkit-transition:.3s;-moz-transition:.3s}
a:hover,a:focus,.btn:hover,.btn:focus,button:focus{text-decoration:none;outline:none;box-shadow:none}
button:hover,button:focus,.accordion-button:focus{outline:none;box-shadow:none}
ul,li,ol{padding:0;margin:0}
img{ width: 100%; height: auto;}
li{list-style:none}
p{ font-weight: 20px;}

.section-title { font-family: var(--font-NimrodCyr); font-size:32px; color: var(--color-DarkGray); line-height: 40px; font-weight: 400; padding-bottom: 15px; margin: 0;}
.main-heading{ font-family: var(--font-NimrodCyr); font-size: 56px; color: var(--color-DarkGray); line-height: 74px; font-weight: 400; margin: 40px 0 20px;}
.main-heading .business-text{ color: var(--color-red); font-style: italic; font-weight: 700;}
.bg-cover{ position: absolute; left: 0; top: 0; width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover;}

header{ width: 100%; padding: 10px 0; background: white; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); transition: all 0.3s ease; z-index: 1000;}
header.sticky { position: fixed; top: 0; left: 0; right: 0; animation: slideDown 0.5s ease;}
.logo { max-width: 178px;}

#banner{ padding: 60px 0;}
#banner p{ font-size: 24px; line-height: 34px;}
.stats-box { width: 100%; max-width: 415px; background-color: #FEE6E4; border-radius: 10px; padding: 30px; margin: 40px 0px 0; border: #DB010066 1px solid;}
.stat-number { font-size: 40px; color: var(--color-red); line-height: 50px; font-weight: bold; font-style: italic;}
.stat-label { font-size: 16px; color: var(--color-DarkGray); line-height: 30px;}
.form-container { background-color: #EFEFEF; padding: 30px; border-radius: 8px;}
.form-heading { font-family: var(--font-NimrodCyr); font-size: 36px; color: var(--color-DarkGray); line-height: 46px; margin: 0;}
#banner .form-container p{ font-size: 20px; color: var(--color-DarkGray);}
.submit-btn{ font-size: 20px; color: var(--color-white); line-height: 100%; font-weight: 700; width: 100%; padding: 22px 15px; margin-top: 5px; background:var(--color-red); border: none;}
.submit-btn:hover{ color: var(--color-white); background: var(--color-DarkGray);}
.form-container .control-hld{ padding-bottom: 20px; margin: 0;}
.form-container .form-control{ font-size: 18px; padding: 15px 25px; border: none; outline: none; box-shadow: none; margin-top: 2px;}
.form-container .form-control:focus{ outline: none; box-shadow: none;}
.form-container label{ font-size: 20px; color: var(--color-DarkGray); line-height: 100%; padding-left: 25px;}
#contactForm{ padding-top: 10px;}
/* Logo Scroll Section */
#brand-logos{ padding: 10px 0 30px;}
.logo-scroll { position: relative; padding: 30px 0; background: white; white-space: nowrap; overflow: hidden;}
.logo-container { display: inline-block; animation: scroll 30s linear infinite;}
.logo-container .logos { display: inline-block;}
.logo-item { display: inline-block; margin: 0 20px; padding: 15px 25px; background: white; transition: all 0.3s ease;}
.scroll-logo { height: 40px; vertical-align: middle;}
@keyframes scroll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-100%);
    }
}
.logo-scroll:hover .logo-container{ animation-play-state: paused;}

/* Services Section */
#service{ padding: 50px 0;}
#service p{ font-size: 20px; line-height: 34px;}
.service-card{ position: relative; border-radius: 15px; overflow: hidden; height: 300px; cursor: pointer; transition: transform 0.3s ease; border: 1px solid rgba(0, 0, 0, 0.1); box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);}
.service-card.large-card { height: 100%; min-height: 630px;}
.service-card.small-card{ height: 250px;}
.service-card .card-overlay{ position: absolute; left: 0; bottom: 0; width: 100%; height: 10%; background: var(--color-red); opacity: 0; transition: all 0.3s ease;}
.service-img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease;}
.service-card:hover img { transform: scale(1.1);}
.service-card:hover .card-overlay{ height: 100%; opacity: 0.4; transition: all 0.3s ease;}
.service-overlay { position: absolute; bottom: 0; left: 0; right: 0; padding: 2rem; background: linear-gradient(to top, rgba(0,0,0,0.8), transparent); color: white;}
.service-overlay h3 { font-family: var(--font-NimrodCyr); font-size: 32px; line-height: 42px; margin-bottom: 10px;}
#service .service-overlay p{ color: #F9F9F9; line-height: 24px; font-weight: 400; margin: 0;}

/* Philosophy Section */
#philosophy{ padding: 50px 0;}
#philosophy p{ font-size: 20px; line-height: 34px; font-weight: 400;}
#philosophyAccordion{ display: none;}
.accordion {
    max-width: 800px;
    margin: 2rem auto;
}

.accordion-item {
    border: 1px solid rgba(0, 0, 0, 0.1);
    margin-bottom: 1rem;
    border-radius: 8px !important;
    overflow: hidden;
}

.accordion-button {
    font-size: 1.2rem;
    font-weight: 600;
    padding: 1.5rem;
    background-color: white;
}

.accordion-button:not(.collapsed) {
    color: #dc3545;
    background-color: #fff1f1;
    box-shadow: none;
}

.accordion-button:focus {
    box-shadow: none;
    border-color: rgba(220, 53, 69, 0.2);
}

.accordion-button::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23dc3545'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.accordion-body {
    padding: 1.5rem;
    background-color: #fff;
}

.mission-list, .vision-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.mission-list li, .vision-list li {
    position: relative;
    padding-left: 1.5rem;
    margin-bottom: 1rem;
    color: #666;
}

.mission-list li:before, .vision-list li:before {
    content: "•";
    color: #dc3545;
    font-size: 1.5rem;
    position: absolute;
    left: 0;
    top: -0.5rem;
}

.vision-text {
    color: #666;
    margin-bottom: 1rem;
}

/* Times Alliances Edge */
#times-alliances{ padding: 80px 0; background: #EFEFEF;}
#times-alliances .alliances-blurb-con{ padding-top: 20px;}
.edge-features { padding-right: 30px;}
.edge-item { padding: 30px; border-radius: 15px; transition: all 0.3s ease;  cursor: pointer;}
.edge-item h3 { font-family: var(--font-NimrodCyr); font-size: 1.5rem; color: var(--color-DarkGray); margin-bottom:5px;}
.edge-item p { font-size: 20px; color: var(--color-gray); line-height: 34px; margin: 0;}
.edge-item:hover { background: var(--color-red); transform: translateY(-5px); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);}
.edge-item:hover h3, .edge-item:hover p{ color: var(--color-white);}
.alliances-blurb-con figure{ position: relative; padding-bottom: 108%; border-radius: 20px; overflow: hidden;}
.edge-image {
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 15px;
    padding: 1rem;
    background: #fff;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.edge-image:hover { border-color: #dc3545; box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12); transform: translateY(-5px);}

.edge-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px;
}

/* Legacy Section */
#Legacy{ padding: 80px 0;}
.legacy-intro p{ font-size: 20px; line-height: 34px; font-weight: 400;}
.legacy-swiper { padding: 20px 0px;}

.case-study-card { display: flex; flex-direction: column; justify-content: space-between; height: 100%; padding: 20px; background: #EFEFEF; border-radius: 10px; overflow: hidden; border: 1px solid rgba(0, 0, 0, 0.1); box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08); transition: all 0.3s ease;}
.case-study-card  figure{ margin: 0; border-radius: 10px; overflow: hidden; }
.case-study-card:hover { transform: translateY(-5px); box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);}
.case-study-img { width: 100%; object-fit: cover;}
.case-study-content { display: flex; flex-direction: column; justify-content: space-between; flex: 1; font-family: var(--font-NimrodCyr); padding: 25px 0 0px;}

.case-study-content h3 { font-size: 24px; color: var(--color-DarkGray); padding-bottom: 15px; margin: 0;}
.case-study-content p { font-family: var(--font-CircularStdBook); color:var(--color-gray); font-weight: normal; padding-bottom: 20px; margin: 0;}
.download-btn{ display: block; font-family: var(--font-CircularStdMedium); font-size: 16px; color: white; text-align: center; padding: 15px 10px;background:var(--color-red); border-radius: 8px; text-decoration: none;transition: all 0.3s ease;}
.download-btn i{ padding-left: 10px;}
.download-btn:hover { background: var(--color-DarkGray); color: white; transform: translateY(-2px);}

/* Swiper Navigation */
.swiper-button-next,.swiper-button-prev { color: #dc3545; background: white; width: 40px; height: 40px; border-radius: 50%; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);}
.swiper-button-next:after,.swiper-button-prev:after {font-size: 18px;}
#Legacy .swiper-container { display: flex;} 
#Legacy .swiper-slide { display: flex; align-items: center; justify-content: center; height: auto;}
#Legacy .swiper-pagination{ bottom: 0;}
#Legacy .swiper-pagination span{ width: 10px; height: 10px;}
#Legacy .swiper-pagination span.swiper-pagination-bullet-active{ background: var(--color-red);}


/* FAQ Section */
#faq{ padding: 80px 0;}
.faq-container { max-width: 100%; margin: 0 auto; padding:0;}
#faq .accordion{ max-width: 100%; margin: 0 auto;}
.faq-item { margin-bottom: 0px; padding: 20px 7vw; border-bottom: 1px solid #dadada; overflow: hidden;}
.faq-header { margin: 0;}
.faq-btn { position: relative; width: 100%; color: var(--color-DarkGray); font-size: 24px; text-align: left; line-height: 100%; font-weight: 900; padding: 1.5rem; background: none; border: none; transition: all 0.3s ease;}
.faq-body { font-size: 20px; color: var(--color-gray); line-height: 30px; padding: 0 20px 20px; }
.faq-icon { position: absolute; right: 0; top: 50%; transform: translateY(-50%); width: 20px; height: 20px;}
.faq-icon::before{ content: "\f078"; display: block; font-family: "Font Awesome 5 Free"; font-size: 22px; color: var(--color-red); vertical-align: middle; font-weight: 900; transition: all 0.3s ease;}
.faq-btn:not(.collapsed) .faq-icon::before{ rotate: -180deg; transition: all 0.3s ease;}



/* Partner Section */
#partner-section { position: relative; padding-bottom: 31.25%; }
.partner-overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: flex; align-items: center; justify-content: center; }
.partner-title { font-family: var(--font-NimrodCyr); font-size: 40px; color: var(--color-white); margin-bottom: 20px;}
.partner-text { font-size: 20px; color: var(--color-white); line-height: 30px; margin-bottom: 2rem;}

.connect-btn { display: inline-block; font-size: 16px; color: var(--color-white); font-weight: 500;padding: 15px 40px; background: var(--color-red); border-radius: 8px; text-decoration: none; transition: all 0.3s ease;}
.connect-btn:hover { background: var(--color-DarkGray); transform: translateY(-3px);}

.thank-you-page #banner{ height: 70vh;}

/* Error Css */
.rh-error{font-size:.875rem;color:#dc2126;padding-top:.2rem;margin:5px 0 0;display:none}

/* Footer */
footer{ width: 100%; padding: 40px 0; background: var(--color-white);}
footer .ft-logo{ width: 100%; max-width: 178px;}

/* Responsive Styles */
@media handheld, only screen and (max-width: 1730px) {
    #banner{ padding: 40px 0;}
    p{ font-size: 20px; line-height: 28px;}
    .main-heading{ font-size: 52px; line-height: 66px;}
    .form-heading{ font-size: 32px;}
    #banner .form-container p{ font-size: 18px;}
    .form-container{ padding: 20px 30px;}
    .form-container label{ font-size: 18px;}
    .form-container .form-control{ padding: 12px 25px;}
    .form-container .submit-btn{ padding: 16px 15px;}
    #service p{ font-size: 18px; line-height: 26px;}
    .service-card{ height: 220px;}
    .service-card.small-card { height: 180px;}
    .service-overlay h3{ font-size: 24px; line-height: 30px;}
    #philosophy p{ font-size: 18px; line-height: 30px;}
    .case-study-content h3{ font-size: 22px; line-height: 28px;}
    .case-study-content p{ font-size: 18px; line-height: 26px;}
    .legacy-intro p{ font-size: 18px; line-height: 30px;}
    .faq-btn{ font-size: 22px;}
    .faq-body{ font-size: 18px; line-height: 26px;}
}
@media handheld, only screen and (max-width: 1680px) {
    .container{ max-width: 1200px;}
    .main-heading { font-size: 44px; line-height: 56px;}
    #banner p { font-size: 18px; line-height: 28px;}
    .form-container .form-control { padding: 10px 25px;}
    .form-container label { font-size: 16px;}
    .form-container .control-hld { padding-bottom: 15px;}
    .submit-btn{ font-size: 18px;}
    .form-container .submit-btn{ padding: 14px 15px;}
    #philosophy p{ font-size: 16px; line-height: 26px;}
    .edge-item{ padding: 25px;}
    .edge-item p{ font-size: 18px; line-height: 30px;}
    .alliances-blurb-con figure { padding-bottom: 86%;}
    .case-study-content p { font-size: 16px; line-height: 24px;}
    .case-study-content h3 { font-size: 20px; line-height: 26px;}
    .download-btn{ font-size: 14px; padding: 10px;}
    .faq-item{ padding: 10px 7vw;}
    .faq-btn { font-size: 20px;}
    .faq-body { font-size: 16px; line-height: 24px;}
    .partner-text{ font-size: 18px;}
    .connect-btn{ font-size: 14px; padding: 12px 32px;}
}
@media handheld, only screen and (max-width: 1440px) {
    .logo { max-width: 150px;}
    .stat-number{ font-size: 34px; line-height: 40px;}
    .form-heading { font-size: 30px;}
    footer{ padding: 20px 0;}
    footer .ft-logo { width: 100%; max-width: 150px;}
}
@media handheld, only screen and (max-width: 1200px) {
    .container{ max-width: 1024px;}
}
@media handheld, only screen and (max-width: 1023px) {
    .logo, footer .ft-logo{ margin: 0 auto;}
    .container{ padding: 0 20px;}
    .main-heading{ margin-top: 0;}
    .form-container{ margin-top: 30px;}
    .service-card.large-card, .service-card.small-card{ height: 220px; min-height: auto;}
    #times-alliances, #Legacy, #faq{ padding: 50px 0;}
    #times-alliances .alliances-blurb-con{ flex-direction: column-reverse;}
    .edge-features{ padding: 0;}
    .edge-item{ background: var(--color-white); margin-bottom: 10px; box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);}
    .edge-item:last-child{ margin: 0;}
    .edge-item:hover{  background: var(--color-white); transform: translateY(0px);}
    .edge-item:hover h3{ color: var(--color-DarkGray);}
    .edge-item:hover p{ color: var(--color-gray);}
    #partner-section{ padding-bottom: 56.25%;}
    .partner-title{ font-size: 38px;}
}


@media handheld, only screen and (max-width: 767px) {
    .logo, footer .ft-logo{ max-width: 120px;}
    .main-heading{ font-size: 32px; line-height: 40px;}
    .section-title{ font-size: 26px; line-height: 32px;}
    #banner p{ font-size: 16px; line-height: 22px;}
    .stats-box{ max-width: 100%; margin: 20px 0px 0; padding: 20px;}
    .stats-box .text-center{ flex-direction: row;}
    .stats-box .text-center .col-md-6{ width:50%;}
    .stat-number { font-size: 30px; line-height: 26px;}
    .form-heading { font-size: 26px;}
    .form-container { padding: 20px;}
    #banner .form-container p { font-size: 16px;}
    #service p { font-size: 16px; line-height: 22px;}
    .service-card,.service-card.large-card, .service-card.small-card { height: 150px;}
    .service-overlay h3 { font-size: 22px; line-height: 26px; margin-bottom: 5px;}
    #service .service-overlay p{ line-height: 22px;}
    #philosophy p { font-size: 16px; line-height: 24px;}
    .edge-item { padding: 20px;}
    .edge-item h3{ font-size: 20px;}
    .edge-item p { font-size: 16px; line-height: 24px;}
    .legacy-intro p { font-size: 16px; line-height: 22px;}
    .legacy-swiper{ padding: 20px 0px 35px;}
    .faq-item { padding: 10px 0px;}
    .faq-btn{ font-size: 18px; line-height: 22px; padding: 15px 30px 15px 20px;}
    .faq-icon::before{ font-size: 20px;}
    .faq-body{ padding: 0 20px 10px;}
    #partner-section { padding-bottom: 90%;}
    .partner-title { font-size: 26px;}
    .partner-text { font-size: 16px; line-height: 24px;}
    .swiper-button-next, .swiper-button-prev{ display: none;}
}
@media handheld, only screen and (max-width: 480px){
    .main-heading { font-size: 26px; line-height: 35px;}
    .stat-number { font-size: 26px; line-height: 26px;}
    .stats-box{ padding: 15px;}
}

/* Add these styles for the sticky header */


/* Add animation for smooth appearance */
@keyframes slideDown {
    from {
        transform: translateY(-100%);
    }
    to {
        transform: translateY(0);
    }
}

/* Add padding to body when header becomes sticky */
body.has-sticky-header {
    padding-top: 84px; /* Adjust this value based on your header height */
} 