.has-launer-contact-page .site-header {
    background: transparent;
    padding: clamp(0.75rem, 1.56vw, 1.875rem) clamp(1rem, 1.56vw, 1.875rem) 0;
}

.has-launer-contact-page .site-header__bar {
    align-items: center;
    background: #0f293b;
    border-radius: 999rem;
    height: clamp(4rem, 4.43vw, 5.3125rem);
    max-width: none;
    padding: 0 clamp(1rem, 3vw, 3rem);
}

.has-launer-contact-page .site-navigation--desktop {
    align-items: center;
    height: 100%;
}

.has-launer-contact-page .site-navigation--desktop .site-navigation__list {
    align-items: center;
}

.has-launer-contact-page .site-navigation--desktop a {
    padding-block: 0.75rem;
    text-shadow: none;
}

.launer-contact-page {
    --contact-blue: #005c92;
    --contact-blue-dark: #0f293b;
    --contact-blue-mid: #164765;
    --contact-orange: #ef810b;
    --contact-orange-strong: #f26500;
    --contact-cream: #fffaf4;
    background: #fff;
    color: var(--contact-blue-dark);
    max-width: none;
    overflow: clip;
    width: 100%;
}

.launer-contact-container {
    margin-inline: auto;
    max-width: 80rem;
    padding-inline: var(--launer-gutter);
    width: 100%;
}

.launer-contact-hero {
    background-color: var(--contact-cream);
    background-image:
        radial-gradient(ellipse 26rem 23rem at 7% 98%, transparent calc(100% - 0.0625rem), rgb(239 129 11 / 24%) 100%, transparent calc(100% + 0.0625rem)),
        radial-gradient(ellipse 25rem 19.3125rem at 98% 0%, transparent calc(100% - 0.0625rem), rgb(239 129 11 / 19%) 100%, transparent calc(100% + 0.0625rem)),
        linear-gradient(90deg,
            transparent 0 12.82%,
            rgb(239 129 11 / 8%) 12.82% 12.88%,
            transparent 12.88% 28.66%,
            rgb(239 129 11 / 8%) 28.66% 28.72%,
            transparent 28.72% 65.44%,
            rgb(239 129 11 / 8%) 65.44% 65.5%,
            transparent 65.5% 81.32%,
            rgb(239 129 11 / 8%) 81.32% 81.38%,
            transparent 81.38% 97.26%,
            rgb(239 129 11 / 8%) 97.26% 97.32%,
            transparent 97.32% 100%);
    display: flex;
    min-height: 27.75rem;
    padding: 0;
    text-align: center;
}

.launer-contact-hero__inner {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    padding-block-start: 14.5rem;
}

.launer-contact-hero h1,
.launer-contact-reseller h2,
.launer-contact-career h2 {
    letter-spacing: -0.03em;
    line-height: 1.08;
    text-wrap: balance;
}

.launer-contact-hero h1 {
    color: var(--contact-orange-strong);
    font-size: 2.5rem;
    font-weight: 700;
    margin: 0;
}

.launer-contact-hero__inner > p:not(.launer-contact-status) {
    color: var(--contact-blue);
    font-size: 1rem;
    line-height: 1.5;
    margin: 0.375rem auto 0;
    max-width: 48rem;
}

.launer-contact-hero strong,
.launer-contact-career strong {
    color: var(--contact-orange-strong);
    font-weight: 700;
}

.launer-contact-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
    margin-block-start: 1.25rem;
}

.launer-contact-action {
    align-items: center;
    border: 0;
    border-radius: 999rem;
    color: #fff;
    display: inline-flex;
    font-family: inherit;
    font-size: 0.875rem;
    font-weight: 700;
    gap: 0.7rem;
    justify-content: center;
    line-height: 1;
    min-height: 2.5625rem;
    padding: 0.625rem 1.15rem;
    text-decoration: none;
}

a.launer-contact-action {
    transition: filter var(--launer-motion-fast) ease, transform var(--launer-motion-fast) ease;
}

a.launer-contact-action:hover {
    filter: brightness(0.92);
    transform: translateY(-0.1rem);
}

.launer-contact-action svg {
    fill: currentcolor;
    flex: 0 0 auto;
    height: 1.1rem;
    width: 1.1rem;
}

.launer-contact-action--message,
.launer-contact-action--career {
    background: linear-gradient(90deg, var(--contact-orange) 0%, var(--contact-orange-strong) 100%);
}

.launer-contact-action--message {
    min-width: 11.5625rem;
}

.launer-contact-action--phone {
    background: linear-gradient(90deg, #1d79a4 0%, var(--contact-blue-mid) 100%);
    min-width: 8.5rem;
}

.launer-contact-action--email {
    background: var(--contact-blue-mid);
    min-width: 9.5rem;
}

.launer-contact-action.is-disabled {
    cursor: not-allowed;
    opacity: 0.54;
}

.launer-contact-status {
    color: #627985;
    font-size: 0.72rem;
    line-height: 1.4;
    margin: 0.75rem 0 0;
}

.launer-contact-reseller {
    background: #fff;
    min-height: 27.125rem;
    padding: 0;
}

.launer-contact-reseller__layout {
    align-items: center;
    display: grid;
    gap: 6.75rem;
    grid-template-columns: minmax(0, 35.5625rem) 26.25rem;
    justify-content: start;
    min-height: 27.125rem;
}

.launer-contact-reseller__copy {
    justify-self: end;
    max-width: 26.5625rem;
}

.launer-contact-reseller h2 {
    color: var(--contact-orange-strong);
    font-size: 2.625rem;
    font-weight: 700;
    margin: 0;
}

.launer-contact-reseller__copy p {
    color: var(--contact-blue);
    font-size: 1rem;
    line-height: 1.5;
    margin: 0.5rem 0 0;
}

.launer-contact-form-shell {
    max-width: 26.25rem;
    width: 100%;
}

.launer-contact-form-shell__status {
    color: #795b42;
    font-size: 0.72rem;
    line-height: 1.4;
    margin: 0 0 0.75rem;
}

.launer-contact-form-shell fieldset {
    border: 0;
    display: grid;
    gap: 1rem;
    margin: 0;
    padding: 0;
}

.launer-contact-form-shell label {
    display: block;
}

.launer-contact-form-shell input,
.launer-contact-form-shell select {
    appearance: none;
    background: #f3f3f3;
    border: 0.0625rem solid #d7d7d7;
    border-radius: 999rem;
    color: #6e7d84;
    font: inherit;
    font-size: 1rem;
    min-height: 2.5rem;
    opacity: 1;
    padding: 0.55rem 1rem;
    width: 100%;
}

.launer-contact-form-shell select {
    color: var(--contact-blue-mid);
    padding-inline-end: 3rem;
}

.launer-contact-form-shell__select {
    display: block;
    position: relative;
}

.launer-contact-form-shell__select::after {
    background: var(--contact-orange);
    border-radius: 50%;
    content: "";
    display: block;
    height: 1.75rem;
    pointer-events: none;
    position: absolute;
    right: 0.375rem;
    top: 50%;
    transform: translateY(-50%);
    width: 1.75rem;
}

.launer-contact-form-shell__select::before {
    border-block-end: 0.125rem solid #fff;
    border-inline-end: 0.125rem solid #fff;
    content: "";
    height: 0.375rem;
    pointer-events: none;
    position: absolute;
    right: 1.02rem;
    top: 50%;
    transform: translateY(-70%) rotate(45deg);
    width: 0.375rem;
    z-index: 1;
}

.launer-contact-form-shell input::placeholder {
    color: #9aa4a9;
    opacity: 1;
}

.launer-contact-form-shell > button {
    align-items: center;
    background: linear-gradient(90deg, var(--contact-orange) 0%, var(--contact-orange-strong) 100%);
    border: 0;
    border-radius: 999rem;
    color: #fff;
    cursor: not-allowed;
    display: inline-flex;
    font: inherit;
    font-size: 0.875rem;
    font-weight: 700;
    gap: 0.65rem;
    margin-block-start: 1rem;
    min-height: 2.5rem;
    opacity: 1;
    padding: 0.75rem 1.2rem;
}

.launer-contact-form-shell > button svg {
    fill: currentcolor;
    height: 1rem;
    width: 1rem;
}

.launer-contact-rail {
    background-color: #0f3d5b;
    background-image: url("../images/launer-contact-rail.webp");
    background-position: -29.75vw center;
    background-repeat: repeat-x;
    background-size: 100% auto;
    height: clamp(7.5rem, 9.6354vw, 11.5625rem);
    min-height: 0;
    width: 100%;
}

.launer-contact-rail--reel {
    background-image: none;
    height: auto;
    overflow: hidden;
}

.launer-contact-career {
    background: linear-gradient(180deg, #1d5073 0%, #17405c 100%);
    color: #fff;
    display: flex;
    min-height: 21.6875rem;
    padding: 0;
    text-align: center;
}

.launer-contact-career__inner {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.launer-contact-career h2 {
    color: #fff;
    font-size: 2.625rem;
    font-weight: 700;
    margin: 0;
    max-width: 28rem;
}

.launer-contact-career p:not(.launer-contact-status) {
    color: rgb(255 255 255 / 88%);
    font-size: 1rem;
    line-height: 1.5;
    margin: 0.75rem 0 0;
}

.launer-contact-action--career {
    margin-block-start: 1.5rem;
    min-width: 10rem;
}

.launer-contact-action--career.is-disabled {
    opacity: 1;
}

.launer-contact-status--career {
    color: rgb(255 255 255 / 72%);
}

@media (max-width: 56rem) {
    .launer-contact-rail:not(.launer-contact-rail--reel) {
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .launer-contact-reseller {
        min-height: 0;
        padding-block: 4rem;
    }

    .launer-contact-reseller__layout {
        gap: 2.5rem;
        grid-template-columns: 1fr;
        max-width: 44rem;
        min-height: 0;
    }

    .launer-contact-reseller__copy {
        justify-self: start;
    }

    .launer-contact-form-shell {
        max-width: none;
    }
}

@media (max-width: 64rem) {
    .has-launer-contact-page .site-header {
        padding: 0.75rem 1rem 0;
    }

    .has-launer-contact-page .site-header__bar {
        border-radius: 1rem;
        height: var(--launer-header-height);
        padding-inline: 0.5rem;
    }

    html.no-js .has-launer-contact-page .site-header__bar {
        height: auto;
    }
}

@media (max-width: 48rem) {
    .launer-contact-hero {
        min-height: 27rem;
    }

    .launer-contact-hero__inner {
        justify-content: flex-start;
        padding-block: calc(var(--launer-header-height) + 5rem) 4rem;
    }
}

@media (max-width: 40rem) {
    .launer-contact-hero {
        background-image:
            radial-gradient(ellipse 34rem 20rem at 50% 100%, transparent calc(100% - 0.0625rem), rgb(239 129 11 / 22%) 100%, transparent calc(100% + 0.0625rem));
    }

    .launer-contact-actions {
        align-items: stretch;
        flex-direction: column;
        max-width: 22rem;
        width: 100%;
    }

    .launer-contact-action {
        width: 100%;
    }

    .launer-contact-reseller {
        padding-block: 3.5rem;
    }

    .launer-contact-reseller__layout {
        gap: 2rem;
    }

    .launer-contact-career {
        min-height: 0;
        padding-block: 4rem;
    }
}

@media (max-width: 22rem) {
    .has-launer-contact-page .site-header {
        padding-inline: 0.5rem;
    }

    .launer-contact-container {
        padding-inline: 0.75rem;
    }

    .launer-contact-hero h1 {
        font-size: 2.15rem;
    }

    .launer-contact-reseller h2,
    .launer-contact-career h2 {
        font-size: 2rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .launer-contact-page *,
    .launer-contact-page *::before,
    .launer-contact-page *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }

    a.launer-contact-action:hover {
        transform: none;
    }
}
.launer-contact-whatsapp {
    align-items: center;
    background: #087e42;
    border: 2px solid #fff;
    border-radius: 50%;
    bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
    box-shadow: 0 3px 12px rgb(0 0 0 / 24%);
    color: #fff;
    display: flex;
    height: 3.5rem;
    justify-content: center;
    position: fixed;
    right: calc(1rem + env(safe-area-inset-right, 0px));
    width: 3.5rem;
    z-index: 100;
}

.launer-contact-whatsapp svg {
    height: 2rem;
    width: 2rem;
}

.launer-contact-whatsapp:hover {
    background: #056232;
    color: #fff;
}

.launer-contact-whatsapp:focus-visible {
    outline: 3px solid #075677;
    outline-offset: 3px;
}

/* Douglas's two Figma references use the same channel buttons in both layouts. */
.launer-contact-actions .launer-contact-action {
    font-size: 15.19px;
    min-height: 41px;
}

.launer-contact-actions .launer-contact-action svg {
    height: 1.2rem;
    width: 1.2rem;
}

.launer-contact-action--message {
    background: linear-gradient(90deg, #ef810b 0%, #f54100 100%);
}

.launer-contact-action--phone {
    background: linear-gradient(90deg, #287eaa 0%, #0f293b 100%);
}

.launer-contact-action--email {
    background: linear-gradient(90deg, #287eaa 0%, #0f293b 100%);
}

.launer-contact-action--career {
    min-height: 2.75rem;
    min-width: 11.25rem;
}

.launer-contact-form-shell > button {
    min-height: 2.75rem;
}

.launer-contact-form-shell > button svg {
    height: 1.15rem;
    width: 1.15rem;
}
