/* LandSeva — modern home page (shared base). Theme files set the --m-* variables.
   Everything is scoped to body.mod so other pages are untouched. */
body.mod {
    background:var(--m-bg); color:var(--m-text);
    font-family:'Plus Jakarta Sans','Noto Sans Devanagari',system-ui,sans-serif;
    -webkit-font-smoothing:antialiased;
    --g-text:var(--m-text); --g-text-2:var(--m-text-2); --g-muted:var(--m-muted); --g-border:var(--m-line);
    --g-white:var(--m-card); --g-surface:var(--m-card); --g-bg-alt:var(--m-bg-alt); --g-bg-alt2:var(--m-bg-alt);
    --g-green:var(--m-accent); --g-ink:var(--m-text); --g-radius:var(--m-radius);
    --g-shadow:var(--m-shadow); --g-shadow-lg:var(--m-shadow-lg);
}
body.mod h1, body.mod h2, body.mod h3, body.mod h4 { color:var(--m-text); letter-spacing:-.015em; }
body.mod p, body.mod li, body.mod small, body.mod label { color:var(--m-text-2); }
body.mod .pg-section--alt, body.mod .pg-section--alt2 { background:transparent; }

/* ── header / menu ───────────────────────────────────────────────────────── */
body.mod .utility-bar { background:var(--m-util-bg); color:var(--m-util-text); border-bottom:0; }
body.mod .topbar { background:var(--m-nav-bg) !important; backdrop-filter:saturate(1.6) blur(16px); border-bottom:1px solid var(--m-nav-line) !important; box-shadow:none; }
body.mod .topbar.scrolled { box-shadow:0 8px 30px rgba(15,19,48,.12); }
body.mod .brand, body.mod .brand-name { color:var(--m-nav-text); }
body.mod .brand-tagline { color:var(--m-nav-muted); }
body.mod .brand:hover, body.mod .brand:hover .brand-tagline { color:var(--m-accent); }
body.mod .nav-link, body.mod .nav-btn { color:var(--m-nav-text); border-radius:10px; border-bottom-color:transparent; font-weight:600; }
body.mod .nav-link:hover, body.mod .nav-btn:hover, body.mod .nav-item:hover > .nav-btn { background:var(--m-nav-hover); color:var(--m-nav-text); border-bottom-color:transparent; }
body.mod .nav-link.cur { color:var(--m-accent); background:var(--m-accent-soft); border-bottom-color:transparent; }
body.mod .dropdown, body.mod .hdr-login-menu { background:var(--m-card); border:1px solid var(--m-line); border-radius:16px; box-shadow:var(--m-shadow-lg); padding:8px; }
body.mod .dropdown a, body.mod .dropdown-btn, body.mod .hdr-login-menu a { color:var(--m-text); border-radius:10px; }
body.mod .dropdown a:hover, body.mod .dropdown-btn:hover, body.mod .hdr-login-menu a:hover { background:var(--m-accent-soft); color:var(--m-accent); }
body.mod .dropdown-label { color:var(--m-muted); }
body.mod .dropdown-desc { color:var(--m-muted); border-bottom-color:var(--m-line); }
body.mod .dropdown-divider { border-top-color:var(--m-line); }
body.mod .nav-search-btn { background:var(--m-btn-bg); color:var(--m-btn-text); border-radius:999px; box-shadow:var(--m-btn-shadow); }
body.mod .btn-new-app { color:var(--m-accent); border-color:var(--m-accent); border-radius:999px; }
body.mod .btn-new-app:hover { background:var(--m-accent); color:var(--m-on-accent); }
body.mod .btn-login-nav, body.mod .btn-quick, body.mod .menu-toggle { color:var(--m-nav-text); border-color:var(--m-nav-line); border-radius:999px; }
body.mod .menu-toggle { border-radius:12px; }
body.mod .btn-login-nav:hover, body.mod .btn-quick:hover, body.mod .menu-toggle:hover { background:var(--m-nav-hover); color:var(--m-nav-text); border-color:var(--m-nav-line); }
body.mod #hdrLoginBtn { background:var(--m-text) !important; color:var(--m-bg) !important; border-color:transparent; border-radius:999px; }
body.mod .hdr-user { color:var(--m-accent); }
body.mod .nav-lang { background:var(--m-nav-hover); border:0; border-radius:999px; }
body.mod .nav-lang a { color:var(--m-nav-text); }
body.mod .nav-lang a.active { background:var(--m-btn-bg); color:var(--m-btn-text); }
@media (max-width:1280px) {
    body.mod .hdr-nav { background:var(--m-nav-solid); border-bottom:1px solid var(--m-nav-line); box-shadow:var(--m-shadow-lg); }
    body.mod .nav-link, body.mod .nav-btn { border-radius:0; border-bottom:1px solid var(--m-nav-line) !important; }
    body.mod .dropdown { background:var(--m-nav-hover); border:0; box-shadow:none; border-radius:0; padding:0; }
    body.mod .dropdown a { color:var(--m-nav-text) !important; border-radius:0; border-bottom-color:var(--m-nav-line); }
    body.mod .dropdown a:hover { background:var(--m-accent-soft) !important; color:var(--m-accent) !important; }
    body.mod .dropdown-label, body.mod .dropdown-desc { color:var(--m-nav-muted) !important; }
    body.mod .mob-top-primary { background:var(--m-btn-bg); color:var(--m-btn-text) !important; border-radius:12px; }
    body.mod .mob-top-secondary { background:var(--m-nav-hover); border-color:var(--m-nav-line); color:var(--m-nav-text); border-radius:12px; }
    body.mod .mob-bottom a { color:var(--m-nav-text); }
    body.mod .mob-bottom a:hover { background:var(--m-nav-hover); color:var(--m-accent); }
    body.mod .mob-bottom .mob-login-btn { background:var(--m-btn-bg); color:var(--m-btn-text) !important; }
}
body.mod .svc-overlay { background:var(--m-overlay); }
body.mod .svc-overlay-panel { background:var(--m-card); border:1px solid var(--m-line); border-radius:22px; box-shadow:var(--m-shadow-lg); }
body.mod .svc-overlay-box { border-bottom-color:var(--m-line); }
body.mod .svc-overlay-box input:not(#x):not(#y) { color:var(--m-text); border:0 !important; box-shadow:none !important; background:transparent !important; }
body.mod .svc-overlay-close { background:var(--m-accent-soft); color:var(--m-text-2); }
body.mod .svc-overlay-results a { color:var(--m-text); }
body.mod .svc-overlay-results a:hover, body.mod .svc-overlay-results a.cur { background:var(--m-accent-soft); }
body.mod .svc-overlay-results a small, body.mod .svc-overlay-empty, body.mod .svc-overlay-hint { color:var(--m-muted); }
body.mod .svc-overlay-hint { border-top-color:var(--m-line); background:transparent; }

/* ── hero ────────────────────────────────────────────────────────────────── */
body.mod .hero { background:var(--m-hero-bg); border-bottom:1px solid var(--m-line); }
body.mod .hero::before { background:var(--m-hero-glow); animation:none; }
body.mod .hero::after { background:none; }
body.mod .hero-inner { padding-top:84px; padding-bottom:72px; }
body.mod .hero-eyebrow { background:var(--m-hero-chip-bg); border:1px solid var(--m-hero-chip-line); color:var(--m-hero-chip-text); box-shadow:none; font-weight:700; }
body.mod .hero-eyebrow-dot { background:var(--m-accent); box-shadow:0 0 0 4px var(--m-accent-soft); }
body.mod .hero-h1 { color:var(--m-hero-text); font-weight:800; letter-spacing:-.03em; text-shadow:none; font-size:clamp(2.6rem,6vw,4.4rem); }
body.mod .hero-h1-accent { background:var(--m-h1-accent); -webkit-background-clip:text; background-clip:text; color:transparent; text-shadow:none; letter-spacing:-.01em; }
body.mod .ls2-hero-lead { color:var(--m-hero-text-2); font-size:1.08rem; }
body.mod .ls2-search-box { background:var(--m-card); border:1px solid var(--m-line); border-radius:999px; box-shadow:var(--m-shadow-lg); }
body.mod .ls2-search-box input { background:transparent; color:var(--m-text); border:0; box-shadow:none; }
body.mod .ls2-search-box input::placeholder { color:var(--m-muted); }
body.mod .ls2-search-ico { opacity:.65; }
body.mod .ls2-search-btn, body.mod .hbtn-primary, body.mod .hcard-cta, body.mod .fpf-btn--dl, body.mod .ls2-cx-apply, body.mod .ls2-roleblock-cta .hbtn {
    background:var(--m-btn-bg); color:var(--m-btn-text) !important; border:0; border-radius:999px; box-shadow:var(--m-btn-shadow); font-weight:800;
}
body.mod .ls2-search-btn:hover, body.mod .hbtn-primary:hover, body.mod .hcard-cta:hover { filter:brightness(1.06); transform:translateY(-1px); }
body.mod .ls2-search-results { background:var(--m-card); border:1px solid var(--m-line); border-radius:18px; box-shadow:var(--m-shadow-lg); }
body.mod .ls2-chip { background:var(--m-hero-chip-bg); color:var(--m-hero-chip-text); border:1px solid var(--m-hero-chip-line); border-radius:999px; font-weight:600; backdrop-filter:blur(6px); }
body.mod .ls2-chip:hover { background:var(--m-card); color:var(--m-accent); border-color:var(--m-accent); transform:translateY(-2px); }
body.mod .ls2-role-btn { background:var(--m-hero-chip-bg); color:var(--m-hero-chip-text); border:1px solid var(--m-hero-chip-line); border-radius:18px; backdrop-filter:blur(6px); }
body.mod .ls2-role-btn small { color:var(--m-hero-text-2); }
body.mod .ls2-role-btn:hover { background:var(--m-card); color:var(--m-text); transform:translateY(-3px); box-shadow:var(--m-shadow-lg); }
body.mod .ls2-role-btn:hover small { color:var(--m-muted); }
body.mod .hero-photo-card { background:var(--m-card); border:1px solid var(--m-line); border-radius:28px; box-shadow:var(--m-shadow-lg); }
body.mod .hpc-glow { opacity:.5; }
body.mod .hpc-badge { background:var(--m-accent-soft); color:var(--m-accent); border:0; }
body.mod .hpc-title { color:var(--m-text); }
body.mod .hpc-desc { color:var(--m-text-2); }
body.mod .hpc-illus-wrap { background:linear-gradient(160deg,var(--m-accent-soft),transparent); border:0; border-radius:20px; }
body.mod .hero-trust-strip { border-top:1px solid var(--m-hero-chip-line); background:transparent; }
body.mod .hero-trust-item { background:var(--m-hero-chip-bg); color:var(--m-hero-chip-text); border:1px solid var(--m-hero-chip-line); border-radius:999px; box-shadow:none; }
body.mod .hero-trust-item .tick { color:var(--m-accent); }

/* ── section chrome ──────────────────────────────────────────────────────── */
body.mod .pg-section { padding-top:84px; padding-bottom:84px; }
body.mod .ls2-qab-wrap, body.mod .stats-band { background:transparent; border-color:var(--m-line); }
body.mod .sec-label { background:var(--m-accent-soft); color:var(--m-accent); border:0; font-weight:800; letter-spacing:.04em; }
body.mod .sec-head h2 { color:var(--m-text); font-weight:800; letter-spacing:-.025em; }
body.mod .sec-head p { color:var(--m-muted); }

/* ── cards ───────────────────────────────────────────────────────────────── */
body.mod .ls2-qab-item, body.mod .ls2-svc-card, body.mod .svc-cat, body.mod .ls2-cx-card, body.mod .ls2-feat,
body.mod .ls2-finder, body.mod .ls2-finder-row, body.mod .ls2-mist, body.mod .ls2-onb-card,
body.mod .ls2-tabpanel, body.mod .ls2-upd, body.mod .ls2-util-card, body.mod .ls2-vid-card,
body.mod .benefit-card, body.mod .blog-home-card, body.mod .blog-home-side-item, body.mod .faq-item, body.mod .hv-card,
body.mod .notice-card, body.mod .preview-box, body.mod .prob-card, body.mod .step-item, body.mod .testi-card,
body.mod .tmpl-card, body.mod .why-item, body.mod .stat-item, body.mod .form-preview, body.mod .raw-info, body.mod .hcard-app {
    background:var(--m-card); color:var(--m-text); border:1px solid var(--m-line); border-radius:var(--m-radius); box-shadow:var(--m-shadow);
    transition:transform .25s, box-shadow .25s, border-color .25s;
}
body.mod .ls2-qab-item:hover, body.mod .ls2-svc-card:hover, body.mod .svc-cat:hover, body.mod .ls2-cx-card:hover, body.mod .ls2-feat:hover,
body.mod .ls2-finder-row:hover, body.mod .benefit-card:hover, body.mod .blog-home-card:hover, body.mod .testi-card:hover,
body.mod .tmpl-card:hover, body.mod .why-item:hover, body.mod .ls2-vid-card:hover, body.mod .hv-card:hover {
    transform:translateY(-4px); box-shadow:var(--m-shadow-lg); border-color:var(--m-line-hi);
}
body.mod .ls2-svc-card *, body.mod .why-item *, body.mod .tmpl-card *, body.mod .testi-card *, body.mod .faq-item *, body.mod .step-item *, body.mod .benefit-card *, body.mod .ls2-cx-card * { color:inherit; }
body.mod .ls2-svc-card, body.mod .why-item, body.mod .tmpl-card, body.mod .testi-card, body.mod .faq-item, body.mod .step-item, body.mod .benefit-card, body.mod .ls2-cx-card { color:var(--m-text-2); }
body.mod .ls2-svc-card strong, body.mod .ls2-svc-card h3, body.mod .why-item h3, body.mod .tmpl-card h3, body.mod .step-item h3, body.mod .benefit-card h3, body.mod .ls2-cx-card h3, body.mod .faq-item summary { color:var(--m-text); }
body.mod .ls2-tab { background:var(--m-card); color:var(--m-text-2); border:1px solid var(--m-line); border-radius:999px; }
body.mod .ls2-tab[aria-selected="true"], body.mod .ls2-tab.active { background:var(--m-text); color:var(--m-bg); border-color:var(--m-text); }
body.mod .ls2-svc-ico, body.mod .tmpl-icon, body.mod .why-icon, body.mod .benefit-icon, body.mod .svc-cat-icon, body.mod .stat-icon, body.mod .ls2-qab-ico, body.mod .prob-card-icon {
    background:var(--m-accent-soft) !important; border:0; border-radius:14px; box-shadow:none;
}
body.mod .step-num, body.mod .ls2-upd-badge, body.mod .blog-home-cat { background:var(--m-btn-bg) !important; color:var(--m-btn-text) !important; box-shadow:var(--m-btn-shadow); }
body.mod .stat-num { color:var(--m-accent); }
body.mod .stat-lbl { color:var(--m-muted); }
body.mod .testi-stars { color:#f59e0b; }
body.mod .hcard-head, body.mod .form-preview-head, body.mod .preview-box-head, body.mod .notice-card-head, body.mod .prob-card-head, body.mod .svc-cat-head, body.mod .benefit-head { background:var(--m-accent-soft); color:var(--m-text); border-color:var(--m-line); }
body.mod .hbtn-outline, body.mod .ls2-cx-learn { background:transparent; color:var(--m-accent); border:1px solid var(--m-line-hi); border-radius:999px; }
body.mod .ls2-wa-btn, body.mod .fpf-btn, body.mod .ls2-roleblock-cta a { border-radius:999px; }
body.mod .ls2-wa { background:var(--m-card); border:1px solid var(--m-line); border-radius:24px; box-shadow:var(--m-shadow-lg); }
body.mod .ls2-wa-txt, body.mod .ls2-wa-txt * { color:var(--m-text) !important; }
body.mod .ls2-roleblock { border-radius:28px; }
body.mod .final-cta { background:var(--m-hero-bg); border-radius:28px; border:1px solid var(--m-line); }
body.mod .final-cta * { color:var(--m-hero-text); }
body.mod .svc-list a, body.mod .ls2-cx-links a { color:var(--m-text); }
body.mod .svc-list a:hover, body.mod .ls2-cx-links a:hover { color:var(--m-accent); }
body.mod input:not(#svcSearch):not(#x), body.mod select, body.mod textarea { background:var(--m-card); color:var(--m-text); border:1px solid var(--m-line-hi); border-radius:12px; }
body.mod input:not(#svcSearch):focus, body.mod select:focus, body.mod textarea:focus { border-color:var(--m-accent); box-shadow:0 0 0 4px var(--m-accent-soft); outline:0; }
body.mod .site-footer { background:var(--m-footer-bg); border-top:1px solid var(--m-line); }
body.mod .hero-h1 { font-size:clamp(2.4rem,5vw,3.8rem); }

/* role blocks keep their own dark panels + white text in every design */
body.mod .ls2-roleblock { color:#fff; box-shadow:var(--m-shadow-lg); border:0; }
body.mod .ls2-roleblock h2 { color:#fff; }
body.mod .ls2-roleblock > p { color:rgba(255,255,255,.82); }
body.mod .ls2-roleblock .ls2-feat { background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.2); box-shadow:none; border-radius:18px; }
body.mod .ls2-roleblock .ls2-feat:hover { transform:none; border-color:rgba(255,255,255,.4); box-shadow:none; }
body.mod .ls2-roleblock .ls2-feat strong { color:#fff; }
body.mod .ls2-roleblock .ls2-feat span { color:rgba(255,255,255,.75); }
body.mod .ls2-roleblock .ls2-feat--usp { background:rgba(250,204,21,.16); border-color:rgba(250,204,21,.55); }
body.mod .ls2-roleblock .ls2-feat--usp strong { color:#fde68a; }
body.mod .ls2-roleblock-cta a.sub { color:rgba(255,255,255,.85); }

/* mobile menu: header.css forces white text with `#hdrNav … !important`, so match that specificity */
@media (max-width:1280px) {
    body.mod #hdrNav .mob-top-primary { color:var(--m-btn-text) !important; background:var(--m-btn-bg) !important; }
    body.mod #hdrNav .mob-top-secondary { color:var(--m-nav-text) !important; background:var(--m-nav-hover) !important; border:1px solid var(--m-nav-line) !important; }
    body.mod #hdrNav .mob-bottom a { color:var(--m-nav-text) !important; border-bottom-color:var(--m-nav-line) !important; }
    body.mod #hdrNav .mob-bottom a:hover { color:var(--m-accent) !important; background:var(--m-accent-soft) !important; }
    body.mod #hdrNav .mob-bottom .mob-login-btn { background:var(--m-btn-bg) !important; color:var(--m-btn-text) !important; border:0 !important; border-radius:14px !important; }
    body.mod #hdrNav .mob-bottom .mob-login-role { background:transparent !important; color:var(--m-nav-text) !important; border:1.5px solid var(--m-line-hi) !important; }
    body.mod #hdrNav .mob-bottom .mob-login-role:hover { background:var(--m-accent-soft) !important; color:var(--m-accent) !important; border-color:var(--m-accent) !important; }
    body.mod #hdrNav .mob-bottom .nav-lang a { border-bottom:0 !important; width:auto !important; padding:6px 14px !important; color:var(--m-nav-text) !important; }
    body.mod #hdrNav .mob-bottom .nav-lang a.active { background:var(--m-btn-bg) !important; color:var(--m-btn-text) !important; }
}
@media (max-width:1280px) {
    body.mod .hdr-nav { border-top:1px solid var(--m-nav-line) !important; }
    body.mod #hdrNav .mob-top-primary { border:0 !important; outline-color:var(--m-accent); }
}

/* Logged-in pages: the same palette drives the shared --ls-* tokens (header.css derives --primary etc. from them).
   Needs the class on <html>, so it does not touch the public home page, which only sets it on <body>. */
html.mod {
    --ls-bg:var(--m-bg); --ls-surface:var(--m-card); --ls-surface-soft:var(--m-nav-hover);
    --ls-text:var(--m-text); --ls-muted:var(--m-muted); --ls-border:var(--m-line);
    --ls-primary:var(--m-accent); --ls-primary-dark:var(--m-accent); --ls-accent:var(--m-accent);
}
