.elementor-409 .elementor-element.elementor-element-8cf3c03{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-8cf3c03.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-409 .elementor-element.elementor-element-a559ecd{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-03c7ed6{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-ced61a9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-20e889c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-775007f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-5ea8adc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-3e78226{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-24bf77c{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-409 .elementor-element.elementor-element-84d1f03{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}body.elementor-page-409{padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-409 .elementor-element.elementor-element-8cf3c03{--width:101.046%;}}/* Start custom CSS *//* =========================================
   THE SOCIAL HOUSE β HERO
========================================= */

.tsh-hero {
    --tsh-cream: #fffcf5;
    --tsh-black: #000000;
    --tsh-grey: #686868;
    --tsh-placeholder: #dedbd4;

    position: relative;
    width: 100%;
    overflow: hidden;

    background-color: var(--tsh-cream);
    color: var(--tsh-black);
}

.tsh-hero,
.tsh-hero * {
    box-sizing: border-box;
}

/* =========================================
   ΞΞΞΞ€Ξ‘ΞΞΞ ΞΞΞΞ
========================================= */

.tsh-hero__inner {
    width: min(calc(100% - 64px), 1320px);
    min-height: 650px;
    margin: 0 auto;

    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(430px, 0.95fr);
    align-items: start;
    gap: clamp(55px, 6vw, 100px);

    padding-top: 90px;
    padding-bottom: 80px;
}

/* =========================================
   ΞΞ‘ΞΞ£Ξ€ΞΞ‘Ξ Ξ ΞΞ‘ΞΞΞ§ΞΞΞΞΞ
========================================= */

.tsh-hero__content {
    position: relative;
    z-index: 2;

    max-width: 720px;
    padding-top: 35px;

    color: var(--tsh-black);
}

.tsh-hero__eyebrow {
    margin-bottom: 24px;

    color: var(--tsh-black) !important;

    font-size: 12px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.tsh-hero__title {
    margin: 0;

    color: var(--tsh-black) !important;

    font-size: clamp(72px, 7.5vw, 126px);
    font-weight: 700;
    line-height: 0.9;
    letter-spacing: -0.075em;

    white-space: nowrap;
}

.tsh-hero__subtitle {
    margin: 28px 0 0;

    color: var(--tsh-black) !important;

    font-size: clamp(24px, 2vw, 34px);
    font-weight: 600;
    line-height: 1.1;
    letter-spacing: -0.035em;
}

.tsh-hero__description {
    max-width: 590px;
    margin: 22px 0 0;

    color: var(--tsh-grey) !important;

    font-size: 17px;
    font-weight: 400;
    line-height: 1.6;
}

/* =========================================
   ΞΞΞ₯ΞΞ ΞΞ
========================================= */

.tsh-hero__buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;

    margin-top: 38px;
}

.tsh-btn,
.tsh-btn:visited {
    position: relative;
    isolation: isolate;
    overflow: hidden;

    min-width: 190px;
    min-height: 58px;
    padding: 0 30px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    border: 1px solid var(--tsh-black);
    border-radius: 3px;

    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.025em;

    text-align: center;
    text-decoration: none !important;

    transition:
        color 0.45s cubic-bezier(0.77, 0, 0.18, 1),
        background-color 0.45s cubic-bezier(0.77, 0, 0.18, 1),
        transform 0.28s ease,
        box-shadow 0.28s ease;
}

.tsh-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;

    transition: transform 0.45s cubic-bezier(0.77, 0, 0.18, 1);
}

/* =========================================
   ΞΞ₯Ξ‘ΞΞ ΞΞΞ₯Ξ‘Ξ ΞΞΞ₯ΞΞ Ξ
========================================= */

.tsh-btn--dark,
.tsh-btn--dark:visited {
    background-color: #ffffff !important;
    color: #ffffff !important;
    border-color: var(--tsh-black) !important;

    box-shadow: 7px 7px 0 var(--tsh-black);
}

.tsh-btn--dark::before {
    background-color: var(--tsh-black);
    transform: translateX(0);
}

.tsh-btn--dark:hover,
.tsh-btn--dark:focus {
    color: var(--tsh-black) !important;
    background-color: #ffffff !important;

    transform: translate(3px, 3px);
    box-shadow: 4px 4px 0 var(--tsh-black);
}

.tsh-btn--dark:hover::before,
.tsh-btn--dark:focus::before {
    transform: translateX(101%);
}

/* =========================================
   ΞΞΞ₯Ξ€ΞΞ‘ΞΞ₯ΞΞ OUTLINE ΞΞΞ₯ΞΞ Ξ
========================================= */

.tsh-btn--outline,
.tsh-btn--outline:visited {
    background-color: var(--tsh-cream) !important;
    color: var(--tsh-black) !important;
    border-color: var(--tsh-black) !important;

    box-shadow: 7px 7px 0 rgba(0, 0, 0, 0.18);
}

.tsh-btn--outline::before {
    background-color: var(--tsh-black);
    transform: translateX(-101%);
}

.tsh-btn--outline:hover,
.tsh-btn--outline:focus {
    color: #ffffff !important;
    background-color: var(--tsh-cream) !important;

    transform: translate(3px, 3px);
    box-shadow: 4px 4px 0 rgba(0, 0, 0, 0.18);
}

.tsh-btn--outline:hover::before,
.tsh-btn--outline:focus::before {
    transform: translateX(0);
}

.tsh-btn:focus-visible {
    outline: 2px solid var(--tsh-black);
    outline-offset: 5px;
}

/* =========================================
   ΞΞΞΞ COLLAGE
========================================= */

.tsh-hero__visual {
    position: relative;

    width: 100%;
    min-height: 510px;
}

.tsh-hero__image {
    position: absolute;
    overflow: hidden;

    background-color: var(--tsh-placeholder);
}

.tsh-hero__image img {
    width: 100%;
    height: 100%;

    display: block;
    object-fit: cover;

    color: var(--tsh-black);

    transition: transform 0.8s cubic-bezier(0.22, 1, 0.36, 1);
}

.tsh-hero__image:hover img {
    transform: scale(1.045);
}

.tsh-hero__image--main {
    left: 0;
    top: 52%;
    z-index: 2;

    width: 54%;
    height: 74%;

    transform: translateY(-50%);
}

.tsh-hero__image--top {
    right: 0;
    top: 0;

    width: 49%;
    height: 45%;
}

.tsh-hero__image--bottom {
    right: 4%;
    bottom: 0;

    width: 43%;
    height: 38%;
}

/* =========================================
   ΞΞ₯ΞΞΞΞΞ BADGE
========================================= */

.tsh-hero__badge {
    position: absolute;
    left: 48%;
    top: 53%;
    z-index: 4;

    width: 124px;
    aspect-ratio: 1;

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

    padding: 16px;

    border: 1px solid var(--tsh-black);
    border-radius: 50%;

    background-color: var(--tsh-cream);
    color: var(--tsh-black);

    text-align: center;

    transform: translate(-50%, -50%) rotate(-8deg);
}

.tsh-hero__badge-small {
    margin-bottom: 8px;

    color: var(--tsh-black) !important;

    font-size: 7px;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.tsh-hero__badge-main {
    color: var(--tsh-black) !important;

    font-size: 16px;
    font-weight: 700;
    line-height: 0.95;
    letter-spacing: -0.04em;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .tsh-hero__inner {
        width: min(calc(100% - 48px), 1050px);
        min-height: auto;

        grid-template-columns: minmax(0, 1fr) minmax(350px, 0.8fr);
        gap: 42px;

        padding-top: 75px;
        padding-bottom: 70px;
    }

    .tsh-hero__content {
        padding-top: 20px;
    }

    .tsh-hero__title {
        font-size: clamp(62px, 8vw, 96px);
    }

    .tsh-hero__visual {
        min-height: 470px;
    }

    .tsh-hero__badge {
        width: 108px;
    }
}

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

@media (max-width: 767px) {

    .tsh-hero__inner {
        width: min(calc(100% - 36px), 700px);

        grid-template-columns: 1fr;
        gap: 48px;

        padding-top: 55px;
        padding-bottom: 60px;
    }

    .tsh-hero__content {
        max-width: none;
        padding-top: 0;
    }

    .tsh-hero__eyebrow {
        margin-bottom: 18px;

        font-size: 10px;
        letter-spacing: 0.12em;
    }

    .tsh-hero__title {
        font-size: clamp(54px, 14.5vw, 86px);
        line-height: 0.92;
        letter-spacing: -0.07em;

        white-space: nowrap;
    }

    .tsh-hero__subtitle {
        margin-top: 22px;

        font-size: clamp(24px, 7vw, 32px);
    }

    .tsh-hero__description {
        margin-top: 18px;

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

    .tsh-hero__buttons {
        margin-top: 30px;
    }

    .tsh-btn {
        min-height: 56px;
    }

    .tsh-hero__visual {
        min-height: 470px;
    }

    .tsh-hero__image--main {
        width: 58%;
        height: 78%;
    }

    .tsh-hero__image--top {
        width: 46%;
        height: 43%;
    }

    .tsh-hero__image--bottom {
        right: 0;

        width: 43%;
        height: 37%;
    }

    .tsh-hero__badge {
        left: 52%;
        width: 100px;
    }
}

/* =========================================
   ΞΞΞΞ‘Ξ ΞΞΞΞΞ€Ξ
========================================= */

@media (max-width: 480px) {

    .tsh-hero__inner {
        width: min(calc(100% - 28px), 460px);

        padding-top: 44px;
        padding-bottom: 50px;
    }

    .tsh-hero__title {
        font-size: clamp(43px, 13.5vw, 62px);
        letter-spacing: -0.075em;
    }

    .tsh-hero__buttons {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
    }

    .tsh-btn {
        width: 100%;
        min-width: 0;
    }

    .tsh-hero__visual {
        min-height: 400px;
    }

    .tsh-hero__badge {
        width: 88px;
    }
}

/* =========================================
   THE SOCIAL HOUSE β MARQUEE
========================================= */

.tsh-marquee {
    --tsh-marquee-black: #070707;
    --tsh-marquee-white: #ffffff;
    --tsh-marquee-accent: #a66a4a;

    position: relative;
    isolation: isolate;

    width: 100%;
    max-width: 100%;
    overflow: hidden;

    border-top: 1px solid rgba(166, 106, 74, 0.76);
    border-bottom: 1px solid rgba(166, 106, 74, 0.76);

    background:
        radial-gradient(
            circle at 18% 50%,
            rgba(166, 106, 74, 0.17),
            transparent 29%
        ),
        radial-gradient(
            circle at 82% 50%,
            rgba(166, 106, 74, 0.1),
            transparent 29%
        ),
        linear-gradient(
            180deg,
            #151515 0%,
            var(--tsh-marquee-black) 52%,
            #111111 100%
        );

    color: var(--tsh-marquee-white);

    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.055),
        inset 0 -1px 0 rgba(255, 255, 255, 0.04),
        0 14px 35px rgba(0, 0, 0, 0.14);
}

.tsh-marquee,
.tsh-marquee * {
    box-sizing: border-box;
}

/* =========================================
   BRONZE EDGE GLOW
========================================= */

.tsh-marquee::before,
.tsh-marquee::after {
    content: "";

    position: absolute;
    left: 0;
    z-index: 3;

    width: 100%;
    height: 1px;

    pointer-events: none;
}

.tsh-marquee::before {
    top: 0;

    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(166, 106, 74, 0.95) 50%,
        transparent 100%
    );
}

.tsh-marquee::after {
    bottom: 0;

    background: linear-gradient(
        90deg,
        transparent 0%,
        rgba(166, 106, 74, 0.62) 50%,
        transparent 100%
    );
}

/* =========================================
   MOVING TRACK
========================================= */

.tsh-marquee__track {
    display: flex;
    width: max-content;

    animation: tsh-marquee-scroll 29s linear infinite;

    will-change: transform;
}

/* =========================================
   REPEATED GROUPS
========================================= */

.tsh-marquee__group {
    flex: 0 0 auto;

    min-height: 78px;

    display: flex;
    align-items: center;
    gap: clamp(27px, 3vw, 50px);

    padding-right: clamp(27px, 3vw, 50px);

    white-space: nowrap;
}

/* =========================================
   TEXT
========================================= */

.tsh-marquee__item {
    flex: 0 0 auto;

    color: var(--tsh-marquee-white) !important;

    font-size: clamp(16px, 1.4vw, 22px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.045em;
    text-transform: uppercase;
    white-space: nowrap;

    text-shadow: 0 2px 14px rgba(255, 255, 255, 0.06);
}

/* Outline variation */
.tsh-marquee__item:nth-child(4n + 3) {
    color: transparent !important;

    -webkit-text-stroke: 1px rgba(255, 255, 255, 0.78);

    text-shadow: none;
}

/* Signature phrase */
.tsh-marquee__item:last-of-type {
    color: var(--tsh-marquee-accent) !important;

    font-weight: 800;
    letter-spacing: 0.08em;

    -webkit-text-stroke: 0;

    text-shadow: 0 0 20px rgba(166, 106, 74, 0.25);
}

/* =========================================
   SEPARATORS
========================================= */

.tsh-marquee__dot {
    position: relative;

    flex: 0 0 auto;

    width: 9px;
    height: 9px;

    display: block;

    overflow: hidden;

    border: 1px solid var(--tsh-marquee-accent);
    border-radius: 50%;

    color: transparent !important;

    box-shadow:
        0 0 0 4px rgba(166, 106, 74, 0.08),
        0 0 14px rgba(166, 106, 74, 0.28);
}

.tsh-marquee__dot::after {
    content: "";

    position: absolute;
    inset: 2px;

    border-radius: 50%;

    background-color: var(--tsh-marquee-accent);
}


/* =========================================
   SEAMLESS LOOP
========================================= */

@keyframes tsh-marquee-scroll {

    from {
        transform: translate3d(0, 0, 0);
    }

    to {
        transform: translate3d(-50%, 0, 0);
    }

}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .tsh-marquee__track {
        animation-duration: 25s;
    }

    .tsh-marquee__group {
        min-height: 70px;
        gap: 30px;

        padding-right: 30px;
    }

    .tsh-marquee__item {
        font-size: 16px;
    }

}

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

@media (max-width: 767px) {

    .tsh-marquee__track {
        animation-duration: 22s;
    }

    .tsh-marquee__group {
        min-height: 62px;
        gap: 24px;

        padding-right: 24px;
    }

    .tsh-marquee__item {
        font-size: 14px;
        letter-spacing: 0.04em;
    }

    .tsh-marquee__dot {
        width: 7px;
        height: 7px;
    }

}

/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .tsh-marquee__track {
        animation: none;
    }

}


/* =========================================
   THE SOCIAL HOUSE β INTRO / WHO WE ARE
========================================= */

.tsh-intro {
    --tsh-cream: #fffcf5;
    --tsh-black: #000000;
    --tsh-grey: #686868;
    --tsh-line: rgba(0, 0, 0, 0.22);

    position: relative;
    width: 100%;

    background-color: var(--tsh-cream);
    color: var(--tsh-black);
}

.tsh-intro,
.tsh-intro * {
    box-sizing: border-box;
}

/* =========================================
   ΞΞΞΞ€Ξ‘ΞΞΞ ΞΞΞΞ
========================================= */

.tsh-intro__inner {
    width: min(calc(100% - 64px), 1320px);
    margin: 0 auto;

    display: grid;
    grid-template-columns:
        minmax(120px, 0.35fr)
        minmax(360px, 1fr)
        minmax(320px, 0.85fr);

    align-items: start;
    gap: clamp(36px, 4.5vw, 76px);

    padding-top: 68px;
    padding-bottom: 68px;

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

/* =========================================
   ΞΞΞΞ‘ΞΞ£ Ξ€ΞΞ€ΞΞΞ£
========================================= */

.tsh-intro__label-wrap {
    display: flex;
    align-items: center;
    gap: 16px;

    padding-top: 5px;
}

.tsh-intro__label {
    flex-shrink: 0;

    color: var(--tsh-black) !important;

    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.tsh-intro__line {
    display: block;

    width: 42px;
    height: 1px;

    background-color: var(--tsh-black);
    opacity: 0.4;
}

/* =========================================
   ΞΞΞΞ€Ξ‘ΞΞΞΞ£ Ξ€ΞΞ€ΞΞΞ£
========================================= */

.tsh-intro__headline {
    max-width: 560px;
    margin: 0;

    color: var(--tsh-black) !important;

    font-size: clamp(30px, 3.1vw, 48px);
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -0.045em;
}

/* =========================================
   ΞΞΞΞΞΞΞ
========================================= */

.tsh-intro__text {
    max-width: 470px;
    margin: 0;

    color: var(--tsh-grey) !important;

    font-size: 15px;
    font-weight: 400;
    line-height: 1.62;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .tsh-intro__inner {
        width: min(calc(100% - 48px), 1050px);

        grid-template-columns:
            minmax(110px, 0.3fr)
            minmax(320px, 1fr)
            minmax(270px, 0.8fr);

        gap: 32px;

        padding-top: 60px;
        padding-bottom: 60px;
    }

    .tsh-intro__headline {
        font-size: clamp(29px, 3.8vw, 42px);
    }

    .tsh-intro__text {
        font-size: 15px;
        line-height: 1.6;
    }
}

/* =========================================
   MOBILE / SMALL TABLET
========================================= */

@media (max-width: 767px) {

    .tsh-intro__inner {
        width: min(calc(100% - 36px), 700px);

        grid-template-columns: 1fr;
        gap: 24px;

        padding-top: 54px;
        padding-bottom: 54px;
    }

    .tsh-intro__label-wrap {
        padding-top: 0;
    }

    .tsh-intro__headline {
        max-width: 600px;

        font-size: clamp(32px, 9vw, 46px);
        line-height: 1.02;
    }

    .tsh-intro__headline br {
        display: none;
    }

    .tsh-intro__text {
        max-width: 620px;

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

/* =========================================
   ΞΞΞΞ‘Ξ ΞΞΞΞΞ€Ξ
========================================= */

@media (max-width: 480px) {

    .tsh-intro__inner {
        width: min(calc(100% - 28px), 460px);

        gap: 21px;

        padding-top: 46px;
        padding-bottom: 46px;
    }

    .tsh-intro__label {
        font-size: 9px;
        letter-spacing: 0.14em;
    }

    .tsh-intro__line {
        width: 34px;
    }

    .tsh-intro__headline {
        font-size: clamp(30px, 9vw, 40px);
        letter-spacing: -0.04em;
    }

    .tsh-intro__text {
        font-size: 14px;
        line-height: 1.6;
    }
}


/* =========================================
   THE SOCIAL HOUSE β SELECTED WORK
========================================= */

.tsh-work {
    --tsh-cream: #fffcf5;
    --tsh-black: #000000;
    --tsh-grey: #686868;
    --tsh-line: rgba(0, 0, 0, 0.22);

    position: relative;
    width: 100%;

    background-color: var(--tsh-cream);
    color: var(--tsh-black);
}

.tsh-work,
.tsh-work * {
    box-sizing: border-box;
}

/* =========================================
   ΞΞΞΞ€Ξ‘ΞΞΞ ΞΞΞΞ
========================================= */

.tsh-work__inner {
    width: min(calc(100% - 64px), 1320px);
    margin: 0 auto;

    padding-top: 34px;
    padding-bottom: 72px;

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

/* =========================================
   HEADER
========================================= */

.tsh-work__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;

    margin-bottom: 22px;
}

.tsh-work__title-wrap {
    display: flex;
    align-items: center;
    gap: 16px;
}

.tsh-work__title {
    color: var(--tsh-black) !important;

    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.tsh-work__line {
    display: block;

    width: 42px;
    height: 1px;

    background-color: var(--tsh-black);
    opacity: 0.4;
}

.tsh-work__view-all,
.tsh-work__view-all:visited {
    position: relative;

    color: var(--tsh-black) !important;

    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: 0.02em;
    text-decoration: none !important;
}

.tsh-work__view-all::after {
    content: "β";

    display: inline-block;
    margin-left: 8px;

    transition: transform 0.25s ease;
}

.tsh-work__view-all:hover::after,
.tsh-work__view-all:focus::after {
    transform: translateX(5px);
}

/* =========================================
   PROJECT GRID
========================================= */

.tsh-work__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0;
}

/* =========================================
   PROJECT CARD
========================================= */

.tsh-project,
.tsh-project:visited {
    position: relative;

    display: block;
    overflow: hidden;

    border-top: 1px solid var(--tsh-line);
    border-right: 1px solid var(--tsh-line);
    border-bottom: 1px solid var(--tsh-line);

    background-color: var(--tsh-cream);
    color: var(--tsh-black) !important;

    text-decoration: none !important;

    transition:
        background-color 0.3s ease,
        color 0.3s ease;
}

.tsh-project:first-child {
    border-left: 1px solid var(--tsh-line);
}

/* =========================================
   PROJECT IMAGE
========================================= */

.tsh-project__image {
    position: relative;
    overflow: hidden;

    width: 100%;
    aspect-ratio: 1.42 / 1;

    background-color: #dedbd4;
}

.tsh-project__image::after {
    content: "";

    position: absolute;
    inset: 0;

    background-color: rgba(0, 0, 0, 0);

    transition: background-color 0.35s ease;
}

.tsh-project__image img {
    width: 100%;
    height: 100%;

    display: block;
    object-fit: cover;

    transition: transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}

.tsh-project:hover .tsh-project__image img,
.tsh-project:focus .tsh-project__image img {
    transform: scale(1.055);
}

.tsh-project:hover .tsh-project__image::after,
.tsh-project:focus .tsh-project__image::after {
    background-color: rgba(0, 0, 0, 0.07);
}

/* =========================================
   PROJECT CONTENT
========================================= */

.tsh-project__content {
    position: relative;

    min-height: 92px;
    padding: 16px 14px 15px;

    background-color: var(--tsh-cream);

    transition:
        background-color 0.3s ease,
        color 0.3s ease;
}

.tsh-project__name {
    margin: 0;

    color: var(--tsh-black) !important;

    font-size: 17px;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.025em;
}

.tsh-project__meta {
    margin: 8px 0 0;

    color: var(--tsh-grey) !important;

    font-size: 9px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.tsh-project:hover .tsh-project__content,
.tsh-project:focus .tsh-project__content {
    background-color: #000000;
}

.tsh-project:hover .tsh-project__name,
.tsh-project:focus .tsh-project__name,
.tsh-project:hover .tsh-project__meta,
.tsh-project:focus .tsh-project__meta {
    color: #ffffff !important;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1024px) {

    .tsh-work__inner {
        width: min(calc(100% - 48px), 1050px);

        padding-top: 32px;
        padding-bottom: 64px;
    }

    .tsh-work__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tsh-project:nth-child(odd) {
        border-left: 1px solid var(--tsh-line);
    }

    .tsh-project:nth-child(n + 3) {
        border-top: 0;
    }

    .tsh-project__image {
        aspect-ratio: 1.55 / 1;
    }

}

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

@media (max-width: 767px) {

    .tsh-work__inner {
        width: min(calc(100% - 36px), 700px);

        padding-top: 28px;
        padding-bottom: 54px;
    }

    .tsh-work__header {
        margin-bottom: 20px;
    }

    .tsh-work__grid {
        grid-template-columns: 1fr;
    }

    .tsh-project,
    .tsh-project:first-child,
    .tsh-project:nth-child(odd) {
        border-left: 1px solid var(--tsh-line);
    }

    .tsh-project + .tsh-project {
        border-top: 0;
    }

    .tsh-project__image {
        aspect-ratio: 1.5 / 1;
    }

    .tsh-project__content {
        min-height: 86px;
    }

}

/* =========================================
   ΞΞΞΞ‘Ξ ΞΞΞΞΞ€Ξ
========================================= */

@media (max-width: 480px) {

    .tsh-work__inner {
        width: min(calc(100% - 28px), 460px);

        padding-top: 26px;
        padding-bottom: 46px;
    }

    .tsh-work__header {
        align-items: flex-start;
        gap: 18px;
    }

    .tsh-work__line {
        width: 34px;
    }

    .tsh-work__view-all {
        font-size: 11px;
    }

    .tsh-project__name {
        font-size: 16px;
    }

    .tsh-project__meta {
        font-size: 8px;
    }

}

/* =========================================
   THE SOCIAL HOUSE β RESULTS SECTION
========================================= */

.tsh-results {
    --tsh-black: #000000;
    --tsh-white: #ffffff;
    --tsh-muted: rgba(255, 255, 255, 0.68);
    --tsh-line: rgba(255, 255, 255, 0.18);

    position: relative;
    width: 100%;
    overflow: hidden;

    background-color: var(--tsh-black);
    color: var(--tsh-white);
}

.tsh-results,
.tsh-results * {
    box-sizing: border-box;
}

/* =========================================
   GLOSSY DECORATIVE SHAPES
========================================= */

.tsh-results__shape {
    position: absolute;
    z-index: 0;

    display: block;
    height: auto;

    object-fit: contain;

    pointer-events: none;
    user-select: none;
}

/* Ξ Ξ¬Ξ½Ο Ξ΄Ξ΅ΞΎΞΉΞ¬ shape */
.tsh-results__shape--top {
    top: -70px;
    right: -80px;

    width: clamp(250px, 26vw, 470px);

    transform: rotate(8deg);
}

/* ΞΞ¬ΟΟ Ξ±ΟΞΉΟΟΞ΅ΟΞ¬ shape */
.tsh-results__shape--bottom {
    bottom: -105px;
    left: -95px;

    width: clamp(280px, 29vw, 520px);

    transform: rotate(-5deg);
}

/* =========================================
   ΞΞΞΞ€Ξ‘ΞΞΞ ΞΞΞΞ
========================================= */

.tsh-results__inner {
    position: relative;
    z-index: 2;

    width: min(calc(100% - 64px), 1320px);
    margin: 0 auto;

    display: grid;
    grid-template-columns: minmax(250px, 0.72fr) minmax(0, 2fr);
    align-items: stretch;
    gap: clamp(55px, 6vw, 100px);

    padding-top: 88px;
    padding-bottom: 88px;
}

/* =========================================
   INTRO
========================================= */

.tsh-results__intro {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;

    max-width: 330px;
}

.tsh-results__eyebrow {
    margin-bottom: 20px;

    color: var(--tsh-white) !important;

    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.tsh-results__title {
    margin: 0;

    color: var(--tsh-white) !important;

    font-size: clamp(36px, 3.4vw, 54px);
    font-weight: 700;
    line-height: 0.98;
    letter-spacing: -0.055em;
}

.tsh-results__description {
    margin: 22px 0 0;

    color: var(--tsh-muted) !important;

    font-size: 15px;
    font-weight: 400;
    line-height: 1.65;
}

/* =========================================
   STATS GRID
========================================= */

.tsh-results__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));

    border-top: 1px solid var(--tsh-line);
    border-left: 1px solid var(--tsh-line);

    background-color: rgba(0, 0, 0, 0.22);
}

/* =========================================
   STAT CARD
========================================= */

.tsh-stat {
    position: relative;

    min-height: 260px;
    padding: 32px 24px;

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

    border-right: 1px solid var(--tsh-line);
    border-bottom: 1px solid var(--tsh-line);

    background-color: rgba(0, 0, 0, 0.3);

    transition:
        background-color 0.3s ease,
        transform 0.3s ease;
}

/* ΞΞΉΞΊΟΞ� Ξ»Ξ΅ΟΞΊΞ� ΟΞ΅Ξ»Ξ΅Ξ―Ξ± */
.tsh-stat::before {
    content: "";

    position: absolute;
    top: 24px;
    left: 24px;

    width: 7px;
    height: 7px;

    border-radius: 50%;
    background-color: var(--tsh-white);

    opacity: 0.5;
}

/* Hover */
.tsh-stat:hover {
    background-color: rgba(255, 255, 255, 0.07);
}

/* =========================================
   ΞΞ‘ΞΞΞΞΞ
========================================= */

.tsh-stat__number {
    display: block;

    min-width: 3.8ch;
    margin-bottom: auto;
    padding-top: 26px;

    color: var(--tsh-white) !important;

    font-size: clamp(42px, 4vw, 68px);
    font-weight: 700;
    line-height: 0.9;
    letter-spacing: -0.065em;

    font-variant-numeric: tabular-nums;
}

/* Text Ξ±Ξ½ΟΞ― Ξ³ΞΉΞ± Ξ±ΟΞΉΞΈΞΌΟ */
.tsh-stat__number--text {
    min-width: 0;

    font-size: clamp(27px, 2.55vw, 42px);
    line-height: 0.94;
    letter-spacing: -0.045em;
}

/* =========================================
   STAT TITLE
========================================= */

.tsh-stat__title {
    margin: 34px 0 0;

    color: var(--tsh-white) !important;

    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.01em;
}

/* =========================================
   STAT DESCRIPTION
========================================= */

.tsh-stat__text {
    margin: 10px 0 0;

    color: var(--tsh-muted) !important;

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

/* =========================================
   COUNTER
========================================= */

.tsh-counter {
    display: inline-block;
    min-width: 3.8ch;

    font-variant-numeric: tabular-nums;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .tsh-results__inner {
        width: min(calc(100% - 48px), 1050px);

        grid-template-columns: 1fr;
        gap: 44px;

        padding-top: 76px;
        padding-bottom: 76px;
    }

    .tsh-results__intro {
        max-width: 570px;
    }

    .tsh-results__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tsh-stat {
        min-height: 240px;
    }

    .tsh-results__shape--top {
        top: -55px;
        right: -70px;

        width: 330px;
    }

    .tsh-results__shape--bottom {
        bottom: -80px;
        left: -75px;

        width: 360px;
    }
}

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

@media (max-width: 767px) {

    .tsh-results__inner {
        width: min(calc(100% - 36px), 700px);

        gap: 36px;

        padding-top: 64px;
        padding-bottom: 64px;
    }

    .tsh-results__title {
        font-size: clamp(36px, 10vw, 50px);
    }

    .tsh-results__grid {
        grid-template-columns: 1fr;
    }

    .tsh-stat {
        min-height: 210px;
        padding: 28px 24px;
    }

    .tsh-stat__number {
        font-size: clamp(46px, 14vw, 64px);
    }

    .tsh-stat__number--text {
        font-size: clamp(30px, 9vw, 42px);
    }

    .tsh-results__shape--top {
        top: -20px;
        right: -90px;

        width: 260px;

        opacity: 0.72;
    }

    .tsh-results__shape--bottom {
        bottom: -60px;
        left: -90px;

        width: 285px;

        opacity: 0.72;
    }
}

/* =========================================
   ΞΞΞΞ‘Ξ ΞΞΞΞΞ€Ξ
========================================= */

@media (max-width: 480px) {

    .tsh-results__inner {
        width: min(calc(100% - 28px), 460px);

        padding-top: 54px;
        padding-bottom: 54px;
    }

    .tsh-results__description {
        font-size: 14px;
    }

    .tsh-stat {
        min-height: 196px;
    }

    .tsh-results__shape--top {
        right: -105px;
        width: 225px;
    }

    .tsh-results__shape--bottom {
        left: -105px;
        width: 245px;
    }
}

/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .tsh-stat {
        transition: none;
    }
}


/* =========================================
   THE SOCIAL HOUSE β SERVICES
========================================= */

.tsh-services {
    --tsh-cream: #fffcf5;
    --tsh-black: #000000;
    --tsh-grey: #686868;
    --tsh-line: rgba(0, 0, 0, 0.18);

    position: relative;
    width: 100%;

    background-color: var(--tsh-cream);
    color: var(--tsh-black);
}

.tsh-services,
.tsh-services * {
    box-sizing: border-box;
}

/* =========================================
   ΞΞΞΞ€Ξ‘ΞΞΞ ΞΞΞΞ
========================================= */

.tsh-services__inner {
    width: min(calc(100% - 64px), 1320px);
    margin: 0 auto;

    display: grid;
    grid-template-columns: minmax(130px, 0.34fr) minmax(0, 2.2fr);
    align-items: start;
    gap: clamp(42px, 5vw, 82px);

    padding-top: 72px;
    padding-bottom: 72px;

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

/* =========================================
   SECTION LABEL
========================================= */

.tsh-services__label {
    padding-top: 22px;

    color: var(--tsh-black) !important;

    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

/* =========================================
   SERVICES LIST
========================================= */

.tsh-services__list {
    border-top: 1px solid var(--tsh-line);
}

/* =========================================
   SERVICE ROW
========================================= */

.tsh-service,
.tsh-service:visited {
    position: relative;

    min-height: 116px;

    display: grid;
    grid-template-columns:
        72px
        minmax(250px, 1fr)
        minmax(280px, 0.95fr)
        110px;

    align-items: center;
    gap: 24px;

    padding: 24px 18px;

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

    background-color: transparent;
    color: var(--tsh-black) !important;

    text-decoration: none !important;

    transition:
        background-color 0.35s ease,
        color 0.35s ease,
        padding-left 0.35s ease,
        padding-right 0.35s ease;
}

/* ΞΞ±ΟΟΞΏ layer ΟΞΏΟ Ξ±Ξ½Ξ΅Ξ²Ξ±Ξ―Ξ½Ξ΅ΞΉ ΟΟΞΏ hover */
.tsh-service::before {
    content: "";

    position: absolute;
    inset: 0;

    z-index: 0;

    background-color: var(--tsh-black);

    transform: scaleY(0);
    transform-origin: bottom;

    transition: transform 0.38s cubic-bezier(0.77, 0, 0.18, 1);
}

.tsh-service:hover::before,
.tsh-service:focus::before {
    transform: scaleY(1);
}

/* ΞΞ»Ξ± ΟΞ± ΟΟΞΏΞΉΟΞ΅Ξ―Ξ± ΟΞ¬Ξ½Ο Ξ±ΟΟ ΟΞΏ hover layer */
.tsh-service > * {
    position: relative;
    z-index: 1;
}

/* =========================================
   SERVICE NUMBER
========================================= */

.tsh-service__number {
    color: var(--tsh-black) !important;

    font-size: 18px;
    font-weight: 700;
    line-height: 1;

    transition: color 0.3s ease;
}

/* =========================================
   SERVICE TITLE
========================================= */

.tsh-service__title {
    margin: 0;

    color: var(--tsh-black) !important;

    font-size: clamp(22px, 2vw, 31px);
    font-weight: 700;
    line-height: 1.08;
    letter-spacing: -0.04em;

    transition: color 0.3s ease;
}

/* =========================================
   SERVICE DESCRIPTION
========================================= */

.tsh-service__description {
    max-width: 440px;
    margin: 0;

    color: var(--tsh-grey) !important;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.55;

    transition: color 0.3s ease;
}

/* =========================================
   LEARN MORE
========================================= */

.tsh-service__link {
    justify-self: end;

    color: var(--tsh-black) !important;

    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    white-space: nowrap;

    transition: color 0.3s ease;
}

.tsh-service__link::after {
    content: "β";

    display: inline-block;
    margin-left: 9px;

    transition: transform 0.3s ease;
}

/* =========================================
   HOVER
========================================= */

.tsh-service:hover,
.tsh-service:focus {
    padding-left: 26px;
    padding-right: 26px;
}

.tsh-service:hover .tsh-service__number,
.tsh-service:focus .tsh-service__number,
.tsh-service:hover .tsh-service__title,
.tsh-service:focus .tsh-service__title,
.tsh-service:hover .tsh-service__link,
.tsh-service:focus .tsh-service__link {
    color: #ffffff !important;
}

.tsh-service:hover .tsh-service__description,
.tsh-service:focus .tsh-service__description {
    color: rgba(255, 255, 255, 0.72) !important;
}

.tsh-service:hover .tsh-service__link::after,
.tsh-service:focus .tsh-service__link::after {
    transform: translateX(6px);
}

/* =========================================
   FOCUS
========================================= */

.tsh-service:focus-visible {
    outline: 2px solid var(--tsh-black);
    outline-offset: 4px;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .tsh-services__inner {
        width: min(calc(100% - 48px), 1050px);

        grid-template-columns: 120px minmax(0, 1fr);
        gap: 34px;

        padding-top: 64px;
        padding-bottom: 64px;
    }

    .tsh-service {
        grid-template-columns:
            58px
            minmax(220px, 1fr)
            minmax(240px, 0.9fr)
            95px;

        gap: 18px;
    }

    .tsh-service__title {
        font-size: clamp(21px, 2.4vw, 27px);
    }

    .tsh-service__description {
        font-size: 13px;
    }
}

/* =========================================
   MOBILE / SMALL TABLET
========================================= */

@media (max-width: 767px) {

    .tsh-services__inner {
        width: min(calc(100% - 36px), 700px);

        grid-template-columns: 1fr;
        gap: 28px;

        padding-top: 56px;
        padding-bottom: 56px;
    }

    .tsh-services__label {
        padding-top: 0;
    }

    .tsh-service,
    .tsh-service:visited {
        min-height: auto;

        grid-template-columns: 48px minmax(0, 1fr);
        gap: 12px 18px;

        padding: 25px 10px;
    }

    .tsh-service__number {
        grid-column: 1;
        grid-row: 1;

        padding-top: 4px;

        font-size: 16px;
    }

    .tsh-service__title {
        grid-column: 2;
        grid-row: 1;

        font-size: clamp(24px, 7vw, 32px);
    }

    .tsh-service__description {
        grid-column: 2;
        grid-row: 2;

        max-width: 560px;

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

    .tsh-service__link {
        grid-column: 2;
        grid-row: 3;

        justify-self: start;

        margin-top: 5px;
    }

    .tsh-service:hover,
    .tsh-service:focus {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* =========================================
   ΞΞΞΞ‘Ξ ΞΞΞΞΞ€Ξ
========================================= */

@media (max-width: 480px) {

    .tsh-services__inner {
        width: min(calc(100% - 28px), 460px);

        padding-top: 48px;
        padding-bottom: 48px;
    }

    .tsh-service,
    .tsh-service:visited {
        grid-template-columns: 38px minmax(0, 1fr);

        padding-top: 23px;
        padding-bottom: 23px;
    }

    .tsh-service__title {
        font-size: clamp(22px, 7.2vw, 29px);
    }

    .tsh-service__description {
        font-size: 13px;
    }
}

/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .tsh-service,
    .tsh-service::before,
    .tsh-service__link::after {
        transition: none;
    }
}

/* =========================================
   THE SOCIAL HOUSE β WHY + PROCESS
========================================= */

.tsh-why-process {
    --tsh-cream: #fffcf5;
    --tsh-black: #000000;
    --tsh-grey: #686868;
    --tsh-line: rgba(0, 0, 0, 0.17);

    position: relative;
    width: 100%;

    background-color: var(--tsh-cream);
    color: var(--tsh-black);
}

.tsh-why-process,
.tsh-why-process * {
    box-sizing: border-box;
}

/* =========================================
   MAIN LAYOUT
========================================= */

.tsh-why-process__inner {
    width: min(calc(100% - 64px), 1320px);
    margin: 0 auto;

    display: grid;
    grid-template-columns: minmax(0, 0.82fr) minmax(0, 1.38fr);
    align-items: stretch;
    gap: 0;

    padding-top: 70px;
    padding-bottom: 70px;

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

/* =========================================
   SHARED EYEBROW
========================================= */

.tsh-why-process__eyebrow {
    display: block;

    color: var(--tsh-black) !important;

    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

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

.tsh-why-process__why {
    padding-right: clamp(44px, 5vw, 76px);
}

.tsh-why-process__title {
    max-width: 400px;
    margin: 22px 0 38px;

    color: var(--tsh-black) !important;

    font-size: clamp(36px, 3.8vw, 56px);
    font-weight: 700;
    line-height: 0.96;
    letter-spacing: -0.06em;
}

/* =========================================
   BENEFITS
========================================= */

.tsh-why-process__benefits {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.tsh-benefit {
    min-width: 0;
}

.tsh-benefit__icon {
    width: 40px;
    height: 40px;
    margin-bottom: 18px;
}

.tsh-benefit__icon svg {
    display: block;
    width: 100%;
    height: 100%;

    stroke: var(--tsh-black);
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.tsh-benefit__title {
    margin: 0 0 10px;

    color: var(--tsh-black) !important;

    font-size: 14px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: -0.02em;
}

.tsh-benefit__text {
    margin: 0;

    color: var(--tsh-grey) !important;

    font-size: 11px;
    font-weight: 400;
    line-height: 1.55;
}

/* =========================================
   PROCESS SIDE
========================================= */

.tsh-why-process__process {
    padding-left: clamp(44px, 5vw, 76px);

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

/* =========================================
   PROCESS TRACK
========================================= */

.tsh-process-track {
    display: grid;
    grid-template-columns:
        minmax(0, 1fr)
        24px
        minmax(0, 1fr)
        24px
        minmax(0, 1fr)
        24px
        minmax(0, 1fr);

    align-items: start;
    gap: 12px;

    margin-top: 28px;
}

/* =========================================
   PROCESS CARD
========================================= */

.tsh-process-card {
    position: relative;
    min-width: 0;

    padding-right: 4px;
}

.tsh-process-card__number {
    display: block;
    margin-bottom: 26px;

    color: var(--tsh-black) !important;

    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.1em;
}

.tsh-process-card__icon {
    width: 52px;
    height: 52px;
    margin-bottom: 24px;
}

.tsh-process-card__icon svg {
    display: block;
    width: 100%;
    height: 100%;

    stroke: var(--tsh-black);
    stroke-width: 1.75;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.tsh-process-card__title {
    margin: 0 0 12px;

    color: var(--tsh-black) !important;

    font-size: 16px;
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -0.025em;
}

.tsh-process-card__text {
    margin: 0;

    color: var(--tsh-grey) !important;

    font-size: 11px;
    font-weight: 400;
    line-height: 1.55;
}

/* =========================================
   PROCESS ARROWS
========================================= */

.tsh-process-track__arrow {
    align-self: center;

    width: 24px;
    height: 24px;
    margin-top: 47px;
}

.tsh-process-track__arrow svg {
    display: block;
    width: 100%;
    height: 100%;

    stroke: var(--tsh-black);
    stroke-width: 1.6;
    stroke-linecap: round;
    stroke-linejoin: round;

    opacity: 0.55;
}

/* =========================================
   HOVER
========================================= */

.tsh-benefit__icon,
.tsh-process-card__icon {
    transition: transform 0.3s ease;
}

.tsh-benefit:hover .tsh-benefit__icon,
.tsh-process-card:hover .tsh-process-card__icon {
    transform: translateY(-5px);
}

/* =========================================
   LARGE TABLET
========================================= */

@media (max-width: 1180px) {

    .tsh-why-process__inner {
        width: min(calc(100% - 48px), 1100px);

        grid-template-columns: 1fr;
        gap: 56px;

        padding-top: 64px;
        padding-bottom: 64px;
    }

    .tsh-why-process__why {
        padding-right: 0;
    }

    .tsh-why-process__process {
        padding-left: 0;
        padding-top: 52px;

        border-left: 0;
        border-top: 1px solid var(--tsh-line);
    }

    .tsh-why-process__benefits {
        max-width: 850px;
    }

    .tsh-process-track {
        max-width: 100%;
    }

}

/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .tsh-process-track {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0;

        border-top: 1px solid var(--tsh-line);
        border-left: 1px solid var(--tsh-line);
    }

    .tsh-process-card {
        min-height: 245px;
        padding: 24px;

        border-right: 1px solid var(--tsh-line);
        border-bottom: 1px solid var(--tsh-line);
    }

    .tsh-process-track__arrow {
        display: none;
    }

    .tsh-process-card__number {
        margin-bottom: 22px;
    }

    .tsh-process-card__icon {
        margin-bottom: 20px;
    }

    .tsh-process-card__text {
        max-width: 280px;
        font-size: 12px;
    }

}

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

@media (max-width: 767px) {

    .tsh-why-process__inner {
        width: min(calc(100% - 36px), 700px);

        gap: 46px;

        padding-top: 56px;
        padding-bottom: 58px;
    }

    .tsh-why-process__title {
        max-width: 520px;
        margin-top: 20px;
        margin-bottom: 34px;

        font-size: clamp(38px, 11vw, 54px);
    }

    .tsh-why-process__title br {
        display: none;
    }

    .tsh-why-process__benefits {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    .tsh-benefit {
        display: grid;
        grid-template-columns: 52px minmax(0, 1fr);
        gap: 3px 16px;
    }

    .tsh-benefit__icon {
        grid-column: 1;
        grid-row: 1 / span 2;

        width: 42px;
        height: 42px;
        margin-bottom: 0;
    }

    .tsh-benefit__title {
        grid-column: 2;
        grid-row: 1;

        margin-bottom: 4px;

        font-size: 16px;
    }

    .tsh-benefit__text {
        grid-column: 2;
        grid-row: 2;

        max-width: 520px;

        font-size: 13px;
    }

    .tsh-why-process__process {
        padding-top: 44px;
    }

    .tsh-process-track {
        grid-template-columns: 1fr;
    }

    .tsh-process-card {
        min-height: auto;

        display: grid;
        grid-template-columns: 42px 58px minmax(0, 1fr);
        align-items: start;
        gap: 0 16px;

        padding: 24px 18px;
    }

    .tsh-process-card__number {
        grid-column: 1;
        grid-row: 1 / span 2;

        margin: 5px 0 0;
    }

    .tsh-process-card__icon {
        grid-column: 2;
        grid-row: 1 / span 2;

        width: 48px;
        height: 48px;
        margin: 0;
    }

    .tsh-process-card__title {
        grid-column: 3;
        grid-row: 1;

        margin-bottom: 7px;

        font-size: 20px;
    }

    .tsh-process-card__text {
        grid-column: 3;
        grid-row: 2;

        max-width: 460px;

        font-size: 13px;
    }

}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .tsh-why-process__inner {
        width: min(calc(100% - 28px), 460px);

        padding-top: 48px;
        padding-bottom: 50px;
    }

    .tsh-why-process__eyebrow {
        font-size: 9px;
    }

    .tsh-why-process__title {
        font-size: clamp(34px, 10vw, 45px);
    }

    .tsh-process-card {
        grid-template-columns: 32px 48px minmax(0, 1fr);
        gap: 0 12px;

        padding: 22px 14px;
    }

    .tsh-process-card__icon {
        width: 42px;
        height: 42px;
    }

    .tsh-process-card__title {
        font-size: 18px;
    }

    .tsh-process-card__text {
        font-size: 12px;
    }

}

/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .tsh-benefit__icon,
    .tsh-process-card__icon {
        transition: none;
    }

}


/* =========================================
   THE SOCIAL HOUSE β ABOUT PREVIEW
========================================= */

.tsh-about-preview {
    --tsh-cream: #fffcf5;
    --tsh-black: #000000;
    --tsh-grey: #686868;
    --tsh-line: rgba(0, 0, 0, 0.17);

    position: relative;
    width: 100%;

    background-color: var(--tsh-cream);
    color: var(--tsh-black);
}

.tsh-about-preview,
.tsh-about-preview * {
    box-sizing: border-box;
}

/* =========================================
   MAIN LAYOUT
========================================= */

.tsh-about-preview__inner {
    width: min(calc(100% - 64px), 1320px);
    margin: 0 auto;

    display: grid;
    grid-template-columns: minmax(360px, 0.9fr) minmax(0, 1.4fr);
    align-items: stretch;

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

/* =========================================
   IMAGE
========================================= */

.tsh-about-preview__media {
    position: relative;
    overflow: hidden;

    min-height: 380px;

    background-color: #e7e3db;
}

.tsh-about-preview__image {
    display: block;

    width: 100%;
    height: 100%;
    min-height: 380px;

    object-fit: cover;
    object-position: center;

    filter: saturate(0.72) contrast(1.02);

    transition:
        transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
        filter 0.4s ease;
}

.tsh-about-preview__media:hover .tsh-about-preview__image {
    transform: scale(1.035);
    filter: saturate(0.9) contrast(1.03);
}

.tsh-about-preview__image-label {
    position: absolute;
    left: 22px;
    bottom: 20px;
    z-index: 2;

    padding: 9px 12px;

    background-color: var(--tsh-cream);
    color: var(--tsh-black);

    font-size: 9px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.11em;
    text-transform: uppercase;
}

/* =========================================
   CONTENT
========================================= */

.tsh-about-preview__content {
    padding: 54px clamp(40px, 5vw, 82px);

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

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

.tsh-about-preview__eyebrow {
    display: block;
    margin-bottom: 30px;

    color: var(--tsh-black) !important;

    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

/* =========================================
   TEXT GRID
========================================= */

.tsh-about-preview__text-grid {
    display: grid;
    grid-template-columns: minmax(270px, 0.9fr) minmax(280px, 1fr);
    align-items: start;
    gap: clamp(42px, 6vw, 86px);
}

.tsh-about-preview__title {
    margin: 0;

    color: var(--tsh-black) !important;

    font-size: clamp(38px, 4vw, 62px);
    font-weight: 700;
    line-height: 0.96;
    letter-spacing: -0.06em;
}

.tsh-about-preview__copy {
    max-width: 470px;
}

.tsh-about-preview__copy p {
    margin: 0 0 15px;

    color: var(--tsh-grey) !important;

    font-size: 15px;
    font-weight: 400;
    line-height: 1.65;
}

.tsh-about-preview__copy p:last-of-type {
    margin-bottom: 26px;
}

/* =========================================
   BUTTON
========================================= */

.tsh-about-preview__button,
.tsh-about-preview__button:visited {
    position: relative;
    overflow: hidden;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 20px;

    min-height: 47px;
    padding: 0 19px;

    border: 1px solid var(--tsh-black);

    background-color: transparent;
    color: var(--tsh-black) !important;

    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none !important;

    box-shadow: 5px 5px 0 var(--tsh-black);

    transition:
        color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.tsh-about-preview__button::before {
    content: "";

    position: absolute;
    inset: 0;
    z-index: 0;

    background-color: var(--tsh-black);

    transform: translateX(-101%);
    transition: transform 0.38s cubic-bezier(0.77, 0, 0.18, 1);
}

.tsh-about-preview__button > * {
    position: relative;
    z-index: 1;
}

.tsh-about-preview__button span {
    font-size: 17px;

    transition: transform 0.3s ease;
}

.tsh-about-preview__button:hover {
    color: #ffffff !important;

    transform: translate(3px, 3px);
    box-shadow: 2px 2px 0 var(--tsh-black);
}

.tsh-about-preview__button:hover::before {
    transform: translateX(0);
}

.tsh-about-preview__button:hover span {
    transform: translateX(5px);
}

.tsh-about-preview__button:focus-visible {
    outline: 2px solid var(--tsh-black);
    outline-offset: 4px;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .tsh-about-preview__inner {
        width: min(calc(100% - 48px), 1050px);

        grid-template-columns: minmax(320px, 0.85fr) minmax(0, 1.2fr);
    }

    .tsh-about-preview__content {
        padding: 46px 42px;
    }

    .tsh-about-preview__text-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .tsh-about-preview__title {
        font-size: clamp(40px, 5vw, 56px);
    }

    .tsh-about-preview__copy {
        max-width: 560px;
    }

}

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

@media (max-width: 767px) {

    .tsh-about-preview__inner {
        width: min(calc(100% - 36px), 700px);

        grid-template-columns: 1fr;
    }

    .tsh-about-preview__media {
        min-height: 330px;
    }

    .tsh-about-preview__image {
        min-height: 330px;
    }

    .tsh-about-preview__content {
        padding: 44px 0 54px;

        border-top: 0;
    }

    .tsh-about-preview__eyebrow {
        margin-bottom: 23px;
    }

    .tsh-about-preview__text-grid {
        gap: 25px;
    }

    .tsh-about-preview__title {
        font-size: clamp(39px, 11vw, 55px);
    }

    .tsh-about-preview__title br {
        display: none;
    }

    .tsh-about-preview__copy p {
        font-size: 14px;
    }

}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .tsh-about-preview__inner {
        width: min(calc(100% - 28px), 460px);
    }

    .tsh-about-preview__media {
        min-height: 275px;
    }

    .tsh-about-preview__image {
        min-height: 275px;
    }

    .tsh-about-preview__image-label {
        left: 14px;
        bottom: 14px;

        max-width: calc(100% - 28px);

        font-size: 8px;
    }

    .tsh-about-preview__content {
        padding-top: 38px;
        padding-bottom: 48px;
    }

    .tsh-about-preview__eyebrow {
        font-size: 9px;
    }

    .tsh-about-preview__title {
        font-size: clamp(34px, 10.5vw, 46px);
    }

    .tsh-about-preview__button {
        width: 100%;
    }

}

/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .tsh-about-preview__image,
    .tsh-about-preview__button,
    .tsh-about-preview__button::before,
    .tsh-about-preview__button span {
        transition: none;
    }

}



/* =========================================
   THE SOCIAL HOUSE β TESTIMONIALS
========================================= */

.tsh-testimonials {
    --tsh-cream: #fffcf5;
    --tsh-black: #000000;
    --tsh-grey: #686868;
    --tsh-line: rgba(0, 0, 0, 0.17);

    position: relative;
    width: 100%;

    background-color: var(--tsh-cream);
    color: var(--tsh-black);
}

.tsh-testimonials,
.tsh-testimonials * {
    box-sizing: border-box;
}

/* =========================================
   MAIN CONTAINER
========================================= */

.tsh-testimonials__inner {
    width: min(calc(100% - 64px), 1320px);
    margin: 0 auto;

    padding-top: 58px;
    padding-bottom: 68px;
}

/* =========================================
   HEADER
========================================= */

.tsh-testimonials__header {
    display: grid;
    grid-template-columns: minmax(150px, 0.38fr) minmax(0, 1.62fr);
    align-items: end;
    gap: clamp(50px, 7vw, 110px);

    padding-bottom: 34px;

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

.tsh-testimonials__eyebrow {
    display: block;

    color: var(--tsh-black) !important;

    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.17em;
    text-transform: uppercase;
}

.tsh-testimonials__heading {
    margin: 0;

    color: var(--tsh-black) !important;

    font-size: clamp(34px, 3.5vw, 52px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.055em;
}

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

.tsh-testimonials__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));

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

/* =========================================
   TESTIMONIAL
========================================= */

.tsh-testimonial {
    position: relative;

    min-height: 285px;

    display: flex;
    flex-direction: column;

    padding: 34px 34px 30px;

    border-right: 1px solid var(--tsh-line);
    border-bottom: 1px solid var(--tsh-line);

    background-color: transparent;

    transition:
        background-color 0.35s ease,
        transform 0.35s ease;
}

.tsh-testimonial:hover {
    background-color: rgba(0, 0, 0, 0.025);
    transform: translateY(-4px);
}

/* =========================================
   QUOTE MARK
========================================= */

.tsh-testimonial__quote-mark {
    height: 38px;
    margin-bottom: 18px;

    color: var(--tsh-black);

    font-family: Georgia, "Times New Roman", serif;
    font-size: 64px;
    font-weight: 700;
    line-height: 0.9;
}

/* =========================================
   QUOTE
========================================= */

.tsh-testimonial__quote {
    max-width: 340px;
    margin: 0 0 34px;

    color: var(--tsh-black) !important;

    font-size: 15px;
    font-weight: 400;
    font-style: normal;
    line-height: 1.65;
}

/* =========================================
   AUTHOR
========================================= */

.tsh-testimonial__author {
    margin-top: auto;

    display: flex;
    flex-direction: column;
    gap: 5px;
}

.tsh-testimonial__name {
    color: var(--tsh-black) !important;

    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
}

.tsh-testimonial__business {
    color: var(--tsh-grey) !important;

    font-size: 11px;
    font-weight: 400;
    line-height: 1.3;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .tsh-testimonials__inner {
        width: min(calc(100% - 48px), 1050px);

        padding-top: 54px;
        padding-bottom: 62px;
    }

    .tsh-testimonials__header {
        grid-template-columns: 120px minmax(0, 1fr);
        gap: 36px;
    }

    .tsh-testimonial {
        min-height: 300px;
        padding: 30px 26px 27px;
    }

    .tsh-testimonial__quote {
        font-size: 14px;
    }

}

/* =========================================
   SMALL TABLET
========================================= */

@media (max-width: 850px) {

    .tsh-testimonials__grid {
        grid-template-columns: 1fr;
    }

    .tsh-testimonial {
        min-height: auto;

        padding: 30px;

        transform: none;
    }

    .tsh-testimonial:hover {
        transform: none;
    }

    .tsh-testimonial__quote {
        max-width: 650px;
        margin-bottom: 28px;

        font-size: 15px;
    }

}

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

@media (max-width: 767px) {

    .tsh-testimonials__inner {
        width: min(calc(100% - 36px), 700px);

        padding-top: 48px;
        padding-bottom: 54px;
    }

    .tsh-testimonials__header {
        grid-template-columns: 1fr;
        gap: 18px;

        padding-bottom: 28px;
    }

    .tsh-testimonials__heading {
        font-size: clamp(34px, 9vw, 46px);
    }

    .tsh-testimonial {
        padding: 27px 22px 25px;
    }

    .tsh-testimonial__quote-mark {
        margin-bottom: 14px;

        font-size: 56px;
    }

    .tsh-testimonial__quote {
        font-size: 14px;
        line-height: 1.62;
    }

}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .tsh-testimonials__inner {
        width: min(calc(100% - 28px), 460px);

        padding-top: 42px;
        padding-bottom: 48px;
    }

    .tsh-testimonials__eyebrow {
        font-size: 9px;
    }

    .tsh-testimonials__heading {
        font-size: clamp(31px, 9vw, 40px);
    }

    .tsh-testimonial {
        padding: 25px 18px 23px;
    }

}

/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .tsh-testimonial {
        transition: none;
    }

}



/* =========================================
   THE SOCIAL HOUSE β FINAL CTA
========================================= */

.tsh-final-cta {
    --tsh-black: #000000;
    --tsh-white: #ffffff;
    --tsh-cream: #fffcf5;
    --tsh-muted: rgba(255, 255, 255, 0.68);
    --tsh-line: rgba(255, 255, 255, 0.18);

    position: relative;
    overflow: hidden;

    width: 100%;

    background-color: var(--tsh-black);
    color: var(--tsh-white);
}

.tsh-final-cta,
.tsh-final-cta * {
    box-sizing: border-box;
}

/* =========================================
   DECORATIVE BACKGROUND
========================================= */

.tsh-final-cta::before {
    content: "";

    position: absolute;
    top: -140px;
    right: -120px;

    width: 360px;
    height: 360px;

    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
}

.tsh-final-cta::after {
    content: "";

    position: absolute;
    left: -100px;
    bottom: -180px;

    width: 320px;
    height: 320px;

    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 50%;
}

/* =========================================
   MAIN LAYOUT
========================================= */

.tsh-final-cta__inner {
    position: relative;
    z-index: 1;

    width: min(calc(100% - 64px), 1320px);
    margin: 0 auto;

    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.55fr);
    align-items: end;
    gap: clamp(60px, 9vw, 150px);

    padding-top: 92px;
    padding-bottom: 92px;

    border-top: 1px solid var(--tsh-line);
    border-bottom: 1px solid var(--tsh-line);
}

/* =========================================
   CONTENT
========================================= */

.tsh-final-cta__content {
    max-width: 920px;
}

.tsh-final-cta__eyebrow {
    display: block;
    margin-bottom: 26px;

    color: var(--tsh-white) !important;

    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.18em;
    text-transform: uppercase;
}

.tsh-final-cta__title {
    margin: 0;

    color: var(--tsh-white) !important;

    font-size: clamp(54px, 7vw, 104px);
    font-weight: 700;
    line-height: 0.88;
    letter-spacing: -0.07em;
}

.tsh-final-cta__text {
    max-width: 670px;
    margin: 32px 0 0;

    color: var(--tsh-muted) !important;

    font-size: 17px;
    font-weight: 400;
    line-height: 1.65;
}

/* =========================================
   ACTION
========================================= */

.tsh-final-cta__action {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}

/* =========================================
   BUTTON
========================================= */

.tsh-final-cta__button,
.tsh-final-cta__button:visited {
    position: relative;
    overflow: hidden;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 185px;
    min-height: 54px;
    padding: 0 26px;

    border: 1px solid var(--tsh-white);

    background-color: var(--tsh-white);
    color: var(--tsh-black) !important;

    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none !important;

    box-shadow: 6px 6px 0 rgba(255, 255, 255, 0.25);

    transition:
        color 0.3s ease,
        transform 0.3s ease,
        box-shadow 0.3s ease;
}

.tsh-final-cta__button::before {
    content: "";

    position: absolute;
    inset: 0;
    z-index: 0;

    background-color: var(--tsh-black);

    transform: translateX(-101%);
    transition: transform 0.38s cubic-bezier(0.77, 0, 0.18, 1);
}

.tsh-final-cta__button::after {
    content: "β";

    position: relative;
    z-index: 1;

    margin-left: 18px;

    font-size: 18px;

    transition: transform 0.3s ease;
}

.tsh-final-cta__button:hover {
    color: var(--tsh-white) !important;

    transform: translate(3px, 3px);
    box-shadow: 3px 3px 0 rgba(255, 255, 255, 0.2);
}

.tsh-final-cta__button:hover::before {
    transform: translateX(0);
}

.tsh-final-cta__button:hover::after {
    transform: translateX(5px);
}

.tsh-final-cta__button:focus-visible {
    outline: 2px solid var(--tsh-white);
    outline-offset: 5px;
}

/* =========================================
   NOTE
========================================= */

.tsh-final-cta__note {
    max-width: 250px;

    color: var(--tsh-muted) !important;

    font-size: 11px;
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: 0.04em;
}

/* =========================================
   TABLET
========================================= */

@media (max-width: 1100px) {

    .tsh-final-cta__inner {
        width: min(calc(100% - 48px), 1050px);

        grid-template-columns: minmax(0, 1.2fr) minmax(240px, 0.6fr);
        gap: 54px;

        padding-top: 78px;
        padding-bottom: 78px;
    }

    .tsh-final-cta__title {
        font-size: clamp(52px, 7.8vw, 84px);
    }

    .tsh-final-cta__text {
        font-size: 16px;
    }

}

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

@media (max-width: 767px) {

    .tsh-final-cta__inner {
        width: min(calc(100% - 36px), 700px);

        grid-template-columns: 1fr;
        align-items: start;
        gap: 42px;

        padding-top: 66px;
        padding-bottom: 68px;
    }

    .tsh-final-cta__eyebrow {
        margin-bottom: 22px;
    }

    .tsh-final-cta__title {
        font-size: clamp(50px, 15vw, 74px);
    }

    .tsh-final-cta__text {
        margin-top: 27px;

        font-size: 15px;
    }

    .tsh-final-cta__action {
        gap: 20px;
    }

}

/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 480px) {

    .tsh-final-cta__inner {
        width: min(calc(100% - 28px), 460px);

        padding-top: 56px;
        padding-bottom: 58px;
    }

    .tsh-final-cta__eyebrow {
        font-size: 9px;
    }

    .tsh-final-cta__title {
        font-size: clamp(44px, 14vw, 62px);
    }

    .tsh-final-cta__text {
        font-size: 14px;
    }

    .tsh-final-cta__button {
        width: 100%;
    }

    .tsh-final-cta__note {
        max-width: 100%;
    }

}

/* =========================================
   REDUCED MOTION
========================================= */

@media (prefers-reduced-motion: reduce) {

    .tsh-final-cta__button,
    .tsh-final-cta__button::before,
    .tsh-final-cta__button::after {
        transition: none;
    }

}/* End custom CSS */