:root {
    --navy: #0f2345;
    --navy-dark: #07153e;
    --orange: #fe7a06;
    --orange-light: #fff3eb;
    --ink: #273753;
    --muted: #667085;
    --line: rgba(15, 35, 69, .11);
    --page: #fdf6f1;
    --radius: 24px;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    overflow-x: hidden;
    color: var(--ink);
    background: #fff;
    font-family: Poppins, sans-serif;
}

img {
    display: block;
    max-width: 100%;
}

a {
    color: inherit;
}

h1,
h2,
h3,
h4,
p {
    margin: 0;
}

h1,
h2,
h3,
h4,
strong {
    font-family: Manrope, Poppins, sans-serif;
}

.container {
    width: min(100% - 40px, 1480px);
    margin-inline: auto;
}

.section {
    padding: clamp(64px, 8vw, 112px) 0;
}

.site-header {
    /* position: sticky; */
    top: 0;
    z-index: 999;
    background: #FDF6F1;
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    /* border-bottom: 1px solid rgba(0, 0, 0, .04); */
     position: relative;
}

.site-header__inner {
    min-height: 92px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.brand {
    width: 220px;
}

.brand img {
    width: 100%;
}

.site-menu {
    display: flex;
    align-items: center;
    gap: 34px;
}

.site-menu a {
    position: relative;
    font-size: 16px;
    font-weight: 500;
    color: #29354a;
    text-decoration: none;
    transition: .25s;

}

.site-menu a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 0;
    height: 2px;
    background: #FE7A06;
    transition: .25s;
}

.site-menu a:hover {
    color: #FE7A06;
}

.site-menu a:hover::after {
    width: 100%;
}

.menu-toggle {
    display: none;
    width: 46px;
    height: 46px;
    border: none;
    background: transparent;
    cursor: pointer;
    position: relative;
}

.menu-toggle span {
    display: block;
    width: 28px;
    height: 2px;
    background: #0F2345;
    margin: 6px auto;
    transition: .3s;
}

.menu-toggle.active span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
}

.menu-toggle.active span:nth-child(2) {
    opacity: 0;
}

.menu-toggle.active span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
}
@media(max-width:900px) {
    .site-menu {
        position: absolute;
        left: 0;
        top: 100%;
        /* ito rin mas maaasahan kesa fixed 92px — kahit magbago height ng header, susunod pa rin */
        z-index: 998;
        width: 100%;
        background: #fff;
        display: flex;
        flex-direction: column;
        gap: 0;
        overflow: hidden;
        max-height: 0;
        transition: max-height .35s ease;
        box-shadow: 0 15px 35px rgba(0, 0, 0, .08);
    }

    .site-menu.open {
        max-height: 420px;
    }

    .site-menu a {
        width: 100%;
        padding: 18px 30px;
        border-top: 1px solid rgba(0, 0, 0, .05);
    }

    .site-menu a::after {
        display: none;
    }

    .menu-toggle {
        display: block;
    }
}


/* ======================== Hero ================== */

.hero {
    padding: clamp(52px, 6vw, 50px) 0 clamp(100px, 11vw, 150px);
    background: var(--page) center/cover no-repeat;
    /* url("./images/GUL_Bg.png") */
}

.hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
    align-items: center;
    gap: clamp(32px, 5vw, 80px);
}

.pill {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: max-content;
    max-width: 100%;
    padding: 8px 15px;
    border: 1px solid color-mix(in srgb, var(--orange) 55%, white);
    border-radius: 999px;
    background: #fff7f2;
    color: var(--orange);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .075em;
    line-height: 1.25;
    text-transform: uppercase;
}

.hero h1 {
    margin-top: 20px;
    color: var(--navy);
    font-size: clamp(42px, 5vw, 70px);
    font-weight: 800;
    letter-spacing: -.065em;
    line-height: 1.08;
}

.hero h1 em {
    color: var(--orange);
    font-style: normal;
}

.hero__description {
    max-width: 660px;
    margin-top: 25px;
    color: #5c6475;
    font-size: 16px;
    line-height: 1.85;
}

.button-row {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 30px;
}

.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 51px;
    padding: 12px 21px;
    border: 1px solid transparent;
    border-radius: 13px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    transition: transform .2s ease, background .2s ease;
}

.button:hover {
    transform: translateY(-3px);
}

.button--orange {
    background: var(--orange);
    color: #fff;
    box-shadow: 0 9px 18px rgba(254, 122, 6, .18);
}

.button--orange:hover {
    background: #e96900;
    color: #fff;
}

.button--navy {
    background: var(--navy);
    color: #fff;
}

.button--navy:hover {
    background: #1b376b;
    color: #fff;
}

/* ===== hero art ==== */

.hero__art:has(.gls-diagram) {
    width: min(100%, 700px);
    overflow: visible;
}

.gls-diagram {
    --gls-navy: #102750;
    --gls-orange: #ff6508;
    position: relative;
    isolation: isolate;
    width: 100%;
    min-height: 570px;
    font-family: Poppins, Arial, sans-serif;
    margin-bottom: 1%;
}

.gls-diagram *,
.gls-diagram *::before,
.gls-diagram *::after {
    box-sizing: border-box;
}

.gls-diagram::before {
    position: absolute;
    z-index: -5;
    inset: 1% 0 0;
    border-radius: 50%;
    content: "";
    background: radial-gradient(circle at center, rgba(255, 142, 80, .16), rgba(255, 247, 241, .62) 39%, transparent 68%);
}

.gls-ring {
    position: absolute;
    z-index: -2;
    top: 50%;
    left: 50%;
    border: 1px solid rgba(255, 142, 80, .23);
    border-radius: 50%;
    transform: translate(-50%, -50%);
    animation: gls-ring-breathe 5s ease-in-out infinite;
}

.gls-ring--outer {
    width: 96%;
    height: 93%;
}

.gls-ring--inner {
    width: 63%;
    height: 63%;
    border-color: rgba(255, 142, 80, .16);
    animation-delay: -2.4s;
}

.gls-particle {
    position: absolute;
    z-index: -1;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255, 121, 44, .45);
    filter: blur(1px);
    animation: gls-particle 8s ease-in-out infinite;
}

.gls-particle--one {
    top: 6%;
    left: 7%;
}

.gls-particle--two {
    top: 17%;
    right: 5%;
    animation-delay: -3.2s;
}

.gls-particle--three {
    top: 49%;
    left: 1%;
    animation-delay: -1.7s;
}

.gls-particle--four {
    top: 65%;
    right: 1%;
    animation-delay: -4.5s;
}

.gls-particle--five {
    bottom: 8%;
    left: 11%;
    animation-delay: -6s;
}

.gls-particle--six {
    right: 13%;
    bottom: 5%;
    animation-delay: -2.8s;
}

.gls-connectors {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: visible;
}

.gls-lines path {
    fill: none;
    stroke: rgba(69, 80, 96, .36);
    stroke-dasharray: 2 4;
    stroke-width: 1.15;
}

.gls-nodes circle {
    fill: var(--gls-orange);
    stroke: #fff;
    stroke-width: 1.5;
}

.gls-packets circle {
    fill: var(--gls-orange);
    filter: drop-shadow(0 0 4px rgba(255, 101, 8, .65));
}

.gls-card {
    position: absolute;
    z-index: 2;
    width: 174px;
    transform-origin: center;
}

.gls-card-surface {
    display: flex;
    min-height: 108px;
    align-items: flex-start;
    gap: 11px;
    padding: 14px 12px;
    border: 1px solid rgba(241, 234, 229, .95);
    border-radius: 12px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 10px 25px rgba(56, 48, 43, .09);
    animation: gls-card-breathe var(--float-duration) ease-in-out infinite;
}

.gls-card h3 {
    margin: 0 0 5px;
    color: #18233b;
    font: 800 12px/1.2 Manrope, Poppins, sans-serif;
}

.gls-card p {
    margin: 0;
    color: #48566d;
    font-size: 10px;
    font-weight: 500;
    line-height: 1.5;
}

.gls-icon {
    display: grid;
    flex: 0 0 auto;
    width: 35px;
    height: 35px;
    place-items: center;
    border-radius: 50%;
    font-size: 16px;
}

.gls-icon--green {
    background: #e5f9df;
    color: #32ae29;
}

.gls-icon--orange {
    background: #fff0e7;
    color: #ff6508;
}

.gls-icon--purple {
    background: #f2e7ff;
    color: #7b3fe4;
}

.gls-icon--amber {
    background: #fff3d9;
    color: #ed9d00;
}

.gls-icon--blue {
    background: #e5ecff;
    color: #3269e9;
}

.gls-card--lead {
    top: 3%;
    left: 50%;
    width: 185px;
    transform: translateX(-50%);
    --float-duration: 8s;
}

.gls-card--email {
    top: 22%;
    left: 1%;
    --float-duration: 7.2s;
}

.gls-card--sms {
    top: 22%;
    right: 1%;
    --float-duration: 9s;
}

.gls-card--automation {
    top: 46%;
    left: 0;
    --float-duration: 8.6s;
}

.gls-card--booking {
    top: 46%;
    right: 0;
    --float-duration: 7.7s;
}

.gls-card--payments {
    bottom: 7%;
    left: 4%;
    --float-duration: 9.2s;
}

.gls-card--ai {
    bottom: 0;
    left: 50%;
    width: 180px;
    transform: translateX(-50%);
    --float-duration: 8.3s;
}

.gls-card--pipeline {
    right: 4%;
    bottom: 7%;
    --float-duration: 7.4s;
}

.gls-card--email .gls-card-surface,
.gls-card--sms .gls-card-surface,
.gls-card--payments .gls-card-surface {
    animation-name: gls-card-breathe, gls-tiny-tilt;
    animation-duration: var(--float-duration), 12s;
    animation-timing-function: ease-in-out, ease-in-out;
    animation-iteration-count: infinite, infinite;
}

.gls-card--sms .gls-card-surface {
    animation-delay: -1.4s, -3.2s;
}

.gls-card--payments .gls-card-surface {
    animation-delay: -2.7s, -6s;
}

.gls-core {
    position: absolute;
    z-index: 4;
    top: 50%;
    left: 50%;
    display: grid;
    width: 142px;
    height: 142px;
    place-items: center;
    border: 12px solid rgba(255, 255, 255, .94);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 0 0 14px rgba(255, 218, 196, .36), 0 18px 40px rgba(242, 113, 34, .17);
    transform: translate(-50%, -50%);
}

.gls-core-glow {
    position: absolute;
    inset: -25px;
    z-index: -2;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 101, 8, .22), rgba(255, 101, 8, 0) 67%);
    animation: gls-core-energy 5s ease-in-out infinite;

}

.gls-core-ring {
    position: absolute;
    inset: -43px;
    z-index: -1;
    border: 1px solid rgba(255, 154, 91, .3);
    border-radius: 50%;
    animation: gls-ring-breathe 5s ease-in-out infinite;
}

.GUL-foot-logo {
    display: block;
    width: 100px;
    height: 100px;
    object-fit: contain;
    /* border: solid 1px red; */
}

@keyframes gls-card-breathe {

    0%,
    100% {
        transform: translateY(0) scale(1);
        box-shadow: 0 10px 25px rgba(56, 48, 43, .09);
    }

    25% {
        transform: translateY(-1px) scale(1.004);
    }

    50% {
        transform: translateY(-3px) scale(1.008);
        box-shadow: 0 13px 27px rgba(56, 48, 43, .13);
    }

    75% {
        transform: translateY(-1px) scale(1.004);
    }
}

@keyframes gls-tiny-tilt {

    0%,
    100% {
        rotate: 0deg;
    }

    50% {
        rotate: .6deg;
    }
}

@keyframes gls-core-energy {

    0%,
    100% {
        opacity: .15;
        transform: scale(.96);
    }

    50% {
        opacity: .22;
        transform: scale(1.04);
    }
}

@keyframes gls-ring-breathe {

    0%,
    100% {
        opacity: .25;
        transform: translate(-50%, -50%) scale(1);
    }

    50% {
        opacity: .35;
        transform: translate(-50%, -50%) scale(1.015);
    }
}

@keyframes gls-particle {

    0%,
    100% {
        opacity: .2;
        transform: translateY(3px);
    }

    50% {
        opacity: .35;
        transform: translateY(-3px);
    }
}

@keyframes gls-activity {

    0%,
    88%,
    100% {
        box-shadow: 0 10px 25px rgba(56, 48, 43, .09);
        border-color: rgba(241, 234, 229, .95);
    }

    92% {
        box-shadow: 0 0 0 2px rgba(255, 101, 8, .18), 0 12px 27px rgba(255, 101, 8, .18);
        border-color: rgba(255, 101, 8, .58);
    }
}

.gls-card--lead .gls-card-surface {
    animation-name: gls-card-breathe, gls-activity;
    animation-duration: 8s, 13s;
    animation-delay: 0s, -1.3s;
    animation-iteration-count: infinite;
}

.gls-card--booking .gls-card-surface {
    animation-name: gls-card-breathe, gls-activity;
    animation-duration: 7.7s, 17s;
    animation-delay: -2.1s, -7s;
    animation-iteration-count: infinite;
}

.gls-card--ai .gls-card-surface {
    animation-name: gls-card-breathe, gls-activity;
    animation-duration: 8.3s, 19s;
    animation-delay: -3.2s, -11s;
    animation-iteration-count: infinite;
}

.gls-card--pipeline .gls-card-surface {
    animation-name: gls-card-breathe, gls-activity;
    animation-duration: 7.4s, 23s;
    animation-delay: -1s, -15s;
    animation-iteration-count: infinite;
}

@media (max-width:1120px) {
    .gls-diagram {
        min-height: 505px;
        transform: scale(.89);
        transform-origin: center;
        width: 112%;
        margin-left: -6%;
    }
}

@media (max-width:780px) {
    .hero__art:has(.gls-diagram) {
        width: 100%;
    }

    .gls-diagram {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 13px;
        min-height: 0;
        padding: 25px 0 0;
        transform: none;
        width: 100%;
        margin: 0;
    }

    .gls-diagram::before,
    .gls-ring,
    .gls-particle,
    .gls-connectors {
        display: none;
    }

    .gls-core {
        position: relative;
        top: auto;
        left: auto;
        grid-column: 1 / -1;
        width: 118px;
        height: 118px;
        margin: 0 auto 21px;
        border-width: 10px;
        transform: none;
    }

    .gls-core-ring {
        inset: -30px;
    }

    .GUL-foot-logo {
        width: 74px;
        height: 74px;
    }

    .gls-card {
        position: relative;
        inset: auto !important;
        width: auto !important;
        transform: none !important;
    }

    .gls-card-surface {
        min-height: 112px;
        padding: 14px 11px;
    }

    .gls-card h3 {
        font-size: 12px;
    }

    .gls-card p {
        font-size: 10px;
    }

    .gls-card--lead,
    .gls-card--ai {
        grid-column: 1 / -1;
        width: min(100%, 390px) !important;
        margin-inline: auto;
    }

    .gls-card--lead .gls-card-surface,
    .gls-card--ai .gls-card-surface {
        min-height: 95px;
    }

    .gls-card--email .gls-card-surface,
    .gls-card--sms .gls-card-surface,
    .gls-card--payments .gls-card-surface,
    .gls-card--lead .gls-card-surface,
    .gls-card--booking .gls-card-surface,
    .gls-card--ai .gls-card-surface,
    .gls-card--pipeline .gls-card-surface {
        animation-name: gls-card-breathe;
        animation-duration: var(--float-duration);
    }
}

.hero__trust {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 25px;
    color: #7b8494;
    font-size: 13px;
}

.hero__trust i {
    color: var(--orange);
    font-size: 17px;
}

.hero__art {
    justify-self: end;
    width: min(100%, 600px);
}

.metrics-section {
    position: relative;
    z-index: 2;
    margin-top: clamp(-92px, -7vw, -48px);
}

.metrics {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    padding: 28px;
    border-radius: var(--radius);
    background: #fff;
    box-shadow: 0 15px 35px rgba(15, 35, 69, .14);
}

.metric {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    min-width: 0;
    padding: 8px 20px;
}

.metric+.metric {
    border-left: 1px solid #ececec;
}

.metric__icon {
    display: grid;
    flex: 0 0 auto;
    width: 58px;
    height: 58px;
    place-items: center;
    border-radius: 50%;
    background: var(--orange-light);
    color: var(--orange);
    font-size: 22px;
}

.metric strong {
    display: block;
    color: var(--navy);
    font-size: 30px;
    line-height: 1;
}

.metric p {
    margin-top: 5px;
    color: #70798a;
    font-size: 13px;
    line-height: 1.3;
}

.section-heading {
    max-width: 760px;
    margin: 0 auto clamp(34px, 1vw, 58px);
    text-align: center;
    /* border: solid 1px red; */
}

.section-heading h2 {
    margin: 15px 0 11px;
    color: var(--navy);
    font-size: clamp(32px, 4vw, 48px);
    letter-spacing: -.045em;
    line-height: 1.15;
}

.section-heading>p:last-child {
    color: var(--muted);
    font-size: 16px;
    line-height: 1.8;
}

.solutions {
    background: #fff;
}

.solution-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    padding: 0 5%;
    /* border: solid 11px red; */
}

.solution-card {
    padding: clamp(22px, 3vw, 38px);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: #fff;
    box-shadow: 0 16px 42px rgba(15, 35, 69, .06);
    /* border: solid 11px red; */
    margin: 0 3%;
}

.solution-card--muted {
    background: #f5f5f5;
}

.solution-card--accent {
    position: relative;
    border: 2px solid rgba(254, 122, 6, .22);
    border-top: 8px solid var(--orange);
    background: #fffcfa;
    box-shadow: 0 22px 55px rgba(254, 122, 6, .1);
    /* border: solid 11px red; */
    margin: 0 3%;
}

.solution-card h3 {
    margin-bottom: 24px;
    color: #3a4358;
    font-size: clamp(24px, 2.5vw, 34px);
    letter-spacing: -.04em;
    text-align: center;
}

.solution-card--accent h3 span {
    color: var(--orange);
}

.solution-row {
    display: grid;
    grid-template-columns: 48px minmax(120px, .85fr) minmax(0, 1.25fr);
    gap: 14px;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid var(--line);
}

.solution-row:last-of-type {
    border-bottom: 0;
}

.solution-icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 50%;
    background: #e4e4e4;
    color: #8c8c8c;
    font-size: 17px;
}

.solution-card--accent .solution-icon {
    border: 1px solid rgba(254, 122, 6, .12);
    background: var(--orange-light);
    color: var(--orange);
    box-shadow: 0 7px 18px rgba(254, 122, 6, .12);
}

.solution-row strong {
    color: var(--navy);
    font-size: 15px;
}

.solution-card--accent .solution-row strong::before {
    color: #22c55e;
    content: "✓ ";
}

.solution-row p {
    color: var(--muted);
    font-size: 13px;
    line-height: 1.65;
}

.solution-card__footer {
    margin-top: 24px;
    padding: 14px;
    border-radius: 13px;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
}

.solution-card__footer--muted {
    background: #e9e9e9;
    color: #777;
}

.solution-card__footer--accent {
    background: var(--orange-light);
    color: var(--orange);
}

/* ====================== Projects works =========================== */

.results {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: clamp(64px, 5vw, 110px) 0;
    background: radial-gradient(circle at 50% 35%, #fff 0, #fffaf7 31%, transparent 58%), #fff8f1;
}

.results__content {
    position: relative;
    z-index: 1;
}

.dot-field {
    position: absolute;
    z-index: -1;
    width: 220px;
    height: 390px;
    opacity: .45;
    background-image: radial-gradient(#f5b48a 1.5px, transparent 1.8px);
    background-size: 15px 15px;
}

.dot-field--left {
    top: 0;
    left: 0;
    mask-image: linear-gradient(90deg, #000, transparent);
}

.dot-field--right {
    top: 130px;
    right: 0;
    mask-image: linear-gradient(270deg, #000, transparent);
}

.results-orbit {
    position: absolute;
    z-index: -1;
    border: 1px solid #f3c5aa;
    border-radius: 50%;
}

.results-orbit--one {
    top: 190px;
    left: -370px;
    width: 560px;
    height: 560px;
}

.results-orbit--two {
    bottom: -160px;
    left: -260px;
    width: 450px;
    height: 450px;
}

.section-heading--results {
    max-width: 880px;
}

.section-heading--results .pill {
    margin-bottom: 3px;
}

.divider-label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-top: 26px;
    color: var(--navy);
    font-size: 16px;
}

.divider-label span {
    width: min(13vw, 165px);
    height: 1px;
    background: #ded3ce;
}

.case-marquee {
    overflow: hidden;
    width: 100%;
    padding: 10px 0;
}

.case-track {
    display: flex;
    width: max-content;
    animation: case-scroll-left 60s linear infinite;
    will-change: transform;
}

.case-card--detail {
    flex: 0 0 min(calc((100vw - 96px) / 3), 450px);
    min-width: 0;
    margin-right: 16px;
    padding: 18px;
    border: 1px solid #efd9ce;
    border-radius: 16px;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 10px 22px rgba(59, 40, 25, .08);
    color: #102750;
}

.case-head {
    display: block;
}

.case-person {
    display: flex;
    gap: 12px;
    align-items: flex-start;
}

.case-person>span {
    display: grid;
    flex: none;
    width: 51px;
    height: 51px;
    place-items: center;
    border-radius: 50%;
    background: linear-gradient(145deg, #183866, #071738);
    color: #fff;
    font: 800 18px Manrope, sans-serif;
    overflow: hidden;
}

.case-person>span img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.case-person h3 {
    margin: 1px 0 3px;
    color: #102750;
    font: 800 16px/1.2 Manrope, sans-serif;
    letter-spacing: -.03em;
}

.case-person>div>p {
    margin: 0;
    color: #52617a;
    font-size: 12px;
}

.case-person b {
    margin: 0 4px;
}

.case-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
}

.case-tags em {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 6px;
    border: 1px solid #e7ebf0;
    border-radius: 99px;
    background: #fff;
    color: #182947;
    font-size: 9px;
    font-style: normal;
}

.case-tags i {
    color: #ff6508;
    font-size: 9px;
}

.case-rating {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 11px;
}

.case-rating strong {
    color: #ffb508;
    font-size: 17px;
    letter-spacing: 1px;
}

.case-rating p {
    margin: 0;
    color: #52617a;
    font-size: 10px;
}

.case-rating i {
    margin-right: 4px;
}

.case-card--detail blockquote {
    position: relative;
    min-height: 76px;
    margin: 15px 0;
    padding: 16px 16px 16px 42px;
    border-radius: 10px;
    background: linear-gradient(105deg, #fff5ef, #fffaf7);
    color: #142b54;
    font-size: 11px;
    line-height: 1.48;
}

.case-card--detail blockquote::before {
    position: absolute;
    top: 9px;
    left: 13px;
    color: #ff6508;
    content: '"';
    font: 800 43px/1 Georgia, serif;
}

.case-columns {
    display: grid;
    grid-template-columns: .9fr 1.2fr 1fr;
    border: 1px solid #f3e7e0;
    border-radius: 10px;
}

.case-columns section {
    min-width: 0;
    padding: 14px 9px;
}

.case-columns section+section {
    padding-left: 10px;
    border-left: 1px solid #f1e3dc;
}

.case-columns h4 {
    min-height: 30px;
    margin: 0 0 13px;
    color: #102750;
    font: 800 10px/1.3 Manrope, sans-serif;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.case-columns h4::after {
    display: block;
    width: 20px;
    height: 2px;
    margin-top: 7px;
    background: #102750;
    content: '';
}

.case-columns .solution h4,
.case-columns .solution h4::after {
    color: #ff6508;
    background: transparent;
}

.case-columns .solution h4::after {
    background: #ff6508;
}

.case-columns .outcome h4,
.case-columns .outcome h4::after {
    color: #079647;
    background: transparent;
}

.case-columns .outcome h4::after {
    background: #079647;
}

.case-columns p {
    display: flex;
    gap: 5px;
    align-items: flex-start;
    margin: 0 0 10px;
    color: #172744;
    font-size: 9px;
    line-height: 1.4;
}

.case-columns p i {
    display: grid;
    flex: none;
    width: 13px;
    height: 13px;
    place-items: center;
    border-radius: 50%;
    background: #edf0f3;
    color: #203552;
    font-size: 9px;
    font-style: normal;
}

.case-columns .solution p i {
    background: #ff6508;
    color: #fff;
}

.case-columns .outcome p i {
    border: 1px solid #0aa04f;
    background: #ecfaef;
    color: #079647;
}

@keyframes case-scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

.case-marquee:hover .case-track,
.case-marquee:focus-within .case-track {
    animation-play-state: paused;
}

@media (max-width:980px) {
    .case-track {
        animation-duration: 100s;
    }

    .case-card--detail {
        flex-basis: min(calc((100vw - 64px) / 2), 470px);
    }
}

@media (max-width:620px) {
    .case-track {
        animation-duration: 70s;
    }

    .case-card--detail {
        flex-basis: calc(100vw - 32px);
        margin-right: 14px;
        padding: 17px;
    }

    .case-person h3 {
        font-size: 16px;
    }

    .case-columns section {
        padding: 13px 7px;
    }
}

@media (prefers-reduced-motion:reduce) {
    .case-track {
        animation: none;
        width: 100%;
    }

    .case-card--detail[aria-hidden="true"] {
        display: none;
    }
}

.results-stats {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    margin: 28px 7px 25px;
    padding: 20px 28px 24px;
    border: 1px solid #f2dcd0;
    border-radius: 16px;
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 13px 24px rgba(100, 52, 21, .11);
}

.results-stats article {
    position: relative;
    display: grid;
    place-items: center;
    text-align: center;
}

.results-stats article+article::before {
    position: absolute;
    top: 16px;
    bottom: 11px;
    left: 0;
    width: 1px;
    content: "";
    background: #eadfd8;
}

.results-stats i {
    display: grid;
    width: 58px;
    height: 58px;
    margin-bottom: 8px;
    place-items: center;
    border: 1px solid #f8d9c8;
    border-radius: 50%;
    background: #fff4ed;
    color: var(--orange);
    font-size: 24px;
}

.results-stats strong {
    color: var(--navy);
    font-size: 30px;
    line-height: 1.1;
}

.results-stats p {
    margin-top: 5px;
    color: var(--navy);
    font-size: 13px;
    font-weight: 600;
}

.results-cta {
    display: flex;
    align-items: center;
    gap: 24px;
    max-width: 1110px;
    margin: auto;
    padding: 22px clamp(34px, 6vw, 85px);
    border-radius: 15px;
    background: radial-gradient(circle at 15% 0, #1a376b 0, transparent 27%), linear-gradient(105deg, #0d224d, #071637);
    box-shadow: 0 13px 20px rgba(17, 32, 68, .14);
    color: #fff;
    /* border: solid 1px red; */
}

.results-cta>span {
    display: grid;
    flex: 0 0 auto;
    width: 72px;
    height: 72px;
    place-items: center;
    border: 1px solid var(--orange);
    border-radius: 50%;
    color: var(--orange);
    font-size: 31px;
}

.results-cta h3 {
    font-size: 22px;
    letter-spacing: -.04em;
}

.results-cta p {
    margin-top: 5px;
    font-size: 14px;
}

.results-cta .button {
    margin-left: auto;
    white-space: nowrap;
}

/* ========================= TESTIMONIALS ========================= */

.testimonials {
    background: #fdf6f1;
    /* border: solid 11px red; */
    padding: 0 0 5% 0;
}

.testimonial-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
    margin-top: 0;
    /* border: solid 11px red; */
    padding: 2% 8%;
    background-color: #f5ede870;
    border-radius: 9px;
}

.testimonial-card {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 25px;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 14px 34px rgba(18, 38, 72, .06);
    transition: transform .25s ease, box-shadow .25s ease;
    /* border: solid 11px red; */
}

.testimonial-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 22px 45px rgba(18, 38, 72, .1);
}

.testimonial-quote {
    color: var(--orange);
    font-size: 25px;
    line-height: 1;
    margin-bottom: 14px;
}

.testimonial-text {
    flex: 1;
    color: #142b54;
    font-size: 13.5px;
    line-height: 1.7;
    margin-bottom: 22px;
}

.testimonial-client {
    display: flex;
    align-items: center;
    gap: 14px;
    padding-top: 18px;
    border-top: 1px solid var(--line);
}

.testimonial-logo {
    display: grid;
    flex: none;
    width: 52px;
    height: 52px;
    place-items: center;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 50%;
    background: #fff;
}

.testimonial-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.testimonial-info h3 {
    color: var(--navy);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -.02em;
}

.testimonial-info span {
    display: block;
    margin-top: 3px;
    color: #667085;
    font-size: 12px;
}

.testimonial-info p {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-top: 6px;
    color: #52617a;
    font-size: 11px;
}

.testimonial-info p i {
    color: var(--orange);
    font-size: 10px;
}

.testimonial-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    max-width: 720px;
    margin: 44px auto 0;
    text-align: left;
}

.testimonial-footer__icon {
    display: grid;
    flex: 0 0 auto;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 50%;
    background: var(--orange-light);
    color: var(--orange);
    font-size: 21px;
}

.testimonial-footer p {
    color: var(--muted);
    font-size: 14px;
    line-height: 1.6;
}

.testimonial-footer strong {
    color: var(--navy);
    font-weight: 800;
}

@media (max-width:900px) {
    .testimonial-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width:600px) {
    .testimonial-card {
        padding: 22px;
        border-radius: 16px;
    }

    .testimonial-quote {
        font-size: 28px;
        margin-bottom: 10px;
    }

    .testimonial-text {
        font-size: 14px;
        margin-bottom: 18px;
    }

    .testimonial-footer {
        flex-direction: column;
        text-align: center;
        gap: 14px;
        margin-top: 32px;
    }
}

/* ========================== WORKFLOW ======================= */

.workflow {
    background: #fff;
}

.workflow-card {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(280px, 1fr);
    gap: clamp(40px, 7vw, 82px);
    padding: clamp(30px, 5vw, 62px);
    border-radius: 30px;
    background: radial-gradient(circle at 0 0, rgba(254, 122, 6, .12), transparent 32%), linear-gradient(135deg, #07153e, #10265b);
    box-shadow: 0 30px 80px rgba(7, 21, 62, .25);
    color: #fff;
}

.workflow-card .pill {
    background: rgba(255, 255, 255, .08);
}

.workflow-card h2 {
    margin: 20px 0 16px;
    font-size: clamp(30px, 3.5vw, 43px);
    letter-spacing: -.045em;
    line-height: 1.15;
    color: var(--page);
}

.workflow-card__description {
    max-width: 700px;
    color: rgba(255, 255, 255, .72);
    font-size: 16px;
    line-height: 1.85;
}

.workflow-track {
    display: flex;
    align-items: flex-start;
    gap: 49px;
    margin: 38px 0 0;
    padding: 0 0 8px;
    overflow: auto;
    list-style: none;
}

.workflow-track li {
    position: relative;
    display: grid;
    flex: 0 0 70px;
    place-items: center;
    gap: 10px;
    text-align: center;
}

.workflow-track li:not(:last-child)::after {
    position: absolute;
    top: 32px;
    left: 70px;
    width: 42px;
    height: 2px;
    content: "";
    background: var(--orange);
}

.workflow-track li:not(:last-child)::before {
    position: absolute;
    z-index: 1;
    top: 28px;
    left: 103px;
    width: 8px;
    height: 8px;
    border-top: 2px solid var(--orange);
    border-right: 2px solid var(--orange);
    content: "";
    transform: rotate(45deg);
}

.workflow-track i {
    display: grid;
    width: 64px;
    height: 64px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 50%;
    background: #fff3eb;
    color: var(--orange);
    box-shadow: 0 12px 30px rgba(0, 0, 0, .25);
    font-size: 25px;
}

.workflow-track li:nth-child(2) i {
    background: #edf4ff;
    color: #2563eb;
}

.workflow-track li:nth-child(3) i {
    background: #f3ebff;
    color: #7c3aed;
}

.workflow-track li:nth-child(5) i {
    background: #fff0ec;
    color: #f97316;
}

.workflow-track li:nth-child(6) i {
    background: #eef2ff;
    color: var(--navy);
}

.workflow-track li:nth-child(7) i {
    background: #eafbf0;
    color: #22c55e;
}

.workflow-track span {
    font-size: 13px;
    font-weight: 500;
}

.workflow-card__features h3 {
    color: var(--orange);
    font-size: clamp(23px, 2.6vw, 30px);
    line-height: 1.3;
}

.workflow-card__features>div {
    position: relative;
    padding: 14px 0 14px 26px;
    border-bottom: 1px solid rgba(255, 255, 255, .09);
}

.workflow-card__features>div:last-child {
    border: 0;
}

.workflow-card__features>div::before {
    position: absolute;
    top: 15px;
    left: 0;
    color: var(--orange);
    content: "✓";
    font-weight: 800;
}

.workflow-card__features strong {
    font-size: 15px;
}

.workflow-card__features p {
    margin-top: 5px;
    color: rgba(255, 255, 255, .72);
    font-size: 13px;
    line-height: 1.65;
}

@media (max-width:1050px) {
    .hero__grid {
        grid-template-columns: 1fr 1fr;
        gap: 35px;
    }

    .metrics {
        grid-template-columns: repeat(2, 1fr);
        gap: 10px 0;
    }

    .metric:nth-child(3) {
        border-left: 0;
    }

    .metric:nth-child(3),
    .metric:nth-child(4) {
        border-top: 1px solid #ececec;
    }

    .workflow-card {
        grid-template-columns: 1fr;
    }
}

@media (max-width:780px) {
    .container {
        width: min(100% - 32px, 1280px);
    }

    .site-header__inner {
        min-height: 72px;
    }

    .brand {
        width: 150px;
    }

    .site-menu {
        position: relative;
    }

    .site-menu summary {
        display: grid;
        width: 42px;
        height: 42px;
        place-content: center;
        gap: 5px;
        border: 1px solid var(--line);
        border-radius: 9px;
        list-style: none;
    }

    .site-menu summary span {
        width: 20px;
        height: 2px;
        background: var(--navy);
        transition: transform .2s ease;
    }

    .site-menu[open] summary span:first-child {
        transform: translateY(7px) rotate(45deg);
    }

    .site-menu[open] summary span:nth-child(2) {
        opacity: 0;
    }

    .site-menu[open] summary span:last-child {
        transform: translateY(-7px) rotate(-45deg);
    }

    .site-menu nav {
        position: absolute;
        top: 52px;
        right: 0;
        display: none;
        width: min(280px, calc(100vw - 32px));
        padding: 12px 20px;
        border: 1px solid var(--line);
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 16px 38px rgba(15, 35, 69, .16);
    }

    .site-menu[open] nav {
        display: grid;
    }

    .site-menu a {
        padding: 12px 0;
    }

    .hero {
        padding-top: 48px;
    }

    .hero__grid,
    .solution-grid {
        grid-template-columns: 1fr;
    }

    .hero__content {
        text-align: center;
    }

    .hero__content .pill {
        text-align: left;
    }

    .hero__description {
        margin-inline: auto;
    }

    .button-row,
    .hero__trust {
        justify-content: center;
    }

    .hero__art {
        justify-self: center;
        max-width: 520px;
    }

    .results-stats {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px 0;
    }

    .results-stats article:nth-child(4)::before {
        display: none;
    }

    .results-stats article:nth-child(4),
    .results-stats article:nth-child(5) {
        border-top: 1px solid #eadfd8;
        padding-top: 20px;
    }

    .results-stats article:last-child {
        grid-column: 2;
    }

    .results-cta {
        flex-wrap: wrap;
    }

    .results-cta .button {
        width: 100%;
        margin-left: 0;
    }

    .dot-field--left {
        left: -115px;
    }

    .dot-field--right {
        right: -115px;
    }
}

@media (max-width:900px) {
    .workflow-track {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        gap: 24px;
        margin-top: 32px;
        overflow: visible;
    }

    .workflow-track li {
        flex: none;
        width: 100%;
    }

    .workflow-track li::before,
    .workflow-track li::after {
        display: none;
    }

    .workflow-track i {
        width: 58px;
        height: 58px;
        font-size: 22px;
    }
}

@media (max-width:560px) {
    .workflow-track {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width:540px) {
    .hero h1 {
        font-size: clamp(38px, 11vw, 52px);
    }

    .button-row {
        flex-direction: column;
    }

    .button {
        width: 100%;
    }

    .metrics {
        grid-template-columns: 1fr;
        padding: 18px;
    }

    .metric,
    .metric+.metric {
        justify-content: flex-start;
        border: 0;
    }

    .metric+.metric {
        border-top: 1px solid #ececec;
    }

    .solution-row {
        grid-template-columns: 46px 1fr;
        gap: 10px 13px;
    }

    .solution-row p {
        grid-column: 2;
    }

    .section-heading>p:last-child {
        font-size: 14px;
    }

    .divider-label {
        gap: 8px;
        font-size: 12px;
    }

    .divider-label span {
        width: 22px;
    }

    .results-stats {
        grid-template-columns: repeat(2, 1fr);
        margin-inline: 0;
        padding-inline: 12px;
    }

    .results-stats article:nth-child(2n)::before {
        display: none;
    }

    .results-stats article:nth-child(3),
    .results-stats article:nth-child(4) {
        border-top: 1px solid #eadfd8;
        padding-top: 20px;
    }

    .results-stats article:last-child {
        grid-column: 1 / -1;
    }

    .results-cta {
        gap: 14px;
        padding: 20px;
    }

    .results-cta>span {
        width: 54px;
        height: 54px;
        font-size: 23px;
    }

    .results-cta h3 {
        font-size: 17px;
    }

    .results-cta p {
        font-size: 12px;
    }

    .workflow-card {
        padding: 26px 20px;
    }

    .workflow-card__description {
        font-size: 14px;
    }
}

/* ====================== FAQ =================== */

#glu-faq {
    --faq-navy: #102750;
    --faq-orange: #ff6508;
    --faq-text: #5e6a7c;
    --faq-line: #e4e7eb;
    --faq-bg: #fff;
    padding: clamp(25px, 3vw, 106px) 0;
    background: var(--faq-bg);
    font-family: Poppins, Arial, sans-serif;
}

#glu-faq *,
#glu-faq *::before,
#glu-faq *::after {
    box-sizing: border-box;
}

#glu-faq :where(h2, h3, p) {
    margin: 0;
}

#glu-faq a {
    text-decoration: none;
}

#glu-faq .glu-faq-wrap {
    width: min(100% - 48px, 1455px);
    margin-inline: auto;
}

#glu-faq .glu-faq-heading {
    margin: 0 auto 30px;
    text-align: center;
}

#glu-faq .glu-faq-heading>p {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: max-content;
    max-width: 100%;
    padding: 8px 15px;
    border: 1px solid color-mix(in srgb, var(--orange) 55%, white);
    border-radius: 999px;
    background: #fff7f2;
    color: var(--orange);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .075em;
    line-height: 1.25;
    text-transform: uppercase;
}

#glu-faq .glu-faq-heading>p i {
    font-size: 20px;
}

#glu-faq .glu-faq-heading h2 {
    margin: 12px 0 7px;
    color: var(--faq-navy);
    font: 800 clamp(34px, 4vw, 52px)/1.12 Manrope, Poppins, sans-serif;
    letter-spacing: -.055em;
}

#glu-faq .glu-faq-heading h2 span {
    color: var(--faq-orange);
}

#glu-faq .glu-faq-heading>span {
    color: #657187;
    font-size: 16px;
}

#glu-faq .glu-faq-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 320px;
    gap: 25px;
    align-items: stretch;
}

#glu-faq .glu-faq-list {
    display: grid;
    align-content: start;
}

#glu-faq .glu-faq-item {
    overflow: hidden;
    border: 1px solid var(--faq-line);
    border-radius: 10px;
    background: #fff;
    padding: 3px 0;
    margin-bottom: 7px;
}

#glu-faq .glu-faq-item+.glu-faq-item {
    margin-top: -1px;
}

#glu-faq .glu-faq-item[open] {
    position: relative;
    z-index: 1;
    border-color: #dfe3e8;
    box-shadow: 0 3px 10px rgba(20, 36, 68, .04);
}

#glu-faq .glu-faq-item summary {
    display: flex !important;
    min-height: 48px !important;
    align-items: center !important;
    gap: 17px !important;
    padding: 11px 24px !important;
    color: var(--faq-navy) !important;
    cursor: pointer !important;
    list-style: none !important;
}

#glu-faq .glu-faq-item summary::-webkit-details-marker {
    display: none;
}

#glu-faq .glu-faq-question {
    display: grid;
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    place-items: center;
    border: 2px solid var(--faq-orange);
    border-radius: 50%;
    color: var(--faq-orange);
    font-family: Manrope, Poppins, sans-serif;
    font-size: 17px;
    font-style: normal;
    font-weight: 800;
}

#glu-faq .glu-faq-item summary strong {
    flex: 1;
    font: 700 16px/1.35 Manrope, Poppins, sans-serif;
    letter-spacing: -.02em;
}

#glu-faq .glu-faq-arrow {
    flex: 0 0 auto;
    color: #5d6877;
    font-size: 15px;
    transition: transform .2s ease, color .2s ease;
}

#glu-faq details[open] .glu-faq-arrow {
    color: var(--faq-orange);
    transform: rotate(180deg);
}

#glu-faq .glu-faq-answer {
    padding: 0 55px 15px 81px;
    color: var(--faq-text);
    font-size: 14px;
    line-height: 1.58;
}

#glu-faq .glu-faq-answer p {
    max-width: 720px;
}

#glu-faq .glu-faq-help {
    position: relative;
    display: flex;
    min-height: 456px;
    flex-direction: column;
    align-items: center;
    overflow: hidden;
    padding: 51px 26px 25px;
    border: 1px solid var(--faq-line);
    border-radius: 12px;
    background: radial-gradient(circle at 20% 28%, rgba(255, 111, 23, .14) 1px, transparent 1.8px) 0 0/13px 13px, #fff;
    text-align: center;
}

#glu-faq .glu-faq-help::after {
    position: absolute;
    top: 65px;
    right: 42px;
    color: var(--faq-orange);
    content: "✦";
    font-size: 18px;
}

#glu-faq .glu-faq-bubbles {
    position: relative;
    width: 150px;
    height: 143px;
}

#glu-faq .glu-faq-bubble-one {
    position: absolute;
    z-index: 2;
    top: 10px;
    left: 10px;
    display: grid;
    width: 89px;
    height: 72px;
    place-items: center;
    border-radius: 50%;
    background: linear-gradient(145deg, #ff780e, #f55d00);
    box-shadow: 0 10px 22px rgba(255, 101, 8, .22);
    color: #fff;
}

#glu-faq .glu-faq-bubble-one::after {
    position: absolute;
    bottom: -9px;
    left: 12px;
    width: 24px;
    height: 24px;
    border-radius: 0 0 0 18px;
    background: #f76302;
    content: "";
    transform: rotate(31deg);
}

#glu-faq .glu-faq-bubble-one b {
    position: relative;
    z-index: 1;
    font-size: 33px;
    letter-spacing: 5px;
    line-height: .25;
}

#glu-faq .glu-faq-bubble-two {
    position: absolute;
    right: 5px;
    top: 52px;
    width: 65px;
    height: 53px;
    border: 4px solid #fff;
    border-radius: 50%;
    background: #d9dce0;
    box-shadow: 0 3px 8px rgba(18, 34, 64, .1);
}

#glu-faq .glu-faq-bubble-two::after {
    position: absolute;
    right: 3px;
    bottom: -9px;
    width: 18px;
    height: 18px;
    border-radius: 0 0 14px 0;
    background: #d9dce0;
    content: "";
    transform: rotate(28deg);
}

#glu-faq .glu-faq-help h3 {
    margin: 6px 0 10px;
    color: var(--faq-navy);
    font: 800 26px/1.2 Manrope, Poppins, sans-serif;
    letter-spacing: -.05em;
}

#glu-faq .glu-faq-help h3 span {
    color: var(--faq-orange);
}

#glu-faq .glu-faq-help p {
    max-width: 235px;
    color: var(--faq-text);
    font-size: 14px;
    line-height: 1.55;
}

#glu-faq .glu-faq-help p strong {
    display: inline-block;
    margin-bottom: 10px;
    font-weight: 500;
}

#glu-faq .glu-faq-help>a {
    display: inline-flex !important;
    width: 100% !important;
    min-height: 53px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 17px !important;
    margin-top: auto !important;
    padding: 13px 15px !important;
    border-radius: 7px !important;
    background: var(--faq-orange) !important;
    box-shadow: 0 10px 18px rgba(255, 101, 8, .18) !important;
    color: #fff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

@media (max-width:880px) {
    #glu-faq .glu-faq-layout {
        grid-template-columns: 1fr;
    }

    #glu-faq .glu-faq-help {
        min-height: 350px;
        max-width: 580px;
        width: 100%;
        margin: auto;
    }

    #glu-faq .glu-faq-help>a {
        max-width: 310px;
        margin-top: 22px !important;
    }
}

@media (max-width:560px) {
    #glu-faq {
        padding: 60px 0;
    }

    #glu-faq .glu-faq-wrap {
        width: min(100% - 32px, 1195px);
    }

    #glu-faq .glu-faq-heading>span {
        display: block;
        font-size: 13px;
        line-height: 1.55;
    }

    #glu-faq .glu-faq-item summary {
        gap: 11px !important;
        padding: 12px 13px !important;
    }

    #glu-faq .glu-faq-question {
        width: 25px;
        height: 25px;
        font-size: 15px;
    }

    #glu-faq .glu-faq-item summary strong {
        font-size: 13px;
    }

    #glu-faq .glu-faq-arrow {
        font-size: 12px;
    }

    #glu-faq .glu-faq-answer {
        padding: 0 18px 15px 49px;
        font-size: 12px;
    }

    #glu-faq .glu-faq-help {
        min-height: 330px;
        padding-inline: 18px;
    }
}

/* Fully isolated CTA + footer. Keep this CSS at the END of your style.css. */

#glu-end {
    --navy: #102750;
    --orange: #ff6508;
    --text: #515b70;
    --cream: #fff9f4;
    --line: #e6ddd7;
    font-family: Poppins, Arial, sans-serif;
    color: var(--navy);
    background: var(--cream);
}

#glu-end *,
#glu-end *::before,
#glu-end *::after {
    box-sizing: border-box;
}

#glu-end :where(h2, h3, p) {
    margin: 0;
}

#glu-end a {
    text-decoration: none;
}

.glu-wrap {
    width: min(100% - 48px, 1458px);
    margin-inline: auto;
}


#glu-end .glu-cta::before,
#glu-end .glu-cta::after {
    position: absolute;
    width: 205px;
    height: 290px;
    content: "";
    opacity: .48;
    background-image: radial-gradient(#f5b48a 1.45px, transparent 1.7px);
    background-size: 15px 15px;
}

#glu-end .glu-cta::before {
    top: 0;
    left: 0;
}

#glu-end .glu-cta::after {
    right: 0;
    bottom: 0;
    mask-image: linear-gradient(270deg, #000, transparent);
}


#glu-end .glu-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 9px 16px;
    border: 1px solid #ff9e65;
    border-radius: 999px;
    color: var(--orange);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .1em;
    line-height: 1.2;
    text-transform: uppercase;
}

#glu-end .glu-cta-copy h2 {
    margin: 28px 0 18px;
    color: var(--navy);
    font: 800 clamp(44px, 4.05vw, 61px)/.98 Manrope, Poppins, sans-serif;
    letter-spacing: -.065em;
}

#glu-end .glu-cta-copy h2 span {
    color: var(--orange);
}


#glu-end .glu-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 27px;
}

#glu-end .glu-button {
    display: inline-flex !important;
    width: auto !important;
    min-height: 57px !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 17px !important;
    padding: 13px 25px !important;
    border: 1px solid transparent !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    transition: transform .2s ease, background .2s ease !important;
}

#glu-end .glu-button:hover {
    transform: translateY(-3px);
}

#glu-end .glu-button-primary {
    background: var(--orange) !important;
    box-shadow: 0 11px 19px rgba(255, 101, 8, .18) !important;
    color: #fff !important;

}

#glu-end .glu-button-secondary {
    border-color: var(--navy) !important;
    background: transparent !important;
    color: var(--navy) !important;
}

#glu-end .glu-button-secondary:hover {
    background: var(--navy) !important;
    color: #fff !important;
}

#glu-end .glu-rating {
    display: flex;
    align-items: center;
    gap: 17px;
    justify-content: center;
    margin-top: 1px;
    color: #687287;
    padding-top: 4%;
    font-size: 14px;
    border-top: solid 1px rgba(124, 124, 124, 0.257) ;
}

#glu-end .glu-rating span {
    color: var(--orange);
    font-size: 24px;
    letter-spacing: 3px;
    line-height: 1;
}

#glu-end .glu-rating b {
    width: 1px;
    height: 27px;
    background: #d9dce3;
}


#glu-end .glu-system-row {
    display: grid;
    align-items: stretch;
    width: 100%;
}

#glu-end .glu-system-row-top {
    grid-template-columns: repeat(5, 1fr);
    padding-bottom: 48px;
    border-bottom: 1px solid var(--line);
}

#glu-end .glu-system-row-bottom {
    grid-template-columns: repeat(4, 1fr);
    padding: 0 10px;
}

#glu-end .glu-system {
    display: grid;
    min-width: 0;
    place-items: center;
    gap: 13px;
    padding: 3px 12px;
    color: #1a2134;
    font-size: 14px;
    text-align: center;
}

#glu-end .glu-system+.glu-system {
    border-left: 1px solid var(--line);
}

#glu-end .glu-system i {
    color: var(--orange);
    font-size: 32px;
}

#glu-end .glu-system strong {
    font-family: Manrope, Poppins, sans-serif;
    font-weight: 700;
    white-space: nowrap;
}

.glu-assessment {
    margin-top: 15px;
    /* border: solid 1px red; */
    padding: 1.5% 2% 2.5% 3%;
    background-color: #f3ede66b;
    border-radius: 10px;
    max-width: 725px;
}

.glu-assessment-text {
    color: var(--text);
    font-size: 13.4px;
    line-height: 1.75;
    margin-bottom: 20px;
    /* border: solid 1px red; */
    max-width: 685px;
}

#glu-end .glu-cta-description {
    color: var(--text);
    font-size: 16px;
    line-height: 1.67;
    max-width: 725px;
    /* border: solid 1px red; */
}

.glu-checklist {
    display: flex;
    gap: 20px;
    margin: 0;
    padding: 5px 0 0 0;
    list-style: none;
    /* border: solid 1px red; */
}

.glu-checklist li {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #4a4a4a;
    font-size: 13.4px;
    font-weight: 400;
}

.glu-checklist i {
    color: #1DB954;
    font-size: 13px;
}

.glu-mini-title {
    display: inline-block;
    margin-bottom: 30px;
    color: var(--orange);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

/* main div */
#glu-end .glu-cta {
    position: relative;
    overflow: hidden;
    padding: 50px 21px;
    background: #fff8f3;
}

/* sub div */
#glu-end .glu-cta-card {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: minmax(370px, .99fr) minmax(540px, 1.01fr);;
    gap: clamp(18px, 3vw, 4px);
    align-items: center;
    min-height: 538px;
    padding: 48px 61px;
    border-radius: 24px;
    background: radial-gradient(circle at 46% 38%, rgba(255, 137, 68, .07), transparent 32%), #fff;
    box-shadow: 0 18px 40px rgba(88, 50, 25, .1);
    /* border: solid 6px red; */
}

/* left div */
/* .glu-cta-copy {
    border: solid 5px rgb(255, 149, 0);
} */

/* right div */
#glu-end .glu-systems {
    display: flex;
    flex-direction: column;
    gap: 28px;
    /* border: solid 6px rgb(17, 255, 0); */
}

/* ================ MODAL ======================= */

.baddie {
    font-family: Poppins, sans-serif;
    background: #faf6f2;
    display: grid;
    place-items: center;

}

.btn {
    background: var(--orange);
    color: #fff;
    border: none;
    padding: 16px 24px;
    border-radius: 12px;
    font-weight: 700;
    cursor: pointer
}

.overlay {
    position: fixed;
    inset: 0;
    background: rgba(16, 39, 80, .45);
    backdrop-filter: blur(8px);
    display: none;
    align-items: center;
    justify-content: center
}

.overlay.show {
    display: flex
}

.modal {
    background: #fff;
    padding: 40px;
    border-radius: 24px;
    width: min(760px, 92vw);
    position: relative
}

.close {
    position: absolute;
    top: 18px;
    right: 18px;
    background: none;
    border: none;
    font-size: 30px
}

.tag {
    border: 1px solid #ffb27c;
    padding: 8px 14px;
    border-radius: 999px;
    color: var(--orange);
    font-size: 12px;
    font-weight: 700
}

h2 {
    font: 800 42px Manrope, sans-serif;
    color: var(--navy)
}

.gridmodal {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    padding: 2% 0;
    /* border: solid 1px red; */
}

.select-wrap {
    position: relative;
}

.modal select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.select-wrap::after {
    content: "\f107";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #666;
    pointer-events: none;
}

.privacy{
    padding: 0 0 10px 0;
    border-radius: 999px;
    color: var(--orange);
    font-size: 12px;
    font-weight: 600
}

input,
select,
textarea {
    width: 100%;
    padding: 14px;
    border: 1px solid #ddd;
    border-radius: 12px;
    margin: 8px 0
}

.step {
    display: none
}

.step.active {
    display: block
}

.success {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background: #e9fff2;
    color: #18a558;
    font-size: 42px;
    margin: auto
}

@media(max-width:700px) {
    .grid {
        grid-template-columns: 1fr
    }
}

.step-description {
    margin: 8px 0 28px;
    color: #667085;
    font-size: 15px;
    line-height: 1.7;
}

.modal label {
    display: block;
    margin: 22px 0 8px;
    color: var(--navy);
    font-size: 14px;
    font-weight: 600;
}

.modal label span {
    color: var(--orange);
}

.modal label small {
    color: #8d95a5;
    font-weight: 400;
    font-size: 12px;
    margin-left: 4px;
}

.modal-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 28px;
    gap: 20px;
}

.privacy {
    color: #7b8597;
    font-size: 13px;
}

.modal input::placeholder,
.modal textarea::placeholder {
    font-size: 12px;
    color: #8b8b8b;
    font-weight: 400;
}

.modal-buttons {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 35px;
}

.btn-secondary {
    background: #fff;
    color: var(--navy);
    border: 1px solid #d8dde6;
    box-shadow: none;
}

.btn-secondary:hover {
    background: #f8f9fb;
}

.success-checks {
    margin: 30px 0;
    display: grid;
    gap: 12px;
}

.success-checks p {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #44536c;
    font-size: 15px;
}

#contactInfoWrapper {
    display: none;
    animation: fadeIn .25s ease;
}

.modal input,
.modal select,
.modal textarea {
    transition: .2s;
}

.modal input:focus,
.modal select:focus,
.modal textarea:focus {
    outline: none;
    border-color: var(--orange);
    box-shadow: 0 0 0 4px rgba(255, 101, 8, .12);
}


@keyframes fadeIn {

    from {
        opacity: 0;
        transform: translateY(8px);
    }

    to {
        opacity: 1;
        transform: none;
    }

}


/* ==========. FOOTER ================ */

#glu-end .glu-footer {
    position: relative;
    overflow: hidden;
    padding: 39px 0 0;
    background-color: #0C1E4C;
}

#glu-end .glu-footer-grid {
    display: grid;
    grid-template-columns: 1.35fr repeat(3, 1fr);
    gap: clamp(35px, 6vw, 86px);
    padding-bottom: 34px;
}

#glu-end .glu-logo {
    display: inline-flex !important;
    width: auto !important;
    height: auto !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 0 5% 0 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #FEF7F1 !important;
    font: 800 35px/1 Manrope, Poppins, sans-serif !important;
    letter-spacing: -.02em !important;
}

.GUL-foot-logo {
    width: 60px;
    height: 60px;
}

#glu-end .glu-logo>span:last-child>span {
    color: var(--orange);
}

#glu-end .glu-tagline {
    margin: 13px 0 23px !important;
    color: #fbfbfb !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: .25em !important;
    text-transform: uppercase !important;
}

#glu-end .glu-brand-copy {
    max-width: 285px;
    color: #f2f2f2;
    font-size: 14px;
    line-height: 1.7;
}

#glu-end .glu-socials {
    display: flex;
    gap: 13px;
    margin-top: 23px;
}

#glu-end .glu-socials a {
    display: grid !important;
    width: 40px !important;
    height: 40px !important;
    place-items: center !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;
    background: #f0edf0 !important;
    color: var(--navy) !important;
    font-size: 16px !important;
}

#glu-end .glu-socials a:hover {
    background: var(--orange) !important;
    color: #fff !important;
}

#glu-end .glu-link-col {
    display: grid;
    align-content: start;
}

#glu-end .glu-link-col h3 {
    position: relative;
    margin: 4px 0 14px;
    color: white;
    font: 800 14px/1 Manrope, Poppins, sans-serif;
    letter-spacing: .04em;
    text-transform: uppercase;
}

#glu-end .glu-link-col h3::after {
    display: block;
    width: 27px;
    height: 2px;
    margin-top: 10px;
    content: "";
    background: var(--orange);
    
}

#glu-end .glu-link-col a {
    display: flex !important;
    width: auto !important;
    height: auto !important;
    min-height: 37px !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1px !important;
    padding: 0 20% 0 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(19, 40, 79, .1) !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #f6f6f6 !important;
    font-size: 14px !important;
    transition: color .2s ease, padding .2s ease !important;
    /* border: solid 1px red !important; */
}

#glu-end .glu-link-col a:hover {
    padding-left: 5px !important;
    background: transparent !important;
    color: var(--orange) !important;
}

#glu-end .glu-link-col a i {
    font-size: 11px;
    color: white;
}

#glu-end .glu-footer-bottom {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    padding: 24px 0;
    border-top: 1px solid var(--line);
    color: #bcbcbc;
    font-size: 13px;
}

#glu-end .glu-footer-bottom i {
    margin: 0 8px;
    color: var(--orange);
}

@media (max-width:1080px) {
    #glu-end .glu-cta-card {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    #glu-end .glu-cta-copy {
        max-width: 590px;
    }

    #glu-end .glu-systems {
        max-width: 700px;
        width: 100%;
    }

    #glu-end .glu-footer-grid {
        grid-template-columns: 1.35fr 1fr 1fr;
    }

    #glu-end .glu-link-col:last-child {
        grid-column: 2 / -1;
    }

    #glu-end .glu-brand-col {
        grid-row: span 2;
    }
}

@media (max-width:700px) {
    .glu-wrap {
        width: min(100% - 32px, 1318px);
    }

    #glu-end .glu-cta {
        padding-top: 32px;
    }

    #glu-end .glu-cta-card {
        min-height: 0;
        padding: 33px 22px;
        border-radius: 20px;
    }

    #glu-end .glu-cta-copy h2 {
        margin-top: 23px;
        font-size: clamp(38px, 11vw, 50px);
    }

    #glu-end .glu-cta-description {
        font-size: 15px;
    }

    #glu-end .glu-actions {
        flex-direction: column;
        gap: 11px;
    }

    #glu-end .glu-button {
        width: 100% !important;
    }

    #glu-end .glu-rating {
        gap: 11px;
        font-size: 12px;
    }

    #glu-end .glu-rating span {
        font-size: 18px;
        letter-spacing: 1px;
    }

    #glu-end .glu-systems {
        gap: 29px;
    }

    #glu-end .glu-system-row-top {
        grid-template-columns: repeat(3, 1fr);
        gap: 22px 0;
        padding-bottom: 28px;
    }

    #glu-end .glu-system-row-bottom {
        grid-template-columns: repeat(2, 1fr);
        padding: 0;
    }

    #glu-end .glu-system {
        gap: 8px;
        padding: 3px 6px;
        font-size: 12px;
    }

    #glu-end .glu-system i {
        font-size: 24px;
    }

    #glu-end .glu-system-row-top .glu-system:nth-child(4) {
        border-left: 0;
    }

    #glu-end .glu-system-row-top .glu-system:nth-child(4),
    #glu-end .glu-system-row-top .glu-system:nth-child(5) {
        border-top: 1px solid var(--line);
        padding-top: 18px;
    }

    #glu-end .glu-system-row-bottom .glu-system:nth-child(3) {
        border-left: 0;
    }

    #glu-end .glu-system-row-bottom .glu-system:nth-child(3),
    #glu-end .glu-system-row-bottom .glu-system:nth-child(4) {
        border-top: 1px solid var(--line);
        padding-top: 18px;
    }

    #glu-end .glu-footer {
        padding-top: 46px;
    }

    #glu-end .glu-footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 39px 28px;
    }

    #glu-end .glu-brand-col {
        grid-row: auto;
        grid-column: 1 / -1;
    }

    #glu-end .glu-link-col:last-child {
        grid-column: 1 / -1;
    }

    #glu-end .glu-footer-bottom {
        flex-direction: column;
        gap: 8px;
        padding-block: 19px;
        font-size: 12px;
    }
}