/* ==========================================================
   ALLINCLUSIVE. HOMEPAGE V3
   Premium creative-tech / knowledge platform layer
   ========================================================== */

:root {
    --ai3-black: #0d0f10;
    --ai3-black-2: #131516;
    --ai3-black-3: #191b1d;

    --ai3-paper: #f2f0eb;
    --ai3-white: #fbfaf7;
    --ai3-ink: #111315;

    --ai3-red: #e73726;
    --ai3-red-soft: #f15d4e;

    --ai3-line-light: rgba(18,20,22,.11);
    --ai3-line-dark: rgba(255,255,255,.105);

    --ai3-muted: rgba(20,22,24,.62);
    --ai3-muted-dark: rgba(255,255,255,.58);
}


/* ==========================================================
   GLOBAL V3
   ========================================================== */

.ai3-home {
    background: var(--ai3-white);
    color: var(--ai3-ink);
}

.ai3-section {
    padding: 104px 0;
}

.ai3-section--paper {
    background: var(--ai3-paper);
}

.ai3-section--light {
    background: var(--ai3-white);
}

.ai3-display {
    max-width: 880px;

    margin: 10px 0 0;

    color: var(--ai3-ink);

    font-size: clamp(42px, 5vw, 76px);
    font-weight: 600;
    letter-spacing: -.045em;
    line-height: .98;
}

.ai3-display span {
    display: block;
    color: rgba(17,19,21,.44);
}

.ai3-display--light {
    color: #fff;
}

.ai3-display--light span {
    color: rgba(255,255,255,.46);
}

.ai3-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 70px;

    margin-bottom: 46px;
}

.ai3-section-head > p {
    width: min(430px, 100%);
    margin: 0;

    color: var(--ai3-muted);

    font-size: 16px;
    line-height: 1.65;
}

.ai3-section-head--dark > p {
    color: var(--ai3-muted-dark);
}

.ai3-text-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    color: var(--ai3-ink);

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

    text-decoration: none;
}

.ai3-text-link:hover {
    color: var(--ai3-red);
}

.ai3-text-link--light {
    color: #fff;
}


/* ==========================================================
   HERO
   ========================================================== */

.ai3-hero {
    position: relative;

    overflow: hidden;

    padding:
        118px 0
        0;

    background: var(--ai3-black);

    color: #fff;
}

.ai3-hero__grid {
    position: absolute;
    inset: 0;

    pointer-events: none;

    opacity: .2;

    background-image:
        linear-gradient(
            rgba(255,255,255,.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255,255,255,.045) 1px,
            transparent 1px
        );

    background-size: 64px 64px;

    mask-image:
        linear-gradient(
            to bottom,
            black 0,
            transparent 76%
        );
}

.ai3-hero__glow {
    position: absolute;

    right: -200px;
    top: -220px;

    width: 700px;
    height: 700px;

    border-radius: 50%;

    pointer-events: none;

    background:
        radial-gradient(
            circle,
            rgba(231,55,38,.19) 0,
            rgba(231,55,38,.055) 35%,
            transparent 69%
        );
}

.ai3-hero__layout {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns:
        minmax(0, 1.12fr)
        minmax(400px, .88fr);

    gap: 82px;

    align-items: center;
}

.ai3-hero__title {
    margin:
        20px 0
        30px;

    color: #fff;

    font-size: clamp(58px, 7.4vw, 114px);
    font-weight: 600;

    letter-spacing: -.06em;
    line-height: .87;
}

.ai3-hero__title > span {
    display: block;
}

.ai3-hero__title-secondary {
    margin-top: 10px;

    color: rgba(255,255,255,.48);
}

.ai3-hero__lead {
    max-width: 690px;

    margin: 0;

    color: rgba(255,255,255,.68);

    font-size: clamp(18px, 1.65vw, 23px);
    line-height: 1.45;
}

.ai3-hero__actions {
    margin-top: 33px;
}

.ai3-hero__ask {
    display: inline-flex;
    align-items: center;
    gap: 11px;

    margin-top: 24px;
    padding: 0;

    border: 0;
    background: none;

    color: rgba(255,255,255,.56);

    font: inherit;
    font-size: 11px;
    line-height: 1.4;

    text-align: left;

    cursor: pointer;
}

.ai3-hero__ask:hover {
    color: #fff;
}

.ai3-hero__ask strong {
    color: #fff;
}

.ai3-hero__ask-mark {
    display: grid;
    place-items: center;

    width: 28px;
    height: 28px;

    flex: 0 0 auto;

    border-radius: 9px;

    background: var(--ai3-red);

    color: #fff;
}

.ai3-hero__meta {
    position: relative;
    z-index: 2;

    display: grid;
    grid-template-columns:
        repeat(4, 1fr);

    margin-top: 82px;

    border-top: 1px solid var(--ai3-line-dark);
}

.ai3-hero__meta > div {
    display: grid;
    gap: 5px;

    padding: 23px 24px 27px;

    border-right:
        1px solid
        var(--ai3-line-dark);
}

.ai3-hero__meta > div:first-child {
    padding-left: 0;
}

.ai3-hero__meta > div:last-child {
    border-right: 0;
}

.ai3-hero__meta strong {
    color: #fff;

    font-size: 15px;
    font-weight: 650;
}

.ai3-hero__meta span {
    color: rgba(255,255,255,.40);

    font-size: 10px;
    letter-spacing: .02em;
}


/* Hero system visual */

.ai3-system {
    padding: 22px;

    border: 1px solid var(--ai3-line-dark);
    border-radius: 22px;

    background:
        rgba(255,255,255,.025);

    box-shadow:
        0 40px 90px
        rgba(0,0,0,.22);
}

.ai3-system__topline {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-bottom: 16px;

    color: rgba(255,255,255,.40);

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

    letter-spacing: .12em;
    text-transform: uppercase;
}

.ai3-system__topline i {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #2bd66f;

    box-shadow:
        0 0 12px
        rgba(43,214,111,.5);
}

.ai3-system__canvas {
    position: relative;

    display: grid;
    grid-template-columns:
        1fr 110px 1fr;
    grid-template-rows:
        1fr 110px 1fr;

    gap: 8px;

    min-height: 398px;

    padding: 8px;
}

.ai3-system__node {
    position: relative;
    z-index: 2;

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

    min-height: 125px;

    padding: 17px;

    border: 1px solid var(--ai3-line-dark);
    border-radius: 14px;

    background: rgba(255,255,255,.025);
}

.ai3-system__node small {
    position: absolute;
    top: 14px;
    right: 14px;

    color: rgba(255,255,255,.28);

    font-size: 8px;
}

.ai3-system__node strong {
    color: #fff;

    font-size: 16px;
}

.ai3-system__node span {
    margin-top: 3px;

    color: rgba(255,255,255,.42);

    font-size: 9px;
}

.ai3-system__node--search {
    grid-column: 1;
    grid-row: 1;
}

.ai3-system__node--acquire {
    grid-column: 3;
    grid-row: 1;
}

.ai3-system__node--build {
    grid-column: 1;
    grid-row: 3;
}

.ai3-system__node--design {
    grid-column: 3;
    grid-row: 3;
}

.ai3-system__core {
    position: relative;
    z-index: 3;

    grid-column: 2;
    grid-row: 2;

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

    border-radius: 50%;

    background: var(--ai3-red);

    color: #fff;

    box-shadow:
        0 0 45px
        rgba(231,55,38,.20);
}

.ai3-system__core span {
    font-size: 12px;
    font-weight: 800;

    letter-spacing: .08em;
}

.ai3-system__core strong {
    margin: 1px 0;

    font-size: 14px;
}

.ai3-system__line {
    position: absolute;

    left: 50%;
    top: 50%;

    width: 66%;
    height: 1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(231,55,38,.46),
            transparent
        );

    transform-origin: center;
}

.ai3-system__line--a {
    transform:
        translate(-50%,-50%)
        rotate(32deg);
}

.ai3-system__line--b {
    transform:
        translate(-50%,-50%)
        rotate(-32deg);
}

.ai3-system__footer {
    display: flex;
    align-items: center;
    justify-content: center;

    gap: 9px;

    padding-top: 15px;

    border-top: 1px solid var(--ai3-line-dark);

    color: rgba(255,255,255,.34);

    font-size: 8px;
    letter-spacing: .07em;
    text-transform: uppercase;
}


/* ==========================================================
   TRUST STRIP
   ========================================================== */

.ai3-trust {
    padding: 27px 0 31px;

    border-top: 1px solid rgba(255,255,255,.07);

    background: var(--ai3-black);
}

.ai3-trust__heading {
    margin-bottom: 23px;

    color: rgba(255,255,255,.30);

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

    letter-spacing: .14em;
    text-transform: uppercase;
}

.ai3-trust__logos {
    display: grid;
    grid-template-columns:
        repeat(6, 1fr);

    align-items: center;

    gap: 28px;
}

.ai3-trust__logos img {
    width: 100%;
    max-width: 122px;
    max-height: 31px;

    margin: auto;

    object-fit: contain;

    filter:
        grayscale(1)
        brightness(2.2);

    opacity: .47;

    transition:
        opacity .18s ease,
        transform .18s ease;
}

.ai3-trust__logos img:hover {
    opacity: .9;

    transform:
        translateY(-1px);
}


/* ==========================================================
   POSITIONING
   ========================================================== */

.ai3-editorial-split {
    display: grid;
    grid-template-columns:
        1.2fr
        .8fr;

    gap: 100px;

    align-items: end;
}

.ai3-editorial-copy {
    padding-bottom: 4px;

    color: var(--ai3-muted);

    font-size: 16px;
    line-height: 1.68;
}

.ai3-editorial-copy p {
    margin:
        0 0 17px;
}

.ai3-editorial-copy strong {
    color: var(--ai3-ink);
}

.ai3-system-strip {
    display: flex;
    align-items: center;

    gap: 18px;

    margin-top: 63px;
    padding-top: 23px;

    border-top:
        1px solid
        var(--ai3-line-light);

    color: rgba(17,19,21,.52);

    font-size: 11px;
    font-weight: 650;

    letter-spacing: .04em;
}

.ai3-system-strip i {
    display: block;

    width: 4px;
    height: 4px;

    border-radius: 50%;

    background: rgba(17,19,21,.25);
}

.ai3-system-strip strong {
    margin-left: auto;

    color: var(--ai3-red);

    font-size: 10px;
}


/* ==========================================================
   CAPABILITIES
   ========================================================== */

.ai3-capabilities {
    border-top:
        1px solid
        var(--ai3-line-light);
}

.ai3-capability {
    display: grid;
    grid-template-columns:
        70px
        minmax(260px, .8fr)
        minmax(300px, 1.1fr)
        190px;

    gap: 32px;

    align-items: start;

    padding:
        35px 0;

    border-bottom:
        1px solid
        var(--ai3-line-light);
}

.ai3-capability__number {
    color: rgba(17,19,21,.27);

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

.ai3-capability h3 {
    margin:
        -4px 0
        8px;

    color: var(--ai3-ink);

    font-size: 27px;
    letter-spacing: -.025em;
}

.ai3-capability p {
    max-width: 390px;

    margin: 0;

    color: var(--ai3-muted);

    font-size: 12px;
    line-height: 1.55;
}

.ai3-capability__links {
    display: flex;
    flex-wrap: wrap;

    gap:
        7px
        8px;
}

.ai3-capability__links a {
    padding:
        7px 10px;

    border:
        1px solid
        var(--ai3-line-light);

    border-radius: 999px;

    color: rgba(17,19,21,.66);

    font-size: 9px;
    font-weight: 650;

    text-decoration: none;
}

.ai3-capability__links a:hover {
    border-color:
        rgba(231,55,38,.30);

    color: var(--ai3-red);
}

.ai3-capability__main {
    display: flex;
    align-items: center;
    justify-content: space-between;

    padding:
        12px 0;

    border-bottom:
        1px solid
        rgba(17,19,21,.24);

    color: var(--ai3-ink);

    font-size: 11px;
    font-weight: 750;

    text-decoration: none;
}

.ai3-capability__main:hover {
    border-color:
        var(--ai3-red);

    color:
        var(--ai3-red);
}


/* ==========================================================
   KNOWLEDGE
   ========================================================== */

.ai3-knowledge {
    position: relative;

    overflow: hidden;

    background:
        var(--ai3-black);

    color: #fff;
}

.ai3-knowledge::before {
    content: "";

    position: absolute;

    right: -180px;
    top: -260px;

    width: 670px;
    height: 670px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(231,55,38,.14),
            transparent 69%
        );

    pointer-events: none;
}

.ai3-knowledge__intro {
    position: relative;
    z-index: 1;

    display: grid;
    grid-template-columns:
        1.15fr
        .85fr;

    gap: 100px;

    align-items: end;

    margin-bottom: 55px;
}

.ai3-knowledge__intro > div:last-child {
    padding-bottom: 7px;
}

.ai3-knowledge__count {
    display: block;

    margin-bottom: 6px;

    color: #fff;

    font-size: 64px;
    font-weight: 500;

    letter-spacing: -.05em;
    line-height: 1;
}

.ai3-knowledge__intro p {
    max-width: 470px;

    margin:
        0 0
        18px;

    color: var(--ai3-muted-dark);

    font-size: 13px;
    line-height: 1.62;
}

.ai3-knowledge-grid {
    position: relative;
    z-index: 1;

    display: grid;
    grid-template-columns:
        repeat(4, 1fr);

    border-top:
        1px solid
        var(--ai3-line-dark);

    border-left:
        1px solid
        var(--ai3-line-dark);
}

.ai3-knowledge-card {
    min-height: 330px;

    display: flex;
    flex-direction: column;

    padding: 27px;

    border-right:
        1px solid
        var(--ai3-line-dark);

    border-bottom:
        1px solid
        var(--ai3-line-dark);

    color: #fff;

    text-decoration: none;

    transition:
        background .18s ease;
}

.ai3-knowledge-card:hover {
    background:
        rgba(255,255,255,.035);
}

.ai3-knowledge-card > span {
    color: rgba(255,255,255,.34);

    font-size: 9px;
    font-weight: 650;

    letter-spacing: .07em;
    text-transform: uppercase;
}

.ai3-knowledge-card h3 {
    margin:
        42px 0
        13px;

    color: #fff;

    font-size: 25px;
    letter-spacing: -.025em;
}

.ai3-knowledge-card p {
    margin: 0;

    color: rgba(255,255,255,.49);

    font-size: 11px;
    line-height: 1.62;
}

.ai3-knowledge-card strong {
    margin-top: auto;

    color: rgba(255,255,255,.72);

    font-size: 10px;
}


/* ==========================================================
   PROBLEM GRID
   ========================================================== */

.ai3-problem-grid {
    display: grid;
    grid-template-columns:
        repeat(4, 1fr);

    border-top:
        1px solid
        var(--ai3-line-light);

    border-left:
        1px solid
        var(--ai3-line-light);
}

.ai3-problem {
    position: relative;

    min-height: 190px;

    display: flex;
    flex-direction: column;

    padding: 22px;

    border-right:
        1px solid
        var(--ai3-line-light);

    border-bottom:
        1px solid
        var(--ai3-line-light);

    color: var(--ai3-ink);

    text-decoration: none;

    transition:
        background .18s ease;
}

.ai3-problem:hover {
    background:
        rgba(255,255,255,.64);
}

.ai3-problem small {
    color: rgba(17,19,21,.35);

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

    letter-spacing: .09em;
    text-transform: uppercase;
}

.ai3-problem strong {
    max-width: 210px;

    margin-top: 28px;

    font-size: 18px;
    line-height: 1.18;
}

.ai3-problem > span {
    margin-top: auto;

    color: var(--ai3-red);

    font-size: 15px;
}


/* ==========================================================
   ASK SECTION
   ========================================================== */

.ai3-ask-section {
    background: var(--ai3-white);
}

.ai3-ask {
    position: relative;

    overflow: hidden;

    display: grid;
    grid-template-columns:
        .82fr
        1.18fr;

    gap: 85px;

    align-items: center;

    padding:
        54px;

    border-radius:
        25px;

    background:
        linear-gradient(
            120deg,
            #101214 0%,
            #141617 68%,
            #1d1211 100%
        );

    color: #fff;
}

.ai3-ask::after {
    content: "";

    position: absolute;

    right: -110px;
    top: -170px;

    width: 480px;
    height: 480px;

    border-radius: 50%;

    background:
        radial-gradient(
            circle,
            rgba(231,55,38,.20),
            transparent 70%
        );

    pointer-events: none;
}

.ai3-ask__copy,
.ai3-ask__interaction {
    position: relative;
    z-index: 1;
}

.ai3-ask__logo {
    width: 45px;
    height: 45px;

    margin-bottom: 23px;

    overflow: hidden;

    border-radius: 12px;
}

.ai3-ask__logo img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}

.ai3-ask__copy h2 {
    max-width: 470px;

    margin:
        8px 0
        13px;

    color: #fff;

    font-size:
        clamp(
            36px,
            4vw,
            57px
        );

    line-height: .98;
    letter-spacing: -.045em;
}

.ai3-ask__copy p {
    max-width: 480px;

    margin: 0;

    color: rgba(255,255,255,.56);

    font-size: 13px;
    line-height: 1.65;
}

.ai3-ask__form {
    display: grid;
    grid-template-columns:
        minmax(0,1fr)
        auto;

    gap: 7px;

    padding: 7px;

    border:
        1px solid
        rgba(255,255,255,.14);

    border-radius: 15px;

    background:
        rgba(255,255,255,.055);
}

.ai3-ask__form:focus-within {
    border-color:
        rgba(231,55,38,.6);
}

.ai3-ask__form input {
    width: 100%;

    min-width: 0;

    min-height: 48px;

    padding:
        8px 10px;

    border: 0;

    outline: 0;

    background: transparent;

    color: #fff;

    font: inherit;
    font-size: 13px;
}

.ai3-ask__form input::placeholder {
    color: rgba(255,255,255,.36);
}

.ai3-ask__form button {
    min-width: 104px;

    border: 0;
    border-radius: 10px;

    background: #fff;

    color: #111315;

    font: inherit;
    font-size: 11px;
    font-weight: 800;

    cursor: pointer;
}

.ai3-ask__form button span {
    color: var(--ai3-red);
}

.ai3-ask__prompts {
    display: flex;
    flex-wrap: wrap;

    gap: 7px;

    margin-top: 10px;
}

.ai3-ask__prompts button {
    padding:
        7px 10px;

    border:
        1px solid
        rgba(255,255,255,.09);

    border-radius: 999px;

    background: transparent;

    color: rgba(255,255,255,.48);

    font: inherit;
    font-size: 9px;

    cursor: pointer;
}

.ai3-ask__prompts button:hover {
    border-color:
        rgba(231,55,38,.38);

    color: #fff;
}

.ai3-ask__note {
    display: flex;
    justify-content: space-between;

    gap: 15px;

    margin-top: 19px;

    color: rgba(255,255,255,.27);

    font-size: 8px;
    letter-spacing: .03em;
}


/* ==========================================================
   WORK
   ========================================================== */

.ai3-work-grid {
    display: grid;
    grid-template-columns:
        repeat(4, 1fr);

    gap: 12px;
}

.ai3-work-card {
    min-height: 315px;

    display: flex;
    flex-direction: column;

    padding: 25px;

    border: 1px solid var(--ai3-line-light);
    border-radius: 16px;

    background: #fff;

    color: var(--ai3-ink);

    text-decoration: none;

    transition:
        transform .18s ease,
        box-shadow .18s ease;
}

.ai3-work-card:hover {
    transform:
        translateY(-3px);

    box-shadow:
        0 20px 40px
        rgba(10,12,14,.07);
}

.ai3-work-card small {
    color: rgba(17,19,21,.40);

    font-size: 8px;
    font-weight: 650;

    letter-spacing: .06em;
    text-transform: uppercase;
}

.ai3-work-card h3 {
    margin:
        55px 0
        10px;

    font-size: 27px;
    letter-spacing: -.035em;
}

.ai3-work-card p {
    margin: 0;

    color: var(--ai3-muted);

    font-size: 11px;
    line-height: 1.6;
}

.ai3-work-card > span {
    margin-top: auto;

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

.ai3-work-card--red {
    border-color: transparent;

    background: var(--ai3-red);

    color: #fff;
}

.ai3-work-card--red small,
.ai3-work-card--red p {
    color: rgba(255,255,255,.66);
}

.ai3-work-card--paper {
    background: var(--ai3-paper);
}


/* ==========================================================
   AUDIENCES
   ========================================================== */

.ai3-audience-grid {
    display: grid;
    grid-template-columns:
        repeat(3,1fr);

    gap: 12px;
}

.ai3-audience {
    min-height: 260px;

    display: flex;
    flex-direction: column;

    padding: 25px;

    border:
        1px solid
        var(--ai3-line-light);

    border-radius: 16px;

    background:
        rgba(255,255,255,.35);

    color: var(--ai3-ink);

    text-decoration: none;
}

.ai3-audience--large {
    grid-row:
        span 2;

    min-height: 532px;

    background: var(--ai3-black);

    color: #fff;
}

.ai3-audience small {
    color: rgba(17,19,21,.40);

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

    letter-spacing: .07em;
    text-transform: uppercase;
}

.ai3-audience--large small {
    color: rgba(255,255,255,.40);
}

.ai3-audience h3 {
    margin:
        45px 0
        11px;

    max-width: 390px;

    font-size: 25px;
    line-height: 1.12;

    letter-spacing: -.03em;
}

.ai3-audience--large h3 {
    margin-top: 105px;

    color: #fff;

    font-size:
        clamp(
            35px,
            4vw,
            52px
        );

    line-height: .98;
}

.ai3-audience p {
    color: rgba(255,255,255,.52);

    font-size: 11px;
    line-height: 1.6;
}

.ai3-audience strong {
    margin-top: auto;

    font-size: 9px;
}


/* ==========================================================
   WHY
   ========================================================== */

.ai3-why {
    display: grid;
    grid-template-columns:
        .9fr
        1.1fr;

    gap: 95px;

    align-items: center;
}

.ai3-why__points {
    margin-top: 47px;

    border-top:
        1px solid
        var(--ai3-line-light);
}

.ai3-why__points article {
    padding:
        20px 0;

    border-bottom:
        1px solid
        var(--ai3-line-light);
}

.ai3-why__points strong {
    display: block;

    margin-bottom: 4px;

    font-size: 12px;
}

.ai3-why__points p {
    margin: 0;

    color: var(--ai3-muted);

    font-size: 10px;
    line-height: 1.55;
}

.ai3-why__visuals {
    position: relative;

    min-height: 580px;
}

.ai3-why__visual {
    position: absolute;

    overflow: hidden;

    margin: 0;

    border-radius: 17px;

    background: #ddd;
}

.ai3-why__visual img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}

.ai3-why__visual--large {
    inset:
        0
        60px
        70px
        0;
}

.ai3-why__visual--small {
    right: 0;
    bottom: 0;

    width: 44%;
    height: 43%;

    border:
        8px solid
        var(--ai3-white);
}


/* ==========================================================
   NETWORK
   ========================================================== */

.ai3-network {
    background: var(--ai3-black);

    color: #fff;
}

.ai3-network-grid {
    display: grid;
    grid-template-columns:
        repeat(2,1fr);

    gap: 12px;
}

.ai3-network-card {
    min-height: 270px;

    display: flex;
    flex-direction: column;

    padding: 27px;

    border:
        1px solid
        var(--ai3-line-dark);

    border-radius: 16px;

    background:
        rgba(255,255,255,.025);

    color: #fff;

    text-decoration: none;
}

.ai3-network-card:hover {
    background:
        rgba(255,255,255,.045);
}

.ai3-network-card small {
    color: rgba(255,255,255,.35);

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

    letter-spacing: .07em;
    text-transform: uppercase;
}

.ai3-network-card h3 {
    margin:
        48px 0
        9px;

    color: #fff;

    font-size: 31px;
    letter-spacing: -.035em;
}

.ai3-network-card p {
    max-width: 520px;

    margin: 0;

    color: rgba(255,255,255,.48);

    font-size: 11px;
    line-height: 1.6;
}

.ai3-network-card strong {
    margin-top: auto;

    font-size: 9px;
}


/* ==========================================================
   FINAL
   ========================================================== */

.ai3-final {
    padding:
        110px 0;

    background: var(--ai3-paper);

    text-align: center;
}

.ai3-final h2 {
    max-width: 900px;

    margin:
        11px auto
        18px;

    color: var(--ai3-ink);

    font-size:
        clamp(
            49px,
            6vw,
            86px
        );

    font-weight: 600;
    letter-spacing: -.055em;
    line-height: .92;
}

.ai3-final p {
    max-width: 610px;

    margin:
        0 auto;

    color: var(--ai3-muted);

    font-size: 14px;
    line-height: 1.62;
}

.ai3-final .ai2-actions {
    justify-content: center;

    margin-top: 28px;
}


/* ==========================================================
   HEADER / MEGA MENU
   ========================================================== */

.ai3-header
.main-header-two__lower-inner {
    position: relative;
}

@media (min-width: 992px) {

    .ai3-header
    .navigation
    > li.ai3-nav-mega {
        position: static !important;
    }

    .ai3-header
    .navigation
    > li.ai3-nav-mega
    > ul.ai3-mega {

        position: absolute !important;

        left: 0 !important;
        right: 0 !important;
        top: calc(100% - 1px) !important;

        width: 100% !important;

        margin: 0 !important;
        padding: 22px !important;

        border:
            1px solid
            rgba(255,255,255,.10) !important;

        border-radius:
            0 0
            18px 18px !important;

        background:
            rgba(14,16,17,.985) !important;

        box-shadow:
            0 30px 80px
            rgba(0,0,0,.34) !important;

        opacity: 0;

        visibility: hidden;

        pointer-events: none;

        transform:
            translateY(9px);

        transition:
            opacity .15s ease,
            transform .15s ease,
            visibility .15s ease;

        z-index: 99999;
    }

    .ai3-header
    .navigation
    > li.ai3-nav-mega:hover
    > ul.ai3-mega {

        opacity: 1;

        visibility: visible;

        pointer-events: auto;

        transform:
            translateY(0);
    }

    .ai3-mega--services {
        display: grid !important;

        grid-template-columns:
            repeat(4,minmax(0,1fr))
            240px;

        gap: 13px;
    }

    .ai3-mega--audience {
        display: grid !important;

        grid-template-columns:
            repeat(4,minmax(0,1fr))
            235px;

        gap: 13px;
    }

    .ai3-mega--insights {
        display: grid !important;

        grid-template-columns:
            1fr
            1.12fr
            260px;

        gap: 15px;
    }

    .ai3-header
    .ai3-mega
    > li {
        float: none !important;

        width: auto !important;

        margin: 0 !important;

        border: 0 !important;

        background: transparent !important;
    }
}

.ai3-mega__column {
    padding: 15px !important;

    border:
        1px solid
        rgba(255,255,255,.07) !important;

    border-radius: 12px;
}

.ai3-mega__heading {
    display: block !important;

    padding: 0 !important;

    color: #fff !important;

    font-size: 13px !important;
    font-weight: 700 !important;

    text-decoration: none !important;
}

.ai3-mega__copy {
    display: block;

    margin-top: 7px;

    color: rgba(255,255,255,.39);

    font-size: 9px;
    line-height: 1.48;
}

.ai3-mega__links {
    display: grid;

    gap: 6px;

    margin-top: 17px;
}

.ai3-mega__links a {
    padding: 0 !important;

    color: rgba(255,255,255,.66) !important;

    font-size: 10px !important;
    line-height: 1.35 !important;

    text-decoration: none !important;
}

.ai3-mega__links a:hover {
    color: #fff !important;
}

.ai3-mega__kicker {
    display: block;

    margin-bottom: 14px;

    color: rgba(255,255,255,.34);

    font-size: 8px;
    font-weight: 750;

    letter-spacing: .10em;
    text-transform: uppercase;
}

.ai3-mega__knowledge-links {
    display: grid;

    gap: 3px;
}

.ai3-mega__knowledge-links a {
    display: flex !important;
    align-items: center;
    justify-content: space-between;

    padding:
        9px 0 !important;

    border-bottom:
        1px solid
        rgba(255,255,255,.07);

    color: rgba(255,255,255,.78) !important;

    font-size: 10px !important;

    text-decoration: none !important;
}

.ai3-mega__knowledge-links small {
    color: rgba(255,255,255,.27);
}

.ai3-mega__decision-grid {
    display: grid;
    grid-template-columns:
        1fr 1fr;

    gap: 7px;
}

.ai3-mega__decision-grid a {
    min-height: 40px;

    display: flex !important;
    align-items: center;

    padding:
        8px 9px !important;

    border:
        1px solid
        rgba(255,255,255,.07);

    border-radius: 8px;

    color: rgba(255,255,255,.65) !important;

    font-size: 9px !important;

    text-decoration: none !important;
}

.ai3-mega__decision-grid a:hover {
    border-color:
        rgba(231,55,38,.35);

    color: #fff !important;
}

.ai3-mega__cta {
    display: flex !important;
    flex-direction: column;

    padding: 17px !important;

    border:
        1px solid
        rgba(231,55,38,.25) !important;

    border-radius: 12px;

    background:
        rgba(231,55,38,.07) !important;
}

.ai3-mega__cta > span {
    color: rgba(255,255,255,.42);

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

    letter-spacing: .07em;
    text-transform: uppercase;
}

.ai3-mega__cta > strong {
    margin-top: 16px;

    color: #fff;

    font-size: 18px;
    line-height: 1.08;
}

.ai3-mega__cta > p {
    margin:
        8px 0
        18px;

    color: rgba(255,255,255,.42);

    font-size: 9px;
    line-height: 1.5;
}

.ai3-mega__cta > button {
    min-height: 36px;

    padding:
        8px 10px;

    border: 0;
    border-radius: 9px;

    background: var(--ai3-red);

    color: #fff;

    font: inherit;
    font-size: 9px;
    font-weight: 750;

    cursor: pointer;
}

.ai3-mega__cta > a {
    display: block !important;

    margin-top: 8px !important;
    padding: 8px 0 0 !important;

    color: rgba(255,255,255,.70) !important;

    font-size: 9px !important;

    text-decoration: none !important;
}

.ai3-mega__cta--insights {
    background:
        linear-gradient(
            145deg,
            rgba(231,55,38,.12),
            rgba(255,255,255,.025)
        ) !important;
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 1199px) {

    .ai3-hero__layout {
        grid-template-columns:
            1fr
            390px;

        gap: 48px;
    }

    .ai3-capability {
        grid-template-columns:
            45px
            1fr
            1fr;

        gap: 25px;
    }

    .ai3-capability__main {
        grid-column:
            2 / -1;
    }

    .ai3-knowledge-grid,
    .ai3-problem-grid,
    .ai3-work-grid {
        grid-template-columns:
            repeat(2,1fr);
    }
}


@media (max-width: 991px) {

    .ai3-section {
        padding:
            78px 0;
    }

    .ai3-hero {
        padding-top:
            82px;
    }

    .ai3-hero__layout {
        grid-template-columns:
            1fr;

        gap: 55px;
    }

    .ai3-system {
        max-width: 560px;
    }

    .ai3-hero__meta {
        grid-template-columns:
            1fr 1fr;

        margin-top: 60px;
    }

    .ai3-hero__meta > div:nth-child(2) {
        border-right: 0;
    }

    .ai3-hero__meta > div:nth-child(-n+2) {
        border-bottom:
            1px solid
            var(--ai3-line-dark);
    }

    .ai3-trust__logos {
        grid-template-columns:
            repeat(3,1fr);

        row-gap: 28px;
    }

    .ai3-editorial-split,
    .ai3-knowledge__intro,
    .ai3-ask,
    .ai3-why {
        grid-template-columns:
            1fr;

        gap: 50px;
    }

    .ai3-section-head {
        align-items: flex-start;

        flex-direction: column;

        gap: 22px;
    }

    .ai3-capability {
        grid-template-columns:
            40px 1fr;

        gap: 20px;
    }

    .ai3-capability__links,
    .ai3-capability__main {
        grid-column:
            2;
    }

    .ai3-audience-grid {
        grid-template-columns:
            1fr 1fr;
    }

    .ai3-audience--large {
        grid-column:
            1 / -1;

        grid-row: auto;

        min-height: 430px;
    }

    .ai3-why__visuals {
        min-height: 500px;
    }


    /* Mobile mega content becomes ordinary submenu content */

    .mobile-menu
    .ai3-mega__copy,

    .mobile-menu
    .ai3-mega__kicker,

    .mobile-menu
    .ai3-mega__cta > p,

    .mobile-menu
    .ai3-mega__cta > span {
        display: none;
    }

    .mobile-menu
    .ai3-mega__column,

    .mobile-menu
    .ai3-mega__cta {
        padding:
            4px 0 !important;

        border: 0 !important;

        background:
            transparent !important;
    }

    .mobile-menu
    .ai3-mega__links {
        margin:
            6px 0
            8px;

        padding-left:
            10px;
    }

    .mobile-menu
    .ai3-mega__decision-grid {
        display: block;
    }

    .mobile-menu
    .ai3-mega__decision-grid a {
        min-height: 0;

        margin: 0;

        border: 0;
        border-radius: 0;
    }

    .mobile-menu
    .ai3-mega__knowledge-links a {
        border: 0;
    }

    .mobile-menu
    .ai3-mega__cta > strong {
        margin-top: 3px;

        font-size: 12px;
    }

    .mobile-menu
    .ai3-mega__cta > button {
        margin-top: 7px;
    }
}


@media (max-width: 640px) {

    .ai3-section {
        padding:
            64px 0;
    }

    .ai3-hero__title {
        font-size:
            clamp(
                54px,
                16vw,
                78px
            );

        line-height: .91;
    }

    .ai3-hero__lead {
        font-size:
            16px;
    }

    .ai3-system {
        padding: 14px;
    }

    .ai3-system__canvas {
        grid-template-columns:
            1fr 85px 1fr;

        grid-template-rows:
            1fr 85px 1fr;

        min-height: 330px;
    }

    .ai3-system__node {
        min-height: 105px;

        padding: 11px;
    }

    .ai3-system__node strong {
        font-size: 13px;
    }

    .ai3-system__node span {
        font-size: 7px;
    }

    .ai3-hero__meta {
        grid-template-columns:
            1fr 1fr;
    }

    .ai3-hero__meta > div {
        padding:
            17px 14px;
    }

    .ai3-hero__meta > div:first-child {
        padding-left: 14px;
    }

    .ai3-trust__logos {
        grid-template-columns:
            repeat(2,1fr);
    }

    .ai3-display {
        font-size:
            clamp(
                38px,
                12vw,
                55px
            );
    }

    .ai3-system-strip {
        flex-wrap: wrap;
    }

    .ai3-system-strip strong {
        width: 100%;

        margin:
            7px 0 0;
    }

    .ai3-capability {
        grid-template-columns:
            30px 1fr;

        padding:
            28px 0;
    }

    .ai3-capability__links {
        gap: 6px;
    }

    .ai3-knowledge-grid,
    .ai3-problem-grid,
    .ai3-work-grid,
    .ai3-audience-grid,
    .ai3-network-grid {
        grid-template-columns:
            1fr;
    }

    .ai3-knowledge-card {
        min-height: 260px;
    }

    .ai3-problem {
        min-height: 150px;
    }

    .ai3-ask {
        padding:
            28px 20px;

        border-radius: 20px;
    }

    .ai3-ask__form {
        grid-template-columns:
            1fr;
    }

    .ai3-ask__form button {
        min-height: 40px;
    }

    .ai3-ask__note {
        flex-direction: column;

        gap: 3px;
    }

    .ai3-audience--large {
        min-height: 360px;
    }

    .ai3-audience--large h3 {
        margin-top: 70px;
    }

    .ai3-why__visuals {
        min-height: 390px;
    }

    .ai3-why__visual--large {
        right: 35px;
        bottom: 50px;
    }

    .ai3-why__visual--small {
        width: 48%;
        height: 41%;
    }

    .ai3-final {
        padding:
            80px 0;
    }
}

/* ALLINCLUSIVE V3.1 POLISH START */


/* ==========================================================
   TYPOGRAPHY REBALANCE

   Large display headings: ~15% smaller.
   Supporting copy / UI / navigation: materially larger.
   ========================================================== */

.ai3-hero__title {
    font-size:
        clamp(
            50px,
            6.3vw,
            97px
        ) !important;

    line-height:
        .91 !important;
}

.ai3-display {
    font-size:
        clamp(
            36px,
            4.25vw,
            65px
        ) !important;

    line-height:
        1 !important;
}

.ai3-final h2 {
    font-size:
        clamp(
            42px,
            5.1vw,
            73px
        ) !important;

    line-height:
        .96 !important;
}

.ai3-ask__copy h2 {
    font-size:
        clamp(
            31px,
            3.4vw,
            49px
        ) !important;

    line-height:
        1.02 !important;
}


/* Hero supporting typography */

.ai3-hero__lead {
    max-width:
        760px !important;

    font-size:
        clamp(
            21px,
            1.85vw,
            27px
        ) !important;

    line-height:
        1.48 !important;
}

.ai3-hero__ask {
    font-size:
        14px !important;

    line-height:
        1.45 !important;
}

.ai3-hero__ask-mark {
    width:
        32px !important;

    height:
        32px !important;
}

.ai3-hero__meta strong {
    font-size:
        19px !important;
}

.ai3-hero__meta span {
    font-size:
        13px !important;

    line-height:
        1.35 !important;
}


/* General section copy */

.ai3-section-head > p {
    max-width:
        500px !important;

    font-size:
        19px !important;

    line-height:
        1.62 !important;
}

.ai3-editorial-copy {
    font-size:
        20px !important;

    line-height:
        1.65 !important;
}

.ai3-system-strip {
    font-size:
        14px !important;
}

.ai3-system-strip strong {
    font-size:
        13px !important;
}


/* Capability rows */

.ai3-capability h3 {
    font-size:
        23px !important;

    font-weight:
        700 !important;
}

.ai3-capability p {
    font-size:
        15px !important;

    line-height:
        1.62 !important;
}

.ai3-capability__number {
    font-size:
        13px !important;
}

.ai3-capability__links a {
    padding:
        8px 12px !important;

    font-size:
        12px !important;
}

.ai3-capability__main {
    font-size:
        14px !important;
}


/* Knowledge hub */

.ai3-knowledge__count {
    font-size:
        55px !important;
}

.ai3-knowledge__intro p {
    font-size:
        16px !important;

    line-height:
        1.62 !important;
}

.ai3-knowledge-card > span {
    font-size:
        11px !important;
}

.ai3-knowledge-card h3 {
    font-size:
        22px !important;

    font-weight:
        700 !important;
}

.ai3-knowledge-card p {
    font-size:
        14px !important;

    line-height:
        1.6 !important;
}

.ai3-knowledge-card strong {
    font-size:
        13px !important;
}


/* Problem section */

.ai3-problem small {
    font-size:
        10px !important;
}

.ai3-problem strong {
    font-size:
        18px !important;

    line-height:
        1.25 !important;
}


/* Ask section */

.ai3-ask__copy p {
    font-size:
        16px !important;

    line-height:
        1.62 !important;
}

.ai3-ask__form input {
    font-size:
        16px !important;
}

.ai3-ask__form button {
    min-width:
        112px !important;

    font-size:
        14px !important;
}

.ai3-ask__prompts button {
    padding:
        8px 12px !important;

    font-size:
        12px !important;
}

.ai3-ask__note {
    font-size:
        10px !important;
}


/* ==========================================================
   SELECTED WORK
   ========================================================== */

.ai3-work-card small {
    font-size:
        10px !important;

    font-weight:
        700 !important;
}

.ai3-work-card h3 {
    font-size:
        24px !important;

    font-weight:
        750 !important;

    line-height:
        1.15 !important;
}

.ai3-work-card p {
    font-size:
        14px !important;

    line-height:
        1.62 !important;
}

.ai3-work-card > span {
    font-size:
        12px !important;

    font-weight:
        750 !important;
}


/* LG card must read as an actual red feature card */

.ai3-work-card--red h3 {
    color:
        #fff !important;

    font-weight:
        750 !important;
}

.ai3-work-card--red > span {
    color:
        #fff !important;
}

.ai3-work-card--red small,
.ai3-work-card--red p {
    color:
        rgba(
            255,
            255,
            255,
            .82
        ) !important;
}


/* ==========================================================
   AUDIENCE / WHY / NETWORK COPY
   ========================================================== */

.ai3-audience small,
.ai3-network-card small {
    font-size:
        10px !important;
}

.ai3-audience h3 {
    font-size:
        22px !important;

    font-weight:
        700 !important;
}

.ai3-audience--large h3 {
    font-size:
        clamp(
            30px,
            3.4vw,
            44px
        ) !important;
}

.ai3-audience p,
.ai3-network-card p {
    font-size:
        14px !important;

    line-height:
        1.62 !important;
}

.ai3-audience strong,
.ai3-network-card strong {
    font-size:
        12px !important;
}

.ai3-network-card h3 {
    font-size:
        27px !important;

    font-weight:
        700 !important;
}

.ai3-why__points strong {
    font-size:
        15px !important;
}

.ai3-why__points p {
    font-size:
        13px !important;

    line-height:
        1.58 !important;
}

.ai3-final p {
    max-width:
        690px !important;

    font-size:
        18px !important;

    line-height:
        1.6 !important;
}


/* ==========================================================
   FINAL CTA BUTTONS

   Secondary CTA becomes solid graphite/black.
   ========================================================== */

.ai3-final
.ai2-btn--light {
    border-color:
        #111315 !important;

    background:
        #111315 !important;

    color:
        #fff !important;

    box-shadow:
        none !important;
}

.ai3-final
.ai2-btn--light:hover {
    border-color:
        #000 !important;

    background:
        #000 !important;

    color:
        #fff !important;
}


/* ==========================================================
   HEADER
   More readable top navigation.
   ========================================================== */

.ai3-header
.main-header-two__lower
.container {
    max-width:
        1500px !important;
}

.ai3-header
.navigation
> li
> a {
    font-size:
        15px !important;

    font-weight:
        650 !important;
}

.ai3-header
.main-menu__call-sub-title {
    font-size:
        10px !important;
}

.ai3-header
.main-menu__call-number
a {
    font-size:
        14px !important;

    font-weight:
        750 !important;
}


/* ==========================================================
   MEGA MENU — WIDE, NOT TALL
   ========================================================== */

@media (min-width: 992px) {

    .ai3-header
    .main-header-two__lower-inner,

    .ai3-header
    .main-menu-two__box,

    .ai3-header
    .main-menu-two__nav-outer-box,

    .ai3-header
    .nav-outer,

    .ai3-header
    .main-menu {
        overflow:
            visible !important;
    }


    .ai3-header
    .navigation
    > li.ai3-nav-mega
    > ul.ai3-mega {

        left:
            50% !important;

        right:
            auto !important;

        top:
            calc(100% + 1px) !important;

        width:
            min(
                1460px,
                calc(100vw - 36px)
            ) !important;

        max-width:
            none !important;

        padding:
            18px !important;

        border-radius:
            0 0
            16px 16px !important;

        transform:
            translate(
                -50%,
                8px
            ) !important;
    }


    .ai3-header
    .navigation
    > li.ai3-nav-mega:hover
    > ul.ai3-mega {

        transform:
            translate(
                -50%,
                0
            ) !important;
    }


    /* SERVICES:
       Four clean columns, CTA bar across full width.
    */

    .ai3-mega--services {

        grid-template-columns:
            repeat(
                4,
                minmax(
                    0,
                    1fr
                )
            ) !important;

        gap:
            11px !important;
    }


    .ai3-mega--services
    .ai3-mega__cta {

        grid-column:
            1 / -1;

        display:
            grid !important;

        grid-template-columns:
            minmax(
                190px,
                .7fr
            )
            minmax(
                260px,
                1fr
            )
            auto
            auto;

        align-items:
            center;

        gap:
            22px;

        min-height:
            70px;

        padding:
            14px 17px !important;
    }


    /* WHO WE HELP */

    .ai3-mega--audience {

        grid-template-columns:
            repeat(
                4,
                minmax(
                    0,
                    1fr
                )
            ) !important;

        gap:
            11px !important;
    }


    .ai3-mega--audience
    .ai3-mega__cta {

        grid-column:
            1 / -1;

        display:
            grid !important;

        grid-template-columns:
            minmax(
                190px,
                .7fr
            )
            minmax(
                300px,
                1fr
            )
            auto;

        align-items:
            center;

        gap:
            22px;

        min-height:
            66px;

        padding:
            14px 17px !important;
    }


    /* INSIGHTS:
       Knowledge + decision + CTA side-by-side.
    */

    .ai3-mega--insights {

        grid-template-columns:
            .9fr
            1.35fr
            .75fr !important;

        gap:
            11px !important;
    }


    /* Specialist links are two-column internally,
       dramatically reducing menu height.
    */

    .ai3-mega__links {

        grid-template-columns:
            repeat(
                2,
                minmax(
                    0,
                    1fr
                )
            ) !important;

        column-gap:
            15px !important;

        row-gap:
            8px !important;

        margin-top:
            15px !important;
    }

}


/* ==========================================================
   MEGA MENU TYPOGRAPHY
   ========================================================== */

.ai3-mega__column {
    padding:
        17px !important;
}

.ai3-mega__heading {
    font-size:
        16px !important;

    font-weight:
        750 !important;

    line-height:
        1.25 !important;
}

.ai3-mega__copy {
    max-width:
        270px;

    margin-top:
        7px !important;

    font-size:
        12px !important;

    line-height:
        1.48 !important;
}

.ai3-mega__links a {
    font-size:
        13px !important;

    line-height:
        1.35 !important;
}

.ai3-mega__kicker {
    font-size:
        11px !important;
}

.ai3-mega__knowledge-links a {
    padding:
        10px 0 !important;

    font-size:
        13px !important;
}

.ai3-mega__knowledge-links small {
    font-size:
        11px !important;
}

.ai3-mega__decision-grid a {
    min-height:
        45px !important;

    padding:
        10px 12px !important;

    font-size:
        12px !important;

    line-height:
        1.3 !important;
}


/* ==========================================================
   MEGA MENU CTA
   Much stronger contrast and hierarchy.
   ========================================================== */

.ai3-mega__cta {
    border-color:
        rgba(
            231,
            55,
            38,
            .35
        ) !important;

    background:
        linear-gradient(
            120deg,
            rgba(
                231,
                55,
                38,
                .17
            ),
            rgba(
                231,
                55,
                38,
                .055
            )
        ) !important;
}

.ai3-mega__cta > span {
    font-size:
        10px !important;

    color:
        rgba(
            255,
            255,
            255,
            .55
        ) !important;
}

.ai3-mega__cta > strong {
    margin-top:
        9px !important;

    color:
        #fff !important;

    font-size:
        19px !important;

    font-weight:
        750 !important;

    line-height:
        1.15 !important;
}

.ai3-mega__cta > p {
    margin:
        8px 0
        16px !important;

    font-size:
        12px !important;

    line-height:
        1.5 !important;
}

.ai3-mega__cta > button {
    min-height:
        40px !important;

    padding:
        9px 14px !important;

    background:
        #e73726 !important;

    color:
        #fff !important;

    font-size:
        12px !important;

    font-weight:
        750 !important;
}

.ai3-mega__cta > button:hover {
    background:
        #f04432 !important;
}

.ai3-mega__cta > a {
    margin-top:
        9px !important;

    padding:
        9px 0 0 !important;

    color:
        #fff !important;

    font-size:
        12px !important;

    font-weight:
        750 !important;
}


/* Horizontal Services / Audience CTA bars */

@media (min-width: 992px) {

    .ai3-mega--services
    .ai3-mega__cta
    > span,

    .ai3-mega--audience
    .ai3-mega__cta
    > span {

        margin: 0 !important;
    }


    .ai3-mega--services
    .ai3-mega__cta
    > strong,

    .ai3-mega--audience
    .ai3-mega__cta
    > strong {

        margin:
            0 !important;
    }


    .ai3-mega--services
    .ai3-mega__cta
    > p {

        display:
            none !important;
    }


    .ai3-mega--services
    .ai3-mega__cta
    > button {

        min-width:
            175px;
    }


    .ai3-mega--services
    .ai3-mega__cta
    > a,

    .ai3-mega--audience
    .ai3-mega__cta
    > a {

        min-width:
            135px;

        margin:
            0 !important;

        padding:
            11px 14px !important;

        border:
            1px solid
            rgba(
                255,
                255,
                255,
                .18
            );

        border-radius:
            9px;

        text-align:
            center;
    }

}


/* Insights CTA gets a real focal point */

.ai3-mega__cta--insights {
    background:
        linear-gradient(
            145deg,
            #c92f20,
            #8e2018
        ) !important;

    border-color:
        transparent !important;
}

.ai3-mega__cta--insights
> button {
    background:
        #fff !important;

    color:
        #111315 !important;
}

.ai3-mega__cta--insights
> button:hover {
    background:
        #f2f0eb !important;
}


/* ==========================================================
   MOBILE TYPOGRAPHY
   ========================================================== */

@media (max-width: 640px) {

    .ai3-hero__title {
        font-size:
            clamp(
                48px,
                14vw,
                66px
            ) !important;
    }

    .ai3-hero__lead {
        font-size:
            19px !important;
    }

    .ai3-display {
        font-size:
            clamp(
                34px,
                10vw,
                47px
            ) !important;
    }

    .ai3-editorial-copy {
        font-size:
            17px !important;
    }

    .ai3-section-head > p {
        font-size:
            17px !important;
    }

    .ai3-work-card h3 {
        font-size:
            23px !important;
    }

    .ai3-work-card p,
    .ai3-audience p,
    .ai3-network-card p,
    .ai3-knowledge-card p {
        font-size:
            14px !important;
    }

}


/* ALLINCLUSIVE V3.1 POLISH END */


/* ==========================================================
   ALLINCLUSIVE V3.2 FINAL POLISH
   ========================================================== */


/* ----------------------------------------------------------
   Selected Work — align title baseline
   The category line has a fixed two-line area so LG USA
   cannot be pushed lower than the other project names.
   ---------------------------------------------------------- */

.ai3-work-card > small {
    display: block !important;

    height: 34px !important;

    overflow: hidden;

    line-height: 1.5 !important;
}

.ai3-work-card h3 {
    margin:
        34px 0
        10px !important;

    font-weight:
        750 !important;
}

.ai3-work-card--red h3 {
    color:
        #fff !important;
}


/* ----------------------------------------------------------
   Formigo
   ---------------------------------------------------------- */

.ai3-audience--formigo {
    min-height:
        260px !important;

    border-color:
        #101214 !important;

    background:
        #101214 !important;

    color:
        #fff !important;
}

.ai3-audience--formigo small {
    color:
        rgba(
            255,
            255,
            255,
            .43
        ) !important;
}

.ai3-formigo-brand {
    display: block;

    margin-top:
        27px;

    color:
        #34e0a1;

    font-size:
        29px;

    font-weight:
        800;

    letter-spacing:
        -.045em;

    line-height:
        1;
}

.ai3-audience--formigo h3 {
    max-width:
        310px;

    margin:
        11px 0
        8px !important;

    color:
        #fff !important;

    font-size:
        19px !important;

    font-weight:
        700 !important;

    line-height:
        1.18 !important;
}

.ai3-audience--formigo p {
    max-width:
        310px;

    margin:
        0;

    color:
        rgba(
            255,
            255,
            255,
            .54
        ) !important;

    font-size:
        13px !important;

    line-height:
        1.5 !important;
}

.ai3-audience--formigo strong {
    margin-top:
        auto;

    color:
        #34e0a1 !important;

    font-size:
        12px !important;
}

.ai3-audience--formigo:hover {
    border-color:
        rgba(
            52,
            224,
            161,
            .38
        ) !important;
}


/* Mobile */

@media (max-width: 640px) {

    .ai3-work-card > small {
        height:
            36px !important;
    }

    .ai3-formigo-brand {
        font-size:
            27px;
    }
}


/* ALLINCLUSIVE V3.2 FINAL POLISH END */


/* ==========================================================
   ALLINCLUSIVE V3.2 FINAL POLISH
   ========================================================== */


/* ----------------------------------------------------------
   Selected Work — align title baseline
   The category line has a fixed two-line area so LG USA
   cannot be pushed lower than the other project names.
   ---------------------------------------------------------- */

.ai3-work-card > small {
    display: block !important;

    height: 34px !important;

    overflow: hidden;

    line-height: 1.5 !important;
}

.ai3-work-card h3 {
    margin:
        34px 0
        10px !important;

    font-weight:
        750 !important;
}

.ai3-work-card--red h3 {
    color:
        #fff !important;
}


/* ----------------------------------------------------------
   Formigo
   ---------------------------------------------------------- */

.ai3-audience--formigo {
    min-height:
        260px !important;

    border-color:
        #101214 !important;

    background:
        #101214 !important;

    color:
        #fff !important;
}

.ai3-audience--formigo small {
    color:
        rgba(
            255,
            255,
            255,
            .43
        ) !important;
}

.ai3-formigo-brand {
    display: block;

    margin-top:
        27px;

    color:
        #34e0a1;

    font-size:
        29px;

    font-weight:
        800;

    letter-spacing:
        -.045em;

    line-height:
        1;
}

.ai3-audience--formigo h3 {
    max-width:
        310px;

    margin:
        11px 0
        8px !important;

    color:
        #fff !important;

    font-size:
        19px !important;

    font-weight:
        700 !important;

    line-height:
        1.18 !important;
}

.ai3-audience--formigo p {
    max-width:
        310px;

    margin:
        0;

    color:
        rgba(
            255,
            255,
            255,
            .54
        ) !important;

    font-size:
        13px !important;

    line-height:
        1.5 !important;
}

.ai3-audience--formigo strong {
    margin-top:
        auto;

    color:
        #34e0a1 !important;

    font-size:
        12px !important;
}

.ai3-audience--formigo:hover {
    border-color:
        rgba(
            52,
            224,
            161,
            .38
        ) !important;
}


/* Mobile */

@media (max-width: 640px) {

    .ai3-work-card > small {
        height:
            36px !important;
    }

    .ai3-formigo-brand {
        font-size:
            27px;
    }
}


/* ALLINCLUSIVE V3.2 FINAL POLISH END */
