/* Landing page refinements. Keep these after the page's base styles. */
.menu a i,.mobile-menu-cta,.menu-backdrop{display:none}
.menu a:focus-visible,.menu-toggle:focus-visible,.login-link:focus-visible,.primary-btn:focus-visible,.ghost-btn:focus-visible{outline:3px solid #25c7b4;outline-offset:3px}
.hero-copy{line-height:2.1}
.feature{isolation:isolate}
.feature:before{content:"";position:absolute;inset:0 auto auto 0;width:56%;height:3px;background:linear-gradient(270deg,transparent,var(--feature-color,#2878ff));opacity:.75}
.feature.night:before{background:linear-gradient(270deg,transparent,#8ddaff)}
.section-title h2{max-width:800px;margin-inline:auto;text-wrap:balance}
.feature p,.audience-card p,.section-title p{line-height:2}
@media(max-width:820px){
  [data-reveal=right],[data-reveal=left]{transform:translateY(20px)}
  .header{z-index:80}
  .nav{gap:12px}
  .menu{inset:72px 0 auto;width:100%;max-height:0;z-index:2;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:hidden;padding:0 12px;border:0;border-radius:0 0 22px 22px;box-shadow:0 24px 45px rgba(7,21,47,.14);background:rgba(255,255,255,.98);transition:max-height .26s ease,padding .26s ease}
  .menu.open{max-height:min(520px,calc(100dvh - 72px));overflow-y:auto;padding:12px 12px calc(18px + env(safe-area-inset-bottom))}
  .menu a{display:flex;align-items:center;gap:10px;min-width:0;min-height:54px;padding:10px 12px;border:1px solid #e8edf6;border-radius:13px;background:#f7faff;color:#1d3555;font-size:.82rem;line-height:1.5}
  .menu a:after{display:none}
  .menu a i{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;color:#1b66d3;background:#e8f1ff;font-size:1rem}
  .menu a:hover,.menu a:focus-visible{background:#eef6ff;border-color:#bad4fa;color:#164fa9}
  .menu .mobile-menu-cta{display:flex;grid-column:1/-1;justify-content:center;min-height:48px;color:#fff;background:linear-gradient(135deg,#2878ff,#1655d3);border:0;font-weight:900}
  .menu .mobile-menu-cta i{color:#fff;background:rgba(255,255,255,.14)}
  .menu-backdrop{display:block;position:fixed;inset:72px 0 0;z-index:79;background:rgba(7,21,47,.4);opacity:0;visibility:hidden;transition:opacity .26s,visibility .26s}
  body.menu-open .menu-backdrop{opacity:1;visibility:visible}
}
@media(max-width:600px){
  .header .shell.nav{width:calc(100% - 24px);min-height:68px}
  .menu{top:68px}
  .menu.open{max-height:calc(100dvh - 68px)}
  .menu-backdrop{top:68px}
  .brand{gap:8px}
  .menu-toggle{width:40px;height:40px;flex:0 0 40px}
  .hero{padding:110px 0 72px}
  .hero h1{font-size:clamp(1.92rem,8vw,2.22rem);line-height:1.53}
  .hero-copy{font-size:.93rem;line-height:2}
  .pill{font-size:.72rem;line-height:1.7}
  .trust-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 10px;font-size:.72rem}
  .trust-row span:last-child{grid-column:1/-1}
  .quick-inner{border-radius:18px}
  .quick-item{padding:15px 8px}
  .quick-item strong{font-size:.79rem}
  .feature{border-radius:20px}
  .feature h3{font-size:1.05rem}
  .feature p{font-size:.84rem}
}
@media(max-width:360px){.header .shell.nav{width:calc(100% - 16px)}.menu{grid-template-columns:1fr}.login-link{padding:8px 9px}.brand span:last-child{font-size:.78rem}}
@media(prefers-reduced-motion:reduce){.menu,.menu-backdrop{transition:none}}
