/* ============================================================
   ناروِلا — Marketing site theme (standalone)
   Reuses the app design tokens; adds landing/pricing components.
   RTL / Vazirmatn. No external libraries.
   ============================================================ */

:root{
    --primary:#c76b85; --primary-600:#ac5271; --primary-100:#fbeef2; --primary-50:#fdf7f9;
    --gold:#d4af7a;
    --bg:#f6f3f5; --surface:#ffffff; --ink:#2c2432; --ink-soft:#5b5262; --muted:#8a8194; --border:#eee6eb;
    --sidebar:#241c2e; --sidebar-2:#191320;
    --success:#1f9d63; --warning:#c98a1e; --info:#3b74d1; --danger:#d14545;
    --r-sm:12px; --r:18px; --r-lg:24px;
    --shadow-sm:0 2px 8px rgba(44,36,50,.05);
    --shadow:0 10px 30px rgba(44,36,50,.07);
    --shadow-lg:0 20px 50px rgba(44,36,50,.14);
    --maxw:1160px;
}

*,*::before,*::after{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
    font-family:'Vazirmatn', system-ui, sans-serif;
    background:var(--bg); color:var(--ink);
    font-size:16px; line-height:1.9; -webkit-font-smoothing:antialiased; min-height:100vh;
}
a{ color:inherit; text-decoration:none; }
img,svg{ display:block; max-width:100%; }
h1,h2,h3{ margin:0 0 .5em; font-weight:800; letter-spacing:-.3px; line-height:1.35; color:var(--ink); }
p{ margin:0 0 1em; }

.mk-wrap{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:22px; }
.mk-section{ padding:78px 0; }
.mk-section__head{ text-align:center; max-width:640px; margin:0 auto 44px; }
.mk-section__head h2{ font-size:30px; }
.mk-section__head p{ color:var(--muted); font-size:17px; margin:0; }
.eyebrow{ display:inline-block; font-size:13px; font-weight:700; color:var(--primary-600); background:var(--primary-100); padding:5px 14px; border-radius:99px; margin-bottom:14px; }

/* Nav */
.mk-nav{
    position:sticky; top:0; z-index:50;
    background:rgba(255,255,255,.85); backdrop-filter:saturate(160%) blur(12px);
    border-bottom:1px solid var(--border);
}
.mk-nav__inner{ display:flex; align-items:center; gap:22px; height:70px; }
.mk-brand{ display:flex; align-items:center; gap:11px; font-weight:800; font-size:19px; }
.mk-brand__mark{ width:40px; height:40px; border-radius:13px; display:grid; place-items:center; color:#fff;
    background:linear-gradient(135deg, var(--primary), var(--gold)); box-shadow:0 8px 20px rgba(199,107,133,.4); }
.mk-brand__mark svg{ width:22px; height:22px; }
.mk-brand__mark svg *{ stroke:#fff; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.mk-brand__logo{ height:40px; width:auto; max-width:130px; object-fit:contain; border-radius:12px; }
.mk-nav__links{ display:flex; align-items:center; gap:6px; margin-inline:auto; }
.mk-nav__link{ padding:9px 15px; border-radius:12px; color:var(--ink-soft); font-weight:600; font-size:15px; transition:.2s; }
.mk-nav__link:hover{ background:var(--primary-50); color:var(--primary-600); }
.mk-nav__cta{ display:flex; align-items:center; gap:10px; }
.mk-burger{ display:none; width:44px; height:44px; border:1px solid var(--border); background:#fff; border-radius:12px; cursor:pointer; align-items:center; justify-content:center; }
.mk-burger svg{ width:22px; height:22px; stroke:var(--ink); fill:none; stroke-width:2; }

/* Buttons */
.btn{ display:inline-flex; align-items:center; justify-content:center; gap:8px; border-radius:14px; font-weight:700; font-size:15px; padding:13px 24px; cursor:pointer; border:1.5px solid transparent; transition:.2s; font-family:inherit; }
.btn--primary{ background:linear-gradient(135deg, var(--primary), #d888a1); color:#fff; box-shadow:0 10px 24px rgba(199,107,133,.35); }
.btn--primary:hover{ transform:translateY(-2px); box-shadow:0 14px 30px rgba(199,107,133,.45); }
.btn--ghost{ background:#fff; color:var(--primary-600); border-color:var(--border); }
.btn--ghost:hover{ border-color:var(--primary); background:var(--primary-50); }
.btn--sm{ padding:9px 16px; font-size:14px; border-radius:12px; }
.btn--block{ width:100%; }

/* Hero */
.mk-hero{ background:
    radial-gradient(900px 500px at 100% -10%, var(--primary-100) 0%, transparent 60%),
    radial-gradient(700px 400px at -10% 110%, #f0e9f5 0%, transparent 60%), var(--surface);
    border-bottom:1px solid var(--border); overflow:hidden; }
.mk-hero__grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:48px; align-items:center; padding:74px 0; }
.mk-hero h1{ font-size:42px; line-height:1.25; }
.mk-hero__sub{ font-size:19px; color:var(--ink-soft); max-width:540px; }
.mk-hero__cta{ display:flex; gap:14px; flex-wrap:wrap; margin-top:26px; }
.mk-hero__art{ position:relative; }
.mk-mock{ background:#fff; border:1px solid var(--border); border-radius:var(--r-lg); box-shadow:var(--shadow-lg); padding:20px; display:grid; gap:14px; }
.mk-mock__bar{ height:12px; border-radius:99px; background:var(--primary-100); }
.mk-mock__bar.w60{ width:60%; } .mk-mock__bar.w80{ width:80%; }
.mk-mock__row{ display:flex; gap:12px; }
.mk-mock__chip{ flex:1; height:52px; border-radius:14px; background:linear-gradient(135deg,var(--primary-50),#fff); border:1px solid var(--border); }
.mk-mock__chip--accent{ background:linear-gradient(135deg,var(--primary),var(--gold)); }

/* Stats */
.mk-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.mk-stat{ background:var(--surface); border:1px solid var(--border); border-radius:var(--r); padding:22px; text-align:center; box-shadow:var(--shadow-sm); }
.mk-stat b{ display:block; font-size:26px; color:var(--primary-600); font-weight:800; }
.mk-stat span{ color:var(--muted); font-size:14px; }

/* Features */
.mk-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.mk-feature{ background:var(--surface); border:1px solid var(--border); border-radius:var(--r); padding:24px; transition:.25s; }
.mk-feature:hover{ transform:translateY(-4px); box-shadow:var(--shadow); border-color:var(--primary-100); }
.mk-feature__icon{ width:52px; height:52px; border-radius:15px; display:grid; place-items:center; background:var(--primary-100); color:var(--primary-600); margin-bottom:16px; }
.mk-feature__icon svg{ width:26px; height:26px; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.mk-feature h3{ font-size:18px; margin-bottom:6px; }
.mk-feature p{ color:var(--muted); font-size:14.5px; margin:0; }

/* Steps */
.mk-steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; counter-reset:step; }
.mk-step{ background:var(--surface); border:1px solid var(--border); border-radius:var(--r); padding:28px; position:relative; }
.mk-step__num{ width:44px; height:44px; border-radius:99px; display:grid; place-items:center; font-weight:800; color:#fff; background:linear-gradient(135deg,var(--primary),var(--gold)); margin-bottom:16px; }
.mk-step h3{ font-size:19px; }
.mk-step p{ color:var(--muted); margin:0; }

/* Pricing */
.mk-plans{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; align-items:stretch; }
.mk-plan{ background:var(--surface); border:1.5px solid var(--border); border-radius:var(--r-lg); padding:30px; display:flex; flex-direction:column; gap:16px; position:relative; transition:.25s; }
.mk-plan:hover{ box-shadow:var(--shadow); }
.mk-plan.is-featured{ border-color:var(--primary); box-shadow:var(--shadow-lg); transform:translateY(-6px); }
.mk-plan__badge{ position:absolute; top:-14px; inset-inline-start:50%; transform:translateX(50%); background:linear-gradient(135deg,var(--primary),var(--gold)); color:#fff; font-size:12px; font-weight:700; padding:5px 16px; border-radius:99px; }
.mk-plan__name{ font-size:20px; font-weight:800; }
.mk-plan__price{ font-size:30px; font-weight:800; color:var(--primary-600); }
.mk-plan__price small{ font-size:14px; color:var(--muted); font-weight:600; }
.mk-plan ul{ list-style:none; margin:0; padding:0; display:grid; gap:11px; flex:1; }
.mk-plan li{ display:flex; gap:9px; align-items:flex-start; color:var(--ink-soft); font-size:15px; }
.mk-plan li::before{ content:""; width:20px; height:20px; border-radius:99px; background:var(--primary-100); flex-shrink:0;
    -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20 6 9 17l-5-5'/></svg>") center/contain no-repeat;
    mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M20 6 9 17l-5-5'/></svg>") center/contain no-repeat; background-color:var(--primary-600); }
.mk-note{ text-align:center; color:var(--muted); font-size:14px; margin-top:22px; }

/* Comparison table */
.mk-compare{ width:100%; border-collapse:collapse; background:var(--surface); border:1px solid var(--border); border-radius:var(--r); overflow:hidden; }
.mk-compare th,.mk-compare td{ padding:14px 16px; text-align:center; border-bottom:1px solid var(--border); font-size:15px; }
.mk-compare th:first-child,.mk-compare td:first-child{ text-align:right; font-weight:600; }
.mk-compare thead th{ background:var(--primary-50); color:var(--primary-600); font-weight:800; }
.mk-compare .yes{ color:var(--success); font-weight:800; }
.mk-compare .no{ color:var(--muted); }

/* Testimonials */
.mk-quotes{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.mk-quote{ background:var(--surface); border:1px solid var(--border); border-radius:var(--r); padding:26px; }
.mk-quote__mark{ font-size:40px; line-height:1; color:var(--primary-100); font-weight:800; }
.mk-quote p{ color:var(--ink-soft); font-size:16px; }
.mk-quote__who b{ display:block; font-size:15px; }
.mk-quote__who span{ color:var(--muted); font-size:13px; }

/* FAQ */
.mk-faq{ max-width:760px; margin-inline:auto; display:grid; gap:12px; }
.mk-faq details{ background:var(--surface); border:1px solid var(--border); border-radius:var(--r-sm); padding:18px 20px; }
.mk-faq summary{ cursor:pointer; font-weight:700; font-size:16px; list-style:none; display:flex; justify-content:space-between; align-items:center; gap:12px; }
.mk-faq summary::-webkit-details-marker{ display:none; }
.mk-faq summary::after{ content:"+"; font-size:22px; color:var(--primary-600); font-weight:700; }
.mk-faq details[open] summary::after{ content:"–"; }
.mk-faq p{ color:var(--muted); margin:14px 0 0; }

/* CTA band */
.mk-cta{ background:linear-gradient(135deg, var(--sidebar), var(--sidebar-2)); color:#fff; border-radius:var(--r-lg); padding:52px 40px; text-align:center; box-shadow:var(--shadow-lg); }
.mk-cta h2{ color:#fff; font-size:28px; }
.mk-cta p{ color:#cfc6d8; max-width:520px; margin:0 auto 26px; }

/* Footer */
.mk-footer{ background:var(--surface); border-top:1px solid var(--border); padding:56px 0 30px; margin-top:20px; }
.mk-footer__grid{ display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:30px; }
.mk-footer h4{ font-size:15px; margin:0 0 14px; color:var(--ink); }
.mk-footer a{ display:block; color:var(--muted); font-size:14.5px; padding:5px 0; }
.mk-footer a:hover{ color:var(--primary-600); }
.mk-footer__about p{ color:var(--muted); font-size:14.5px; max-width:320px; }
.mk-footer__bottom{ border-top:1px solid var(--border); margin-top:34px; padding-top:22px; display:flex; justify-content:space-between; align-items:center; gap:14px; color:var(--muted); font-size:14px; flex-wrap:wrap; }

/* Contact */
.mk-contact{ display:grid; grid-template-columns:1fr 1fr; gap:28px; align-items:start; }
.mk-info{ display:grid; gap:16px; }
.mk-info__item{ background:var(--surface); border:1px solid var(--border); border-radius:var(--r); padding:20px 22px; display:flex; gap:14px; align-items:flex-start; }
.mk-info__ic{ width:44px; height:44px; border-radius:13px; display:grid; place-items:center; background:var(--primary-100); color:var(--primary-600); flex-shrink:0; }
.mk-info__ic svg{ width:22px; height:22px; stroke:currentColor; fill:none; stroke-width:1.8; }
.mk-info__item b{ display:block; margin-bottom:2px; }
.mk-info__item span{ color:var(--muted); font-size:14.5px; }
.mk-socials{ display:flex; gap:12px; flex-wrap:wrap; }
.mk-map{ background:var(--surface); border:1px solid var(--border); border-radius:var(--r); min-height:340px; display:grid; place-items:center; color:var(--muted); box-shadow:var(--shadow-sm); overflow:hidden; }
.mk-map iframe{ width:100%; height:100%; min-height:340px; border:0; }

/* Prose pages (about) */
.mk-prose{ max-width:760px; margin-inline:auto; }
.mk-prose h2{ font-size:26px; margin-top:34px; }
.mk-prose p{ color:var(--ink-soft); font-size:17px; }
.mk-values{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; margin-top:20px; }
.mk-value{ background:var(--surface); border:1px solid var(--border); border-radius:var(--r); padding:22px; }
.mk-value__icon{ width:46px; height:46px; border-radius:13px; display:grid; place-items:center; background:var(--primary-100); color:var(--primary-600); margin-bottom:12px; }
.mk-value__icon svg{ width:24px; height:24px; stroke:currentColor; fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.mk-value h3{ font-size:17px; }
.mk-value p{ color:var(--muted); font-size:14.5px; margin:0; }

/* Responsive */
@media (max-width:960px){
    .mk-hero__grid{ grid-template-columns:1fr; padding:48px 0; }
    .mk-hero h1{ font-size:34px; }
    .mk-grid, .mk-stats{ grid-template-columns:repeat(2,1fr); }
    .mk-steps, .mk-plans, .mk-quotes, .mk-values{ grid-template-columns:1fr; }
    .mk-plan.is-featured{ transform:none; }
    .mk-contact{ grid-template-columns:1fr; }
    .mk-footer__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:680px){
    .mk-nav__links{ position:fixed; inset:70px 0 auto 0; flex-direction:column; align-items:stretch; background:#fff; border-bottom:1px solid var(--border); padding:14px 22px; gap:2px; display:none; box-shadow:var(--shadow); }
    .mk-nav__links.is-open{ display:flex; }
    .mk-nav__link{ padding:12px; }
    .mk-nav__cta .mk-nav__cta-text{ display:none; }
    .mk-burger{ display:flex; }
    .mk-grid, .mk-stats{ grid-template-columns:1fr 1fr; }
    .mk-compare{ font-size:13px; }
}
