/* Eduschool public landing v2 — scoped to avoid changing authenticated/public utility pages. */
.landing-v2 {
  --landing-navy: #0a2540;
  --landing-blue: #155eef;
  --landing-blue-dark: #0f46b8;
  --landing-orange: #f97316;
  --landing-teal: #0f766e;
  --landing-ink: #0f172a;
  --landing-body: #475569;
  --landing-muted: #64748b;
  --landing-line: #dbe4f0;
  --landing-surface: #f5f8fc;
  --landing-pale: #edf5ff;
  font-family: "Manrope", "Segoe UI", sans-serif;
  color: var(--landing-body);
  overflow-x: clip;
}

.landing-v2 h1,.landing-v2 h2,.landing-v2 h3,.landing-v2 h4,.landing-v2 h5,.landing-v2 h6,
.landing-v2 .brand-text strong { font-family: "Manrope", "Segoe UI", sans-serif; color: var(--landing-ink); }
.landing-v2 .public-container { width: min(1180px, calc(100% - 40px)); }
.landing-v2 .public-nav { background: rgba(255,255,255,.92); border-color: rgba(219,228,240,.82); }
.landing-v2 .public-nav-inner { min-height: 76px; }
.landing-v2 .brand-text strong { font-size: 19px; font-weight: 800; letter-spacing: -.03em; }
.landing-v2 .public-nav-links { gap: 0; }
.landing-v2 .public-nav-links a { color: #475569; font-size: 13px; font-weight: 700; padding: 11px 13px; }
.landing-v2 .public-nav-links a:hover,.landing-v2 .public-nav-links a.active { color: var(--landing-blue); }
.public-client-link { color: var(--landing-navy)!important; font-size: 13px; font-weight: 800; text-decoration: none; padding: 10px 6px; }
.public-demo-cta { background:#fff!important; border-color:#b8cae6!important; box-shadow:none!important; color:var(--landing-blue)!important; min-height:42px; padding:11px 17px; font-size:13px; }
.landing-v2 .btn-edu { border-radius: 12px; min-height: 50px; padding: 15px 21px; font-weight: 800; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.landing-v2 .btn-edu:hover { transform: translateY(-2px); }
.landing-v2 .btn-edu-primary { background: var(--landing-blue); box-shadow: 0 14px 30px rgba(21,94,239,.22); }
.landing-v2 .btn-edu-primary:hover { background: var(--landing-blue-dark); }
.landing-btn-secondary { color: var(--landing-navy)!important; background: #fff; border-color: #cbd8e8; }
.landing-btn-secondary:hover { border-color: var(--landing-blue); color: var(--landing-blue)!important; }

.landing-notice { align-items: center; background: #fff7ed; border: 1px solid #fed7aa; border-radius: 14px; color: #9a3412; display: flex; gap: 12px; margin-top: 20px; padding: 14px 16px; }
.landing-notice i { font-size: 20px; }.landing-notice div { display: grid; gap: 2px; }.landing-notice span { font-size: 13px; }

.landing-hero { background: radial-gradient(circle at 84% 20%, rgba(21,94,239,.11), transparent 31%), linear-gradient(180deg,#fff 0%,#f7faff 100%); padding: 64px 0 70px; position: relative; }
.landing-hero-grid { align-items: center; display: grid; gap: clamp(36px,4vw,60px); grid-template-columns: minmax(0,1.08fr) minmax(450px,.92fr); }
.landing-hero-copy { min-width: 0; }
.landing-eyebrow,.landing-kicker { align-items: center; color: var(--landing-blue); display: inline-flex; font-size: 12px; font-weight: 800; gap: 8px; letter-spacing: .08em; text-transform: uppercase; }
.landing-eyebrow { background: #eef4ff; border: 1px solid #d8e5ff; border-radius: 999px; letter-spacing: .03em; padding: 8px 12px; text-transform: none; }
.landing-hero h1 { font-size: clamp(42px,4.5vw,62px); font-weight: 800; letter-spacing: -.055em; line-height: 1.04; margin: 20px 0 23px; max-width: 720px; text-wrap: balance; }
.landing-hero h1 span { color: var(--landing-blue); }
.landing-hero h1 .landing-hero-main { color:var(--landing-navy); display:block; }.landing-no-break { color:inherit; font-weight:inherit; white-space:nowrap; }
.landing-hero-copy>p { color: var(--landing-body); font-size: 17px; line-height: 1.78; margin: 0; max-width: 670px; }
.landing-actions { align-items: center; display: flex; flex-wrap: wrap; gap: 12px; margin-top: 30px; }
.landing-assurances { color: #52647a; display: grid; font-size: 11px; font-weight: 700; gap: 10px; grid-template-columns:repeat(3,minmax(0,1fr)); margin-top: 24px; }
.landing-assurances span { align-items: center; display: inline-flex; gap: 7px; }.landing-assurances i { color: var(--landing-teal); font-size: 15px; }

.landing-product-stage { min-width: 0; perspective: 1400px; position: relative; }
.landing-window { background: #fff; border: 1px solid #d7e3f0; border-radius: 24px; box-shadow: 0 38px 90px rgba(10,37,64,.18); overflow: hidden; transform: rotateY(-2deg) rotateX(1deg); }
.landing-window-bar { align-items: center; background: #f8fafc; border-bottom: 1px solid #e4ebf4; display: flex; gap: 7px; min-height: 45px; padding: 0 16px; }
.landing-window-bar>span { background: #cbd5e1; border-radius: 50%; height: 8px; width: 8px; }.landing-window-bar>span:first-child { background: #fb923c; }.landing-window-bar strong { color: #64748b; font-size: 10px; margin-left: 8px; }
.landing-window-body { display: grid; grid-template-columns: 138px minmax(0,1fr); min-height: 410px; }
.landing-mini-sidebar { background: var(--landing-navy); color: rgba(255,255,255,.7); display: grid; gap: 8px; padding: 18px 12px; align-content: start; }
.landing-mini-brand { align-items: center; color: #fff; display: flex; font-size: 11px; gap: 5px; margin: 0 3px 18px; }.landing-mini-brand .brand-mark { transform: scale(.58); transform-origin: left center; width: 32px; margin-right: -8px; }
.landing-mini-sidebar>span { align-items: center; border-radius: 8px; display: flex; font-size: 9px; gap: 7px; padding: 9px; }.landing-mini-sidebar>span.active { background: rgba(255,255,255,.11); color: #fff; }
.landing-workspace { background: #f7f9fc; padding: 25px; }
.landing-workspace-head { align-items: center; display: flex; justify-content: space-between; margin-bottom: 22px; }.landing-workspace-head div { display: grid; }.landing-workspace-head small { color: #94a3b8; font-size: 9px; }.landing-workspace-head b { color: var(--landing-ink); font-size: 13px; }.landing-workspace-head>span { background: #fff; border: 1px solid #e2e8f0; border-radius: 9px; color: var(--landing-blue); display: grid; height: 32px; place-items: center; width: 32px; }
.landing-workspace-grid { display: grid; gap: 12px; grid-template-columns: repeat(2,minmax(0,1fr)); }.landing-workspace-grid article { align-items: center; background: #fff; border: 1px solid #e5ebf3; border-radius: 13px; display: flex; gap: 11px; min-height: 86px; padding: 13px; }.landing-workspace-grid article>i { background: #eef4ff; border-radius: 10px; color: var(--landing-blue); display: grid; flex: 0 0 auto; font-size: 17px; height: 38px; place-items: center; width: 38px; }.landing-workspace-grid div { display: grid; gap: 3px; }.landing-workspace-grid small { color: #718096; font-size: 9px; }.landing-workspace-grid strong { color: #334155; font-size: 11px; line-height: 1.35; }
.landing-activity { background: #fff; border: 1px solid #e5ebf3; border-radius: 13px; margin-top: 12px; padding: 15px; }.landing-activity>div:first-child { display: flex; justify-content: space-between; gap: 10px; }.landing-activity span,.landing-activity b { font-size: 9px; }.landing-activity span { color: #94a3b8; }.landing-activity b { color: #334155; }.landing-progress { background: #e8eef6; border-radius: 999px; height: 7px; margin-top: 12px; overflow: hidden; }.landing-progress i { background: linear-gradient(90deg,var(--landing-blue),#38bdf8); border-radius: inherit; display: block; height: 100%; width: 74%; }
.landing-float-note { align-items: center; background: #fff; border: 1px solid #dbe5f1; border-radius: 14px; bottom: -25px; box-shadow: 0 18px 45px rgba(10,37,64,.16); display: flex; gap: 10px; left: -25px; padding: 13px 15px; position: absolute; }.landing-float-note>i { color: var(--landing-teal); font-size: 25px; }.landing-float-note div { display: grid; }.landing-float-note strong { color: var(--landing-navy); font-size: 11px; }.landing-float-note span { color: #64748b; font-size: 9px; }

.landing-section { padding: 94px 0; scroll-margin-top: 84px; }
.landing-section-head { align-items: end; display: flex; gap: 28px; justify-content: space-between; margin-bottom: 38px; }.landing-section-head.centered { align-items: center; display: flex; flex-direction: column; margin-inline: auto; max-width: 790px; text-align: center; }.landing-section-head h2,.landing-faq-grid h2 { font-size: clamp(30px,4vw,48px); font-weight: 800; letter-spacing: -.045em; line-height: 1.14; margin: 11px 0 0; max-width: 760px; text-wrap: balance; }.landing-section-head>p,.landing-section-head>div>p { color: var(--landing-muted); line-height: 1.75; margin: 9px 0 0; max-width: 560px; }.landing-section-head.centered>p { margin: 0; max-width: 680px; }
.landing-solutions { background: #fff; }
.landing-benefit-grid { display: grid; gap: 18px; grid-template-columns: repeat(3,minmax(0,1fr)); }.landing-benefit-grid article { border: 1px solid var(--landing-line); border-radius: 20px; min-height: 260px; padding: 29px; transition: transform .2s ease,box-shadow .2s ease; }.landing-benefit-grid article:hover { box-shadow: 0 20px 50px rgba(10,37,64,.1); transform: translateY(-3px); }.landing-benefit-grid h3 { font-size: 19px; font-weight: 800; margin: 26px 0 10px; }.landing-benefit-grid p { color: #52647a; font-size: 14px; line-height: 1.75; margin: 0; }.landing-icon { background: #edf4ff; border-radius: 14px; color: var(--landing-blue); display: grid; font-size: 24px; height: 52px; place-items: center; width: 52px; }.landing-icon.warm { background: #fff2e8; color: var(--landing-orange); }.landing-icon.teal { background: #e9f7f4; color: var(--landing-teal); }

.landing-demo-section { background: var(--landing-navy); color: #fff; overflow: hidden; position: relative; }.landing-demo-section::before { background: radial-gradient(circle,rgba(56,189,248,.18),transparent 68%); content:""; height: 620px; position: absolute; right: -230px; top: -290px; width: 620px; }.landing-demo-section .landing-section-head { position: relative; }.landing-demo-section h2 { color: #fff; }.landing-demo-section .landing-section-head p { color: rgba(255,255,255,.67); }.landing-kicker.light { color: #7dd3fc; }
.landing-demo-grid { display: grid; gap: 24px; grid-template-columns: 340px minmax(0,1fr); position: relative; }.landing-role-tabs { display: grid; gap: 10px; }.landing-role-tabs button { align-items: center; background: transparent; border: 1px solid rgba(255,255,255,.13); border-radius: 15px; color: rgba(255,255,255,.68); display: grid; gap: 12px; grid-template-columns: 40px 1fr auto; min-height: 78px; padding: 14px; text-align: left; transition: background .2s,border .2s; }.landing-role-tabs button:hover,.landing-role-tabs button.active { background: rgba(255,255,255,.1); border-color: rgba(125,211,252,.65); color: #fff; }.landing-role-tabs button>i:first-child { background: rgba(255,255,255,.08); border-radius: 10px; display: grid; font-size: 18px; height: 40px; place-items: center; }.landing-role-tabs button span { display: grid; }.landing-role-tabs strong { font-size: 13px; }.landing-role-tabs small { color: inherit; font-size: 10px; opacity: .7; }
.landing-demo-panel { background: #fff; border-radius: 22px; color: var(--landing-body); min-height: 332px; padding: 30px; }.landing-demo-top { align-items: center; display: flex; justify-content: space-between; }.landing-demo-top>span:first-child { color: var(--landing-blue); font-size: 10px; font-weight: 800; letter-spacing: .1em; }.landing-live-dot { align-items: center; color: var(--landing-teal); display: flex; font-size: 10px; font-weight: 800; gap: 6px; }.landing-live-dot i { animation: landing-pulse 1.8s infinite; background: #10b981; border-radius: 50%; height: 7px; width: 7px; }.landing-demo-panel h3 { font-size: 26px; font-weight: 800; letter-spacing: -.035em; margin: 27px 0 9px; }.landing-demo-panel>p { color: var(--landing-muted); font-size: 14px; line-height: 1.7; max-width: 680px; }.landing-demo-cards { display: flex; flex-wrap: wrap; gap: 9px; margin: 23px 0; }.landing-demo-cards span { background: var(--landing-surface); border: 1px solid #e2e8f0; border-radius: 10px; color: #334155; font-size: 11px; font-weight: 700; padding: 10px 12px; }.landing-demo-cards i { color: var(--landing-blue); margin-right: 6px; }
.landing-inline-link { align-items: center; color: var(--landing-blue)!important; display: inline-flex; font-size: 12px; font-weight: 800; gap: 7px; text-decoration: none; }

.landing-highlight-grid { display: grid; gap: 16px; grid-template-columns: repeat(3,minmax(0,1fr)); }.landing-feature-card { align-items: start; border: 1px solid var(--landing-line); border-radius: 18px; display: grid; gap: 15px; grid-template-columns: auto 1fr; min-height: 214px; padding: 23px; }.landing-module-icon { background: color-mix(in srgb,var(--module-accent) 12%,white); border-radius: 13px; color: var(--module-accent); display: grid; flex: 0 0 auto; font-size: 22px; height: 48px; place-items: center; width: 48px; }.landing-feature-card small,.landing-feature-row small { color: var(--landing-blue); font-size: 9px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }.landing-feature-card h3 { font-size: 16px; font-weight: 800; line-height: 1.42; margin: 7px 0 8px; }.landing-feature-card p { color: var(--landing-muted); font-size: 12px; line-height: 1.65; margin: 0; }
.landing-all-features { background: var(--landing-surface); border: 1px solid #e3eaf3; border-radius: 24px; margin-top: 42px; padding: 28px; }.landing-all-features-head { align-items: center; display: grid; gap: 30px; grid-template-columns: 1fr minmax(390px,.85fr); margin-bottom: 22px; }.landing-all-features-head h3 { font-size: 21px; font-weight: 800; margin: 0 0 5px; }.landing-all-features-head p { color: var(--landing-muted); font-size: 12px; margin: 0; }.landing-v2 .feature-search { border-radius: 12px; box-shadow: none; padding: 12px 14px; }.landing-v2 .feature-search-wrap { position: static; }.landing-feature-list { display: grid; gap: 10px; grid-template-columns: repeat(2,minmax(0,1fr)); }.landing-feature-row { align-items: center; background: #fff; border: 1px solid #e2e8f0; border-radius: 13px; display: grid; gap: 12px; grid-template-columns: auto 1fr auto; min-height: 94px; padding: 14px; }.landing-feature-row.is-hidden { display: none; }.landing-module-icon.compact { border-radius: 10px; font-size: 17px; height: 38px; width: 38px; }.landing-feature-row h4 { font-size: 12px; font-weight: 800; line-height: 1.35; margin: 3px 0; }.landing-feature-row p { color: var(--landing-muted); font-size: 9px; margin: 0; }.landing-feature-row>i { color: #94a3b8; }.landing-empty { align-items: center; color: var(--landing-muted); display: flex; flex-direction: column; gap: 5px; justify-content: center; padding: 35px; text-align: center; }.landing-empty i { font-size: 25px; }.landing-empty strong { color: var(--landing-ink); }

.landing-process { background: #f7f9fc; }.landing-steps { counter-reset: step; display: grid; gap: 0; grid-template-columns: repeat(3,minmax(0,1fr)); }.landing-steps article { border-top: 1px solid #cfd9e6; padding: 26px 30px 0 0; position: relative; }.landing-steps article:not(:last-child)::after { background: #cfd9e6; content:""; height: 1px; position: absolute; right: 0; top: -1px; width: 20px; }.landing-steps span { align-items: center; background: var(--landing-navy); border-radius: 50%; color: #fff; display: flex; font-size: 11px; font-weight: 800; height: 34px; justify-content: center; margin-top: -43px; width: 34px; }.landing-steps h3 { font-size: 17px; font-weight: 800; margin: 26px 0 9px; }.landing-steps p { color: var(--landing-muted); font-size: 13px; line-height: 1.7; max-width: 310px; }

.landing-android { background: #fff; }.landing-android-panel { align-items: center; background: linear-gradient(135deg,#071e38,#0d4a72); border-radius: 26px; color: #fff; display: grid; gap: 60px; grid-template-columns: 260px minmax(0,1fr); overflow: hidden; padding: 55px 70px; position: relative; }.landing-android-panel::after { background: radial-gradient(circle,rgba(56,189,248,.25),transparent 66%); content:""; height: 480px; position: absolute; right: -120px; top: -190px; width: 480px; }.landing-phone { display: grid; place-items: center; position: relative; z-index: 1; }.landing-phone>div { aspect-ratio: 9/15; background: linear-gradient(160deg,#fff,#ddecff); border: 8px solid #17283c; border-radius: 34px; box-shadow: 0 28px 60px rgba(0,0,0,.34); color: var(--landing-navy); display: flex; flex-direction: column; gap: 9px; justify-content: center; max-width: 205px; padding: 24px; text-align: center; transform: rotate(-4deg); }.landing-phone i { color: var(--landing-blue); font-size: 48px; }.landing-phone strong { font-size: 14px; }.landing-phone span { color: #64748b; font-size: 10px; }.landing-android-panel>div:last-child { position: relative; z-index: 1; }.landing-android h2 { color: #fff; font-size: clamp(31px,4vw,49px); font-weight: 800; letter-spacing: -.045em; line-height: 1.1; margin: 12px 0 15px; }.landing-android p { color: rgba(255,255,255,.7); line-height: 1.75; max-width: 670px; }.landing-btn-sky { background: #38bdf8; color: #082f49!important; }.landing-btn-white { background: #fff; color: var(--landing-navy)!important; }.landing-btn-outline-white { border-color: rgba(255,255,255,.32); color: #fff!important; }.landing-file-meta { display: grid; }.landing-file-meta strong { color: #fff; font-size: 12px; }.landing-file-meta small { color: rgba(255,255,255,.55); font-size: 9px; }

.landing-faq-grid { align-items: start; display: grid; gap: 90px; grid-template-columns: .7fr 1.3fr; }.landing-faq-grid>div:first-child>p { color: var(--landing-muted); line-height: 1.75; margin: 14px 0 22px; }.faq-list { border-top: 1px solid var(--landing-line); }.faq-list details { border-bottom: 1px solid var(--landing-line); }.faq-list summary { align-items: center; color: var(--landing-ink); cursor: pointer; display: flex; font-size: 14px; font-weight: 800; justify-content: space-between; list-style: none; min-height: 72px; padding: 18px 3px; }.faq-list summary::-webkit-details-marker { display: none; }.faq-list summary i { color: var(--landing-blue); transition: transform .2s ease; }.faq-list details[open] summary i { transform: rotate(45deg); }.faq-list details p { color: var(--landing-muted); font-size: 13px; line-height: 1.75; margin: -4px 0 22px; max-width: 680px; }

.landing-final-cta { background: var(--landing-blue); color: #fff; padding: 70px 0; }.landing-final-cta>.public-container { align-items: center; display: flex; gap: 30px; justify-content: space-between; }.landing-final-cta span { color: #bfdbfe; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }.landing-final-cta h2 { color: #fff; font-size: clamp(27px,3.5vw,43px); font-weight: 800; letter-spacing: -.04em; margin: 9px 0 0; max-width: 720px; }.landing-final-cta .landing-actions { flex: 0 0 auto; margin: 0; }

.landing-v2 .public-footer { background: #071a2e; color: rgba(255,255,255,.65); padding: 68px 0 25px; }.landing-footer-grid { align-items: start; display: grid; gap: 40px; grid-template-columns: 2fr repeat(3,1fr); }.landing-footer-brand p { color: rgba(255,255,255,.58); font-size: 12px; line-height: 1.75; margin: 18px 0; max-width: 450px; }.landing-v2 .public-footer .brand-text strong { color: #fff; }.landing-v2 .public-footer .brand-text span { color: rgba(255,255,255,.5); }.landing-footer-contact { display: grid; font-size: 11px; gap: 7px; }.landing-footer-contact a { color: rgba(255,255,255,.65); text-decoration: none; }.landing-footer-contact i { color: #7dd3fc; margin-right: 5px; }.landing-footer-column { display: grid; gap: 11px; }.landing-footer-column strong { color: #fff; font-size: 12px; margin-bottom: 6px; }.landing-footer-column a,.landing-footer-column span { color: rgba(255,255,255,.58); font-size: 11px; text-decoration: none; }.landing-footer-column a:hover { color: #fff; }.landing-footer-bottom { border-top: 1px solid rgba(255,255,255,.1); display: flex; font-size: 9px; justify-content: space-between; margin-top: 45px; padding-top: 22px; }
.mobile-demo-link { color: var(--landing-blue)!important; }

@keyframes landing-pulse { 0%,100%{ box-shadow:0 0 0 0 rgba(16,185,129,.35)} 50%{ box-shadow:0 0 0 6px rgba(16,185,129,0)} }

@media (max-width: 1040px) {
  .landing-hero-grid { grid-template-columns: 1fr; }
  .landing-product-stage { margin-inline: auto; max-width: 720px; width: 100%; }
  .landing-demo-grid { grid-template-columns: 270px minmax(0,1fr); }
  .landing-highlight-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .landing-android-panel { gap: 35px; grid-template-columns: 200px 1fr; padding: 45px; }
  .landing-faq-grid { gap: 50px; }
  .landing-footer-grid { grid-template-columns: 2fr repeat(2,1fr); }.landing-footer-column:last-child { grid-column: 2; }
  .public-demo-cta { display: none; }
}

@media (max-width: 768px) {
  .landing-v2 .public-container { width: min(100% - 40px,1180px); }
  .landing-v2 .public-nav-inner { min-height: 68px; }.landing-v2 .brand-text strong { font-size: 17px; }.landing-v2 .brand-text span,.public-client-link { display: none; }
  .landing-hero { padding: 32px 0 50px; }.landing-eyebrow { line-height:1.35; white-space:normal; }.landing-hero h1 { font-size: clamp(34px,10.5vw,44px); letter-spacing: -.05em; margin:16px 0 18px; }.landing-hero-copy>p { font-size: 14px; line-height:1.7; }.landing-actions { align-items: stretch; flex-direction: column; gap:9px; margin-top:23px; }.landing-actions .btn-edu { font-size:14px; width: 100%; }.landing-btn-secondary { background:transparent; border-color:#cbd8e8; }.landing-assurances { align-items: flex-start; display:flex; flex-direction: column; font-size:12px; margin-top:18px; }
  .landing-product-stage { margin-top:5px; padding-bottom:42px; }.landing-window { border-radius: 18px; transform: none; }.landing-window-body { grid-template-columns: 1fr; min-height: 330px; }.landing-mini-sidebar { display:none; }.landing-workspace { padding: 17px; }.landing-workspace-head b { font-size: 12px; }.landing-workspace-grid { grid-template-columns: 1fr; }.landing-workspace-grid article { min-height: 66px; }.landing-workspace-grid article:nth-child(n+4) { display: none; }.landing-workspace-grid small { font-size:10px; }.landing-workspace-grid strong { font-size:12px; }.landing-float-note { bottom: 0; left: 10px; }
  .landing-section { padding: 66px 0; }.landing-section-head,.landing-section-head.centered { align-items: flex-start; display: flex; flex-direction: column; text-align: left; }.landing-section-head h2,.landing-faq-grid h2 { font-size: 32px; }.landing-benefit-grid,.landing-highlight-grid,.landing-feature-list,.landing-steps { grid-template-columns: 1fr; }.landing-benefit-grid article { min-height: auto; }
  .landing-demo-grid { grid-template-columns: 1fr; }.landing-role-tabs { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }.landing-role-tabs button { flex: 0 0 82%; scroll-snap-align: start; }.landing-demo-panel { min-height: 365px; padding: 23px; }.landing-demo-top { align-items: flex-start; gap: 10px; }.landing-demo-cards { align-items: stretch; flex-direction: column; }
  .landing-all-features { padding: 18px; }.landing-all-features-head { align-items: stretch; grid-template-columns: 1fr; }.landing-v2 .feature-search { grid-template-columns: auto 1fr; }.landing-v2 .feature-search .pill { grid-column: 1/-1; justify-content: center; }.landing-feature-row { min-height: 88px; }
  .landing-steps { gap: 34px; }.landing-steps article { border-left: 1px solid #cfd9e6; border-top: 0; padding: 0 0 0 28px; }.landing-steps article::after { display: none; }.landing-steps span { margin: 0 0 0 -45px; }.landing-steps h3 { margin-top: -32px; }.landing-steps p { max-width: none; }
  .landing-android-panel { grid-template-columns: 1fr; padding: 33px 24px; }.landing-phone { display: none; }.landing-faq-grid { gap: 40px; grid-template-columns: 1fr; }
  .landing-final-cta>.public-container { align-items: stretch; flex-direction: column; }.landing-final-cta .landing-actions { width: 100%; }
  .landing-footer-grid { grid-template-columns: repeat(2,1fr); }.landing-footer-brand { grid-column: 1/-1; }.landing-footer-column:last-child { grid-column: auto; }.landing-footer-bottom { align-items: flex-start; flex-direction: column; gap: 7px; }
  .landing-v2 .mobile-menu-panel { background: #fff; border: 1px solid var(--landing-line); border-radius: 0 0 16px 16px; box-shadow: 0 18px 35px rgba(10,37,64,.12); padding: 8px 15px 15px; }.landing-v2 .mobile-menu-panel a { min-height: 49px; }
}

@media (max-width: 420px) {
  .landing-window-body { grid-template-columns: 1fr; }.landing-workspace { padding: 12px; }.landing-activity { display: none; }
  .landing-feature-card { grid-template-columns: 1fr; }.landing-footer-grid { grid-template-columns: 1fr; }.landing-footer-brand { grid-column: auto; }
}

@media (prefers-reduced-motion: reduce) {
  .landing-v2 * { scroll-behavior: auto!important; transition-duration: .01ms!important; animation-duration: .01ms!important; animation-iteration-count: 1!important; }
}

.public-legal { margin: 0 auto; max-width: 820px; padding: 24px 0 50px; }.public-legal h1 { font-size: clamp(38px,5vw,60px); font-weight: 800; letter-spacing: -.05em; margin: 16px 0 25px; }.public-legal h2 { font-size: 21px; font-weight: 800; margin: 34px 0 10px; }.public-legal p { color: var(--landing-muted); font-size: 15px; line-height: 1.85; }.public-legal a { color: var(--landing-blue)!important; }

@media print { .landing-v2 .public-nav,.landing-v2 .landing-actions,.landing-v2 .public-footer { display:none!important; } }
