.octane-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.octane-background img {
    object-fit: cover;
    width: 100%;
    height: 100%
}

.octane-content {
    position: relative;
    height: 100%
}

.octane-position {
    position: relative
}

#hero {
    position: relative;
    z-index: 3
}

.hero-gradient {
    background: linear-gradient(180deg,rgba(11,101,177,.8) 34%,rgba(70,178,223,.8) 100%);
    padding: 150px 0 250px;
    position: relative
}

.hero-flex {
    display: flex;
    gap: 100px;
    align-items: center
}

.hero-flex::before,.hero-flex::after {
    content: none
}

.hero-text {
    width: 60%
}

.hero-form {
    width: 40%
}

.hero-title {
    color: var(--white);
    font-size: 64px;
    font-weight: 700;
    line-height: 1;
    text-wrap: pretty
}

.hero-text p {
    color: var(--white);
    font-size: 24px;
    line-height: 1
}

.hero-btns {
    display: flex;
    gap: 20px;
    flex-wrap: wrap
}

.arch-link-white {
    background: var(--white);
    padding: 10px 20px;
    border-radius: var(--radius);
    font-weight: 500;
    border: 3px solid var(--white);
    color: var(--style-main)
}

.arch-link-white:hover {
    color: var(--style-main);
    box-shadow: var(--shadow);
    transform: scale(.95)
}

.arch-link-trans {
    background: transparent;
    padding: 10px 20px;
    border-radius: var(--radius);
    font-weight: 500;
    border: 3px solid var(--white);
    color: var(--white)
}

.arch-link-trans:hover {
    box-shadow: var(--shadow);
    color: var(--white);
    transform: scale(.95)
}

.hero-form {
    background: var(--white);
    padding: 0px 10px;
    border-radius: var(--radius);
    border: 5px solid var(--style-main);
    box-shadow: 0 0 10px 10px rgba(0,0,0,.25)
}

.hero-form iframe {
    width: 100%;
    border: 0;
}

.hero-form-title {
    text-align: center;
    font-size: 24px;
    color: #000
}

.hero-form p {
    font-size: 16px;
    text-align: center
}

.hero-form input {
    background: var(--style-tri);
    border-radius: var(--radius)
}

.hero-form .button {
    background: var(--style-main);
    color: var(--white);
    padding: 10px 20px;
    border-radius: var(--radius);
    font-weight: 700
}

.hero-form .button:hover {
    background: var(--style-sec)
}

.info-cards {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-top: -150px;
    position: relative;
    z-index: 5
}

.info-card {
    width: 25%;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    padding: 45px;
    border-radius: var(--radius);
    border: 3px solid var(--style-sec);
    box-shadow: var(--shadow);
    background: var(--white);
    transition: transform .4s
}

.info-card:hover {
    transform: scale(.95);
    background: var(--gradient);
    border: 3px solid var(--white)
}

.info-card:hover .info-card-title {
    color: var(--white)
}

.info-card:hover svg {
    filter: brightness(0) invert(1)
}

.info-card image,.info-card svg {
    height: 100px;
    width: auto;
    margin-bottom: 20px
}

.info-card-title {
    font-size: 24px;
    font-weight: 700;
    color: var(--style-main);
    margin: 0
}

.dots-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .5;
    background-image: url(/wp-content/uploads/2024/09/BackgroundTexture3.webp);
    background-attachment: fixed;
    background-position: center;
    background-size: 100%;
    pointer-events: none
}

.compare-content {
    padding: 100px 0
}

.arch-title {
    color: var(--style-main);
    font-weight: 900;
    text-align: center;
    text-transform: uppercase;
    font-size: 48px;
    line-height: 1.1;
    text-wrap: balance
}

#compare .arch-subtitle {
    max-width: 800px;
    margin-inline:auto}

.arch-subtitle {
    text-align: center;
    color: var(--style-quad);
    text-transform: uppercase;
    font-weight: 700;
    font-size: 32px;
    text-wrap: balance
}

.compare-cards {
    display: flex;
    gap: 30px;
    margin-top: 30px
}

.compare-card {
    width: 50%;
    padding: 40px 60px;
    background: var(--white);
    border-radius: var(--radius);
    box-shadow: var(--shadow)
}

.others-title {
    font-size: 32px;
    text-align: center;
    font-weight: 500;
    color: v var(--black);
    aspect-ratio: 10 / 3;
    max-width: 360px;
    margin-inline:auto;display: flex;
    justify-content: center;
    align-items: center
}

.compare-us img {
    max-width: 360px;
    width: 100%;
    margin-inline:auto;display: block;
    margin-bottom: 20px
}

.compare-card li {
    font-size: 20px;
    margin-bottom: 10px;
    display: flex;
    gap: 10px;
    color: #000
}

.compare-card li::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900
}

.compare-others li::before {
    content: "\f057";
    color: #F61212
}

.compare-us li::before {
    content: "\f058";
    color: var(--style-main)
}

.pad {
    padding: 120px 0
}

#stories {
    background: var(--gradient)
}

.white-title {
    color: var(--white)
}

#stories iframe,#stories img {
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    object-fit: cover
}

.stories-links {
    margin-top: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px
}

.solutions {
    display: flex;
    gap: 8px
}

.sol-card {
    width: 20%;
    flex-grow: 1;
    background: var(--white);
    border: 2px solid var(--style-main);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 40px 20px;
    transition: .4s;
    transform-origin: bottom;
    position: relative;
    overflow: hidden
}

.sol-card-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
    height: 100%
}

.sol-card image,.sol-card svg {
    height: 80px;
    width: 80px;
    transition: .4s
}

.sol-card-title {
    color: var(--style-main);
    font-weight: 700;
    font-size: 24px;
    text-align: center;
    margin-block:20px;line-height: 1.4;
    transition: .4s
}

.sol-card p {
    fonts-ize: 20px;
    color: #000;
    text-align: center;
    line-height: 1;
    transition: .4s;
    flex-grow: 1
}

.sol-card-gradient {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background: var(--gradient);
    opacity: 0;
    transition: .4s
}

.sol-card:has(.sol-card-link:hover) .sol-card-gradient {
    opacity: 1
}

.sol-card:has(.sol-card-link:hover) svg {
    filter: brightness(0) invert(1)
}

.sol-card:has(.sol-card-link:hover) .sol-card-title,.sol-card:has(.sol-card-link:hover) p {
    color: var(--white)
}

.sol-card-link {
    background: var(--style-main);
    color: var(--white);
    padding: 10px 20px;
    border-radius: var(--radius);
    font-size: 20px;
    font-weight: 500
}

.sol-card-link:hover {
    color: var(--white)
}

.solutions:hover .sol-card {
    opacity: .6
}

.sol-card:hover {
    opacity: 1!important
}

#cta {
    background: var(--gradient);
    position: relative
}

.cta-bg {
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%
}

#cta svg,#cta svg image {
    height: 100%;
    width: 100%;
    opacity: .3;
    height: 100%!important;
    width: 100%!important;
    object-fit: cover;
    object-position: center center;
    filter: brightness(0) invert(1)
}

.cta-title {
    color: var(--white);
    text-transform: uppercase;
    font-weight: 700;
    font-size: 36px;
    text-align: center;
    text-wrap: balance
}

#cta .arch-link-white {
    margin-inline:auto;display: block;
    width: fit-content
}

#timeline {
    padding: 50px 20px;
    position: relative;
    max-width: 1300px;
    margin-inline:auto}

#timeline::before {
    content: "";
    display: block;
    height: 100%;
    width: 7px;
    background: var(--style-main);
    position: absolute;
    top: 0;
    left: 50%;
    transform: translatex(-50%);
    -webkit-mask-image: linear-gradient(0deg,rgba(255,255,255,0) 0%,rgba(0,0,0,1) 10%,rgba(0,0,0,1) 90%,rgba(255,255,255,0) 100%);
    animation: lineDown 6s
}

@keyframes lineDown {
    0% {
        height: 0%
    }

    100% {
        height: 100%
    }
}

.timeline {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 20px
}

.time-row {
    display: flex;
    width: 100%;
    position: relative
}

.time-row:nth-of-type(even) {
    justify-content: flex-end
}

.dot {
    content: "";
    display: block;
    height: 60px;
    width: 60px;
    background: #fff;
    border: 3px solid var(--style-main);
    font-weight: 700;
    color: var(--style-main);
    border-radius: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 30px;
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 50;
    transform: scale(0)
}

.dot-filled {
    background: var(--style-main);
    color: var(--white);
    transition: transform 0.7s,background-color 0.7s .5s,color 0.7s .5s;
    transform: scale(1)
}

.bubble {
    width: 46%;
    max-width: 500px;
    background: #fff;
    border: 2px solid var(--style-main);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    color: #000;
    padding: 20px;
    position: relative
}

.bubble::before {
    content: "";
    display: block;
    height: 5px;
    width: 10%;
    background: var(--style-main);
    position: absolute;
    right: -15%;
    top: 50%;
    transform: translatey(-50%);
    z-index: 10
}

.time-row:nth-of-type(even) .bubble::before {
    left: -15%
}

.time-title {
    color: var(--style-main);
    font-weight: 700;
    margin-bottom: 10px;
    text-align: center;
    font-size: 25px
}

.date {
    border-bottom: 1px solid #000;
    margin-bottom: 10px;
    padding-bottom: 10px;
    font-family: var(--main-font);
    font-weight: 700;
    text-align: center
}

.bubble p {
    margin: 0;
    line-height: 20px;
    font-size: 16px;
    text-align: center
}

.bubble ul {
    padding-left: 30px;
    padding-top: 10px
}

.bubble li {
    font-family: var(--thin-font);
    line-height: 20px;
    font-size: 16px;
    list-style-type: disc
}

.bubble img {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 16 / 9;
    border-radius: 15px;
    margin-top: 10px;
    margin-bottom: 0
}

.time-link {
    text-align: center;
    color: var(--style-main);
    font-weight: 700;
    margin-inline:auto;display: block;
    width: fit-content
}

#gallery {
    background: var(--gradient);
    border-block:5px solid var(--style-main)}

#gallery .arch-link-white {
    width: fit-content;
    display: block;
    margin-inline:auto;margin-top: 30px
}

#gallery .wpcp-all-captions {
    background: #fff;
    padding-block:10px}

#gallery .wpcp-image-caption {
    font-size: 16px!important;
    font-weight: 700
}

#gallery .wpcp-slide-image {
    aspect-ratio: 4 / 3
}

#gallery .wpcp-slide-image img {
    height: 100%;
    width: 100%;
    object-fit: cover
}

#gallery .swiper-button-next,#gallery .swiper-button-prev {
    margin-top: 0;
    font-size: 40px!important
}

.dr-flex {
    display: flex;
    gap: 50px
}

.dr-flex::before,.dr-flex::after {
    content: none
}

.dr-left {
    width: 40%;
    position: relative;
    overflow: hidden
}

.dr-left img {
    height: 100%;
    aspect-ratio: 1 / 1;
    width: auto;
    object-fit: cover;
    object-position: top;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translatex(-50%);
    border: 2px solid var(--style-main);
    border-radius: var(--radius);
    box-shadow: var(--shadow)
}

.dr-right {
    width: 60%
}

.dr-name {
    font-size: 40px;
    color: #000;
    text-transform: uppercase;
    font-weight: 500
}

.dr-right p {
    color: #000;
    font-weight: 500;
    line-height: 1.2
}

.badges-link {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.badges-link img {
    max-width: 300px
}

.arch-link-blue {
    background: var(--style-main);
    padding: 10px 20px;
    border-radius: var(--radius);
    font-weight: 500;
    color: var(--white);
    text-align: center;
    line-height: 1
}

.arch-link-blue:hover {
    color: var(--white);
    box-shadow: var(--shadow);
    transform: scale(.95)
}

#reviews {
    background: var(--gradient);
    position: relative
}

#reviews svg,#reviews svg image {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    opacity: .3;
    height: 100%!important;
    width: 100%!important;
    pointer-events: none
}

#reviews .testimonial-name {
    color: #fff;
    font-weight: 700
}

#reviews .testimonial-name::before {
    content: "-"!important;
    margin-right: 10px
}

.strong-view.controls-style-buttons:not(.rtl) .wpmslider-next:before,.strong-view.controls-style-buttons:not(.rtl) .wpmslider-prev:before {
    background: white!important
}

#reviews p {
    text-align: center;
    color: #fff;
    font-size: 30px;
    max-width: 900px;
    margin-inline:auto;font-style: italic
}

#stuff {
    background: var(--style-tri)
}

.stuff {
    display: flex;
    gap: 20px;
    justify-content: space-between
}

.stuff-item {
    width: 33.3%;
    max-width: 380px;
    display: flex;
    flex-direction: column;
    align-items: center
}

.stuff-icon {
    height: 100px;
    width: 100px;
    margin-bottom: 20px
}

.stuff-title {
    color: var(--style-main);
    font-weight: 700;
    font-size: 24px
}

.stuff-item p {
    font-size: 20px;
    text-align: center;
    color: #000;
    line-height: 1.1;
    flex-grow: 1
}

.c-flex {
    display: flex
}

.c-left,.c-right {
    width: 50%
}

.c-right p {
    margin: 0;
    height: 100%;
    width: 100%
}

.c-right iframe {
    height: 100%;
    width: 100%;
    border: 0
}

.c-left {
    padding: 60px
}

.c-content {
    max-width: 400px;
    margin-left: auto
}

.contact-links {
    display: flex;
    flex-direction: column;
    gap: 20px;
    max-width: 260px;
    margin-inline:auto}

.c-left p {
    color: #000;
    font-size: 24px;
    text-align: center
}

.c-left img {
    margin-bottom: 30px;
    max-width: 300px;
    width: 100%;
    margin-inline:auto;display: block
}

/* Lead */

#lc-flex {
    width: 100%;
    display: inline-flex;
    justify-content: center;
    align-items: center;
}

#lc-left img {
   width: 300px;
    margin: 0 auto 20px;
}

#lc-left p {
    font-weight: bold;
}

#lc-left li {
    list-style: disc;
}

#lc-right {
    width: 50%;
}

#lc-right iframe {
    width: 100%;
}

@media(max-width: 1920px) {
    .hero-gradient {
        padding:50px 0 200px
    }

    .info-card {
        padding: 30px
    }

    .info-card image,.info-card svg {
        height: 70px
    }

    .arch-title {
        font-size: 40px
    }

    .arch-subtitle {
        font-size: 25px
    }

    .compare-card li {
        font-size: 18px
    }

    .others-title {
        font-size: 25px
    }

    .pad {
        padding: 100px 0
    }

    .sol-card-title {
        font-size: 18px
    }

    .sol-card p {
        font-size: 16px
    }

    .sol-card-link {
        font-size: 18px
    }
}

@media(max-width: 1750px) {
    .cta-title {
        color:var(--white);
        -webkit-text-shadow: 0 2px 12px rgba(0,0,0,.25);
        text-shadow: 0 2px 12px rgba(0,0,0,.25)
    }
}

@media(max-width: 1450px) {
    .hero-title {
        font-size:50px
    }

    .hero-flex {
        gap: 50px
    }

    .bubble::before {
        width: 5%;
        right: -9%
    }

    .time-row:nth-of-type(even) .bubble::before {
        left: -9%
    }
}

@media(max-width: 1250px) {
    .info-card-title {
        font-size:20px
    }

    .solutions {
        flex-wrap: wrap
    }

    .sol-card {
        width: 32%
    }

    .solutions:hover .sol-card {
        transform: initial
    }

    .sol-card:hover+.sol-card,.sol-card:has(+.sol-card:hover) {
        transform: initial;
        opacity: .6
    }

    .sol-card:hover+.sol-card+.sol-card,.sol-card:has(+.sol-card+.sol-card:hover) {
        transform: initial;
        opacity: .6
    }

    .bubble::before {
        display: none
    }

    .time-row:nth-of-type(even) .bubble::before {
        display: none
    }

    #reviews p {
        font-size: 20px
    }
}

@media(max-width: 1150px) {
    .hero-title {
        font-size:45px
    }
}

@media(max-width: 1024px) {
    .hero-gradient {
        padding:75px 0 150px 0
    }

    .hero-flex {
        flex-direction: column;
        gap: 30px
    }

    .hero-text,.hero-form {
        width: 100%;
        max-width: 600px
    }

    .hero-title {
        text-align: center;
        text-wrap: balance
    }

    .hero-text p {
        text-align: center;
        font-size: 20px
    }

    .hero-btns {
        justify-content: center
    }

    .info-cards {
        margin-top: -80px;
        flex-wrap: wrap
    }

    .info-card {
        width: 48%
    }

    .compare-content {
        padding: 70px 0
    }

    .arch-title {
        font-size: 35px
    }

    .arch-subtitle {
        font-size: 20px
    }

    .compare-card li {
        font-size: 16px
    }

    .others-title {
        font-size: 20px
    }

    .compare-card {
        padding: 25px 35px
    }

    .pad {
        padding: 70px 0
    }

    .sol-card {
        width: 45%
    }

    .cta-title {
        font-size: 30px;
        max-width: 600px;
        margin-inline:auto;line-height: 1
    }

    .dot {
        font-size: 20px;
        height: 40px;
        width: 40px
    }

    .dr-flex {
        flex-direction: column;
        align-items: center;
        gap: 30px
    }

    .dr-left,.dr-right {
        width: 100%
    }

    .dr-left {
        max-width: 500px
    }

    .dr-name {
        font-size: 30px
    }

    .dr-right p {
        font-size: 16px
    }

    .arch-link-blue {
        font-size: 16px
    }

    .badges-link {
        flex-wrap: wrap;
        justify-content: center
    }

    .stuff {
        flex-wrap: wrap;
        justify-content: center;
        gap: 30px
    }

    .stuff-icon {
        height: 70px;
        width: 70px
    }

    .stuff-title {
        font-size: 20px
    }

    .stuff-item p {
        font-size: 16px
    }

    .c-flex {
        flex-direction: column
    }

    .c-left,.c-right {
        width: 100%
    }

    .c-content {
        margin-inline:auto}
}

@media(max-width: 768px) {
    .hero-title {
        font-size:40px
    }

    .hero-text p {
        font-size: 16px;
        line-height: 1.3
    }

    .hero-btns {
        gap: 10px
    }

    .arch-link-trans,.arch-link-white {
        font-size: 16px;
        padding: 5px 15px
    }

    .hero-form-title {
        font-size: 20px
    }

    .hero-form p {
        font-size: 14px
    }

    .hero-gradient {
        padding: 40px 0 150px 0
    }

    .compare-content {
        padding: 40px 0
    }

    .arch-title {
        font-size: 25px
    }

    .arch-subtitle {
        font-size: 18px
    }

    .compare-card li {
        text-align: left
    }

    .compare-cards {
        flex-direction: column
    }

    .compare-card {
        width: 100%;
        max-width: 350px;
        margin-inline:auto}

    .pad {
        padding: 40px 0
    }

    .sol-card {
        padding: 12px
    }

    .sol-card-link {
        font-size: 16px;
        padding: 10px 20px;
        line-height: 1
    }

    .sol-card image,.sol-card svg {
        height: 60px;
        width: 60px
    }

    .solutions:hover .sol-card {
        opacity: initial
    }

    .sol-card:hover+.sol-card,.sol-card:has(+.sol-card:hover) {
        opacity: initial
    }

    .sol-card:hover+.sol-card+.sol-card,.sol-card:has(+.sol-card+.sol-card:hover) {
        opacity: initial
    }

    .sol-card p {
        display: none
    }

    .sol-card-title {
        font-size: 16px
    }

    .cta-title {
        font-size: 25px
    }

    .bubble {
        width: 95%
    }

    .time-row {
        justify-content: flex-end
    }

    .time-title {
        font-size: 20px
    }

    .time-row:nth-of-type(odd) .bubble::before {
        left: initial;
        right: 100%;
        clip-path: polygon(100% 0,100% 100%,0 50%)
    }

    .dot {
        margin-left: -40px;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0
    }

    #timeline::before {
        left: calc(0% + 2px)
    }

    .dr-name {
        font-size: 25px
    }

    .stuff-item {
        width: 100%
    }

    .c-left p {
        font-size: 18px
    }

    .strong-view.wpmtst-bold.controls-type-sides .wpmtst-testimonial-inner {
        padding-inline:0px!important}

    .strong-view.controls-style-buttons:not(.rtl) .wpmslider-next:before {
        left: 35px!important
    }

    .strong-view.controls-style-buttons:not(.rtl) .wpmslider-prev:before {
        left: -35px!important
    }

/* Lead */

    #lc-flex {
        flex-direction: column;
    }
    
    #lc-left img {
       width: auto;
    }

    #lc-right {
        width: 100%;
    }   
}

@media(max-width: 550px) {
    .info-card {
        padding:20px
    }

    .info-card image,.info-card svg {
        height: 60px
    }

    .info-card-title {
        font-size: 16px
    }
}
