/* rd-home.css: redesign 1408, "home and pricing" group. Builds on rd-base.css; --ab-*/--rd-* tokens and logical properties only.
   Pages: / (home_v4 + page_home), /pricing, /hosting, /services/deployment, /services/erpnext-farsi, /cloud-native, /ai, /nazar, competition editorial pages. */

/* ---------- general ---------- */
.rd-home .rd-btn-sm,
.rd-page .rd-btn-sm { min-block-size: 44px; }
.rd-home-center,
.rd-page-center,
.rd-pricing-center { justify-content: center; }
.rd-home-center { margin-block-start: 2rem; }

/* ghost button on dark (closing band) */
.rd-btn-on-dark { color: #fff; border-color: rgba(255, 255, 255, .45); background: transparent; }
.rd-btn-on-dark:hover { color: #fff; border-color: #fff; background: rgba(255, 255, 255, .08); }
.rd-btn-on-dark:focus-visible { outline-color: #fff; }

/* closing band: neutralise legacy violet ab-cta-band; only the rd-cta card shows */
.rd-close,
.rd-close.ab-cta-band { background: none; color: inherit; text-align: start; padding-block: var(--rd-section); }
.rd-close.ab-cta-band::before,
.rd-close.ab-cta-band::after { content: none; }
.rd-close .rd-cta h2,
.rd-close .rd-cta .ab-h2 { color: #fff; }
.rd-close .rd-cta p { color: rgba(255, 255, 255, .82); max-inline-size: 46rem; }
.rd-cta-stack { grid-template-columns: minmax(0, 1fr); text-align: center; justify-items: center; }
.rd-cta-stack .rd-cta-actions { justify-content: center; }
.rd-cta-stack p { margin-inline: auto; }

/* ---------- home (home_v4 and page_home) ---------- */
/* hero: soft background instead of ledger gradient */
.rd-home .rd-home-hero,
.rd-home .ab-h4-hero.rd-hero { background: linear-gradient(180deg, var(--rd-navy-soft) 0%, var(--rd-bg) 100%); }
.rd-home .ab-h4-display-2 {
    background: none;
    -webkit-background-clip: border-box;
    background-clip: border-box;
    -webkit-text-fill-color: currentColor;
    color: var(--rd-primary);
}
.rd-home .rd-home-hero-more { margin-block-start: 1rem; }
.rd-home .rd-hero-meta { margin-block-start: 1.25rem; }

/* trust strip */
.rd-home .ab-h4-thread .ab-trust-logos::before { content: none; }
.rd-home .ab-h4-thread .ab-trust-logos { gap: .75rem 1.25rem; }
.rd-home .ab-h4-thread .ab-trust-logos a {
    min-block-size: 44px;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .35rem .85rem;
    border: 1px solid var(--rd-border);
    border-radius: 999px;
    background: var(--rd-bg);
    color: var(--rd-ink);
    text-decoration: none;
}
.rd-home .ab-h4-thread .ab-trust-logos a:hover { border-color: var(--rd-primary); }
.rd-home .ab-h4-thread .ab-trust-logos a:focus-visible { outline: 3px solid var(--rd-primary); outline-offset: 2px; }

/* three value cards */
.rd-home-values { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rd-home-values .rd-card h3 { color: var(--rd-navy); }
.rd-home-ent {
    margin-block-start: 2rem;
    padding: 1.25rem 1.5rem;
    border: 1px solid var(--rd-border);
    border-radius: var(--rd-radius);
    background: var(--rd-tint);
}
.rd-home-ent-title { margin: 0 0 .5rem; font-weight: 700; color: var(--rd-navy); }

/* plans */
.rd-home .ab-h4-price { background: var(--rd-tint); border-radius: var(--rd-radius-sm); }
.rd-home-tiers {
    list-style: none;
    margin: .75rem 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: .4rem .6rem;
}
.rd-home-tiers li::before { content: none; }
.rd-home-tiers li {
    padding: .2rem .6rem;
    border-radius: 999px;
    background: var(--rd-tint);
    color: var(--rd-muted);
    font-size: .9rem;
}
.rd-home-plan-note { margin-block-start: 1.25rem; text-align: center; color: var(--rd-muted); font-size: .95rem; }

/* comparison table: highlight Abrak */
.rd-home .ab-cmp-us,
.rd-home .rd-table .ab-cmp-us { background: color-mix(in srgb, var(--rd-primary) 7%, var(--rd-bg)); font-weight: 700; }

/* faq */
.rd-faq p.ab-faq-answer,
.rd-faq .rd-faq-body { padding-inline: 1.25rem; padding-block-end: 1.1rem; margin: 0; line-height: 1.9; color: var(--rd-muted); }

/* home closing band with signup ticket on dark */
.rd-home-cta .ab-h4-ticket label,
.rd-home-cta .ab-h4-ticket-label,
.rd-home-cta .ab-h4-ticket-note,
.rd-home-cta .ab-h4-ticket small { color: rgba(255, 255, 255, .85); }
.rd-home-cta .ab-h4-ticket-err { color: #fcd34d; }
.rd-home-cta .ab-h4-workspace .rd-btn-ghost,
.rd-home-cta .ab-h4-workspace .ab-btn-ghost { color: #fff; border-color: rgba(255, 255, 255, .45); }

/* classic page_home: light "why abrak" instead of dark */
.rd-home .ab-diff { background: var(--rd-bg); color: var(--rd-ink); }
.rd-home .ab-diff::before,
.rd-home .ab-diff::after { content: none; }
.rd-home .ab-diff .ab-h2,
.rd-home .ab-diff h2,
.rd-home .ab-diff h3 { color: var(--rd-navy); }
.rd-home .ab-diff .ab-eyebrow { color: var(--rd-primary); }
.rd-home .ab-diff .ab-section-lead,
.rd-home .ab-diff p { color: var(--rd-muted); }
.rd-home .ab-diff b,
.rd-home .ab-diff strong { color: var(--rd-ink); }
.rd-home .ab-diff-card {
    --diff-ac: var(--rd-primary);
    background: var(--rd-bg);
    border: 1px solid var(--rd-border);
    box-shadow: var(--rd-shadow);
}
.rd-home .ab-diff-card::before { content: none; }
.rd-home .rd-home-ac-cyan { --diff-ac: var(--rd-cyan-ink); }
.rd-home .rd-home-ac-amber { --diff-ac: var(--rd-amber-ink); }
.rd-home .ab-diff-ent { border-color: var(--rd-border); background: var(--rd-tint); color: var(--rd-ink); }
.rd-home .ab-diff-ent li,
.rd-home .ab-diff-ent p { color: var(--rd-ink); }

/* ---------- pricing ---------- */
.rd-pricing-hero { background: linear-gradient(180deg, var(--rd-navy-soft) 0%, var(--rd-bg) 100%); }
.rd-pricing-hero + .ab-section { padding-block-start: clamp(2rem, 4vw, 3rem); }
.rd-pricing-plans { margin-block-end: 2.5rem; }
.rd-pricing-subhead { margin: 0 0 .75rem; font-size: 1.15rem; color: var(--rd-navy); }
.rd-pricing-included { grid-template-columns: repeat(auto-fit, minmax(min(16rem, 100%), 1fr)); }
.rd-pricing-us,
.rd-pricing-us td,
.rd-pricing-us th { background: color-mix(in srgb, var(--rd-primary) 7%, var(--rd-bg)); font-weight: 700; }
.rd-pricing-extra { margin-block-start: 2rem; }
.rd-pricing-doubts { margin-block-start: 1.5rem; }

/* ---------- product and service pages (hosting, deployment, ERPNext, ai, cloud-native) ---------- */
.rd-page-hero { text-align: center; }
.rd-page-hero .ab-hero-sub,
.rd-page-hero .rd-lead { margin-inline: auto; max-inline-size: 46rem; }
.rd-page .rd-head { margin-block-end: 2rem; }
.rd-page-grid { display: grid; gap: var(--rd-gap); grid-template-columns: repeat(auto-fit, minmax(min(17rem, 100%), 1fr)); margin-block: 2rem; }
.rd-page-note {
    margin-block-start: 1.5rem;
    padding: 1rem 1.25rem;
    border-inline-start: 4px solid var(--rd-primary);
    border-radius: var(--rd-radius-sm);
    background: var(--rd-tint);
    line-height: 1.8;
}
.rd-page-small { font-size: .9rem; color: var(--rd-muted); }
.rd-page-card-alt { background: var(--rd-tint); }
.rd-page-card-us { border-color: var(--rd-primary); border-width: 2px; }
.rd-page .rd-card h3 { margin-block-start: 0; color: var(--rd-navy); }
.rd-page .rd-card ul { padding-inline-start: 1.2rem; line-height: 1.8; }
.rd-page-strong { font-weight: 700; color: var(--rd-navy); }
.rd-page-h3 { margin-block-start: 0; color: var(--rd-navy); }
.rd-page-accent { color: var(--rd-primary); }
.rd-page-text { font-size: .95rem; color: var(--rd-muted); line-height: 1.85; }
.rd-page-list { padding-inline-start: 1.2rem; font-size: .92rem; color: var(--rd-ink); line-height: 1.8; }
.rd-page-foot { margin-block-start: 1rem; }
.rd-page-faq { display: grid; gap: .75rem; margin-block: 1.5rem 2.5rem; }
.rd-page-faq .ab-faq-item {
    padding: 1rem 1.25rem;
    border: 1px solid var(--rd-border);
    border-radius: var(--rd-radius-sm);
    background: var(--rd-bg);
}
.rd-page-faq .ab-faq-item h3 { margin: 0 0 .4rem; font-size: 1.05rem; color: var(--rd-navy); }
.rd-page-faq .ab-faq-item p { margin: 0; color: var(--rd-muted); line-height: 1.9; }
.rd-page-pack { text-align: center; }
.rd-page-price { margin-block: .5rem; font-size: 1.5rem; font-weight: 800; color: var(--rd-primary); }
.rd-page-code {
    direction: ltr;
    text-align: left;
    overflow: auto;
    padding: 1rem;
    border-radius: var(--rd-radius-sm);
    border: 1px solid var(--rd-border);
    background: var(--rd-tint);
    color: var(--rd-ink);
}
.rd-page-table { inline-size: 100%; border-collapse: collapse; }
.rd-page-table th,
.rd-page-table td { padding: .65rem .8rem; border: 1px solid var(--rd-border); text-align: start; vertical-align: top; }
.rd-page-table thead th { background: var(--rd-tint); color: var(--rd-navy); }
.rd-page-table td.rd-page-strong { font-weight: 700; }

.rd-page-flush { margin-block-start: 0; }
.rd-page-hint { margin-block-start: 1rem; text-align: center; }

/* ---------- /services/deployment (moved from inline <style>) ---------- */
.ab-dep-hero .ab-dep-cta { margin-block: 1.5rem 3rem; }
.ab-dep-hero .ab-dep-facts {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-block-start: 0;
    padding-block-start: 0;
    gap: 1rem;
}
.ab-dep-hero .ab-dep-facts li {
    min-inline-size: 0;
    padding: 1.25rem;
    gap: .4rem;
    border: 1px solid var(--rd-border);
    border-radius: var(--rd-radius-sm);
    background: var(--rd-bg);
    box-shadow: var(--rd-shadow);
}
.ab-deployment-section { padding-block: 3rem; }
#packages.ab-deployment-section,
#request.ab-deployment-section { scroll-margin-block-start: 5.5rem; }
#request .ab-dep-form-wrap { align-items: stretch; }
#request .ab-dep-form-side { position: static; }
#request .ab-dep-form-main {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    min-inline-size: 0;
}
.ab-dep-steps-sec .rd-steps { margin-block-end: 1.5rem; }
.ab-dep-grid.rd-plans { align-items: stretch; }
@media (max-width: 900px) {
    .ab-deployment-section { padding-block: 2rem; }
}
@media (max-width: 600px) {
    .ab-dep-hero .ab-dep-facts { grid-template-columns: minmax(0, 1fr); gap: .75rem; }
    .ab-dep-hero .ab-dep-facts li { padding: 1rem 1.25rem; }
    .ab-dep-hero .ab-dep-cta { margin-block: 1.25rem 2rem; }
    #request .ab-dep-form-main .rd-btn { max-inline-size: 100%; text-align: center; white-space: normal; }
}

/* ---------- competition editorial and calculator pages ---------- */
.ab-editorial-cta.rd-cta { background: var(--rd-navy); color: #fff; border: 0; }
.ab-editorial-cta.rd-cta h2 { color: #fff; }
.rd-cta .ab-cta-alt { margin: 0; }
.rd-cta .ab-cta-alt a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.rd-cta .ab-cta-alt a:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }
.ab-editorial-faq.rd-faq h2 { margin-block-end: 1rem; }
.ab-leak-actions .rd-btn,
.ab-nazar .rd-btn { min-block-size: 44px; }

/* ---------- mobile ---------- */
@media (max-width: 991px) {
    .rd-home-values { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
    .rd-home .rd-hero-actions,
    .rd-page .rd-hero-actions,
    .rd-pricing-hero .rd-hero-actions { flex-direction: column; align-items: stretch; }
    .rd-home .rd-hero-actions .rd-btn,
    .rd-page .rd-hero-actions .rd-btn,
    .rd-pricing-hero .rd-hero-actions .rd-btn,
    .rd-close .rd-cta-actions .rd-btn { inline-size: 100%; }
    .rd-home-ent { padding: 1rem; }
    .rd-home .ab-h4-thread .ab-trust-logos { justify-content: center; }
}

/* ---------- reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
    .rd-home *, .rd-page *, .rd-close * { transition: none !important; animation: none !important; }
    .rd-btn-on-dark:hover { transform: none; }
}
