@import "../components/student-demo-modal.css";
@import "../components/gartner-banner.css";
@import "../components/hero-cards.css";
@import "../components/trusted-logos-section.css";
@import "../components/use-case-slider.css";

.homepage--hero {
    background: #E8F4FC;
    padding-top: 112px;
    padding-bottom: 40px;
}

.homepage--hero-title {
    background: -webkit-linear-gradient(1.35deg, #1E4DC6 13.76%, #011C35 93.46%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 900;
    font-size: 40px;
    line-height: 1.2;
    text-align: center;
    max-width: 900px;
    margin: 0 auto 24px;
}

.homepage--hero-subtitle {
    color: #011C35;
    font-weight: 600;
    font-size: 16px;
    line-height: 1.5;
    text-align: center;
    max-width: 900px;
    margin: 0 auto 56px;
}

.homepage--hero--cards-container {
    margin-bottom: 56px;
}

.homepage-activelock-section .download-disclaimer {
    color: #8399B0;
}

.homepage-section--title {
    font-weight: 800;
    font-size: 26px;
    line-height: 1.2;
    text-align: center;
    color: #011C35;
    max-width: 840px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 48px;
}

.homepage-activelock-section {
    padding-top: 80px;
    padding-bottom: 80px;
}

.homepage--al-section--context {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 56px;
}

.homepage--al-section--paragraph {
    font-weight: 500;
    font-size: 15px;
    line-height: 27px;
    text-align: center;
    color: #3B556E;
    margin-bottom: 16px;
}

.homepage--al-section--paragraph:last-of-type {
    margin-bottom: 32px;
}

.download-cta-wrapper {
    row-gap: 16px;
}

.product-pill {
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 32px;
}

.verify-2fa-section-row .product-pill {
    margin-bottom: 8px;
}

.homepage--al-section--product-pill--tag {
    background: #011C35;
    border-radius: 2px;
    font-weight: 600;
    font-size: 12px;
    line-height: 18px;
    color: #FFFFFF;
    padding: 2px 6px;
    text-decoration: none;
}

/* frost */

.homepage-activelock-section.frost h2 {
    text-align: center;
    font-size: 24px;
    font-weight: 800;
    line-height: 140%;
    color: #011C35;
    padding: 40px 0 16px;
}

.homepage-activelock-section.frost .activelock-section--row {
    background: #e8f4fc;
    border-radius: 48px;
    padding: 40px;
    margin: 15px 0;
    justify-content: center;
    text-align: center;
}

.homepage-activelock-section.frost {
    padding-bottom: 0;
}

.homepage-activelock-section.frost .img-fluid {
    margin-top: 24px;
    max-width: 300px;
}

/* trusted partners */
.trusted-partners {
    display: grid;
    grid-template-columns: unset;
    grid-template-rows: unset;
    align-items: center;
    gap: 12px;
}

.trusted-partners .break {
    flex-basis: 100%;
    margin: 0;
    padding: 0;
    width: 0;
    height: 0;
  }

.trusted-partners .trusted-text {
    font-weight: bold;
    font-size: 15px;
    line-height: normal;
    color: #011C35;
    margin: 0;
    text-align: center;
    width: 100%;
}

.trusted-partners .partners-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 25px;
}

.trusted-partners .partner {
    width: auto;
    max-width: 100%;
    max-height: 26px;
}

.trusted-partners .partner.webhelp-custom {
    width: auto;
    height: 30px;
}

.trusted-partners .partner.microsoft-azurei-custom {
    width: auto;
    height: 18px;
}

.trusted-partners .partner.openlearning-custom {
    width: auto;
    height: 36px;
    max-height: 100%;
}

.trusted-partners .partner.bbva {
    width: auto;
    height: 20px;
}

.trusted-partners .partner.greathorn-custom {
    width: auto;
    height: 16px;
}

.trusted-partners .partner.omniasig-custom {
    width: auto;
    height: 24px;
}

.trusted-partners .partner.elrond-custom {
    width: auto;
    height: 18px;
}

.trusted-partners .partner.tec360-custom {
    max-height: 28px;
}

.trusted-partners .partner.netbr-custom {
    width: auto;
    height: 18px;
}

.trusted-partners .partner.wso2-custom {
    height: 24px;
}

.trusted-partners .partner.cursor-insight-custom {
    height: 24px;
}

.trusted-partners .partner.intellectual-data-custom {
    height: 24px;
}

.trusted-partners .trusted-big-screens {
    display: none;
}

.trusted-partners .trusted-small-screens {
    display: block;
}

/* (end) trusted partners */

.section-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 64px;
}

.verify-2fa-section--product-pill--tag {
    background: linear-gradient(261.05deg, #0064C0 0%, #2750E1 58.1%, #0064C0 99.58%);
    border-radius: 2px;
    font-weight: 600;
    font-size: 12px;
    line-height: 18px;
    color: #FFFFFF;
    padding: 2px 6px;
    text-decoration: none;
}

.info-title {
    font-weight: 700;
    font-size: 14px;
    line-height: 1.9;
    color: #011C35;
    text-align: center;
    margin-top: 0;
    margin-bottom: 24px;
}

.info-title a {
    font-weight: 700;
    color: #011C35;
    margin: 0;
}

.info-description {
    font-weight: 500;
    font-size: 15px;
    line-height: 1.8;
    color: #3B556E;
    text-align: center;
    margin-bottom: 16px;
}

.homepage-learn-more {
    white-space: nowrap;
    font-weight: 700;
}

.info-description:last-of-type {
    margin-bottom: 32px;
}

.homepage-activelock-section .desktop-demo-video {
    margin-bottom: 16px;
}

.homepage-verify-2fa-section {
    padding-top: calc(80px + 40px);
    padding-bottom: 80px;
    margin-top: -40px;
}

.verify-2fa-section--img {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: auto;
    max-width: 400px;
    margin: 0 auto;
}

/* request demo email input */
.request-demo-form {
    display: flex;
    align-items: center;
    flex-direction: column;
    width: 100%;
    padding: 0;
    border: none;
    background: transparent;
    box-sizing: border-box;
}

.request-demo-form:hover {
    cursor: pointer;
    border-color: #0064C0;
}

.request-demo-form:focus-within {
    cursor: pointer;
    border-color: #0064C0;
}

.request-demo-form--input {
    flex: 1;
    color: #011C35;
    width: 100%;
    padding: 16px;
    border: 1px solid #8399B0;
    box-sizing: border-box;
    border-radius: 12px;
    margin-bottom: 24px;
    font-size: 14px;
}

.request-demo-form--input:focus {
    outline: none;
}

.request-demo-form--input::placeholder {
    color: #3B556E;
}

.request-demo-form--button {
    background-color: #FF7F00;
    color: #FFFFFF;
    font-size: 15px;
    line-height: 22px;
    font-weight: 700;
    padding: 8px 24px;
    border: none;
    border-radius: 8px;
}

.request-demo-form--button:focus,
.request-demo-form--button:hover,
.request-demo-form--button:visited {
    color: #FFFFFF;
    outline: none;
    text-decoration: none;
}
/* request demo email input (end) */

/* how it works banner */
.how-does-it-work-banner-section {
    background: #011C35;
    padding-top: 40px;
    padding-bottom: 40px;
}

.how-does-it-work-banner-section .latest-news {
    margin-left: 10px; 
    margin-right: 10px;
}

.how-does-it-work-banner-section .latest-news ul {
    list-style-type: disc; 
    margin-left: 20px; 
    line-height: 2;
}

.how-deos-it-work-banner {
    display: grid;
    grid-template-columns: unset;
    grid-template-rows: repeat(3, auto);
    justify-items: center;
    align-items: center;
    gap: 24px;
}

.banner-title {
    font-weight: 800;
    font-size: 26px;
    line-height: 1.4;
    text-align: center;
    color: #FFFFFF;
    margin: 0;
}

.typing-hands {
    width: 168px;
    height: auto;
    max-width: 100%;
}

.how-does-it-work-banner-section .latest-news h4 {
    text-align: center;
}

.banner-description {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.9;
    color: #FFFFFF;
    text-align: center;
    margin: 0;
}
/* (end) how it works banner */

.use-case-general-section {
    background-color: #011C35;
    clip-path: polygon(0 40px, 0 100%, 100% calc(100% - 40px), 100% 0);
    padding-top: calc(80px + 40px);
    padding-bottom: calc(80px + 40px);
    margin-bottom: 0;
}

.use-case-general-title {
    font-weight: 800;
    font-size: 26px;
    line-height: 1.4;
    color: #FFFFFF;
    margin-bottom: 48px;
}

.buttons-wrapper {
    display: grid;
    margin-bottom: 0;
    grid-template-columns: unset;
    grid-template-rows: repeat(3, auto);
}

.use-case-button,
.use-case-button:focus {
    padding: 24px;
    background: #0A60C8;
    border: none;
    border-radius: 0;
    margin-bottom: 2px;
    cursor: pointer;
    transition: all .1s;
}

.use-case-button span,
.use-case-button:focus span {
    color: #e8f4fcb3;
    font-weight: 800;
    font-size: 15px;
    line-height: 1.9;
    text-align: center;
    margin: 0;
}

.use-case-button:first-of-type {
    border-radius: 8px 8px 0 0;
}

.use-case-button:last-of-type {
    border-radius: 0 0 8px 8px;
}

.use-case-button:hover span {
    color: #FFFFFF;
}

.use-case-button.active {
    background: #FFFFFF;
}

.use-case-button.active span {
    color: #011C35;
}

.ucg-container {
    display: none;
}

.ucg-slider {
    position: relative;
    min-height: 808px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.carousel-track {
    transition: transform 400ms ease-in-out;
}

.carousel-slide {
    position: absolute;
    width: 100%;
    align-items: stretch;
    padding: 0;
}

.current-slide {
    visibility: visible;
}

.ucg-info {
    display: flex;
    flex-direction: column;
    text-align: center;
    margin-bottom: 40px;
}

.ucg-title {
    font-weight: 800;
    font-size: 20px;
    line-height: 1.5;
    color: #FFFFFF;
    margin-top: 0;
    margin-bottom: 16px;
}

.ucg-description {
    font-weight: 500;
    font-size: 15px;
    line-height: 1.8;
    text-align: center;
    color: #E8F4FC;
    margin-bottom: 16px;
}

.ucg-description:last-of-type {
    margin-bottom: 24px;
}

.ucg-cta-link {
    justify-content: center;
}

.ucg-image-col {
    display: flex;
    justify-content: center;
}

.ucg-image {
    width: 100%;
    max-width: 450px;
    height: auto;
}

.homepage-trust-section {
    padding-top: 80px;
    padding-bottom: 80px;
    background-color: #E8F4FC;
}

.trust-banners-wrapper {
    display: grid;
    grid-gap: 24px;
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
    justify-items: center;
}

.techcrunch-banner {
    background-color: #011C35;
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 16px;
    justify-items: center;
    border-radius: 16px;
    padding: 40px;
    width: 100%;
}

.techcrunch-description {
    font-weight: 800;
    font-size: 15px;
    line-height: 1.5;
    display: flex;
    align-items: flex-end;
    text-align: center;
    color: #E8F4FC;
    margin: 0;
    grid-column: span 2;
}

.techcrunch-logo {
    grid-column: span 2;
}

.techcrunch-logo svg {
    height: 26px;
    width: auto;
}

.expert-insights-banner {
    background-color: #011C35;
    box-sizing: border-box;
    border-radius: 16px;
    padding: 40px;
    display: grid;
    grid-template-rows: auto 1fr;
    justify-items: center;
    gap: 20px;
}

.expert-insights--description {
    text-align: center;
}

.expert-insights--description p {
    font-weight: 800;
    font-size: 15px;
    line-height: 1.5;
    color: #E8F4FC;
    margin: 0;
}

p.expert-insights--date {
    font-weight: 500;
    font-size: 15px;
    line-height: 1.9;
    color: #FFFFFF;
    opacity: 0.5;
    margin-bottom: 4px;
}

.dmv-eba-banner {
    display: grid;
    justify-items: center;
    gap: 36px;
    background: #011C35;
    border-radius: 16px;
    padding: 40px;
}

.dmv-eba-description {
    font-weight: bold;
    font-size: 15px;
    line-height: 24px;
    text-align: center;
    color: #E8F4FC;
    margin-bottom: 0;
}

.dmv-eba-images {
    display: flex;
    justify-content: center;
    align-items: center;
}

.dmv-eba-images .dmv-img {
    width: 40px;
    height: 40px;
    margin-right: 32px;
}

.dmv-eba-images .eba-img {
    width: auto;
    height: 40px;
}
/* quote section */

.activelock-quote-wrapper {
    display: grid;
    grid-template-columns: unset;
    grid-template-rows: unset;
    justify-items: center;
    align-items: center;
    box-sizing: border-box;
    background: #E8F4FC;
    border-radius: 16px;
    margin: 0 auto 64px;
    overflow: hidden;
}

.quote {
    display: grid;
    grid-template-columns: unset;
    align-items: center;
    justify-items: center;
    grid-gap: 24px;
    box-sizing: border-box;
    border: none;
    padding: 24px 16px;
}

.quote--icon {
    width: 48px;
    max-width: 100%;
    height: auto;
}

.quote--icon path {
    fill: #011C35;
}

.quote--text {
    font-weight: 500;
    font-size: 14px;
    line-height: 1.5;
    color: #011C35;
    margin-bottom: 0;
    text-align: center;
}

.quote-author {
    display: grid;
    justify-items: center;
    background: #011C35;
    padding: 24px 16px;
    width: 100%;
}

.quote-author--image-wrapper {
    display: grid;
    grid-template-columns: auto 1fr;
    grid-gap: 16px;
    align-items: center;
}

.quote-author--image {
    position: relative;
    background: linear-gradient(261.05deg, #0064C0 0%, #2750E1 58.1%, #0064C0 99.58%);
    box-sizing: border-box;
    border-radius: 4px;
    margin-left: 2.5px;
}

.quote-author--social-icon {
    position: absolute;
    bottom: 5px;
    right: 5px;
}

.quote-author--image img {
    width: 48px;
    max-width: 100%;
    height: auto;
    box-sizing: border-box;
    border-radius: 4px;
    transform: translate(-2.5px, -2.5px);
}

.quote-author--name {
    font-weight: 800;
    font-size: 15px;
    line-height: 1.5;
    color: #FFFFFF;
    margin: 0;
}

.quote-author--job-title {
    font-weight: 500;
    font-size: 10px;
    line-height: 1.5;
    color: #E8F4FC;
    margin: 0;
}
/* (end) quote section */

@media (min-width: 375px) {
    .card-description {
        font-size: 12px;
    }

    .techcrunch-description,
    .expert-insights--description p {
        font-size: 22px;
    }

    p.expert-insights--date {
        font-size: 15px;
    }    

    /* quote section */
    .quote-author--job-title {
        font-size: 12px;
    }
    /* (end) quote section */
}

@media (min-width: 480px) {
    .request-demo-form {
        flex-direction: row;
        background-color: #FFFFFF;
        padding: 8px;
        border: 1px solid #8399B0;
        border-radius: 12px;
    }

    .request-demo-form--input {
        padding: 8px;
        border: none;
        margin: 0;
    }

    .trusted-partners .trusted-text {
        width: 100%;
        text-align: center;
    }
}

@media (min-width: 576px) {

    .homepage--hero-title {
        font-size: 48px;
    }

    .homepage--hero-subtitle {
        font-size: 24px;
    }

    .homepage--hero--cards-container {
        margin-bottom: 40px;
    }

    .homepage-section--title {
        font-size: 32px;
    }

    .use-case-general-title {
        font-size: 32px;
    }

    .ucg-title {
        font-size: 26px;
    }
}

@media (min-width: 768px) {

    .homepage--hero {
        padding-top: 128px;
    }

    .homepage--hero-title {
        font-size: 70px;
    }

    .homepage-section--title,
    .use-case-general-title {
        font-size: 40px;
        margin-bottom: 56px;
    }

    .homepage--al-section--paragraph {
        text-align: start;
    }

    .verify-2fa-section--img {
        max-width: 100%;
    }

    /* trusted partners */
    .trusted-partners .partner {
        /* width: 143px; */
    }
    /* (end) trusted partners */

    .ucg-container {
        overflow: hidden;
        display: block;
    }

    .buttons-wrapper {
        grid-template-columns: repeat(3, 1fr);
        grid-gap: 2px;
        margin-bottom: 80px;
    }

    .use-case-button,
    .use-case-button:focus {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 0;
    }

    .use-case-button:first-of-type {
        border-radius: 8px 0 0 8px;
    }

    .use-case-button:last-of-type {
        border-radius: 0 8px 8px 0;
    }

    .ucg-slider {
        min-height: 460px;
    }

    .ucg-info {
        text-align: left;
        margin-bottom: 0;
    }

    .ucg-description {
        text-align: left;
    }

    .ucg-cta-link {
        justify-content: flex-start;
    }

    .ucg-image {
        width: 100%;
        max-width: 100%;
    }

    .homepage-trust-section {
        padding-top: 128px;
        padding-bottom: 128px;
    }
}

@media (min-width: 992px) {
    .homepage-activelock-section.frost h2 {
        text-align: left;
        font-size: 32px;
    }

    .homepage-activelock-section.frost .activelock-section--row {
     text-align: left;
     padding: 40px 0;

    }

    .homepage--hero-title {
        font-size: 80px;
    }

    .homepage-activelock-section {
        padding-top: 128px;
        padding-bottom: 128px;
    }

    .homepage-section--title,
    .use-case-general-title {
        font-size: 50px;
        margin-bottom: 80px;
    }

    .activelock-section--row {
        align-items: center;
    }

    .homepage--al-section--context {
        align-items: flex-start;
        margin-top: 0;
    }

    .product-pill {
        justify-content: flex-start;
    }

    .homepage--al-section--context .download-cta-wrapper {
        justify-content: flex-start;
    }

    .use-case-general-section {
        clip-path: polygon(0 72px, 0 100%, 100% calc(100% - 72px), 100% 0);
        padding-top: calc(128px + 72px);
        padding-bottom: calc(128px + 72px);
        margin-bottom: 0;
    }

    .carousel-slide {
        align-items: center;
    }

    .use-case-button span,
    .use-case-button:focus span {
        font-size: 20px;
    }

    .verify-2fa-section-row {
        display: flex;
        align-items: center;
    }

    .homepage-verify-2fa-section {
        padding-top: calc(128px + 72px);
        padding-bottom: 128px;
        margin-top: -72px;
    }

    .section-info {
        align-items: flex-start;
        margin-top: 0;
    }

    .info-title {
        text-align: left;
    }

    .info-description {
        text-align: left;
    }

    /* how it works banner */
    .how-deos-it-work-banner {
        display: grid;
        grid-template-columns: repeat(3, auto);
        grid-template-rows: unset;
        gap: 48px;
    }

    .banner-title {
        text-align: left;
        max-width: 240px;
    }

    .how-does-it-work-banner-section .latest-news h4 {
        text-align: left;
    }

    .banner-description {
        text-align: left;
    }

    .how-does-it-work-banner-section .latest-news {
        margin-left: 50px;
        margin-right: 50px;
    }
    /* (end) how it works banner */

    .ucg-slider {
        min-height: 432px;
    }

    .trust-banners-wrapper {
        grid-template-columns: 400px 1fr;
        max-width: 100%;
    }

    .techcrunch-banner {
        justify-items: flex-start;
    }

    .techcrunch-description {
        text-align: left;
    }

    .expert-insights-banner {
        justify-items: flex-start;
    }

    .expert-insights--description {
        text-align: left;
    }

    .dmv-eba-banner {
        grid-column: span 1;
        justify-items: flex-start;
    }

    .dmv-eba-description {
        text-align: left;
    }

    /* quote section */
    .quote-row {
        display: flex;
        align-items: center;
    }
    /* (end) quote section */
}

@media (min-width: 1200px) {

    .homepage-activelock-section.frost .img-fluid {
        margin-top: 0;
        max-width: 480px;
    }

    /* trusted partners */

    .trusted-partners .partners-wrapper {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 30px;
        margin-bottom: 20px;
    }
    
    .trusted-partners .partner {
        width: auto;
        max-width: 100%;
        max-height: 26px;
    }

    .trusted-partners .trusted-big-screens {
        display: block;
    }

    .trusted-partners .trusted-small-screens {
        display: none;
    }

    .trusted-partners .partners-wrapper {
        justify-content: space-between;
    }

    .trusted-partners .trusted-text {
        text-align: left;
    }
    /* (end) trusted partners */

    /* quote section */
    .activelock-quote-wrapper {
        grid-template-columns: repeat(12, 1fr);
        grid-template-rows: unset;
    }

    .quote {
        grid-template-columns: auto 1fr;
        grid-column: span 8;
        justify-items: start;
        gap: 16px;
        width: 100%;
        padding: 16px 40px;
        margin-bottom: 0;
    }

    .quote--text {
        max-width: 600px;
        text-align: left;
    }

    .quote-author {
        justify-items: start;
        grid-column: span 4;
    }
    /* (end) quote section */

    .ucg-slider {
        min-height: 574px;
    }

    .trust-banners-wrapper {
        grid-template-columns: auto 1fr 1fr;
        max-width: 100%;
    }

    .techcrunch-banner {
        grid-column: span 2;
        grid-template-columns: 624px auto;
        justify-items: flex-end;
    }

    .techcrunch-description {
        grid-column: span 1;
    }

    .expert-insights-banner {
        justify-items: flex-end;
    }

    .dmv-eba-banner {
        justify-items: flex-end;
    }
}

@media (min-width: 1400px) {
    .quote {
        gap: 24px;
        padding: 16px 48px;
    }
}
