@import url("https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap");

:root {
    --lm-ink: #102c33;
    --lm-muted: #536b70;
    --lm-deep: #0b3d3a;
    --lm-mint: #b8f06a;
    --lm-aqua: #dff5ee;
    --lm-ivory: #f8f7f1;
    --lm-line: #dbe5df;
    --lm-coral: #ff8066;
}

body.legacy-modern-page {
    margin: 0 !important;
    background: var(--lm-ivory) !important;
    color: var(--lm-ink) !important;
    font-family: "DM Sans", sans-serif !important;
    -webkit-font-smoothing: antialiased;
}

.legacy-modern-page h1,
.legacy-modern-page h2,
.legacy-modern-page h3,
.legacy-modern-page h4,
.legacy-modern-page h5,
.legacy-modern-page .logo-text-link,
.legacy-modern-page .footer-logo-text,
.legacy-modern-page .status-button {
    font-family: "Manrope", sans-serif !important;
}

.legacy-modern-page header.transparent {
    position: sticky !important;
    z-index: 100 !important;
    top: 0 !important;
    width: 100% !important;
    min-height: 84px !important;
    border-bottom: 1px solid rgba(219, 229, 223, 0.9) !important;
    background: rgba(248, 247, 241, 0.94) !important;
    box-shadow: none !important;
    backdrop-filter: blur(18px);
}

.legacy-modern-page header .de-flex {
    min-height: 84px !important;
    align-items: center !important;
}

.legacy-modern-page header .logo-text-link,
.legacy-modern-page .footer-logo-text {
    display: inline-flex !important;
    align-items: center !important;
    gap: 11px !important;
    color: var(--lm-deep) !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    letter-spacing: -0.6px !important;
    text-decoration: none !important;
}

.legacy-modern-page .logo-icon-part {
    width: 42px !important;
    height: 42px !important;
    display: inline-grid !important;
    place-items: center !important;
    border-radius: 14px 14px 14px 4px !important;
    background: var(--lm-deep) !important;
    color: var(--lm-mint) !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

.legacy-modern-page .logo-text-part,
.legacy-modern-page header.smaller.scroll-light .logo-text-part,
.legacy-modern-page .footer-logo-text .logo-text-part {
    color: var(--lm-deep) !important;
}

.legacy-modern-page #mainmenu li a {
    color: var(--lm-muted) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

.status-page #content {
    min-height: 620px;
    background: var(--lm-deep) !important;
}

.status-page section.bg-color.section-light {
    position: relative !important;
    overflow: hidden !important;
    min-height: 620px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    margin: 0 !important;
    background: var(--lm-deep) !important;
    padding: 105px 20px !important;
    text-align: center !important;
}

.status-page section.bg-color.section-light::before,
.status-page section.bg-color.section-light::after {
    content: "";
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.status-page section.bg-color.section-light::before {
    width: 390px;
    height: 390px;
    right: -170px;
    bottom: -230px;
    border: 68px solid rgba(184, 240, 106, 0.12);
}

.status-page section.bg-color.section-light::after {
    width: 180px;
    height: 180px;
    top: 55px;
    left: -100px;
    border: 35px solid rgba(255, 128, 102, 0.13);
}

.status-page section.bg-color.section-light h2 {
    position: relative !important;
    z-index: 2 !important;
    max-width: 760px !important;
    margin: 0 auto 18px !important;
    padding: 0 !important;
    color: #ffffff !important;
    font-size: clamp(38px, 6vw, 64px) !important;
    font-weight: 800 !important;
    letter-spacing: -2.7px !important;
    line-height: 1.05 !important;
}

.status-page section.bg-color.section-light h2::before {
    content: "";
    width: 78px;
    height: 78px;
    display: grid;
    place-items: center;
    margin: 0 auto 28px;
    border-radius: 25px 25px 25px 8px;
    background: var(--lm-mint);
    color: var(--lm-deep);
    font-size: 30px;
    font-weight: 800;
    letter-spacing: 0;
}

.status-page[data-state="success"] section.bg-color.section-light h2::before { content: "✓"; }
.status-page[data-state="duplicate"] section.bg-color.section-light h2::before { content: "i"; background: var(--lm-aqua); }
.status-page[data-state="error"] section.bg-color.section-light h2::before { content: "!"; background: var(--lm-coral); }
.status-page[data-state="ineligible"] section.bg-color.section-light h2::before { content: "i"; background: #f3d996; }

.status-page section.bg-color.section-light h4,
.status-page .status-description {
    position: relative !important;
    z-index: 2 !important;
    max-width: 650px !important;
    margin: 0 auto !important;
    color: rgba(255, 255, 255, 0.72) !important;
    font-family: "DM Sans", sans-serif !important;
    font-size: 17px !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
}

.status-actions {
    position: relative;
    z-index: 3;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
    margin-top: 34px;
}

.status-button {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 1px solid transparent;
    border-radius: 14px;
    background: var(--lm-mint);
    color: #173419 !important;
    padding: 0 24px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    transition: transform 180ms ease, background 180ms ease;
}

.status-button:hover,
.status-button:focus-visible {
    background: #c7f58b;
    transform: translateY(-2px);
}

.status-button.secondary {
    border-color: rgba(255, 255, 255, 0.25);
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff !important;
}

.status-page section:has(#owl-logo) {
    display: none !important;
}

.legacy-modern-page footer.section-dark {
    background: #edf2ed !important;
    color: var(--lm-ink) !important;
    padding-top: 62px !important;
}

.legacy-modern-page footer.section-dark p,
.legacy-modern-page footer.section-dark .widget li a,
.legacy-modern-page footer.section-dark .fw-bold,
.legacy-modern-page footer.section-dark .subfooter,
.legacy-modern-page footer.section-dark .subfooter a {
    color: var(--lm-muted) !important;
}

.legacy-modern-page footer.section-dark h5 {
    color: var(--lm-deep) !important;
    font-weight: 800 !important;
}

.legacy-modern-page footer.section-dark .id-color-2 {
    color: var(--lm-deep) !important;
}

.legacy-modern-page footer.section-dark .subfooter {
    margin-top: 40px !important;
    border-top: 1px solid var(--lm-line) !important;
    background: transparent !important;
}

.legal-page #content {
    background: #edf5ef !important;
}

.legal-page section.bg-color.section-light {
    margin: 0 !important;
    background: #edf5ef !important;
    padding: 88px 20px !important;
}

.legal-page .container2 {
    width: min(920px, 100%) !important;
    margin: 0 auto !important;
    border: 1px solid var(--lm-line) !important;
    border-radius: 28px !important;
    background: #ffffff !important;
    padding: clamp(28px, 6vw, 68px) !important;
    box-shadow: 0 24px 70px rgba(7, 44, 42, 0.11) !important;
}

.legal-page .container2 h1 {
    margin: 0 0 28px !important;
    color: var(--lm-ink) !important;
    font-size: clamp(40px, 6vw, 62px) !important;
    font-weight: 800 !important;
    letter-spacing: -2.7px !important;
}

.legal-page .container2 h2 {
    margin: 36px 0 10px !important;
    color: var(--lm-deep) !important;
    font-size: 21px !important;
    font-weight: 800 !important;
}

.legal-page .container2 p {
    color: var(--lm-muted) !important;
    font-size: 15px !important;
    line-height: 1.75 !important;
}

.legal-page .container2 a {
    color: var(--lm-deep) !important;
    font-weight: 700 !important;
}

.legal-page section:has(#owl-logo) {
    display: none !important;
}

@media (max-width: 800px) {
    .legacy-modern-page header .header-col-mid { display: none !important; }
    .status-page section.bg-color.section-light { min-height: 560px !important; padding: 80px 18px !important; }
    .legacy-modern-page footer.section-dark { padding-top: 48px !important; }
}

@media (max-width: 520px) {
    .legacy-modern-page header.transparent,
    .legacy-modern-page header .de-flex { min-height: 72px !important; }
    .legacy-modern-page header .logo-text-link,
    .legacy-modern-page .footer-logo-text { font-size: 17px !important; }
    .legacy-modern-page .logo-icon-part { width: 38px !important; height: 38px !important; }
    .status-actions { display: grid; width: 100%; max-width: 320px; }
    .status-button { width: 100%; }
    .legal-page section.bg-color.section-light { padding: 48px 14px !important; }
}

@media (prefers-reduced-motion: reduce) {
    .legacy-modern-page * { transition-duration: 0.01ms !important; }
}
