:root {
    --td-v2-ink: #06264a;
    --td-v2-green: #2d722b;
    --td-v2-green-dark: #225f22;
    --td-v2-gold: #d38a05;
    --td-v2-paper: #fcfbf8;
    --td-v2-line: #e8e4de;
    --td-v2-muted: #6d7b8f;
}

html:has(body.td-page--guest-deals-landing-v2) {
    color-scheme: light !important;
    background: var(--td-v2-paper) !important;
}

body.td-page--guest-deals-landing-v2 {
    min-width: 320px;
    margin: 0;
    color: var(--td-v2-ink) !important;
    background: var(--td-v2-paper) !important;
    font-family: "Manrope", "Avenir Next", Avenir, Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    color-scheme: light;
}

body.td-page--guest-deals-landing-v2 .td-public-deals-layout {
    width: 100%;
    min-height: 100vh;
    background: var(--td-v2-paper);
}

.td-guest-home-v2,
.td-guest-home-v2 * {
    box-sizing: border-box;
}

.td-guest-home-v2 {
    position: relative;
    z-index: 0;
    width: 100%;
    min-height: 1024px;
    overflow: hidden;
    color: var(--td-v2-ink);
    background:
        radial-gradient(circle at 37% 42%, rgba(255, 255, 255, .98) 0, rgba(255, 255, 255, 0) 37%),
        var(--td-v2-paper);
}

.td-guest-home-v2 a {
    color: inherit;
    text-decoration: none;
}

.td-guest-home-v2__header {
    position: relative;
    z-index: 20;
    display: grid;
    grid-template-columns: 246px minmax(560px, 1fr) 320px;
    align-items: start;
    width: calc(100% - 64px);
    max-width: 1472px;
    height: 120px;
    margin: 0 auto;
}

.td-guest-home-v2__brand {
    display: block;
    width: 205px;
    height: 99px;
    margin-top: 19px;
    overflow: hidden;
}

.td-guest-home-v2__brand img {
    display: block;
    width: 205px;
    height: auto;
}

.td-guest-home-v2__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(28px, 3vw, 46px);
    height: 103px;
    padding: 0 16px;
    white-space: nowrap;
}

.td-guest-home-v2__nav a {
    position: relative;
    display: inline-flex;
    align-items: center;
    height: 68px;
    padding-top: 5px;
    color: #061f42;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: -.2px;
    transition: color .2s ease;
}

.td-guest-home-v2__nav a:hover,
.td-guest-home-v2__nav a:focus-visible,
.td-guest-home-v2__nav a.is-active {
    color: var(--td-v2-green);
}

.td-guest-home-v2__nav a.is-active::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 2px;
    border-radius: 999px;
    background: var(--td-v2-green);
    content: "";
}

.td-guest-home-v2__floating-deposit {
    position: fixed;
    z-index: 1000;
    right: max(24px, env(safe-area-inset-right));
    bottom: calc(max(24px, env(safe-area-inset-bottom)) + 72px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 11px;
    min-height: 58px;
    padding: 0 22px;
    border: 1px solid rgba(255, 255, 255, .38);
    border-radius: 999px;
    color: #fff !important;
    background: linear-gradient(135deg, #347e31, #256a2b);
    box-shadow: 0 12px 32px rgba(20, 71, 29, .28), 0 3px 8px rgba(7, 32, 61, .12);
    font-size: 15px;
    font-weight: 800;
    letter-spacing: -.15px;
    text-decoration: none !important;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.td-guest-home-v2__floating-deposit > i:first-child {
    font-size: 16px;
}

.td-guest-home-v2__floating-deposit > i:last-child {
    margin-left: 2px;
    font-size: 12px;
    opacity: .9;
    transition: transform .18s ease;
}

.td-guest-home-v2__floating-deposit:hover,
.td-guest-home-v2__floating-deposit:focus-visible {
    transform: translateY(-3px);
    background: linear-gradient(135deg, #286e2b, #1e5c25);
    box-shadow: 0 16px 36px rgba(20, 71, 29, .34), 0 4px 10px rgba(7, 32, 61, .14);
}

.td-guest-home-v2__floating-deposit:hover > i:last-child,
.td-guest-home-v2__floating-deposit:focus-visible > i:last-child {
    transform: translateX(3px);
}

.td-guest-home-v2__floating-deposit:focus-visible {
    outline: 3px solid rgba(211, 138, 5, .55);
    outline-offset: 4px;
}

.td-guest-home-v2__auth {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    height: 103px;
    padding-top: 0;
}

.td-guest-home-v2__auth-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    height: 52px;
    min-height: 52px;
    flex: 0 0 auto;
    border: 1px solid #dce1e5;
    border-radius: 9px;
    font-size: 15px;
    font-weight: 700;
    box-shadow: 0 2px 5px rgba(7, 32, 61, .02);
}

.td-guest-home-v2__auth-button i {
    font-size: 18px;
}

.td-guest-home-v2__auth-button--login {
    width: 151px;
    color: var(--td-v2-ink);
    background: rgba(255, 255, 255, .76);
}

.td-guest-home-v2__auth-button--register {
    width: 157px;
    border-color: #2d722b;
    color: #fff !important;
    background: linear-gradient(135deg, #3d8037 0%, #236723 100%);
    box-shadow: 0 8px 20px rgba(42, 105, 39, .16);
}

.td-guest-home-v2__auth-button:hover,
.td-guest-home-v2__auth-button:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 9px 20px rgba(7, 32, 61, .12);
}

.td-guest-home-v2__mobile-menu {
    display: none;
}

.td-guest-home-v2__hero {
    position: relative;
    z-index: 2;
    width: calc(100% - 162px);
    max-width: 1374px;
    height: 640px;
    margin: 0 auto;
}

.td-guest-home-v2__hero-copy {
    position: relative;
    z-index: 10;
    width: 520px;
    padding: 22px 0 0 6px;
    isolation: isolate;
}

.td-guest-home-v2__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    height: 39px;
    margin: 0;
    padding: 0 20px;
    border: 1px solid #ece7df;
    border-radius: 999px;
    color: #251b13;
    background: rgba(255, 255, 255, .6);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: -.1px;
}

.td-guest-home-v2__eyebrow i {
    color: var(--td-v2-gold);
    font-size: 15px;
}

.td-guest-home-v2__identity-lockup {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 13px;
}

.td-guest-home-v2__identity-lockup > img {
    width: 84px;
    height: 84px;
    border-radius: 50%;
    object-fit: cover;
}

.td-guest-home-v2__hero-copy--identity h1 {
    display: flex;
    flex-direction: column;
    margin: 0;
    color: var(--td-v2-ink);
    font-family: "Manrope", "Avenir Next", Avenir, sans-serif;
    font-size: clamp(43px, 3.55vw, 59px);
    font-weight: 900;
    line-height: .88;
    letter-spacing: -3.6px;
    text-transform: uppercase;
}

.td-guest-home-v2__hero-copy--identity h1 > span { display: block; }
.td-guest-home-v2__hero-copy--identity h1 > span:last-child { color: #574b40; }

.td-guest-home-v2__audiences {
    display: grid;
    gap: 2px;
    margin: 17px 0 0 101px;
    padding: 13px 0 13px 18px;
    border-top: 2px solid rgba(45, 114, 43, .84);
    border-bottom: 2px solid rgba(45, 114, 43, .84);
    color: #2e672c;
    font-size: 38px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -.75px;
}

.td-guest-home-v2__audiences span:nth-child(2) { color: #bc7606; }
.td-guest-home-v2__audiences span:nth-child(4) { color: #251b13; }

.td-guest-home-v2__hero-actions {
    display: grid;
    gap: 7px;
    margin: 16px 0 0 2px;
    padding: 0;
    list-style: none;
    color: var(--td-v2-ink);
    font-size: 15px;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.28px;
}

.td-guest-home-v2__hero-actions li {
    display: flex;
    align-items: center;
    gap: 10px;
}

.td-guest-home-v2__hero-action-dot {
    display: block;
    flex: 0 0 auto;
    width: 9px;
    height: 9px;
    border-radius: 50%;
}

.td-guest-home-v2__hero-action-dot--green { background: var(--td-v2-green); }
.td-guest-home-v2__hero-action-dot--gold { background: var(--td-v2-gold); }
.td-guest-home-v2__hero-action-dot--ink { background: var(--td-v2-ink); }

.td-guest-home-v2__network {
    position: absolute;
    z-index: 1;
    top: -12px;
    left: 590px;
    width: 820px;
    height: 468px;
    overflow: hidden;
}

.td-guest-home-v2__network > picture {
    position: relative;
    z-index: 1;
    display: block;
    transform-origin: 51% 48%;
    animation: td-v2-network-drift 14s ease-in-out infinite;
    will-change: transform;
    pointer-events: none;
}

.td-guest-home-v2__network::after {
    position: absolute;
    z-index: 2;
    inset: 0;
    background: linear-gradient(90deg, var(--td-v2-paper) 0, rgba(252, 251, 248, .4) 4.5%, rgba(252, 251, 248, 0) 12%);
    content: "";
    pointer-events: none;
}

.td-guest-home-v2__network-image {
    display: block;
    width: 820px;
    height: auto;
}

.td-guest-home-v2__network-brand {
    position: absolute;
    z-index: 3;
    /* These coordinates follow the centre of the medallion drawn in the
       network artwork, rather than the geometric centre of its canvas. */
    top: 49.05%;
    left: 52.65%;
    display: grid;
    width: 118px;
    height: 118px;
    overflow: hidden;
    place-items: center;
    border: 1px solid rgba(8, 40, 73, .08);
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 9px 28px rgba(10, 38, 61, .09);
    transform: translate(-50%, -50%);
    animation: td-v2-network-brand-breathe 7.2s ease-in-out infinite;
    will-change: transform, box-shadow;
    pointer-events: none;
}

.td-guest-home-v2__network-brand::before {
    position: absolute;
    inset: -14px;
    border: 1px solid rgba(206, 140, 22, .35);
    border-radius: 50%;
    content: "";
    animation: td-v2-network-brand-ring 7.2s ease-in-out infinite;
}

.td-guest-home-v2__network-brand img {
    display: block;
    width: 98px;
    height: 98px;
    border-radius: 50%;
    object-fit: cover;
    object-position: center;
}

.td-guest-home-v2__network-deals {
    position: absolute;
    z-index: 4;
    inset: 0;
    pointer-events: none;
}

.td-guest-home-v2__network-deal {
    position: absolute;
    display: flex;
    align-items: center;
    gap: 9px;
    width: 21.3%;
    min-width: 0;
    aspect-ratio: 2.35 / 1;
    padding: 8px 10px;
    overflow: hidden;
    border: 1px solid rgba(11, 41, 69, .055);
    border-radius: 12px;
    color: var(--td-v2-ink);
    background: rgba(255, 255, 255, .97);
    box-shadow: 0 8px 18px rgba(8, 35, 59, .12);
    pointer-events: auto;
    animation:
        td-v2-network-card-reveal .62s cubic-bezier(.22, 1, .36, 1) both,
        td-v2-network-card-float 7.4s ease-in-out .72s infinite;
    transition: box-shadow .2s ease, border-color .2s ease;
    will-change: transform, opacity;
}

.td-guest-home-v2__network-deal:hover,
.td-guest-home-v2__network-deal:focus-visible {
    z-index: 2;
    border-color: rgba(45, 114, 43, .38);
    box-shadow: 0 12px 24px rgba(8, 35, 59, .18);
    animation-play-state: paused;
    outline: 0;
}

.td-guest-home-v2__network-deal:hover .td-guest-home-v2__network-deal-image img,
.td-guest-home-v2__network-deal:focus-visible .td-guest-home-v2__network-deal-image img {
    animation-play-state: paused;
    filter: saturate(1.08) contrast(1.03);
    transform: scale(1.13);
}

.td-guest-home-v2__network-deal:hover .td-guest-home-v2__network-deal-image::after,
.td-guest-home-v2__network-deal:focus-visible .td-guest-home-v2__network-deal-image::after,
.td-guest-home-v2__network-deal:hover .td-guest-home-v2__network-deal-image::before,
.td-guest-home-v2__network-deal:focus-visible .td-guest-home-v2__network-deal-image::before {
    animation-play-state: paused;
    opacity: .35;
}

.td-guest-home-v2__network-deal:hover .td-guest-home-v2__network-deal-status i,
.td-guest-home-v2__network-deal:focus-visible .td-guest-home-v2__network-deal-status i {
    animation-play-state: paused;
}

.td-guest-home-v2__network-deal--top {
    top: 3.8%;
    left: 42.7%;
    width: 20.9%;
    animation-name: td-v2-network-card-reveal, td-v2-network-card-top-orbit;
    animation-duration: .62s, 9.6s;
    animation-delay: .1s, .72s;
}

.td-guest-home-v2__network-deal--left {
    top: 39.5%;
    left: 1.2%;
    animation-name: td-v2-network-card-reveal, td-v2-network-card-left-orbit;
    animation-duration: .62s, 10.8s;
    animation-delay: .24s, .86s;
}

.td-guest-home-v2__network-deal--right {
    top: 40.5%;
    right: 1.2%;
    animation-name: td-v2-network-card-reveal, td-v2-network-card-right-orbit;
    animation-duration: .62s, 9.1s;
    animation-delay: .38s, 1s;
}

.td-guest-home-v2__network-deal--bottom {
    top: 83.5%;
    left: 42.7%;
    width: 20.9%;
    animation-name: td-v2-network-card-reveal, td-v2-network-card-bottom-orbit;
    animation-duration: .62s, 11.4s;
    animation-delay: .52s, 1.14s;
}

.td-guest-home-v2__network-deal-image {
    position: relative;
    display: block;
    flex: 0 0 33%;
    align-self: stretch;
    overflow: hidden;
    border-radius: 8px;
    background: #edf2e9;
    isolation: isolate;
}

.td-guest-home-v2__network-deal-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    animation: td-v2-network-photo-pan 9.5s ease-in-out infinite;
    will-change: transform, filter;
}

.td-guest-home-v2__network-deal-image::before {
    position: absolute;
    z-index: 2;
    inset: 3px;
    border: 1px solid rgba(255, 255, 255, .82);
    border-radius: 6px;
    content: "";
    opacity: 0;
    pointer-events: none;
    transform: scale(.72);
    animation: td-v2-network-photo-focus 4.8s ease-in-out infinite;
    will-change: transform, opacity;
}

.td-guest-home-v2__network-deal-image::after {
    position: absolute;
    z-index: 1;
    inset: 0;
    background: linear-gradient(112deg, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, .42) 47%, rgba(255, 255, 255, 0) 67%);
    content: "";
    mix-blend-mode: screen;
    opacity: .78;
    pointer-events: none;
    transform: translate3d(-135%, 0, 0) skewX(-16deg);
    animation: td-v2-network-photo-sheen 8.8s cubic-bezier(.22, 1, .36, 1) infinite;
    will-change: transform;
}

.td-guest-home-v2__network-deal--top .td-guest-home-v2__network-deal-image img { animation-delay: -2.1s; }
.td-guest-home-v2__network-deal--left .td-guest-home-v2__network-deal-image img { animation-delay: -4.8s; animation-direction: reverse; }
.td-guest-home-v2__network-deal--right .td-guest-home-v2__network-deal-image img { animation-delay: -6.4s; }
.td-guest-home-v2__network-deal--bottom .td-guest-home-v2__network-deal-image img { animation-delay: -1.1s; animation-direction: reverse; }

.td-guest-home-v2__network-deal--top .td-guest-home-v2__network-deal-image::after { animation-delay: .5s; }
.td-guest-home-v2__network-deal--left .td-guest-home-v2__network-deal-image::after { animation-delay: 2.1s; }
.td-guest-home-v2__network-deal--right .td-guest-home-v2__network-deal-image::after { animation-delay: 3.7s; }
.td-guest-home-v2__network-deal--bottom .td-guest-home-v2__network-deal-image::after { animation-delay: 5.3s; }

.td-guest-home-v2__network-deal--top .td-guest-home-v2__network-deal-image::before { animation-delay: .15s; }
.td-guest-home-v2__network-deal--left .td-guest-home-v2__network-deal-image::before { animation-delay: 1.4s; }
.td-guest-home-v2__network-deal--right .td-guest-home-v2__network-deal-image::before { animation-delay: 2.7s; }
.td-guest-home-v2__network-deal--bottom .td-guest-home-v2__network-deal-image::before { animation-delay: 4s; }

.td-guest-home-v2__network-deal-copy {
    display: grid;
    min-width: 0;
    align-content: center;
    gap: 3px;
}

.td-guest-home-v2__network-deal-copy > strong {
    overflow: hidden;
    color: #092a52;
    font-size: clamp(8px, .73vw, 11px);
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -.22px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.td-guest-home-v2__network-deal-location,
.td-guest-home-v2__network-deal-status {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 4px;
    overflow: hidden;
    font-size: clamp(7px, .64vw, 9px);
    font-weight: 650;
    line-height: 1.15;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.td-guest-home-v2__network-deal-location {
    color: #637991;
}

.td-guest-home-v2__network-deal-status {
    color: #43843c;
}

.td-guest-home-v2__network-deal-status--exclusive {
    color: #a56500;
}

.td-guest-home-v2__network-deal-status--teaser {
    color: var(--td-v2-green);
}

.td-guest-home-v2__network-deal.is-catalogue-teaser {
    border-color: rgba(45, 114, 43, .18);
    background: rgba(252, 254, 251, .98);
}

.td-guest-home-v2__network-deal.is-catalogue-teaser:hover,
.td-guest-home-v2__network-deal.is-catalogue-teaser:focus-visible {
    border-color: rgba(45, 114, 43, .45);
}

.td-guest-home-v2__network-deal-status--exclusive i {
    animation: none;
}

.td-guest-home-v2__network-deal-status i {
    animation: td-v2-network-status-confirm 3.7s cubic-bezier(.22, 1, .36, 1) infinite;
    will-change: transform, filter;
}

.td-guest-home-v2__network-deal--top .td-guest-home-v2__network-deal-status i { animation-delay: .45s; }
.td-guest-home-v2__network-deal--left .td-guest-home-v2__network-deal-status i { animation-delay: 1.35s; }
.td-guest-home-v2__network-deal--right .td-guest-home-v2__network-deal-status i { animation-delay: 2.2s; }
.td-guest-home-v2__network-deal--bottom .td-guest-home-v2__network-deal-status i { animation-delay: 3.05s; }

.td-guest-home-v2__network-deal-location i,
.td-guest-home-v2__network-deal-status i {
    flex: 0 0 auto;
    font-size: .95em;
}

.td-guest-home-v2__search {
    position: absolute;
    z-index: 9;
    top: 478px;
    left: 6px;
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 110px 105px;
    align-items: center;
    width: 730px;
    height: 69px;
    padding: 10px 11px 10px 17px;
    border: 1px solid #e7e8e8;
    border-radius: 15px;
    background: rgba(255, 255, 255, .96);
    box-shadow: 0 10px 25px rgba(8, 35, 59, .1);
}

.td-guest-home-v2__search > i {
    color: var(--td-v2-ink);
    font-size: 22px;
}

.td-guest-home-v2__search input {
    width: 100%;
    height: 46px;
    min-width: 0;
    padding: 0 12px 0 2px;
    border: 0;
    outline: 0;
    color: var(--td-v2-ink);
    background: transparent;
    font: inherit;
    font-size: 13px;
}

.td-guest-home-v2__search input::placeholder {
    color: #77859a;
    opacity: 1;
}

.td-guest-home-v2__search button,
.td-guest-home-v2__search > a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 47px;
    border-radius: 9px;
    font-family: inherit;
    font-size: 12px;
    font-weight: 700;
}

.td-guest-home-v2__search button {
    border: 1px solid #286b28;
    color: #fff;
    background: linear-gradient(135deg, #3a7f35, #246b24);
    box-shadow: 0 6px 15px rgba(44, 112, 42, .18);
    cursor: pointer;
}

.td-guest-home-v2__search > a {
    margin-left: 10px;
    border: 1px solid #e5e8eb;
    color: var(--td-v2-ink);
    background: #fff;
}

.td-guest-home-v2__examples {
    position: absolute;
    z-index: 8;
    top: 572px;
    left: 9px;
    display: flex;
    align-items: center;
    gap: 14px;
    white-space: nowrap;
}

.td-guest-home-v2__examples > strong {
    flex: 0 0 168px;
    margin-right: 2px;
    color: var(--td-v2-ink);
    font-size: 13px;
    font-weight: 700;
}

.td-guest-home-v2__examples > a {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 12px;
    height: 45px;
    padding: 0 18px;
    border: 1px solid #e8e6e1;
    border-radius: 11px;
    color: var(--td-v2-ink);
    background: rgba(255, 255, 255, .78);
    font-size: 11px;
    font-weight: 700;
    box-shadow: 0 2px 4px rgba(8, 35, 59, .015);
}

.td-guest-home-v2__examples > a:nth-of-type(1) { width: 177px; }
.td-guest-home-v2__examples > a:nth-of-type(2) { width: 176px; }
.td-guest-home-v2__examples > a:nth-of-type(3) { width: 163px; }
.td-guest-home-v2__examples > a:nth-of-type(4) { width: 187px; }

.td-guest-home-v2__examples i {
    width: 18px;
    color: var(--td-v2-ink);
    font-size: 17px;
    text-align: center;
}

.td-guest-home-v2__benefits {
    position: relative;
    z-index: 5;
    display: grid;
    grid-template-columns: .966fr 1fr .994fr 1.008fr;
    gap: 14px;
    width: calc(100% - 162px);
    max-width: 1374px;
    height: 185px;
    margin: 10px auto 0;
}

.td-guest-home-v2__benefit {
    position: relative;
    display: flex;
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(229, 226, 220, .7);
    border-radius: 12px;
    background: rgba(249, 248, 245, .86);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .86);
}

.td-guest-home-v2__benefit-copy {
    position: relative;
    z-index: 3;
    width: 52%;
    padding: 12px 0 12px 24px;
}

.td-guest-home-v2__benefit-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 43px;
    height: 43px;
    margin-bottom: 7px;
    border-radius: 50%;
    color: #fff;
    background: var(--td-v2-green);
    font-size: 18px;
    box-shadow: 0 5px 14px rgba(40, 105, 39, .16);
}

.td-guest-home-v2__benefit--community .td-guest-home-v2__benefit-icon {
    gap: 0;
    background: var(--td-v2-ink);
    font-size: 14px;
}

.td-guest-home-v2__benefit--community {
    background: #f9f8f5;
}

.td-guest-home-v2__benefit--community .td-guest-home-v2__benefit-icon i + i {
    margin-left: -5px;
}

.td-guest-home-v2__benefit--sharing .td-guest-home-v2__benefit-icon {
    background: var(--td-v2-gold);
}

.td-guest-home-v2__benefit h2 {
    margin: 0;
    color: var(--td-v2-ink);
    font-size: 14px;
    font-weight: 800;
    line-height: 1.35;
    letter-spacing: -.2px;
}

.td-guest-home-v2__benefit p {
    margin: 5px 0 0;
    color: #183754;
    font-size: 11px;
    font-weight: 500;
    line-height: 1.68;
    letter-spacing: -.08px;
}

.td-guest-home-v2__paper-art {
    position: absolute;
    top: 29px;
    right: 16px;
    width: 139px;
    height: 137px;
    border-radius: 7px;
    background: rgba(255, 255, 255, .72);
    box-shadow: 0 8px 22px rgba(7, 36, 64, .08);
    transform: rotate(-5deg);
}

.td-guest-home-v2__paper-art::before {
    position: absolute;
    top: 16px;
    left: 13px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #d3d7db;
    content: "";
}

.td-guest-home-v2__paper-line {
    position: absolute;
    left: 28px;
    display: block;
    width: 39px;
    height: 4px;
    border-radius: 999px;
    background: #dde1e3;
}

.td-guest-home-v2__paper-line:nth-child(1) { top: 18px; width: 30px; }
.td-guest-home-v2__paper-line:nth-child(2) { top: 42px; }
.td-guest-home-v2__paper-line:nth-child(3) { top: 55px; width: 52px; background: #397837; }

.td-guest-home-v2__paper-art img {
    position: absolute;
    right: -4px;
    bottom: 27px;
    width: 72px;
    height: 78px;
    border-radius: 5px;
    object-fit: cover;
    transform: rotate(5deg);
    box-shadow: 0 6px 13px rgba(7, 34, 59, .12);
}

.td-guest-home-v2__paper-art em {
    position: absolute;
    bottom: 10px;
    left: 12px;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 20px;
    padding: 0 8px;
    border-radius: 4px;
    color: #fff;
    background: var(--td-v2-green);
    font-size: 8px;
    font-style: normal;
    transform: rotate(5deg);
}

.td-guest-home-v2__handshake-art {
    position: absolute;
    right: -7px;
    bottom: 0;
    z-index: 1;
    width: 204px;
    height: 185px;
    pointer-events: none;
}

.td-guest-home-v2__handshake-art::before {
    position: absolute;
    z-index: -1;
    right: 13px;
    bottom: -28px;
    width: 165px;
    height: 165px;
    border-radius: 50%;
    background:
        radial-gradient(circle at 50% 44%, rgba(255, 255, 255, .96) 0 29%, rgba(242, 243, 240, .58) 30% 51%, rgba(242, 243, 240, 0) 72%);
    content: "";
}

.td-guest-home-v2__handshake-art picture {
    position: absolute;
    inset: 0;
    display: block;
    animation: td-v2-community-handshake 7.2s ease-in-out infinite;
}

.td-guest-home-v2__handshake-art img {
    position: absolute;
    right: -21px;
    bottom: 0;
    display: block;
    width: 232px;
    max-width: none;
    height: auto;
}

.td-guest-home-v2__shield-art {
    position: absolute;
    top: 28px;
    right: 17px;
    display: grid;
    width: 145px;
    height: 130px;
    place-items: center;
}

.td-guest-home-v2__shield-art > .fa-shield {
    position: relative;
    z-index: 4;
    color: var(--td-v2-green);
    font-size: 78px;
    filter: drop-shadow(0 10px 12px rgba(39, 104, 38, .18));
}

.td-guest-home-v2__shield-art > .fa-check {
    position: absolute;
    z-index: 5;
    top: 53px;
    left: 61px;
    color: #fff;
    font-size: 25px;
}

.td-guest-home-v2__shield-art::before {
    position: absolute;
    z-index: 2;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: rgba(255, 255, 255, .83);
    box-shadow: 0 9px 26px rgba(8, 35, 59, .08);
    content: "";
}

.td-guest-home-v2__orbit {
    position: absolute;
    z-index: 1;
    border: 1px solid rgba(43, 111, 42, .36);
    border-radius: 50%;
}

.td-guest-home-v2__orbit::before,
.td-guest-home-v2__orbit::after {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #6a9966;
    content: "";
}

.td-guest-home-v2__orbit--one {
    width: 136px;
    height: 88px;
    transform: rotate(28deg);
}

.td-guest-home-v2__orbit--one::before { top: 8px; left: 16px; }
.td-guest-home-v2__orbit--one::after { right: 4px; bottom: 25px; }

.td-guest-home-v2__orbit--two {
    width: 142px;
    height: 76px;
    transform: rotate(-30deg);
}

.td-guest-home-v2__orbit--two::before { top: 5px; right: 18px; background: #d8a11f; }
.td-guest-home-v2__orbit--two::after { bottom: 7px; left: 16px; }

.td-guest-home-v2__shield-art small {
    position: absolute;
    z-index: 6;
    bottom: -1px;
    left: 2px;
    display: grid;
    width: 27px;
    height: 34px;
    place-items: center;
    border-radius: 10px;
    color: #fff;
    background: #8998a8;
    font-size: 12px;
}

.td-guest-home-v2__people-art {
    position: absolute;
    top: 20px;
    right: 10px;
    width: 164px;
    height: 148px;
}

.td-guest-home-v2__people-art::before,
.td-guest-home-v2__people-art::after {
    position: absolute;
    top: 48px;
    left: 45px;
    width: 79px;
    height: 54px;
    border: 1px solid rgba(47, 110, 44, .35);
    border-radius: 50%;
    content: "";
}

.td-guest-home-v2__people-art::after {
    transform: rotate(60deg);
}

.td-guest-home-v2__people-center {
    position: absolute;
    z-index: 3;
    top: 47px;
    left: 58px;
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 50%;
    color: var(--td-v2-gold);
    background: #fff;
    font-size: 24px;
    box-shadow: 0 6px 14px rgba(8, 35, 59, .08);
}

.td-guest-home-v2__people-art > .fa-user-tie {
    position: absolute;
    z-index: 2;
    display: grid;
    width: 31px;
    height: 31px;
    place-items: center;
    border: 3px solid #fff;
    border-radius: 50%;
    color: #173d61;
    background: #e7d2be;
    font-size: 17px;
    box-shadow: 0 4px 9px rgba(8, 35, 59, .1);
}

.td-guest-home-v2__people-art > i:nth-of-type(1) { top: 0; left: 68px; }
.td-guest-home-v2__people-art > i:nth-of-type(2) { top: 30px; right: 0; color: #af6d37; }
.td-guest-home-v2__people-art > i:nth-of-type(3) { right: 6px; bottom: 8px; color: #0f2944; }
.td-guest-home-v2__people-art > i:nth-of-type(4) { bottom: 0; left: 66px; color: #af6d37; }
.td-guest-home-v2__people-art > i:nth-of-type(5) { bottom: 7px; left: 3px; color: #0f2944; }
.td-guest-home-v2__people-art > i:nth-of-type(6) { top: 30px; left: 0; color: #af6d37; }

.td-guest-home-v2__stats {
    position: relative;
    z-index: 5;
    width: calc(100% - 162px);
    max-width: 1374px;
    height: 108px;
    margin: 18px auto 0;
    padding: 13px 80px 12px;
    border: 1px solid rgba(230, 226, 220, .62);
    border-radius: 12px;
    background: rgba(249, 248, 245, .75);
}

.td-guest-home-v2__stats > p {
    margin: 0 0 11px;
    color: var(--td-v2-ink);
    font-size: 12px;
    font-weight: 500;
    text-align: center;
}

.td-guest-home-v2__stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    height: 55px;
}

.td-guest-home-v2__stats-grid article {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 13px;
    min-width: 0;
    border-left: 1px solid #dbdedf;
}

.td-guest-home-v2__stats-grid article:first-child {
    border-left: 0;
}

.td-guest-home-v2__stats-grid article > i {
    color: var(--td-v2-ink);
    font-size: 35px;
    font-weight: 400;
}

.td-guest-home-v2__stats-grid article:last-child > i {
    color: var(--td-v2-gold);
}

.td-guest-home-v2__stats-grid article span {
    display: flex;
    flex-direction: column;
}

.td-guest-home-v2__stats-grid strong {
    color: var(--td-v2-ink);
    font-size: 19px;
    font-weight: 800;
    line-height: 1.12;
}

.td-guest-home-v2__stats-grid small {
    margin-top: 3px;
    color: #536477;
    font-size: 9px;
    font-weight: 500;
}

@keyframes td-v2-network-drift {
    0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
    50% { transform: translate3d(-3px, 2px, 0) scale(1.006); }
}

@keyframes td-v2-network-brand-breathe {
    0%, 100% {
        box-shadow: 0 9px 28px rgba(10, 38, 61, .09);
        transform: translate(-50%, -50%) scale(1);
    }
    50% {
        box-shadow: 0 13px 34px rgba(10, 38, 61, .14);
        transform: translate(-50%, -50%) scale(1.045);
    }
}

@keyframes td-v2-network-brand-ring {
    0%, 100% { opacity: .34; transform: scale(.96); }
    50% { opacity: .72; transform: scale(1.06); }
}

@keyframes td-v2-network-card-reveal {
    from {
        opacity: 0;
        filter: blur(3px);
    }
    to {
        opacity: 1;
        filter: blur(0);
    }
}

@keyframes td-v2-network-card-float {
    0%, 100% { transform: translate3d(0, 0, 0); }
    50% { transform: translate3d(0, -5px, 0); }
}

@keyframes td-v2-network-card-top-orbit {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(0); }
    24% { transform: translate3d(12px, -5px, 0) rotate(.62deg); }
    53% { transform: translate3d(3px, -10px, 0) rotate(.14deg); }
    78% { transform: translate3d(-10px, -3px, 0) rotate(-.5deg); }
}

@keyframes td-v2-network-card-left-orbit {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(0); }
    28% { transform: translate3d(-14px, -3px, 0) rotate(-.7deg); }
    58% { transform: translate3d(4px, -11px, 0) rotate(.38deg); }
    82% { transform: translate3d(11px, -4px, 0) rotate(.25deg); }
}

@keyframes td-v2-network-card-right-orbit {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(0); }
    25% { transform: translate3d(12px, -6px, 0) rotate(.58deg); }
    55% { transform: translate3d(-7px, -12px, 0) rotate(-.52deg); }
    79% { transform: translate3d(-11px, -2px, 0) rotate(-.2deg); }
}

@keyframes td-v2-network-card-bottom-orbit {
    0%, 100% { transform: translate3d(0, 0, 0) rotate(0); }
    22% { transform: translate3d(-12px, -7px, 0) rotate(-.6deg); }
    50% { transform: translate3d(2px, -14px, 0) rotate(.25deg); }
    78% { transform: translate3d(13px, -4px, 0) rotate(.56deg); }
}

@keyframes td-v2-network-photo-pan {
    0%, 100% {
        filter: saturate(1) brightness(1);
        transform: scale(1.045) translate3d(-2.5%, 1.5%, 0);
    }
    46% {
        filter: saturate(1.08) brightness(1.025);
        transform: scale(1.14) translate3d(2.5%, -2%, 0);
    }
    72% {
        filter: saturate(1.03) brightness(1.01);
        transform: scale(1.095) translate3d(-.75%, -2.5%, 0);
    }
}

@keyframes td-v2-network-photo-sheen {
    0%, 42% { transform: translate3d(-135%, 0, 0) skewX(-16deg); }
    66%, 100% { transform: translate3d(145%, 0, 0) skewX(-16deg); }
}

@keyframes td-v2-network-photo-focus {
    0%, 64%, 100% { opacity: 0; transform: scale(.72); }
    15% { opacity: .62; transform: scale(1); }
    34% { opacity: .18; transform: scale(1.13); }
}

@keyframes td-v2-network-status-confirm {
    0%, 64%, 100% {
        filter: drop-shadow(0 0 0 rgba(64, 150, 54, 0));
        transform: scale(1);
    }
    18% {
        filter: drop-shadow(0 0 4px rgba(64, 150, 54, .38));
        transform: scale(1.35);
    }
    32% {
        filter: drop-shadow(0 0 2px rgba(64, 150, 54, .2));
        transform: scale(.96);
    }
}

@keyframes td-v2-community-handshake {
    0%, 100% { transform: translate3d(0, 0, 0); }
    50% { transform: translate3d(0, -2px, 0); }
}

@media (min-width: 1121px) {
    html:has(body.td-page--guest-deals-landing-v2),
    body.td-page--guest-deals-landing-v2,
    body.td-page--guest-deals-landing-v2 .td-public-deals-layout {
        height: 100svh;
        min-height: 0;
        overflow: hidden;
    }

    .td-guest-home-v2 {
        height: 100svh;
        min-height: 0;
    }
}

@media (min-width: 1121px) and (max-height: 1023px) {
    .td-guest-home-v2__header {
        height: clamp(90px, 11.72vh, 120px);
    }

    .td-guest-home-v2__brand {
        width: clamp(170px, 19.35vh, 198px);
        height: auto;
        margin-top: clamp(11px, 1.86vh, 19px);
    }

    .td-guest-home-v2__brand img {
        width: 100%;
    }

    .td-guest-home-v2__nav {
        height: clamp(82px, 10.06vh, 103px);
    }

    .td-guest-home-v2__auth {
        height: clamp(82px, 10.06vh, 103px);
        padding-top: 0;
    }

    .td-guest-home-v2__auth-button {
        height: clamp(44px, 5.08vh, 52px);
        min-height: clamp(44px, 5.08vh, 52px);
    }

    .td-guest-home-v2__hero {
        height: clamp(500px, 63vh, 640px);
    }

    .td-guest-home-v2__hero-copy {
        padding-top: clamp(13px, 2.15vh, 22px);
    }

    .td-guest-home-v2__eyebrow {
        height: clamp(33px, 3.81vh, 39px);
    }

    .td-guest-home-v2__hero-copy--identity h1 {
        font-size: clamp(44px, 6.3vh, 59px);
    }

    .td-guest-home-v2__audiences {
        margin-top: clamp(12px, 1.66vh, 17px);
        padding-top: clamp(10px, 1.27vh, 13px);
        padding-bottom: clamp(10px, 1.27vh, 13px);
        font-size: clamp(17px, 2.15vh, 22px);
    }

    .td-guest-home-v2__hero-actions {
        margin-top: clamp(10px, 1.56vh, 16px);
        font-size: clamp(13px, 1.46vh, 15px);
    }

    .td-guest-home-v2__network {
        top: clamp(-28px, -2.74vh, -21px);
    }

    .td-guest-home-v2__search {
        top: clamp(390px, 52vh, 478px);
        height: clamp(59px, 6.74vh, 69px);
    }

    .td-guest-home-v2__search input,
    .td-guest-home-v2__search button,
    .td-guest-home-v2__search > a {
        height: clamp(42px, 4.59vh, 47px);
    }

    .td-guest-home-v2__examples {
        top: clamp(475px, 61.5vh, 572px);
    }

    .td-guest-home-v2__examples > a {
        height: clamp(38px, 4.39vh, 45px);
    }

    .td-guest-home-v2__benefits {
        height: clamp(140px, 18.06vh, 185px);
        margin-top: clamp(8px, .98vh, 10px);
    }

    .td-guest-home-v2__benefit-copy {
        padding-top: clamp(9px, 1.17vh, 12px);
        padding-bottom: clamp(9px, 1.17vh, 12px);
    }

    .td-guest-home-v2__stats {
        height: clamp(81px, 10.55vh, 108px);
        margin-top: clamp(14px, 1.76vh, 18px);
        padding-top: clamp(9px, 1.27vh, 13px);
        padding-bottom: clamp(8px, 1.17vh, 12px);
    }

    .td-guest-home-v2__stats > p {
        margin-bottom: clamp(6px, 1.07vh, 11px);
    }

    .td-guest-home-v2__stats-grid {
        height: auto;
    }
}

@media (min-width: 1121px) and (max-height: 820px) {
    .td-guest-home-v2__header {
        height: 90px;
    }

    .td-guest-home-v2__hero {
        height: 500px;
    }

    .td-guest-home-v2__hero-copy--identity h1 {
        font-size: 47px;
        letter-spacing: -3px;
    }

    .td-guest-home-v2__audiences {
        font-size: 17px;
    }

    .td-guest-home-v2__hero-actions {
        margin-top: 10px;
        font-size: 13px;
    }

    .td-guest-home-v2__search {
        top: 390px;
    }

    .td-guest-home-v2__examples {
        top: 475px;
    }

    .td-guest-home-v2__benefits {
        height: 140px;
    }

    .td-guest-home-v2__stats {
        height: 81px;
    }
}

@media (max-width: 1380px) {
    .td-guest-home-v2__header {
        grid-template-columns: 220px minmax(520px, 1fr) 290px;
    }

    .td-guest-home-v2__brand,
    .td-guest-home-v2__brand img {
        width: 188px;
    }

    .td-guest-home-v2__nav {
        gap: 27px;
    }

    .td-guest-home-v2__auth-button--login { width: 135px; }
    .td-guest-home-v2__auth-button--register { width: 145px; }

    .td-guest-home-v2__network {
        top: -4px;
        left: 570px;
        width: 760px;
        height: 432px;
    }

    .td-guest-home-v2__network-image {
        width: 760px;
    }

    .td-guest-home-v2__examples {
        gap: 9px;
    }

    .td-guest-home-v2__examples > a {
        width: auto !important;
        min-width: 148px;
        padding-right: 13px;
        padding-left: 13px;
    }

    .td-guest-home-v2__benefit-copy {
        padding-left: 18px;
    }
}

@media (max-width: 1120px) {
    .td-guest-home-v2 {
        min-height: 0;
        padding-bottom: 32px;
    }

    .td-guest-home-v2__header {
        grid-template-columns: 1fr auto;
        width: calc(100% - 48px);
        height: 104px;
    }

    .td-guest-home-v2__brand {
        margin-top: 5px;
    }

    .td-guest-home-v2__nav,
    .td-guest-home-v2__auth {
        display: none;
    }

    .td-guest-home-v2__mobile-menu {
        position: relative;
        z-index: 30;
        display: block;
        grid-column: 2;
        grid-row: 1;
        margin-top: 27px;
    }

    .td-guest-home-v2__mobile-menu summary {
        display: grid;
        width: 48px;
        height: 48px;
        place-items: center;
        border: 1px solid #dde2e4;
        border-radius: 10px;
        color: var(--td-v2-ink);
        background: #fff;
        cursor: pointer;
        list-style: none;
    }

    .td-guest-home-v2__mobile-menu summary::-webkit-details-marker {
        display: none;
    }

    .td-guest-home-v2__mobile-menu nav {
        position: absolute;
        top: 56px;
        right: 0;
        display: grid;
        width: 235px;
        padding: 12px;
        border: 1px solid var(--td-v2-line);
        border-radius: 12px;
        background: #fff;
        box-shadow: 0 16px 40px rgba(7, 32, 61, .14);
    }

    .td-guest-home-v2__mobile-menu nav a {
        padding: 10px 12px;
        border-radius: 7px;
        font-size: 14px;
        font-weight: 650;
    }

    .td-guest-home-v2__mobile-menu nav a:hover {
        background: #f4f7f2;
    }

    .td-guest-home-v2__hero {
        width: calc(100% - 48px);
        height: auto;
        min-height: 970px;
    }

    .td-guest-home-v2__hero-copy {
        width: min(620px, 100%);
        padding-top: 16px;
    }

    .td-guest-home-v2__identity-lockup > img {
        width: 78px;
        height: 78px;
    }

    .td-guest-home-v2__hero-copy--identity h1 {
        font-size: clamp(48px, 7vw, 58px);
    }

    .td-guest-home-v2__audiences {
        margin-left: 92px;
        font-size: 20px;
    }

    .td-guest-home-v2__network {
        top: 395px;
        left: 50%;
        width: min(900px, 110vw);
        height: auto;
        transform: translateX(-50%);
    }

    .td-guest-home-v2__network-image {
        width: 100%;
    }

    .td-guest-home-v2__search {
        top: 790px;
        left: 0;
        width: min(730px, 100%);
    }

    .td-guest-home-v2__examples {
        top: 884px;
        left: 0;
        width: 100%;
        overflow-x: auto;
        padding-bottom: 8px;
    }

    .td-guest-home-v2__examples > a {
        flex: 0 0 auto;
    }

    .td-guest-home-v2__benefits {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: calc(100% - 48px);
        height: auto;
    }

    .td-guest-home-v2__benefit {
        min-height: 185px;
    }

    .td-guest-home-v2__stats {
        width: calc(100% - 48px);
        height: auto;
        padding-right: 30px;
        padding-left: 30px;
    }
}

@media (max-width: 680px) {
    .td-guest-home-v2__header,
    .td-guest-home-v2__hero,
    .td-guest-home-v2__benefits,
    .td-guest-home-v2__stats {
        width: calc(100% - 40px);
    }

    .td-guest-home-v2__header {
        height: 91px;
    }

    .td-guest-home-v2__brand,
    .td-guest-home-v2__brand img {
        width: 158px;
    }

    .td-guest-home-v2__mobile-menu {
        margin-top: 20px;
    }

    .td-guest-home-v2__eyebrow {
        max-width: 100%;
        height: 35px;
        padding: 0 14px;
        font-size: 11px;
    }

    .td-guest-home-v2__identity-lockup {
        gap: 11px;
        margin-top: 11px;
    }

    .td-guest-home-v2__identity-lockup > img {
        width: 70px;
        height: 70px;
    }

    .td-guest-home-v2__hero-copy--identity h1 {
        font-size: clamp(42px, 12vw, 51px);
        letter-spacing: -2.5px;
    }

    .td-guest-home-v2__audiences {
        gap: 3px;
        margin-top: 14px;
        margin-left: 0;
        padding: 11px 0 11px 13px;
        font-size: clamp(18px, 5.4vw, 21px);
        letter-spacing: -.55px;
    }

    .td-guest-home-v2__hero-actions {
        gap: 8px;
        margin-top: 14px;
        font-size: 14px;
    }

    .td-guest-home-v2__desktop-only {
        display: none;
    }

    .td-guest-home-v2__hero {
        min-height: 790px;
    }

    .td-guest-home-v2__network {
        top: 345px;
        width: 760px;
        max-width: none;
    }

    .td-guest-home-v2__network-brand {
        width: 94px;
        height: 94px;
    }

    .td-guest-home-v2__network-brand img {
        width: 78px;
        height: 78px;
    }

    /* The orbit intentionally overflows the mobile viewport. Bring the live
       cards into its visible centre window so their database content remains
       readable instead of being clipped by that decorative crop. */
    .td-guest-home-v2__network-deal--left {
        left: 18.5%;
    }

    .td-guest-home-v2__network-deal--right {
        right: 18.5%;
    }

    .td-guest-home-v2__network-deal--bottom {
        display: none;
    }

    .td-guest-home-v2__search {
        top: 616px;
        display: flex;
        flex-wrap: wrap;
        gap: 0;
        height: auto;
        min-height: 126px;
        padding: 12px;
    }

    .td-guest-home-v2__search > i {
        position: absolute;
        top: 29px;
        left: 18px;
    }

    .td-guest-home-v2__search input {
        flex: 0 0 100%;
        height: 45px;
        padding-left: 39px;
    }

    .td-guest-home-v2__search button,
    .td-guest-home-v2__search > a {
        flex: 1 1 0;
        width: auto;
        min-width: 0;
        margin-top: 7px;
    }

    .td-guest-home-v2__search button {
        margin-right: 4px;
    }

    .td-guest-home-v2__search > a {
        margin-right: 0;
        margin-left: 4px;
    }

    .td-guest-home-v2__examples {
        top: 759px;
        gap: 8px;
    }

    .td-guest-home-v2__examples > strong {
        display: none;
    }

    .td-guest-home-v2__examples > a {
        min-width: auto;
        height: 40px;
        padding: 0 13px;
    }

    .td-guest-home-v2__benefits {
        grid-template-columns: 1fr;
    }

    .td-guest-home-v2__benefit-copy {
        width: 58%;
        padding-left: 22px;
    }

    .td-guest-home-v2__handshake-art {
        right: -2px;
        width: 220px;
    }

    .td-guest-home-v2__handshake-art img {
        right: -8px;
        width: 244px;
    }

    .td-guest-home-v2__stats {
        padding: 17px 16px;
    }

    .td-guest-home-v2__stats > p {
        margin-bottom: 16px;
        line-height: 1.5;
    }

    .td-guest-home-v2__stats-grid {
        grid-template-columns: repeat(2, 1fr);
        height: auto;
        row-gap: 22px;
    }

    .td-guest-home-v2__stats-grid article {
        justify-content: flex-start;
        padding-left: 14px;
        border-left: 0;
    }

    .td-guest-home-v2__stats-grid article > i {
        width: 35px;
        font-size: 30px;
    }

}

@media (prefers-reduced-motion: reduce) {
    .td-guest-home-v2 *,
    .td-guest-home-v2 *::before,
    .td-guest-home-v2 *::after {
        animation: none !important;
        scroll-behavior: auto !important;
        transition: none !important;
        will-change: auto !important;
    }
}

/* Live public catalogue -------------------------------------------------- */
.td-guest-home-v2__published {
    padding: clamp(26px, 4vw, 48px);
    border: 1px solid #dce7d7;
    border-radius: 24px;
    background:
        radial-gradient(circle at 100% 0, rgba(222, 237, 217, .72), transparent 31%),
        #f8fbf6;
}

.td-guest-home-v2__published-heading {
    display: block;
}

.td-guest-home-v2__published-heading > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--td-v2-green);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.td-guest-home-v2__published-all,
.td-guest-home-v2__published-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    font-weight: 800;
    white-space: nowrap;
}

.td-guest-home-v2__published-all {
    flex: 0 0 auto;
    padding: 13px 16px;
    border-radius: 10px;
    color: #fff !important;
    background: var(--td-v2-green);
    box-shadow: 0 8px 18px rgba(45, 114, 43, .16);
    font-size: 13px;
}

.td-guest-home-v2__published-carousel {
    margin-top: 18px;
}

.td-guest-home-v2__published-footer {
    display: flex;
    justify-content: flex-end;
    margin-top: 20px;
}

.td-guest-home-v2__published-viewport {
    overflow-x: auto;
    overscroll-behavior-x: contain;
    padding: 4px;
    scrollbar-width: none;
    touch-action: pan-x;
}

.td-guest-home-v2__published-viewport:focus-visible {
    outline: 3px solid rgba(45, 114, 43, .46);
    outline-offset: 4px;
}

.td-guest-home-v2__published-viewport::-webkit-scrollbar {
    display: none;
}

.td-guest-home-v2__published-grid {
    display: flex;
    gap: 18px;
    width: 100%;
    min-width: 100%;
}

.td-guest-home-v2__published-card {
    display: grid;
    flex: 0 0 calc((100% - 36px) / 3);
    grid-template-rows: 178px minmax(0, 1fr);
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(12, 50, 77, .11);
    border-radius: 17px;
    background: #fff;
    box-shadow: 0 10px 24px rgba(8, 35, 59, .055);
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.td-guest-home-v2__published-card:hover {
    border-color: rgba(45, 114, 43, .36);
    box-shadow: 0 15px 30px rgba(8, 35, 59, .1);
    transform: translateY(-3px);
}

.td-guest-home-v2__published-image {
    position: relative;
    display: block;
    overflow: hidden;
    background: #e8efe6;
}

.td-guest-home-v2__published-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .35s ease;
}

.td-guest-home-v2__published-card:hover .td-guest-home-v2__published-image img {
    transform: scale(1.045);
}

.td-guest-home-v2__published-image > span {
    position: absolute;
    top: 12px;
    left: 12px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 9px;
    border-radius: 999px;
    color: #286d2b;
    background: rgba(255, 255, 255, .94);
    box-shadow: 0 4px 12px rgba(8, 35, 59, .1);
    font-size: 10px;
    font-weight: 800;
}

.td-guest-home-v2__published-card-copy {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 20px;
}

.td-guest-home-v2__published-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.td-guest-home-v2__published-card-meta span {
    padding: 5px 8px;
    border-radius: 999px;
    color: #546b80;
    background: #f1f5f2;
    font-size: 10px;
    font-weight: 750;
}

.td-guest-home-v2__published-card h3 {
    margin: 15px 0 0;
    color: var(--td-v2-ink);
    font-size: 19px;
    font-weight: 800;
    letter-spacing: -.7px;
    line-height: 1.25;
}

.td-guest-home-v2__published-card h3 a:hover,
.td-guest-home-v2__published-link:hover {
    color: var(--td-v2-green);
}

.td-guest-home-v2__published-location {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
    margin: 10px 0 0;
    overflow: hidden;
    color: #627990;
    font-size: 13px;
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.td-guest-home-v2__published-location i { color: var(--td-v2-green); }

.td-guest-home-v2__published-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin-top: 19px;
    padding-top: 15px;
    border-top: 1px solid #edf0ec;
}

.td-guest-home-v2__published-facts span {
    display: grid;
    gap: 3px;
}

.td-guest-home-v2__published-facts small {
    color: #758598;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.td-guest-home-v2__published-facts strong {
    color: #263f59;
    font-size: 13px;
    font-weight: 800;
}

.td-guest-home-v2__published-link {
    margin-top: auto;
    padding-top: 21px;
    color: var(--td-v2-ink);
    font-size: 13px;
}

.td-guest-home-v2__published-empty {
    display: flex;
    align-items: center;
    gap: 17px;
    margin-top: 32px;
    padding: 24px;
    border: 1px dashed #cbdac6;
    border-radius: 15px;
    color: #526a80;
    background: rgba(255, 255, 255, .65);
}

.td-guest-home-v2__published-empty > i {
    display: grid;
    flex: 0 0 auto;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 13px;
    color: var(--td-v2-green);
    background: #eaf3e7;
    font-size: 19px;
}

.td-guest-home-v2__published-empty strong {
    display: block;
    color: var(--td-v2-ink);
    font-size: 15px;
}

.td-guest-home-v2__published-empty p {
    margin: 4px 0 0;
    font-size: 13px;
}

.td-guest-home-v2__published-empty a {
    margin-left: auto;
    color: var(--td-v2-green);
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
}

@media (max-width: 1120px) {
    .td-guest-home-v2__published-heading {
        align-items: start;
        flex-direction: column;
    }

}

@media (max-width: 680px) {
    .td-guest-home-v2__published {
        padding: 24px 18px;
        border-radius: 18px;
    }

    .td-guest-home-v2__published-heading h2 {
        font-size: 29px;
        letter-spacing: -1.3px;
    }

    .td-guest-home-v2__published-heading p {
        font-size: 14px;
    }

    .td-guest-home-v2__published-all {
        width: 100%;
        justify-content: center;
    }

    .td-guest-home-v2__published-carousel {
        margin-top: 26px;
    }

    .td-guest-home-v2__published-viewport {
        margin-right: -4px;
        padding-right: 4px;
    }

    .td-guest-home-v2__published-grid {
        gap: 14px;
    }

    .td-guest-home-v2__published-card {
        flex-basis: 100%;
        grid-template-rows: 188px minmax(0, 1fr);
    }

    .td-guest-home-v2__published-empty {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .td-guest-home-v2__published-empty a {
        width: 100%;
        margin-left: 0;
    }
}

/* The centre of the network expresses the product journey, while the logo
   remains available in the site identity above the scene. */
.td-guest-home-v2__network-brand {
    display: flex;
    flex-direction: column;
    top: 49.05%;
    left: 52.65%;
    gap: 7px;
    width: 230px;
    height: 230px;
    padding: 30px 18px;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.td-guest-home-v2__network-brand > span {
    position: relative;
    z-index: 1;
    color: var(--td-v2-ink);
    font-size: 22px;
    font-weight: 850;
    letter-spacing: -.6px;
    line-height: 1.08;
}

.td-guest-home-v2__network-brand > span:first-child { color: var(--td-v2-green); }
.td-guest-home-v2__network-brand > span:nth-child(2) { color: #b97708; }

@media (max-width: 680px) {
    .td-guest-home-v2__network-brand {
        gap: 4px;
        width: 170px;
        height: 170px;
        padding: 21px 11px;
    }

    .td-guest-home-v2__network-brand > span {
        font-size: 26px;
        letter-spacing: -.4px;
    }
}

/* The original V2 was a single-screen art direction. These sections turn it
   into a complete landing page while keeping the same quiet, editorial tone. */
.td-guest-home-v2 {
    overflow: visible;
}

body.td-page--guest-deals-landing-v2 {
    overflow-x: hidden;
    overflow-y: auto;
}

.td-guest-home-v2__extended-content {
    position: relative;
    z-index: 6;
    padding: 88px 0 104px;
}

.td-guest-home-v2__section {
    width: calc(100% - 162px);
    max-width: 1374px;
    margin: 0 auto 112px;
    scroll-margin-top: 32px;
}

.td-guest-home-v2__section-heading {
    max-width: 700px;
}

.td-guest-home-v2__section-heading > span,
.td-guest-home-v2__contact-kicker {
    display: block;
    margin-bottom: 12px;
    color: var(--td-v2-green);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.td-guest-home-v2__section-heading h2,
.td-guest-home-v2__contact h2 {
    max-width: 740px;
    margin: 0;
    color: var(--td-v2-ink);
    font-size: clamp(31px, 3vw, 48px);
    font-weight: 800;
    line-height: 1.08;
    letter-spacing: -2px;
}

.td-guest-home-v2__section-heading p,
.td-guest-home-v2__contact-copy > p {
    max-width: 650px;
    margin: 18px 0 0;
    color: #50677e;
    font-size: 16px;
    font-weight: 500;
    line-height: 1.7;
}

.td-guest-home-v2__steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin: 42px 0 0;
    padding: 0;
    list-style: none;
}

.td-guest-home-v2__steps li {
    position: relative;
    min-height: 260px;
    padding: 28px;
    overflow: hidden;
    border: 1px solid var(--td-v2-line);
    border-radius: 16px;
    background: rgba(255, 255, 255, .66);
}

.td-guest-home-v2__step-number {
    position: absolute;
    top: 22px;
    right: 24px;
    color: #d9e5d4;
    font-size: 42px;
    font-weight: 800;
    letter-spacing: -2px;
    line-height: 1;
}

.td-guest-home-v2__step-icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 13px;
    color: #fff;
    background: var(--td-v2-green);
    font-size: 19px;
}

.td-guest-home-v2__steps li:nth-child(2) .td-guest-home-v2__step-icon {
    color: var(--td-v2-ink);
    background: #eaf0e6;
}

.td-guest-home-v2__steps li:nth-child(3) .td-guest-home-v2__step-icon {
    background: var(--td-v2-gold);
}

.td-guest-home-v2__steps h3 {
    margin: 29px 0 0;
    color: var(--td-v2-ink);
    font-size: 21px;
    font-weight: 800;
    letter-spacing: -.7px;
}

.td-guest-home-v2__steps p {
    max-width: 310px;
    margin: 10px 0 0;
    color: #50677e;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.65;
}

.td-guest-home-v2__professionals {
    display: grid;
    grid-template-columns: minmax(300px, .82fr) minmax(0, 1.18fr);
    gap: 72px;
    align-items: end;
    padding: clamp(32px, 5vw, 68px);
    border-radius: 22px;
    color: #fff;
    background: linear-gradient(128deg, #082b4d 0%, #123b5c 47%, #1d6a36 145%);
}

.td-guest-home-v2__professionals .td-guest-home-v2__section-heading > span {
    color: #d2bb79;
}

.td-guest-home-v2__professionals .td-guest-home-v2__section-heading h2,
.td-guest-home-v2__professionals .td-guest-home-v2__section-heading p {
    color: #fff;
}

.td-guest-home-v2__professionals .td-guest-home-v2__section-heading p {
    color: #d5e2ea;
}

.td-guest-home-v2__primary-link {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    margin-top: 30px;
    padding: 15px 18px;
    border-radius: 10px;
    color: var(--td-v2-ink) !important;
    background: #fff;
    font-size: 14px;
    font-weight: 800;
}

.td-guest-home-v2__primary-link i {
    color: var(--td-v2-green);
}

.td-guest-home-v2__professional-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}

.td-guest-home-v2__professional-grid article {
    min-height: 218px;
    padding: 22px;
    border: 1px solid rgba(255, 255, 255, .17);
    border-radius: 14px;
    background: rgba(255, 255, 255, .08);
}

.td-guest-home-v2__professional-grid i {
    color: #d9bd6d;
    font-size: 24px;
}

.td-guest-home-v2__professional-grid h3 {
    margin: 32px 0 0;
    color: #fff;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: -.3px;
    line-height: 1.3;
}

.td-guest-home-v2__professional-grid p {
    margin: 9px 0 0;
    color: #d4e1e8;
    font-size: 12px;
    font-weight: 500;
    line-height: 1.55;
}

.td-guest-home-v2__about {
    display: grid;
    grid-template-columns: minmax(320px, .78fr) minmax(0, 1.22fr);
    gap: clamp(42px, 7vw, 118px);
    align-items: center;
}

.td-guest-home-v2__about-mark {
    position: relative;
    display: flex;
    min-height: 408px;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    padding: 30px;
    overflow: hidden;
    border: 1px solid #d4e3cf;
    border-radius: 24px;
    background:
        radial-gradient(circle at 16% 18%, rgba(255, 255, 255, .92) 0 7%, transparent 7.2%),
        linear-gradient(142deg, #f6faf3 0%, #e9f2e6 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .9), 0 16px 40px rgba(16, 49, 37, .06);
}

.td-guest-home-v2__about-mark::before,
.td-guest-home-v2__about-mark::after {
    position: absolute;
    width: 350px;
    height: 350px;
    border: 1px solid rgba(45, 114, 43, .17);
    border-radius: 50%;
    content: "";
}

.td-guest-home-v2__about-mark::before { transform: translate(-46%, -37%); }
.td-guest-home-v2__about-mark::after { transform: translate(46%, 35%); }

.td-guest-home-v2__about-mark-kicker,
.td-guest-home-v2__about-mark-brand,
.td-guest-home-v2__about-mark > p,
.td-guest-home-v2__about-mark-points,
.td-guest-home-v2__about-mark-seal {
    position: relative;
    z-index: 1;
}

.td-guest-home-v2__about-mark-kicker {
    position: absolute;
    top: 24px;
    left: 25px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: var(--td-v2-green);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.td-guest-home-v2__about-mark-kicker i {
    font-size: 12px;
}

.td-guest-home-v2__about-mark-seal {
    position: absolute;
    top: 50%;
    left: 50%;
    display: grid;
    width: 112px;
    height: 112px;
    place-items: center;
    border: 1px solid rgba(45, 114, 43, .13);
    border-radius: 50%;
    color: var(--td-v2-green);
    background: rgba(255, 255, 255, .78);
    box-shadow: 0 13px 27px rgba(16, 49, 37, .10), inset 0 0 0 8px rgba(237, 246, 233, .9);
    transform: translate(-50%, -58%);
}

.td-guest-home-v2__about-mark-seal i {
    font-size: 47px;
}

.td-guest-home-v2__about-mark-brand {
    color: var(--td-v2-ink);
    font-size: 25px;
    font-weight: 800;
    letter-spacing: -1.1px;
    line-height: 1;
}

.td-guest-home-v2__about-mark-brand span {
    color: #6a6258;
}

.td-guest-home-v2__about-mark > p {
    max-width: 245px;
    margin: 10px 0 0;
    color: #536b60;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.55;
}

.td-guest-home-v2__about-mark-points {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 20px;
}

.td-guest-home-v2__about-mark-points span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 9px;
    border: 1px solid rgba(45, 114, 43, .13);
    border-radius: 99px;
    color: #45604d;
    background: rgba(255, 255, 255, .64);
    font-size: 10px;
    font-weight: 800;
}

.td-guest-home-v2__about-mark-points i {
    color: var(--td-v2-green);
}

.td-guest-home-v2__values {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 32px 0 0;
    padding: 0;
    list-style: none;
}

.td-guest-home-v2__values li {
    display: grid;
    min-height: 132px;
    align-content: start;
    gap: 12px;
    padding: 17px 16px;
    border: 1px solid #e1e9e2;
    border-radius: 14px;
    color: #51677c;
    background: linear-gradient(148deg, #fff 0%, #fafcf9 100%);
    box-shadow: 0 8px 20px rgba(17, 49, 73, .035);
    font-size: 12px;
    font-weight: 500;
    line-height: 1.52;
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.td-guest-home-v2__values i {
    display: grid;
    width: 31px;
    height: 31px;
    place-items: center;
    border-radius: 9px;
    color: var(--td-v2-green);
    background: #edf5e9;
    font-size: 14px;
}

.td-guest-home-v2__values strong {
    display: block;
    margin-bottom: 3px;
    color: var(--td-v2-ink);
    font-weight: 800;
}

.td-guest-home-v2__values li:hover {
    border-color: rgba(45, 114, 43, .31);
    box-shadow: 0 12px 24px rgba(17, 49, 73, .07);
    transform: translateY(-3px);
}

.td-guest-home-v2__contact {
    display: grid;
    grid-template-columns: minmax(280px, .86fr) minmax(0, 1.14fr);
    gap: clamp(34px, 6vw, 100px);
    align-items: start;
    margin-bottom: 0;
    padding: clamp(32px, 5vw, 68px);
    border: 1px solid #dfe6da;
    border-radius: 22px;
    background: #f2f6ee;
}

.td-guest-home-v2__contact-copy > p { color: #53677b; }

.td-guest-home-v2__contact-copy ul {
    display: grid;
    gap: 11px;
    margin: 28px 0 0;
    padding: 0;
    list-style: none;
    color: #314d68;
    font-size: 13px;
    font-weight: 700;
}

.td-guest-home-v2__contact-copy li {
    display: flex;
    align-items: center;
    gap: 10px;
}

.td-guest-home-v2__contact-copy li i { color: var(--td-v2-green); }

.td-guest-home-v2__contact-form {
    padding: 24px;
    border: 1px solid #e0e6dd;
    border-radius: 16px;
    background: #fff;
}

.td-guest-home-v2__contact-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.td-guest-home-v2__contact-fields label {
    display: grid;
    gap: 7px;
    color: #38536c;
    font-size: 12px;
    font-weight: 800;
}

.td-guest-home-v2__contact-fields b { color: #bd5c43; }

.td-guest-home-v2__contact-field--wide { grid-column: 1 / -1; }

.td-guest-home-v2__contact-fields input,
.td-guest-home-v2__contact-fields textarea {
    width: 100%;
    border: 1px solid #dce3df;
    border-radius: 9px;
    outline: 0;
    color: var(--td-v2-ink);
    background: #fff;
    font: inherit;
    font-size: 14px;
    font-weight: 500;
}

.td-guest-home-v2__contact-fields input { height: 44px; padding: 0 12px; }
.td-guest-home-v2__contact-fields textarea { padding: 11px 12px; line-height: 1.5; resize: vertical; }

.td-guest-home-v2__contact-fields input:focus,
.td-guest-home-v2__contact-fields textarea:focus {
    border-color: var(--td-v2-green);
    box-shadow: 0 0 0 3px rgba(45, 114, 43, .12);
}

.td-guest-home-v2__contact-fields [aria-invalid="true"] { border-color: #c96955; }
.td-guest-home-v2__contact-fields .is-error,
.td-guest-home-v2__contact-consent-error { color: #b64535; font-size: 11px; font-weight: 650; }

.td-guest-home-v2__contact-consent {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin-top: 18px;
    color: #586c7c;
    font-size: 11px;
    font-weight: 550;
    line-height: 1.5;
}

.td-guest-home-v2__contact-consent input { margin-top: 3px; accent-color: var(--td-v2-green); }

.td-guest-home-v2__contact-form > button {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-top: 22px;
    padding: 13px 17px;
    border: 0;
    border-radius: 9px;
    color: #fff;
    background: var(--td-v2-green);
    font: inherit;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
}

.td-guest-home-v2__contact-form > button:hover,
.td-guest-home-v2__contact-form > button:focus-visible,
.td-guest-home-v2__primary-link:hover,
.td-guest-home-v2__primary-link:focus-visible { transform: translateY(-1px); }

.td-guest-home-v2__honeypot {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
}

@media (min-width: 1121px) {
    html:has(body.td-page--guest-deals-landing-v2),
    body.td-page--guest-deals-landing-v2,
    body.td-page--guest-deals-landing-v2 .td-public-deals-layout {
        height: auto;
        min-height: 100%;
        overflow-x: hidden;
        overflow-y: auto;
    }

    .td-guest-home-v2 {
        height: auto;
        min-height: 1024px;
        overflow: visible;
    }
}

@media (max-width: 1120px) {
    .td-guest-home-v2__extended-content { padding: 68px 0 72px; }
    .td-guest-home-v2__section { width: calc(100% - 48px); margin-bottom: 78px; }
    .td-guest-home-v2__professionals { grid-template-columns: 1fr; gap: 42px; }
    .td-guest-home-v2__about { grid-template-columns: minmax(220px, .72fr) minmax(0, 1.28fr); }
    .td-guest-home-v2__contact { grid-template-columns: 1fr; gap: 38px; }
}

@media (max-width: 860px) {
    .td-guest-home-v2__about { grid-template-columns: 1fr; gap: 38px; }
    .td-guest-home-v2__about-mark { min-height: 340px; }
}

@media (max-width: 680px) {
    .td-guest-home-v2__extended-content { padding-top: 56px; }
    .td-guest-home-v2__section { width: calc(100% - 40px); margin-bottom: 58px; scroll-margin-top: 16px; }
    .td-guest-home-v2__section-heading h2,
    .td-guest-home-v2__contact h2 { font-size: 31px; letter-spacing: -1.3px; }
    .td-guest-home-v2__section-heading p,
    .td-guest-home-v2__contact-copy > p { font-size: 14px; }
    .td-guest-home-v2__steps,
    .td-guest-home-v2__professional-grid { grid-template-columns: 1fr; }
    .td-guest-home-v2__steps { margin-top: 29px; }
    .td-guest-home-v2__steps li { min-height: 220px; }
    .td-guest-home-v2__professionals,
    .td-guest-home-v2__contact { padding: 27px 22px; border-radius: 16px; }
    .td-guest-home-v2__professional-grid article { min-height: 174px; }
    .td-guest-home-v2__professional-grid h3 { margin-top: 21px; }
    .td-guest-home-v2__about { grid-template-columns: 1fr; gap: 30px; }
    .td-guest-home-v2__about-mark { min-height: 310px; padding: 24px; }
    .td-guest-home-v2__about-mark-kicker { top: 21px; left: 22px; }
    .td-guest-home-v2__about-mark-seal { width: 96px; height: 96px; }
    .td-guest-home-v2__about-mark-seal i { font-size: 40px; }
    .td-guest-home-v2__about-mark-brand { font-size: 23px; }
    .td-guest-home-v2__values { grid-template-columns: 1fr; }
    .td-guest-home-v2__values li { min-height: 0; grid-template-columns: 31px minmax(0, 1fr); gap: 11px; }
    .td-guest-home-v2__contact-form { padding: 18px; }
    .td-guest-home-v2__contact-fields { grid-template-columns: 1fr; }
}

.td-guest-home-v2__footer {
    position: relative;
    z-index: 6;
    margin-top: 0;
    overflow: hidden;
    color: #d7e2e9;
    background:
        radial-gradient(circle at 7% 0%, rgba(56, 130, 69, .30), transparent 25%),
        radial-gradient(circle at 94% 14%, rgba(209, 154, 24, .15), transparent 21%),
        linear-gradient(122deg, #062742 0%, #0a3458 55%, #092e4d 100%);
}

.td-guest-home-v2__footer::before,
.td-guest-home-v2__footer::after {
    position: absolute;
    z-index: -1;
    width: 390px;
    height: 390px;
    border: 1px solid rgba(209, 187, 121, .17);
    border-radius: 50%;
    content: "";
}

.td-guest-home-v2__footer::before {
    top: -285px;
    right: 8%;
    box-shadow: 0 0 0 55px rgba(255, 255, 255, .025), 0 0 0 115px rgba(255, 255, 255, .018);
}

.td-guest-home-v2__footer::after {
    bottom: -316px;
    left: -85px;
    border-color: rgba(115, 181, 109, .19);
}

.td-guest-home-v2__footer-inner {
    width: calc(100% - 162px);
    max-width: 1374px;
    margin: 0 auto;
}

.td-guest-home-v2__footer-invitation {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    padding: 34px 0 31px;
    border-bottom: 1px solid rgba(225, 237, 242, .17);
}

.td-guest-home-v2__footer-invitation > div > span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #dbbf75;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.td-guest-home-v2__footer-invitation > div > span i {
    color: #e4aa28;
    font-size: 13px;
}

.td-guest-home-v2__footer-invitation h2 {
    max-width: 650px;
    margin: 9px 0 0;
    color: #fff;
    font-size: clamp(22px, 2.1vw, 31px);
    font-weight: 800;
    letter-spacing: -1.15px;
    line-height: 1.14;
}

.td-guest-home-v2__footer-cta {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 12px;
    padding: 15px 18px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 12px;
    color: #fff;
    background: linear-gradient(135deg, #33843d, #216e31);
    box-shadow: 0 12px 25px rgba(0, 0, 0, .18);
    font-size: 13px;
    font-weight: 800;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.td-guest-home-v2__footer-cta:hover,
.td-guest-home-v2__footer-cta:focus-visible {
    color: #fff;
    background: linear-gradient(135deg, #3d9848, #277b37);
    box-shadow: 0 16px 30px rgba(0, 0, 0, .25);
    transform: translateY(-2px);
}

.td-guest-home-v2__footer-main {
    display: grid;
    grid-template-columns: minmax(260px, 1.45fr) repeat(2, minmax(160px, .55fr));
    gap: clamp(34px, 7vw, 120px);
    padding: 43px 0 46px;
}

.td-guest-home-v2__footer-brand > a {
    display: inline-block;
}

.td-guest-home-v2__footer-brand img {
    display: block;
    width: 166px;
    height: auto;
    filter: brightness(0) invert(1) drop-shadow(0 5px 11px rgba(0, 0, 0, .18));
}

.td-guest-home-v2__footer-brand p {
    max-width: 350px;
    margin: 17px 0 0;
    color: #c3d3dc;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.65;
}

.td-guest-home-v2__footer-signals {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

.td-guest-home-v2__footer-signals span {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 9px;
    border: 1px solid rgba(204, 222, 230, .14);
    border-radius: 99px;
    color: #d8e4e9;
    background: rgba(255, 255, 255, .055);
    font-size: 10px;
    font-weight: 700;
}

.td-guest-home-v2__footer-signals i { color: #8cca80; }

.td-guest-home-v2__footer-links {
    display: grid;
    align-content: start;
    gap: 13px;
}

.td-guest-home-v2__footer-links h2 {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 3px 0 8px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.td-guest-home-v2__footer-links h2::before {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #d9a01c;
    box-shadow: 0 0 0 4px rgba(217, 160, 28, .14);
    content: "";
}

.td-guest-home-v2__footer-links a,
.td-guest-home-v2__footer-bottom a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #bfd0da;
    font-size: 13px;
    font-weight: 600;
    transition: color .2s ease, transform .2s ease;
}

.td-guest-home-v2__footer-links a::before {
    color: #77ad71;
    content: "→";
    opacity: .8;
    transition: transform .2s ease;
}

.td-guest-home-v2__footer-links a:hover,
.td-guest-home-v2__footer-links a:focus-visible,
.td-guest-home-v2__footer-bottom a:hover,
.td-guest-home-v2__footer-bottom a:focus-visible {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 3px;
    transform: translateX(3px);
}

.td-guest-home-v2__footer-links a:hover::before,
.td-guest-home-v2__footer-links a:focus-visible::before {
    transform: translateX(2px);
}

.td-guest-home-v2__footer-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 70px;
    border-top: 1px solid rgba(225, 237, 242, .16);
    color: #9eb8c8;
    font-size: 11px;
    font-weight: 600;
}

.td-guest-home-v2__footer-bottom > div,
.td-guest-home-v2__footer-bottom nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 16px 22px;
}

.td-guest-home-v2__footer-bottom a {
    color: #b8cbd6;
    font-size: 11px;
}

.td-guest-home-v2__footer-signature {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #d4e3ce;
    font-size: 11px;
    font-weight: 700;
}

.td-guest-home-v2__footer-signature i { color: #d9a01c; }

@media (max-width: 1120px) {
    .td-guest-home-v2__footer-inner { width: calc(100% - 48px); }
}

@media (max-width: 680px) {
    .td-guest-home-v2__footer-inner { width: calc(100% - 40px); }

    .td-guest-home-v2__footer-invitation {
        align-items: flex-start;
        flex-direction: column;
        gap: 20px;
        padding: 31px 0 28px;
    }

    .td-guest-home-v2__footer-invitation h2 { font-size: 25px; letter-spacing: -1px; }

    .td-guest-home-v2__footer-main {
        grid-template-columns: 1fr 1fr;
        gap: 34px 22px;
        padding: 42px 0 34px;
    }

    .td-guest-home-v2__footer-brand {
        grid-column: 1 / -1;
    }

    .td-guest-home-v2__footer-bottom {
        align-items: flex-start;
        flex-direction: column;
        padding: 18px 0 24px;
    }

    .td-guest-home-v2__footer-bottom > div { justify-content: flex-start; }

    .td-guest-home-v2__footer-bottom nav {
        justify-content: flex-start;
        gap: 11px 18px;
    }
}

/* Shared page rhythm: the first visual scene, editorial sections and footer
   now use the same width, border and interaction language. */
html:has(body.td-page--guest-deals-landing-v2) {
    scroll-behavior: smooth;
}

.td-guest-home-v2__benefit,
.td-guest-home-v2__stats,
.td-guest-home-v2__steps li,
.td-guest-home-v2__professional-grid article,
.td-guest-home-v2__contact-form {
    transition: border-color .2s ease, background-color .2s ease, transform .2s ease;
}

.td-guest-home-v2__benefit,
.td-guest-home-v2__stats {
    border-color: rgba(12, 50, 77, .10);
    border-radius: 16px;
}

.td-guest-home-v2__benefit:hover {
    border-color: rgba(45, 114, 43, .28);
    background: rgba(255, 255, 255, .96);
}

.td-guest-home-v2__stats {
    position: relative;
    z-index: 7;
    margin-top: 24px;
    background: rgba(255, 255, 255, .7);
}

.td-guest-home-v2__extended-content {
    margin-top: 54px;
    padding-top: 96px;
    background:
        linear-gradient(180deg, rgba(237, 244, 234, .78) 0, rgba(252, 251, 248, 0) 21rem),
        var(--td-v2-paper);
}

.td-guest-home-v2__extended-content::before {
    display: block;
    width: min(1374px, calc(100% - 162px));
    height: 1px;
    margin: 0 auto 0;
    background: linear-gradient(90deg, transparent, rgba(45, 114, 43, .25), transparent);
    content: "";
}

.td-guest-home-v2__section {
    scroll-margin-top: 136px;
}

.td-guest-home-v2__section-heading > span,
.td-guest-home-v2__contact-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.td-guest-home-v2__section-heading > span::before,
.td-guest-home-v2__contact-kicker::before {
    width: 22px;
    height: 2px;
    border-radius: 99px;
    background: currentColor;
    content: "";
}

.td-guest-home-v2__steps li:hover,
.td-guest-home-v2__professional-grid article:hover {
    transform: translateY(-3px);
}

.td-guest-home-v2__steps li:hover {
    border-color: rgba(45, 114, 43, .3);
    background: #fff;
}

.td-guest-home-v2__professional-grid article:hover {
    border-color: rgba(222, 192, 111, .52);
    background: rgba(255, 255, 255, .13);
}

.td-guest-home-v2__about-mark,
.td-guest-home-v2__contact {
    border-color: rgba(45, 114, 43, .17);
}

.td-guest-home-v2__contact-form:focus-within {
    border-color: rgba(45, 114, 43, .42);
}

@media (min-width: 1121px) {
    .td-guest-home-v2__header {
        position: sticky;
        top: 0;
        margin-bottom: 12px;
        background: linear-gradient(180deg, rgba(252, 251, 248, .97) 72%, rgba(252, 251, 248, 0));
        backdrop-filter: blur(10px);
    }
}

@media (max-width: 1120px) {
    .td-guest-home-v2__extended-content {
        margin-top: 38px;
        padding-top: 70px;
    }

    .td-guest-home-v2__extended-content::before {
        width: calc(100% - 48px);
    }
}

@media (max-width: 680px) {
    .td-guest-home-v2__stats {
        margin-top: 20px;
    }

    .td-guest-home-v2__extended-content {
        margin-top: 30px;
        padding-top: 56px;
    }

    .td-guest-home-v2__extended-content::before {
        width: calc(100% - 40px);
    }

    .td-guest-home-v2__section {
        scroll-margin-top: 24px;
    }
}

@media (prefers-reduced-motion: reduce) {
    html:has(body.td-page--guest-deals-landing-v2) {
        scroll-behavior: auto;
    }
}

/* Keyboard navigation is intentionally as clear as pointer navigation: every
   actionable surface receives one consistent, brand-coloured focus treatment. */
.td-guest-home-v2__skip-link {
    position: fixed;
    z-index: 100;
    top: 14px;
    left: 50%;
    padding: 11px 16px;
    border-radius: 8px;
    color: #fff !important;
    background: var(--td-v2-green-dark);
    box-shadow: 0 10px 24px rgba(6, 38, 74, .22);
    font-size: 13px;
    font-weight: 800;
    transform: translate(-50%, -160%);
    transition: transform .2s ease;
}

.td-guest-home-v2__skip-link:focus {
    transform: translate(-50%, 0);
    outline: 3px solid rgba(211, 138, 5, .75);
    outline-offset: 3px;
}

.td-guest-home-v2 :is(a, button, input, textarea, summary):focus-visible {
    outline: 3px solid rgba(45, 114, 43, .55);
    outline-offset: 3px;
}

.td-guest-home-v2__contact-form > button,
.td-guest-home-v2__primary-link,
.td-guest-home-v2__auth-button {
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.td-guest-home-v2__contact-form > button:hover {
    background: var(--td-v2-green-dark);
    box-shadow: 0 9px 18px rgba(45, 114, 43, .2);
}

.td-guest-home-v2__footer a:focus-visible {
    border-radius: 3px;
    outline-color: rgba(255, 255, 255, .8);
}

/*
 * Hero V2 — a deliberate editorial grid.
 *
 * The previous implementation positioned the copy, the visual network and
 * the search independently.  At larger sizes this made the identity block
 * feel oversized and left the network visually disconnected.  The scene now
 * has one shared grid: identity and network face each other, then discovery
 * controls follow in the same reading flow.
 */
.td-guest-home-v2__hero {
    display: grid;
    grid-template-columns: minmax(390px, .68fr) minmax(620px, 1.32fr);
    grid-template-areas:
        "copy network"
        "search search"
        "examples examples";
    align-items: center;
    column-gap: clamp(28px, 3vw, 48px);
    row-gap: 12px;
    width: min(1540px, calc(100% - 48px));
    max-width: none;
    height: auto;
    min-height: 590px;
    padding: 20px 0 26px;
}

.td-guest-home-v2__hero-copy {
    grid-area: copy;
    width: auto;
    padding: 20px 0;
    align-self: center;
}

.td-guest-home-v2__eyebrow {
    min-height: 30px;
    height: auto;
    padding: 6px 12px;
    color: #5f6d62;
    background: rgba(255, 255, 255, .72);
    font-size: 12px;
    font-weight: 700;
}

.td-guest-home-v2__identity-lockup {
    gap: 13px;
    margin-top: 16px;
}

.td-guest-home-v2__identity-lockup > img {
    width: 60px;
    height: 60px;
    box-shadow: 0 6px 16px rgba(20, 47, 37, .08);
}

.td-guest-home-v2__hero-copy--identity h1 {
    font-size: clamp(38px, 3.15vw, 48px);
    line-height: .91;
    letter-spacing: -2.7px;
}

.td-guest-home-v2__audiences {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px 24px;
    margin: 20px 0 0;
    padding: 0;
    border: 0;
    color: var(--td-v2-ink);
    font-size: 16px;
    font-weight: 750;
    letter-spacing: -.35px;
}

.td-guest-home-v2__audiences span {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    gap: 8px;
    color: var(--td-v2-ink) !important;
}

.td-guest-home-v2__audiences span::before {
    display: block;
    flex: 0 0 auto;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: var(--td-v2-green);
    content: "";
}

.td-guest-home-v2__audiences span:nth-child(2)::before { background: var(--td-v2-gold); }
.td-guest-home-v2__audiences span:nth-child(3)::before { background: #729a70; }
.td-guest-home-v2__audiences span:nth-child(4)::before { background: var(--td-v2-ink); }

.td-guest-home-v2__hero-actions {
    gap: 9px;
    width: min(100%, 455px);
    margin: 20px 0 0;
    padding: 14px 16px;
    border: 1px solid rgba(45, 114, 43, .17);
    border-radius: 15px;
    background: linear-gradient(135deg, rgba(244, 249, 242, .96), rgba(255, 255, 255, .84));
    color: var(--td-v2-ink);
    font-size: 15px;
    font-weight: 750;
    line-height: 1.35;
    letter-spacing: -.24px;
}

.td-guest-home-v2__hero-actions li { gap: 10px; }
.td-guest-home-v2__hero-action-dot { width: 8px; height: 8px; }

.td-guest-home-v2__network {
    position: relative;
    z-index: 1;
    grid-area: network;
    top: auto;
    left: auto;
    width: min(980px, 100%);
    height: auto;
    aspect-ratio: 1695 / 928;
    overflow: visible;
    justify-self: center;
    align-self: center;
    transform: none;
}

.td-guest-home-v2__network > picture { width: 100%; }
.td-guest-home-v2__network::after { display: none; }
.td-guest-home-v2__network-image { width: 100%; }

.td-guest-home-v2__network-brand {
    /* Keep the central promise legible at the scale of the full network. */
    width: 250px;
    height: 250px;
}

.td-guest-home-v2__network-brand img {
    width: 124px;
    height: 124px;
}

.td-guest-home-v2__search {
    position: static;
    z-index: auto;
    grid-area: search;
    width: min(920px, 100%);
    margin: 0;
    justify-self: center;
}

.td-guest-home-v2__examples {
    position: static;
    z-index: auto;
    grid-area: examples;
    justify-content: center;
    width: 100%;
    margin: 0;
}

@media (max-width: 1120px) {
    .td-guest-home-v2__hero {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas:
            "copy"
            "network"
            "search"
            "examples";
        gap: 20px;
        width: calc(100% - 48px);
        min-height: 0;
        padding: 12px 0 24px;
    }

    .td-guest-home-v2__hero-copy {
        width: min(620px, 100%);
        padding: 0;
        justify-self: start;
    }

    .td-guest-home-v2__network {
        position: relative;
        top: auto;
        left: auto;
        width: min(900px, 100%);
        max-width: none;
        height: auto;
        transform: none;
    }

    .td-guest-home-v2__search {
        position: static;
        width: min(730px, 100%);
        justify-self: start;
    }

    .td-guest-home-v2__examples {
        position: static;
        justify-content: flex-start;
        overflow-x: auto;
        padding-bottom: 8px;
    }
}

@media (max-width: 680px) {
    .td-guest-home-v2__hero {
        gap: 18px;
        width: calc(100% - 40px);
        padding-top: 8px;
    }

    .td-guest-home-v2__identity-lockup > img {
        width: 56px;
        height: 56px;
    }

    .td-guest-home-v2__hero-copy--identity h1 {
        font-size: clamp(35px, 10.7vw, 46px);
        letter-spacing: -2.35px;
    }

    .td-guest-home-v2__audiences {
        gap: 9px 12px;
        margin-top: 17px;
        font-size: 14px;
    }

    .td-guest-home-v2__hero-actions {
        margin-top: 17px;
        padding: 13px 14px;
        font-size: 14px;
    }

    .td-guest-home-v2__network {
        width: min(900px, 195vw);
        justify-self: center;
    }

    .td-guest-home-v2__network-brand {
        width: 170px;
        height: 170px;
    }

    .td-guest-home-v2__network-brand img {
        width: 94px;
        height: 94px;
    }

    .td-guest-home-v2__search,
    .td-guest-home-v2__examples {
        width: 100%;
        justify-self: stretch;
    }
}

/* With the identity panel removed, the network becomes the hero itself. */
.td-guest-home-v2__hero {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "network";
    min-height: 590px;
    padding-top: 8px;
}

.td-guest-home-v2__network {
    width: min(1040px, 100%);
}

@media (max-width: 1120px) {
    .td-guest-home-v2__hero {
        grid-template-areas: "network";
        min-height: 0;
    }
}

@media (max-width: 680px) {
    .td-guest-home-v2__hero {
        grid-template-areas: "network";
    }

    .td-guest-home-v2__network {
        width: min(900px, 195vw);
    }
}

/* Accueil public — révision éditoriale 2026-10.
   Les blocs ci-dessous correspondent aux indications validées dans le
   document d'accueil : parcours resserré, cartes data-driven et quatre
   bénéfices d'égale importance. */
.td-guest-home-v2__stats {
    margin-top: 28px;
}

.td-guest-home-v2__published-heading {
    justify-content: flex-end;
}

.td-guest-home-v2__published-carousel {
    margin-top: 24px;
}

.td-guest-home-v2__published-date {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 10px 0 0;
    color: #758598;
    font-size: 11px;
    font-weight: 700;
}

.td-guest-home-v2__published-date i {
    color: var(--td-v2-gold);
}

.td-guest-home-v2__published-facts {
    margin-top: 15px;
}

.td-guest-home-v2__how .td-guest-home-v2__section-heading {
    max-width: 1080px;
}

.td-guest-home-v2__steps li {
    display: flex;
    min-height: 212px;
    flex-direction: column;
}

.td-guest-home-v2__steps h3 {
    margin-top: 25px;
}

.td-guest-home-v2__step-action {
    display: block;
    max-width: 235px;
    margin-top: auto;
    padding-top: 26px;
    color: var(--td-v2-green);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .065em;
    line-height: 1.4;
    text-transform: uppercase;
}

.td-guest-home-v2__steps li:nth-child(2) .td-guest-home-v2__step-action {
    color: #a46600;
}

.td-guest-home-v2__steps li:nth-child(3) .td-guest-home-v2__step-action {
    color: var(--td-v2-ink);
}

.td-guest-home-v2__professionals {
    display: block;
    padding: clamp(26px, 3.25vw, 48px);
}

.td-guest-home-v2__professional-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(12px, 1.35vw, 20px);
}

.td-guest-home-v2__professional-grid article {
    display: flex;
    min-height: 0;
    aspect-ratio: 1;
    flex-direction: column;
    justify-content: space-between;
    padding: clamp(19px, 2vw, 30px);
}

.td-guest-home-v2__professional-grid i {
    display: grid;
    width: 45px;
    height: 45px;
    place-items: center;
    border: 1px solid rgba(217, 189, 109, .35);
    border-radius: 13px;
    background: rgba(217, 189, 109, .11);
    font-size: 18px;
}

.td-guest-home-v2__professional-grid p {
    margin: 30px 0 0;
    color: #f4f8fa;
    font-size: clamp(14px, 1.15vw, 17px);
    font-weight: 750;
    line-height: 1.38;
}

.td-guest-home-v2__contact-actions {
    display: grid;
    gap: 9px;
    margin-top: 27px;
}

.td-guest-home-v2__contact-actions a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: fit-content;
    color: var(--td-v2-green);
    font-size: 13px;
    font-weight: 800;
}

.td-guest-home-v2__contact-actions span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: fit-content;
    color: var(--td-v2-ink);
    font-size: 13px;
    font-weight: 800;
}

.td-guest-home-v2__contact-actions a::after {
    content: "→";
    transition: transform .2s ease;
}

.td-guest-home-v2__contact-actions a:hover::after,
.td-guest-home-v2__contact-actions a:focus-visible::after {
    transform: translateX(3px);
}

@media (max-width: 1120px) {
    .td-guest-home-v2__professional-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .td-guest-home-v2__stats {
        margin-top: 22px;
    }

    .td-guest-home-v2__professional-grid article {
        aspect-ratio: auto;
        min-height: 176px;
    }

    .td-guest-home-v2__professional-grid p {
        margin-top: 22px;
        font-size: 14px;
    }
}

/* Les cartes du parcours révèlent le manifeste de la plateforme sans
   alourdir leur face d'entrée. Le focus clavier offre la même interaction
   que le survol. */
.td-guest-home-v2__steps li {
    --td-v2-step-card-height: 188px;
    display: block;
    height: var(--td-v2-step-card-height);
    min-height: 0;
    padding: 0;
    overflow: hidden;
    cursor: pointer;
    perspective: 900px;
}

.td-guest-home-v2__step-front,
.td-guest-home-v2__step-back {
    position: absolute;
    inset: 0;
    padding: 20px 22px;
    border-radius: inherit;
    backface-visibility: hidden;
    transition: opacity .28s ease, transform .34s ease;
}

.td-guest-home-v2__step-front {
    display: flex;
    flex-direction: column;
    background: rgba(255, 255, 255, .66);
}

.td-guest-home-v2__step-front h3 {
    margin-top: 14px;
    font-size: 19px;
}

.td-guest-home-v2__step-front .td-guest-home-v2__step-action {
    padding-top: 12px;
}

.td-guest-home-v2__step-back {
    display: flex;
    flex-direction: column;
    min-height: 0;
    opacity: 0;
    color: #fff;
    background: linear-gradient(135deg, #083a5e 0%, #0d6a4d 100%);
    box-shadow: none;
    pointer-events: none;
    transform: rotateY(-88deg);
}

.td-guest-home-v2__step-back-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 15px;
    border-bottom: 1px solid rgba(255, 255, 255, .2);
}

.td-guest-home-v2__step-back-heading span {
    color: #ffd36c;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1.35;
    text-transform: uppercase;
}

.td-guest-home-v2__step-back h3 {
    margin: -4px 0 0;
    color: #fff;
    font-size: 22px;
    font-weight: 800;
    letter-spacing: -.8px;
    line-height: 1;
}

.td-guest-home-v2__step-back p {
    margin: 16px 0 0;
    max-width: none;
    min-height: 0;
    flex: 1 1 auto;
    overflow-y: auto;
    padding-right: 6px;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0;
    line-height: 1.48;
    scrollbar-color: rgba(255, 211, 108, .9) transparent;
    scrollbar-width: thin;
}

.td-guest-home-v2__step-back p::-webkit-scrollbar {
    width: 5px;
}

.td-guest-home-v2__step-back p::-webkit-scrollbar-thumb {
    border-radius: 99px;
    background: rgba(255, 211, 108, .9);
}

.td-guest-home-v2__steps li:hover .td-guest-home-v2__step-front,
.td-guest-home-v2__steps li:focus .td-guest-home-v2__step-front {
    opacity: 0;
    transform: rotateY(88deg);
}

.td-guest-home-v2__steps li:hover .td-guest-home-v2__step-back,
.td-guest-home-v2__steps li:focus .td-guest-home-v2__step-back {
    opacity: 1;
    pointer-events: auto;
    transform: rotateY(0);
}

.td-guest-home-v2__steps li:hover,
.td-guest-home-v2__steps li:focus {
    z-index: 3;
}

.td-guest-home-v2__steps li:focus-visible {
    outline: 3px solid rgba(45, 114, 43, .55);
    outline-offset: 4px;
}

@media (max-width: 1080px) and (min-width: 681px) {
    .td-guest-home-v2__steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .td-guest-home-v2__steps li {
        --td-v2-step-card-height: 188px;
        height: var(--td-v2-step-card-height);
        min-height: 0;
    }

    .td-guest-home-v2__step-front,
    .td-guest-home-v2__step-back {
        padding: 22px;
    }

    .td-guest-home-v2__step-back p {
        font-size: 12px;
        line-height: 1.48;
    }
}

/* Système typographique de la page d'accueil. Les valeurs sont volontairement
   limitées aux graisses réellement chargées par Manrope pour une lecture
   régulière, quel que soit le navigateur. */
.td-guest-home-v2 {
    --td-v2-font-sans: "Manrope", "Avenir Next", Avenir, Inter, system-ui, sans-serif;
    --td-v2-weight-regular: 400;
    --td-v2-weight-medium: 500;
    --td-v2-weight-semibold: 600;
    --td-v2-weight-bold: 700;
    --td-v2-weight-extrabold: 800;
    --td-v2-size-label: 12px;
    --td-v2-size-meta: 13px;
    --td-v2-size-ui: 14px;
    --td-v2-size-body: 15px;
    --td-v2-size-lead: 16px;
    --td-v2-size-card-title: 19px;
    --td-v2-leading-tight: 1.1;
    --td-v2-leading-heading: 1.2;
    --td-v2-leading-body: 1.55;
    --td-v2-leading-lead: 1.65;
    --td-v2-text-muted: #526b80;
    font-family: var(--td-v2-font-sans);
    font-synthesis: none;
}

.td-guest-home-v2 :is(button, input, textarea) {
    font-family: var(--td-v2-font-sans);
}

/* Navigation et actions : une seule échelle d'interface. */
.td-guest-home-v2__nav a,
.td-guest-home-v2__auth-button,
.td-guest-home-v2__published-all,
.td-guest-home-v2__published-link,
.td-guest-home-v2__contact-form > button,
.td-guest-home-v2__footer-cta {
    font-size: var(--td-v2-size-ui);
    font-weight: var(--td-v2-weight-bold);
    letter-spacing: 0;
    line-height: 1.2;
}

.td-guest-home-v2__nav a {
    font-weight: var(--td-v2-weight-semibold);
}

/* La promesse centrale conserve son impact, sans sur-graisse ni rupture mobile. */
.td-guest-home-v2__network-brand > span {
    font-size: clamp(19px, 1.45vw, 22px);
    font-weight: var(--td-v2-weight-extrabold);
    letter-spacing: -.55px;
    line-height: var(--td-v2-leading-tight);
}

.td-guest-home-v2__network-deal-copy > strong {
    font-size: clamp(9px, .78vw, 12px);
    font-weight: var(--td-v2-weight-bold);
    line-height: 1.25;
}

.td-guest-home-v2__network-deal-location,
.td-guest-home-v2__network-deal-status {
    font-size: clamp(8px, .68vw, 10px);
    font-weight: var(--td-v2-weight-semibold);
    line-height: 1.28;
}

/* Chiffres et repères : lisibles sans concurrencer les titres. */
.td-guest-home-v2__stats > p {
    color: var(--td-v2-text-muted);
    font-size: var(--td-v2-size-ui);
    font-weight: var(--td-v2-weight-semibold);
    line-height: var(--td-v2-leading-body);
}

.td-guest-home-v2__stats-grid strong {
    font-size: 20px;
    font-weight: var(--td-v2-weight-extrabold);
    line-height: var(--td-v2-leading-tight);
}

.td-guest-home-v2__stats-grid small {
    color: var(--td-v2-text-muted);
    font-size: 11px;
    font-weight: var(--td-v2-weight-semibold);
    line-height: 1.35;
}

/* Titres et introductions des sections. */
.td-guest-home-v2__section-heading > span,
.td-guest-home-v2__contact-kicker,
.td-guest-home-v2__published-heading > span {
    font-size: var(--td-v2-size-label);
    font-weight: var(--td-v2-weight-extrabold);
    letter-spacing: .1em;
    line-height: 1.3;
}

.td-guest-home-v2__section-heading h2,
.td-guest-home-v2__contact h2 {
    font-size: clamp(32px, 3vw, 46px);
    font-weight: var(--td-v2-weight-extrabold);
    letter-spacing: -1.8px;
    line-height: var(--td-v2-leading-tight);
}

.td-guest-home-v2__section-heading p,
.td-guest-home-v2__contact-copy > p {
    color: var(--td-v2-text-muted);
    font-size: var(--td-v2-size-lead);
    font-weight: var(--td-v2-weight-medium);
    line-height: var(--td-v2-leading-lead);
}

/* Cartes d'opportunités : titre, contexte, données et action suivent le
   même rythme de lecture. */
.td-guest-home-v2__published-image > span,
.td-guest-home-v2__published-card-meta span {
    font-size: 11px;
    font-weight: var(--td-v2-weight-bold);
    line-height: 1.2;
}

.td-guest-home-v2__published-card h3 {
    font-size: 20px;
    font-weight: var(--td-v2-weight-extrabold);
    letter-spacing: -.7px;
    line-height: var(--td-v2-leading-heading);
}

.td-guest-home-v2__published-location {
    color: var(--td-v2-text-muted);
    font-size: var(--td-v2-size-ui);
    font-weight: var(--td-v2-weight-semibold);
    line-height: 1.35;
}

.td-guest-home-v2__published-date {
    color: #667d91;
    font-size: 12px;
    font-weight: var(--td-v2-weight-semibold);
    line-height: 1.35;
}

.td-guest-home-v2__published-facts small {
    color: #61758a;
    font-size: 11px;
    font-weight: var(--td-v2-weight-bold);
    letter-spacing: .02em;
}

.td-guest-home-v2__published-facts strong {
    font-size: var(--td-v2-size-ui);
    font-weight: var(--td-v2-weight-extrabold);
    line-height: 1.25;
}

.td-guest-home-v2__published-link {
    font-weight: var(--td-v2-weight-bold);
}

/* Parcours, bénéfices et contact. */
.td-guest-home-v2__step-front h3,
.td-guest-home-v2__professional-grid h3 {
    font-size: var(--td-v2-size-card-title);
    font-weight: var(--td-v2-weight-extrabold);
    letter-spacing: -.55px;
    line-height: var(--td-v2-leading-heading);
}

.td-guest-home-v2__step-action {
    font-size: 12px;
    font-weight: var(--td-v2-weight-bold);
    letter-spacing: .05em;
    line-height: 1.35;
}

.td-guest-home-v2__step-back-heading span {
    font-size: 10px;
    font-weight: var(--td-v2-weight-bold);
    letter-spacing: .08em;
}

.td-guest-home-v2__step-back h3 {
    font-size: 21px;
    font-weight: var(--td-v2-weight-extrabold);
    line-height: var(--td-v2-leading-tight);
}

.td-guest-home-v2__step-back p {
    font-size: var(--td-v2-size-meta);
    font-weight: var(--td-v2-weight-semibold);
    line-height: 1.48;
}

.td-guest-home-v2__professional-grid h3 {
    margin: 30px 0 0;
    color: #f4f8fa;
}

/* Les bénéfices sont des repères courts : ne les forçons pas en cartes
   carrées, qui créaient une zone vide disproportionnée sur grand écran. */
.td-guest-home-v2__professionals {
    padding: clamp(22px, 2.15vw, 30px) clamp(26px, 3.25vw, 48px);
}

.td-guest-home-v2__professional-grid article {
    aspect-ratio: auto;
    min-height: clamp(218px, 15vw, 232px);
    padding: clamp(18px, 1.4vw, 22px);
}

.td-guest-home-v2__contact-copy ul,
.td-guest-home-v2__contact-actions a,
.td-guest-home-v2__contact-actions span {
    font-size: var(--td-v2-size-ui);
    font-weight: var(--td-v2-weight-bold);
    line-height: 1.45;
}

.td-guest-home-v2__contact-fields label {
    font-size: var(--td-v2-size-meta);
    font-weight: var(--td-v2-weight-bold);
    line-height: 1.35;
}

.td-guest-home-v2__contact-fields input,
.td-guest-home-v2__contact-fields textarea {
    font-size: var(--td-v2-size-body);
    font-weight: var(--td-v2-weight-medium);
    line-height: var(--td-v2-leading-body);
}

.td-guest-home-v2__contact-consent {
    color: var(--td-v2-text-muted);
    font-size: 12px;
    font-weight: var(--td-v2-weight-medium);
    line-height: 1.5;
}

/* Footer : même contraste et mêmes niveaux de lecture que le contenu. */
.td-guest-home-v2__footer-invitation > div > span,
.td-guest-home-v2__footer-links h2 {
    font-size: 11px;
    font-weight: var(--td-v2-weight-extrabold);
    letter-spacing: .09em;
    line-height: 1.3;
}

.td-guest-home-v2__footer-invitation h2 {
    font-size: clamp(24px, 2.1vw, 31px);
    font-weight: var(--td-v2-weight-extrabold);
    letter-spacing: -1.1px;
    line-height: var(--td-v2-leading-heading);
}

.td-guest-home-v2__footer-links a,
.td-guest-home-v2__footer-bottom,
.td-guest-home-v2__footer-bottom a,
.td-guest-home-v2__footer-signature {
    font-size: 12px;
    font-weight: var(--td-v2-weight-semibold);
    line-height: 1.45;
}

/* Un rythme de section constant sur toute la page. */
.td-guest-home-v2__section {
    margin-bottom: 96px;
}

.td-guest-home-v2__steps {
    margin-top: 32px;
}

@media (max-width: 1120px) {
    .td-guest-home-v2__section {
        margin-bottom: 72px;
    }
}

@media (max-width: 680px) {
    .td-guest-home-v2__network-brand > span {
        font-size: clamp(17px, 5vw, 21px);
    }

    .td-guest-home-v2__section {
        margin-bottom: 56px;
    }

    .td-guest-home-v2__section-heading h2,
    .td-guest-home-v2__contact h2 {
        font-size: 32px;
        letter-spacing: -1.35px;
    }

    .td-guest-home-v2__section-heading p,
    .td-guest-home-v2__contact-copy > p {
        font-size: var(--td-v2-size-ui);
    }

    .td-guest-home-v2__professional-grid h3 {
        margin-top: 22px;
        font-size: 17px;
    }

    .td-guest-home-v2__professional-grid article {
        min-height: 176px;
        padding: 19px;
    }

    .td-guest-home-v2__footer-invitation h2 {
        font-size: 25px;
    }

    .td-guest-home-v2__floating-deposit {
        right: max(14px, env(safe-area-inset-right));
        bottom: calc(max(14px, env(safe-area-inset-bottom)) + 72px);
        min-height: 54px;
        gap: 9px;
        padding: 0 17px;
        font-size: 14px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .td-guest-home-v2__floating-deposit,
    .td-guest-home-v2__floating-deposit > i:last-child {
        transition: none;
    }
}
