.lgi-lp {
    --lgi-blue: #036eff;
    --lgi-blue-panel: #1f67fa;
    --lgi-blue-check: #3a8eff;
    --lgi-orange: #ffa852;
    --lgi-ink: #333842;
    --lgi-navy: #012a56;
    --lgi-tint: #edf7ff;
    --lgi-tint-strong: #c2e3ff;
    --lgi-field: rgb(244 248 251 / 60%);
    --lgi-field-border: #dce6ef;
    --lgi-muted: #33475b;
    --lgi-white: #fff;
    --fs-title: clamp(1.75rem, 1.362rem + 1.66vw, 2.6875rem);
    --fs-contact: clamp(1.125rem, 0.97rem + 0.66vw, 1.5rem);
    --fs-name: clamp(1.25rem, 1.095rem + 0.66vw, 1.625rem);
    --fs-body: clamp(1rem, 0.897rem + 0.44vw, 1.25rem);
    --fs-eyebrow: clamp(0.8125rem, 0.683rem + 0.55vw, 1.125rem);
    --fs-label: clamp(0.9375rem, 0.86rem + 0.33vw, 1.125rem);
    --fs-small: clamp(0.9375rem, 0.886rem + 0.22vw, 1.0625rem);
    --fs-fine: clamp(0.8125rem, 0.79rem + 0.17vw, 0.9375rem);
    --fs-xs: clamp(0.6875rem, 0.664rem + 0.1vw, 0.75rem);
    --gap-10: clamp(0.5rem, 0.44rem + 0.28vw, 0.625rem);
    --gap-20: clamp(0.875rem, 0.76rem + 0.55vw, 1.25rem);
    --gap-28: clamp(1.25rem, 1.16rem + 0.44vw, 1.5rem);
    --gap-30: clamp(1.25rem, 1.09rem + 0.83vw, 1.875rem);
    --gap-40: clamp(1.5rem, 1.24rem + 1.1vw, 2.5rem);
    --gap-60: clamp(2rem, 1.28rem + 3.09vw, 3.75rem);
    --gap-80: clamp(2.5rem, 1.46rem + 4.42vw, 5rem);
    --section-y: clamp(3.5rem, 2.36rem + 4.86vw, 6.25rem);
    --card-pad-y: clamp(1.75rem, 0.92rem + 3.54vw, 3.75rem);
    --card-pad-x: clamp(2rem, 0.92rem + 3.54vw, 4.75rem);
    --card-pad: var(--card-pad-y) var(--card-pad-x);
    --gutter: clamp(1.25rem, 0.7rem + 2.34vw, 2.5rem);
    --content-max: 71.875rem;
    --media-size: clamp(13.75rem, 8rem + 22vw, 25.875rem);
    --radius-card: 0.625rem;
    --radius-panel: 0.375rem;
    --radius-field: 0.4375rem;
    --radius-pill: 62.4375rem;
    font-family: Outfit, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
    font-size: var(--fs-body);
    line-height: 1.6;
    color: var(--lgi-ink);
    background: var(--lgi-white)
}

body {
    margin: 0
}

.pt-0 {
    padding-top: 0 !important
}

.pb-0 {
    padding-bottom: 0 !important
}

.lgi-lp *,
.lgi-lp ::after,
.lgi-lp ::before {
    box-sizing: border-box
}

.lgi-lp :where(h1, h2, h3, p, ul, ol, figure) {
    margin: 0
}

.lgi-lp :where(ul, ol) {
    padding: 0;
    list-style: none
}

.lgi-lp :where(img, svg) {
    display: block;
    max-width: 100%;
    height: auto;
}

.lgi-lp :where(a) {
    color: inherit;
    text-decoration: none
}

.lgi-lp :where(button, input, textarea, select) {
    font: inherit;
    color: inherit
}

.lgi-lp :where(a, button, input, textarea, select):focus-visible {
    outline: 2px solid var(--lgi-blue);
    outline-offset: 3px
}

.lgi-container {
    width: 100%;
    max-width: calc(var(--content-max) + var(--gutter) * 2);
    margin-inline: auto;
    padding-inline: var(--gutter)
}

.lgi-eyebrow {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    padding: var(--gap-10) var(--gap-20);
    border-radius: var(--radius-pill);
    font-size: var(--fs-eyebrow);
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: .093em;
    text-transform: uppercase;
    text-wrap: balance
}

.lgi-eyebrow--compact {
    padding: clamp(.375rem, .34rem + .17vw, .5rem) clamp(.75rem, .68rem + .33vw, 1rem);
    font-size: clamp(.8125rem, .6rem + .5vw, 1rem);
    letter-spacing: .08em
}

.lgi-eyebrow--solid {
    background: var(--lgi-blue);
    color: var(--lgi-white)
}

.lgi-eyebrow--light {
    background: var(--lgi-white);
    color: var(--lgi-ink)
}

.lgi-title {
    font-size: var(--fs-title);
    font-weight: 600;
    line-height: 1.26;
    letter-spacing: -.02em;
    text-wrap: pretty
}

.lgi-title--accent {
    color: var(--lgi-blue)
}

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

.lgi-lede {
    font-size: var(--fs-body);
    line-height: 1.6
}

.lgi-note {
    font-size: var(--fs-body);
    line-height: 1.4
}

.lgi-note strong {
    font-weight: 700
}

.lgi-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--gap-10);
    align-self: flex-start;
    padding: .875rem var(--gap-28);
    border: 0;
    border-radius: var(--radius-pill);
    background: var(--lgi-orange);
    color: var(--lgi-ink);
    font-size: var(--fs-body);
    font-weight: 500;
    line-height: 1.26;
    text-align: center;
    cursor: pointer;
    transition: background-color .2s ease, transform .2s ease
}

.lgi-btn:hover {
    background: #ffb872
}

.lgi-btn:active {
    transform: translateY(1px)
}

.lgi-btn__arrow {
    flex: none;
    width: .5rem;
    height: auto
}

.lgi-media {
    width: var(--media-size);
    height: auto;
    aspect-ratio: 1
}

.lgi-contact {
    display: flex;
    flex-direction: column
}

.lgi-contact__label {
    font-size: var(--fs-contact);
    line-height: 1.35
}

.lgi-contact__phone {
    font-size: var(--fs-contact);
    font-weight: 700;
    line-height: 1
}

.lgi-contact__phone:hover {
    color: var(--lgi-blue)
}

.lgi-contact__meta {
    font-size: var(--fs-small);
    line-height: 1.25
}

.lgi-contact--invert {
    gap: var(--gap-10);
    color: var(--lgi-white)
}

.lgi-contact--invert .lgi-contact__phone {
    margin-top: .3125rem
}

.lgi-contact--invert .lgi-contact__meta {
    color: var(--lgi-tint-strong)
}

.lgi-header {
    padding-block: 1rem;
    background: var(--lgi-white)
}

.lgi-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap-20)
}

.lgi-brand__logo,
.lgi-footer__logo {
    width: clamp(6.25rem, 5.4rem + 3.6vw, 9rem);
    height: auto
}

.lgi-header .lgi-contact {
    align-items: flex-start;
    gap: 5px
}

.lgi-hero {
    padding-block: var(--section-y);
    background: var(--lgi-tint)
}

.lgi-hero__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    column-gap: var(--gap-60)
}

.lgi-hero__text {
    display: flex;
    flex-direction: column;
    gap: var(--gap-10);
    max-width: 39.125rem
}

.lgi-hero__cta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap-20);
    margin-top: calc(var(--gap-20) - var(--gap-10))
}

.lgi-scope {
    padding-block: var(--section-y)
}

.lgi-scope__card {
    --scope-row-gap: var(--gap-60);
    position: relative;
    isolation: isolate;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    column-gap: 0;
    row-gap: var(--scope-row-gap);
    padding: var(--card-pad);
    border-radius: var(--radius-card);
    background: var(--lgi-white);
    box-shadow: 0 .625rem 4.375rem rgb(80 80 80 / 20%)
}

.lgi-scope__card::before {
    content: "";
    grid-row: 1;
    grid-column: 1/-1;
    place-self: stretch;
    margin: calc(var(--card-pad-y) * -1) calc(var(--card-pad-x) * -1) calc(var(--scope-row-gap) / -2);
    border-radius: var(--radius-card) var(--radius-card) 0 0;
    background: var(--lgi-blue-panel);
    z-index: -1
}

.lgi-scope__head {
    grid-row: 1;
    grid-column: 1;
    display: flex;
    flex-direction: column;
    gap: var(--gap-20)
}

.lgi-scope__body {
    grid-row: 2;
    grid-column: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--gap-30);
    max-width: 32.375rem
}

.lgi-scope__media {
    grid-row: 1/-1;
    grid-column: 2;
    align-self: center;
    margin-top: 10px
}

.lgi-team {
    padding-block: var(--section-y)
}

.lgi-team__head {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--gap-20);
    margin-bottom: var(--gap-40);
    text-align: center
}

.lgi-team__head .lgi-lede {
    max-width: 68.25rem
}

.lgi-team__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--gap-80)
}

.lgi-person {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center
}

.lgi-person__name {
    margin-top: var(--gap-40);
    font-size: var(--fs-name);
    font-weight: 600;
    line-height: 1.23
}

.lgi-person__role {
    margin-top: var(--gap-10);
    line-height: 1.26
}

.lgi-booking {
    padding-block: var(--section-y);
    background: var(--lgi-tint-strong)
}

.lgi-booking__inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 35.375rem);
    align-items: flex-start;
    gap: var(--gap-40)
}

.lgi-booking__text {
    display: flex;
    flex-direction: column;
    gap: var(--gap-20)
}

.lgi-booking__head {
    display: flex;
    flex-direction: column;
    gap: var(--gap-20)
}

.lgi-booking__text .lgi-lede {
    max-width: 32rem
}

.lgi-checklist {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: calc(var(--gap-20) - var(--gap-10))
}

.lgi-checklist__item {
    display: flex;
    align-items: center;
    gap: .75rem;
    line-height: 1.125
}

.lgi-checklist__icon {
    flex: none;
    width: clamp(1.125rem, 1rem + .55vw, 1.5rem);
    height: auto
}

.lgi-formcard {
    padding: var(--gap-40) var(--gap-30);
    border-radius: var(--radius-panel);
    background: var(--lgi-white);
    box-shadow: 0 0 3.125rem rgb(0 0 0 / 10%)
}

.lgi-hsform {
    display: flex;
    flex-direction: column;
    gap: var(--gap-20)
}

.lgi-hsform .hs-form {
    display: flex;
    flex-direction: column;
    gap: var(--gap-20)
}

.lgi-hsform fieldset {
    min-width: 0;
    max-width: none;
    margin: 0;
    padding: 0;
    border: 0
}

.lgi-hsform fieldset:not(:has(.hs-input:not([type=hidden]))) {
    display: none
}

.lgi-hsform .form-columns-2 {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--gap-20);
    max-width: 100%
}

.lgi-hsform .form-columns-1 {
    display: grid;
    max-width: 100%
}

.lgi-hsform .hs-form-field {
    display: flex;
    flex-direction: column;
    min-width: 0
}

.lgi-hsform .hs-form-field {
    width: 100% !important;
    float: none !important;
    margin-bottom: 0 !important
}

.lgi-hsform .hs-input:not([type=checkbox]):not([type=radio]) {
    width: 100% !important
}

.lgi-hsform .hs-form-booleancheckbox-display input {
    float: none !important
}

.lgi-hsform .hs-form-booleancheckbox-display>span {
    margin-left: 0 !important
}

.lgi-hsform .hs-form-field>label {
    display: block;
    padding-bottom: .5rem;
    font-size: var(--fs-label) !important;
    line-height: 1.083;
    color: var(--lgi-ink);
    margin: 0 !important
}

.lgi-hsform .hs-form-required {
    margin-left: .15em;
    color: var(--lgi-blue)
}

.lgi-hsform .input {
    margin: 0 !important
}

.lgi-hsform .hs-input {
    width: 100% !important;
    padding: clamp(.65rem, .58rem + .3vw, .8125rem) 1rem !important;
    border: 1px solid var(--lgi-field-border) !important;
    border-radius: var(--radius-field);
    background-color: var(--lgi-field) !important;
    font-family: inherit;
    font-size: var(--fs-label) !important;
    line-height: 1.4;
    color: var(--lgi-ink) var(--lgi-ink) !important;
    transition: border-color .2s ease;
    min-height: 1px !important
}

.lgi-hsform .hs-input:hover {
    border-color: #b9cbdc
}

.lgi-hsform .hs-input:focus-visible {
    border-color: var(--lgi-blue);
    outline: 2px solid var(--lgi-blue);
    outline-offset: 1px
}

.lgi-hsform textarea.hs-input {
    min-height: 5.5rem;
    resize: vertical
}

.lgi-booking .lgi-formcard .lgi-hsform .hs-error-msg,
.lgi-booking .lgi-formcard .lgi-hsform .hs_error_rollup {
    margin-top: .375rem !important;
    font-size: var(--fs-fine) !important;
    line-height: 1.4 !important;
    color: #c02b2b !important
}

.lgi-hsform .hs-input.invalid {
    border-color: #c02b2b !important
}

.lgi-hsform .legal-consent-container {
    display: flex;
    flex-direction: column;
    gap: var(--gap-10)
}

.lgi-hsform .hs-form-booleancheckbox-display {
    display: flex !important;
    align-items: flex-start;
    gap: .625rem;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: var(--fs-fine) !important;
    line-height: 1.43;
    color: var(--lgi-muted);
    cursor: pointer
}

.lgi-hsform .hs-form-booleancheckbox-display>input {
    flex: none;
    width: 1.0625rem !important;
    height: 1.0625rem;
    margin-top: .15rem;
    accent-color: var(--lgi-blue)
}

.lgi-hsform .hs-form-booleancheckbox-display p,
.lgi-hsform .hs-richtext p {
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    font-size: var(--fs-fine) !important;
    line-height: 1.43;
    color: var(--lgi-muted);
    margin: 0 !important
}

.lgi-hsform .hs_recaptcha {
    display: flex;
    justify-content: center
}

.lgi-hsform .hs_recaptcha .input {
    max-width: max-content;
    margin: 0 auto !important
}

.lgi-hsform .grecaptcha-badge {
    box-shadow: none !important;
    max-width: 100%
}

.lgi-hsform .hs_submit .actions {
    display: flex;
    justify-content: center
}

.lgi-hsform .hs-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: .875rem calc(var(--gap-28) + .5rem + var(--gap-10)) .875rem var(--gap-28);
    border: 0;
    border-radius: var(--radius-pill);
    background: var(--lgi-orange) url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOCIgaGVpZ2h0PSIxMyIgdmlld0JveD0iMCAwIDggMTMiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik03LjIyMiA3LjIyMiAxLjQ0NCAxMyAwIDExLjU1NiA1LjA1NiA2LjUgMCAxLjQ0NCAxLjQ0NCAwbDUuNzc4IDUuNzc4YTEuMDIgMS4wMiAwIDAgMSAwIDEuNDQ0IiBmaWxsPSIjMzMzODQyIi8+PC9zdmc+) no-repeat right var(--gap-28) center;
    background-size: .5rem auto;
    color: var(--lgi-ink);
    font-family: inherit;
    font-size: var(--fs-body);
    font-weight: 500;
    line-height: 1.26;
    text-align: center;
    cursor: pointer;
    transition: background-color .2s ease, transform .2s ease
}

.lgi-hsform .hs-button:hover {
    background-color: #ffb872
}

.lgi-hsform .hs-button:active {
    transform: translateY(1px)
}

.lgi-hsform .submitted-message {
    font-size: var(--fs-body);
    line-height: 1.6;
    text-align: center
}

.lgi-hsform__fallback {
    font-size: var(--fs-fine);
    line-height: 1.43;
    color: var(--lgi-muted);
    text-align: center
}

.lgi-hsform__fallback a {
    text-decoration: underline
}

.lgi-footer {
    padding-block: var(--gap-60);
    background: var(--lgi-navy);
    color: var(--lgi-tint-strong)
}

.lgi-footer__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--gap-60)
}

.lgi-footer__about {
    max-width: 21rem
}

.lgi-footer__blurb {
    margin-top: var(--gap-10);
    font-size: var(--fs-xs);
    line-height: 1.35
}

.lgi-footer__link {
    text-decoration: underline;
    text-underline-offset: .125em
}

.lgi-footer__aside {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: var(--gap-60)
}

.lgi-footer__nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .9375rem;
    font-size: var(--fs-small);
    line-height: 1.25
}

.lgi-footer__legal a:hover,
.lgi-footer__link:hover,
.lgi-footer__nav a:hover {
    color: var(--lgi-white)
}

.lgi-footer__bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--gap-20);
    margin-top: var(--gap-60);
    padding-block: var(--gap-20);
    border-top: 1px solid rgb(255 255 255 / 10%)
}

.lgi-footer__copy,
.lgi-footer__legal {
    font-size: var(--fs-xs);
    line-height: 1.26
}

.lgi-footer__legal {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: .9375rem
}

@media screen and (max-width:1024px) {

    .lgi-btn,
    .lgi-eyebrow--compact {
        margin: 0 auto
    }

    .lgi-booking__inner,
    .lgi-hero__inner {
        grid-template-columns: minmax(0, 1fr);
        row-gap: var(--gap-40);
        justify-items: center
    }

    .lgi-booking__text,
    .lgi-hero__text {
        max-width: 39.125rem;
        align-items: center;
        text-align: center
    }

    .lgi-booking__text .lgi-eyebrow,
    .lgi-hero__text .lgi-eyebrow {
        align-self: center
    }

    .lgi-hero__cta {
        align-items: center
    }

    .lgi-booking__head {
        align-items: center
    }

    .lgi-checklist {
        align-items: flex-start;
        text-align: left
    }

    .lgi-formcard {
        width: 100%;
        max-width: 35.375rem
    }

    .lgi-scope__card {
        --scope-row-gap: var(--gap-40);
        grid-template-columns: minmax(0, 1fr);
        justify-items: center;
        text-align: center
    }

    .lgi-scope__head {
        align-items: center;
        padding-bottom: 1.5rem
    }

    .lgi-scope__body {
        grid-row: 3;
        align-items: center;
        max-width: 39.125rem
    }

    .lgi-scope__media {
        grid-row: 2;
        grid-column: 1
    }

    .lgi-team__grid {
        gap: var(--gap-40)
    }

    .lgi-footer__top {
        gap: var(--gap-40)
    }

    .lgi-footer__aside {
        gap: var(--gap-40)
    }
}

@media screen and (max-width:640px) {
    .lgi-header__inner {
        flex-direction: column;
        align-items: center;
        gap: var(--gap-10)
    }

    .lgi-header .lgi-contact {
        align-items: center;
        text-align: center
    }

    .lgi-hsform .form-columns-2,
    .lgi-team__grid {
        grid-template-columns: minmax(0, 1fr)
    }

    .lgi-team__grid {
        gap: var(--gap-60)
    }

    .lgi-formcard {
        padding: var(--gap-30) var(--gap-20)
    }

    .lgi-btn {
        width: 100%;
        max-width: 22rem;
        margin: 0 auto
    }

    .lgi-footer__top {
        flex-direction: column;
        align-items: flex-start
    }

    .lgi-footer__about {
        max-width: none
    }

    .lgi-footer__aside {
        align-items: flex-start
    }

    .lgi-footer__legal,
    .lgi-footer__nav {
        justify-content: flex-start
    }

    .lgi-footer__bottom {
        flex-direction: column;
        align-items: flex-start
    }
}