/* DomainUI.net presentation-only light theme, aligned with DomainUI.com. */
:root {
    color-scheme: light;
    --bg-primary: #f7f8ff;
    --bg-surface: #ffffff;
    --bg-card: #ffffff;
    --bg-card-hover: #fbfaff;
    --text-primary: #081a38;
    --text-secondary: #50617d;
    --text-muted: #71809a;
    --accent-orange: #ff8a1f;
    --accent-orange-dark: #ed6f05;
    --accent-purple: #6d35ed;
    --accent-purple-dark: #5421c7;
    --border-glass: #dce3f5;
    --border-glass-hover: #c9d2ed;
    --glow-orange: rgba(255,138,31,.10);
    --glow-purple: rgba(109,53,237,.10);
    --radius-sm: 10px;
    --radius-md: 14px;
    --radius-lg: 18px;
    --radius-xl: 22px;
    --radius-full: 9999px;
    --dui-com-shadow: 0 14px 34px rgba(34,24,78,.08);
}

html { background: var(--bg-primary); }
body {
    background: radial-gradient(circle at 4% 16%, rgba(109,53,237,.07), transparent 22rem), radial-gradient(circle at 94% 28%, rgba(47,99,245,.06), transparent 24rem), var(--bg-primary) !important;
    color: var(--text-secondary) !important;
}
h1,h2,h3,h4,h5,h6,.hero-title,.section-title,.cta-title,.pricing-name,.pricing-price,.stat-number { color: var(--text-primary) !important; }
a { color: var(--accent-purple); }

/* Navigation */
#navbar,#navbar.nav-scrolled {
    background: linear-gradient(100deg,#24105d 0%,#3e178b 55%,#5424bd 100%) !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: 0 6px 18px rgba(31,13,79,.18) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}
.nav-inner { max-width: 1640px !important; min-height: 66px; padding: 10px 24px !important; }
.nav-logo img { height: 34px !important; }
.nav-links { gap: 24px !important; }
.nav-links a,.nav-dropdown-trigger,.nav-login { color: rgba(255,255,255,.86) !important; font-weight: 650 !important; }
.nav-links a:hover,.nav-dropdown-trigger:hover,.nav-dropdown.open .nav-dropdown-trigger,.nav-login:hover { color: #fff !important; }
.nav-dropdown-panel { background: rgba(255,255,255,.98) !important; border: 1px solid #ded7f7 !important; box-shadow: 0 18px 48px rgba(26,13,72,.18) !important; }
.nav-dd-label { color: var(--accent-purple) !important; border-color: #eee9ff !important; }
.nav-dd-group a { color: #34425d !important; }
.nav-dd-group a:hover { color: var(--accent-purple) !important; background: #f3efff !important; }
.nav-cta,.btn-primary,.btn-login { background: linear-gradient(135deg,#7138f1 0%,#315ff4 100%) !important; color: #fff !important; border: 0 !important; box-shadow: 0 7px 18px rgba(85,43,210,.22) !important; }
.nav-cta:hover,.btn-primary:hover,.btn-login:hover { box-shadow: 0 10px 24px rgba(85,43,210,.3) !important; }
#mobile-menu { background: #fff !important; border-top-color: #e8e3f8 !important; box-shadow: var(--dui-com-shadow) !important; }
#mobile-menu a,.mobile-engines-toggle { color: #34425d !important; border-bottom-color: #eef1f8 !important; }
#mobile-menu a:hover,.mobile-engines-toggle:hover { color: var(--accent-purple) !important; }
#mobile-menu-btn { color: #fff !important; }
#mobile-menu .mobile-cta { background: linear-gradient(135deg,#7138f1,#315ff4) !important; }

/* Layout and hero */
.dui-container { max-width: 1640px; }
.dui-section { padding: 72px 0; }
.dui-section-sm { padding: 42px 0; }
.surface-section { background: rgba(255,255,255,.62) !important; }
.hero-section,.page-hero { background: linear-gradient(135deg,#fff 0%,#fbfaff 62%,#f1efff 100%) !important; border-bottom: 1px solid #e0e5f4 !important; }
.hero-section { padding-top: 105px !important; padding-bottom: 46px !important; }
.page-hero { padding-top: 116px !important; padding-bottom: 48px !important; }
.hero-section::after,.page-hero::before { display: none !important; }
.hero-glow::before { background: radial-gradient(circle,rgba(255,138,31,.10),transparent 70%) !important; }
.hero-glow::after { background: radial-gradient(circle,rgba(109,53,237,.10),transparent 70%) !important; }
.hero-orb { opacity: .22 !important; filter: blur(70px) !important; }
.hero-ring { border-color: rgba(109,53,237,.10) !important; }
.hero-grid-lines { opacity: .16 !important; }
.hero-particles span { opacity: .25 !important; }
.hero-subtitle,.page-hero p,.section-subtitle { color: var(--text-secondary) !important; }
.eyebrow,.eyebrow-purple,.section-eyebrow { color: var(--accent-purple) !important; background: #f2edff !important; border-color: #ddd2ff !important; }
.btn-secondary { background: #fff !important; color: #192842 !important; border: 1px solid #ccd5eb !important; box-shadow: 0 5px 14px rgba(24,36,70,.07) !important; }
.btn-secondary:hover { color: var(--accent-purple) !important; border-color: #a98cf3 !important; }

/* Home page: approved two-column hero mockup */
.home-top-stage {
    width: min(1640px,calc(100% - 48px));
    margin: 92px auto 0;
    position: relative;
    overflow: hidden;
    border: 1px solid #d9dff2;
    border-radius: 22px;
    background:
        radial-gradient(circle at 3% 88%,rgba(109,53,237,.12),transparent 17rem),
        radial-gradient(circle at 94% 8%,rgba(255,138,31,.08),transparent 14rem),
        linear-gradient(135deg,#fff 0%,#fcfbff 56%,#f3f1ff 100%);
    box-shadow: 0 20px 54px rgba(37,24,82,.08);
}
.home-top-stage::before {
    content: '';
    position: absolute;
    left: -130px;
    bottom: -180px;
    width: 430px;
    height: 430px;
    border: 54px solid rgba(109,53,237,.055);
    border-radius: 50%;
    pointer-events: none;
}
.home-top-grid { display: grid; grid-template-columns: minmax(0,47%) minmax(0,53%); align-items: stretch; position: relative; z-index: 1; }
.home-top-grid .hero-section {
    min-width: 0;
    padding: 42px 34px 34px !important;
    align-items: flex-start;
    justify-content: center;
    text-align: left;
    background: transparent !important;
    border: 0 !important;
}
.home-top-grid .hero-content { max-width: 720px; width: 100%; }
.home-top-grid .hero-content > .eyebrow { margin: 0 0 20px; }
.home-top-grid .hero-title { font-size: clamp(38px,3.25vw,56px); line-height: 1.05; letter-spacing: -.04em; margin-bottom: 18px; }
.home-top-grid .hero-subtitle { max-width: 690px; margin: 0 0 26px; font-size: clamp(16px,1.24vw,19px); line-height: 1.48; }
.home-top-grid .hero-buttons { justify-content: flex-start; margin-bottom: 28px; gap: 14px; }
.home-top-grid .hero-buttons a { min-height: 50px; padding: 0 26px; }
.home-top-grid .trust-strip { justify-content: flex-start; gap: 12px 22px; }
.home-top-grid .trust-item { font-size: 13px; font-weight: 700; }
.home-top-grid .trust-item svg { padding: 7px; width: 34px; height: 34px; border-radius: 50%; background: #f0ebff; color: var(--accent-purple); }
.home-top-grid .dashboard-mockup {
    min-width: 0;
    width: auto;
    max-width: none;
    margin: 22px 22px 22px 0;
    padding: 0;
    display: flex;
    align-items: stretch;
    background: transparent !important;
    border: 0 !important;
}
.home-top-grid .dashboard-panel { width: 100%; padding: 18px; border-radius: 18px; box-shadow: 0 14px 34px rgba(50,35,112,.09) !important; }
.home-top-grid .dashboard-header { margin-bottom: 15px; }
.chart-range-tabs { display: flex; gap: 5px; flex-shrink: 0; }
.chart-range-tabs span { min-width: 38px; padding: 5px 9px; text-align: center; color: #64728b; background: #fff; border: 1px solid #dce3f2; border-radius: 9px; font-size: 10px; font-weight: 750; }
.chart-range-tabs .active { color: #fff; background: linear-gradient(135deg,#7138f1,#4b43f4); border-color: transparent; }
.home-top-grid .metric-tiles { gap: 10px; margin-bottom: 14px; }
.home-top-grid .metric-tile { padding: 14px 12px; border-radius: 12px; }
.home-top-grid .metric-label { min-height: 28px; margin-bottom: 5px; font-size: 10px; line-height: 1.35; }
.home-top-grid .metric-value { font-size: clamp(19px,1.55vw,27px); color: var(--text-primary) !important; }
.home-top-grid .dashboard-body { grid-template-columns: 1fr; gap: 0; }
.home-top-grid .chart-area { padding: 14px 16px 10px; }
.chart-preview-heading { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 6px; }
.chart-preview-heading .chart-title { margin: 0; color: var(--text-primary) !important; font-size: 14px; font-weight: 750; }
.chart-period { padding: 6px 10px; border: 1px solid #dce3f2; border-radius: 8px; color: #34425e; background: #fff; font-size: 11px; font-weight: 700; }
.portfolio-line-chart { display: block; width: 100%; height: 190px; overflow: visible; }
.portfolio-line-chart .chart-grid path { fill: none; stroke: #e7ebf5; stroke-width: 1; }
.portfolio-line-chart .chart-fill { fill: url(#portfolioChartFill); }
.portfolio-line-chart .chart-line { fill: none; stroke: #4f45f5; stroke-width: 3; stroke-linecap: round; stroke-linejoin: round; }
.portfolio-line-chart .chart-points circle { fill: #fff; stroke: #4f45f5; stroke-width: 3; }
.home-top-grid .chart-labels { padding-top: 2px; font-size: 10px; color: #71809a; }
.home-top-stage + .surface-section { padding-top: 30px; padding-bottom: 54px; background: transparent !important; }
.home-top-stage + .surface-section .section-title { font-size: clamp(28px,2.2vw,38px); margin-bottom: 8px; }
.home-top-stage + .surface-section .section-subtitle { margin-bottom: 24px; }
.home-top-stage + .surface-section .pillar-grid { gap: 14px; }
.home-top-stage + .surface-section .pillar-card { padding: 22px; display: grid; grid-template-columns: 50px minmax(0,1fr); column-gap: 15px; align-content: start; }
.home-top-stage + .surface-section .pillar-icon { grid-row: 1 / span 2; width: 48px; height: 48px; margin: 0; border-radius: 50%; }
.home-top-stage + .surface-section .pillar-card h3 { margin: 2px 0 8px; font-size: 18px; }
.home-top-stage + .surface-section .pillar-list { grid-column: 2; display: flex; flex-wrap: wrap; gap: 5px 14px; }
.home-top-stage + .surface-section .pillar-list li { width: calc(50% - 7px); padding: 0; font-size: 12px; line-height: 1.35; }
.nav-cta { background: linear-gradient(135deg,#ff9b28,#ff741b) !important; box-shadow: 0 7px 18px rgba(255,116,27,.26) !important; }

/* Cards and data surfaces */
.glass-card,.feature-card,.pillar-card,.engine-card,.marketplace-card,.pricing-card,.example-card,.example-thumb-card,.doc-card,.mission-pillar-card,.mission-vision-card,.punch-card,.feat-tile,.metric-tile,.dashboard-panel,.content-wrapper,.contact-info-card,.dui-contact-method,.faq-item,.legal-quicklinks,.home-newsletter-card,.home-cta-card,.login-glass-card,.updates-tile {
    background: rgba(255,255,255,.97) !important;
    border-color: var(--border-glass) !important;
    box-shadow: var(--dui-com-shadow) !important;
    color: var(--text-secondary) !important;
}
.glass-card:hover,.feature-card:hover,.pillar-card:hover,.engine-card:hover,.marketplace-card:hover,.pricing-card:hover,.example-card:hover,.doc-card:hover { background: #fff !important; border-color: var(--border-glass-hover) !important; box-shadow: 0 18px 40px rgba(34,24,78,.12) !important; }
.dashboard-mockup { background: linear-gradient(135deg,#fff,#f6f3ff) !important; border-color: #d9dff0 !important; }
.dashboard-header,.dashboard-body,.mini-table-row { border-color: #e7ebf5 !important; }
.metric-label,.chart-title,.mini-table-title,.stat-label { color: var(--text-muted) !important; }
.mini-table-domain,.mini-table-revenue,.example-domain { color: var(--text-primary) !important; }
.chart-area { background: #fafbff !important; border-color: #e6eaf5 !important; }
.chart-bar { background: linear-gradient(180deg,#7540ee,#4770f6) !important; }
.feature-icon,.engine-icon,.pillar-icon,.mission-pillar-icon,.mission-vision-icon,.feat-tile-icon,.dui-contact-icon { background: #f0ebff !important; color: var(--accent-purple) !important; border-color: #ded4ff !important; }
.engine-card p,.feature-card p,.marketplace-card p,.doc-card p,.mission-pillar-text,.mission-vision-text,.punch-card-text,.content-wrapper p,.content-wrapper li,.faq-answer p { color: var(--text-secondary) !important; }
.engine-link,.example-link,.content-wrapper a,.faq-question.active { color: var(--accent-purple) !important; }
.pricing-card.popular,.pricing-card.managed-highlight { border-color: #8c63ef !important; box-shadow: 0 15px 38px rgba(101,54,220,.15) !important; }
.pricing-badge,.managed-badge,.pricing-toggle-btn.active { background: var(--accent-purple) !important; color: #fff !important; }
.pricing-toggle { background: #edf0f8 !important; border-color: #dfe4f1 !important; }
.pricing-toggle-btn { color: #5d6a82 !important; }
.pricing-features li { color: var(--text-secondary) !important; border-color: #edf0f7 !important; }
.split-list li,.pillar-list li,.trust-item,.stat-chip { color: var(--text-secondary) !important; }
.stat-chip { background: #f7f5ff !important; border-color: #e3def5 !important; }

/* Long-form, form and legal pages */
.content-section { background: transparent !important; }
.content-wrapper { padding: 34px !important; }
.content-wrapper h2,.content-wrapper h3,.faq-question { color: var(--text-primary) !important; }
.content-wrapper code,.dui-code-input { background: #f4f6fb !important; color: #243451 !important; border-color: #dce3ef !important; }
.legal-quicklinks a { background: #f5f2ff !important; border-color: #ded5fb !important; color: var(--accent-purple) !important; }
input,textarea,select,.contact-form input,.contact-form textarea,.dui-contact-field input,.dui-contact-field textarea,.login-form-group input[type="text"],.login-form-group input[type="password"],.login-form-group input[type="email"] { background: #fff !important; color: var(--text-primary) !important; border-color: #cfd7e9 !important; }
input::placeholder,textarea::placeholder { color: #8995aa !important; }
input:focus,textarea:focus,select:focus { border-color: var(--accent-purple) !important; box-shadow: 0 0 0 3px rgba(109,53,237,.12) !important; }

/* Calls to action and footer */
.cta-section,.mission-quote-section { background: linear-gradient(135deg,#f2edff 0%,#fff 60%,#eef4ff 100%) !important; border-color: #ddd5f5 !important; }
.cta-section::before { opacity: .16 !important; }
footer { background: #fff !important; border-top-color: #dfe5f2 !important; color: var(--text-secondary) !important; }
.footer-wrap { padding-top: 44px !important; padding-bottom: 28px !important; }
.footer-col-title { color: var(--text-primary) !important; }
.footer-col-links a,.footer-brand p,.footer-bottom p,.footer-feature-link { color: var(--text-secondary) !important; }
.footer-col-links a:hover,.footer-feature-link:hover { color: var(--accent-purple) !important; }
.footer-social-icon { background: #f3efff !important; border-color: #ddd5fa !important; color: var(--accent-purple) !important; }
.footer-bottom { border-color: #e5e9f3 !important; }

/* Login: visual-only overrides; forms, routes and scripts remain unchanged. */
.login-page-wrapper { background: transparent !important; padding-top: 102px !important; }
.login-two-col { position: relative; z-index: 2; }
.login-card-header p,.updates-header p,.update-content,.updates-empty,.login-choice-card small,.login-register-link,.login-trust-item { color: var(--text-secondary) !important; }
.updates-header h2,.update-title,.login-card-header h1,.login-choice-card strong,.email-panel-heading h2,.login-form-group label { color: var(--text-primary) !important; }
.update-item { background: #f8f9ff !important; border-color: #e2e7f2 !important; }
.update-date { color: var(--accent-purple) !important; }
.login-choice-card { background: #fafbff !important; border-color: #dfe5f1 !important; }
.login-choice-card:hover,.login-choice-card:focus-visible { background: #f5f1ff !important; border-color: #a88bee !important; }
.email-login-panel { border-color: #e2e7f2 !important; }
.hero-anim[style*="fixed"] { opacity: .25 !important; }

#dui-cookie-banner,.dui-cookie-banner { background: #fff !important; color: var(--text-secondary) !important; border: 1px solid #dce3f2 !important; box-shadow: 0 12px 32px rgba(25,20,67,.16) !important; }
.dui-cookie-text { color: var(--text-secondary) !important; }
.dui-btn-accept { background: linear-gradient(135deg,var(--accent-purple),var(--accent-blue)) !important; color: #fff !important; border-color: transparent !important; }
.dui-btn-essential { background: #fff !important; color: var(--text-primary) !important; border-color: #aeb9cf !important; }
.dui-btn-essential:hover { background: #f4f1ff !important; color: var(--accent-purple) !important; border-color: #9a7be9 !important; }

@media (max-width:1024px) {
    .dui-container { padding-left: 20px; padding-right: 20px; }
    .dui-section { padding: 56px 0; }
    .home-top-stage { width: min(960px,calc(100% - 32px)); margin-top: 82px; }
    .home-top-grid { grid-template-columns: 1fr; }
    .home-top-grid .hero-section { padding: 38px 34px 22px !important; }
    .home-top-grid .dashboard-mockup { margin: 0 28px 28px; }
}
@media (max-width:768px) {
    .nav-inner { min-height: 58px; padding: 8px 16px !important; }
    .hero-section { padding-top: 86px !important; padding-bottom: 36px !important; }
    .page-hero { padding-top: 88px !important; padding-bottom: 36px !important; }
    .dui-section { padding: 44px 0; }
    .dui-section-sm { padding: 32px 0; }
    .content-wrapper { padding: 24px 20px !important; }
    .footer-brand { border-bottom-color: #e7eaf3 !important; }
    .login-page-wrapper { padding-top: 78px !important; }
    .home-top-stage { width: calc(100% - 20px); margin-top: 72px; border-radius: 17px; }
    .home-top-grid .hero-section { padding: 28px 20px 20px !important; }
    .home-top-grid .hero-title { font-size: clamp(34px,10vw,44px); }
    .home-top-grid .hero-buttons { align-items: stretch; }
    .home-top-grid .hero-buttons a { width: 100%; justify-content: center; }
    .home-top-grid .trust-strip { gap: 10px 14px; }
    .home-top-grid .dashboard-mockup { margin: 0 12px 14px; }
    .home-top-grid .dashboard-panel { padding: 12px; }
    .chart-range-tabs span { min-width: 32px; padding: 5px 6px; }
    .home-top-grid .metric-tiles { grid-template-columns: repeat(2,1fr); }
    .portfolio-line-chart { height: 145px; }
    .home-top-stage + .surface-section .pillar-grid { grid-template-columns: 1fr; }
    .home-top-stage + .surface-section .pillar-list li { width: 100%; }
}
@media (prefers-reduced-motion:reduce) {
    .hero-orb,.hero-ring,.hero-particles span { animation: none !important; }
}

/* V3 cohesion pass: every public page now shares the DomainUI Boost visual system. */
body {
    --text-primary: #050b16;
    --text-secondary: #24324a;
    --text-muted: #58677f;
    background-color: #f7f8ff !important;
    background-image:
        radial-gradient(circle at 8% 18%, rgba(109,53,237,.11) 0, transparent 23rem),
        radial-gradient(circle at 92% 24%, rgba(47,99,245,.09) 0, transparent 26rem),
        radial-gradient(circle at 48% 88%, rgba(255,138,31,.075) 0, transparent 24rem),
        linear-gradient(180deg,#f8f9ff 0%,#fff 48%,#f7f8ff 100%) !important;
    background-size: 118% 118%, 122% 122%, 120% 120%, 100% 100% !important;
    background-attachment: fixed !important;
    animation: duiAmbientBackground 22s ease-in-out infinite alternate;
}
@keyframes duiAmbientBackground {
    0% { background-position: -4% -2%, 104% 4%, 42% 106%, 0 0; }
    50% { background-position: 5% 8%, 94% 15%, 55% 94%, 0 0; }
    100% { background-position: 12% 1%, 88% 4%, 46% 87%, 0 0; }
}

/* Compact framed heroes, matching DomainUI.com's card-led landing page. */
body > .page-hero,
body > .hero-section {
    width: min(1640px,calc(100% - 48px));
    margin: 86px auto 18px !important;
    padding: 38px 28px 36px !important;
    border: 1px solid #d9dff2 !important;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: 0 18px 46px rgba(37,24,82,.075);
}
.home-top-grid > .hero-section {
    width: auto;
    margin: 0 !important;
    box-shadow: none;
}
.page-hero .dui-container { max-width: 1240px; }
.page-hero h1 { max-width: 1050px; margin: 0 auto 12px !important; font-size: clamp(34px,4vw,54px) !important; line-height: 1.06 !important; color: #050b16 !important; }
.page-hero p { max-width: 780px; margin: 0 auto !important; color: #24324a !important; font-size: 16px !important; }
.section-eyebrow { background: transparent !important; border: 0 !important; color: inherit !important; }
.section-eyebrow > .eyebrow,
.page-hero .eyebrow { display: inline-flex; width: auto; background: #f2edff !important; border: 1px solid #ddd2ff !important; color: #6330dc !important; }

/* Black/dark content text on light surfaces; branded accents and buttons stay coloured. */
.dui-section p,.dui-section li,.dui-section small,
.dui-section-sm p,.dui-section-sm li,.dui-section-sm small,
.content-section p,.content-section li,.content-section small,
.surface-section p,.surface-section li,.surface-section small,
.cta-section p,.mission-quote-section p,
.glass-card p,.glass-card li,.feature-card p,.engine-card p,.doc-card p,
.mission-pillar-text,.mission-vision-text,.punch-card-text,
.legal-quicklinks,.faq-answer p { color: #24324a !important; }
.dui-section h1,.dui-section h2,.dui-section h3,.dui-section h4,
.dui-section-sm h1,.dui-section-sm h2,.dui-section-sm h3,.dui-section-sm h4,
.content-section h1,.content-section h2,.content-section h3,.content-section h4,
.glass-card h1,.glass-card h2,.glass-card h3,.glass-card h4,
.feature-card h3,.engine-card h3,.doc-card h3 { color: #050b16 !important; }

/* Compact cards and section rhythm. */
.feature-grid,.engine-grid,.pillar-grid,.marketplace-grid,.examples-grid,.doc-grid { gap: 14px !important; }
.feature-card,.engine-card,.pillar-card,.marketplace-card,.example-card,.example-thumb-card,.doc-card { padding: 22px !important; border-radius: 16px !important; }
.feature-card h3,.engine-card h3,.pillar-card h3,.marketplace-card h3,.doc-card h3 { font-size: 18px !important; margin-bottom: 7px !important; }
.feature-card p,.engine-card p,.marketplace-card p,.doc-card p { font-size: 14px !important; line-height: 1.55 !important; }
.dui-section { padding: 52px 0 !important; }
.dui-section-sm { padding: 34px 0 !important; }

/* Monthly domain-sales report: convert its legacy dark surfaces to the shared light system. */
.sr-wrap { max-width: 1640px !important; padding: 108px 24px 64px !important; gap: 18px !important; }
.sr-title { color: #050b16 !important; font-size: clamp(30px,3vw,44px) !important; }
.sr-sub,.sr-card-b,.sr-editorial p,.sr-takeaway li,.sr-tbl td,.sr-sidebar-item,.sr-sidebar-item span { color: #24324a !important; }
.sr-back { color: #5e32d6 !important; background: #fff !important; border-color: #d8dff0 !important; }
.sr-back:hover { color: #4d20c2 !important; background: #f4f0ff !important; }
.sr-stat,.sr-card,.sr-editorial,.sr-sidebar-card {
    background: rgba(255,255,255,.97) !important;
    border: 1px solid #dce3f2 !important;
    box-shadow: 0 12px 30px rgba(34,24,78,.07) !important;
}
.sr-card,.sr-editorial,.sr-sidebar-card { border-radius: 15px !important; }
.sr-stat { border-radius: 13px !important; padding: 14px !important; }
.sr-card-h,.sr-editorial h3,.sr-sidebar-h,.sr-takeaway strong { color: #050b16 !important; border-color: #e4e9f3 !important; }
.sr-tbl th { color: #52617a !important; background: #f5f7fc !important; border-color: #e1e6f1 !important; }
.sr-tbl td,.sr-takeaway li { border-color: #edf0f6 !important; }
.sr-tbl tr:hover td { background: #faf9ff !important; }
.sr-sidebar-item:hover,.sr-sidebar-item.active { background: #f2edff !important; color: #5e32d6 !important; }
.sr-card-b[style*="color:#cbd5e1"],
.sr-card-b strong[style*="color:#f1f5f9"] { color: #24324a !important; }

/* Registration: same light cards, typography, controls and spacing as login. */
.register-wrapper { max-width: 1180px !important; padding: 102px 24px 42px !important; }
.register-container { gap: 18px !important; }
.reg-glass-card {
    background: rgba(255,255,255,.97) !important;
    border: 1px solid #dce3f2 !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 34px rgba(34,24,78,.08) !important;
    color: #24324a !important;
}
.features-card h2,.cta-card h2,.how-it-works-card h3,
.tier1-item,.register-choice-card strong,.email-register-panel h3,.step-content h4 { color: #050b16 !important; }
.features-card .subtitle,.feature-item,.tier2-item,.cta-card .tagline,.trust-badge p,
.register-choice-card small,.google-auth-copy,.google-legal,.login-link,.email-register-panel p,
.step-content p,.benefit-pill { color: #24324a !important; }
.register-choice-card,.email-register-panel,.benefit-pill {
    background: #fafbff !important;
    border-color: #dfe5f1 !important;
    color: #050b16 !important;
}
.register-choice-card:hover,.register-choice-card:focus-visible { background: #f5f1ff !important; border-color: #a88bee !important; color: #050b16 !important; box-shadow: 0 10px 24px rgba(62,34,132,.11) !important; }
.register-choice-icon { background: #f0ebff !important; border-color: #ded4ff !important; }
.cta-btn { background: linear-gradient(135deg,#7138f1,#315ff4) !important; color: #fff !important; box-shadow: 0 7px 18px rgba(85,43,210,.22) !important; }
.how-it-works-card { padding: 24px 30px !important; }
.step-arrow { color: #9ba7ba !important; }

@media (max-width:768px) {
    body > .page-hero,body > .hero-section { width: calc(100% - 20px); margin-top: 72px !important; padding: 28px 18px !important; border-radius: 17px; }
    .page-hero h1 { font-size: clamp(30px,9vw,42px) !important; }
    .dui-section { padding: 40px 0 !important; }
    .register-wrapper { padding: 78px 12px 28px !important; }
    .register-container { gap: 12px !important; }
    .reg-glass-card { padding: 24px 20px !important; }
    .sr-wrap { padding: 86px 12px 42px !important; }
}
@media (prefers-reduced-motion:reduce) {
    body { animation: none !important; }
}
