:root {
    --redd-ink: #163f46;
    --redd-ink-soft: #547077;
    --redd-teal: #347782;
    --redd-teal-dark: #245f69;
    --redd-teal-pale: #eaf4f3;
    --redd-gold: #b99145;
    --redd-gold-pale: #f8f1e4;
    --redd-line: #dfe8e7;
    --redd-canvas: #f7faf9;
    --redd-white: #fff;
    --redd-shadow: 0 18px 50px rgba(24, 63, 69, .11);
}

/* Guest header */
.redd-guest-header {
    min-height: 76px !important;
    height: auto !important;
    padding: 0 !important;
    background: rgba(255, 255, 255, .96) !important;
    border-bottom: 1px solid rgba(52, 119, 130, .12);
    box-shadow: 0 8px 28px rgba(24, 63, 69, .06);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    z-index: 1040;
}

.redd-guest-header__inner {
    min-height: 76px;
    display: flex;
    align-items: center;
    gap: 24px;
}

.redd-guest-header .redd-guest-header__brand {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    padding: 5px 0;
    margin: 0;
}

.redd-guest-header .redd-guest-header__brand img {
    display: block;
    width: auto;
    height: 58px !important;
    margin: 0 !important;
    object-fit: contain;
}

.redd-guest-header__nav {
    align-items: center;
    gap: 20px;
}

.redd-guest-header__links {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-inline: auto 0;
}

.redd-guest-header__links .nav-link {
    position: relative;
    padding: 10px 12px !important;
    color: #405d62 !important;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.4;
    border-radius: 12px;
    transition: color .2s ease, background-color .2s ease;
}

.redd-guest-header__links .nav-link:hover,
.redd-guest-header__links .nav-link:focus-visible,
.redd-guest-header__links .nav-link.active {
    color: var(--redd-teal-dark) !important;
    background: var(--redd-teal-pale);
}

.redd-guest-header__links .nav-link.active::after {
    content: '';
    position: absolute;
    inset-inline: 13px;
    bottom: 4px;
    height: 2px;
    border-radius: 999px;
    background: var(--redd-gold);
}

.redd-guest-header__actions {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-inline-start: auto;
}

.redd-language__button,
.redd-guest-header__login,
.redd-guest-header__join {
    min-height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 9px 13px;
    border-radius: 12px;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: transform .2s ease, box-shadow .2s ease, color .2s ease, background-color .2s ease;
}

.redd-language__button {
    border: 1px solid var(--redd-line);
    color: #466269;
    background: #fff;
}

.redd-language__chevron {
    font-size: 9px;
    opacity: .65;
}

.redd-language .dropdown-menu {
    min-width: 145px;
    padding: 7px;
    margin-top: 10px !important;
    border: 1px solid var(--redd-line);
    border-radius: 14px;
    box-shadow: var(--redd-shadow);
}

.redd-language .dropdown-item {
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 9px 10px;
    border-radius: 9px;
    color: var(--redd-ink);
    font-size: 13px;
}

.redd-language .dropdown-item img {
    width: 21px;
    height: 15px;
    object-fit: cover;
    border-radius: 3px;
}

/* v2.2.1: keep every guest-header hover readable and inside the Redd palette. */
.redd-language .dropdown-item:hover,
.redd-language .dropdown-item:focus,
.redd-language .dropdown-item:focus-visible,
.redd-language .dropdown-item.active {
    color: var(--redd-teal-dark) !important;
    background-color: var(--redd-teal-pale) !important;
}

.redd-guest-header__login {
    border: 1px solid rgba(52, 119, 130, .25);
    color: var(--redd-teal-dark);
    background: #fff;
}

.redd-guest-header__join {
    padding-inline: 17px;
    color: #fff;
    background: var(--redd-teal);
    box-shadow: 0 10px 22px rgba(52, 119, 130, .18);
}

.redd-guest-header__join:hover,
.redd-guest-header__join:focus-visible {
    color: #fff !important;
    background: var(--redd-teal-dark) !important;
    transform: translateY(-1px);
    box-shadow: 0 13px 26px rgba(52, 119, 130, .24);
}

.redd-guest-header__login:hover,
.redd-guest-header__login:focus-visible,
.redd-language__button:hover,
.redd-language__button:focus-visible {
    color: var(--redd-teal-dark) !important;
    background: var(--redd-teal-pale) !important;
}

.redd-guest-header__toggle {
    width: 44px;
    height: 44px;
    padding: 0 !important;
    display: none;
    align-items: center;
    justify-content: center;
    color: var(--redd-teal-dark) !important;
    font-size: 20px !important;
    background: var(--redd-teal-pale);
    border-radius: 12px;
    box-shadow: none !important;
}

/* Account type page */
.account-choice {
    position: relative;
    isolation: isolate;
    min-height: 620px;
    padding: 30px 0 74px;
    overflow: hidden;
    color: var(--redd-ink);
    background:
        linear-gradient(180deg, #f2f8f7 0%, #fff 52%, #f8faf9 100%);
}

.account-choice__glow {
    position: absolute;
    z-index: -1;
    width: 420px;
    aspect-ratio: 1;
    border-radius: 50%;
    filter: blur(4px);
    opacity: .6;
    pointer-events: none;
}

.account-choice__glow--one {
    top: -260px;
    inset-inline-start: -180px;
    background: radial-gradient(circle, rgba(52, 119, 130, .18), transparent 68%);
}

.account-choice__glow--two {
    bottom: -280px;
    inset-inline-end: -170px;
    background: radial-gradient(circle, rgba(185, 145, 69, .19), transparent 68%);
}

.account-choice__container {
    max-width: 1040px;
}

.account-choice__crumbs {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 35px;
    color: #7a9094;
    font-size: 13px;
}

.account-choice__crumbs a {
    color: var(--redd-teal);
    text-decoration: none;
}

.account-choice__crumbs i {
    font-size: 9px;
}

html[dir="ltr"] .account-choice__crumbs i,
html[dir="ltr"] .account-card__action i,
html[dir="ltr"] .redd-guest-header__join i {
    transform: rotate(180deg);
}

.account-choice__intro {
    max-width: 720px;
    margin: 0 auto 38px;
    text-align: center;
}

.account-choice__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px;
    padding: 7px 12px;
    color: var(--redd-teal-dark);
    background: rgba(255, 255, 255, .78);
    border: 1px solid rgba(52, 119, 130, .16);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 600;
    box-shadow: 0 5px 16px rgba(52, 119, 130, .07);
}

.account-choice__eyebrow i {
    color: var(--redd-gold);
}

.account-choice__intro h1 {
    margin: 0 0 13px;
    color: var(--redd-ink);
    font-size: clamp(30px, 4.2vw, 48px);
    font-weight: 650;
    line-height: 1.25;
    letter-spacing: -.025em;
}

.account-choice__intro p {
    max-width: 620px;
    margin: 0 auto;
    color: var(--redd-ink-soft);
    font-size: 16px;
    font-weight: 400;
    line-height: 1.9;
}

.account-choice__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    max-width: 880px;
    margin: 0 auto;
}

.account-card {
    position: relative;
    min-height: 245px;
    display: grid;
    grid-template-columns: 118px minmax(0, 1fr);
    align-items: center;
    gap: 22px;
    padding: 27px;
    overflow: hidden;
    color: var(--redd-ink);
    text-decoration: none;
    background: rgba(255, 255, 255, .94);
    border: 1px solid rgba(52, 119, 130, .14);
    border-radius: 24px;
    box-shadow: 0 15px 45px rgba(24, 63, 69, .08);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.account-card::before {
    content: '';
    position: absolute;
    inset: 0 auto auto 0;
    width: 100%;
    height: 4px;
    background: var(--redd-teal);
    opacity: 0;
    transition: opacity .25s ease;
}

.account-card--provider::before {
    background: var(--redd-gold);
}

.account-card:hover,
.account-card:focus-visible {
    color: var(--redd-ink) !important;
    background: #fff !important;
    transform: translateY(-5px);
    border-color: rgba(52, 119, 130, .34);
    box-shadow: 0 24px 55px rgba(24, 63, 69, .14);
    outline: none;
}

.account-card--applicant:hover,
.account-card--applicant:focus-visible {
    border-color: rgba(52, 119, 130, .42);
}

.account-card--provider:hover,
.account-card--provider:focus-visible {
    border-color: rgba(185, 145, 69, .46);
}

/* Older site rules style all hovered anchors; pin each card child explicitly. */
.account-card:hover .account-card__body strong,
.account-card:focus-visible .account-card__body strong {
    color: var(--redd-ink) !important;
}

.account-card:hover .account-card__description,
.account-card:focus-visible .account-card__description {
    color: var(--redd-ink-soft) !important;
}

.account-card--applicant:hover .account-card__badge,
.account-card--applicant:focus-visible .account-card__badge,
.account-card--applicant:hover .account-card__action,
.account-card--applicant:focus-visible .account-card__action {
    color: var(--redd-teal-dark) !important;
}

.account-card--provider:hover .account-card__badge,
.account-card--provider:focus-visible .account-card__badge,
.account-card--provider:hover .account-card__action,
.account-card--provider:focus-visible .account-card__action {
    color: #855f1e !important;
}

.account-card:focus-visible {
    box-shadow: 0 0 0 4px rgba(52, 119, 130, .16), 0 24px 55px rgba(24, 63, 69, .14);
}

.account-card:hover::before,
.account-card:focus-visible::before {
    opacity: 1;
}

.account-card__visual {
    width: 118px;
    height: 118px;
    display: grid;
    place-items: center;
    overflow: hidden;
    color: var(--redd-teal);
    background: var(--redd-teal-pale);
    border: 1px solid rgba(52, 119, 130, .12);
    border-radius: 22px;
}

.account-card--provider .account-card__visual {
    color: #9c742d;
    background: var(--redd-gold-pale);
    border-color: rgba(185, 145, 69, .16);
}

.account-card__visual img {
    width: 82px;
    height: 82px;
    object-fit: contain;
}

.account-card__visual i {
    font-size: 44px;
}

.account-card__body {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.account-card__badge {
    margin-bottom: 8px;
    padding: 5px 9px;
    color: var(--redd-teal-dark);
    background: var(--redd-teal-pale);
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
}

.account-card--provider .account-card__badge {
    color: #855f1e;
    background: var(--redd-gold-pale);
}

.account-card__body strong {
    margin-bottom: 8px;
    font-size: 22px;
    font-weight: 650;
    line-height: 1.35;
}

.account-card__description {
    min-height: 48px;
    color: var(--redd-ink-soft);
    font-size: 13px;
    line-height: 1.75;
}

.account-card__action {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-top: 16px;
    color: var(--redd-teal-dark);
    font-size: 13px;
    font-weight: 650;
}

.account-card--provider .account-card__action {
    color: #855f1e;
}

.account-card__action i {
    font-size: 11px;
    transition: transform .2s ease;
}

.account-card:hover .account-card__action i {
    transform: translateX(-4px);
}

html[dir="ltr"] .account-card:hover .account-card__action i {
    transform: rotate(180deg) translateX(-4px);
}

.account-choice__trust {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 16px 28px;
    margin-top: 28px;
    color: #688186;
    font-size: 12px;
}

.account-choice__trust span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.account-choice__trust i {
    color: var(--redd-teal);
}

.account-choice__skeleton {
    min-height: 245px;
    border: 1px solid rgba(52, 119, 130, .08);
    border-radius: 24px;
    background: linear-gradient(100deg, #eef4f3 15%, #f9fbfb 35%, #eef4f3 55%);
    background-size: 200% 100%;
    animation: redd-skeleton 1.2s linear infinite;
}

@keyframes redd-skeleton {
    to { background-position-x: -200%; }
}

@media (max-width: 1199.98px) {
    .redd-guest-header__inner { gap: 12px; }
    .redd-guest-header__links .nav-link { padding-inline: 8px !important; font-size: 13px; }
    .redd-language__button span { display: none; }
    .redd-language__button { width: 42px; padding-inline: 0; }
    .redd-language__chevron { display: none; }
}

@media (max-width: 991.98px) {
    .redd-guest-header__toggle { display: inline-flex; }

    .redd-guest-header .redd-guest-header__nav {
        position: absolute;
        top: calc(100% + 1px);
        inset-inline: 12px;
        padding: 16px;
        background: #fff;
        border: 1px solid var(--redd-line);
        border-radius: 0 0 18px 18px;
        box-shadow: 0 20px 45px rgba(24, 63, 69, .14);
        z-index: 1041;
    }

    .redd-guest-header .redd-guest-header__nav.collapsing,
    .redd-guest-header .redd-guest-header__nav.collapse.show { display: block; }

    .redd-guest-header__links {
        align-items: stretch;
        gap: 3px;
        margin: 0 0 14px;
    }

    .redd-guest-header__links .nav-link {
        padding: 11px 12px !important;
        font-size: 14px;
    }

    .redd-guest-header__links .nav-link.active::after { display: none; }

    .redd-guest-header__actions {
        display: grid;
        grid-template-columns: auto 1fr 1fr;
        gap: 8px;
        padding-top: 14px;
        border-top: 1px solid var(--redd-line);
    }

    .redd-language__button span { display: inline; }
    .redd-language__button { width: auto; padding-inline: 13px; }
    .redd-language__chevron { display: inline; }

    .account-choice { padding-top: 22px; }
    .account-choice__crumbs { margin-bottom: 28px; }
    .account-choice__grid { max-width: 700px; }
    .account-card { grid-template-columns: 94px minmax(0, 1fr); padding: 23px; }
    .account-card__visual { width: 94px; height: 94px; }
    .account-card__visual img { width: 68px; height: 68px; }
}

@media (max-width: 767.98px) {
    .account-choice { min-height: 0; padding: 18px 0 52px; }
    .account-choice__crumbs { margin-bottom: 24px; }
    .account-choice__intro { margin-bottom: 28px; }
    .account-choice__intro h1 { font-size: 31px; }
    .account-choice__intro p { font-size: 14px; line-height: 1.75; }
    .account-choice__grid { grid-template-columns: 1fr; gap: 14px; }
    .account-card, .account-choice__skeleton { min-height: 210px; }
    .account-card { grid-template-columns: 104px minmax(0, 1fr); border-radius: 20px; }
    .account-card__visual { width: 104px; height: 104px; border-radius: 19px; }
    .account-choice__trust { gap: 12px 18px; }
}

@media (max-width: 575.98px) {
    .redd-guest-header,
    .redd-guest-header__inner { min-height: 68px !important; }
    .redd-guest-header .redd-guest-header__brand img { height: 51px !important; }
    .redd-guest-header .redd-guest-header__nav { inset-inline: 8px; padding: 13px; }
    .redd-guest-header__actions { grid-template-columns: 44px 1fr; }
    .redd-language__button { width: 44px; }
    .redd-language__button span,
    .redd-language__chevron { display: none; }
    .redd-guest-header__join { grid-column: 1 / -1; }

    .account-choice__crumbs { display: none; }
    .account-choice__intro { margin-top: 8px; }
    .account-choice__eyebrow { font-size: 11px; }
    .account-choice__intro h1 { font-size: 27px; }
    .account-choice__intro p { font-size: 13px; }
    .account-card { grid-template-columns: 78px minmax(0, 1fr); gap: 15px; min-height: 190px; padding: 19px 17px; }
    .account-card__visual { width: 78px; height: 78px; border-radius: 16px; }
    .account-card__visual img { width: 58px; height: 58px; }
    .account-card__visual i { font-size: 32px; }
    .account-card__body strong { font-size: 19px; }
    .account-card__description { min-height: 0; font-size: 12px; }
    .account-card__action { margin-top: 11px; }
    .account-choice__trust { flex-direction: column; align-items: flex-start; max-width: 260px; margin-inline: auto; }
}

/* Prevent sticky hover colours on touch screens after tapping a link. */
@media (hover: none) {
    .account-card:hover {
        color: var(--redd-ink) !important;
        background: #fff !important;
        transform: none;
        box-shadow: 0 15px 45px rgba(24, 63, 69, .08);
    }

    .account-card:hover::before { opacity: 0; }

    .redd-guest-header__links .nav-link:hover {
        color: #405d62 !important;
        background: transparent !important;
    }

    .redd-guest-header__links .nav-link.active:hover {
        color: var(--redd-teal-dark) !important;
        background: var(--redd-teal-pale) !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .account-card,
    .account-card__action i,
    .redd-guest-header__join { transition: none; }
    .account-choice__skeleton { animation: none; }
}

/* v2.6 compact scale for the guest account-choice flow. */
.account-choice {
    min-height: 540px;
    padding: 24px 0 54px;
}

.account-choice__container {
    max-width: 940px;
}

.account-choice__crumbs {
    margin-bottom: 22px;
    font-size: 12px;
}

.account-choice__intro {
    max-width: 650px;
    margin-bottom: 27px;
}

.account-choice__eyebrow {
    gap: 7px;
    margin-bottom: 10px;
    padding: 6px 10px;
    font-size: 11px;
    font-weight: 500;
}

.account-choice__intro h1 {
    margin-bottom: 9px;
    font-size: clamp(28px, 3vw, 39px);
    font-weight: 600;
    line-height: 1.32;
    letter-spacing: -0.015em;
}

.account-choice__intro p {
    max-width: 590px;
    font-size: 14px;
    line-height: 1.72;
}

.account-choice__grid {
    gap: 16px;
    max-width: 820px;
}

.account-card,
.account-choice__skeleton {
    min-height: 192px;
}

.account-card {
    grid-template-columns: 88px minmax(0, 1fr);
    gap: 17px;
    padding: 21px;
    border-radius: 19px;
}

.account-card__visual {
    width: 88px;
    height: 88px;
    border-radius: 17px;
}

.account-card__visual img {
    width: 64px;
    height: 64px;
}

.account-card__visual i {
    font-size: 34px;
}

.account-card__badge {
    margin-bottom: 6px;
    padding: 4px 8px;
    font-size: 10px;
    font-weight: 500;
}

.account-card__body strong {
    margin-bottom: 5px;
    font-size: 19px;
    font-weight: 600;
}

.account-card__description {
    min-height: 42px;
    font-size: 12px;
    line-height: 1.65;
}

.account-card__action {
    margin-top: 11px;
    font-size: 12px;
    font-weight: 500;
}

.account-choice__trust {
    gap: 11px 21px;
    margin-top: 20px;
    font-size: 11px;
}

@media (max-width: 991.98px) {
    .account-choice {
        padding-top: 20px;
    }

    .account-choice__crumbs {
        margin-bottom: 20px;
    }

    .account-choice__grid {
        max-width: 760px;
    }
}

@media (max-width: 767.98px) {
    .account-choice {
        padding: 16px 0 42px;
    }

    .account-choice__intro {
        margin-bottom: 22px;
    }

    .account-choice__intro h1 {
        font-size: 29px;
    }

    .account-card,
    .account-choice__skeleton {
        min-height: 176px;
    }

    .account-card {
        grid-template-columns: 82px minmax(0, 1fr);
        padding: 18px;
    }

    .account-card__visual {
        width: 82px;
        height: 82px;
    }
}

@media (max-width: 575.98px) {
    .account-choice__intro h1 {
        font-size: 25px;
    }

    .account-choice__intro p {
        font-size: 13px;
    }

    .account-card {
        grid-template-columns: 70px minmax(0, 1fr);
        gap: 13px;
        min-height: 158px;
        padding: 16px 14px;
    }

    .account-card__visual {
        width: 70px;
        height: 70px;
    }

    .account-card__visual img {
        width: 52px;
        height: 52px;
    }

    .account-card__visual i {
        font-size: 29px;
    }

    .account-card__body strong {
        font-size: 17px;
    }
}
