/* =========================================================
   NickPlus theme — base
   ========================================================= */
:root{
	--np-primary:#4f46e5;
	--np-primary-dark:#3730a3;
	--np-primary-light:#eef2ff;
	--np-accent:#f59e0b;
	--np-ink:#0f172a;
	--np-ink-soft:#475569;
	--np-border:#e2e8f0;
	--np-bg:#ffffff;
	--np-bg-soft:#f8fafc;
	--np-radius:16px;
	--np-shadow:0 20px 45px -20px rgba(15,23,42,.15);
	--np-container:1200px;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}

/* Visible keyboard focus ring — consistent across links, buttons, inputs */
a:focus-visible,
button:focus-visible,
.np-btn:focus-visible,
summary:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible{
	outline:2px solid var(--np-primary);
	outline-offset:2px;
	border-radius:4px;
}

@media (prefers-reduced-motion:reduce){
	html{scroll-behavior:auto;}
	*,*::before,*::after{animation-duration:.01ms !important;animation-delay:0s !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}
}
body{
	margin:0;
	font-family:'Vazirmatn',Tahoma,sans-serif;
	color:var(--np-ink);
	background:var(--np-bg);
	line-height:1.8;
	font-size:16px;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
ul{margin:0;padding:0;list-style:none;}
h1,h2,h3,h4{margin:0 0 .5em;line-height:1.35;}
p{margin:0 0 1em;color:var(--np-ink-soft);}

.np-container{max-width:var(--np-container);margin:0 auto;padding:0 24px;}

/* Buttons */
.np-btn{
	display:inline-flex;align-items:center;justify-content:center;gap:8px;
	padding:12px 26px;border-radius:999px;font-weight:600;font-size:15px;
	transition:all .2s ease;border:2px solid transparent;cursor:pointer;
}
.np-btn--primary{background:var(--np-primary);color:#fff;box-shadow:0 1px 2px rgba(79,70,229,.05);}
.np-btn--primary:hover{background:var(--np-primary-dark);transform:translateY(-2px);box-shadow:0 12px 24px -8px rgba(79,70,229,.45);}
.np-btn--ghost{background:transparent;color:var(--np-ink);}
.np-btn--ghost:hover{color:var(--np-primary);}
.np-btn--outline{border-color:var(--np-border);color:var(--np-ink);background:#fff;}
.np-btn--outline:hover{border-color:var(--np-primary);color:var(--np-primary);}
.np-btn--light{background:#fff;color:var(--np-primary);}
.np-btn--light:hover{background:var(--np-primary-light);}
.np-btn--lg{padding:16px 34px;font-size:16px;}

.np-badge{
	display:inline-block;background:var(--np-primary-light);color:var(--np-primary);
	padding:6px 16px;border-radius:999px;font-size:13px;font-weight:600;margin-bottom:18px;
}
.np-eyebrow{
	display:inline-block;color:var(--np-primary);font-weight:700;font-size:14px;margin-bottom:10px;
	letter-spacing:.02em;
}
.np-section-head{max-width:640px;margin:0 auto 56px;text-align:center;}
.np-section-head h2{font-size:clamp(26px,3.2vw,38px);}
.np-section-head--light .np-eyebrow,
.np-section-head--light h2,
.np-section-head--light p{color:#fff;}

.np-text-accent{color:var(--np-primary);}

/* =========================================================
   Header
   ========================================================= */
.np-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--np-border);}
.np-header__inner{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;gap:24px;}
.np-logo__mark{font-size:22px;font-weight:800;color:var(--np-ink);}
.np-logo__mark span{color:var(--np-primary);}
.np-nav__list{display:flex;gap:32px;font-weight:600;font-size:15px;}
.np-nav__list a:hover{color:var(--np-primary);}
.np-header__actions{display:flex;align-items:center;gap:12px;}
.np-nav__toggle{display:none;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:44px;height:44px;background:none;border:0;border-radius:8px;cursor:pointer;padding:0;}
.np-nav__toggle span{width:22px;height:2px;background:var(--np-ink);border-radius:2px;}

/* =========================================================
   Hero
   ========================================================= */
.np-hero{overflow:hidden;}

/* Full-width overlay hero: image fills the banner, caption text sits on top */
.np-slideshow--hero{width:100%;height:min(620px,82vh);min-height:440px;border-radius:0;box-shadow:none;}
.np-slideshow__scrim{
	position:absolute;inset:0;z-index:0;
	background:linear-gradient(to top,rgba(8,11,23,.88) 0%,rgba(8,11,23,.6) 32%,rgba(8,11,23,.2) 60%,rgba(8,11,23,0) 100%);
}
.np-slideshow__caption{position:absolute;inset-inline:0;bottom:0;z-index:1;padding-bottom:64px;}
.np-badge--overlay{background:rgba(255,255,255,.14);backdrop-filter:blur(6px);color:#fff;border:1px solid rgba(255,255,255,.28);}
.np-slideshow__caption h1{color:#fff;font-size:clamp(30px,4.2vw,52px);font-weight:800;letter-spacing:-.01em;max-width:760px;text-shadow:0 2px 24px rgba(0,0,0,.3);margin-bottom:.4em;}
.np-slideshow__caption p{color:rgba(255,255,255,.9);max-width:600px;font-size:16px;margin-bottom:0;}

/* متن هر اسلاید نوبتی (برچسب → عنوان → توضیح) وارد می‌شود، نه هم‌زمان با محو‌شدن عکس */
.np-slideshow__caption .np-badge--overlay,
.np-slideshow__caption h1,
.np-slideshow__caption p{opacity:0;transform:translateY(18px);}
.np-slideshow__slide.is-active .np-badge--overlay{animation:npCaptionIn .55s ease .3s forwards;}
.np-slideshow__slide.is-active .np-slideshow__caption h1{animation:npCaptionIn .55s ease .45s forwards;}
.np-slideshow__slide.is-active .np-slideshow__caption p{animation:npCaptionIn .55s ease .6s forwards;}
@keyframes npCaptionIn{to{opacity:1;transform:translateY(0);}}

.np-hero__bottom{padding:40px 0 8px;}
.np-hero__cta{display:flex;gap:16px;margin-bottom:28px;flex-wrap:wrap;justify-content:center;}
.np-hero__stats{display:flex;gap:40px;justify-content:center;flex-wrap:wrap;}
.np-hero__stats strong{display:block;font-size:24px;color:var(--np-ink);}
.np-hero__stats span{font-size:13px;color:var(--np-ink-soft);}

.np-slideshow{position:relative;border-radius:var(--np-radius);overflow:hidden;box-shadow:var(--np-shadow);aspect-ratio:4/3.1;}
.np-slideshow__slide{position:absolute;inset:0;opacity:0;transition:opacity .8s ease;}
.np-slideshow__slide.is-active{opacity:1;}
.np-slideshow__slide img{width:100%;height:100%;object-fit:cover;border-radius:0;box-shadow:none;}
.np-slideshow__dots{position:absolute;bottom:18px;inset-inline:0;display:flex;justify-content:center;gap:8px;z-index:2;}
.np-slideshow__dot{width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.55);cursor:pointer;padding:0;transition:all .2s ease;}
.np-slideshow__dot.is-active{background:#fff;width:22px;border-radius:5px;}

.np-app-gallery{padding:96px 0;background:var(--np-bg-soft);}
.np-slideshow--wide{aspect-ratio:16/7;max-width:100%;margin:0 auto;}
.np-slideshow__caption-bar{
	position:absolute;inset-inline:0;bottom:0;z-index:1;
	padding:28px 32px;font-size:clamp(18px,2.4vw,26px);font-weight:800;color:#fff;
	letter-spacing:-.01em;text-shadow:0 2px 16px rgba(0,0,0,.3);
	background:linear-gradient(to top,rgba(8,11,23,.88) 0%,rgba(8,11,23,.55) 45%,rgba(8,11,23,.15) 75%,rgba(8,11,23,0) 100%);
	padding-top:90px;
	opacity:0;transform:translateY(18px);
}
.np-slideshow__slide.is-active .np-slideshow__caption-bar{animation:npCaptionIn .55s ease .3s forwards;}
.np-slideshow__arrow{
	position:absolute;top:50%;transform:translateY(-50%);z-index:2;
	width:44px;height:44px;border-radius:50%;border:0;background:rgba(15,23,42,.45);color:#fff;
	font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease;
}
.np-slideshow__arrow:hover{background:rgba(15,23,42,.7);}
.np-slideshow__arrow--prev{inset-inline-start:16px;}
.np-slideshow__arrow--next{inset-inline-end:16px;}

/* Social proof */
.np-social{padding:40px 0;background:var(--np-bg-soft);}
.np-social__label{text-align:center;color:var(--np-ink-soft);font-size:14px;margin-bottom:24px;}
.np-social__logos{display:flex;flex-wrap:wrap;justify-content:center;gap:36px;font-weight:700;color:#64748b;}

/* Value props */
.np-value{padding:96px 0;}
.np-value__grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;}
.np-value__card{border:1px solid var(--np-border);border-radius:var(--np-radius);overflow:hidden;background:#fff;transition:transform .2s ease,box-shadow .2s ease;}
.np-value__card:hover{transform:translateY(-4px);box-shadow:var(--np-shadow);}
.np-value__card img{height:220px;object-fit:cover;}
.np-value__card h3,.np-value__card p{padding:0 24px;}
.np-value__card h3{margin-top:20px;}
.np-value__card p{padding-bottom:24px;}

/* Dashboard showcase */
.np-dashboard{padding:96px 0;background:var(--np-bg-soft);}
.np-dashboard__inner{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
.np-dashboard__media img{border-radius:var(--np-radius);box-shadow:var(--np-shadow);}
.np-check-list li{position:relative;padding-inline-start:30px;margin-bottom:14px;color:var(--np-ink-soft);}
.np-check-list li::before{
	content:"";position:absolute;inset-inline-start:0;top:2px;width:18px;height:18px;border-radius:50%;
	background:var(--np-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5l3.2 3.2L13 5'/%3E%3C/svg%3E") center/10px no-repeat;
}

/* Features */
.np-features{padding:96px 0;}
.np-features__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.np-feature-card{position:relative;overflow:hidden;border:1px solid var(--np-border);border-radius:var(--np-radius);padding:28px 22px;background:#fff;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.np-feature-card:hover{transform:translateY(-4px);box-shadow:var(--np-shadow);border-color:var(--np-primary-light);}
.np-feature-card__num{position:relative;z-index:1;display:inline-block;color:var(--np-primary);font-weight:800;font-size:15px;background:var(--np-primary-light);padding:5px 12px;border-radius:8px;}
.np-feature-card__ghost{
	position:absolute;top:-18px;inset-inline-end:2px;font-size:76px;font-weight:800;
	color:var(--np-primary-light);z-index:0;line-height:1;pointer-events:none;
}
.np-feature-card h3{position:relative;z-index:1;margin-top:14px;font-size:18px;}
.np-feature-card p{position:relative;z-index:1;font-size:14px;margin-bottom:0;}

/* Why choose */
.np-why{padding:96px 0;background:linear-gradient(135deg,var(--np-primary) 0%,var(--np-primary-dark) 100%);}
.np-why__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;}
.np-why__item{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.15);border-radius:var(--np-radius);padding:26px;color:#fff;transition:background .2s ease,border-color .2s ease,transform .2s ease;}
.np-why__item:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.3);transform:translateY(-4px);}
.np-why__item h3{color:#fff;}
.np-why__item p{color:rgba(255,255,255,.8);margin-bottom:0;font-size:14px;}

/* Promo banner */
.np-promo{padding:56px 0;background:var(--np-accent);}
.np-promo__inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;}
.np-promo__text h2{color:#1e1204;margin-bottom:8px;font-size:26px;}
.np-promo__text p{color:#4a3308;margin-bottom:0;}

/* Steps */
.np-steps{padding:96px 0;}
.np-steps__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.np-step{text-align:center;padding:0 12px;}
.np-step__num{
	display:inline-flex;align-items:center;justify-content:center;
	width:52px;height:52px;border-radius:50%;background:var(--np-primary-light);
	color:var(--np-primary);font-weight:800;font-size:20px;margin-bottom:18px;
}

/* Pricing */
.np-pricing{padding:96px 0;background:var(--np-bg-soft);}
.np-pricing__toggle{display:flex;justify-content:center;gap:6px;background:#fff;border:1px solid var(--np-border);border-radius:999px;width:max-content;margin:0 auto 48px;padding:6px;}
.np-toggle__btn{border:0;background:transparent;padding:10px 22px;border-radius:999px;font-weight:600;cursor:pointer;font-family:inherit;font-size:14px;color:var(--np-ink-soft);}
.np-toggle__btn.is-active{background:var(--np-primary);color:#fff;}
.np-toggle__badge{background:rgba(255,255,255,.2);border-radius:999px;padding:2px 8px;font-size:11px;margin-inline-start:6px;}
.np-toggle__btn:not(.is-active) .np-toggle__badge{background:var(--np-primary-light);color:var(--np-primary);}

.np-pricing__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:stretch;}
.np-plan{position:relative;background:#fff;border:1px solid var(--np-border);border-radius:var(--np-radius);padding:36px 28px;display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;}
.np-plan:not(.np-plan--popular):hover{transform:translateY(-4px);box-shadow:var(--np-shadow);border-color:var(--np-primary-light);}
.np-plan--popular{border-color:var(--np-primary);box-shadow:var(--np-shadow);transform:scale(1.03);}
.np-plan--popular:hover{box-shadow:0 28px 55px -20px rgba(79,70,229,.4);}
.np-plan__ribbon{position:absolute;top:-14px;left:50%;transform:translateX(-50%);background:var(--np-primary);color:#fff;padding:6px 18px;border-radius:999px;font-size:12px;font-weight:700;}
.np-plan__tagline{font-size:13px;color:var(--np-ink-soft);margin-bottom:20px;}
.np-plan__price{margin-bottom:24px;}
.np-price strong{font-size:32px;color:var(--np-ink);}
.np-plan__features{margin-bottom:28px;flex:1;}
.np-plan__features li{position:relative;padding-inline-start:26px;margin-bottom:10px;font-size:14px;color:var(--np-ink-soft);}
.np-plan__features li::before{
	content:"";position:absolute;inset-inline-start:0;top:2px;width:16px;height:16px;border-radius:50%;
	background:var(--np-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 8.5l3.2 3.2L13 5'/%3E%3C/svg%3E") center/9px no-repeat;
}
.np-plan__buy{width:100%;}

/* Testimonials */
.np-testimonials{padding:96px 0;}
.np-testimonials__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;}
.np-testimonial{background:#fff;border:1px solid var(--np-border);border-radius:var(--np-radius);padding:28px;margin:0;transition:transform .2s ease,box-shadow .2s ease;}
.np-testimonial:hover{transform:translateY(-4px);box-shadow:var(--np-shadow);}
.np-testimonial p{font-size:15px;color:var(--np-ink);}
.np-testimonial footer{font-size:13px;color:var(--np-primary);font-weight:700;}

/* Final CTA */
.np-final-cta{padding:96px 0;text-align:center;background:linear-gradient(135deg,var(--np-primary) 0%,var(--np-primary-dark) 100%);}
.np-final-cta h2{color:#fff;font-size:clamp(26px,3.4vw,38px);}
.np-final-cta p{color:rgba(255,255,255,.85);margin-bottom:28px;}

/* Footer */
.np-footer{background:var(--np-ink);color:#cbd5e1;padding:64px 0 0;}
.np-footer__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:32px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.1);}
.np-footer h4{color:#fff;font-size:15px;margin-bottom:16px;}
.np-footer__brand p{color:#94a3b8;font-size:14px;}
.np-footer .np-logo__mark{color:#fff;}
.np-footer ul li{margin-bottom:10px;font-size:14px;}
.np-footer ul li a:hover{color:#fff;}
.np-footer__badges{border-bottom:1px solid rgba(255,255,255,.1);}
.np-footer__badges-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:24px;padding:24px 0;}
.np-footer__badge{display:flex;align-items:center;justify-content:center;}
.np-footer__badge img{max-height:72px;width:auto;}
.np-footer__bottom{padding:20px 0;text-align:center;font-size:13px;color:#64748b;}

/* Page hero (inner pages) */
.np-page-hero{padding:64px 0 40px;text-align:center;background:var(--np-bg-soft);}
.np-page-hero h1{font-size:clamp(28px,3.6vw,42px);}
.np-page-content{padding:64px 0;}
.np-page-content__inner{max-width:820px;margin:0 auto;}

/* FAQ */
.np-faq{padding:0 0 96px;}
.np-faq__list{max-width:760px;margin:0 auto;display:flex;flex-direction:column;gap:14px;}
.np-faq__item{border:1px solid var(--np-border);border-radius:12px;padding:18px 22px;background:#fff;transition:border-color .2s ease;}
.np-faq__item:hover{border-color:var(--np-primary-light);}
.np-faq__item[open]{border-color:var(--np-primary);}
.np-faq__item summary{cursor:pointer;font-weight:700;}
.np-faq__item p{margin-top:12px;margin-bottom:0;}

/* Blog */
.np-blog{padding:64px 0 96px;}
.np-blog__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-bottom:40px;}
.np-blog__card{border:1px solid var(--np-border);border-radius:var(--np-radius);overflow:hidden;background:#fff;transition:transform .2s ease,box-shadow .2s ease;}
.np-blog__card:hover{transform:translateY(-4px);box-shadow:var(--np-shadow);}
.np-blog__thumb img{height:180px;object-fit:cover;}
.np-blog__card h2{font-size:18px;padding:0 20px;margin-top:16px;}
.np-blog__card p{padding:0 20px;font-size:14px;}
.np-blog__card .np-btn{margin:0 20px 20px;}

/* Checkout / OTP form */
.np-checkout{max-width:460px;margin:0 auto;}
.np-checkout__form{display:flex;flex-direction:column;gap:18px;background:#fff;border:1px solid var(--np-border);border-radius:var(--np-radius);padding:32px;}
.np-checkout__form label{display:flex;flex-direction:column;gap:8px;font-weight:600;font-size:14px;}
.np-checkout__form input{
	font-family:inherit;font-size:15px;padding:12px 14px;border-radius:10px;border:1px solid var(--np-border);
	background:#fff;color:var(--np-ink);
}
.np-checkout__form input:focus{outline:none;border-color:var(--np-primary);box-shadow:0 0 0 3px var(--np-primary-light);}
.np-checkout__form input:focus-visible{outline:2px solid var(--np-primary);outline-offset:2px;}
.np-checkout__resend{margin-top:16px;text-align:center;}
.np-link-btn{
	display:inline-block;background:none;border:0;color:var(--np-primary);font-weight:600;font-size:14px;
	cursor:pointer;font-family:inherit;text-decoration:underline;margin-top:12px;
}

/* Account panel */
.np-account{border:1px solid var(--np-border);border-radius:var(--np-radius);padding:28px;}
.np-account__row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--np-border);}
.np-account__row:last-child{border-bottom:0;}
.np-alert{padding:16px 20px;border-radius:12px;margin-bottom:24px;font-size:14px;}
.np-alert--success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;}
.np-alert--error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca;}

/* =========================================================
   Responsive
   ========================================================= */
@media (max-width:960px){
	.np-nav{position:fixed;inset-inline:0;top:74px;background:#fff;border-bottom:1px solid var(--np-border);padding:20px 24px;display:none;}
	.np-nav.is-open{display:block;}
	.np-nav__list{flex-direction:column;gap:16px;}
	.np-nav__toggle{display:flex;}
	.np-value__grid,.np-dashboard__inner{grid-template-columns:1fr;}
	.np-slideshow--hero{height:min(480px,70vh);min-height:380px;}
	.np-slideshow__caption h1{font-size:clamp(26px,5vw,36px);}
	.np-features__grid,.np-why__grid{grid-template-columns:repeat(2,1fr);}
	.np-pricing__grid,.np-testimonials__grid,.np-steps__grid,.np-blog__grid{grid-template-columns:1fr;}
	.np-plan--popular{transform:none;}
	.np-footer__grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:560px){
	.np-features__grid,.np-why__grid,.np-footer__grid{grid-template-columns:1fr;}
	.np-hero__stats{gap:24px;flex-wrap:wrap;}
	.np-slideshow--hero{height:min(420px,64vh);min-height:340px;}
	.np-slideshow__caption{padding-bottom:32px;}
	.np-promo__inner{flex-direction:column;text-align:center;}
}
