/* Declared on body too: Elementor puts the kit colours on body.elementor-kit-N,
   and a var() set on :root alone would never see them. */
:root,body{
  --nv-ink:var(--e-global-color-secondary,#0E1C36);
  --nv-ink-2:var(--e-global-color-text,#2A3A55);
  --nv-muted:var(--e-global-color-nvmuted,#5B6782);
  --nv-tq:var(--e-global-color-primary,#1B3A6B);
  --nv-tq-soft:var(--e-global-color-nvmist,#E8EDF7);
  --nv-tq-deep:var(--e-global-color-nvdeep,#0F264D);
  --nv-saf:var(--e-global-color-accent,#D7263D);
  --nv-saf-soft:var(--e-global-color-nvreds,#FCE9EB);
  --nv-saf-deep:var(--e-global-color-nvredd,#B01B2F);
  --nv-bg:var(--e-global-color-nvbg,#F5F7FB);
  --nv-surface:var(--e-global-color-nvcard,#FFFFFF);
  --nv-line:var(--e-global-color-nvline,#DEE3EE);
  --nv-sky:var(--e-global-color-nvsky,#8FB0E8);
  --nv-on-accent:#FFFFFF;
  --nv-shadow:0 18px 40px -24px rgba(14,28,54,.38);
  --nv-display:var(--e-global-typography-primary-font-family,"Vazirmatn"),Tahoma,sans-serif;
  --nv-body:var(--e-global-typography-text-font-family,"Vazirmatn"),Tahoma,"Segoe UI",sans-serif;
  --nv-panel:var(--e-global-color-nvdeep,#12264A);
  --nv-panel-2:#1E3C72;
  --nv-on-panel:#F3F8F8;
  --nv-ok:#1E9E6A;
  --nv-warn:#E0A100;
  --nv-err:#B42318;
  --nv-info:#2C7BE5;
  --nv-ltr:"Vazirmatn",sans-serif;
  --night:var(--e-global-color-nvdeep,#0B1528);--night-2:color-mix(in srgb,var(--night) 88%,#fff);--on-night:#E8EDF6;--dim:rgba(232,237,246,.66);
}
*{box-sizing:border-box}
/* No browser gutter around the page (the default 8px body margin). */
html,body{margin:0;padding:0}
html,body{overflow-x:clip}
body.nv-front{background:var(--nv-bg);color:var(--nv-ink);font-family:var(--nv-body);font-size:var(--nv-base-size,15.5px);line-height:1.9}
.nv-front a{color:inherit;text-decoration:none}
.nv-wrap{max-width:var(--nv-container,1180px);margin-inline:auto;padding-inline:20px}
.nv-front h1,.nv-front h2,.nv-front h3{line-height:1.35;text-wrap:balance;margin:0}
.nv-front h2{font-size:clamp(24px,3vw,32px);font-weight:800}
.nv-front h3{font-size:17px;font-weight:700}
.nv-front p{margin:0}
.nv-ic{width:24px;height:24px;flex:none}
.nv-btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:12px;padding:12px 20px;font:700 15px var(--nv-body);cursor:pointer;transition:transform .15s,background .15s}
.nv-btn:focus-visible,.nv-front input:is([type=checkbox],[type=radio],[type=range],[type=file],[type=button],[type=submit],[type=reset]):focus-visible,.nv-chip:focus-visible,.nv-front summary:focus-visible{outline:3px solid var(--nv-saf);outline-offset:2px}
.nv-btn-primary{background:var(--nv-tq);color:var(--nv-on-accent)}
.nv-btn-primary:hover{background:var(--nv-tq-deep)}
.nv-btn-ghost{background:transparent;color:var(--nv-ink);box-shadow:inset 0 0 0 1.5px var(--nv-line)}
.nv-btn-saf{background:var(--nv-saf);color:#fff}
.nv-btn-saf:hover{background:var(--nv-saf-deep)}
.nv-btn:hover{transform:translateY(-1px)}
.nv-eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--nv-tq);font-weight:700;font-size:13.5px;letter-spacing:.02em}
.nv-eyebrow::before{content:"";width:18px;height:2px;background:var(--nv-saf);border-radius:2px}
.nv-sec{padding-block:72px;position:relative}
.nv-sec-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:36px}
.nv-sec-head p{color:var(--nv-muted);max-width:52ch}
.nv-logo{display:flex;align-items:center;gap:10px}
.nv-logo-mark{width:40px;height:40px;border-radius:12px;background:var(--nv-tq);color:var(--nv-on-accent);display:grid;place-items:center}
.nv-logo b{font:400 28px/1 var(--nv-display);color:var(--nv-ink)}
.nv-logo small{display:block;font-size:11px;color:var(--nv-muted);margin-top:4px}
.nv-front select,.nv-front input{font:500 15px var(--nv-body);color:var(--nv-ink);background:transparent;border:0;padding:4px 0;width:100%}
.nv-front select option{background:var(--nv-surface);color:var(--nv-ink)}
.nv-float{position:absolute;background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:14px;padding:10px 14px;display:flex;align-items:center;gap:10px;box-shadow:var(--nv-shadow);font-size:13px}
.nv-float b{display:block;font-size:15px}
.nv-float .nv-ic{color:var(--nv-tq);background:var(--nv-tq-soft);border-radius:10px;padding:6px;width:36px;height:36px}
.nv-band{background:var(--nv-tq-soft)}
.nv-flag{width:54px;height:38px;border-radius:7px;grid-row:span 2;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}
.nv-f-ca{background:linear-gradient(90deg,#D52B1E 26%,#fff 26% 74%,#D52B1E 74%)}
.nv-f-de{background:linear-gradient(#111 33.3%,#DD0000 33.3% 66.6%,#FFCE00 66.6%)}
.nv-f-au{background:radial-gradient(circle at 72% 30%,#fff 2px,transparent 3px),radial-gradient(circle at 82% 62%,#fff 2px,transparent 3px),radial-gradient(circle at 64% 72%,#fff 2px,transparent 3px),radial-gradient(circle at 26% 70%,#fff 3px,transparent 4px),#012169}
.nv-f-tr{background:radial-gradient(circle at 44% 50%,#E30A17 7px,transparent 7.5px),radial-gradient(circle at 38% 50%,#fff 9px,transparent 9.5px),#E30A17}
.nv-f-nl{background:linear-gradient(#AE1C28 33.3%,#fff 33.3% 66.6%,#21468B 66.6%)}
.nv-f-it{background:linear-gradient(90deg,#009246 33.3%,#fff 33.3% 66.6%,#CE2B37 66.6%)}
.nv-card{background:var(--nv-surface);border:1px solid var(--nv-line);border-radius:20px;padding:28px}
.nv-field{display:grid;gap:4px;font-size:13px;color:var(--nv-muted)}
.nv-field select,.nv-field input{border:1.5px solid var(--nv-line);border-radius:10px;padding:10px 12px;background:var(--nv-bg)}
.nv-chips{display:flex;gap:8px;flex-wrap:wrap}
.nv-chip{border:1.5px solid color-mix(in srgb,var(--nv-bg) 25%,transparent);background:transparent;color:inherit;border-radius:12px;padding:8px 14px;font:500 14px var(--nv-body);cursor:pointer;display:grid;text-align:center;line-height:1.5}
.nv-chip small{opacity:.65;font-size:11.5px}
.nv-chip[aria-pressed="true"]{background:var(--nv-saf);border-color:var(--nv-saf);color:#fff}
.nv-chip:disabled{opacity:.35;cursor:not-allowed;text-decoration:line-through}
.nv-toast{font-size:13.5px;color:var(--nv-saf);min-height:1.9em}
.nv-front details{border-bottom:1px solid var(--nv-line);padding-block:14px}
.nv-front summary:not(.nv-accordion__title){cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:16px}
.nv-front summary::-webkit-details-marker{display:none}
.nv-front summary:not(.nv-accordion__title)::after{content:"+";color:var(--nv-tq);font-size:22px;line-height:1}
.nv-front details[open] summary:not(.nv-accordion__title)::after{content:"−"}
.nv-front details p{color:var(--nv-muted);margin-top:8px;font-size:14.5px;}
@media (max-width:600px){
.nv-float{display:none}
.nv-sec{padding-block:56px}
}
@media (prefers-reduced-motion:reduce){
*{transition:none!important}
}
.nv-front pre{margin:0;background:var(--nv-bg);border:1px solid var(--nv-line);border-radius:10px;padding:10px 12px;font:12.5px/1.7 ui-monospace,Menlo,monospace;direction:ltr;text-align:left;overflow-x:auto;color:var(--nv-ink-2)}
.nv-btn-sm{padding:8px 14px;font-size:13px;border-radius:10px}
.nv-btn-lg{padding:15px 26px;font-size:16px;border-radius:14px}
.nv-btn[disabled]{opacity:.45;cursor:not-allowed;transform:none}
.nv-btn-line{background:transparent;color:inherit;box-shadow:inset 0 0 0 1.5px currentColor}
.nv-btn-icon{width:44px;height:44px;padding:0;justify-content:center}
.nv-eyebrow.nv-on-dark{color:#A9C1EC}
.nv-ribbons{position:relative;overflow:hidden}
.nv-ribbons:not(.e-con){height:130px;margin-block:10px 0}
.nv-rb{position:absolute;inset-inline:-12%;padding-block:12px;white-space:nowrap;overflow:hidden}
.nv-rb1{top:var(--nv-rb-top,22px);background:var(--nv-tq);color:var(--nv-on-accent);transform:rotate(var(--nv-rb-rotate,-3deg));z-index:2}
.nv-rb2{top:var(--nv-rb-top,38px);background:var(--nv-saf);color:#fff;transform:rotate(var(--nv-rb-rotate,3deg))}
.nv-track{display:inline-flex;gap:36px;animation:nv-slide 38s linear infinite;font-weight:700;font-size:17px}
.nv-rb2 .nv-track{animation-direction:reverse}
.nv-track span{display:inline-flex;align-items:center;gap:10px}
.nv-track .nv-ic{width:22px;height:22px}
@keyframes nv-slide{to{transform:translateX(50%)}}
html:not([dir=rtl]) .nv-track{animation-name:nv-slide-ltr}
@keyframes nv-slide-ltr{to{transform:translateX(-50%)}}
/* Elementor ribbon: a container with the class nv-ribbons holding an icon list; app.js doubles the items so the loop is seamless */
.nv-ribbons.e-con,.nv-ribbons>.e-con-inner{justify-content:flex-start;flex-wrap:nowrap}
.nv-ribbons .elementor-widget-icon-list{width:max-content;max-width:none;flex:none}
.nv-ribbons .elementor-icon-list-items{flex-wrap:nowrap!important;white-space:nowrap;gap:36px}
.nv-ribbons .elementor-icon-list-items.nv-track{display:flex;font-size:inherit;font-weight:inherit}
.nv-ribbons .elementor-icon-list-item{margin:0!important;padding:0!important}
.nv-ribbons .elementor-icon-list-item::after{display:none!important}
/* Reduced motion: the decorative ribbons keep moving, only much slower */
@media (prefers-reduced-motion:reduce){.nv-track{animation-duration:120s}}
[hidden]{display:none!important}
.nv-ph{position:relative;display:block;overflow:hidden;background-color:#2C5091;background-image:linear-gradient(150deg,rgba(143,176,232,.55),transparent 55%),repeating-linear-gradient(135deg,rgba(255,255,255,.06) 0 12px,transparent 12px 24px),linear-gradient(160deg,#1B3A6B,#0E1C36);background-size:cover;background-position:center;max-width:100%}
.nv-ph>span{position:absolute;inset-inline:10px;bottom:10px;display:flex;gap:6px;align-items:center;font-size:11.5px;line-height:1.5;color:rgba(255,255,255,.85);background:rgba(14,28,54,.45);backdrop-filter:blur(4px);border-radius:8px;padding:4px 8px;width:max-content;max-width:calc(100% - 20px)}
.nv-ph>span::before{content:"";width:14px;height:14px;flex:none;background:currentColor;-webkit-mask:none center/contain no-repeat;mask:none center/contain no-repeat}
.nv-ph.nv-has-photo>span{display:none}
.nv-ph-face{width:40px;height:40px;border-radius:50%;border:3px solid var(--nv-surface);flex:none}
.nv-ph-face>span{display:none}
.nv-muted-p{color:var(--nv-muted);margin-block:14px 18px;max-width:58ch}
.nv-lc{--night:#0B1528;--night-2:#12213D;--on-night:#E8EDF6;--dim:rgba(232,237,246,.66);background:var(--nv-surface)}
.nv-lc .nv-stars{font-style:normal;color:#F2B01E;letter-spacing:1px}
.nv-lc-sec{position:relative;padding-block:92px}
.nv-lc-label{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--nv-saf);font-weight:700;margin-bottom:10px}
.nv-lc-label::before{content:"";width:18px;height:2px;border-radius:2px;background:currentColor}
.nv-lc-sec h2{font:800 clamp(26px,3.2vw,40px)/1.35 var(--nv-body);letter-spacing:-.01em}
.nv-lc-muted{color:var(--nv-muted);max-width:44ch}
.nv-lc-row-head{display:flex;justify-content:space-between;align-items:end;gap:20px 40px;margin-bottom:40px;flex-wrap:wrap}
.nv-lc-link{display:inline-block;font-weight:700;color:var(--nv-tq);border-bottom:1.5px solid currentColor;padding-bottom:1px}
.nv-lc-center{display:table;margin:36px auto 0}
.nv-lc .nv-toast{color:var(--nv-saf);min-height:1.5em;font-size:14px}
@media (max-width:640px){
.nv-lc-sec{padding-block:64px}
}
.nv-logo-mark{background:none!important;width:auto;height:auto}

/* WordPress core output */
.nv-front img{max-width:100%;height:auto}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.screen-reader-text:focus{clip:auto!important;clip-path:none;height:auto;width:auto;display:block;z-index:100000;background:var(--nv-surface);color:var(--nv-ink);padding:12px 18px;top:8px;inset-inline-start:8px;border-radius:10px;box-shadow:var(--nv-shadow)}
.nv-skip{position:absolute;inset-inline-start:0;top:0;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.nv-skip:focus{width:auto;height:auto;overflow:visible;clip-path:none;inset-inline-start:12px;top:12px;z-index:100000;background:var(--nv-surface);padding:10px 16px;border-radius:10px}
.alignleft{float:left;margin-inline-end:1.5em}.alignright{float:right;margin-inline-start:1.5em}.aligncenter{display:block;margin-inline:auto}
.wp-caption,.wp-block-image figcaption{font-size:13px;color:var(--nv-muted)}
.nv-btn--primary{background:var(--nv-tq);color:var(--nv-on-accent)}
/* floating contact + back to top */
.nv-float-cta,.nv-float--whatsapp,.nv-float--phone,.nv-float--quote{position:fixed;bottom:22px;z-index:90;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--nv-saf);box-shadow:0 12px 28px -10px rgba(14,28,54,.55);font-size:26px;padding:0;border:0}
.nv-float--whatsapp{background:#1FA855}
.nv-float--start{inset-inline-start:22px}.nv-float--end{inset-inline-end:22px}
.nv-top.nv-top{position:fixed;bottom:22px;inset-inline-end:22px;z-index:89;width:46px;height:46px;border-radius:14px;border:1px solid var(--nv-line);background:var(--nv-saf);border-color:var(--nv-saf);color:var(--nv-on-accent);cursor:pointer;box-shadow:var(--nv-shadow);display:grid;place-items:center;padding:0}
.nv-top.nv-top[hidden]{display:none}
.nv-top svg{display:block;width:22px;height:22px}
.nv-top.nv-top:hover,.nv-top.nv-top:focus{background:var(--nv-saf-deep);border-color:var(--nv-saf-deep);color:var(--nv-on-accent)}
.nv-float__svg{display:block;width:30px;height:30px}
a.nv-float.nv-float--phone,a.nv-float.nv-float--quote,a.nv-float.nv-float--whatsapp,a.nv-float.nv-float--phone:hover,a.nv-float.nv-float--quote:hover,a.nv-float.nv-float--whatsapp:hover{color:#fff;display:grid;place-items:center;gap:0;padding:0;line-height:1;text-decoration:none}
.nv-float.nv-float--phone>.nvi,.nv-float.nv-float--quote>.nvi,.nv-float>.nv-float__svg{color:#fff;fill:currentColor;margin:0;display:block;line-height:1;font-size:26px;width:1em;height:1em;text-align:center}
.nv-float.nv-float--phone>.nvi::before,.nv-float.nv-float--quote>.nvi::before{color:#fff;display:block;margin:0}
.nv-float>.nv-float__svg{width:30px;height:30px}
.nv-float--end~.nv-top{inset-inline-end:auto;inset-inline-start:22px}
@media (max-width:600px){.nv-float--whatsapp,.nv-float--phone,.nv-float--quote{display:grid}}

/* Button classes set on an Elementor button widget style the button, not the widget box around it */
.elementor-widget.nv-btn{display:block;background:none!important;padding:0;box-shadow:none!important;border-radius:0;transform:none;gap:0}
.elementor-widget.nv-btn:hover{transform:none}
.elementor-widget.nv-btn .elementor-button{display:inline-flex;align-items:center;gap:8px;border-radius:12px;font-weight:700;transition:transform .15s,background-color .15s}
.elementor-widget.nv-btn .elementor-button:hover{transform:translateY(-1px)}
.elementor-widget.nv-btn-ghost .elementor-button{box-shadow:inset 0 0 0 1.5px var(--nv-line)}
.elementor-widget.nv-btn-lg .elementor-button{padding:15px 26px;border-radius:14px}
.elementor-element.elementor-widget-button.elementor-button-info .elementor-button{background-color:var(--nv-tq);color:#fff}
.elementor-element.elementor-widget-button.elementor-button-success .elementor-button{background-color:var(--nv-ok);color:#fff}
.elementor-element.elementor-widget-button.elementor-button-warning .elementor-button{background-color:var(--nv-warn);color:var(--nv-ink)}
.elementor-element.elementor-widget-button.elementor-button-danger .elementor-button{background-color:var(--nv-saf-deep);color:#fff}
/* Header template: one line, menu centred, phone and button kept together */
.nv-hdr{flex-wrap:nowrap}
.nv-hdr .nv-hdr-nav{flex:1 1 auto;min-width:0;display:flex;justify-content:center}
/* Mobile: the hamburger sits at the far side of the header bar. */
@media (max-width:1024px){.nv-hdr .nv-hdr-nav{justify-content:flex-end;margin-inline-start:auto}.nv-hdr .nv-hdr-nav>.elementor-widget-container,.nv-hdr .nv-hdr-nav .nv-nav-menu{margin-inline-start:auto}}
/* Dark header: dropdown panel border that reads on navy. */
.nv-hdr .nv-hdr-nav .nv-nav-menu:not(.is-mobile) .sub-menu{border-color:color-mix(in srgb,currentColor 14%,transparent)}
.nv-nav-menu--horizontal .nv-nav-menu__list{gap:var(--nv-nav-gap);flex-wrap:nowrap}
.nv-nav-menu--horizontal .nv-nav-menu__list>li>a{white-space:nowrap}
.nv-nav-menu--horizontal:not(.is-mobile) .nv-nav-menu__list>li{flex:none;flex-wrap:nowrap}
.nv-nav-menu li ul{border-radius:12px;padding:8px}
.nv-nav-menu li ul a{display:block;padding:6px 10px;border-radius:8px}
.nv-nav-menu li ul a:hover{background:var(--nv-bg)}
.nv-hdr-actions{flex:none;flex-wrap:nowrap;align-items:center;width:auto!important}
/* Without a .nv-hdr row, the actions move to the far end once the menu folds into its toggle. */
@media (max-width:1024px){.e-con.nv-hdr-actions{margin-inline-start:auto}.nv-hdr .e-con.nv-hdr-actions{margin-inline-start:0}}
.nv-hdr-actions .elementor-heading-title{white-space:nowrap;direction:ltr;unicode-bidi:isolate}
/* Footer template */
.nv-ft-cta{width:min(100%,var(--nv-container,1180px))!important;margin-inline:auto;gap:24px}
.nv-ft-cta>.e-con-inner{justify-content:space-between;align-items:center;gap:24px}
.nv-ft-contact .elementor-icon-list-item:has(.elementor-icon-list-text:empty){display:none}
.nv-ft-contact .elementor-icon-list-text{overflow-wrap:anywhere}
.nv-ft-grid .nv-nav-menu--vertical li+li{margin-top:6px}
/* Elementor page layouts (demo/pages): section helpers used through CSS classes */
.nv-ribbons.e-con{--overflow:hidden;height:var(--nv-ribbons-h,120px);margin-block:var(--nv-ribbons-mt,4px) var(--nv-ribbons-mb,0px)}
.nv-ribbons>.nv-rb.e-con{position:absolute;inset-inline:-12%;--width:auto;width:auto;--padding-top:12px;--padding-bottom:12px;--padding-left:0;--padding-right:0;--overflow:hidden;flex-wrap:nowrap}
.nv-ribbons>.nv-rb1.e-con{top:var(--nv-rb-top,20px)}.nv-ribbons>.nv-rb2.e-con{top:var(--nv-rb-top,40px)}
/* Tilt: the Navard "Strip tilt" control, unless Elementor's own Transform › Rotate is used on the strip. */
.nv-ribbons>.nv-rb1.e-con:not(.e-transform){transform:rotate(var(--nv-rb-rotate,-3deg))}.nv-ribbons>.nv-rb2.e-con:not(.e-transform){transform:rotate(var(--nv-rb-rotate,3deg))}
.nv-ribbons>.nv-rb.e-con{transform-origin:center;will-change:transform}
.nv-ribbons .elementor-icon-list-text{font-weight:700;font-size:16px}
.nv-hl{color:var(--e-global-color-accent)}
.nv-h1 .elementor-heading-title{font-size:clamp(34px,4.6vw,64px);line-height:1.2}
.nv-h2 .elementor-heading-title{font-size:clamp(24px,2.6vw,34px);line-height:1.35}
.nv-hero-card.e-con{box-shadow:0 30px 60px -30px rgba(15,38,77,.55)}
.nv-finder-overlap.e-con{margin-top:-80px;position:relative;z-index:2;--padding-left:40px;--padding-right:40px}
@media (max-width:767px){.nv-finder-overlap.e-con{margin-top:-56px;--padding-left:10px;--padding-right:10px}.nv-ribbons.e-con{height:var(--nv-ribbons-h,100px)}}
.nv-n-rating.e-con{align-items:center;justify-content:flex-end}
.nv-n-rating-num .elementor-heading-title{font-size:48px;line-height:1}
.nv-n-rating-stars .elementor-heading-title{font-size:16px;letter-spacing:2px;color:#F5B301}
.e-con.nv-sec,.e-con.nv-ip-hero{padding-block:var(--padding-top) var(--padding-bottom)}
.e-con.nv-sec-head{margin-bottom:0}
.e-con.nv-trust,.e-con.nv-steps{display:var(--display);gap:var(--gap)}
.e-con.nv-steps::before{display:none}
/* containers that rise a little on hover (cards built from containers) */
.e-con.nv-lift{transition:transform .25s,border-color .25s,box-shadow .25s}
.e-con.nv-lift:hover{transform:translateY(-3px)}
.nv-photo img{width:100%;border-radius:24px;object-fit:cover;aspect-ratio:4/3.4}
.nv-nsg-list .nv-services__items{gap:0}
.nv-nsg-list .nv-services__item{box-shadow:none;border-radius:0!important;border-bottom:1px solid var(--e-global-color-nvline);background:transparent!important}
.nv-ft-cta-title .elementor-heading-title{font-size:clamp(22px,2.4vw,32px);line-height:1.4}
.nv-table-wrap{overflow-x:auto;background:var(--e-global-color-nvcard);border:1px solid var(--e-global-color-nvline);border-radius:22px}
.nv-table-wrap table.nv-ip-table{display:table;width:100%;min-width:560px;border:0;border-radius:0;border-collapse:collapse;margin:0}
.nv-table-wrap th,.nv-table-wrap td{padding:14px 18px;text-align:start;border:0;border-bottom:1px solid var(--e-global-color-nvline);font-size:14px}
.nv-table-wrap th{font-size:12.5px;color:var(--e-global-color-nvmuted);font-weight:700;background:var(--e-global-color-nvbg)}
.nv-table-wrap tr:last-child td{border-bottom:0}
.nv-table-wrap td:first-child{font-weight:700;color:var(--e-global-color-secondary)}
.nv-country-hero.e-con::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,38,77,.92),rgba(15,38,77,.55));z-index:0;pointer-events:none}
.nv-country-hero.e-con>.e-con-inner{position:relative;z-index:1}
.nv-country-stats.e-con{box-shadow:0 20px 40px -24px rgba(15,38,77,.5)}
.nv-n-team .nv-team{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px}
.nv-n-team .nv-team__member{border-radius:20px;border:1px solid var(--e-global-color-nvline);box-shadow:none}
.nv-n-team .nv-team__photo{aspect-ratio:4/4.4}
.nv-n-hero-stats.e-con{--width:38%;flex:0 0 auto}
.nv-n-hero-stats>.e-con{--width:100%}
@media (max-width:767px){.nv-n-hero-stats.e-con{--width:100%}}
.e-con.nv-ip-aside,.e-con.nv-ip-feat{display:var(--display);margin-bottom:0}
.e-con.nv-lc-sec{padding-block:var(--padding-top) var(--padding-bottom)}
.nv-n-hero-stats .elementor-counter .elementor-counter-number-wrapper{font-size:clamp(24px,2.2vw,32px)!important}

/* Footer: one icon style for contact rows and social links (equal round chips) */
.nv-ft-contact .elementor-icon-list-item{align-items:center}
.nv-ft-contact .elementor-icon-list-icon{flex:none;display:inline-grid!important;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(215,38,61,.1);background:color-mix(in srgb,currentColor 12%,transparent)}
.nv-ft-contact .elementor-icon-list-icon i,.nv-ft-contact .elementor-icon-list-icon svg{width:14px!important;font-size:14px!important;height:14px;text-align:center;line-height:1}
.nv-ft-contact .elementor-icon-list-text{unicode-bidi:plaintext}
.nv-ft-social .elementor-social-icon{width:2.4em;height:2.4em;display:inline-grid;place-items:center;transition:transform .15s,opacity .15s}
.nv-ft-social .elementor-social-icon:hover{transform:translateY(-2px)}
.nv-ft-social .elementor-social-icon i,.nv-ft-social .elementor-social-icon svg{width:1em;height:1em;font-size:15px;line-height:1}
/* Maghsad landing: hero glow and the closing call-to-action panel */
.lm-hero.e-con{background-image:radial-gradient(900px 420px at 50% 0,var(--nv-tq-soft),transparent 70%)}
.nv-n-cta.e-con{--padding-top:56px;--padding-bottom:56px;--padding-left:60px;--padding-right:60px;border-radius:32px}
.nv-n-cta.e-con{min-height:0;align-items:center;position:relative;overflow:hidden;isolation:isolate}
.nv-n-cta--dark.e-con::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(420px 260px at 0 0,rgba(215,38,61,.35),transparent 70%),radial-gradient(1.2px 1.2px at 12px 12px,rgba(255,255,255,.14) 1px,transparent 1.4px) 0 0/22px 22px}
.nv-n-cta--dark .elementor-widget-text-editor{opacity:.78}
@media (max-width:1024px){.nv-n-cta.e-con{--padding-top:40px;--padding-bottom:40px;--padding-left:40px;--padding-right:40px;flex-direction:column;align-items:flex-start}.nv-n-cta>.e-con{--width:100%}}
@media (max-width:767px){.nv-n-cta.e-con{--padding-top:30px;--padding-bottom:30px;--padding-left:22px;--padding-right:22px;border-radius:24px}.nv-n-cta .elementor-widget-button,.nv-n-cta .elementor-button{flex:1;justify-content:center}}
/* Accordion: one chevron that turns on open, no extra marker */
.nv-n-faq .nv-accordion__title::after{content:none!important}
/* Post cards (magazine templates and the Posts widget) */
.nv-lbl{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.nv-lbl-card{display:grid;gap:8px;align-content:start}
.nv-lbl-card .nv-ph{aspect-ratio:16/11;border-radius:22px;width:100%;margin-bottom:8px}
.nv-lbl--overlay .nv-lbl-card{position:relative;display:block;overflow:hidden;border-radius:24px;isolation:isolate}
.nv-lbl--overlay .nv-lbl-card .nv-ph{margin:0;border-radius:inherit;aspect-ratio:1.35/1;transition:transform .5s,filter .3s}
.nv-lbl--overlay .nv-lbl-card:hover .nv-ph{transform:scale(1.04)}
.nv-lbl-card__body{position:absolute;inset-inline:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 20px;background:linear-gradient(transparent,rgba(10,14,18,.6));color:#fff}
.nv-lbl--overlay .nv-lbl-card h3{margin:0;color:inherit;font-size:16px}
.nv-lbl--overlay .nv-lbl-card:hover h3{color:inherit}
.nv-lbl--overlay .nv-lbl-card p{margin:0;color:rgba(255,255,255,.65);font-size:12px}
.nv-lbl-card__arrow{display:grid;flex:none;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:14px;transition:background-color .2s}
.nv-lbl-card__arrow svg{width:1em;height:1em;fill:currentColor}
.nv-lbl-card .nv-ph img,.nv-lbl-card .nv-ph{transition:filter .3s}
.nv-lbl-card:hover .nv-ph{filter:brightness(1.08)}
.nv-lbl-card em{position:absolute;top:14px;inset-inline-start:14px;font-style:normal;font-size:12px;font-weight:700;background:var(--nv-surface);color:var(--nv-tq);border-radius:999px;padding:3px 12px}
.nv-lbl-card small{color:var(--nv-muted);font-size:12.5px}
.nv-lbl-card h3{font-size:18px;line-height:1.6}
.nv-lbl-card:hover h3{color:var(--nv-tq)}
.nv-lbl-card p{color:var(--nv-muted);font-size:14px}
.nv-lbl--list{grid-template-columns:1fr;gap:12px}
.nv-posts-fill-yes,.nv-posts-fill-yes>.elementor-widget-container,.nv-posts-fill-yes .nv-lbl{height:100%}
.nv-posts-fill-yes .nv-lbl{grid-auto-rows:1fr}
.nv-lbl--list .nv-lbl-card{display:flex;align-items:center;gap:14px;padding:10px;border-radius:18px;background:var(--nv-surface)}
.nv-lbl--list .nv-lbl-card .nv-ph{flex:none;width:96px;aspect-ratio:4/3;margin:0;border-radius:12px}
.nv-lbl-card__text{display:grid;gap:4px;min-width:0}
.nv-lbl--list .nv-lbl-card small{font-size:11.5px}
.nv-lbl--list .nv-lbl-card h3{margin:0;font-size:14.5px;line-height:1.7}
.nv-lbl--list .nv-lbl-card p{margin:0;font-size:12.5px}
.nv-lbl--rows{display:block;border-top:1px solid var(--nv-line)}
.nv-lbl--rows .nv-row{position:relative;display:flex;align-items:center;gap:16px;padding:26px 6px;border-bottom:1px solid var(--nv-line);color:var(--nv-ink);isolation:isolate;transition:padding .35s,color .3s}
.nv-lbl--rows .nv-row::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:18px;background:var(--night,var(--nv-ink));transform:scaleY(0);transform-origin:bottom;transition:transform .45s cubic-bezier(.7,0,.2,1)}
.nv-row__num{flex:0 0 54px;font-family:var(--nv-display,inherit);font-size:28px;line-height:1;color:color-mix(in srgb,var(--nv-muted) 50%,transparent);transition:color .3s}
.nv-lbl--rows .nv-row h3{flex:1.6 1 0;min-width:0;margin:0;color:inherit;font-size:clamp(17px,1.5vw,22px);line-height:1.6}
.nv-row__col{flex:1 1 0;min-width:0;color:var(--nv-ink);font-size:13px;font-weight:600;line-height:1.7}
.nv-row__col small{display:block;color:var(--nv-muted);font-size:11.5px;font-weight:400}
.nv-row__end{flex:0 0 90px;font-family:var(--nv-display,inherit);font-size:22px;color:var(--nv-ink);transition:color .3s}
.nv-lbl--rows .nv-row__arrow{width:48px;height:48px;border:1px solid var(--nv-line);background:none;color:var(--nv-ink);font-size:16px;transition:background-color .3s,border-color .3s,color .3s,transform .3s}
.nv-lbl--rows .nv-row:hover{padding-inline:24px;color:#fff}
.nv-lbl--rows .nv-row:hover::before{transform:scaleY(1)}
.nv-lbl--rows .nv-row:hover h3{color:#fff}
.nv-lbl--rows .nv-row:hover .nv-row__num{color:var(--nv-saf)}
.nv-lbl--rows .nv-row:hover .nv-row__col,.nv-lbl--rows .nv-row:hover .nv-row__col small,.nv-lbl--rows .nv-row:hover .nv-row__end{color:rgba(255,255,255,.8)}
.nv-lbl--rows .nv-row:hover .nv-row__arrow{border-color:var(--nv-saf);background:var(--nv-saf);color:#fff;transform:rotate(-45deg)}
.nv-row-preview{position:fixed;top:0;left:0;z-index:30;width:300px;height:210px;overflow:hidden;border-radius:22px;pointer-events:none;opacity:0;box-shadow:0 30px 60px -20px rgba(0,0,0,.5);transform:translate(-50%,-50%) scale(.6) rotate(-6deg);transition:opacity .3s,transform .35s cubic-bezier(.2,.8,.2,1)}
.nv-row-preview.is-on{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(-3deg)}
.nv-row-preview img{width:100%;height:100%;object-fit:cover}
.nv-row-preview span{position:absolute;bottom:10px;inset-inline-end:10px;padding:3px 10px;border-radius:8px;background:var(--nv-saf);color:#fff;font-size:12px;font-weight:700}
.nv-row-preview span:empty{display:none}
@media (max-width:767px){.nv-lbl--rows .nv-row{flex-wrap:wrap;gap:8px 14px;padding:18px 4px}.nv-lbl--rows .nv-row:hover{padding-inline:12px}.nv-row__num{flex-basis:auto;font-size:22px}.nv-lbl--rows .nv-row h3{flex:1 1 60%}.nv-row__col{flex:1 1 40%;order:5}.nv-row__end{flex:0 0 auto;order:4;font-size:18px}.nv-lbl--rows .nv-row__arrow{display:none}}
/* Posts: cards with details, project status, the large first card */
.nv-lbl--cards .nv-lbl-card{display:flex;flex-direction:column;gap:0;overflow:hidden;border:1px solid var(--nv-line);border-radius:18px;background:var(--nv-surface)}
.nv-lbl-card__media{position:relative;overflow:hidden}
.nv-lbl--cards .nv-lbl-card .nv-ph{margin:0;border-radius:0;aspect-ratio:4/3;background-size:cover;background-position:center;transition:transform .6s,filter .3s}
.nv-lbl--cards .nv-lbl-card:hover .nv-ph{transform:scale(1.05)}
.nv-lbl--cards .nv-lbl-card em{top:12px;inset-inline-start:12px}
.nv-lbl-card__main{display:flex;flex:1;flex-direction:column;padding:16px 18px}
.nv-lbl--cards .nv-lbl-card h3{margin:0 0 8px;font-size:17px;line-height:1.7}
.nv-lbl--cards .nv-lbl-card p{flex:1;margin:0;font-size:13.5px;line-height:1.9}
.nv-lbl-kicker{margin-bottom:6px;color:var(--nv-tq);font-size:12px;font-weight:800}
.nv-lbl-status{position:absolute;top:14px;inset-inline-end:14px;z-index:2;padding:3px 10px;border-radius:999px;background:var(--nv-tq);color:#fff;font-size:11.5px;font-style:normal;font-weight:700;line-height:1.6}
.nv-lbl-status--running{background:var(--nv-saf)}
.nv-lbl-date{position:absolute;bottom:12px;inset-inline-start:12px;padding:4px 10px;border-radius:10px;background:var(--nv-surface);color:var(--nv-muted);font-size:11px;font-weight:700;line-height:1.3;text-align:center}
.nv-lbl-date b{display:block;color:var(--nv-ink);font-size:18px}
.nv-lbl-details{display:flex;flex-wrap:wrap;gap:4px 18px;margin:8px 0 0;font-size:12.5px}
.nv-lbl-details div{display:flex;gap:6px}
.nv-lbl-details dt{opacity:.85}
.nv-lbl-details dd{margin:0;font-weight:700}
.nv-lbl--overlay .nv-lbl-details dt{color:rgba(255,255,255,.78)}
.nv-lbl--cards .nv-lbl-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:auto;padding-top:10px;border-top:1px dashed var(--nv-line);font-size:11.5px;color:var(--nv-muted)}
.nv-lbl--cards .nv-lbl-details div{display:block}
.nv-lbl--cards .nv-lbl-details dd{color:var(--nv-ink);font-size:13px;font-weight:800}
.nv-details-inline-yes .nv-lbl--cards .nv-lbl-details{gap:6px 14px}.nv-details-inline-yes .nv-lbl--cards .nv-lbl-details div{display:flex;gap:4px;min-width:0}.nv-details-inline-yes .nv-lbl--cards .nv-lbl-details dt::after{content:":"}.nv-details-inline-yes .nv-lbl--cards .nv-lbl-details dd{overflow:hidden;font-size:inherit;font-weight:700;text-overflow:ellipsis;white-space:nowrap}
.nv-lbl--cards h3+.nv-lbl-details{margin-top:0}
.nv-lbl-meta{display:flex;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px dashed var(--nv-line);color:var(--nv-muted);font-size:12px}
.nv-lbl-meta__more{color:var(--nv-tq);font-weight:700}
.nv-lbl.nv-lbl--lead{grid-auto-rows:var(--nv-lead-row,290px)}
@media (min-width:1025px){.nv-lbl.nv-lbl--lead{grid-template-columns:var(--nv-lead,1.5fr) repeat(2,minmax(0,1fr))!important}}
.nv-lbl--lead .nv-lbl-card{height:100%}
.nv-lbl--lead .nv-lbl-card .nv-ph{position:absolute;inset:0;height:100%;aspect-ratio:auto}
.nv-lbl--lead .nv-lbl-card:first-child{grid-row:span 2}
.nv-lbl--lead .nv-lbl-card__body{top:0;align-items:flex-end;padding:22px}
.nv-lbl--lead .nv-lbl-card__text{gap:0}
.nv-lbl--overlay .nv-lbl-card__text h3{line-height:1.35}
.nv-lbl--lead .nv-lbl-card:first-child p{max-width:420px;margin-top:10px;font-size:14px;line-height:1.9}
.nv-lbl-lead-btn{display:inline-flex;align-items:center;gap:8px;justify-self:start;margin-top:14px;padding:10px 18px;border-radius:12px;background:#fff;color:var(--nv-ink);font-size:13.5px;font-weight:700;transition:background-color .2s}
.nv-lbl-lead-btn svg{width:1em;height:1em;fill:currentColor}
@media (max-width:767px){.nv-lbl.nv-lbl--lead{grid-auto-rows:auto}.nv-lbl--lead .nv-lbl-card{min-height:240px}.nv-lbl--lead .nv-lbl-card:first-child{grid-row:auto;min-height:320px}.nv-lbl--lead .nv-lbl-card:first-child p{display:none}}
@media (max-width:900px){.nv-lbl:not(.nv-lbl--list):not(.nv-lbl--rows){grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.nv-lbl:not(.nv-lbl--rows){grid-template-columns:1fr}}
/* Testimonials: round photos */
.nv-n-reviews .nv-testimonial__avatar{border-radius:50%;object-fit:cover;aspect-ratio:1}
/* Elementor page heroes keep a dark base even before the kit colours load */
.e-con.nv-ip-hero{background-color:var(--e-global-color-nvdeep,#0F264D);--overflow:hidden;overflow:hidden;position:relative;isolation:isolate}
.e-con.nv-ip-hero .elementor-heading-title{text-wrap:balance}
/* Sticky containers (Advanced › Sticky (Navard)) */
.e-con.nv-sticky-yes{position:sticky;top:var(--nv-sticky-top,0px);z-index:30;align-self:flex-start}
.admin-bar .e-con.nv-sticky-yes{top:calc(var(--nv-sticky-top,0px) + 32px)}
@media (max-width:1024px){.e-con.nv-sticky-yes:not(.nv-sticky-mobile-yes){position:relative;top:auto;z-index:auto}}
@media (max-width:767px){.admin-bar .e-con.nv-sticky-yes{top:calc(var(--nv-sticky-top,0px) + 46px)}}
/* Photos fill their frame (cards, rows, features) */
.nv-ph.nv-ph>img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover}

/* hover effect control */
.nv-hover-lift{transition:transform .3s,box-shadow .3s}
.nv-hover-lift:hover{transform:translateY(-4px);box-shadow:var(--nv-shadow,0 18px 40px -18px rgba(15,38,77,.35))}
@media (prefers-reduced-motion:reduce){.nv-hover-lift{transition:none}.nv-hover-lift:hover{transform:none}}

.nv-ip-404-number{font-size:clamp(96px,18vw,200px);font-weight:800;line-height:1;color:var(--e-global-color-accent,#F2541B);letter-spacing:-.04em}
/* Notched top edge for containers (Advanced > Notch). In RTL the notch is measured from the right. */
.e-con.nv-notch-yes{--nv-notch-x:150px;--nv-notch-w:112px;--nv-notch-d:90px;--nv-notch-at:var(--nv-notch-x);-webkit-mask:radial-gradient(var(--nv-notch-w) var(--nv-notch-d) at var(--nv-notch-at) 0,#0000 calc(100% - 1px),#000 100%);mask:radial-gradient(var(--nv-notch-w) var(--nv-notch-d) at var(--nv-notch-at) 0,#0000 calc(100% - 1px),#000 100%)}
[dir="rtl"] .e-con.nv-notch-yes{--nv-notch-at:calc(100% - var(--nv-notch-x))}
/* Corner tab (Advanced > Corner tab): concave fillets where the widget's frame meets the parent's top and side edges. */
.nv-corner-end,.nv-corner-start{--nv-corner-r:24px;--nv-corner-c:#fff}
.nv-corner-end::before,.nv-corner-end::after,.nv-corner-start::before,.nv-corner-start::after{content:"";position:absolute;width:var(--nv-corner-r);height:var(--nv-corner-r);pointer-events:none;background:radial-gradient(circle at var(--nv-corner-at),#0000 calc(var(--nv-corner-r) - .5px),var(--nv-corner-c) var(--nv-corner-r))}
.nv-corner-end::before{top:0;inset-inline-end:100%}
.nv-corner-end::after{top:100%;inset-inline-end:0}
.nv-corner-start::before{top:0;inset-inline-start:100%}
.nv-corner-start::after{top:100%;inset-inline-start:0}
.nv-corner-end,[dir="rtl"] .nv-corner-start{--nv-corner-at:0 100%}
.nv-corner-start,[dir="rtl"] .nv-corner-end{--nv-corner-at:100% 100%}
/* Built headers (layout templates) honour the sticky header setting too. */
.nv-site-header{position:relative;z-index:40}
.nv-header-sticky .nv-site-header{position:sticky;top:calc(0px - var(--nv-sticky-skip,0px));z-index:40}
.admin-bar.nv-header-sticky .nv-site-header{top:calc(32px - var(--nv-sticky-skip,0px))}
@media (max-width:782px){.admin-bar.nv-header-sticky .nv-site-header{top:calc(46px - var(--nv-sticky-skip,0px))}}
@media (max-width:600px){.admin-bar.nv-header-sticky .nv-site-header{top:calc(0px - var(--nv-sticky-skip,0px))}}
/* a header row with the class nv-sticky-shadow gets a shadow once the header sticks */
.nv-site-header .nv-sticky-shadow{transition:box-shadow .25s}
.nv-site-header.is-scrolled .nv-sticky-shadow{box-shadow:0 14px 34px -24px rgba(14,28,26,.5)}
/* Empty posts list or filter tab. */
.nv-ftab-empty{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:220px;padding:32px 20px;border:1.5px dashed var(--nv-line);border-radius:20px;color:var(--nv-muted);font-size:14.5px;line-height:1.9;text-align:center}
.nv-ftab-empty::before{content:"";flex:none;width:9px;height:9px;border:2px solid var(--nv-tq);transform:rotate(45deg)}
.nv-ftab-empty[hidden]{display:none}

/* Outline icons keep their outline: widget icon rules fill svgs with the text colour. */
[class] svg[fill="none"]{fill:none}
