/* Homepage refinement. Scoped separately from the reader and source pages. */
.page-home { --measure: 68rem; }
.page-home .topbar { max-width: 78rem; margin-inline: auto; padding: 1.25rem 2rem; }
.page-home .topbar-nav-links { gap: 1.4rem; }
.page-home .top-nav-btn { padding: .35rem 0; background: none; border: 0; border-radius: 0; }
.page-home .top-nav-btn:hover { color: #f3dca5; }
.page-home .langbar { gap: .2rem; padding: .2rem; border: 1px solid #ffffff30; border-radius: 999px; }
.page-home .langbar button { border: 0; min-height: 40px; padding: .3rem .85rem; }
.page-home .hero { padding: 8rem 1.5rem 3.75rem; background: radial-gradient(ellipse at 50% 0%, #284d38, #112f22 65%, #0c251b); }
.page-home .hero-star { width: min(115vw, 850px); opacity: .055; }
.page-home .appicon { width: 88px; margin-bottom: 1.25rem; box-shadow: 0 14px 35px #0004, 0 0 0 1px #ffffff20; }
.page-home .wordmark { font-size: clamp(3.5rem, 7vw, 5rem); letter-spacing: .015em; }
.page-home .wordmark-alt { font-size: .42em; vertical-align: middle; margin-inline-start: .2em; }
.page-home .hero .tagline { max-width: 35rem; font-size: clamp(1.15rem, 2.2vw, 1.45rem); line-height: 1.65; margin: 1.35rem 0 2rem; color: #e4e9db; text-wrap: balance; }
.page-home [data-lang-pane="ar"] .wordmark,
.page-home [data-lang-pane="ar"] h2 { font-family: var(--display-ar); letter-spacing: 0; }
.page-home [data-lang-pane="ar"] .hero .tagline { font-family: var(--display-ar); font-size: clamp(1.55rem, 3.1vw, 2rem); font-weight: 700; line-height: 1.85; max-width: 36rem; }
.page-home .store-row { gap: .8rem; }
.page-home .store-badge { min-width: 165px; min-height: 58px; border-radius: 10px; background: #ffffff0a; border-color: #ffffff45; padding: .6rem 1.15rem; }
.page-home .store-text { text-align: start; }
.page-home .store-text strong { direction: ltr; unicode-bidi: isolate; }
.page-home .store-text small { color: #c9d8cb; font-size: .65rem; }
.page-home [data-lang-pane="ar"] .store-text small { font-size: .8rem; line-height: 1.6; }
.page-home .reader-link { display: inline-flex; align-items: center; gap: .6rem; color: #efdba9; margin-top: 1.35rem; padding: .35rem; text-underline-offset: 5px; }
.page-home [data-lang-pane="ar"] .reader-link span { transform: scaleX(-1); }
.page-home .scroll-cue { margin-top: 1.8rem; color: #b5c9b9; font-size: .8rem; }
.page-home .scroll-cue svg { animation: none; width: 14px; }
.page-home .wrap { max-width: 68rem; padding-inline: 2rem; }
.page-home .section { padding-top: 4.5rem; }
.page-home .kicker { font-family: inherit; color: #80652b; font-size: .7rem; letter-spacing: .16em; }
.page-home [data-lang-pane="ar"] .kicker { letter-spacing: 0; font-size: .95rem; }
.page-home h2 { font-size: clamp(1.8rem, 3.4vw, 2.6rem); line-height: 1.4; letter-spacing: 0; text-wrap: balance; margin-bottom: 2.25rem; }
.page-home h2::after { display: none; }
.page-home [data-lang-pane="ar"] h2 { font-size: clamp(2rem, 4vw, 2.8rem); }
.page-home .features { gap: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: 1px solid var(--rule); }
.page-home .features li { border: 0; border-radius: 0; padding: 2rem 1.7rem; background: transparent; }
.page-home .features li:nth-child(-n+3) { border-bottom: 1px solid var(--rule); }
.page-home .features li:not(:nth-child(3n)) { border-inline-end: 1px solid var(--rule); }
.page-home .features li:hover { transform: none; box-shadow: none; background: var(--surface); }
.page-home .f-icon { border: 0; border-radius: 0; width: 28px; height: 28px; color: #927333; margin-bottom: .9rem; }
.page-home .f-icon svg { width: 25px; height: 25px; }
.page-home .features h3 { font-size: 1.05rem; line-height: 1.5; margin-bottom: .6rem; }
.page-home .features p { font-size: .95rem; line-height: 1.85; }
.page-home [data-lang-pane="ar"] .features h3 { font-size: 1.2rem; }
.page-home [data-lang-pane="ar"] .features p { font-size: 1.05rem; }
.page-home .band { margin-top: 3rem; padding: 2rem 1rem 0; border: 0; max-width: 43rem; }
.page-home .band h2 { margin-bottom: 1rem; }
.page-home .privacy-strip { border: 0; padding-top: 0; margin-top: 1.25rem; max-width: 40rem; }
.page-home .cta { margin-top: 3rem; border-radius: 18px; padding: 3.5rem 1.5rem; background: #153927; }
.page-home .cta .kicker { color: #dac28b; }
.page-home .cta h2 { margin-bottom: 1.5rem; }
.page-home .contact-card { background: none; border: 0; border-radius: 0; box-shadow: none; padding: 0; margin-top: 2.75rem; gap: .2rem; }
.page-home .contact-icon { display: none; }
.page-home .contact-card a { color: var(--green-soft); display: inline-block; direction: ltr; unicode-bidi: isolate; }
.page-home footer { max-width: 64rem; margin-top: 2.5rem; color: var(--ink-soft); }
.page-home a:focus-visible, .page-home button:focus-visible { outline: 3px solid #c9a84c; outline-offset: 5px; }
@media (max-width: 820px) {
  .page-home .topbar { flex-wrap: wrap; gap: .5rem 1rem; padding: .85rem 1.25rem; }
  .page-home .topbar-nav-links { display: flex; order: 3; width: 100%; justify-content: center; gap: 1.5rem; border-top: 1px solid #ffffff14; padding-top: .45rem; }
  .page-home .top-nav-btn { font-size: .83rem; min-height: 38px; }
  .page-home .hero { padding-top: 9.5rem; }
  .page-home .features { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .page-home .features li:nth-child(n) { border: 0; border-bottom: 1px solid var(--rule); }
  .page-home .features li:nth-child(odd) { border-inline-end: 1px solid var(--rule); }
  .page-home .features li:nth-last-child(-n+2) { border-bottom: 0; }
}
@media (max-width: 520px) {
  .page-home .wrap { padding-inline: 1.25rem; }
  .page-home .hero { padding-inline: 1.25rem; padding-bottom: 2.75rem; }
  .page-home .appicon { width: 72px; }
  .page-home .hero .tagline { margin: 1rem 0 1.75rem; }
  .page-home .store-row { gap: .6rem; width: 100%; }
  .page-home .store-badge { min-width: 0; flex: 1; max-width: 190px; justify-content: center; padding: .65rem .7rem; gap: .5rem; }
  .page-home .store-text strong { font-size: .95rem; }
  .page-home .store-logo { width: 20px; }
  .page-home .reader-link { font-size: .9rem; }
  .page-home .features { grid-template-columns: minmax(0, 1fr); }
  .page-home .features li:nth-child(n) { border: 0; border-bottom: 1px solid var(--rule); padding: 1.5rem .4rem; }
  .page-home .features li:last-child { border-bottom: 0; }
  .page-home .section { padding-top: 3rem; }
  .page-home .cta { padding: 2.5rem 1rem; }
  .page-home footer { margin-inline: 1.25rem; padding-inline: 0; }
}
@media (prefers-color-scheme: dark) {
  .page-home .kicker, .page-home .f-icon { color: #dac28b; }
}
@media (prefers-reduced-motion: reduce) {
  .page-home *, .page-home *::before, .page-home *::after { transition: none; animation: none; }
}
/* Phone layout: keep the first useful actions in reach. */
@media (max-width:520px) {
 .page-home .topbar { padding-inline:1rem; }
 .page-home .topbar-nav-links { gap:1rem; }
 .page-home .top-nav-btn,.page-home .langbar button { min-height:44px; }
 .page-home .hero { padding-top:8.8rem; padding-bottom:2rem; }
 .page-home .appicon { width:60px; margin-bottom:.85rem; }
 .page-home .wordmark { font-size:3.3rem; }
 .page-home [data-lang-pane="ar"] .hero .tagline { font-size:1.55rem; line-height:1.8; }
 .page-home .scroll-cue { margin-top:1.25rem; }
 .page-home .store-badge { min-height:62px; }
 .page-home footer a { display:inline-block; padding-block:.5rem; }
}
