@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@800&display=swap');

@media(min-width:1001px) {

    /* Contact Us: measurements from the supplied 100.000000vw Figma frame. */
    .contact-design {
        background: #fefdfe
    }

    .contact-design .contact-page {
        background: #fefdfe
    }

    .contact-design .contact-hero {
        height: 51.562500vw;
        min-height: 0;
        padding: 0 !important
    }

    .contact-design .hero-people {
        left: 30.334531vw;
        right: auto;
        top: 7.004792vw;
        bottom: auto;
        width: 68.829323vw;
        height: 44.557708vw;
        overflow: hidden
    }

    .hero-people img {
        position: absolute;
        height: 100%;
        width: 115.03%;
        max-width: none;
        left: -15.03%;
        top: 0
    }

    .contact-design .hero-copy {
        left: 6.298229vw;
        top: 15.010260vw;
        width: 32.298437vw
    }

    .contact-design .eyebrow {
        font-size: 1.041667vw;
        line-height: 1.562500vw;
        letter-spacing: -0.052083vw
    }

    .contact-design .hero-copy h1 {
        font-size: 5.208333vw;
        font-weight: 800;
        line-height: .87;
        letter-spacing: -0.260417vw;
        margin: 0.145833vw 0 0.794271vw
    }

    .contact-design .hero-copy p {
        font-size: 1.041667vw;
        line-height: 1.49;
        letter-spacing: -0.052083vw;
        width: 31.141146vw;
        color: #333
    }

    .contact-design .contact-card {
        left: 53.067656vw;
        top: 10.669010vw;
        width: 33.400469vw;
        height: 37.229271vw;
        padding: 4.914063vw 1.761458vw 1.562500vw;
        border: 0.580990vw solid rgba(255, 255, 255, .5);
        border-radius: 1.302083vw;
        background: linear-gradient(white, white) padding-box;
        box-shadow: none
    }

    .contact-design .contact-card h2 {
        position: absolute;
        top: 1.562500vw;
        left: 0;
        width: 100%;
        font-size: 1.510417vw;
        font-weight: 600;
        line-height: 1.07;
        letter-spacing: -0.090625vw;
        margin: 0
    }

    .contact-design .form-grid {
        gap: 1.125000vw 0.842708vw
    }

    .contact-design .field {
        gap: 0.322396vw
    }

    .contact-design .field label {
        font-size: 0.937500vw;
        line-height: 1.153125vw;
        letter-spacing: -0.046875vw;
        color: #4d4d4d
    }

    .contact-design .field input,
    .contact-design .field select,
    .contact-design .field textarea {
        height: 2.558854vw;
        padding: 0.625000vw 0.677083vw;
        font-size: 0.781250vw;
        line-height: 1.23;
        letter-spacing: -0.039063vw;
        background: #f5f5f5;
        border: 0.052083vw solid #dfdfdf;
        border-radius: 0.260417vw
    }

    .contact-design .field textarea {
        height: 5.171094vw;
        min-height: 5.171094vw;
        max-height: 5.171094vw;
        resize: none
    }

    .contact-design .field input::placeholder,
    .contact-design .field textarea::placeholder {
        color: #a9a9a9
    }

    .contact-design .consent {
        flex-direction: row;
        align-items: center;
        gap: 0.416667vw;
        font-size: 0.781250vw;
        line-height: 1.041667vw;
        letter-spacing: -0.039063vw;
        color: #a9a9a9;
        margin-top: -0.312500vw
    }

    .contact-design .consent input {
        appearance: auto;
        width: 1.041667vw;
        height: 1.041667vw;
        padding: 0;
        margin: 0;
        accent-color: #fc0a54
    }

    .contact-design .consent a {
        color: inherit
    }

    .contact-design .submit {
        height: 3.268229vw;
        margin-top: 0.572917vw;
        border-radius: 0.520833vw;
        background: url('/figma-pages/office-bg.png') center/cover;
        font-size: 0.937500vw;
        font-weight: 700
    }

    .contact-design .form-status {
        font-size: 0.677083vw
    }

    .contact-design .offices {
        height: 18.535729vw;
        background: linear-gradient(#fc0a54, #a10f3c)
    }

    .contact-design .offices:before {
        background: url('/figma-pages/las-vegas-map.png') center/cover;
        mix-blend-mode: multiply;
        opacity: 1
    }

    .contact-design .office-inner {
        padding: 0 6.298229vw
    }

    .contact-design .offices h2 {
        font-size: 5.208333vw;
        font-weight: 800;
        letter-spacing: -0.260417vw;
        line-height: .87;
        margin: 0 0 0.520833vw
    }

    .contact-design .offices p {
        font-size: 1.041667vw;
        letter-spacing: -0.052083vw
    }

    .contact-design .office-links {
        gap: 0.977083vw;
        text-align: right
    }

    .contact-design .office-links a,
    .contact-design .office-links address {
        justify-content: flex-start;
        flex-direction: row-reverse;
        gap: 0.677083vw;
        font-size: 1.093750vw;
        line-height: 1.27;
        letter-spacing: -0.043750vw;
        margin: 0
    }

    .contact-design .office-links img {
        width: 2.156979vw;
        height: 2.156979vw;
        padding: 0.566615vw;
        border-radius: 0.572917vw;
        background: #fff
    }

    .contact-design .map {
        height: 52.633490vw;
        background: #fefdfd
    }

    .contact-design .map-art {
        left: 16.563229vw;
        top: 3.490104vw;
        width: 66.873490vw;
        height: 44.582344vw;
        opacity: 1;
        filter: none
    }

    .contact-design .map-texture {
        display: none
    }

    .contact-design .map:before {
        left: 15.912656vw;
        top: 3.490104vw;
        width: 37.155000vw;
        height: 44.582344vw;
        background: linear-gradient(90deg, #fefdfd, transparent)
    }

    .contact-design .map:after {
        left: 37.579323vw;
        top: 3.490104vw;
        width: 45.315781vw;
        height: 44.582344vw;
        background: linear-gradient(270deg, #fefdfd, transparent)
    }

    .map-fade {
        position: absolute;
        z-index: 1;
        left: 15.912656vw;
        width: 66.873490vw;
        height: 21.185208vw;
        pointer-events: none
    }

    .map-fade.top {
        top: 3.490104vw;
        background: linear-gradient(#fefdfd, transparent)
    }

    .map-fade.bottom {
        top: 26.887240vw;
        background: linear-gradient(0deg, #fefdfd, transparent)
    }

    .contact-design .route {
        left: 44.035104vw;
        top: 18.731510vw;
        width: auto;
        height: auto
    }

    .contact-design .map-pin {
        left: 54.40625vw;
        top: 29.162187vw;
        width: 25px;
        height: 25px;
    }

    .map-dot {
        position: absolute;
        z-index: 3;
        left: 53.020833vw;
        top: 26.724688vw
    }

    .contact-design .map-title {
        right: 6.302083vw;
        top: 37.479844vw;
        bottom: auto;
        width: 17.383802vw;
        font-size: 2.500000vw;
        line-height: .96;
        letter-spacing: -0.225000vw;
        text-align: right;
        color: #4d4d4d
    }

    .contact-design .landscape-footer {
        height: 90.234688vw
    }

    .contact-design .meadow-bg {
        height: 100%;
        object-fit: fill
    }

    .contact-design .meadow-people {
        z-index: 2;
        height: auto;
        object-fit: fill
    }

    .contact-design .giant-title {
        left: 4.753646vw;
        top: 23.139583vw;
        width: auto;
        height: auto;
        z-index: 1
    }

    .contact-design .landscape-footer:before {
        content: "";
        position: absolute;
        z-index: 3;
        inset: 0 0 auto;
        height: 28.136042vw;
        background: linear-gradient(white, transparent), linear-gradient(white, transparent);
        pointer-events: none
    }

    .contact-design .landscape-footer:after {
        z-index: 3;
        inset: auto 0 0;
        height: 70.810990vw;
        background: linear-gradient(transparent, #000 76.412%);
        pointer-events: none
    }

    .contact-design .footer-overlay {
        left: 6.270833vw;
        right: 6.250000vw;
        top: 62.135417vw;
        bottom: auto;
        grid-template-columns: 47.083333vw 6.875000vw 11.875000vw 7.708333vw 7.916667vw;
        gap: 1.302083vw
    }

    .contact-design .footer-brand {
        width: 17.708333vw
    }

    .contact-design .footer-brand p {
        font-size: 0.989583vw;
        color: white
    }

    .contact-design .footer-brand a {
        font-size: 0.833333vw;
        color: white
    }

    .contact-design .footer-nav h3 {
        font-size: 0.989583vw;
        white-space: nowrap;
        letter-spacing: -0.039583vw;
        line-height: 1.12;
        margin: 0 0 0.468750vw
    }

    .contact-design .footer-nav a {
        font-size: 0.833333vw;
        letter-spacing: -0.033333vw;
        line-height: 2.2;
        margin: 0;
        white-space: nowrap
    }

    .contact-design .copyright {
        left: 6.331250vw;
        right: 6.250000vw;
        bottom: 4.166667vw;
        border-top: 0.052083vw solid #777;
        padding-top: 1.562500vw;
        font-size: 0.833333vw;
        letter-spacing: -0.033333vw
    }

    .contact-design .copyright a {
        color: inherit
    }

    .contact-design .socials img {
        background: #fc0a54;
        border-radius: 0.572917vw;
        padding: 0.442708vw;
        width: 1.822917vw;
        height: 1.822917vw
    }

}

.route,
.map-pin,
.map-dot,
.giant-title {
    transform: scale(var(--contact-art-scale, 1));
    transform-origin: top left;
    max-width: none
}

@keyframes map-pin-pulse {

    0%,
    100% {
        transform: scale(1);
        filter: drop-shadow(0 0 0 rgba(252, 10, 84, .55))
    }

    50% {
        transform: scale(1.12);
        filter: drop-shadow(0 0 14px rgba(252, 10, 84, .85))
    }
}

.contact-design .map-pin {
    transform-origin: center bottom;
    animation: map-pin-pulse 1.8s ease-in-out infinite
}

@media(prefers-reduced-motion:reduce) {
    .contact-design .map-pin {
        animation: none
    }
}

@media(max-width:1000px) {
    .contact-design .contact-hero {
        padding: 130px 24px 60px !important;
        min-height: 0;
        height: auto
    }

    .contact-design .hero-copy {
        position: relative;
        inset: auto;
        z-index: 2;
        margin: 0 0 32px;
        width: auto;
        max-width: 640px
    }

    .contact-design .eyebrow {
        font-size: 16px
    }

    .contact-design .hero-copy h1 {
        font-size: clamp(44px, 9vw, 72px);
        font-weight: 800;
        line-height: .95
    }

    .contact-design .hero-copy p {
        font-size: clamp(15px, 2.2vw, 18px)
    }

    .contact-design .hero-people {
        inset: 0;
        width: 100%;
        height: 100%;
        opacity: .13;
        pointer-events: none
    }

    .contact-design .hero-people img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center top
    }

    .contact-design .contact-card {
        position: relative;
        inset: auto;
        z-index: 3;
        width: 100%;
        max-width: 640px;
        height: auto;
        min-height: 0;
        padding: 30px 24px;
        margin: 0 auto 0 0;
        border-radius: 20px;
        background: white
    }

    .contact-design .field input,
    .contact-design .field select,
    .contact-design .field textarea {
        font-size: 16px;
        min-height: 44px
    }

    .contact-design .field textarea {
        min-height: 110px
    }

    .contact-design .consent {
        flex-direction: row;
        align-items: center
    }

    .contact-design .consent input {
        min-height: 0;
        width: 20px;
        height: 20px;
        flex: none
    }

    .contact-design .submit {
        min-height: 48px
    }

    .contact-design .offices {
        height: auto
    }

    .contact-design .office-inner {
        grid-template-columns: 1fr;
        gap: 32px;
        padding: 60px 24px
    }

    .contact-design .offices h2 {
        font-size: clamp(44px, 9vw, 72px);
        font-weight: 800
    }

    .contact-design .offices p {
        font-size: 16px
    }

    .contact-design .office-links {
        justify-content: start;
        gap: 16px
    }

    .contact-design .office-links a,
    .contact-design .office-links address {
        font-size: 16px;
        overflow-wrap: anywhere
    }

    .contact-design .office-links img {
        background: white;
        border-radius: 10px;
        padding: 9px;
        width: 38px;
        height: 38px;
        flex: none
    }

    .contact-design .map {
        height: clamp(300px, 70vw, 560px)
    }

    .contact-design .map-art {
        inset: 0;
        width: 100%;
        height: 100%;
        opacity: .5
    }

    .contact-design .map-texture {
        display: none
    }

    .contact-design .map:before,
    .contact-design .map:after {
        left: 0;
        width: 100%
    }

    .contact-design .route,
    .contact-design .map-pin,
    .contact-design .map-dot {
        transform: none
    }

    .contact-design .route {
        left: 44%;
        top: 30%;
        width: 14%;
        height: auto
    }

    .contact-design .map-pin {
        left: 51%;
        top: 46%;
        width: clamp(28px, 7vw, 56px)
    }

    .contact-design .map-dot {
        display: none
    }

    .contact-design .map-title {
        font-size: clamp(22px, 4.5vw, 32px);
        line-height: 1.1;
        width: 45%
    }

    .contact-design .landscape-footer {
        height: auto;
        min-height: 0;
        padding-top: 78vw
    }

    .contact-design .meadow-bg {
        height: 100%;
        object-fit: cover
    }

    .contact-design .meadow-people {
        z-index: 2;
        height: auto;
        object-fit: contain
    }

    .contact-design .giant-title {
        transform: none;
        left: 4%;
        top: 8vw;
        width: auto;
        font-size: 12vw
    }

    .contact-design .footer-overlay {
        position: relative;
        inset: auto;
        margin: 0 24px;
        padding-bottom: 24px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        max-height: none;
        overflow: visible;
        gap: 30px
    }

    .contact-design .footer-nav:nth-of-type(n) {
        display: block
    }

    .contact-design .footer-brand {
        grid-column: 1/-1;
        width: auto
    }

    .contact-design .footer-brand a {
        overflow-wrap: anywhere
    }

    .contact-design .footer-nav h3 {
        font-size: 14px
    }

    .contact-design .footer-nav a {
        font-size: 13px
    }

    .contact-design .copyright {
        position: relative;
        z-index: 4;
        inset: auto;
        margin: 0 24px;
        padding: 20px 0 28px;
        border-top: 1px solid #777;
        font-size: 12px;
        line-height: 1.6
    }

    .contact-design .copyright a {
        color: inherit
    }
}

@media(max-width:600px) {
    .contact-design .contact-hero {
        padding: 110px 16px 40px !important
    }

    .contact-design .contact-card {
        padding: 28px 16px;
        border-radius: 16px
    }

    .contact-design .form-grid {
        grid-template-columns: 1fr
    }

    .contact-design .office-inner {
        padding: 48px 16px
    }

    .contact-design .map-title {
        width: 55%
    }

    .contact-design .footer-overlay {
        grid-template-columns: 1fr;
        margin: 0 16px
    }

    .contact-design .copyright {
        margin: 0 16px;
        font-size: 11px
    }
}

.contact-design .field select:required:invalid {
    color: #a9a9a9
}

.contact-design .field select option {
    color: #4d4d4d
}

.contact-design .map.map-embed {
    height: clamp(320px, 45vw, 760px);
    background: #e5e3df
}

.contact-design .map.map-embed:before,
.contact-design .map.map-embed:after {
    display: none
}

.contact-design .map-embed iframe {
    display: block;
    width: 100%;
    height: 100%;
    border: 0
}
