﻿@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-Medium.woff") format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-Light.woff") format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-Heavy.woff") format("woff");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-UltraLight.woff") format("woff");
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-SemiBold.woff") format("woff");
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-Thin.woff") format("woff");
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-ExtraBold.woff") format("woff");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-Black.woff") format("woff");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-Regular.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Gilroy";
    src: url("../fonts/Gilroy-Bold.woff") format("woff");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

body {
    margin: 0;
    padding: 0;
}

* {
    box-sizing: border-box;
}

:root {
    --font-primary: "Gilroy", sans-serif;
    --font-secondary: "Poppins", sans-serif;
    --text-color: #001;
    --heading-color: #02193c;
    --secondary-color: #17416b;
    --color-white: #fff;
    --bg-color: #f9faff;
    --bg-color-2: #f3f3f5;
    --btn-color: #fd904d;
    /* Zebra hard split backgrounds */
    --zebra-white: #fff;
    --zebra-grey: #f3f3f5;
    --zebra-cut: 100%;
}

img {
    max-width: 100%;
}

/* BOOTSTRAP-LIKE GRID BASICS */
.h1, h1 {
    font-family: "Gilroy";
    font-weight: bold;
    margin: 0;
}

.h2, h2, .h3, h3, .h4, h4, .h5, h5, .h6, h6 {
    font-family: var(--font-primary);
    margin: 0;
}

.h4, h4 {
    font-size: calc(1.275rem + 0.3vw);
}

.h5, h5 {
    font-size: 1.25rem;
}

.h6, h6 {
    font-size: 1rem;
}

a {
    text-decoration: none;
}

p, a, li, ul {
    font-family: var(--font-secondary);
    font-weight: 400;
}

/* container widths */
.container, .container-fluid, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    width: 100%;
    padding-right: calc(1.5rem * 0.5);
    padding-left: calc(1.5rem * 0.5);
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .container, .container-sm {
        max-width: 540px;
    }
}

@media (min-width: 768px) {
    .container, .container-md, .container-sm {
        max-width: 720px;
    }
}

@media (min-width: 992px) {
    .container, .container-lg, .container-md, .container-sm {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1140px;
    }
}

@media (min-width: 1300px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl {
        max-width: 1240px;
    }
}

@media (min-width: 1920px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1320px;
    }
}

.custom-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: calc(1.5rem * -0.5);
    margin-left: calc(1.5rem * -0.5);
}

    .custom-row > * {
        flex-shrink: 0;
        width: 100%;
        max-width: 100%;
        padding-right: calc(1.5rem * 0.5);
        padding-left: calc(1.5rem * 0.5);
    }

@media screen and (max-width: 991px) {
    .custom-row {
        grid-row-gap: 2rem;
    }
}

@media (min-width: 992px) {
    .col-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }

    .col-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }

    .col-3 {
        flex: 0 0 auto;
        width: 25%;
    }

    .col-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }

    .col-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }

    .col-6 {
        flex: 0 0 auto;
        width: 50%;
    }

    .col-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }

    .col-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }

    .col-9 {
        flex: 0 0 auto;
        width: 75%;
    }

    .col-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }

    .col-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
}

/* helpers */
.text-center {
    text-align: center;
}

p {
    margin-top: 0;
    margin-bottom: 1rem;
}

hr {
    margin: 1rem 0;
    border: 0;
    border-top: 1px solid;
    opacity: .25;
}

button, input, optgroup, select, textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button {
    cursor: pointer;
}

/* =========================
   HEADER (shared & sticky)
   ========================= */
header.header-v1 {
    box-shadow: 0 0 10px #cccccc61;
    position: sticky; /* sticky on all pages */
    top: 0;
    z-index: 9999;
    background: #fff;
}

.header-v1 .header-inner {
    min-height: 72px;
}

header.header-v1.is-stuck {
    box-shadow: 0 8px 24px rgba(2,25,60,.08);
}

nav.main-nav ul.menu {
    display: flex;
    list-style: none;
}

    nav.main-nav ul.menu a {
        color: var(--text-color);
    }

    nav.main-nav ul.menu li:not(:last-child) {
        border-right: 1px solid;
    }

    nav.main-nav ul.menu li {
        line-height: 1em;
    }

        nav.main-nav ul.menu li.active a {
            font-weight: 500;
            font-size: 16px;
        }

        nav.main-nav ul.menu li a {
            padding: 0 20px;
            line-height: 1em;
        }

.header-inner.custom-row {
    align-items: center;
}

.header-right {
    display: flex;
    justify-content: end;
    align-items: center;
}

    .header-right a.btn.btn-sign-up {
        padding: 26px 70px;
        background-color: var(--secondary-color);
        color: var(--color-white);
        font-weight: 600;
        font-size: 20px;
        transition: all .3s ease;
    }

a.btn.btn-login {
    padding: 25px 30px;
    color: var(--text-color);
    font-size: 16px;
    font-weight: 500;
}

/* Mobile menu controls */
.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    cursor: pointer;
    width: 30px;
    height: 30px;
}

    .mobile-menu-toggle span {
        display: block;
        height: 3px;
        background-color: var(--text-color);
        border-radius: 2px;
    }

.mobile-slide-menu {
    position: fixed;
    top: 0;
    left: -280px;
    width: 280px !important;
    height: 100%;
    background: #fff;
    box-shadow: 2px 0 10px rgba(0,0,0,.1);
    z-index: 9999;
    transition: left .3s ease;
    padding: 20px;
}

    .mobile-slide-menu.active {
        left: 0;
    }

    .mobile-slide-menu .mobile-menu-header {
        display: flex;
        justify-content: flex-end;
    }

    .mobile-slide-menu .close-mobile-menu {
        font-size: 24px;
        cursor: pointer;
    }

.mobile-nav ul.mobile-menu {
    list-style: none;
    padding: 0;
}

    .mobile-nav ul.mobile-menu li {
        margin: 20px 0;
    }

    .mobile-nav ul.mobile-menu a {
        color: var(--text-color);
        text-decoration: none;
        font-size: 18px;
    }

.mobile-menu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #00000066;
    z-index: 9998;
    opacity: 0;
    visibility: hidden;
    transition: all .3s ease;
}

    .mobile-menu-overlay.active {
        opacity: 1;
        visibility: visible;
    }

/* header responsive */
@media screen and (max-width: 1100px) {
    .header-right a.btn.btn-sign-up {
        padding: 26px 50px;
    }
}

@media screen and (max-width: 991px) {
    header.header-v1 .header-inner.custom-row {
        display: flex;
    }

    header.header-v1 .col-2 {
        width: 44%;
        display: flex;
        align-items: center;
        gap: 20px;
    }

    header.header-v1 .col-6 {
        width: 10%;
    }

    header.header-v1 .col-4 {
        width: 46%;
        padding-right: 0;
    }

    .main-nav {
        display: none;
    }

    .mobile-menu-toggle {
        display: flex;
    }
}

@media screen and (min-width: 660px) {
    li.mobile-btn {
        display: none;
    }
}

@media screen and (max-width: 660px) {
    header.header-v1 .col-4 {
        display: none;
    }

    li.mobile-btn {
        display: block;
    }

    header.header-v1 .col-2 {
        width: 100%;
        align-items: center;
        flex-direction: row-reverse;
        justify-content: space-between;
    }

    .header-inner.custom-row {
        grid-row-gap: 0;
        padding: 10px 0;
    }
}

/* prevent anchor overlap under sticky header */
body {
    scroll-padding-top: 80px;
}

@media (max-width: 991px) {
    body {
        scroll-padding-top: 64px;
    }
}

/* =========================
   HERO (Home & Features)
   ========================= */
.hero-section {
    background-color: var(--bg-color-2);
    padding: 20px 0 0 0;
    overflow: hidden;
}

    .hero-section.hero-compact {
        padding: 60px 0 40px;
    }
    /* for features */

    .hero-section h1 {
        color: #17416b;
        font-weight: 600;
        font-size: 70px;
        line-height: 0.9em;
        font-family: var(--font-primary);
    }

        .hero-section h1 span {
            color: #17416b;
            font-weight: 700;
            font-size: 56px;
            line-height: 0.9em;
            font-family: var(--font-primary);
        }

    .hero-section p.subtext {
        font-size: 17px;
        color: #324067;
        font-family: var(--font-secondary);
        margin-bottom: 10px;
        font-weight: 500;
    }

.align-items-center {
    align-items: center;
}

.signup-form {
    display: flex;
    max-width: 520px;
    margin: 20px 0;
    font-family: var(--font-secondary);
}

    .signup-form input {
        flex: 1;
        padding: 16px 20px;
        border: 1px solid #ccc;
        border-radius: 6px 0 0 6px;
        font-size: 16px;
        outline: none;
    }

    .signup-form button {
        padding: 16px 35px;
        background-color: var(--btn-color);
        border: none;
        color: #fff;
        font-weight: 600;
        font-size: 16px;
        border-radius: 0 6px 6px 0;
        cursor: pointer;
        transition: .3s;
    }

.header-right a.btn.btn-sign-up:hover {
    background-color: var(--btn-color);
}

.signup-form input::placeholder {
    color: #b3b3b3;
    font-size: 16px;
}

.signup-form button:hover {
    background-color: #d9541a;
}

.hero-section p.privacy {
    font-size: 16px;
    margin-top: 8px;
    color: #324067;
}

.hero-section a.watch-link {
    display: flex;
    margin-top: 30px;
    font-weight: 600;
    font-size: 16px;
    color: #17416b;
    gap: 8px;
}

    .hero-section a.watch-link span {
        border-bottom: 2px solid #17416b;
    }

.hero-section .image-side img {
    max-width: 100%;
}

.image-side img {
    margin-right: -26%;
}

/* responsive hero */
@media (max-width: 991px) {
    .hero-section .custom-row {
        flex-direction: column;
        text-align: center;
    }

    .signup-form {
        margin: 20px auto;
    }

    .hero-section a.watch-link {
        justify-content: center;
    }

    .hero-section h1 {
        font-size: 60px;
    }

        .hero-section h1 span {
            font-size: 48px;
        }

    .hero-section {
        padding: 50px 0 0 0;
    }
}

@media (max-width: 660px) {
    .hero-section h1 {
        font-size: 38px;
    }

    .hero-section p.subtext {
        font-size: 15px;
    }

    .hero-section h1 span {
        font-size: 33px;
    }

    .signup-form {
        margin: 20px auto;
        flex-direction: column;
    }

        .signup-form button {
            border-radius: 8px;
            margin-top: 8px;
        }

        .signup-form input {
            text-align: center;
            border-radius: 8px;
        }

    .image-side img {
        margin-right: 0;
    }
}

/* =========================
   Zebra sections (Home)
   ========================= */
main > section.zebra {
    background: linear-gradient( to bottom, var(--zebra-white) 0, var(--zebra-white) var(--zebra-cut), var(--zebra-grey) var(--zebra-cut), var(--zebra-grey) 100% ) !important;
}

    main > section.zebra.alt {
        background: linear-gradient( to bottom, var(--zebra-grey) 0, var(--zebra-grey) var(--zebra-cut), var(--zebra-white) var(--zebra-cut), var(--zebra-white) 100% ) !important;
    }

/* =========================
   Company Website Input
   ========================= */
.company-check, .video-section, .trusted-section {
    padding: 60px 0;
    text-align: center;
}

.company-heading, .video-heading, .trusted-heading {
    font-weight: 600;
    color: var(--heading-color);
    margin-bottom: 25px;
}

.video-heading {
    margin-bottom: 30px;
}

.trusted-heading {
    margin-bottom: 40px;
}

.website-form {
    display: flex;
    justify-content: center;
    max-width: 700px;
    margin: 0 auto;
}

    .website-form input {
        flex: 1;
        padding: 14px 20px;
        border: 1px solid #ccc;
        border-radius: 6px 0 0 6px;
        font-size: 16px;
        outline: none;
        font-family: var(--font-secondary);
        background-color: #f3f3f5;
    }

        .website-form input[type="url"]::placeholder {
            color: #324067;
            font-size: 16px;
            opacity: .6;
        }

    .website-form button {
        padding: 14px 35px;
        background: var(--btn-color);
        color: #fff;
        font-weight: 500;
        font-size: 16px;
        border: none;
        border-radius: 10px;
        cursor: pointer;
        transition: .3s ease-in-out;
        font-family: var(--font-secondary);
        margin-left: -25px;
    }

        .website-form button:hover {
            background: #d9541a;
        }

.company-check {
    padding: 80px 0 61px 0;
    text-align: center;
}

@media (max-width: 991px) {
    .website-form {
        flex-direction: row;
        max-width: 600px;
    }
}

@media (max-width: 660px) {
    .company-check {
        padding: 45px 0 40px 0;
    }

    .website-form {
        max-width: 600px;
        flex-direction: column;
    }

        .website-form button {
            margin-left: 0;
            border-radius: 7px;
        }

        .website-form input[type="url"] {
            padding: 14px 25px;
            border-radius: 6px;
            font-size: 16px;
        }
}

/* =========================
   Video Section
   ========================= */
.video-section {
    padding: 60px 0;
    text-align: center;
}

section.video-section .video-box {
    position: relative;
    display: inline-block;
    border-radius: 10px;
    overflow: unset;
    max-width: 90%;
    border: none;
    margin-top: 20px;
}

    section.video-section .video-box::after {
        content: "";
        position: absolute;
        top: -3%;
        left: 2%;
        background-color: var(--btn-color);
        height: 106%;
        width: 96%;
        border-radius: 20px;
        z-index: -1;
    }

.video-section .video-box img {
    display: block;
    max-width: 100%;
}

.video-box .play-btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

    .video-box .play-btn img {
        width: 80px;
        height: 80px;
        transition: transform .3s ease;
    }

    .video-box .play-btn:hover img {
        transform: scale(1.1);
    }

@media (max-width: 660px) {
    .video-box .play-btn img {
        width: 50px;
        height: 50px;
    }

    section.video-section .video-box {
        max-width: 98%;
        margin-top: 0;
    }
}

/* =========================
   Trusted Logos
   ========================= */
.trusted-section {
    padding: 60px 0;
    text-align: center;
}

    .trusted-section h3 {
        font-family: var(--font-primary);
        font-weight: 700;
        color: var(--heading-color);
        margin-bottom: 25px;
        font-size: 40px;
        line-height: 1.3em;
    }

    .trusted-section .logos {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
    }

        .trusted-section .logos img {
            object-fit: contain;
            opacity: .85;
            transition: opacity .3s;
            width: 12.5%;
            border: 1px solid #e7e7e7;
            filter: saturate(0);
        }

            .trusted-section .logos img:hover {
                opacity: 1;
                filter: saturate(1);
            }

@media (max-width: 991px) {
    .trusted-section {
        padding: 30px 0;
    }
}

@media (max-width: 991px) {
    .trusted-section .logos img {
        width: 16%;
    }
}

@media (max-width: 660px) {
    .trusted-section .logos img {
        width: 33.33%;
    }
}

/* =========================
   Solution
   ========================= */
.solution {
    padding: 50px 0 0 0;
    text-align: center;
    background-color: #f3f3f5;
}

    .solution .section-title {
        color: var(--heading-color);
        max-width: 800px;
        margin: 0 auto 20px;
    }

.section-subtitle {
    color: #324067;
    max-width: 640px;
    margin: 0 auto 50px;
    font-size: 16px;
    line-height: 1.8;
}

.solution-grid {
    gap: 2rem;
    justify-content: center;
}

.feature-card {
    background: var(--color-white);
    border-radius: 15px;
    padding: 30px 20px;
    text-align: center;
    box-shadow: 0 4px 15px rgba(0,0,0,.05);
    transition: transform .3s ease, box-shadow .3s ease;
    border: 1px solid #d7d7d7;
    height: 100%;
}

    .feature-card span {
        display: block;
        font-size: 14px;
        font-family: var(--font-secondary);
        font-weight: 500;
        color: var(--text-color);
    }

    .feature-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 6px 20px rgba(0,0,0,.08);
    }

.eff-img img {
    width: 100%;
}

/* =========================
   Features section (Home)
   ========================= */
.features {
    padding: 100px 0 80px 0;
    background: linear-gradient(180deg, #f3f3f5 60%, rgba(255,255,255,0) 56%);
}

.feature-card .icon-box img {
    margin-bottom: 0;
    width: 56px;
    height: 56px;
    object-fit: contain;
}

.feature-card h3 {
    font-family: var(--font-primary);
    font-weight: 700;
    margin: 15px 0;
    color: var(--text-color);
    font-size: 20px;
}

.feature-card p {
    color: #324067;
    line-height: 1.8;
    font-size: 16px;
    text-align: left;
}

/* =========================
   Features (detail grid)
   ========================= */
.features-section {
    padding: 100px 0 60px 0;
    background: linear-gradient(180deg, #f3f3f5 85%, rgba(255,255,255,0) 56%);
}

.sec-block {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sec-block-left h2.section-heading {
    margin-bottom: 5px;
}

.sec-block-left h3 {
    font-family: var(--font-primary);
    font-weight: 700;
    color: var(--heading-color);
    margin-bottom: 25px;
    font-size: 30px;
    line-height: 1.3em;
    letter-spacing: -0.5px;
}

.features-section .subtitle {
    font-family: var(--font-secondary);
    font-size: 18px;
    color: var(--secondary-color);
    margin-bottom: 20px;
}

.features-section .btn-primary {
    display: inline-block;
    padding: 16px 34px;
    background: var(--secondary-color);
    color: var(--color-white);
    border-radius: 6px;
    font-weight: 400;
}

    .features-section .btn-primary:hover {
        background: var(--btn-color);
    }

.feature-grid {
    margin-top: 20px;
}

.feature-card .icon img {
    width: 62px;
    height: 62px;
    margin-bottom: 5px;
}

.feature-card h3 {
    font-family: var(--font-primary);
    font-weight: 700;
    margin: 15px 0;
    color: #02193c;
    font-size: 21px;
}

.custom-row.feature-grid .feature-card {
    margin: 12px 0;
    height: max-content;
    min-height: 376px;
}

/* =========================
   FAQ
   ========================= */
.faq-section {
    padding: 30px 0 80px 0;
    background: #fff;
}

.faq-list {
    margin-top: 40px;
    display: grid;
    grid-template-columns: repeat(2,1fr);
    gap: 0 15px;
}

.faq-item {
    border: 2px solid #ddd;
    border-radius: 8px;
    margin-bottom: 15px;
    overflow: hidden;
    height: max-content;
}

    .faq-item.active button.faq-question {
        padding-bottom: 0px;
    }

.faq-question {
    width: 100%;
    text-align: left;
    padding: 19px 20px;
    font-size: 18px;
    font-weight: 700;
    color: var(--heading-color);
    background: #fff;
    border: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-family: var(--font-primary);
}

    .faq-question .icon {
        font-size: 26px;
        background-color: #17416b;
        padding: 4px;
        width: 46px;
        height: 46px;
        color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
        transition: .3s;
        border-radius: 9px;
    }

        .faq-question .icon img {
            height: 8px;
        }

.faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: all .3s ease;
    padding: 0 20px;
    font-size: 16px;
    font-family: var(--font-secondary);
    color: #324067;
}

.faq-item.active .faq-answer {
    border-top: 1px solid var(--btn-color);
    max-height: 300px;
    padding: 15px 5px;
    margin: 15px;
}

.faq-item.active .faq-question .icon {
    transform: rotate(180deg);
    transition: .3s;
    background-color: var(--btn-color);
}

/* =========================
   Pricing
   ========================= */
.pricing-section {
    padding: 100px 0;
    background: #f3f3f5;
}

    .pricing-section .subtitle {
        max-width: 700px;
        margin: 15px auto 40px;
        font-family: var(--font-secondary);
        font-size: 16px;
        color: #324067;
        line-height: 1.7em;
    }

.pricing-card {
    background: #fff;
    padding: 50px 30px;
    border-radius: 12px;
    border: 1px solid #d7d7d7;
    max-width: 750px;
    margin: 0 auto;
}

    .pricing-card h3 {
        margin-bottom: 20px;
        font-weight: 700;
        color: var(--heading-color);
    }

.pricing-list {
    list-style: none;
    margin: 0 0 25px;
    padding: 0;
    text-align: left;
    max-width: 400px;
    margin: 25px auto;
}

    .pricing-list li {
        margin-bottom: 12px;
        font-size: 16px;
        color: #333;
        font-family: var(--font-secondary);
        position: relative;
        padding-left: 25px;
    }

        .pricing-list li::after {
            content: "";
            position: absolute;
            left: 0;
            top: 5px;
            background-image: url(/assets/images/check-icon.svg);
            background-size: contain;
            width: 15px;
            height: 15px;
            z-index: 2;
            background-repeat: no-repeat;
        }

.btn-primary {
    display: inline-block;
    padding: 15px 28px;
    background: var(--btn-color);
    color: var(--color-white);
    border-radius: 8px;
    font-weight: 600;
    transition: .3s;
}

.pricing-list .btn-primary {
    margin-top: 15px;
}

.btn-primary:hover {
    background: #d74a1f;
}

/* =========================
   Blog (unused currently)
   ========================= */
.blog-section {
    padding: 100px 0;
    background: #fff;
}

.blog-grid {
    margin-top: 40px;
}

.blog-card {
    border-radius: 12px;
    overflow: hidden;
    transition: .3s ease;
    height: 100%;
}

    .blog-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 6px 20px #0000001a;
    }

.blog-img {
    position: relative;
}

    .blog-img img {
        width: 100%;
        height: 220px;
        object-fit: cover;
        display: block;
    }

span.blog-date img {
    width: 16px;
    height: auto;
}

.blog-date {
    position: absolute;
    bottom: -17px;
    left: 20px;
    background: var(--btn-color);
    color: #fff;
    font-size: 15px;
    font-weight: 400;
    padding: 5px 11px;
    border-radius: 4px;
    font-family: var(--font-secondary);
    display: flex;
    gap: 10px;
    align-items: center;
}

.blog-content {
    padding: 20px;
}

    .blog-content h3 {
        font-family: var(--font-primary);
        font-weight: 700;
        margin: 20px 0 10px 0;
        color: #02193c;
        font-size: 24px;
    }

    .blog-content p {
        color: #324067;
        line-height: 1.8;
        font-size: 16px;
        text-align: left;
    }

.blog-read-more {
    font-weight: 600;
    font-size: 18px;
    color: var(--secondary-color);
    text-decoration: none;
    display: flex;
    gap: 10px;
    align-items: center;
    text-transform: uppercase;
}

    .blog-read-more:hover {
        text-decoration: underline;
    }

.blog-section .btn-secondary {
    display: inline-block;
    margin-top: 40px;
    padding: 17px 33px;
    background: var(--secondary-color);
    color: var(--color-white);
    border-radius: 6px;
    font-weight: 500;
    transition: .3s;
    font-size: 18px;
}

.btn-secondary:hover {
    background: #12385b;
}

/* =========================
   Industries
   ========================= */
.industries {
    padding: 80px 0;
    background: linear-gradient(0deg, #f3f3f5 56%, rgba(255,255,255,0) 56%);
    text-align: center;
}

    .industries .section-title {
        color: var(--heading-color);
        margin-bottom: 40px;
    }

.industry-cards {
    justify-content: center;
}

.industry-card {
    background: var(--color-white);
    border-radius: 12px;
    padding: 40px 30px;
    text-align: center;
    box-shadow: 0 3px 0 rgba(0,0,0,.05);
    transition: transform .3s ease;
    height: 100%;
    border: 1px solid #ccc;
}

    .industry-card:hover {
        transform: translateY(-8px);
    }

    .industry-card .icon-box {
        display: flex;
        gap: 25px;
        align-items: center;
        margin-bottom: 20px;
    }

        .industry-card .icon-box img {
            background-color: #173f6b;
            height: 83px;
            width: 90px;
            padding: 15px;
            object-fit: contain;
            border-radius: 10px;
        }

    .industry-card:hover .icon-box img {
        background-color: var(--btn-color);
    }

    .industry-card h3 {
        font-family: var(--font-primary);
        font-weight: 700;
        margin: 15px 0;
        color: var(--text-color);
        font-size: 23px;
        text-align: left;
    }

    .industry-card p {
        color: #324067;
        line-height: 1.8;
        font-size: 16px;
        text-align: left;
    }

/* =========================
   Contact
   ========================= */
.contact-section {
    padding: 100px 0;
    background: #f3f3f5;
}

.contact-info {
    position: relative;
}

    .contact-info h2 {
        margin-bottom: 8px;
        font-weight: 700;
        color: var(--heading-color);
    }

h3.contact-subtitle {
    font-family: var(--font-primary);
    font-weight: 700;
    color: var(--heading-color);
    margin-bottom: 15px;
    font-size: 30px;
    line-height: 1.3em;
    letter-spacing: -0.5px;
}

.contact-info p {
    margin-bottom: 20px;
    color: #324067;
    font-size: 16px;
    line-height: 1.8;
}

a.phone-link p {
    font-size: 24px;
}

a.phone-link {
    margin: 30px 0;
    display: block;
}

.contact-details p {
    font-size: 16px;
    margin: 10px 0;
    color: #353535;
    display: flex;
    align-items: center;
    gap: 15px;
}

.contact-illustration {
    margin-top: 30px;
}

    .contact-illustration img {
        width: 315px;
        max-width: 100%;
        position: absolute;
        bottom: -101px;
        right: -15px;
    }

.contact-info a.btn.btn-secondary {
    display: inline-block;
    margin-top: 40px;
    padding: 15px 34px;
    background: var(--secondary-color);
    color: var(--color-white);
    border-radius: 6px;
    font-weight: 500;
    transition: .3s;
    font-size: 16px;
}

    .contact-info a.btn.btn-secondary:hover {
        background: var(--btn-color);
    }

.contact-form {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    border: 1px solid #17416b;
}

    .contact-form form {
        display: flex;
        flex-wrap: wrap;
        gap: 20px;
    }

    .contact-form label {
        font-family: var(--font-secondary);
        font-weight: 400;
        color: var(--text-color);
        opacity: .6;
        font-size: 15px;
        margin-bottom: 8px;
        display: inline-block;
    }

    .contact-form .form-group {
        display: flex;
        gap: 15px;
        width: 100%;
    }

        .contact-form .form-group .feild-wrap {
            width: 50%;
        }

            .contact-form .form-group .feild-wrap.full {
                width: 100% !important;
            }

        .contact-form .form-group.full {
            flex-direction: column;
        }

    .contact-form input, .contact-form select, .contact-form textarea {
        width: 100%;
        padding: 16px 15px;
        border: 1px solid #b7b7b7;
        border-radius: 6px;
        font-size: 16px;
        font-family: var(--font-secondary);
    }

    .contact-form textarea {
        resize: none;
    }

    .contact-form button {
        padding: 16px 36px;
        background: var(--btn-color);
        color: #fff;
        border: none;
        border-radius: 10px;
        font-weight: 500;
        cursor: pointer;
        transition: .3s;
        font-size: 16px;
        font-family: var(--font-secondary);
        margin: 0 0 0 auto;
    }

        .contact-form button:hover {
            background: #d74a1f;
        }

/* =========================
   Footer
   ========================= */
.footer {
    background: #fff;
    border-top: 1px solid #eee;
    padding-top: 80px;
}

.footer-grid {
    margin-bottom: 60px;
}

.footer-links h4.footer-links-heading {
    font-size: 28px;
    margin: 0 0 20px 0;
    font-weight: 700;
    color: #161925;
}

.footer-about p {
    font-size: 16px;
    color: #324067;
    margin-top: 10px;
    line-height: 1.8;
    padding-right: 5%;
}

.footer-logo {
    margin-bottom: 15px;
}

.footer-links-col2 {
    padding-left: 10% !important;
}

.footer-links ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

    .footer-links ul li {
        margin-bottom: 20px;
    }

        .footer-links ul li a {
            font-size: 16px;
            color: #324067;
            text-decoration: none;
        }

            .footer-links ul li a:hover {
                color: var(--secondary-color);
            }

.social-links li {
    margin-bottom: 10px;
}

ul.social-links {
    display: flex;
    gap: 10px;
    align-items: center;
}

    ul.social-links li a {
        border-radius: 50px;
        width: 55px;
        height: 55px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

        ul.social-links li a svg {
            width: 20px;
            height: 20px;
        }

        ul.social-links li a:hover {
            background-color: #f3f3f5;
        }

            ul.social-links li a:hover svg path {
                fill: var(--btn-color);
            }

.footer-bottom {
    padding: 20px 0;
    border-top: 1px solid #eee;
    background-color: #ededee;
}

    .footer-bottom p {
        font-size: 16px;
        color: var(--text-color);
        margin: 0;
        font-weight: 300;
    }

/* =========================
   RESPONSIVE TWEAKS
   ========================= */
@media (max-width: 991px) {
    .hero-section a.watch-link {
        justify-content: center;
    }

    .section-heading, .trusted-section h3 {
        font-size: 34px;
    }

    .video-section {
        padding: 10px 0;
    }

    .industries {
        padding: 15px 0 20px 0;
    }

    section.industries .custom-row.industry-cards,
    section.features .custom-row.feature-cards,
    .custom-row.feature-grid {
        grid-row-gap: 1rem;
    }

    .features {
        padding: 60px 0 80px 0;
    }

    .features-section {
        padding: 80px 0 30px 0;
    }

    .custom-row.feature-grid .feature-card {
        min-height: auto;
        margin: 0;
    }

    .faq-list {
        grid-template-columns: 1fr;
        gap: 0 15px;
    }

    .faq-section {
        padding: 30px 0 50px 0;
    }

    .pricing-section {
        padding: 60px 0;
    }

    .blog-section {
        padding: 60px 0;
    }

    .contact-illustration {
        display: none;
    }

    .contact-section {
        padding: 60px 0;
    }

    .footer-links-col2 {
        padding-left: 10px !important;
    }

    .footer-links h4.footer-links-heading {
        font-size: 25px;
        margin: 0 0 15px 0;
    }

    .footer-links ul li {
        margin-bottom: 10px;
    }

    ul.social-links li a {
        background-color: #f3f3f5;
        width: 50px;
        height: 50px;
    }
}

@media (max-width: 660px) {
    .section-heading, .trusted-section h3 {
        font-size: 25px;
    }

    .industry-card .icon-box img {
        height: 64px;
        width: 73px;
        padding: 12px;
    }

    .industry-card h3 {
        font-size: 20px;
    }

    .industry-card .icon-box {
        gap: 16px;
        margin-bottom: 10px;
    }

    .industry-card p {
        font-size: 15px;
    }

    .section-subtitle {
        font-size: 15px;
    }

    .feature-card h3 {
        font-size: 19px;
    }

    .feature-card p {
        line-height: 1.7;
        font-size: 15px;
    }

    .success-stories .section-subtitle {
        margin-bottom: 40px;
        font-size: 15px;
    }

    .swiper-button-prev, .swiper-button-next {
        padding: 8px;
        width: 40px;
        height: 40px;
    }

        .swiper-button-prev::after, .swiper-button-next::after {
            font-size: 15px;
        }

    .story-text h4 {
        font-size: 18px;
    }

    .story-text p {
        font-size: 15px;
    }

    .features {
        padding: 60px 0 60px 0;
    }

    .features-section {
        padding: 60px 0 30px 0;
    }

    .sec-block-left {
        text-align: center;
    }

    .sec-block {
        flex-direction: column;
    }

    .sec-block-left h3 {
        font-size: 21px;
    }

    .faq-question {
        padding: 7px 13px;
        font-size: 16px;
        align-items: center;
        justify-content: space-between;
    }

        .faq-question .icon {
            width: 32px;
            height: 32px;
            min-width: 34px;
        }

    .pricing-section .subtitle {
        margin: 2px auto 40px;
        font-size: 15px;
        line-height: 1.7em;
    }

    section.pricing-section h2.section-heading {
        margin-bottom: 10px;
    }

    .pricing-list li {
        font-size: 15px;
    }

    .blog-section {
        padding: 50px 0;
    }

    .blog-grid {
        margin-top: 20px;
    }

    .blog-content h3 {
        font-size: 22px;
    }

    .blog-content p {
        line-height: 1.6;
        font-size: 15px;
    }

    .blog-read-more {
        font-size: 16px;
    }

    .blog-section .btn-secondary {
        padding: 15px 33px;
        font-size: 16px;
    }

    h3.contact-subtitle {
        font-size: 21px;
    }

    .contact-info p {
        font-size: 15px;
        line-height: 1.6;
    }

    a.phone-link p {
        font-size: 20px;
    }

    a.phone-link {
        margin: 15px 0;
        display: block;
    }

    .contact-form .form-group {
        flex-direction: column;
    }

        .contact-form .form-group .feild-wrap {
            width: 100%;
        }

    .contact-form {
        padding: 15px;
    }

        .contact-form input, .contact-form select, .contact-form textarea {
            padding: 13px 15px;
            font-size: 14px;
        }

        .contact-form label {
            font-size: 14px;
            margin-bottom: 4px;
        }

        .contact-form button {
            padding: 13px 31px;
            font-size: 15px;
        }

    .footer {
        padding-top: 50px;
    }

    .footer-about p {
        font-size: 15px;
        line-height: 1.6;
        padding-right: 0%;
    }

    .footer-links ul li {
        margin-bottom: 5px;
    }

        .footer-links ul li a {
            font-size: 15px;
        }

    .footer-links h4.footer-links-heading {
        font-size: 22px;
        margin: 0 0 10px 0;
    }

    .custom-row.footer-grid {
        grid-row-gap: 1rem;
    }

    ul.social-links li a {
        background-color: #f3f3f5;
        width: 43px;
        height: 43px;
    }

        ul.social-links li a svg {
            width: 17px;
            height: 17px;
        }

    .footer-bottom p {
        font-size: 14px;
        padding: 0 10px;
    }
}


/* =========================================================
   SHARED: Sticky header + anchor offset (Home & Features)
   ========================================================= */
.header-v1 {
    position: sticky;
    top: 0;
    z-index: 9999;
    background: #fff;
    will-change: transform;
}

    .header-v1 .header-inner {
        min-height: 72px;
    }

    .header-v1.is-stuck {
        box-shadow: 0 8px 24px rgba(2,25,60,.08);
    }

/* account for sticky header when jumping to #anchors */
body {
    scroll-padding-top: 80px;
}

@media (max-width:991px) {
    .header-v1 .header-inner {
        min-height: 60px;
    }

    body {
        scroll-padding-top: 64px;
    }
}

/* Optional compact hero used on Features */
.hero-section.hero-compact {
    padding: 60px 0 40px;
}

/* =========================================================
   FEATURES PAGE: sections, intro text, anchor chips
   ========================================================= */

/* simple alternating section (the Features page uses .stripe) */
.stripe {
    padding: 80px 0;
    background: #fff;
}

    .stripe.alt {
        background: #f3f3f5;
    }

@media (max-width:991px) {
    .stripe {
        padding: 60px 0;
    }
}

/* lead paragraph under the H2 on Features hero */
.lead-sub {
    max-width: 820px;
    margin: 10px auto 0;
    color: #324067;
    line-height: 1.8;
}

/* little chip bar with internal anchors */
.anchor-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: center;
    margin-top: 22px;
}

    .anchor-bar a {
        display: inline-block;
        padding: 10px 14px;
        border: 1px solid var(--secondary-color, #17416b);
        color: var(--secondary-color, #17416b);
        border-radius: 6px;
        font-weight: 600;
        font-family: var(--font-secondary);
    }

        .anchor-bar a:hover {
            background: var(--secondary-color, #17416b);
            color: #fff;
        }

/* =========================================================
   FEATURES PAGE: overview buckets
   ========================================================= */
.bucket-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 30px;
}

.bucket {
    flex: 1 1 calc(33.333% - 12px);
    min-width: 280px;
    background: #fff;
    border: 1px solid #d7d7d7;
    border-radius: 12px;
    padding: 24px 22px;
    box-shadow: 0 3px 0 rgba(0,0,0,.05);
}

    .bucket h3 {
        margin: 0 0 8px;
        font-size: 20px;
        color: #02193c;
        font-family: var(--font-primary);
    }

    .bucket p {
        margin: 0 0 12px;
        font-size: 15px;
        color: #324067;
    }

    .bucket ul {
        margin: 0;
        padding-left: 18px;
        color: #324067;
        font-size: 15px;
        line-height: 1.7;
    }

/* =========================================================
   FEATURES PAGE: deep-dive detail blocks
   ========================================================= */
.detail-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 22px;
}

.detail {
    flex: 1 1 calc(50% - 9px);
    min-width: 320px;
    background: #fff;
    border: 1px solid #d7d7d7;
    border-radius: 12px;
    padding: 22px;
}

    .detail h4 {
        margin: 0 0 8px;
        font-size: 18px;
        color: #02193c;
        font-family: var(--font-primary);
    }

    .detail ul {
        margin: 0;
        padding-left: 18px;
        color: #324067;
        font-size: 15px;
        line-height: 1.8;
    }

/* responsive collapse for buckets/details */
@media (max-width:991px) {
    .bucket {
        flex: 1 1 100%;
    }

    .detail {
        flex: 1 1 100%;
    }
}


/* ===== Features: image hero ===== */
.page-banner {
    position: relative;
    background-size: cover;
    background-position: center;
    color: #fff;
    padding: 140px 0;
}

    .page-banner::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(to bottom, rgba(0,0,0,.15), rgba(0,0,0,.35));
    }

    .page-banner .container {
        position: relative;
        z-index: 1;
    }

    .page-banner .page-title h2 {
        margin: 0;
        font-family: var(--font-primary);
        font-weight: 800;
        letter-spacing: -.3px;
        line-height: 1.1;
        font-size: 45px;
    }

@media (max-width: 991px) {
    .page-banner {
        padding: 100px 0;
    }

        .page-banner .page-title h2 {
            font-size: 34px;
        }
}


/* ===== Header CTA buttons (uniform size, rounded corners) ===== */
.header-right .btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 44px; /* same height for both */
    padding: 0 22px; /* consistent horizontal padding */
    border-radius: 10px; /* rounded corners */
    font-weight: 700;
    font-size: 16px;
    line-height: 1;
    text-decoration: none;
}

/* Sign Up = solid blue with white text */
.header-right .btn-sign-up {
    background: var(--secondary-color);
    color: #fff !important;
    border: 2px solid var(--secondary-color);
}

    .header-right .btn-sign-up:hover {
        background: var(--btn-color); /* brand orange on hover */
        border-color: var(--btn-color);
    }

/* Log in = white with blue border and blue text */
.header-right .btn-login {
    background: #fff;
    color: var(--secondary-color) !important;
    border: 2px solid var(--secondary-color);
}

    .header-right .btn-login:hover {
        background: var(--secondary-color);
        color: #fff !important;
    }

/* Optional: make mobile slide-menu CTAs match the style */
.mobile-slide-menu .mobile-btn .btn-login,
.mobile-slide-menu .mobile-btn .btn-sign-up {
    display: block;
    width: 100%;
    text-align: center;
    height: 44px;
    padding: 0 18px;
    border-radius: 10px;
}

.mobile-slide-menu .mobile-btn + .mobile-btn {
    margin-top: 10px;
}

/* Space between header buttons */
.header-right {
    display: flex; /* already set, but harmless if repeated */
    align-items: center;
    gap: 12px; /* primary spacing */
}

    /* Fallback spacing for older flexbox engines (optional) */
    .header-right .btn + .btn {
        margin-left: 12px;
    }


/* ----- Benefits Summary (card look) ----- */
.sbw-benefits {
    background: #fff;
    border: 1px solid #d7d7d7;
    border-radius: 12px;
    padding: 28px 26px;
    box-shadow: 0 3px 0 rgba(0,0,0,.05);
    max-width: 1100px;
    margin: 10px auto 40px;
}

    /* Typography + rhythm (scoped so it won’t leak) */
    .sbw-benefits h2 {
        margin: 18px 0 10px;
        font-size: 28px;
        line-height: 1.25;
        color: #02193c;
    }

        .sbw-benefits h2:first-child {
            margin-top: 0;
        }

    .sbw-benefits h3 {
        margin: 26px 0 10px;
        font-size: 20px;
        color: #02193c;
    }

    .sbw-benefits h4 {
        margin: 22px 0 10px;
        font-size: 18px;
        color: #02193c;
    }

    .sbw-benefits p {
        margin: 0 0 14px;
        color: #324067;
        line-height: 1.8;
    }

    /* Lists */
    .sbw-benefits ul {
        margin: 8px 0 20px;
        padding-left: 22px; /* consistent bullets */
        color: #324067;
    }

    .sbw-benefits li {
        margin: 6px 0;
    }

    /* Callouts already present in your HTML */
    .sbw-benefits p.sbw-compliment {
        background: #f7f9fc;
        border-left: 4px solid #17416b;
        padding: 12px 16px;
        border-radius: 8px;
        margin: 12px 0 16px;
        color: #233255;
    }

    .sbw-benefits p.sbw-close {
        background: #f3f5f9;
        border: 1px solid #e6e8ee;
        border-radius: 10px;
        padding: 14px 16px;
        font-weight: 600;
        color: #233255;
        margin-top: 18px;
    }

/* Small screens */
@media (max-width: 991px) {
    .sbw-benefits {
        padding: 22px 18px;
    }

        .sbw-benefits h2 {
            font-size: 24px;
        }

        .sbw-benefits h3 {
            font-size: 18px;
        }

        .sbw-benefits h4 {
            font-size: 16px;
        }
}


/* ===== AI benefits result: no border, no bullets ===== */
.sbw-summary {
    max-width: 960px;
    margin: 16px auto 0;
    padding: 0; /* no padded “card” look */
    background: transparent; /* blend into page */
    border: none !important; /* kill any inherited border */
    box-shadow: none !important; /* kill any shadow */
    border-radius: 0; /* square */
}

    /* Remove bullets and left indent for lists inside the result */
    .sbw-summary ul {
        list-style: none; /* no bullets */
        padding-left: 0; /* align with body text */
        margin-left: 0;
    }

    /* Make list items read nicely without bullets */
    .sbw-summary li {
        margin: 8px 0;
    }

        /* If any theme sets markers directly, neutralize it */
        .sbw-summary li::marker {
            content: "";
        }

    /* Keep the nice compliment callout styling (optional) */
    .sbw-summary .sbw-compliment {
        background: #eef5ff;
        border-left: 4px solid #17416b;
        padding: 14px 16px;
        border-radius: 6px;
        margin: 16px 0;
    }
