/* Lot 7.5A owner-review polish layered after the runtime shell stylesheet. */

/* Use the existing free Hero space to lower only the CTA row; metrics keep their layout position. */
.lmd-home .hero-actions {
    position: relative;
    top: 8px;
}

.lmd-home .hero-lead {
    font-size: 19px;
    font-weight: 500;
}

/* Header account request: exact progressive-fill interaction language of the Home Hero CTA. */
.site-header .header-actions .text-action.primary {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: var(--deep-space);
    background-image: none;
    color: #fff;
    border: 1px solid transparent;
    border-radius: 999px;
    transition:
        transform .22s ease,
        box-shadow .22s ease,
        border-color .22s ease,
        color .22s ease;
}

.site-header .header-actions .text-action.primary::before {
    content: "";
    position: absolute;
    inset: 0;
    width: 0;
    border-radius: inherit;
    background: linear-gradient(90deg, #ef8d96, #b46ee9 48%, #59cbb3);
    transition: width .42s cubic-bezier(.22, 1, .36, 1);
    pointer-events: none;
    z-index: -1;
}

.site-header .header-actions .text-action.primary:hover::before,
.site-header .header-actions .text-action.primary:focus-visible::before {
    width: 100%;
}

.site-header .header-actions .text-action.primary:hover,
.site-header .header-actions .text-action.primary:focus-visible {
    background: var(--deep-space);
    background-image: none;
    color: #fff;
    border-color: transparent;
    transform: translateY(-2px);
    box-shadow: 0 12px 30px rgba(180, 110, 233, .20);
}

/* Login: keep the progressive fill inside the pill border so rounded corners stay crisp. */
.guest-shell .auth-card button.login-submit-button {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    border: 1px solid var(--deep-space);
    border-radius: 999px;
    background: var(--deep-space);
    background-image: none;
    background-clip: padding-box;
    color: #fff;
    transition:
        transform .22s ease,
        box-shadow .22s ease,
        border-color .22s ease,
        color .22s ease;
}

.guest-shell .auth-card button.login-submit-button::before {
    content: "";
    position: absolute;
    inset: 1px;
    border-radius: inherit;
    background: var(--gradient-hero);
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform .42s cubic-bezier(.22, 1, .36, 1);
    pointer-events: none;
    z-index: 0;
}

.guest-shell .auth-card button.login-submit-button:hover::before,
.guest-shell .auth-card button.login-submit-button:focus-visible::before {
    transform: scaleX(1);
}

.guest-shell .auth-card button.login-submit-button:hover,
.guest-shell .auth-card button.login-submit-button:focus-visible {
    background: var(--deep-space);
    background-image: none;
    border-color: var(--deep-space);
    color: #fff;
    box-shadow: 0 12px 30px rgba(180, 110, 233, .20);
    transform: translateY(-2px);
}

.guest-shell .auth-card button.login-submit-button .login-button-label {
    position: relative;
    z-index: 1;
}

/* Previous owner review: direct background sizing removes pseudo-element seams. */
.site-header .header-actions .text-action.primary {
    background-color: var(--deep-space);
    background-image: var(--gradient-hero);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 0 100%;
    background-origin: border-box;
    background-clip: border-box;
    transition:
        background-size .44s cubic-bezier(.22, 1, .36, 1),
        color .22s ease,
        border-color .22s ease,
        box-shadow .22s ease,
        transform .22s ease;
}

.site-header .header-actions .text-action.primary::before {
    content: none;
}

.site-header .header-actions .text-action.primary:hover,
.site-header .header-actions .text-action.primary:focus-visible {
    background-color: var(--deep-space);
    background-image: var(--gradient-hero);
    background-size: 100% 100%;
    border-color: transparent;
}

.blog-coming-actions a {
    overflow: hidden;
    border-radius: 999px;
    background-origin: border-box;
    background-clip: border-box;
}

.blog-coming-actions a:hover,
.blog-coming-actions a:focus-visible {
    background-position: left center;
    background-size: 100% 100%;
}

/* Lot 7.5C acceptance correction: the Home Account Application button is the visual authority.
 * Primary CTAs stay black at rest; the gradient fills only inside a persistent black pill border.
 * Secondary CTAs stay white at rest and use the same contained gradient fill on hover. */
.site-header .header-actions .text-action.primary,
.site-header .mobile-account-action.primary,
.blog-coming-actions a:first-child,
.blog-coming-actions a:last-child {
    background-image: var(--gradient-hero);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: 0 100%;
    background-origin: padding-box;
    background-clip: padding-box;
    border: 1px solid var(--deep-space);
    border-radius: 999px;
    transition:
        background-size .44s cubic-bezier(.22, 1, .36, 1),
        color .22s ease,
        border-color .22s ease,
        box-shadow .22s ease,
        transform .22s ease;
}

.site-header .header-actions .text-action.primary,
.site-header .mobile-account-action.primary,
.blog-coming-actions a:first-child {
    background-color: var(--deep-space);
    color: #fff;
}

.blog-coming-actions a:last-child {
    background-color: #fff;
    color: var(--deep-space);
}

.site-header .header-actions .text-action.primary::before,
.site-header .mobile-account-action.primary::before,
.blog-coming-actions a::before {
    content: none;
}

.site-header .header-actions .text-action.primary:hover,
.site-header .header-actions .text-action.primary:focus-visible,
.site-header .mobile-account-action.primary:hover,
.site-header .mobile-account-action.primary:focus-visible,
.blog-coming-actions a:first-child:hover,
.blog-coming-actions a:first-child:focus-visible,
.blog-coming-actions a:last-child:hover,
.blog-coming-actions a:last-child:focus-visible {
    background-image: var(--gradient-hero);
    background-size: 100% 100%;
    border-color: var(--deep-space);
    color: #fff;
    box-shadow: 0 12px 30px rgba(180, 110, 233, .22);
    transform: translateY(-2px);
}

@media (max-width: 1024px) {
    .lmd-home .hero-actions {
        top: 7px;
    }

    .lmd-home .hero-lead {
        font-size: 18px !important;
    }
}

@media (max-width: 560px) {
    .lmd-home .hero-actions {
        top: 6px;
    }

    .lmd-home .hero-lead {
        font-size: 17px !important;
    }
}
