/* Shared tokens: edit the named Nima colors and fonts in Elementor Site Settings. */
:root { --nima-radius:13px; --nima-card-radius:22px; }
.nima-master,.nima-block,.nima-designed {
 --nima-blue:var(--e-global-color-nimaac1,#2C95B3);
 --nima-ink:var(--e-global-color-nimain1,#173b47);
 --nima-pale:var(--e-global-color-nimapl1,#f2f9fc);
 --nima-white:var(--e-global-color-nimawh1,#fff);
}
.nima-master { width:100%; max-width:none; margin:0 auto; padding:48px 24px; direction:rtl; }


.nima-master .nima-document-content > .elementor-widget-container { color:var(--nima-ink); }
.nima-designed #main .aux-wrapper > .aux-container { max-width:none; padding-left:0; padding-right:0; }
.nima-designed #main .aux-primary { width:100%; float:none; }
.nima-designed .entry-main,.nima-designed .entry-content { width:100%; max-width:none; }
.nima-block { margin:0 0 48px; padding:0!important; direction:rtl; }
.nima-block > .elementor-container { max-width:none!important; }
.nima-block > .elementor-container > .elementor-column > .elementor-widget-wrap { padding:0; gap:20px; }
.nima-block .elementor-widget { margin-bottom:0; min-width:0; }
.nima-heading .elementor-heading-title,.nima-document-title {
 color:var(--nima-ink); font-family:var(--e-global-typography-nimahd1-font-family,Kalameh),sans-serif; font-weight:700; line-height:1.55; margin:0; -webkit-text-fill-color:currentColor;
}
.nima-heading h2 { font-size:32px; }
.nima-heading h3 { font-size:23px; }
.nima-heading h4,.nima-heading h5,.nima-heading h6 { font-size:20px; }
.nima-document-title { font-size:42px; margin-bottom:32px; }
.nima-text,.nima-block .elementor-widget-icon-list,.nima-faq,.nima-shared-table {
 font-family:var(--e-global-typography-nimatx1-font-family,IRANSans),sans-serif; color:var(--nima-ink); font-size:16px; line-height:1.95;
}
.nima-text p { margin:0 0 14px; }
.nima-text p:last-child { margin-bottom:0; }
.nima-text :is(ul,ol) { padding-inline-start:22px; margin:12px 0; }
.nima-text li { margin-bottom:8px; }
.nima-text a { color:var(--nima-blue); text-decoration:underline; text-underline-offset:4px; }
.nima-text strong { color:inherit; }
.nima-grid > .elementor-container { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; max-width:none!important; }
.nima-grid > .elementor-container > .elementor-column { width:100%!important; min-width:0; }
.nima-grid:has(> .elementor-container > .elementor-column:nth-child(2):last-child) > .elementor-container { grid-template-columns:repeat(2,minmax(0,1fr)); }
.nima-grid:has(> .elementor-container > .elementor-column:only-child) > .elementor-container { grid-template-columns:minmax(0,1fr); }
.nima-card > .elementor-widget-wrap {
 padding:26px!important; border:1px solid rgba(44,149,179,.16); border-radius:var(--nima-card-radius); background:linear-gradient(145deg,#fff,var(--nima-pale)); box-shadow:0 8px 24px rgba(44,149,179,.045); align-content:start; gap:16px; transition:box-shadow .25s ease,border-color .25s ease;
}
.nima-card:hover > .elementor-widget-wrap { border-color:rgba(44,149,179,.32); box-shadow:0 12px 32px rgba(44,149,179,.09); }
.nima-card .nima-heading h3 { font-size:22px; }
.nima-card .nima-text { font-size:15px; }
.nima-icon img { width:72px; height:72px; object-fit:contain; border-radius:0!important; }
.nima-icon { text-align:right; }
.nima-icon .elementor-widget-container { text-align:right; }
.nima-media img,.nima-media :is(iframe,video),.nima-media .elementor-video-wrapper { border-radius:var(--nima-radius); }
.nima-media img { display:block; max-width:100%; height:auto; margin-inline:auto; }
.nima-media figcaption,.nima-media .widget-image-caption { color:#647f89; font-family:IRANSans,sans-serif; font-size:13px; line-height:1.9; padding-top:10px; }
.nima-gallery .gallery-item img { width:100%; height:auto; border:0!important; }
.nima-quote blockquote,.nima-notice > .elementor-widget-container { margin:0; padding:24px; border-radius:var(--nima-card-radius); background:var(--nima-pale); border-inline-start:4px solid var(--nima-blue); }
.nima-step-number { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:13px; color:var(--nima-blue); background:#e1f2f7; font-size:20px; font-weight:700; }
.nima-cta { padding:32px!important; border-radius:var(--nima-card-radius); background:linear-gradient(135deg,var(--nima-pale),#fff); border:1px solid rgba(44,149,179,.16); }
.nima-cta .elementor-widget-button { width:auto; }
.nima-button .elementor-button,body :is(.aux-button,.aux-modern-button,.elementor-button,.bdt-ep-button,.nima-btn,.nima-cta-btn,.nima-demo-btn),body .wpcf7 input[type=submit] {
 border-radius:13px!important; background-color:var(--e-global-color-nimaac1,#2C95B3); color:#fff;
}
body :is(.aux-modern-button .aux-overlay::before,.aux-modern-button .aux-overlay::after) { background:var(--e-global-color-nimaac1,#2C95B3)!important; }
.nima-button .elementor-button { padding:14px 24px; font-family:IRANSans,sans-serif; font-size:15px; line-height:1.6; background:var(--nima-blue); }
.nima-button .elementor-button:hover { background:#257e97; }
.nima-faq .elementor-accordion-item { border:1px solid rgba(44,149,179,.20)!important; border-radius:13px; margin-bottom:14px; overflow:hidden; }
.nima-faq .elementor-tab-title { padding:18px 22px!important; background:var(--nima-pale); font-family:IRANSans,sans-serif; font-size:16px; font-weight:500; line-height:1.85; color:var(--nima-ink); }
.nima-faq .elementor-tab-title.elementor-active { color:var(--nima-blue); }
.nima-faq .elementor-tab-content { border-top:1px solid rgba(44,149,179,.12)!important; padding:20px 22px; font:inherit; }
.nima-faq .elementor-accordion-icon { color:var(--nima-blue); float:left!important; }
.nima-table-scroll { overflow:auto; max-width:100%; border-radius:22px; border:1px solid rgba(44,149,179,.18); }
.nima-table-scroll:focus-visible { outline:3px solid rgba(44,149,179,.30); outline-offset:3px; }
.nima-shared-table { border-collapse:collapse; width:100%; margin:0; }
.nima-shared-table :is(th,td) { padding:16px 20px; border:0; border-bottom:1px solid rgba(44,149,179,.12); text-align:center; vertical-align:middle; }
.nima-shared-table thead th { background:var(--nima-blue); color:#fff; font-weight:500; }
.nima-shared-table tbody tr:nth-child(odd) { background:var(--nima-pale); }
.nima-shared-table--comparison tbody th { text-align:right; }
.nima-shared-table tr:last-child :is(th,td) { border-bottom:0; }
.nima-form .wpcf7-form { direction:rtl; padding:24px; border:1px solid rgba(44,149,179,.2); border-radius:22px; background:var(--nima-pale); }
.nima-form .wpcf7-form :is(input[type=text],input[type=email],input[type=tel],input[type=number],textarea,select) { width:100%; max-width:100%; border:1px solid rgba(44,149,179,.28); border-radius:13px; padding:14px 18px; color:var(--nima-ink); background:#fff; font-family:IRANSans,sans-serif; font-size:16px; }
.nima-form .wpcf7-form textarea { min-height:180px; }
.nima-form .wpcf7-form .arcap_cf7-arcaptcha-invalid { display:block; width:100%; direction:rtl; text-align:right; }
.nima-form .wpcf7-form .arcap_cf7-arcaptcha { display:block; width:fit-content; max-width:100%; margin-left:auto; margin-right:0; }
.nima-form .wpcf7-form input[type=submit] { float:none; padding:14px 24px; margin-top:18px; border:0; }
.nima-block .elementor-icon-list-icon :is(i,svg) { color:var(--nima-blue); fill:var(--nima-blue); }
@media(max-width:1024px) { .nima-grid > .elementor-container { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:767px) {
 .nima-master { padding:30px 16px; } .nima-block { margin-bottom:32px; }
 .nima-grid > .elementor-container,.nima-grid:has(> .elementor-container > .elementor-column:nth-child(2):last-child) > .elementor-container { grid-template-columns:minmax(0,1fr); gap:18px; }
 .nima-card > .elementor-widget-wrap { padding:22px!important; }
 .nima-heading h2 { font-size:25px; } .nima-heading h3 { font-size:21px; } .nima-document-title { font-size:30px; }
 .nima-text,.nima-faq { font-size:15px; } .nima-cta { padding:24px!important; }
 .nima-shared-table--features tbody th { text-align:right; }
 .nima-shared-table--comparison { min-width:560px; }
 .nima-shared-table--features :is(th,td) { padding:12px 10px; font-size:13px; }
 .nima-form .wpcf7-form { padding:16px; }
}
@media(prefers-reduced-motion:reduce) { .nima-card > .elementor-widget-wrap { transition:none; } }
/* Elementor's per-section padding must not override the master canvas. */

.nima-document-content { color:var(--nima-ink); font-family:var(--e-global-typography-nimatx1-font-family,IRANSans),sans-serif; font-size:16px; line-height:1.95; }
.nima-document-content :is(h2,h3,h4,h5,h6) { font-family:var(--e-global-typography-nimahd1-font-family,Kalameh),sans-serif; color:var(--nima-ink); line-height:1.55; }
.nima-document-content .nima-text img { border-radius:13px; }
.nima-faq .elementor-accordion-title { color:inherit!important; }
.nima-faq .elementor-tab-content { color:var(--nima-ink)!important; }
body :is(a.nima-btn,a.nima-cta-btn,a.nima-demo-btn) { display:inline-flex; align-items:center; padding:14px 24px; border-radius:13px; font-family:IRANSans,sans-serif; text-decoration:none; }

.nima-form .form-wrapper > .row:has(> .column) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.nima-form .form-wrapper .column { min-width:0; }
.nima-form .form-wrapper p { margin-bottom:10px; }
.nima-form .form-wrapper > .row { margin-bottom:20px; }
.nima-post-comments :is(input[type=text],input[type=email],input[type=url],textarea) { border-radius:13px; border:1px solid rgba(44,149,179,.25); padding:14px 18px; max-width:100%; }
@media(max-width:767px) { .nima-form .form-wrapper > .row:has(> .column) { grid-template-columns:minmax(0,1fr); } }
body.blog article .entry-media img,body.archive article .entry-media img { border-radius:13px; }
.nima-featured-image { margin-bottom:32px!important; }
.nima-featured-image img { width:100%; height:auto; object-fit:contain; }
/* Service component: reuse the approved circular sun, fitted safely inside each card. */
.nima-service-graphic { position:relative; isolation:isolate; aspect-ratio:1; display:grid; place-items:center; overflow:hidden; width:100%; }
.nima-service-graphic > .elementor-widget-container { padding:0!important; }
.nima-service-graphic::before,.nima-service-graphic::after { content:""; position:absolute; top:50%; left:50%; width:calc(100% - 36px); aspect-ratio:1; border-radius:50%; background:transparent center/contain no-repeat; pointer-events:none; transform:translate(-50%,-50%); z-index:-1; transition:opacity .5s ease; }
.nima-service-graphic::before { background-image:url('service-circle-rest.svg?v=3'); }
.nima-service-graphic::after { background-image:url('service-circle-hover.svg?v=3'); opacity:0; }
.nima-service-card:is(:hover,:focus-within) .nima-service-graphic::after { opacity:1; animation:nima-kit-sun 5s ease-in-out infinite; }
.nima-service-graphic svg :is(path,rect,circle,ellipse) { fill:var(--nima-blue)!important; transition:fill .4s ease; }
.nima-service-card:is(:hover,:focus-within) .nima-service-graphic svg :is(path,rect,circle,ellipse) { fill:#fff!important; }
.nima-service-more { opacity:0; transform:translateY(6px); transition:opacity .3s ease,transform .3s ease; }
.nima-service-card:is(:hover,:focus-within) .nima-service-more { opacity:1; transform:none; }
.nima-service-pending { color:#738991; display:inline-block; padding:12px 18px; }
@keyframes nima-kit-sun { 0%,100%{transform:translate(-50%,-50%) scale(1);}50%{transform:translate(-50%,-50%) scale(1.06);} }
@media(max-width:1024px),(hover:none) and (pointer:coarse) { .nima-service-more { opacity:1; transform:none; } }
@media(prefers-reduced-motion:reduce) { .nima-service-graphic::after { animation:none!important; }.nima-service-graphic::before,.nima-service-graphic::after,.nima-service-graphic svg *,.nima-service-more { transition:none; } }
