/*
Theme Name: Beheshti Child
Theme URI: https://github.com/mhdshojaei/beheshti
Description: پوسته‌ی فرزند Hello Elementor برای سایت علی بهشتی. تمام CSS سفارشی سایت اینجاست و از «نمایش ← ویرایشگر پرونده پوسته» قابل ویرایش است.
Author: Beheshti
Template: hello-elementor
Version: 1.0.0
Text Domain: beheshti-child
*/

/* =========================================================================
   BEHESHTI DESIGN SYSTEM TOKENS & CSS VARIABLES
   ========================================================================= */
@import url('/wp-content/fonts/aria/aria.css');

:root {
  /* --- Brand Core Colors --- */
  --b-color-black: var(--e-global-color-beheshti_black, #000000);
  --b-color-white: var(--e-global-color-primary, #ffffff);
  --b-color-navy: var(--e-global-color-secondary, #021a51);
  --b-color-navy-dark: var(--e-global-color-secondary, #010016);
  --b-color-navy-deep: #021028;
  --b-color-navy-darkest: #050b16;
  --b-color-navy-midnight: #0b1630;
  --b-color-lilac: var(--e-global-color-beheshti_lilac, #c4c2ff);

  /* --- Accents & Glows --- */
  --b-color-accent: var(--e-global-color-accent, #5ce1e6);
  --b-color-cyan-glow: var(--e-global-color-accent, #99f1ff);
  --b-color-cyan-light: #b8f4ff;
  --b-color-cyan-muted: #436a70;
  --b-color-blue: #4b8cff;

  /* --- Neutral Grays --- */
  --b-color-gray-50: #fcfcfc;
  --b-color-gray-100: #f3f3f3;
  --b-color-gray-150: #e6e6e6;
  --b-color-gray-200: #dddddd;
  --b-color-gray-300: #d0d0d0;
  --b-color-gray-400: #9e9e9e;
  --b-color-gray-500: #777777;
  --b-color-gray-550: #6b6b6b;
  --b-color-gray-600: #555555;
  --b-color-gray-700: #333333;
  --b-color-gray-800: #222222;
  --b-color-gray-850: #1d1d1d;
  --b-color-gray-900: #1a1a1a;
  --b-color-gray-950: #111111;

  /* --- Alpha Variants (White) --- */
  --b-alpha-white-95: rgba(255, 255, 255, 0.95);
  --b-alpha-white-92: rgba(255, 255, 255, 0.92);
  --b-alpha-white-90: rgba(255, 255, 255, 0.9);
  --b-alpha-white-88: rgba(255, 255, 255, 0.88);
  --b-alpha-white-85: rgba(255, 255, 255, 0.85);
  --b-alpha-white-78: rgba(255, 255, 255, 0.78);
  --b-alpha-white-75: rgba(255, 255, 255, 0.75);
  --b-alpha-white-70: rgba(255, 255, 255, 0.7);
  --b-alpha-white-65: rgba(255, 255, 255, 0.65);
  --b-alpha-white-55: rgba(255, 255, 255, 0.55);
  --b-alpha-white-35: rgba(255, 255, 255, 0.35);
  --b-alpha-white-30: rgba(255, 255, 255, 0.3);
  --b-alpha-white-28: rgba(255, 255, 255, 0.28);
  --b-alpha-white-25: rgba(255, 255, 255, 0.25);
  --b-alpha-white-22: rgba(255, 255, 255, 0.22);
  --b-alpha-white-20: rgba(255, 255, 255, 0.2);
  --b-alpha-white-15: rgba(255, 255, 255, 0.15);
  --b-alpha-white-12: rgba(255, 255, 255, 0.12);
  --b-alpha-white-10: rgba(255, 255, 255, 0.1);

  /* --- Alpha Variants (Accent Cyan: 92, 225, 230) --- */
  --b-alpha-cyan-90: rgba(92, 225, 230, 0.9);
  --b-alpha-cyan-85: rgba(92, 225, 230, 0.85);
  --b-alpha-cyan-80: rgba(92, 225, 230, 0.8);
  --b-alpha-cyan-70: rgba(92, 225, 230, 0.7);
  --b-alpha-cyan-65: rgba(92, 225, 230, 0.65);
  --b-alpha-cyan-55: rgba(92, 225, 230, 0.55);
  --b-alpha-cyan-45: rgba(92, 225, 230, 0.45);
  --b-alpha-cyan-12: rgba(92, 225, 230, 0.12);
  --b-alpha-cyan-08: rgba(92, 225, 230, 0.08);

  /* --- Alpha Variants (Cyan Glow: 153, 241, 255) --- */
  --b-alpha-glow-95: rgba(153, 241, 255, 0.95);
  --b-alpha-glow-85: rgba(153, 241, 255, 0.85);
  --b-alpha-glow-70: rgba(153, 241, 255, 0.7);
  --b-alpha-glow-50: rgba(153, 241, 255, 0.5);
  --b-alpha-glow-44: rgba(153, 241, 255, 0.44);
  --b-alpha-glow-32: rgba(153, 241, 255, 0.32);

  /* --- Alpha Variants (Black: 0, 0, 0) --- */
  --b-alpha-black-75: rgba(0, 0, 0, 0.75);
  --b-alpha-black-55: rgba(0, 0, 0, 0.55);
  --b-alpha-black-45: rgba(0, 0, 0, 0.45);
  --b-alpha-black-35: rgba(0, 0, 0, 0.35);
  --b-alpha-black-34: rgba(0, 0, 0, 0.34);
  --b-alpha-black-25: rgba(0, 0, 0, 0.25);
  --b-alpha-black-15: rgba(0, 0, 0, 0.15);

  /* --- Tinted Ice Alphas --- */
  --b-alpha-navy-dark-92: rgba(1, 0, 22, 0.92);
  --b-alpha-cyan-ice-78: rgba(242, 251, 255, 0.78);
  --b-alpha-ice-95: rgba(245, 248, 255, 0.95);
  --b-alpha-offwhite-92: rgba(252, 252, 252, 0.92);
  --b-alpha-ice-82: rgba(220, 230, 240, 0.82);
  --b-alpha-ice-muted-95: rgba(190, 215, 230, 0.95);
  --b-alpha-ice-steel-90: rgba(170, 200, 220, 0.9);
  --b-alpha-ice-steel-75: rgba(170, 200, 220, 0.75);
  --b-alpha-ice-steel-55: rgba(150, 185, 210, 0.55);
  --b-alpha-ice-steel-38: rgba(150, 185, 210, 0.38);
  --b-alpha-ice-steel-28: rgba(150, 185, 210, 0.28);

  /* --- Layout Dimensions --- */
  --b-site-max: 1440px;
  --b-container-max: 1240px;
  --b-footer-max: 1250px;
  --b-header-height: 96px;

  /* --- Typography --- */
  --b-font-main:
    'Aria', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --b-font-serif: Georgia, 'Times New Roman', Times, serif;

  /* --- Transitions --- */
  --b-transition-fast: 0.2s ease;
  --b-transition-normal: 0.3s ease;
}

/* =========================================================================
   این فایل قبلاً در المنتور، بخش «تنظیمات سایت ← CSS سفارشی» نگهداری می‌شد
   و فقط داخل دیتابیس بود. از اینجا به بعد اینجا ویرایش می‌شود.
   ========================================================================= */

/* Migrated from mu-plugins/beheshti-setup.php — edit via Elementor → Site Settings → Custom CSS */

body {
  font-family: var(--b-font-main) !important;
  font-size: var(--e-global-typography-text-font-size, 18px);
  font-weight: var(--e-global-typography-text-font-weight, 400);
  line-height: var(--e-global-typography-text-line-height, 1.6);
}
.elementor-widget-heading .elementor-heading-title {
  line-height: 1.5 !important;
}
.elementor-widget-text-editor .elementor-widget-container {
}

.elementor-widget-counter {
  margin-bottom: 16px !important;
}
.elementor-widget-text-editor p {
  margin: 0 !important;
}
.elementor-section {
  background-color: var(--e-global-color-beheshti_black, var(--b-color-black));
}

html,
body {
  overflow-x: clip !important;
  max-width: 100% !important;
}
html.single-post,
body.single-post {
  overflow-x: visible !important;
}

/* Enforce 1240px maximum content width site-wide (excluding header & footer & single post) */
body:not(.single-post)
  .elementor:not(.elementor-location-header):not(.elementor-location-footer)
  .elementor-section:not(.elementor-section-stretched):not(
    .beheshti-related-wrap
  )
  > .elementor-container,
body:not(.single-post)
  .elementor:not(.elementor-location-header):not(.elementor-location-footer)
  .e-con.e-con-boxed:not(.beheshti-lab-output)
  > .e-con-inner,
body:not(.single-post)
  .elementor:not(.elementor-location-header):not(.elementor-location-footer)
  .elementor-container:not(.elementor-container--full) {
  max-width: var(--b-container-max) !important;
}

/* =========================================================================
   Black site frame — the page background is black everywhere and the navy
   bands live inside the 1440px site column (Figma artboard look).
   The kit paints <body> with the secondary (navy) colour, so both root
   elements are overridden here, after the kit stylesheet in the cascade.
   ========================================================================= */

html,
body {
  background-color: var(--b-color-black) !important;
}

/* Home: keep the navy bands (hero, venn) inside the 1440 column so the black
   page frame surrounds them. Full-bleed below desktop, like the mobile frame. */
@media (min-width: 1024px) {
  .elementor-8 #beheshti-hero,
  .elementor-8 #beheshti-venn,
  .elementor-8 .elementor-element-844117e {
    max-width: var(--b-site-max) !important;
    margin-inline: auto !important;
  }

  /* Every other page: same treatment for navy full-width bands
	   (about hero, about story, contact hero, blog hero + intro rows). */
  .elementor:not(.elementor-location-footer)
    .e-parent:not(.beheshti-site-footer),
  .elementor:not(.elementor-location-footer)
    .elementor-top-section:not(.beheshti-site-footer):not(
      .beheshti-related-wrap
    ) {
    max-width: var(--b-site-max) !important;
    margin-inline: auto !important;
  }

  body.single-post .beheshti-related-wrap,
  body.single-post .elementor-top-section.beheshti-related-wrap,
  body.single-post .elementor-221 .elementor-section:has(.beheshti-related),
  body.single-post .elementor-section:has(.beheshti-related) {
    max-width: 100% !important;
    width: 100% !important;
    margin-inline: 0 !important;
    background-color: var(--b-color-black, #000) !important;
  }

  body.single-post .elementor-221 > .elementor-section.beheshti-related-wrap > .elementor-container,
  body.single-post .beheshti-related-wrap > .elementor-container,
  body.single-post .elementor-221 .elementor-section:has(.beheshti-related) > .elementor-container,
  body.single-post .elementor-section:has(.beheshti-related) > .elementor-container,
  body.single-post .elementor-element-2010946 > .elementor-container {
    max-width: 1440px !important;
    width: 100% !important;
    margin-inline: auto !important;
    background-color: var(--bh-navy, #021a51) !important;
    padding: 100px 100px !important;
    box-sizing: border-box !important;
  }

  body.single-post .beheshti-related {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    background: transparent !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.single-post .beheshti-related__title,
  body.single-post .beheshti-related__grid,
  body.single-post .beheshti-related__all {
    max-width: 100% !important;
    width: 100% !important;
    margin-inline: auto !important;
  }
}

.beheshti-logo {
  display: inline-flex;
  align-items: flex-end;
  line-height: 0;
  text-decoration: none !important;
}
.beheshti-logo__mark {
  display: block;
  height: 52px;
  width: auto;
  max-width: none;
  object-fit: contain;
  object-position: left bottom;
}

.beheshti-header-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 24px;
  flex-wrap: wrap;
}
.beheshti-lang {
  display: inline-flex;
  align-items: start;
  gap: 8px;
  font-family:
    var(--e-global-typography-accent-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-accent-font-size, 14px);
  font-weight: var(--e-global-typography-accent-font-weight, 300);
  opacity: 0.85;
}
.beheshti-lang span {
  margin-top: 5px;
}
.beheshti-lang__icon {
  color: var(--e-global-color-accent, var(--b-color-accent));
  font-size: 16px;
}

.beheshti-primary-nav {
  display: flex !important;
  align-items: center;
  justify-content: center;
  gap: 28px 48px;
  font-family:
    var(--e-global-typography-nav_primary-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-nav_primary-font-size, 16px);
  font-weight: var(--e-global-typography-nav_primary-font-weight, 300);
  line-height: var(--e-global-typography-nav_primary-line-height, 1.5);
  color: var(--e-global-color-primary, var(--b-color-white));
  flex-wrap: wrap;
}
.beheshti-primary-nav a {
  color: var(--e-global-color-primary, var(--b-color-white));
  text-decoration: none;
  white-space: nowrap;
  opacity: 0.92;
}
.beheshti-primary-nav a:hover {
  color: var(--b-color-cyan-glow);
  opacity: 1;
}

.beheshti-header-subnav {
  background: linear-gradient(
    180deg,
    var(--b-alpha-cyan-08) 0%,
    transparent 100%
  ) !important;
}

.beheshti-hero-buttons {
  display: flex;
  gap: 16px;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-top: 32px;
}
.beheshti-btn,
.beheshti-cta-banner .beheshti-btn {
  display: inline-block;
  padding: 14px 28px;
  border-radius: 0;
  background: transparent;
  color: var(--b-color-white) !important;
  text-decoration: none !important;
  font-family:
    var(--e-global-typography-button-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-button-font-size, 15px);
  font-weight: var(--e-global-typography-button-font-weight, 300);
  line-height: var(--e-global-typography-button-line-height, 1.4);
  white-space: nowrap;
  border: 1px solid var(--b-alpha-white-55);
  transition:
    border-color 0.2s,
    color 0.2s;
}
.beheshti-btn--outline:hover {
  border-color: var(--e-global-color-accent, var(--b-color-accent));
  color: var(--e-global-color-accent, var(--b-color-accent)) !important;
}
.beheshti-btn--sm {
  padding: 10px 20px;
  font-size: var(--e-global-typography-accent-font-size, 14px);
  font-weight: var(--e-global-typography-accent-font-weight, 300);
}
.beheshti-btn--ghost {
  background: transparent;
  color: var(--b-color-white) !important;
  border: 1px solid var(--b-alpha-white-55);
}

.beheshti-challenge-list {
  display: flex;
  flex-direction: column;
  gap: 24px;
  max-width: 900px;
  margin: 0 auto;
}
.beheshti-challenge-item {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  text-align: right;
}
.beheshti-challenge-icon {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--e-global-color-beheshti_lilac, var(--b-color-lilac));
  color: var(--e-global-color-secondary, var(--b-color-navy-dark));
  display: flex;
  align-items: center;
  justify-content: center;
  font-family:
    var(--e-global-typography-secondary-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-text-font-size, 18px);
  font-weight: var(--e-global-typography-secondary-font-weight, 900);
}
.beheshti-challenge-icon img {
  width: 20px;
  height: 20px;
  display: block;
}
.beheshti-challenge-item p {
  margin: 0;
  font-family: var(--e-global-typography-text-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-text-font-size, 18px);
  font-weight: var(--e-global-typography-text-font-weight, 400);
  line-height: var(--e-global-typography-text-line-height, 1.6);
}

.beheshti-stat {
  margin-bottom: 16px;
  text-align: right;
}
.beheshti-stat__number {
  font-family:
    var(--e-global-typography-stat_number-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-stat_number-font-size, 48px);
  font-weight: var(--e-global-typography-stat_number-font-weight, 900);
  line-height: var(--e-global-typography-stat_number-line-height, 1.2);
  color: var(--e-global-color-primary, var(--b-color-white));
}
.beheshti-stat__title {
  font-family: var(--e-global-typography-text-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-text-font-size, 18px);
  font-weight: var(--e-global-typography-text-font-weight, 400);
  opacity: 0.9;
  color: var(--e-global-color-primary, var(--b-color-white));
  margin-top: 4px;
}

.beheshti-shape-col > .elementor-element-populated {
  min-height: inherit;
  background-size: auto 100% !important;
  background-repeat: no-repeat !important;
}
.beheshti-shape-col.beheshti-shape-pos-left > .elementor-element-populated {
  background-position: left center !important;
}
.beheshti-shape-col.beheshti-shape-pos-right > .elementor-element-populated {
  background-position: right center !important;
}
.beheshti-shape-spacer {
  min-height: 1px;
  width: 100%;
}
.beheshti-shape-shape7 > .elementor-element-populated {
  background-image: url(/wp-content/uploads/figma-assets/about/shape7.svg) !important;
}
.beheshti-shape-shape8 > .elementor-element-populated {
  background-image: url(/wp-content/uploads/figma-assets/about/shape8.svg) !important;
}
.beheshti-shape-shape10 > .elementor-element-populated {
  background-image: url(/wp-content/uploads/figma-assets/about/shape10.svg) !important;
}

.elementor-section:has(.beheshti-shape-col) > .elementor-container {
  width: 100% !important;
  max-width: 100% !important;
  display: flex;
  align-items: stretch;
}
.beheshti-shape-col {
  align-self: stretch;
  flex-shrink: 0 !important;
}
.beheshti-shape-col > .elementor-widget-wrap,
.beheshti-shape-col > .elementor-element-populated {
  min-height: 100%;
  height: 100%;
}
.elementor-col-45.beheshti-shape-col {
  flex: 0 0 45% !important;
  width: 45% !important;
  max-width: 45% !important;
}
.elementor-col-50.beheshti-shape-col {
  flex: 0 0 50% !important;
  width: 50% !important;
  max-width: 50% !important;
}
.elementor-col-40.beheshti-shape-col {
  flex: 0 0 40% !important;
  width: 40% !important;
  max-width: 40% !important;
}
#beheshti-venn .elementor-widget-image img {
  max-width: 554px;
  margin: 0 auto;
  display: block;
  object-fit: conver;
}
#beheshti-intro .elementor-widget-image img {
  max-width: 300px;
  width: 100%;
  border-radius: 0;
}
#beheshti-architecture .elementor-widget-image img {
  max-width: 480px;
  margin-right: auto;
  display: block;
}
#beheshti-hero .elementor-heading-title {
  max-width: 720px;
  margin-right: 0;
  margin-left: auto;
}
#beheshti-hero .elementor-widget-text-editor {
  max-width: 560px;
  margin-right: 0;
  margin-left: auto;
  opacity: 0.88;
}
#beheshti-hero .elementor-background-overlay {
  opacity: 1 !important;
}
#beheshti-hero {
  position: relative;
  overflow: hidden;
}

#beheshti-hero > .elementor-container > .elementor-column {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: inherit;
}
.beheshti-hero-timeline {
  margin-top: auto;
  padding-top: 48px;
  width: 100%;
}

/* About page diagonal hero — Figma 1440×804 */
#beheshti-about-hero {
  position: relative;
  overflow: hidden;
  background-color: var(
    --e-global-color-secondary,
    var(--b-color-navy)
  ) !important;
  height: 804px;
  min-height: 804px;
  max-height: 804px;
}
#beheshti-about-hero > .elementor-container {
  max-width: 100% !important;
  width: 100% !important;
  height: 804px;
  min-height: 804px;
}
#beheshti-about-hero > .elementor-container > .elementor-column {
  height: 804px;
  min-height: 804px;
}
#beheshti-about-hero .elementor-widget-html,
#beheshti-about-hero .elementor-widget-html > .elementor-widget-container {
  height: 804px;
  min-height: 804px;
}
/* Right-edge gradient (Figma SVG) */
#beheshti-about-hero::before {
  display: none;
}
#beheshti-about-hero::after {
  display: none;
}
.beheshti-about-hero::after,
.beheshti-about-story::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 3;
  background: url(/wp-content/uploads/figma-assets/about/hero-gradient.svg)
    no-repeat right center / 100% 100%;
}
.beheshti-about-hero {
  position: relative;
  isolation: isolate;
  height: 804px;
  min-height: 804px;
  color: var(--e-global-color-primary, var(--b-color-white));
  overflow: hidden;
  background: var(--e-global-color-secondary, var(--b-color-navy));
}
.beheshti-about-hero__media {
  position: absolute;
  inset: 0 auto 0 0;
  width: 50%;
  height: 804px;
  z-index: 1;
  overflow: hidden;
  clip-path: polygon(0 0, 100% 0, 88% 100%, 0 100%);
}
.beheshti-about-hero__media img {
  display: block;
  width: 100%;
  height: 804px !important;
  object-fit: cover;
  object-position: 30% center;
}
.beheshti-about-hero__content {
  position: relative;
  z-index: 2;
  box-sizing: border-box;
  width: 50%;
  height: 804px;
  margin-right: 0;
  margin-left: auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 100px 120px 150px 120px;
  text-align: right;
}
.beheshti-about-hero__en {
  margin: 0;
  font-family: 'Aria', sans-serif;
  font-size: 30px;
  font-weight: 200;
  line-height: 1;
  color: var(--e-global-color-primary, var(--b-color-white));
}
.beheshti-about-hero__fa {
  margin: 24px 0 0;
  font-family: 'Aria', sans-serif;
  font-size: 30px;
  font-weight: 200;
  line-height: 1;
  color: var(--e-global-color-primary, var(--b-color-white));
}
.beheshti-about-hero__bio {
  max-width: 480px;
  margin-right: 0;
  margin-left: auto;
}
.beheshti-about-hero__bio p {
  margin: 0;
  font-family: var(--e-global-typography-text-font-family, 'Aria'), sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.75;
  color: var(--e-global-color-text, var(--b-color-gray-50));
}
.beheshti-about-hero__bio strong {
  font-weight: 600;
}
.beheshti-about-hero__slash {
  display: none;
}

/* About story timeline (Figma Frame 87) */
#beheshti-about-story {
  position: relative;
  overflow: hidden;
  background: var(
    --e-global-color-beheshti_black,
    var(--b-color-black)
  ) !important;
}
#beheshti-about-story > .elementor-container {
  max-width: 100% !important;
  width: 100% !important;
}
.beheshti-about-story {
  position: relative;
  color: var(--b-color-white);
  padding: 160px 120px 160px;
  max-width: var(--b-container-max);
  margin: 0 auto;
  box-sizing: border-box;
  min-height: 1566px;
}
.beheshti-about-story__deco {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  max-width: none;
  height: 983px;
  background: url(/wp-content/uploads/figma-assets/about/hero-right-slash.svg)
    no-repeat center top;
  background-size: 100% auto;
  pointer-events: none;
  opacity: 0.95;
  z-index: 0;
}
.beheshti-about-story__deco--1 {
  top: -144px;
}
.beheshti-about-story__deco--2 {
  top: 626px;
}
.beheshti-about-story__list {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 60px;
}
.beheshti-about-story__item {
  display: grid;
  grid-template-columns: 1fr 11px 1fr;
  gap: 16px;
  align-items: start;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  direction: ltr; /* keep visual left/right matching Figma canvas */
}
.beheshti-about-story__node {
  width: 11px;
  height: 11px;
  margin-top: 16px;
  background: var(--b-color-white);
  transform: rotate(45deg);
  flex-shrink: 0;
  justify-self: center;
}
.beheshti-about-story__card {
  max-width: 540px;
  text-align: right;
  direction: rtl;
}
.beheshti-about-story__item--left .beheshti-about-story__card {
  grid-column: 1;
  justify-self: start;
}
.beheshti-about-story__item--left .beheshti-about-story__node {
  grid-column: 2;
}
.beheshti-about-story__item--left .beheshti-about-story__spacer {
  grid-column: 3;
}
.beheshti-about-story__item--right .beheshti-about-story__spacer {
  grid-column: 1;
}
.beheshti-about-story__item--right .beheshti-about-story__node {
  grid-column: 2;
}
.beheshti-about-story__item--right .beheshti-about-story__card {
  grid-column: 3;
  justify-self: end;
}
.beheshti-about-story__title {
  margin: 0 0 8px;
  font-family: 'Aria', sans-serif;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--b-color-white);
}
.beheshti-about-story__body {
  margin: 0;
  font-family: 'Aria', sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.85;
  color: var(--b-alpha-offwhite-92);
}

@media (max-width: 1024px) {
  #beheshti-about-hero,
  #beheshti-about-hero > .elementor-container,
  #beheshti-about-hero > .elementor-container > .elementor-column,
  #beheshti-about-hero .elementor-widget-html,
  #beheshti-about-hero .elementor-widget-html > .elementor-widget-container,
  .beheshti-about-hero {
    height: auto;
    min-height: 0;
    max-height: none;
  }
  .beheshti-about-hero {
    display: flex;
    flex-direction: column;
  }
  .beheshti-about-hero__media {
    position: relative;
    width: 100%;
    height: 420px;
    clip-path: none;
    order: -1;
  }
  .beheshti-about-hero__media img {
    height: 420px !important;
  }
  .beheshti-about-hero__content {
    width: 100%;
    height: auto;
    padding: 40px 24px 56px;
    gap: 48px;
  }
  #beheshti-about-hero::after {
    width: min(70%, 360px);
  }
  .beheshti-about-story {
    padding: 80px 24px;
    min-height: 0;
  }
  .beheshti-about-story__deco {
    opacity: 0.35;
  }
  .beheshti-about-story__item {
    grid-template-columns: 11px 1fr;
    gap: 16px;
  }
  .beheshti-about-story__item--left .beheshti-about-story__card,
  .beheshti-about-story__item--right .beheshti-about-story__card {
    grid-column: 2;
  }
  .beheshti-about-story__item--left .beheshti-about-story__node,
  .beheshti-about-story__item--right .beheshti-about-story__node {
    grid-column: 1;
  }
  .beheshti-about-story__spacer {
    display: none;
  }
}

.beheshti-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 32px;
}
.beheshti-blog-card {
  border: 1px solid var(--b-color-white);
  padding: 16px;
  text-align: right;
}
.beheshti-blog-card img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  margin-bottom: 16px;
}
.beheshti-blog-card h3 {
  color: var(--e-global-color-primary, var(--b-color-white));
  font-family:
    var(--e-global-typography-card_title-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-card_title-font-size, 20px);
  font-weight: var(--e-global-typography-card_title-font-weight, 400);
  margin: 0 0 12px;
}
.beheshti-blog-card p {
  color: var(--e-global-color-primary, var(--b-color-white));
  font-family:
    var(--e-global-typography-accent-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-accent-font-size, 14px);
  font-weight: var(--e-global-typography-accent-font-weight, 300);
  margin: 0 0 12px;
  opacity: 0.85;
}
.beheshti-blog-card a {
  color: var(--e-global-color-beheshti_lilac, var(--b-color-lilac));
  text-decoration: none;
}

.beheshti-cta-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
  flex-wrap: wrap;
}
.beheshti-cta-banner p {
  color: var(--e-global-color-secondary, var(--b-color-navy-dark)) !important;
  font-family:
    var(--e-global-typography-cta_banner-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-cta_banner-font-size, 20px);
  font-weight: var(--e-global-typography-cta_banner-font-weight, 700);
  margin: 0;
}

.beheshti-footer-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
.beheshti-footer-col h4 {
  color: var(--b-color-cyan-glow);
  font-family:
    var(--e-global-typography-footer_title-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-footer_title-font-size, 18px);
  font-weight: var(--e-global-typography-footer_title-font-weight, 700);
  margin: 0 0 16px;
}
.beheshti-footer-col p,
.beheshti-footer-col a {
  color: var(--b-color-white);
  text-decoration: none;
  display: block;
  margin: 0 0 8px;
  font-weight: 500 !important;
  font-size: 18px !important;
}
.beheshti-footer a:hover {
  color: var(--b-color-white) !important;
}
.beheshti-footer-links {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.beheshti-footer-links a:hover {
  color: var(--b-color-white);
}

.beheshti-contact-info p {
  opacity: 0.85;
}

/* Atomic contact form — icon-in-input (RTL). Grid layout for editor + frontend. */
form[data-id='9f33183'][data-element_type='e-form'],
.elementor-12 form[data-element_type='e-form'],
.elementor-edit-area form[data-element_type='e-form'] {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
  row-gap: 8px !important;
  column-gap: 8px !important;
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  direction: rtl;
  align-items: stretch;
  justify-content: stretch !important;
  flex-direction: unset !important;
  box-sizing: border-box !important;
}
form[data-id='9f33183'] > .e-form-input-base,
form[data-id='9f33183'] > .elementor-element:has(.e-form-input-base),
.elementor-12 form[data-element_type='e-form'] > .e-form-input-base,
.elementor-12
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-input-base),
.elementor-edit-area form[data-element_type='e-form'] > .e-form-input-base,
.elementor-edit-area
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-input-base) {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  margin: 0 !important;
}
form[data-id='9f33183'] .e-form-input-base,
.elementor-12 form[data-element_type='e-form'] .e-form-input-base,
.elementor-edit-area form[data-element_type='e-form'] .e-form-input-base {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  height: 46px !important;
  min-height: 46px !important;
  border: none !important;
  border-radius: 0 !important;
  background-color: var(--b-color-white) !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  background-size: 16px 16px !important;
  padding: 0 40px 0 14px !important;
  color: var(--b-color-gray-900) !important;
  font-family:
    var(--e-global-typography-text-font-family, 'Aria'), sans-serif !important;
  font-size: 14px !important;
  line-height: 46px !important;
  text-align: right !important;
  direction: rtl;
}
.e-form-input-base::placeholder,
.elementor-12 form[data-element_type='e-form'] .e-form-input-base::placeholder,
.elementor-edit-area
  form[data-element_type='e-form']
  .e-form-input-base::placeholder {
  color: var(--b-color-gray-400) !important;
  opacity: 1;
  font-size: 18px !important;
  line-height: 46px !important;
  font-weight: 500;
}
.e-form-input-base:focus,
.elementor-12 form[data-element_type='e-form'] .e-form-input-base:focus,
.elementor-edit-area form[data-element_type='e-form'] .e-form-input-base:focus {
  outline: 1px solid var(--b-alpha-cyan-55) !important;
  border-color: transparent !important;
}
#e-form-fullname,
.elementor-edit-area #e-form-fullname,
#form-field-fullname,
#form-field-name {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 19 20' fill='none'%3E%3Cpath d='M11.787 13.8575C11.7151 13.0636 11.7427 12.5095 11.7427 11.7841C12.1022 11.595 12.7464 10.3923 12.8553 9.37674C13.138 9.35359 13.5837 9.07779 13.7142 7.98887C13.7846 7.40427 13.5049 7.07528 13.3345 6.97185C13.7945 5.58842 14.7499 1.30858 11.5674 0.866311C11.2399 0.291069 10.4011 0 9.31124 0C4.95063 0.0802778 4.42463 3.29287 5.38058 6.97185C5.21067 7.07528 4.93093 7.40427 5.00086 7.98887C5.13187 9.07779 5.57709 9.35359 5.85978 9.37674C5.96813 10.3923 6.63794 11.595 6.99845 11.7841C6.99845 12.5095 7.02554 13.0636 6.95363 13.8575C6.09077 16.1777 0.268906 15.5261 0 20H18.7151C18.4466 15.5261 12.6499 16.1777 11.787 13.8575Z' fill='%239E9E9E'/%3E%3C/svg%3E") !important;
}
#e-form-phone,
.elementor-edit-area #e-form-phone,
#form-field-phone,
#form-field-tel {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M16.3764 20C16.3692 20 16.3619 20 16.3551 20C12.9384 19.8886 8.93679 16.5774 6.17918 13.8185C3.41931 11.059 0.108093 7.05559 0.0003701 3.65438C-0.03781 2.46125 2.89069 0.33998 2.92024 0.319526C3.67975 -0.21045 4.52335 -0.0227313 4.8697 0.456793C5.10378 0.781323 7.32277 4.14572 7.56412 4.52706C7.81502 4.92205 7.7782 5.51156 7.46503 6.10381C7.29368 6.43107 6.72143 7.43693 6.45372 7.906C6.74188 8.3178 7.50821 9.3273 9.08905 10.9077C10.6694 12.4881 11.6785 13.2549 12.0916 13.5444C12.5607 13.2767 13.5661 12.7044 13.8943 12.5317C14.4761 12.2231 15.0629 12.1849 15.4629 12.4294C15.8701 12.679 19.224 14.9089 19.5331 15.1252C19.7931 15.307 19.9604 15.6202 19.9926 15.9843C20.0249 16.352 19.9122 16.7406 19.6749 17.0792C19.6554 17.1083 17.5591 20 16.3764 20Z' fill='%239E9E9E'/%3E%3C/svg%3E") !important;
}
#e-form-company,
.elementor-edit-area #e-form-company,
#form-field-company,
#form-field-email {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M20 8.95583C20 12.7375 18.1625 15.0783 15.1708 15.0783C13.6217 15.0783 12.5158 14.4058 12.1917 13.2658H11.9633C11.4708 14.4783 10.5342 15.0908 9.1525 15.0908C6.65417 15.0908 4.99667 13.0742 4.99667 10.025C4.99667 7.1075 6.59417 5.13917 8.9725 5.13917C10.27 5.13917 11.2908 5.76333 11.7717 6.84417H12V5.4275H14.7625V11.5258C14.7625 12.3783 15.1467 12.8825 15.7958 12.8825C16.8525 12.8825 17.5258 11.4783 17.5258 9.245C17.5258 4.89917 14.6792 2.11417 10.2467 2.11417C5.62167 2.11417 2.475 5.35583 2.475 10.0733C2.475 14.8508 5.64583 17.8408 10.7392 17.8408C11.8442 17.8408 12.985 17.6967 13.61 17.505V19.6417C12.745 19.8683 11.6158 20 10.4742 20C4.1925 20 0 16.0025 0 10.0117C0 4.09333 4.20417 0 10.2825 0C16.0725 0 20 3.62583 20 8.95583ZM8.15583 10.1083C8.15583 11.6692 8.80417 12.605 9.8975 12.605C11.0025 12.605 11.675 11.6567 11.675 10.1083C11.675 8.56 10.99 7.61167 9.8975 7.61167C8.805 7.61167 8.15583 8.5475 8.15583 10.1083Z' fill='%239E9E9E'/%3E%3C/svg%3E") !important;
}
#e-form-website,
.elementor-edit-area #e-form-website,
#form-field-website,
#form-field-url {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none'%3E%3Cpath d='M19.163 6C17.991 3.3295 15.684 1.2655 12.8555 0.420502C13.7395 1.803 14.3595 3.805 14.698 6H19.163Z' fill='%239E9E9E'/%3E%3Cpath d='M19.6815 12.5C19.8885 11.7005 20 10.8635 20 10C20 9.1365 19.8885 8.2995 19.6815 7.5H14.8815C14.959 8.3275 15 9.167 15 10C15 10.833 14.959 11.6725 14.8815 12.5H19.6815Z' fill='%239E9E9E'/%3E%3Cpath d='M5 10C5 9.167 5.041 8.3275 5.1185 7.5H0.3185C0.1115 8.2995 0 9.1365 0 10C0 10.8635 0.1115 11.7005 0.3185 12.5H5.1185C5.041 11.6725 5 10.833 5 10Z' fill='%239E9E9E'/%3E%3Cpath d='M13.5 10C13.5 9.128 13.4525 8.295 13.374 7.5H6.626C6.5475 8.295 6.5 9.128 6.5 10C6.5 10.872 6.5475 11.705 6.626 12.5H13.374C13.4525 11.705 13.5 10.872 13.5 10Z' fill='%239E9E9E'/%3E%3Cpath d='M13.181 6C12.582 2.396 11.2365 0 10 0C8.7635 0 7.418 2.396 6.819 6H13.181Z' fill='%239E9E9E'/%3E%3Cpath d='M6.819 14C7.418 17.604 8.764 20 10 20C11.236 20 12.582 17.604 13.181 14H6.819Z' fill='%239E9E9E'/%3E%3Cpath d='M5.30201 6C5.64051 3.805 6.26051 1.803 7.14451 0.420502C4.31601 1.2655 2.00901 3.3295 0.837006 6H5.30201Z' fill='%239E9E9E'/%3E%3Cpath d='M14.698 14C14.3595 16.195 13.7395 18.197 12.8555 19.5795C15.684 18.7345 17.991 16.671 19.163 14H14.698Z' fill='%239E9E9E'/%3E%3Cpath d='M0.837006 14C2.00901 16.6705 4.31601 18.7345 7.14451 19.5795C6.26051 18.197 5.64051 16.195 5.30201 14H0.837006Z' fill='%239E9E9E'/%3E%3C/svg%3E") !important;
}
.elementor-12 form[data-element_type='e-form'] > .e-form-textarea-base,
.elementor-12 form[data-element_type='e-form'] > .e-form-submit-button-base,
.elementor-12 form[data-element_type='e-form'] > .e-form-success-message-base,
.elementor-12 form[data-element_type='e-form'] > .e-form-error-message-base,
.elementor-12
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-textarea-base),
.elementor-12
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-submit-button-base),
.elementor-12
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-success-message-base),
.elementor-12
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-error-message-base),
form[data-id='9f33183'] > .e-form-textarea-base,
form[data-id='9f33183'] > .e-form-submit-button-base,
form[data-id='9f33183'] > .e-form-success-message-base,
form[data-id='9f33183'] > .e-form-error-message-base,
form[data-id='9f33183'] > .elementor-element:has(.e-form-textarea-base),
form[data-id='9f33183'] > .elementor-element:has(.e-form-submit-button-base),
form[data-id='9f33183'] > .elementor-element:has(.e-form-success-message-base),
form[data-id='9f33183'] > .elementor-element:has(.e-form-error-message-base),
.elementor-edit-area form[data-element_type='e-form'] > .e-form-textarea-base,
.elementor-edit-area
  form[data-element_type='e-form']
  > .e-form-submit-button-base,
.elementor-edit-area
  form[data-element_type='e-form']
  > .e-form-success-message-base,
.elementor-edit-area
  form[data-element_type='e-form']
  > .e-form-error-message-base,
.elementor-edit-area
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-textarea-base),
.elementor-edit-area
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-submit-button-base),
.elementor-edit-area
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-success-message-base),
.elementor-edit-area
  form[data-element_type='e-form']
  > .elementor-element:has(.e-form-error-message-base) {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: none !important;
}
form[data-id='9f33183'] .e-form-textarea-base,
.elementor-12 form[data-element_type='e-form'] .e-form-textarea-base,
.elementor-edit-area form[data-element_type='e-form'] .e-form-textarea-base {
  width: 100% !important;
  min-height: 150px !important;
  height: 150px !important;
  box-sizing: border-box !important;
  border: none !important;
  border-radius: 0 !important;
  background: var(--b-color-white) !important;
  padding: 14px 16px !important;
  color: var(--b-color-gray-900) !important;
  font-family:
    var(--e-global-typography-text-font-family, 'Aria'), sans-serif !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  text-align: right !important;
  direction: rtl;
  resize: vertical;
}
form[data-id='9f33183'] .e-form-textarea-base::placeholder,
.elementor-12
  form[data-element_type='e-form']
  .e-form-textarea-base::placeholder,
.elementor-edit-area
  form[data-element_type='e-form']
  .e-form-textarea-base::placeholder {
  color: var(--b-color-gray-400) !important;
  opacity: 1;
  font-size: 18px !important;
  font-weight: 500;
}
form[data-id='9f33183'] .e-form-submit-button-base,
.elementor-12 form[data-element_type='e-form'] .e-form-submit-button-base,
.elementor-edit-area
  form[data-element_type='e-form']
  .e-form-submit-button-base {
  width: 100% !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 !important;
  border-radius: 0 !important;
  border: 1px solid var(--b-alpha-white-85) !important;
  background: var(--b-color-black) !important;
  color: var(--b-color-white) !important;
  font-family:
    var(--e-global-typography-button-font-family, 'Aria'), sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 44px !important;
  cursor: pointer;
  transition:
    border-color 0.2s,
    color 0.2s;
}
form[data-id='9f33183'] .e-form-submit-button-base:hover,
.elementor-12 form[data-element_type='e-form'] .e-form-submit-button-base:hover,
.elementor-edit-area
  form[data-element_type='e-form']
  .e-form-submit-button-base:hover {
  border-color: var(--e-global-color-accent, var(--b-color-accent)) !important;
  color: var(--e-global-color-accent, var(--b-color-accent)) !important;
}
@media (max-width: 767px) {
  form[data-id='9f33183'][data-element_type='e-form'],
  .elementor-12 form[data-element_type='e-form'],
  .elementor-edit-area form[data-element_type='e-form'] {
    grid-template-columns: 1fr !important;
  }
}

/* Hide legacy Pro Form duplicate on contact page */
.elementor-12 #beheshti-contact,
.elementor-edit-area #beheshti-contact {
  display: none !important;
}

.beheshti-arch-list {
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
}
.beheshti-arch-list li {
  padding: 12px 0;
  border-bottom: 1px solid var(--b-alpha-white-20);
}

.elementor-accordion .elementor-accordion-item {
  border-color: var(--b-alpha-white-30) !important;
}
.elementor-accordion .elementor-tab-title {
  color: var(--b-color-white) !important;
}
.elementor-accordion .elementor-tab-content {
  color: var(--b-alpha-white-90) !important;
}

@media (max-width: 1024px) {
  .beheshti-blog-grid {
    grid-template-columns: 1fr;
  }
  .beheshti-footer-grid {
    grid-template-columns: 1fr;
  }

  .beheshti-primary-nav {
    gap: 16px 24px;
    font-size: var(--e-global-typography-accent-font-size, 14px);
  }
}

/* --- front-page snap (body.home) --- */

html {
  /* Full-page transitions are owned by home-snap.js — no CSS snap. */
  scroll-snap-type: none !important;
  scroll-behavior: smooth;
  scroll-padding-top: 0 !important;
  overflow-y: scroll;
  scrollbar-gutter: stable;
}
body.home .elementor > .beheshti-snap-section,
body.home .elementor > .e-con.beheshti-snap-section,
body.home .elementor > .elementor-section.beheshti-snap-section {
  scroll-snap-align: none !important;
  scroll-snap-stop: normal !important;
}

body.home {
  --beheshti-snap-h: 100vh;
}

/* Classic sections AND Flexbox containers */
body.home .elementor > .beheshti-snap-section {
  scroll-snap-align: none !important;
  scroll-snap-stop: normal !important;
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: 100vh !important;
  box-sizing: border-box !important;
}

body.home .elementor > .elementor-section.beheshti-snap-section {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

body.home
  .elementor
  > .elementor-section.beheshti-snap-section
  > .elementor-container {
  min-height: inherit;
  display: flex;
  align-items: stretch;
}

body.home .elementor > .e-con.beheshti-snap-section {
  --min-height: 100vh;
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: 100vh !important;
  justify-content: center;
  box-sizing: border-box !important;
}

body.home .beheshti-hero-timeline {
  margin-top: auto;
  padding-top: 48px;
  width: 100%;
}
body.home .beheshti-hero-timeline .beheshti-timeline__labels {
  display: none;
}

body.home #beheshti-intro > .elementor-container,
body.home #beheshti-stats > .elementor-container,
body.home #beheshti-lab > .elementor-container,
body.home #beheshti-architecture > .elementor-container {
  width: 100% !important;
  max-width: 100% !important;
}

body.home
  #beheshti-intro
  > .elementor-container
  > .elementor-column.beheshti-shape-col {
  flex: 0 0 50% !important;
  width: 50% !important;
  max-width: 50% !important;
}

body.home
  #beheshti-stats
  > .elementor-container
  > .elementor-column.beheshti-shape-col,
body.home
  #beheshti-lab
  > .elementor-container
  > .elementor-column.beheshti-shape-col {
  flex: 0 0 45% !important;
  width: 45% !important;
  max-width: 45% !important;
}

body.home
  #beheshti-lab
  > .elementor-container
  > .elementor-column.elementor-col-55,
body.home
  #beheshti-stats
  > .elementor-container
  > .elementor-column.elementor-col-55 {
  flex: 0 0 55% !important;
  width: 55% !important;
  max-width: 55% !important;
}

body.home
  #beheshti-intro
  > .elementor-container
  > .elementor-column.elementor-col-50:not(.beheshti-shape-col) {
  flex: 0 0 50% !important;
  width: 50% !important;
  max-width: 50% !important;
}

body.home .beheshti-shape-col > .elementor-widget-wrap,
body.home .beheshti-shape-col > .elementor-element-populated {
  min-height: 100%;
  height: 100%;
}

body.home
  #beheshti-intro
  > .elementor-container
  > .elementor-column:not(.beheshti-shape-col),
body.home
  #beheshti-stats
  > .elementor-container
  > .elementor-column:not(.beheshti-shape-col),
body.home
  #beheshti-lab
  > .elementor-container
  > .elementor-column:not(.beheshti-shape-col),
body.home
  #beheshti-architecture
  > .elementor-container
  > .elementor-column:first-child {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

body.home #beheshti-hero {
  min-height: calc(100vh - 180px) !important;
  height: calc(100vh - 180px) !important;
  max-height: calc(100vh - 180px) !important;
  --min-height: calc(100vh - 180px);
  overflow: hidden !important;
}
body.home #beheshti-venn {
  min-height: 100vh !important;
  height: 100vh !important;
  max-height: 100vh !important;
  --min-height: 100vh;
  --padding-top: 48px;
  --padding-bottom: 48px;
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

body.home #beheshti-hero > .elementor-background-overlay {
  background: linear-gradient(
    90deg,
    var(--b-alpha-black-75) 0%,
    var(--b-alpha-black-35) 55%,
    var(--b-alpha-black-15) 100%
  );
}

body.home
  #beheshti-intro
  > .elementor-container
  > .elementor-column:first-child,
body.home #beheshti-stats > .elementor-container > .elementor-column:last-child,
body.home #beheshti-lab > .elementor-container > .elementor-column:first-child {
  padding: 80px 100px;
}

body.home #beheshti-intro .elementor-widget-heading .elementor-heading-title {
  margin-bottom: 16px !important;
}

body.home
  #beheshti-intro
  .elementor-widget-text-editor
  .elementor-widget-container {
  margin-bottom: 16px !important;
}

@media (max-width: 1024px) {
  body.home
    #beheshti-intro
    > .elementor-container
    > .elementor-column:first-child,
  body.home
    #beheshti-stats
    > .elementor-container
    > .elementor-column:last-child,
  body.home
    #beheshti-lab
    > .elementor-container
    > .elementor-column:first-child {
    padding: 48px 24px;
  }
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
    scroll-snap-type: none;
  }
}

/* progressbar column layout */
.beheshti-progressbar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 60;
  padding: 14px 32px 16px;
  background: var(--b-alpha-navy-dark-92);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid var(--b-alpha-cyan-12);
  border-top: 0;
  margin: 0;
}
.beheshti-timeline__steps {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  list-style: none;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  max-width: 1280px;
  gap: 0;
}
.beheshti-timeline__step {
  flex: 1 1 0;
  min-width: 0;
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 0px;
  text-align: center;
}
.beheshti-timeline__step:not(:last-child)::after {
  content: '';
  position: absolute;
  top: 9px;
  z-index: 0;
  inset-inline-start: calc(50% + 10px);
  inset-inline-end: calc(-50% + 10px);
  height: 1px;
  background: linear-gradient(
    90deg,
    var(--b-alpha-white-15),
    var(--b-alpha-cyan-45),
    var(--b-alpha-white-15)
  );
  pointer-events: none;
}
.beheshti-timeline__node {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  text-decoration: none;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
.beheshti-timeline__marker {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--b-alpha-white-35);
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    box-shadow 0.2s ease;
}
.beheshti-timeline__node.is-active .beheshti-timeline__marker,
.beheshti-timeline__node:hover .beheshti-timeline__marker,
.beheshti-timeline__step.is-active .beheshti-timeline__marker {
  width: 7px;
  height: 8px;
  border-radius: 2px;
  transform: rotate(45deg);
  background: var(--e-global-color-accent, var(--b-color-accent));
  box-shadow: 0 0 16px var(--b-alpha-cyan-80);
}
.beheshti-progressbar__label,
.beheshti-timeline__step .beheshti-subnav-item {
  color: var(--e-global-color-beheshti_muted, var(--b-alpha-white-55));
  font-family:
    var(--e-global-typography-subnav-font-family, 'Aria'), sans-serif;
  font-size: var(--e-global-typography-subnav-font-size, 12px);
  font-weight: 400 !important;
  line-height: var(--e-global-typography-subnav-line-height, 1.35);
  text-decoration: none;
  white-space: normal;
  max-width: 100%;
  padding: 0 4px;
  transition: color 0.2s ease;
  display: block;
}
.beheshti-timeline__step .beheshti-subnav-item:hover,
.beheshti-timeline__step .beheshti-subnav-item.is-active,
.beheshti-timeline__step.is-active .beheshti-subnav-item {
  font-weight: 800!important;
  color: var(--e-global-color-accent, var(--b-color-accent));
}
.beheshti-progressbar .beheshti-timeline__labels,
.beheshti-progressbar .beheshti-timeline__track {
  display: none;
}

.beheshti-blog-card img {
  width: 100%;
  aspect-ratio: 4/3;
  object-fit: cover;
  display: block;
  border: 1px solid var(--b-alpha-white-25);
}
.beheshti-blog-card__cats {
  color: var(--e-global-color-accent, var(--b-color-cyan-glow));
  font-size: 12px;
  margin-top: 12px;
}
.beheshti-blog-card__title {
  color: var(--b-color-white);
  font-size: 20px;
  font-weight: 400;
  margin: 8px 0 12px;
}
.beheshti-blog-card__meta {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  font-size: 13px;
  opacity: 0.85;
}
.beheshti-blog-card__meta a {
  color: var(--e-global-color-beheshti_lilac, var(--b-color-lilac));
  text-decoration: none;
}
.beheshti-venn-list {
  padding-right: 1.2em;
  margin: 16px 0;
}
.beheshti-venn-list li {
  margin-bottom: 10px;
}

/* === Home PDF pass3 layouts === */
#beheshti-hero {
  position: relative;
  overflow: hidden;
}

#beheshti-hero .beheshti-hero-buttons {
  display: flex;
  gap: 16px;
  justify-content: flex-end;
  flex-wrap: wrap;
  margin-top: 28px;
  width: 100%;
}
#beheshti-hero .beheshti-btn {
  min-width: 200px;
  text-align: center;
}

body.home #beheshti-intro > .elementor-container,
body.home #beheshti-stats > .elementor-container,
body.home #beheshti-lab > .elementor-container,
body.home #beheshti-architecture > .elementor-container {
  width: 100% !important;
  max-width: 100% !important;
}
body.home #beheshti-intro > .elementor-container > .elementor-column,
body.home #beheshti-stats > .elementor-container > .elementor-column,
body.home #beheshti-lab > .elementor-container > .elementor-column,
body.home #beheshti-architecture > .elementor-container > .elementor-column {
  flex: 0 0 50% !important;
  width: 50% !important;
  max-width: 50% !important;
}

.beheshti-media-col > .elementor-element-populated,
.beheshti-media-col > .elementor-widget-wrap {
  min-height: 100%;
  height: 100%;
  padding: 0 !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}
.beheshti-media-col .elementor-widget-image,
.beheshti-media-col .elementor-widget-image .elementor-widget-container,
.beheshti-media-col .elementor-widget-image img {
  width: 100%;
  margin: 0;
  display: block;
  object-fit: cover;
}
#beheshti-intro .beheshti-media-col .elementor-widget-image img {
  max-width: none !important;
  border-radius: 0;
  object-fit: cover;
}
.beheshti-media-col--cyan .elementor-widget-image img,
.beheshti-media-col--cyan > .elementor-element-populated {
  filter: sepia(1) saturate(4) hue-rotate(150deg) brightness(0.85);
}
.beheshti-media-col .beheshti-shape-spacer {
  min-height: var(--beheshti-snap-h, 100dvh);
  width: 100%;
  opacity: 0;
}

.beheshti-stat--row {
  display: flex;
  flex-direction: row-reverse;
  align-items: baseline;
  justify-content: flex-start;
  gap: 24px;
  text-align: right;
  margin: 28px 0;
}
.beheshti-stat--row .beheshti-stat__number {
  font-size: clamp(48px, 6vw, 72px);
  font-weight: 200;
  line-height: 0.5;
  color: var(--b-color-white);
}
.beheshti-challenge-item svg {
  width: 64px !important;
  height: 64px !important;
  min-width: 64px;
  min-height: 64px;
  flex-shrink: 0;
  display: block;
}
.beheshti-stat--row .beheshti-stat__title {
  font-size: 18px;
  font-weight: 300;
  color: var(--b-alpha-white-90);
}

#beheshti-challenge .beheshti-challenge-list {
  margin: 0 0 32px;
  max-width: 820px;
  margin-right: 0;
  margin-left: auto;
  padding: 0;
}
#beheshti-architecture .elementor-widget-image img {
  max-width: 100% !important;
  width: 100%;
  height: auto;
}

.beheshti-blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  margin-top: 40px;
}
.beheshti-blog-card {
  border: 0;
  padding: 0;
  text-align: right;
}
.beheshti-blog-card img {
  width: 100%;
  aspect-ratio: 3/4;
  object-fit: cover;
  border: 1px solid var(--b-alpha-white-20);
}

/* Outline buttons override Elementor filled styles on home */
body.home .elementor-button {
  background-color: transparent !important;
  border: 1px solid var(--b-color-white) !important;
  border-radius: 0 !important;
  color: var(--b-color-white) !important;
  box-shadow: none !important;
}
body.home .elementor-button:hover {
  border-color: var(--e-global-color-accent, var(--b-color-accent)) !important;
  color: var(--e-global-color-accent, var(--b-color-accent)) !important;
}
body.home .beheshti-cta-banner .elementor-button,
body.home #beheshti-cta .elementor-button {
  border-color: currentColor !important;
}

/* === Home Hero — Matching Figma Artboard node-id=1004-1813 === */
@media (min-width: 1025px) {
  body.home #beheshti-hero.e-con.beheshti-snap-section,
  body.home #beheshti-hero {
    min-height: calc(100vh - 180px) !important;
    height: calc(100vh - 180px) !important;
    max-height: calc(100vh - 180px) !important;
    position: relative !important;
    overflow: hidden !important;
    display: flex !important;
    justify-content: end !important;
    align-items: center !important;
    /* Figma Frame 132 layout padding (1125:8716): 80 130 64 */
    padding: 80px 130px 64px !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-hero > .e-con-inner,
  body.home #beheshti-hero > .e-con,
  body.home #beheshti-hero > .elementor-container {
    width: 100% !important;
    max-width: var(--b-container-max) !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-end !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 2 !important;
  }

  /* Hide extra heading above main title if present */
  body.home #beheshti-hero .elementor-element-0fe1d94 {
    display: none !important;
  }
  body.home
    #beheshti-hero
    .beheshti-hero-buttons
    .beheshti-btn.darkhast-jalase {
    width: 240px;
    max-width: 240px;
    background: #000000 !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    height: 45px !important;
  }
  .strategy-btn .beheshti-btn {
    font-size: 18px !important;
    font-weight: 400 !important;
    height: 45px !important;
    width: 240px;
    max-width: 240px;
  }

  /* Right column (Persian heading, description, buttons) */
  body.home #beheshti-hero .beheshti-hero-right,
  body.home #beheshti-hero .elementor-element-9a7b8a6 {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important; /* In RTL: right-aligned */
    text-align: right !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-content: end !important;
    gap: 48px !important;
  }

  body.home #beheshti-hero .elementor-element-2290b71,
  body.home #beheshti-hero .elementor-element-2290b71 .elementor-heading-title {
    font-size: 32px !important;
    font-weight: 400 !important;
    color: var(--b-color-white) !important;
    line-height: 1.25 !important;
    margin: 0 !important;
    font-family: Aria !important;
    text-align: right !important;
    width: 100% !important;
  }

  body.home #beheshti-hero .elementor-widget-text-editor {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: right !important;
  }

  body.home #beheshti-hero .beheshti-hero-lead {
    font-size: 20px !important;
    font-weight: 500 !important;
    color: var(--b-color-white) !important;
    line-height: 1.6 !important;
    margin: 0 0 12px 0 !important;
  }

  body.home #beheshti-hero .beheshti-hero-desc {
    font-size: 16px !important;
    font-weight: 300 !important;
    color: var(--b-alpha-white-85) !important;
    line-height: 1.7 !important;
    margin: 0 !important;
  }

  body.home #beheshti-hero .beheshti-hero-buttons {
    display: flex !important;
    gap: 20px !important;
    flex-direction: row !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    justify-content: space-between;
  }

  body.home #beheshti-hero .beheshti-hero-buttons .beheshti-btn {
    flex: 1 1 0 !important;
    min-width: 160px !important;
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid var(--b-alpha-white-85) !important;
    background: transparent !important;
    color: var(--b-color-white) !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
    white-space: nowrap !important;
  }

  body.home #beheshti-hero .beheshti-hero-buttons .beheshti-btn:hover {
    background: var(--b-alpha-white-10) !important;
    border-color: var(--b-color-cyan-glow) !important;
    color: var(--b-color-cyan-glow) !important;
  }

  /* Left column (Brand, Star & CTA button) */
  body.home #beheshti-hero .beheshti-hero-left {
    width: 44% !important;
    max-width: 480px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-end !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
  }

  body.home #beheshti-hero .beheshti-hero-brand {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    width: 100% !important;
  }

  body.home #beheshti-hero .beheshti-hero-brand__wrap {
    position: relative !important;
    margin-bottom: 36px !important;
    display: inline-block !important;
  }

  body.home #beheshti-hero .beheshti-hero-brand__title {
    font-family: Georgia, 'Times New Roman', Times, serif !important;
    font-size: 64px !important;
    font-weight: 400 !important;
    color: var(--b-color-white) !important;
    line-height: 1.1 !important;
    margin: 0 !important;
    letter-spacing: 0.02em !important;
    direction: ltr !important;
    text-align: left !important;
  }

  body.home #beheshti-hero .beheshti-hero-brand__sub {
    font-family: Georgia, 'Times New Roman', Times, serif !important;
    font-size: 22px !important;
    font-weight: 300 !important;
    color: var(--b-alpha-white-85) !important;
    margin: 8px 0 0 0 !important;
    letter-spacing: 0.01em !important;
    direction: ltr !important;
    text-align: left !important;
  }

  body.home #beheshti-hero .beheshti-hero-brand__star {
    position: absolute !important;
    left: calc(100% + 16px) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 120px !important;
    height: 120px !important;
    pointer-events: none !important;
    opacity: 0.95 !important;
    filter: drop-shadow(0 0 16px var(--b-alpha-glow-50)) !important;
  }

  body.home #beheshti-hero .beheshti-hero-brand__action .beheshti-btn {
    min-width: 180px !important;
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid var(--b-alpha-white-85) !important;
    background: transparent !important;
    color: var(--b-color-white) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-hero .beheshti-hero-brand__action .beheshti-btn:hover {
    background: var(--b-alpha-white-10) !important;
    border-color: var(--b-color-cyan-glow) !important;
    color: var(--b-color-cyan-glow) !important;
  }

/* Glowing vertical light beam on the right edge */
body.home #beheshti-hero::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 87px;
  background: url("/wp-content/uploads/2026/09/header-grad.png") no-repeat right center / 100% 100%;
  pointer-events: none;
  z-index: 3;
  /* box-shadow حذف یا جایگزین شد */
}
.bishtar-parent-btn a{
  min-width: 300px !important;
  width: 300px !important;
  font-size: 18px !important;
  font-weight: 350 !important;
  background-color: #000 !important;
  border: 1px solid #FFF !important;}
}

/* === Venn Diagram Section — Matching Figma Artboard node-id=1004-1813 === */
@media (min-width: 1025px) {
  body.home #beheshti-venn.e-con.beheshti-snap-section,
  body.home #beheshti-venn {
    min-height: var(--beheshti-snap-h, 100vh) !important;
    height: auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    padding: 20px 20px !important;
    box-sizing: border-box !important;
    background-color: var(--b-color-navy-deep) !important;
  }

  body.home #beheshti-venn > .e-con-inner,
  body.home #beheshti-venn > .e-con,
  body.home #beheshti-venn > .elementor-container {
    width: 100% !important;
    max-width: var(--b-container-max) !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 0px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  /* Text column */
  body.home #beheshti-venn .elementor-element-fa2a811 {
    text-align: right !important;
  }

  body.home #beheshti-venn .elementor-element-6f4d98d .elementor-heading-title {
    font-size: 46px !important;
    font-weight: 200 !important;
    color: var(--b-color-white) !important;
    line-height: 1.35 !important;
    margin: 0 0 28px 0 !important;
    font-family: Aria !important;
  }
  .beheshti-venn-content {
    direction: rtl;
    text-align: right;
    color: #fff;
  }

  .behheshti-venn-content p {
    margin: 0;
  }

  body.home #beheshti-venn .beheshti-venn-content p:has(+ p[data-beheshti-bridge]) {
    margin-bottom: 0 !important;
  }

  body.home #beheshti-venn .beheshti-venn-content p[data-beheshti-bridge] {
    margin-top: 24px !important;
  }

  .beheshti-venn-list {
    list-style: none;
    padding: 0;
    margin: 40px 0;
  }

  .beheshti-venn-list li {
    margin-bottom: 24px;
  }

  .beheshti-venn-list__title {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    font-size: 24px;
    line-height: 1.4;
  }

  .beheshti-venn-list__title strong {
    font-weight: 600;
  }

  .beheshti-venn-list__dots {
    display: flex;
    align-items: center;
    gap: 4px;
  }

  .beheshti-venn-list__dots i {
    width: 15px;
    height: 15px;
    display: block;
    border-radius: 50%;
    background: #8deaff;
  }

  .beheshti-venn-list__description {
    margin-top: 4px;
    font-size: 18px;
    line-height: 1.8;
    font-weight: 350;
  }
  body.home #beheshti-venn .elementor-widget-text-editor {
    color: var(--b-alpha-white-88) !important;
    font-size: 20px !important;
    line-height: 1.8 !important;
    font-weight: 350;
  }

  body.home #beheshti-venn .beheshti-venn-points {
    margin: 32px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 22px !important;
  }

  body.home #beheshti-venn .beheshti-venn-point h4 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: var(--b-color-white) !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 0 0 6px 0 !important;
  }

  body.home #beheshti-venn .beheshti-dot {
    color: var(--b-color-accent) !important;
    font-size: 14px !important;
    letter-spacing: 2px !important;
  }

  body.home #beheshti-venn .beheshti-venn-point p {
    font-size: 15px !important;
    font-weight: 300 !important;
    color: var(--b-alpha-white-75) !important;
    line-height: 1.6 !important;
    margin: 0 !important;
  }

  body.home #beheshti-venn .beheshti-venn-foot {
    font-size: 16px !important;
    font-weight: 400 !important;
    color: var(--b-color-white) !important;
    margin: 28px 0 32px 0 !important;
    line-height: 1.7 !important;
  }

  body.home #beheshti-venn .beheshti-venn-cta .beheshti-btn {
    min-width: 260px !important;
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: 1px solid var(--b-alpha-white-85) !important;
    background: transparent !important;
    color: var(--b-color-white) !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
    padding: 0 28px !important;
  }

  body.home #beheshti-venn .beheshti-venn-cta .beheshti-btn:hover {
    background: var(--b-alpha-white-10) !important;
    border-color: var(--b-color-cyan-glow) !important;
    color: var(--b-color-cyan-glow) !important;
  }

  /* Diagram column */
  body.home #beheshti-venn .elementor-element-47bec50 {
    width: 42% !important;
    max-width: 480px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }

  body.home .beheshti-venn-diagram img,
  body.home #beheshti-venn .elementor-widget-image img {
    content: url('/wp-content/uploads/2026/09/chart-1-6-1.png') !important;
    width: 100% !important;
    max-width: 480px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
  }
}

/* Hide duplicate/leftover standalone button containers outside sections */
body.home .elementor-element-f383c05,
body.home .elementor-element-8a0c011 {
  display: none !important;
}

.beheshti-stat--row {
  display: flex !important;
  flex-direction: row !important; /* RTL: number first → right */
  align-items: baseline;
  justify-content: flex-start;
  gap: 24px;
  text-align: right;
  margin: 28px 0;
}

/* === Progress / FAQ / Posts 2026-07-24 === */
body.home {
  --beheshti-progress-h: 80px;
  --beheshti-chrome-h: 80px;
}
body.home .beheshti-snap-section {
  scroll-margin-top: 0;
  padding-top: 0;
}
/* Ensure inner content of snap sections (except hero) does not sit behind fixed progress bar */
body.home .beheshti-snap-section:not(#beheshti-hero) {
  box-sizing: border-box !important;
}
/* diamond markers like PDF */
.beheshti-timeline__marker {
  width: 0px !important;
  height: 0px !important;
  border-radius: 0 !important;
  transform: rotate(45deg);
  background: var(--b-alpha-white-55) !important;
}
.beheshti-timeline__node.is-active .beheshti-timeline__marker,
.beheshti-timeline__step.is-active .beheshti-timeline__marker {
  width: 7px !important;
  height: 7px !important;
  background: var(--e-global-color-accent, var(--b-color-accent)) !important;
  box-shadow:
    0 0 16px var(--b-alpha-cyan-85),
    0 0 4px var(--b-alpha-cyan-90);
}
.beheshti-timeline__step .beheshti-subnav-item {
  font-size: 12px;
  line-height: 1.35;
  white-space: nowrap;
}
.beheshti-timeline__step.is-active .beheshti-subnav-item {
  color: var(--e-global-color-accent, var(--b-color-accent)) !important;
}

/* Dynamic posts → PDF cards */
#beheshti-insights .beheshti-home-posts .elementor-posts-container {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
#beheshti-insights .beheshti-home-posts .elementor-post {
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  text-align: right;
}
#beheshti-insights .beheshti-home-posts .elementor-post__thumbnail {
  padding-bottom: 125% !important;
  border: 1px solid var(--b-alpha-white-25);
}
#beheshti-insights .beheshti-home-posts .elementor-post__thumbnail img {
  object-fit: cover;
}
#beheshti-insights .beheshti-home-posts .elementor-post__text {
  padding: 14px 0 0 !important;
}
#beheshti-insights .beheshti-home-posts .elementor-post__meta-data {
  color: var(--b-alpha-white-65);
  font-size: 12px;
  order: -1;
  margin-bottom: 8px;
}
#beheshti-insights .beheshti-home-posts .elementor-post__title {
  margin: 0 0 14px !important;
}
#beheshti-insights .beheshti-home-posts .elementor-post__title a {
  color: var(--b-color-white) !important;
  font-size: 18px;
  font-weight: 300;
  text-decoration: none !important;
}
#beheshti-insights .beheshti-home-posts .elementor-post__read-more {
  color: var(--e-global-color-accent, var(--b-color-accent)) !important;
  font-size: 13px;
  text-decoration: none !important;
}
#beheshti-insights .beheshti-home-posts .elementor-posts-masonry,
#beheshti-insights .beheshti-home-posts .elementor-grid {
  display: contents;
}

/* blog card meta order */
#beheshti-insights .beheshti-home-posts .elementor-post__text {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
}
#beheshti-insights .beheshti-home-posts .elementor-post__meta-data {
  order: 1;
  margin: 0;
  color: var(--b-alpha-white-55);
  font-size: 12px;
}
#beheshti-insights .beheshti-home-posts .elementor-post__title {
  order: 2;
  margin: 0 !important;
}
#beheshti-insights .beheshti-home-posts .elementor-post__read-more {
  order: 3;
  margin-top: 8px;
}
#beheshti-insights .beheshti-home-posts .elementor-post__badge,
#beheshti-insights .beheshti-home-posts .elementor-post__terms {
  color: var(--b-alpha-white-55);
}

/* === Home Snap Structure: Header, Sections & Footer === */
body.home .elementor-location-header {
  position: relative !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 100 !important;
  width: 100% !important;
  background: var(--b-color-black) !important;
}
body.home .beheshti-progressbar-spacer {
  display: none !important;
  height: 0 !important;
}
body.home .beheshti-progressbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 90 !important;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
body.home.scrolled-past-hero .beheshti-progressbar {
  opacity: 1;
  pointer-events: auto;
}
body.home .elementor-location-footer {
  scroll-snap-align: none !important;
  scroll-snap-stop: normal !important;
  min-height: 100vh !important;
  height: 100vh !important;
  max-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  padding: 40px 0 !important;
  overflow: hidden !important;
}
body.home .elementor-location-footer > .elementor-section,
body.home .elementor-location-footer > .e-con {
  flex: 1 1 auto;
}
body.home .elementor-location-footer .elementor-container,
body.home .elementor-location-footer .elementor-widget-wrap,
body.home .elementor-location-footer .elementor-widget-html {
  height: 100%;
}
body.home .elementor-location-footer .beheshti-footer {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding-bottom: 0 !important;
}
body.home .elementor-location-footer .beheshti-footer__bottom {
  margin-top: auto;
}

#beheshti-faq {
  position: relative;
  overflow: hidden;
  justify-content: flex-start !important;
  background-color: var(--e-global-color-secondary, #021a51) !important;
}
#beheshti-faq .elementor-heading-title {
  position: relative;
  z-index: 2;
  max-width: 920px;
  width: 100%;
  margin: 8px 0 36px auto;
  font-weight: 200 !important;
  font-size: clamp(36px, 4vw, 52px);
  color: var(--b-color-white) !important;
  letter-spacing: 0;
  line-height: 1.25;
  box-sizing: border-box;
}
.beheshti-faq {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 920px;
  min-width: 0;
  margin: 0 0 0 auto;
  box-sizing: border-box;
}
.beheshti-faq__flare {
  display: none !important;
}
body .beheshti-faq .beheshti-faq__list {
  display: flex;
  width: 1000px!important;
  flex-direction: column;
  gap: 14px;
  position: relative;
  z-index: 1;
  width: 100%;
  min-width: 0;
}
.beheshti-faq__item {
  border: 1px solid var(--b-alpha-ice-steel-38);
  background: var(--b-color-navy-darkest);
  padding: 0;
  border-radius: 0;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.beheshti-faq__item[open] {
  border-color: var(--b-alpha-ice-steel-55);
  box-shadow: none;
}
.beheshti-faq__summary {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 18px;
  padding: 20px 26px;
  cursor: pointer;
  list-style: none;
  direction: rtl;
  min-height: 64px;
  box-sizing: border-box;
}
.beheshti-faq__summary::-webkit-details-marker,
.beheshti-faq__summary::marker {
  display: none;
  content: '';
}
.beheshti-faq__qmark {
  flex: 0 0 auto;
  width: 16px;
  height: 16px;
  border: 1px solid #ffffff;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  color: #ffffff;
  font-weight: 400;
}
.beheshti-faq__question {
  flex: 1 1 auto;
  min-width: 0;
  color: var(--b-alpha-ice-95);
  font-size: 17px;
  font-weight: 300;
  text-align: right;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.beheshti-faq__chevron {
  flex: 0 0 auto;
  width: 9px;
  height: 9px;
  border-right: 1.5px solid #ffffff;
  border-bottom: 1.5px solid #ffffff;
  transform: rotate(45deg);
  transition: transform 0.22s ease;
  margin-inline-start: 6px;
  opacity: 0.95;
}
.beheshti-faq__item[open] .beheshti-faq__chevron {
  transform: rotate(-135deg);
  margin-top: 4px;
}
.beheshti-faq__answer {
  border-top: 1px solid var(--b-alpha-ice-steel-28);
  padding: 16px 26px 22px;
  color: var(--b-alpha-ice-82);
  font-size: 15px;
  font-weight: 300;
  line-height: 2;
  text-align: right;
  box-sizing: border-box;
}
.beheshti-faq__answer p {
  margin: 0 0 10px;
}
.beheshti-faq__answer p:last-child {
  margin-bottom: 0;
}
.beheshti-faq__answer ul {
  margin: 0 0 10px;
  padding: 0 20px 0 0;
  list-style: disc;
}
.beheshti-faq__answer li {
  margin: 4px 0;
}

/* === stable width on FAQ toggle === */
html {
  scrollbar-gutter: stable;
}
body.home,
body.home .elementor,
body.home .beheshti-progressbar {
  max-width: 100%;
  overflow-x: clip;
}
body.home .beheshti-progressbar {
  left: 0;
  right: 0;
  width: auto;
}
/* Prevent shrink-to-fit when all <details> are closed */
#beheshti-faq {
  align-items: stretch !important;
}
#beheshti-faq > .elementor-container {
  width: 100% !important;
  max-width: 100% !important;
  align-self: stretch !important;
  box-sizing: border-box;
}
#beheshti-faq > .elementor-container > .elementor-column {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  min-width: 0 !important;
}
#beheshti-faq .elementor-widget-wrap {
  align-items: stretch !important;
  width: 100% !important;
  max-width: 100% !important;
}
#beheshti-faq .elementor-widget,
#beheshti-faq .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box;
}
#beheshti-faq .elementor-heading-title,
#beheshti-faq .beheshti-faq {
  width: 100% !important;
  max-width: 920px !important;
  min-width: 0 !important;
  box-sizing: border-box;
}
#beheshti-faq .beheshti-faq__list,
#beheshti-faq .beheshti-faq__item,
#beheshti-faq .beheshti-faq__summary,
#beheshti-faq .beheshti-faq__answer {
  box-sizing: border-box;
}
.beheshti-faq__flare {
  width: min(70%, 720px) !important;
  max-width: 100%;
}

/* === Blog archive + single templates === */
body.blog .elementor-location-header,
body.archive .elementor-location-header,
body.single-post .elementor-location-header {
  position: relative !important;
}

/* Archive */
.beheshti-archive-search {
  max-width: 640px;
  margin: 28px auto 0;
}
.beheshti-archive-search .elementor-search-form__container,
.beheshti-archive-search form {
  display: flex;
  gap: 0;
  border: 0;
  background: transparent;
}
.beheshti-archive-search input[type='search'],
.beheshti-archive-search .elementor-search-form__input {
  flex: 1;
  background: var(--b-color-white) !important;
  color: var(--b-color-navy-dark) !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 14px 18px !important;
  min-height: 48px;
}
.beheshti-archive-search button,
.beheshti-archive-search .elementor-search-form__submit {
  background: var(--b-color-black) !important;
  color: var(--b-color-white) !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 14px 28px !important;
  min-height: 48px;
}

.beheshti-blog-cats ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 28px;
  justify-content: flex-start;
  list-style: none;
  margin: 0;
  padding: 0 0 14px;
  border-bottom: 1px solid var(--b-alpha-white-35);
  direction: rtl;
}
.beheshti-blog-cats a {
  color: var(--b-alpha-white-70);
  text-decoration: none;
  font-size: 15px;
  font-weight: 300;
  padding-bottom: 12px;
  display: inline-block;
}
.beheshti-blog-cats li.is-active a,
.beheshti-blog-cats a:hover {
  color: var(--b-color-cyan-glow);
  box-shadow: inset 0 -2px 0 var(--b-color-white);
}

.beheshti-archive-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 28px;
}
.beheshti-archive-card {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 0;
  min-height: 240px;
  background: var(--b-alpha-black-25);
  border: 1px solid var(--b-alpha-white-12);
  overflow: hidden;
  direction: rtl;
}
.beheshti-archive-card__media {
  display: block;
  min-height: 240px;
  order: 1;
}
.beheshti-archive-card__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  min-height: 240px;
}
.beheshti-archive-card__body {
  padding: 22px 22px 18px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  order: 2;
  text-align: right;
}
.beheshti-archive-card__cats,
.beheshti-archive-card__cats a {
  color: var(--b-alpha-white-65);
  font-size: 12px;
  text-decoration: none;
}
.beheshti-archive-card__title {
  margin: 0;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.55;
}
.beheshti-archive-card__title a {
  color: var(--b-color-white);
  text-decoration: none;
}
.beheshti-archive-card__excerpt {
  margin: 0;
  color: var(--b-alpha-white-70);
  font-size: 14px;
  line-height: 1.8;
  font-weight: 300;
}
.beheshti-archive-card__meta {
  margin-top: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  font-size: 13px;
}
.beheshti-archive-card__date {
  color: var(--b-alpha-white-65);
}
.beheshti-archive-card__more {
  color: var(--b-color-white);
  text-decoration: none;
}
.beheshti-archive-card:hover {
  background: var(--b-alpha-black-55);
}
.beheshti-archive-pagination {
  margin-top: 40px;
  text-align: center;
}
.beheshti-archive-pagination ul {
  display: inline-flex;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.beheshti-archive-pagination a,
.beheshti-archive-pagination span {
  display: inline-flex;
  min-width: 36px;
  height: 36px;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--b-alpha-white-35);
  color: var(--b-color-white);
  text-decoration: none;
  padding: 0 10px;
}
.beheshti-archive-pagination .current {
  background: var(--b-color-white);
  color: var(--b-color-navy-dark);
}

@media (max-width: 900px) {
  .beheshti-archive-grid {
    grid-template-columns: 1fr;
  }
  .beheshti-archive-card {
    grid-template-columns: 1fr;
  }
  .beheshti-archive-card__media {
    order: 0;
    min-height: 200px;
  }
}

/* Single — Blog 1 PDF match 2026-07-24 */
body.single-post,
body.single-post .site,
body.single-post .site-content,
body.single-post .elementor-location-single {
  background: #000;
}
body.single-post .elementor-location-header {
  position: relative !important;
}

.beheshti-single {
  direction: rtl;
  background: var(--b-color-white);
  color: var(--b-color-navy-dark);
}
.beheshti-single__hero {
  margin: 0;
  width: 100%;
  max-height: 520px;
  overflow: hidden;
  background: var(--b-color-navy-midnight);
}
.beheshti-single__hero img {
  display: block;
  width: 100%;
  height: 520px;
  object-fit: cover;
}

.beheshti-single__shell {
  max-width: 1200px;
  margin: 0 auto;
  padding: 48px 40px 72px;
}

.beheshti-single__intro {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  gap: 40px;
  align-items: start;
  margin-bottom: 40px;
}
.beheshti-single__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--b-color-gray-150);
  margin-bottom: 22px;
}
.beheshti-single__cats {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}
.beheshti-single__cats-label {
  color: var(--b-color-gray-550);
  font-size: 13px;
  margin-left: 4px;
  font-weight: 400;
}
.beheshti-single__pill {
  display: inline-block;
  border: 1px solid var(--b-color-gray-300);
  color: var(--b-color-gray-700);
  text-decoration: none;
  font-size: 13px;
  padding: 6px 12px;
  border-radius: 2px;
  background: var(--b-color-white);
}
.beheshti-single__date {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--b-color-gray-600);
  font-size: 12px;
  white-space: nowrap;
}
.beheshti-single__date svg {
  margin-bottom: 5px;
}
.beheshti-single__date-icon {
  display: inline-flex;
  color: var(--b-color-blue);
}
.beheshti-single__title {
  margin: 0;
  color: var(--b-color-navy);
  font-size: clamp(28px, 3.2vw, 42px);
  font-weight: 700;
  line-height: 1.45;
  text-align: right;
}

.beheshti-single__linkbox {
  background: var(--b-color-gray-100);
  padding: 18px 16px;
}
.beheshti-single__linkbox-label {
  display: block;
  font-size: 13px;
  color: var(--b-color-gray-600);
  margin-bottom: 10px;
}
.beheshti-single__copy {
  display: flex;
  align-items: stretch;
  background: var(--b-color-white);
  border: 1px solid var(--b-color-gray-200);
}
.beheshti-single__copy input {
  flex: 1;
  min-width: 0;
  border: 0;
  background: var(--b-color-white);
  padding: 10px 12px;
  font-size: 12px;
  direction: ltr;
  text-align: left;
  color: var(--b-color-gray-700);
}
.beheshti-single__copy-btn {
  border: 0;
  background: var(--b-color-gray-950);
  color: var(--b-color-white);
  width: 42px;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.beheshti-single__body {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 260px;
  gap: 48px;
  align-items: start;
}
.beheshti-single__inline-media {
  margin: 0 0 28px;
}
.beheshti-single__inline-media img {
  display: block;
  width: 100%;
  max-height: 420px;
  object-fit: cover;
}
.beheshti-single__content {
  color: var(--b-color-gray-800);
  font-size: 16px;
  line-height: 2;
  text-align: right;
  font-weight: 300;
}
.beheshti-single__content h2,
.beheshti-single__content h3 {
  color: var(--b-color-gray-950);
  font-weight: 600;
  font-size: 20px;
  line-height: 1.6;
  margin: 36px 0 14px;
}
.beheshti-single__content p {
  margin: 0 0 18px;
}

.beheshti-single__sidebar {
  position: sticky;
  top: 24px;
}
.beheshti-single__share-label {
  display: block;
  font-size: 13px;
  color: var(--b-color-gray-500);
  margin-bottom: 12px;
}
.beheshti-single__share-icons {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  align-items: center;
}
.beheshti-single__share-icons a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--b-color-navy);
  text-decoration: none;
}
.beheshti-single__share-icons a:hover {
  opacity: 0.7;
}

.beheshti-related {
  direction: rtl;
  color: var(--b-color-white);
}
.beheshti-related__title {
  text-align: center;
  color: var(--b-color-white);
  font-weight: 200;
  font-size: 36px;
  margin: 0 0 40px;
}
.beheshti-related__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px;
}
.beheshti-related__card {
  display: flex;
  flex-direction: column;
  gap: 0px;
  text-align: right;
}
.beheshti-related__media {
  display: block;
  border: 1px solid var(--b-alpha-white-20);
}
.beheshti-related__media img {
  display: block;
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
}
.beheshti-related__cats {
  color: var(--b-alpha-glow-85);
  font-size: 12px;
}
.beheshti-related__card-title {
  margin: 0;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.55;
}
.beheshti-related__card-title a {
  color: var(--b-color-white);
  text-decoration: none;
}
.beheshti-related__meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-top: auto;
  font-size: 13px;
  padding-top: 8px;
}
.beheshti-related__date {
  color: var(--b-color-cyan-glow);
  font-weight: 400;
  font-size: 12px;
}
.beheshti-related__more {
  color: var(--b-color-white);
  text-decoration: none;
}
.beheshti-related__all {
  text-align: center;
  margin: 40px 0 0;
}
.beheshti-related__all .beheshti-btn--outline,
.beheshti-btn.beheshti-btn--outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 280px;
  padding: 11px 49px;
  border: 1px solid var(--b-alpha-glow-70);
  color: var(--b-color-white);
  text-decoration: none;
  background: transparent;
}

@media (max-width: 980px) {
  .beheshti-single__shell {
    padding: 32px 20px 48px;
  }
  .beheshti-single__intro,
  .beheshti-single__body {
    grid-template-columns: 1fr;
  }
  .beheshti-single__hero img {
    height: 280px;
  }
  .beheshti-single__sidebar {
    position: static;
  }
  .beheshti-related__grid {
    grid-template-columns: 1fr;
  }
}

/* === header black everywhere 2026-07-24 === */
.elementor-location-header,
.elementor.elementor-location-header,
.elementor-location-header .e-con.e-parent {
  background-color: var(--b-color-black) !important;
  background-image: none !important;
}

/* === Growth Architecture page 2026-07-24 === */
body.page-id-33,
body.page-id-33 .site,
body.page-id-33 .site-content {
  background: var(--b-color-black) !important;
}
body.page-id-33 .elementor-33 {
  background: var(--b-color-navy) !important;
  max-width: var(--b-site-max) !important;
  margin-inline: auto !important;
  padding: 0px !important;
}
body.page-id-33 .beheshti-growth-hero .elementor-heading-title,
body.page-id-33 .beheshti-growth-section-title .elementor-heading-title,
body.page-id-33 h1.elementor-heading-title,
body.page-id-33 h2.elementor-heading-title {
  color: var(--b-color-white) !important;
  font-weight: 200 !important;
}
.beheshti-growth-hero .elementor-heading-title {
  line-height: 1.35 !important;
  margin: 0 0 28px !important;
}
.beheshti-growth-lead {
  max-width: 520px;
  margin-right: 0;
  margin-left: auto;
}
.beheshti-growth-lead p,
.beheshti-growth-lead .elementor-widget-container p {
  color: var(--b-alpha-white-92) !important;
  font-size: 15px;
  line-height: 2;
  font-weight: 300;
  margin: 0 0 18px;
  text-align: right;
}
.beheshti-growth-lead strong {
  font-weight: 500;
  color: var(--b-color-white) !important;
}
.elementor-33 .elementor-widget-image img {
  width: 100%;
  max-width: 560px;
  height: auto;
  display: block;
  margin: 0 auto;
}
.beheshti-growth-section-title .elementor-heading-title {
  margin: 0 0 40px !important;
  line-height: 1.4 !important;
}
.beheshti-growth-process {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 20px;
  direction: rtl;
  text-align: center;
}
.beheshti-growth-process__item h3 {
  color: var(--b-color-white);
  font-size: 18px;
  font-weight: 500;
  margin: 14px 0 10px;
}
.beheshti-growth-process__item p {
  color: var(--b-alpha-white-78);
  font-size: 13px;
  line-height: 1.9;
  font-weight: 300;
  margin: 0;
}
.beheshti-growth-process__icon {
  display: inline-flex;
  color: var(--b-color-cyan-glow);
}
.beheshti-growth-results {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 30px;
  direction: rtl;
}
.beheshti-growth-results__item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  text-align: right;
}
.beheshti-growth-results__icon {
  flex-shrink: 0;
  color: var(--b-color-cyan-glow);
  display: inline-flex;
}
.beheshti-growth-results__item h3 {
  color: var(--b-color-cyan-glow);
  font-size: 26px;
  font-weight: 400;
  margin: 6px 0 8px;
}
.beheshti-growth-results__item p {
  color: var(--b-alpha-white-75);
  font-size: 18px;
  line-height: 1.85;
  font-weight: 300;
  margin: 0;
}
@media (max-width: 1024px) {
  .beheshti-growth-process {
    grid-template-columns: repeat(2, 1fr);
  }
  .beheshti-growth-results {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767px) {
  .beheshti-growth-process {
    grid-template-columns: 1fr;
  }
}

/* === Innovation Lab page — Figma "Business Growth Architecture" (2026-09) === */
body.page-id-13,
body.page-id-13 .site,
body.page-id-13 .site-content {
  background: var(--b-color-black) !important;
}
body.page-id-13 h1.elementor-heading-title,
body.page-id-13 h2.elementor-heading-title {
  color: var(--b-color-white) !important;
  font-weight: 200 !important;
}

/* ---- hero ---- */
.beheshti-lab-hero {
  position: relative;
  min-height: 630px !important;
  background-blend-mode: luminosity;
  background-color: var(--b-color-gray-850);
}
/* Elementor post-13 CSS may point at localhost; root-relative URL works on every host. */
body.page-id-13 .elementor-element-1078523:not(.elementor-motion-effects-element-type-background),
body.page-id-13
  .elementor-element-1078523
  > .elementor-motion-effects-container
  > .elementor-motion-effects-layer {
  background-image: url('/wp-content/uploads/figma-assets/lab-hero-bg-v2.png') !important;
  background-position: center center !important;
  background-size: cover !important;
}
.beheshti-lab-hero > .elementor-container {
  align-items: flex-start;
}
.beheshti-lab-hero::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 90px;
  background: linear-gradient(to left, var(--b-alpha-glow-95), transparent 80%);
  -webkit-mask-image: linear-gradient(
    180deg,
    transparent 0,
    var(--b-color-black) 20%,
    var(--b-color-black) 80%,
    transparent 100%
  );
  mask-image: linear-gradient(
    180deg,
    transparent 0,
    var(--b-color-black) 20%,
    var(--b-color-black) 80%,
    transparent 100%
  );
  opacity: 0.9;
  pointer-events: none;
}
.beheshti-lab-hero-title .elementor-heading-title {
  margin: 0 0 24px !important;
  line-height: 1.3 !important;
  letter-spacing: 0.01em;
}
.beheshti-lab-hero-lead {
  max-width: 860px;
  margin: 0 auto;
}
.beheshti-lab-hero-lead p {
  color: var(--b-alpha-white-95) !important;
  font-size: 15px;
  line-height: 1.7;
  font-weight: 300;
  margin: 0;
  text-align: center;
}

/* ---- shared decorative hairlines (Figma) ---- */
.beheshti-lab-intro,
.beheshti-lab-blocks-wrap {
  position: relative;
  overflow: hidden;
}

/* ---- intro ---- */
.beheshti-lab-intro__wrap {
  position: relative;
  z-index: 1;
  max-width: 1176px;
  margin: 0 auto;
  direction: rtl;
}
.beheshti-lab-intro__wrap p {
  color: var(--b-alpha-white-95);
  font-size: 15px;
  line-height: 1.55;
  font-weight: 300;
  margin: 0;
  text-align: right;
}

/* ---- pillars ---- */
.beheshti-lab-pillars {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 90px;
  direction: rtl;
  position: relative;
  padding: 0;
  border: 0;
}
.beheshti-lab-pillars::before {
  display: none;
}
.beheshti-lab-pillars__item {
  text-align: right;
  padding: 0;
}
.beheshti-lab-pillars__head {
  display: flex;
  align-items: center;
  gap: 20px;
  margin: 0 0 26px;
}
.beheshti-lab-pillars__icon {
  flex: 0 0 auto;
  width: 62px;
  height: 62px;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: var(--b-color-navy);
  border-radius: 50% 50% 0 50%;
  margin: 0;
}
.beheshti-lab-pillars__icon::before {
  content: '';
  position: absolute;
  inset: 0;
  border: 1px solid var(--b-alpha-glow-32);
  border-radius: inherit;
  transform: translate(-5px, 5px);
  z-index: -1;
}
.beheshti-lab-pillars__icon svg {
  width: 32px;
  height: 32px;
}
.beheshti-lab-pillars__item h3 {
  color: var(--b-color-white);
  font-size: 35px;
  font-weight: 200;
  margin: 0;
  line-height: 1.4;
  letter-spacing: 0.01em;
}
.beheshti-lab-pillars__item p {
  color: var(--b-alpha-white-88);
  font-size: 15px;
  line-height: 1.55;
  font-weight: 300;
  margin: 0;
}

/* ---- blocks ---- */
.beheshti-lab-blocks {
  display: block;
  direction: rtl;
  position: relative;
  padding: 0;
}
.beheshti-lab-blocks::before {
  display: none;
}
.beheshti-lab-blocks__item {
  text-align: right;
  position: relative;
  z-index: 1;
}
.beheshti-lab-blocks__item--top {
  width: 734px;
  max-width: 100%;
  margin-inline-start: auto;
}
.beheshti-lab-blocks__item--bottom {
  width: 523px;
  max-width: 100%;
  margin-inline-end: auto;
  margin-top: 150px;
}
.beheshti-lab-blocks__item h3 {
  color: var(--b-color-white);
  font-size: 35px;
  font-weight: 200;
  margin: 0 0 18px;
  line-height: 1.4;
  letter-spacing: 0.01em;
}
.beheshti-lab-blocks__item p {
  color: var(--b-alpha-white-90);
  font-size: 15px;
  line-height: 1.55;
  font-weight: 300;
  margin: 0;
}

/* ---- output ---- */
.beheshti-lab-output .beheshti-lab-output__media {
  min-height: 810px;
}
.beheshti-lab-output__spacer {
  min-height: 810px;
}
.beheshti-lab-output__copy {
  position: relative;
}
.beheshti-lab-output__copy::before {
  display: none;
}
.beheshti-lab-output-title .elementor-heading-title {
  margin: 0 0 30px !important;
  line-height: 1.4 !important;
}
body.page-id-13 .beheshti-lab-output {
  max-width: 1440px !important;
}
.beheshti-lab-output__list {
  list-style: none;
  margin: 0 0 34px;
  padding: 0;
  direction: rtl;
  text-align: right;
}
.beheshti-lab-output__list li {
  position: relative;
  padding: 0 22px 14px 0;
  color: var(--b-alpha-white-95);
  font-size: 15px;
  line-height: 1.6;
  font-weight: 300;
}
.beheshti-lab-output__list li::before {
  content: '';
  position: absolute;
  top: 0.55em;
  right: 0;
  width: 7px;
  height: 7px;
  background: var(--b-color-cyan-glow);
}
.beheshti-lab-cta .elementor-button {
  background: var(--b-color-navy) !important;
  color: var(--b-color-white) !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 15px 34px !important;
  font-size: 15px !important;
  font-weight: 400 !important;
}

@media (max-width: 1024px) {
  .beheshti-lab-hero {
    min-height: 0 !important;
  }
  .beheshti-lab-pillars {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .beheshti-lab-blocks__item--top,
  .beheshti-lab-blocks__item--bottom {
    width: 100%;
    margin: 0;
  }
  .beheshti-lab-blocks__item--bottom {
    margin-top: 40px;
  }
  .beheshti-lab-intro::after,
  .beheshti-lab-blocks-wrap::after {
    display: none;
  }
  .beheshti-lab-output .beheshti-lab-output__media,
  .beheshti-lab-output__spacer {
    min-height: 420px;
  }
}

/* === Site header/footer PDF match 2026-07-24 === */
.elementor-location-header,
.beheshti-site-header {
  background: var(--b-color-black) !important;
  position: relative;
}
.beheshti-site-header__top,
.beheshti-site-header__bottom {
  width: 100%;
}
.beheshti-lang {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--b-color-white);
  font-size: 14px;
  font-weight: 300;
  direction: ltr;
}
.beheshti-lang__globe,
.beheshti-lang__icon {
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  min-height: 17px !important;
  background: url('/wp-content/uploads/figma-assets/lang-globe.svg') no-repeat
    center / contain !important;
  border: none !important;
  border-radius: 0 !important;
  display: inline-block !important;
  vertical-align: middle !important;
}
.beheshti-lang__globe::before,
.beheshti-lang__globe::after {
  display: none !important;
}
.beheshti-lang svg,
.beheshti-lang .beheshti-lang__globe-svg {
  width: 17px !important;
  height: 17px !important;
  min-width: 17px !important;
  min-height: 17px !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
  vertical-align: middle !important;
}
.beheshti-header-actions {
  display: flex;
  justify-content: flex-start;
}
.beheshti-site-header .beheshti-btn--outline,
.beheshti-header-actions .beheshti-btn--outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 180px;
  padding: 10px 22px;
  border: 1px solid var(--b-alpha-cyan-70);
  color: var(--e-global-color-accent, var(--b-color-accent)) !important;
  text-decoration: none;
  background: transparent;
  font-size: 14px;
  font-weight: 300;
  border-radius: 0;
}
.beheshti-primary-nav .elementor-nav-menu,
.elementor-location-header .elementor-nav-menu {
  display: flex !important;
  flex-wrap: nowrap;
  gap: 4px 22px;
  justify-content: flex-end;
}
.elementor-location-header .elementor-nav-menu a {
  color: var(--b-color-white) !important;
  padding: 4px 0 !important;
}
.elementor-location-header .elementor-nav-menu .current-menu-item > a,
.elementor-location-header .elementor-nav-menu a:hover {
  color: var(--b-color-cyan-glow) !important;
}
.elementor-location-header .elementor-widget-theme-site-logo img,
.beheshti-site-logo img {
  max-height: 88px;
  width: auto;
}

/* Home page: logo without the constellation that sits behind the wordmark */
body.home .elementor-location-header .elementor-widget-theme-site-logo img,
body.home .beheshti-site-header .elementor-widget-theme-site-logo img,
body.home .beheshti-site-logo img {
  content: url('/wp-content/uploads/2026/07/main-logo-no-star.svg') !important;
}
body.home .beheshti-header-star {
  display: none !important;
}

/* Site header background star & constellation — matching Figma artboard (x: 1381, y: 59 on 1440 canvas) */
header.elementor-location-header,
.elementor-location-header {
  height: 130px !important;
  min-height: 130px !important;
  max-height: 160px !important;
  --min-height: 160px !important;
  background: var(--b-color-black) !important;
  position: relative !important;
  overflow: hidden !important;
  z-index: 1 !important;
  box-sizing: border-box !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
}

.beheshti-site-header {
  height: 180px !important;
  min-height: 130px !important;
  max-height: 180px !important;
  --min-height: 160px !important;
  background: var(--b-color-black) !important;
  position: relative !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  padding: 0 !important;
  margin: 0 auto !important;
  max-width: var(--b-site-max) !important;
  width: 100% !important;
}

@media (min-width: 1025px) {
  .elementor-location-header::after {
    display: none !important;
  }

  header.elementor-location-header,
  .elementor-location-header {
    height: 180px !important;
    min-height: 130px !important;
    max-height: 180px !important;
    --min-height: 160px !important;
    background: var(--b-color-black) !important;
    position: relative !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: stretch !important;
  }

  .beheshti-site-header {
    height: 180px !important;
    min-height: 130px !important;
    max-height: 180px !important;
    --min-height: 160px !important;
    /* Figma Frame 131 (1125:8021) inset padding on header frame */
    padding: 0 60px 6px 60px !important;
    display: block !important;
    position: relative !important;
    overflow: hidden !important;
    max-width: var(--b-site-max) !important;
    width: 100% !important;
    margin: 0 auto !important;
    background: transparent !important;
  }

  /* Remove star banner from header (star is in Hero in Figma) */
  .beheshti-site-header::after,
  .beheshti-site-header__top::before {
    display: none !important;
  }

  /* Top container holding the logo and lang switch */
  .beheshti-site-header__top {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
    display: block !important;
  }

  /* Language switcher on the top-left */
  .elementor-location-header .elementor-element-0290474,
  .elementor-location-header .beheshti-lang,
  .beheshti-site-header .elementor-element-0290474,
  .beheshti-site-header .beheshti-lang {
    position: absolute !important;
    left: 60px !important;
    top: 68px !important;
    width: 180px !important;
    pointer-events: auto !important;
    z-index: 10 !important;
    display: inline-flex !important;
    justify-content: start !important;
    align-items: start !important;
    text-align: center !important;
    gap: 8px !important;
    color: var(--b-color-white) !important;
    font-size: 16px !important;
    font-weight: 300 !important;
    direction: ltr !important;
    text-decoration: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .beheshti-site-header .elementor-element-0290474 .beheshti-lang {
    position: static !important;
    width: 100% !important;
  }

  .beheshti-site-header .beheshti-lang__globe,
  .beheshti-site-header .beheshti-lang__icon,
  .beheshti-site-header .beheshti-lang svg {
    width: 17px !important;
    height: 17px !important;
    min-width: 17px !important;
    min-height: 17px !important;
  }
  .beheshti-site-header .elementor-nav-menu nav ul {
    margin-right: 100px !important;
  }

  /* Logo wordmark on the far right (60px from edge) */
  .elementor-location-header .elementor-widget-theme-site-logo,
  .beheshti-site-header .elementor-widget-theme-site-logo {
    position: absolute !important;
    right: 0px !important;
    top: 95px !important;
    transform: translateY(-50%) !important;
    pointer-events: auto !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  .elementor-widget-theme-site-logo .elementor-widget-container {
    position: relative !important;
    overflow: visible !important;
  }

  /* Header Star SVG - Exact Figma Path positioned next to the logo */
  .beheshti-header-star {
    position: absolute !important;
    top: calc(50% - 98px) !important;
    right: -66px !important;
    width: 396px !important;
    height: 130px !important;
    max-height: 130px !important;
    overflow: hidden !important;
    pointer-events: none !important;
    z-index: 1 !important;
    display: block !important;
  }

  .elementor-location-header .elementor-widget-theme-site-logo img,
  .beheshti-site-header .elementor-widget-theme-site-logo img {
    content: url('/wp-content/uploads/2026/07/main-logo.svg') !important;
    width: 288px !important;
    height: auto !important;
    max-height: 180px !important;
    display: block !important;
    position: relative !important;
    z-index: 2 !important;
  }

  /* Home: logo without the baked-in constellation behind the wordmark */
  body.home .elementor-location-header .elementor-widget-theme-site-logo img,
  body.home .beheshti-site-header .elementor-widget-theme-site-logo img {
    content: url('/wp-content/uploads/2026/07/main-logo-no-star.svg') !important;
  }

  body.home .beheshti-header-star {
    display: none !important;
  }

  /* Main navigation container with menu and CTA button */
  /* Main navigation container with menu and CTA button */
  .beheshti-site-header > .e-con-boxed,
  .elementor-location-header .elementor-element-c00b55e {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 145px !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: none !important;
    display: block !important;
    z-index: 5 !important;
    pointer-events: none !important;
  }

  .elementor-location-header .elementor-element-c00b55e > .e-con-inner,
  .beheshti-site-header > .e-con-boxed > .e-con-inner,
  .beheshti-site-header .e-con-inner {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 40px !important;
    pointer-events: none !important;
  }

  .beheshti-site-header .elementor-element-2af79c5 {
    display: none !important;
  }

  .elementor-location-header .elementor-element-71de6ae,
  .beheshti-site-header .elementor-element-71de6ae {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    justify-content: center !important;
    pointer-events: auto !important;
    z-index: 10 !important;
  }

  .elementor-location-header .elementor-element-98b0cf2,
  .beheshti-site-header .elementor-element-98b0cf2 {
    position: absolute !important;
    left: 60px !important;
    right: auto !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: flex !important;
    width: 180px !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: auto !important;
  }

  .beheshti-site-header .beheshti-header-actions,
  .elementor-location-header .beheshti-header-actions {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    display: flex !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: auto !important;
  }

  .beheshti-site-header .beheshti-header-actions .beheshti-btn,
  .beheshti-site-header .beheshti-btn--outline {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 180px !important;
    height: 40px !important;
    padding: 0 20px !important;
    border: 1px solid var(--b-alpha-cyan-70) !important;
    color: var(--b-color-accent) !important;
    background: transparent !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    transition: all 0.2s ease !important;
    box-sizing: border-box !important;
  }

  .beheshti-site-header .beheshti-header-actions .beheshti-btn:hover,
  .beheshti-site-header .beheshti-btn--outline:hover {
    background: var(--b-alpha-cyan-12) !important;
    border-color: var(--b-color-cyan-glow) !important;
    color: var(--b-color-cyan-glow) !important;
  }

  .beheshti-site-header .elementor-nav-menu--main {
    display: block !important;
    transform: none !important;
  }

  .beheshti-site-header .elementor-nav-menu--main .elementor-nav-menu {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 28px !important;
    direction: rtl !important;
    margin: 0 70px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
    white-space: nowrap !important;
  }

  .beheshti-site-header .elementor-nav-menu--main .elementor-nav-menu li {
    margin: 0 !important;
    padding: 0 !important;
  }

  .beheshti-site-header .elementor-nav-menu--main .elementor-nav-menu a {
    font-size: 18px !important;
    font-family: Aria !important;
    font-weight: 500 !important;
    color: var(--b-alpha-white-85) !important;
    text-decoration: none !important;
    padding: 6px 0 !important;
    white-space: nowrap !important;
    transition: color 0.2s ease;
  }

  .beheshti-site-header
    .elementor-nav-menu--main
    .elementor-nav-menu
    .current-menu-item
    > a,
  .beheshti-site-header .elementor-nav-menu--main .elementor-nav-menu a:hover {
    color: var(--b-color-cyan-glow) !important;
  }
}

.elementor-location-footer,
.beheshti-site-footer {
  background: var(--b-color-black) !important;
}
.beheshti-footer {
  --footer-ink: var(--b-color-cyan-glow);
  --footer-muted: var(--b-alpha-cyan-ice-78);
  --footer-cyan: var(--b-color-cyan-light);
  direction: rtl;
  color: var(--footer-ink);
  font-family: 'Aria', sans-serif !important;
  width: 100% !important;
  max-width: 1250px !important;
  margin: 0 auto !important;
  padding: 60px 0 40px 0 !important;
  box-sizing: border-box !important;
}
.elementor .elementor-top-section.beheshti-site-footer,
.elementor-location-footer .elementor-top-section,
.beheshti-site-footer {
  width: 100% !important;
  max-width: 1250px !important;
  margin-inline: auto !important;
  padding: 0 !important;
}
.beheshti-site-footer > .elementor-container,
.beheshti-site-footer.e-con-boxed > .e-con-inner,
.beheshti-site-footer > .e-con-boxed > .e-con-inner,
.beheshti-site-footer .elementor-column,
.beheshti-site-footer .elementor-widget-wrap {
  max-width: 1250px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
.beheshti-footer,
.beheshti-footer *,
.beheshti-footer h4,
.beheshti-footer p,
.beheshti-footer a,
.beheshti-footer span,
.beheshti-footer li,
.beheshti-footer button {
  font-family: 'Aria', sans-serif !important;
  box-sizing: border-box;
}
.beheshti-footer *::before,
.beheshti-footer *::after {
  box-sizing: border-box;
}

/* Top: brand (right) + CTA (left) — no rail, no star */
.beheshti-footer__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px 80px;
  margin-bottom: 48px;
}
.beheshti-footer__brand {
  flex: 0 0 auto;
}
.beheshti-footer__logo {
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 23px;
  font-weight: 400;
  line-height: 1.15;
  letter-spacing: 0.01em;
  color: var(--footer-ink);
}
.beheshti-footer__logo-fa {
  margin-top: 8px;
  font-size: 13px;
  font-weight: 300;
  line-height: 1.4;
  color: var(--footer-ink);
}
.beheshti-footer__cta {
  text-align: left;
  flex: 0 0 auto;
}
.beheshti-footer__cta p {
  margin: 0 0 14px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--footer-ink);
}
.beheshti-footer__cta .beheshti-btn--outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 208px;
  padding: 11px 49px;
  /* beat the global white .beheshti-btn--outline !important border */
  border: 1px solid var(--b-color-cyan-glow) !important;
  color: var(--b-color-cyan-glow) !important;
  text-decoration: none !important;
  background: transparent !important;
  font-size: 18px!important;
  font-weight: 400!important;
  border-radius: 0;
  transition:
    border-color 0.2s ease,
    color 0.2s ease;
}
.beheshti-footer__cta .beheshti-btn--outline:hover {
  border-color: var(--footer-cyan) !important;
  color: var(--footer-cyan) !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* 3 columns: quick links (right) | contact (center) | social (left) */
.beheshti-footer__grid {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  gap: 40px 32px !important;
  text-align: right;
  align-items: start !important;
  width: 100% !important;
  margin-top: 54px;
  margin-bottom: 120px;
}
.beheshti-footer__col:nth-child(1) {
  justify-self: start !important;
  text-align: right !important;
}
.beheshti-footer__col:nth-child(2) {
  justify-self: center !important;
  text-align: right !important;
}
.beheshti-footer__col:nth-child(3) {
  justify-self: end !important;
  text-align: left !important;
}
.beheshti-footer__col h4 {
  margin: 0 0 28px;
  font-size: 26px;
  font-weight: 350;
  line-height: 1.4;
  color: var(--b-color-cyan-glow);
}
.beheshti-footer__col .resane {
  text-align: left;
  margin-bottom: 64px !important;
}
.beheshti-footer__col ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.beheshti-footer__col li {
  margin: 0 0 12px;
}
.beheshti-footer__col li:last-child {
  margin-bottom: 0;
}
.beheshti-footer__col a {
  color: var(--b-color-cyan-glow);
  text-decoration: none;
  line-height: 24px;
  transition: color 0.2s ease;
  font-weight: 500;
  font-size: 18px;
}
.beheshti-footer__col a:hover {
  color: #fff;
}

/* Contact: text + icon on the right (RTL) */
.beheshti-footer__contact li a {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  line-height: 24px;
}
/* AriaWebFaNum remaps ASCII digits to Persian glyphs — use the OTF face for Latin phones */
@font-face {
  font-family: 'AriaEn';
  src: url('/wp-content/fonts/aria/Aria-Medium.otf') format('opentype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
.beheshti-footer__contact li a span {
  font-family: 'AriaEn', Aria, sans-serif !important;
  font-weight: 500 !important;
  font-feature-settings: 'locl' 0;
  -moz-font-feature-settings: 'locl' 0;
  direction: ltr;
  unicode-bidi: isolate;
}
.beheshti-footer__contact li a img {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  display: block;
  /* optical: icon glyph sits slightly low in the 20 viewBox vs Aria caps */
  transform: translateY(-1.5px);
}

/* Social: HORIZONTAL row of glyph icons — no boxes */
.beheshti-footer__social {
  direction: ltr;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 26px;
}
.beheshti-footer__social a {
  display: inline-flex;
  width: auto;
  height: auto;
  border: 0;
  padding: 0;
  background: transparent;
  line-height: 0;
  opacity: 0.95;
  color: var(--e-global-color-accent, #99f1ff);
  transition:
    color 0.2s ease,
    opacity 0.2s ease,
    transform 0.2s ease;
}
.beheshti-footer__social a:hover {
  opacity: 1;
  color: #fff;
  transform: translateY(-1px);
}
/* Inline SVGs inherit currentColor from the link; <img> fallbacks (if any) stay as-is */
.beheshti-footer__social svg.beheshti-social-svg {
  width: 22px;
  height: 22px;
  display: block;
}
.beheshti-footer__social img {
  width: 22px;
  height: 22px;
  display: block;
}

/* Bottom: copyright left + pink accent center */
.beheshti-footer__bottom {
  position: relative;
  display: flex;
  align-items: start;
  justify-content: start;
  direction: ltr;
  min-height: 28px;
  padding-top: 8px;
  color: var(--b-color-cyan-glow);
}
.beheshti-footer__copy {
  margin: 0;
  font-size: 16px;
  font-weight: 300;
  color: var(--b-color-cyan-glow);
  direction: ltr;
  unicode-bidi: isolate;
  font-family: 'Aria', sans-serif !important;
}
.beheshti-footer__accent {
  display: none !important;
}
.beheshti-growth-process {
  direction: rtl;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  background: #0a1b4d;
  padding: 0px;
  font-family: 'Aria', sans-serif;
}

.beheshti-growth-process__item {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  flex: 1 1 0;
  min-width: 160px;
}
.beheshti-growth-process__item:first-child {
  flex: 0 1 240px;
}
.beheshti-growth-process__box {
  flex-shrink: 0;
  width: 56px;
  height: 138px;
  min-height: 138px;
  background: #000;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  padding: 8px 4px 16px;
  gap: 0;
}
.beheshti-growth-process__icon {
  display: flex;
  justify-content: center;
}
.beheshti-growth-process__icon svg {
  display: block;
}
.beheshti-growth-process__number {
  color: var(--e-global-color-secondary, #021a51);
  font-family: 'Aria', sans-serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 27px;
  margin-top: 0;
}
.beheshti-growth-process__item h3 {
  margin: 4px 0 0px;
  color: var(--e-global-color-accent, #99f1ff);
  font-family: 'Aria', sans-serif;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.8;
  text-align: right;
}
.beheshti-growth-process__item p {
  margin: 0;
  color: rgba(255, 255, 255, 0.75);
  font-family: 'Aria', sans-serif;
  font-size: 18px;
  line-height: 1.5;
  text-align: right;
  font-weight: 300;
}

/* Chart captions + section rhythm — Figma Business growth architecture desktop */
body.page-id-33 .elementor-element-eeff9b6 p {
  margin: 0 !important;
  font-family: 'Aria', sans-serif !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  line-height: 22px !important;
  color: #fff !important;
}
body.page-id-33 .elementor-element-eeff9b6 p + p {
  margin-top: 20px !important;
}
body.page-id-33 .elementor-element-eeff9b6 strong {
  font-weight: 300 !important;
  color: #fff !important;
}
@media (min-width: 1025px) {
  body.page-id-33 .elementor-element-0265461 {
    padding-bottom: 0 !important;
  }
  body.page-id-33 .elementor-element-adf7b6b {
    padding-top: 200px !important;
    padding-bottom: 0 !important;
  }
  body.page-id-33 .elementor-element-0283337 {
    padding-top: 200px !important;
  }
  body.page-id-33 .elementor-element-0283337 > .elementor-container > .elementor-column > .elementor-widget-wrap,
  body.page-id-33 .elementor-element-adf7b6b > .elementor-container > .elementor-column > .elementor-widget-wrap {
    padding-top: 0 !important;
  }
  body.page-id-33 .elementor-element-ed38bc5,
  body.page-id-33 .elementor-element-5543075 {
    margin-bottom: 100px !important;
  }
  body.page-id-33 .elementor-element-ed38bc5 .elementor-heading-title,
  body.page-id-33 .elementor-element-5543075 .elementor-heading-title {
    margin: 0 !important;
    line-height: 1.2 !important;
  }
}
body.page-id-33 .beheshti-growth-results__item p {
  font-family: 'Aria', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 22px;
  max-width: 220px;
}
 /* the collage and baked-in scene are no longer part of the design */
.beheshti-lab-story-line img {
  display: none !important;
}

.beheshti-lab-story-line {
  position: absolute !important;
  top: -250px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 1525.5px !important;
  height: 1048.6129150390625px !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: url(/wp-content/uploads/figma-assets/lab-story.svg) no-repeat
    center top !important;
  background-size: 1525.5px 1048.6129150390625px !important;
}
.strategy-btn {
  display: flex !important;
  gap: 20px !important;
}
@media (max-width: 900px) {
  .beheshti-growth-process {
    justify-content: center;
  }
  .beheshti-growth-process__item {
    flex: 1 1 260px;
  }
}
@media (max-width: 1330px) {
  .beheshti-footer {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
}

@media (max-width: 1100px) {
  .beheshti-footer {
    padding: 48px 40px 24px;
  }
  .beheshti-footer__grid {
    gap: 32px 40px;
  }
}

@media (max-width: 900px) {
  .beheshti-footer {
    padding: 40px 24px 20px;
  }
  .beheshti-footer__top {
    flex-direction: column;
    align-items: stretch;
    gap: 28px;
    margin-bottom: 36px;
  }
  .beheshti-footer__cta {
    text-align: right;
  }
  .beheshti-footer__cta .beheshti-btn--outline {
    width: 100%;
    min-width: 0;
  }
  .beheshti-footer__grid {
    grid-template-columns: 1fr !important;
    gap: 28px;
    margin-bottom: 40px;
  }
  .beheshti-footer__col:nth-child(1),
  .beheshti-footer__col:nth-child(2),
  .beheshti-footer__col:nth-child(3) {
    justify-self: stretch !important;
    text-align: right !important;
  }
  .beheshti-footer__social {
    gap: 16px;
  }
  .beheshti-footer__bottom {
    justify-content: end;
    flex-direction: column;
    gap: 16px;
  }
}

/* === Home mobile Figma 393 (2026-08-02) === */
@media (max-width: 767px) {
  /* Chrome / progress — compact on mobile */
  body.home {
    --beheshti-progress-h: 0px;
    --beheshti-snap-h: auto;
    --beheshti-mobile-pad: 20px;
  }
  body.home .beheshti-progressbar,
  body.home .beheshti-progressbar-spacer,
  body.home .beheshti-chrome-h {
    display: none !important;
  }
  html {
    scroll-snap-type: none !important;
  }
  body.home .elementor > .beheshti-snap-section,
  body.home .elementor > .e-con.beheshti-snap-section,
  body.home .elementor > .elementor-section.beheshti-snap-section {
    scroll-snap-align: none !important;
    min-height: 0 !important;
    height: auto !important;
    --min-height: auto !important;
  }

  /* Header: lang | logo | burger in one 60px row */
  header.elementor-location-header,
  .elementor-location-header {
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    min-height: 60px !important;
    max-height: 60px;
    height: 60px !important;

    padding: 0 20px !important;
    gap: 8px;
    box-sizing: border-box;
    direction: ltr; /* match Figma: Farsi | logo | burger */
  }
  .beheshti-site-header__top,
  .beheshti-site-header__bottom {
    display: contents !important;
  }
  .beheshti-site-header .elementor-widget-theme-site-logo,
  .beheshti-site-header .beheshti-site-logo {
    grid-column: 2;
    justify-self: center;
    align-self: center;
  }
  .beheshti-site-header .elementor-widget-theme-site-logo img,
  .beheshti-site-header .beheshti-site-logo img {
    max-height: 32px !important;
    width: auto !important;
  }
  .beheshti-header-star {
    display: none !important;
  }
  .beheshti-site-header .beheshti-lang,
  .beheshti-site-header .elementor-element-0290474 {
    grid-column: 1;
    justify-self: start;
    align-self: center;
  }
  .beheshti-site-header .beheshti-lang {
    font-size: 12px !important;
    gap: 8px;
  }
  .beheshti-site-header .elementor-widget-nav-menu,
  .beheshti-site-header .elementor-element-5851904 {
    grid-column: 3;
    justify-self: end;
    align-self: center;
    width: auto !important;
  }
  .beheshti-site-header .elementor-nav-menu--main {
    display: none !important;
  }
  .beheshti-site-header .elementor-menu-toggle {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 32px;
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .beheshti-site-header .elementor-menu-toggle i,
  .beheshti-site-header .elementor-menu-toggle svg {
    color: var(--b-color-white) !important;
    fill: var(--b-color-white) !important;
  }
  .beheshti-site-header .beheshti-header-actions,
  .beheshti-site-header .beheshti-btn {
    display: none !important;
  }

  /* Shared section padding */
  body.home #beheshti-hero,
  body.home #beheshti-venn,
  body.home #beheshti-intro,
  body.home #beheshti-stats,
  body.home #beheshti-challenge,
  body.home #beheshti-architecture,
  body.home #beheshti-lab,
  body.home #beheshti-insights,
  body.home #beheshti-faq {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.home #beheshti-venn > .e-con-inner,
  body.home #beheshti-venn > .elementor-container,
  body.home #beheshti-challenge > .elementor-container,
  body.home #beheshti-insights > .elementor-container,
  body.home #beheshti-faq > .elementor-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Force stacked columns (except intro/stats 50-50 splits) */
  body.home #beheshti-architecture > .elementor-container > .elementor-column,
  body.home #beheshti-lab > .elementor-container > .elementor-column,
  body.home #beheshti-venn .e-con,
  body.home
    #beheshti-architecture
    > .elementor-container
    > .elementor-column.beheshti-media-col,
  body.home
    #beheshti-architecture
    > .elementor-container
    > .elementor-column.beheshti-copy-col,
  body.home
    #beheshti-lab
    > .elementor-container
    > .elementor-column.beheshti-media-col,
  body.home
    #beheshti-lab
    > .elementor-container
    > .elementor-column.beheshti-copy-col {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Hero — Figma Frame 4 */
  body.home #beheshti-hero {
    min-height: calc(100dvh - 60px) !important;
    padding: 40px 20px !important;
    box-sizing: border-box;
    justify-content: space-between !important;
    align-items: stretch !important;
  }

  body.home #beheshti-hero > .e-con-inner,
  body.home #beheshti-hero > .e-con,
  body.home #beheshti-hero .elementor-widget-wrap {
    width: 100% !important;
    max-width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-items: stretch !important;
    min-height: calc(100dvh - 140px);
    gap: 24px;
  }
  body.home #beheshti-hero .elementor-heading-title,
  body.home #beheshti-hero .elementor-widget-text-editor,
  body.home #beheshti-hero .beheshti-hero-buttons {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: right !important;
  }
  body.home #beheshti-hero .elementor-heading-title {
    font-size: 36px !important;
    font-weight: 200 !important;
    line-height: 1.25 !important;
  }
  body.home #beheshti-hero .elementor-widget-text-editor,
  body.home #beheshti-hero .elementor-widget-text-editor p {
    font-size: 16px !important;
    font-weight: 350 !important;
    line-height: 1.5 !important;
    opacity: 1 !important;
  }

  body.home #beheshti-hero .beheshti-hero-buttons {
    display: flex !important;
    flex-direction: column-reverse !important;
    flex-wrap: nowrap !important;
    gap: 12px !important;
    margin-top: 0 !important;
  }
  body.home #beheshti-hero .beheshti-btn,
  body.home .beheshti-btn {
    flex: none !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 42px;
    padding: 0 16px !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    background: var(--b-color-black) !important;
    border: 0.5px solid var(--b-color-white) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    white-space: nowrap;
  }
  body.home #beheshti-hero .beheshti-hero-timeline {
    display: none !important;
  }

  /* Venn */
  body.home #beheshti-venn {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
  }
  body.home #beheshti-venn .elementor-heading-title {
    font-size: 28px !important;
    font-weight: 300 !important;
    line-height: 1.35 !important;
    text-align: right !important;
    max-width: 100% !important;
  }
  body.home #beheshti-venn .beheshti-venn-diagram img,
  body.home #beheshti-venn .elementor-widget-image img {
    max-width: 250px !important;
    min-height: 0 !important;
    margin: 24px auto !important;
    display: block;
  }
  body.home #beheshti-venn .elementor-widget-text-editor,
  body.home #beheshti-venn .elementor-widget-text-editor p,
  body.home #beheshti-venn .beheshti-venn-list {
    font-size: 14px !important;
    line-height: 1.85 !important;
    text-align: right !important;
  }
  body.home #beheshti-venn .elementor-button-wrapper,
  body.home #beheshti-venn .beheshti-btn {
    width: 100%;
  }
  body.home #beheshti-venn .elementor-button {
    width: 100% !important;
    height: 42px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    background: var(--b-color-black) !important;
    border: 0.5px solid var(--b-color-white) !important;
  }

  /* Intro — 50/50 split: copy | photo (Figma Frame 98) */
  body.home #beheshti-intro {
    padding: 0 !important;
    min-height: 0 !important;
  }
  body.home #beheshti-intro > .elementor-container {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    min-height: 356px;
  }
  body.home #beheshti-intro > .elementor-container > .elementor-column {
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
  }
  body.home #beheshti-intro .beheshti-copy-col {
    padding: 20px !important;
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;
    box-sizing: border-box;
  }
  body.home #beheshti-intro .elementor-heading-title {
    font-size: 28px !important;
    font-weight: 300 !important;
    line-height: 1.2 !important;
    margin: 0 0 8px !important;
  }
  body.home #beheshti-intro .elementor-widget-text-editor p {
    font-size: 14px !important;
    margin: 0 !important;
  }
  body.home #beheshti-intro .beheshti-btn,
  body.home #beheshti-intro .elementor-button {
    width: 100% !important;
    height: 42px;
    margin-top: auto;
  }
  body.home #beheshti-intro .beheshti-media-col .elementor-widget-image img,
  body.home #beheshti-intro .beheshti-media-col .beheshti-shape-spacer {
    min-height: 276px !important;
    height: 276px !important;
    border-radius: 0 !important;
    max-width: none !important;
  }
  body.home #beheshti-intro .beheshti-media-col > .elementor-element-populated {
    padding: 0 !important;
  }

  /* Text strip between intro and stats */
  body.home #beheshti-intro + .beheshti-snap-section,
  body.home .beheshti-section-lead {
    padding: 40px 20px !important;
  }

  /* Stats — photo | stats 50/50 */
  body.home #beheshti-stats {
    padding: 0 !important;
    min-height: 0 !important;
  }
  body.home #beheshti-stats > .elementor-container {
    display: flex !important;
    flex-direction: row-reverse !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    min-height: 356px;
  }
  body.home #beheshti-stats > .elementor-container > .elementor-column {
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
  }
  body.home #beheshti-stats .beheshti-stats-copy,
  body.home #beheshti-stats .beheshti-copy-col {
    padding: 40px 20px 20px !important;
    box-sizing: border-box;
  }
  body.home #beheshti-stats .elementor-heading-title {
    font-size: 24px !important;
    font-weight: 300 !important;
    margin-bottom: 20px !important;
  }
  body.home #beheshti-stats .beheshti-stat--row {
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 4px !important;
    margin: 16px 0 !important;
  }
  body.home #beheshti-stats .beheshti-stat--row .beheshti-stat__number {
    font-size: 28px !important;
    font-weight: 200 !important;
  }
  body.home #beheshti-stats .beheshti-stat--row .beheshti-stat__title {
    font-size: 12px !important;
  }
  body.home #beheshti-stats .beheshti-media-col .elementor-widget-image img,
  body.home #beheshti-stats .beheshti-media-col .beheshti-shape-spacer {
    min-height: 276px !important;
    height: 100% !important;
    border-radius: 0 !important;
  }

  /* Challenge */
  body.home #beheshti-challenge {
  }
  body.home #beheshti-challenge .elementor-heading-title {
    font-size: 28px !important;
    font-weight: 300 !important;
    text-align: right !important;
  }
  body.home #beheshti-challenge .beheshti-challenge-list {
    max-width: 100% !important;
    margin: 0 0 36px !important;
    padding: 0 !important;
    gap: 20px;
  }
  body.home #beheshti-challenge .beheshti-challenge-item {
    gap: 16px;
    align-items: flex-start;
  }
  body.home #beheshti-challenge .beheshti-challenge-icon {
    width: 34px;
    height: 34px;
    font-size: 16px;
  }
  body.home #beheshti-challenge .beheshti-challenge-item p {
    font-size: 13px !important;
    line-height: 1.7 !important;
  }
  body.home #beheshti-challenge .beheshti-btn,
  body.home #beheshti-challenge .elementor-button {
    width: 100% !important;
    height: 42px;
  }

  /* Architecture hex */
  body.home #beheshti-architecture {
    padding: 80px 20px !important;
  }
  body.home #beheshti-architecture > .elementor-container {
    flex-direction: column !important;
  }
  body.home #beheshti-architecture .beheshti-media-col {
    order: -1;
  }
  body.home #beheshti-architecture .elementor-heading-title {
    font-size: 28px !important;
    font-weight: 300 !important;
    text-align: right !important;
    margin-bottom: 24px !important;
  }
  body.home #beheshti-architecture .elementor-widget-image img {
    max-width: 340px !important;
    margin: 0 auto 40px !important;
    display: block;
  }
  body.home #beheshti-architecture .elementor-widget-text-editor p {
    font-size: 14px !important;
    line-height: 1.85 !important;
    text-align: right !important;
  }
  body.home #beheshti-architecture .beheshti-btn,
  body.home #beheshti-architecture .elementor-button {
    width: 100% !important;
    height: 42px;
    margin-top: 24px;
  }

  /* Lab — image on top */
  body.home #beheshti-lab {
    padding: 0 0 80px !important;
  }
  body.home #beheshti-lab > .elementor-container {
    flex-direction: column !important;
  }
  body.home #beheshti-lab .beheshti-media-col {
    order: -1;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  body.home #beheshti-lab .beheshti-copy-col {
    padding: 40px 20px 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  body.home #beheshti-lab .beheshti-media-col .elementor-widget-image img,
  body.home #beheshti-lab .beheshti-media-col .beheshti-shape-spacer {
    min-height: 201px !important;
    height: 201px !important;
    width: 100% !important;
    object-fit: cover;
    border-radius: 0 !important;
  }
  body.home #beheshti-lab .elementor-heading-title {
    font-size: 28px !important;
    font-weight: 300 !important;
    text-align: right !important;
  }
  body.home #beheshti-lab .elementor-widget-text-editor p {
    font-size: 14px !important;
    line-height: 1.85 !important;
  }
  body.home #beheshti-lab .beheshti-btn,
  body.home #beheshti-lab .elementor-button {
    width: 100% !important;
    height: 42px;
    margin-top: 24px;
  }

  /* Insights — horizontal scroll cards */
  body.home #beheshti-insights {
    padding: 80px 0 !important;
    overflow: hidden;
  }
  body.home #beheshti-insights > .elementor-container {
    padding: 0 !important;
  }
  body.home #beheshti-insights .elementor-heading-title {
    font-size: 28px !important;
    font-weight: 300 !important;
    padding: 0 20px !important;
    text-align: right !important;
    margin-bottom: 24px !important;
  }
  body.home #beheshti-insights .beheshti-blog-grid {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    overflow-x: auto;
    padding: 0 0px 0px;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    margin-top: 0 !important;
    grid-template-columns: none !important;
  }
  body.home #beheshti-insights .beheshti-blog-card {
    flex: 0 0 223px;
    width: 223px;
    scroll-snap-align: start;
    border: 1px solid var(--b-alpha-white-85);
    padding: 6px;
    box-sizing: border-box;
  }
  body.home #beheshti-insights .beheshti-archive-card:hover,
  body.home #beheshti-insights .beheshti-blog-card:hover {
    background: transparent !important;
    box-shadow: none !important;
  }
  body.home #beheshti-insights .beheshti-blog-card img,
  body.home #beheshti-insights .beheshti-blog-card__media img {
    aspect-ratio: 211 / 200;
    height: auto;
    min-height: 0;
  }
  body.home #beheshti-insights .beheshti-blog-card__title {
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
  body.home #beheshti-insights .elementor-button-wrapper,
  body.home #beheshti-insights .beheshti-btn {
    display: block;
    width: calc(100% - 40px);
    margin: 24px 20px 0;
  }
  body.home #beheshti-insights .elementor-button,
  body.home #beheshti-insights .beheshti-btn {
    width: 100% !important;
    height: 42px;
  }

  /* FAQ */
  body.home #beheshti-faq {
    padding: 80px 20px !important;
  }
  body.home #beheshti-faq > .elementor-container > .elementor-column {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  body.home #beheshti-faq .elementor-heading-title {
    font-size: 28px !important;
    font-weight: 300 !important;
    text-align: right !important;
    margin-bottom: 40px !important;
  }
  body.home #beheshti-faq .beheshti-faq__flare {
    display: none;
  }
  body.home #beheshti-faq .beheshti-faq__list {
    width: 100%;
    max-width: 100%;
  }
  body.home #beheshti-faq .beheshti-faq__item {
    margin-bottom: 12px;
  }

  /* Footer — mobile 393 (match Figma) */
  .beheshti-footer {
    padding: 36px 20px 20px !important;
    max-width: none !important;
  }
  .beheshti-footer__top {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 24px !important;
    margin-bottom: 32px !important;
  }
  .beheshti-footer__logo {
    font-size: 28px !important;
  }
  .beheshti-footer__logo-fa {
    font-size: 15px !important;
  }
  .beheshti-footer__cta {
    text-align: right !important;
    color: var(--b-color-cyan-glow);
  }
  .beheshti-footer__cta .beheshti-btn--outline {
    width: 100%;
    min-width: 0 !important;
    justify-content: center;
    height: 44px;
  }
  .beheshti-footer__grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    margin-bottom: 36px !important;
  }
  .beheshti-footer__col h4 {
    margin-bottom: 14px !important;
    font-size: 15px !important;
  }
  .beheshti-footer__social {
    flex-direction: row !important;
    gap: 16px !important;
  }
  .beheshti-footer__social a {
    border: 0 !important;
    width: auto !important;
    height: auto !important;
  }
  .beheshti-footer__bottom {
    flex-direction: column !important;
    align-items: end !important;
    gap: 14px !important;
  }
  .beheshti-footer__accent {
    position: static !important;
    transform: none !important;
  }
}

/* === Burger flyout — mobile & tablet (fixed under the 60px bar) === */
/* Outside the 767px block so it also applies between 768-1024px. */
@media (max-width: 1024px) {
  header.elementor-location-header,
  .elementor-location-header {
    overflow: visible !important;
  }
  /* The nav column is centred with translateY(-50%). A transform on an
	   ancestor becomes the containing block for position: fixed, which
	   pinned the opened flyout to the burger instead of the viewport.
	   Drop the transform and pin with an explicit offset instead. */
  header.elementor-location-header .elementor-element-71de6ae.e-con {
    top: 14px !important;
    transform: none !important;
  }
  header.elementor-location-header
    .elementor-element-71de6ae
    .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    position: fixed !important;
    top: 60px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100vw !important;
    margin: 0 !important;
    z-index: 9001 !important;
    background: var(--b-color-black) !important;
    padding: 16px 20px 24px !important;
    box-shadow: 0 18px 30px var(--b-alpha-black-45) !important;
    max-height: calc(100dvh - 60px) !important;
    overflow-y: auto !important;
  }
}

/* === All pages mobile Figma 393 (2026-08-02) === */
@media (max-width: 767px) {
  /* Shared page shell */
  body.page-id-9,
  body.page-id-12,
  body.page-id-13,
  body.page-id-14,
  body.page-id-33,
  body.blog,
  body.archive,
  body.single-post {
    --beheshti-mobile-pad: 20px;
  }

  /* ---------- About (page 9) — Figma 306:2046 ---------- */
  body.page-id-9 #beheshti-about-hero,
  body.page-id-9 #beheshti-about-hero > .elementor-container,
  body.page-id-9
    #beheshti-about-hero
    > .elementor-container
    > .elementor-column,
  body.page-id-9 #beheshti-about-hero .elementor-widget-html,
  body.page-id-9
    #beheshti-about-hero
    .elementor-widget-html
    > .elementor-widget-container,
  body.page-id-9 .beheshti-about-hero {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
  body.page-id-9 .beheshti-about-hero {
    display: flex !important;
    flex-direction: column !important;
    padding: 0 0 40px !important;
  }
  body.page-id-9 .beheshti-about-hero__media {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: 280px !important;
    clip-path: none !important;
    order: -1;
  }
  body.page-id-9 .beheshti-about-hero__media img {
    height: 280px !important;
    object-position: center top !important;
  }
  body.page-id-9 .beheshti-about-hero__content {
    width: 100% !important;
    height: auto !important;
    padding: 28px 20px 0 !important;
    gap: 20px;
    justify-content: flex-start !important;
  }
  body.page-id-9 .beheshti-about-hero__en {
    font-size: 22px !important;
    line-height: 1.2 !important;
  }
  body.page-id-9 .beheshti-about-hero__fa {
    font-size: 28px !important;
    font-weight: 300 !important;
    line-height: 1.25 !important;
    margin: 4px 0 12px !important;
  }
  body.page-id-9 .beheshti-about-hero__bio p {
    font-size: 14px !important;
    line-height: 1.55 !important;
  }
  body.page-id-9 #beheshti-about-hero::after {
    display: none !important;
  }
  body.page-id-9 .beheshti-about-story {
    padding: 48px 20px 72px !important;
    min-height: 0 !important;
  }
  body.page-id-9 .beheshti-about-story__deco {
    display: none !important;
  }
  body.page-id-9 .beheshti-about-story__list {
    display: flex;
    flex-direction: column;
    gap: 28px;
    max-width: 100%;
  }
  body.page-id-9 .beheshti-about-story__item,
  body.page-id-9 .beheshti-about-story__item--left,
  body.page-id-9 .beheshti-about-story__item--right {
    display: grid !important;
    grid-template-columns: 12px 1fr !important;
    gap: 14px !important;
    align-items: start;
  }
  body.page-id-9 .beheshti-about-story__node {
    grid-column: 1 !important;
    width: 12px;
    height: 12px;
    margin-top: 6px;
    background: var(--b-color-cyan-glow) !important;
    border-radius: 0 !important;
  }
  body.page-id-9 .beheshti-about-story__card {
    grid-column: 2 !important;
    justify-self: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  body.page-id-9 .beheshti-about-story__spacer {
    display: none !important;
  }
  body.page-id-9 .beheshti-about-story__title {
    font-size: 18px !important;
    font-weight: 400 !important;
    margin: 0 0 10px !important;
  }
  body.page-id-9 .beheshti-about-story__body {
    font-size: 13px !important;
    line-height: 1.9 !important;
  }

  /* ---------- Contact (page 12) — Figma 309:2524 ---------- */
  body.page-id-12 .elementor-section,
  body.page-id-12 .e-con {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  body.page-id-12 .elementor-top-column,
  body.page-id-12 .elementor-col-60,
  body.page-id-12 .elementor-col-40,
  body.page-id-12 .elementor-col-50 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  body.page-id-12 .elementor-heading-title {
    font-size: 28px !important;
    font-weight: 300 !important;
    text-align: right !important;
  }
  body.page-id-12 .elementor-widget-text-editor p,
  body.page-id-12 .beheshti-contact-info p {
    font-size: 14px !important;
    line-height: 1.85 !important;
    text-align: right !important;
  }
  body.page-id-12 form[data-element_type='e-form'],
  body.page-id-12 .elementor-form {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }
  body.page-id-12 .elementor-field-group,
  body.page-id-12 .elementor-field-type-submit {
    width: 100% !important;
    max-width: 100% !important;
    grid-column: 1 / -1 !important;
  }
  body.page-id-12 .elementor-button,
  body.page-id-12 .beheshti-btn {
    width: 100% !important;
    height: 42px;
    justify-content: center;
  }

  /* ---------- Lab (page 13) — Figma 309:2695 ---------- */
  body.page-id-13 .beheshti-lab-hero {
    padding: 48px 20px 32px !important;
    text-align: right !important;
  }
  body.page-id-13 .beheshti-lab-hero::after {
    top: 8%;
    bottom: 8%;
    width: 2px;
  }
  body.page-id-13 .beheshti-lab-hero-title .elementor-heading-title,
  body.page-id-13 h1.elementor-heading-title {
    font-size: 28px !important;
    font-weight: 200 !important;
    text-align: right !important;
  }
  body.page-id-13 .beheshti-lab-hero-lead {
    max-width: 100% !important;
    margin: 0 !important;
  }
  body.page-id-13 .beheshti-lab-hero-lead p {
    font-size: 14px !important;
    line-height: 1.85 !important;
    text-align: right !important;
  }
  body.page-id-13 .beheshti-lab-intro__wrap {
    flex-direction: column !important;
    gap: 16px !important;
    max-width: 100% !important;
    padding: 0 20px !important;
  }
  body.page-id-13 .beheshti-lab-intro__wrap p {
    font-size: 14px !important;
  }
  body.page-id-13 .beheshti-lab-pillars,
  body.page-id-13 .beheshti-lab-blocks {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  body.page-id-13 .beheshti-lab-pillars::before,
  body.page-id-13 .beheshti-lab-blocks::before {
    display: none !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item--top,
  body.page-id-13 .beheshti-lab-blocks__item--bottom {
    grid-column: 1 !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item h3,
  body.page-id-13 .beheshti-lab-blocks__item h3 {
    font-size: 20px !important;
  }
  body.page-id-13 .beheshti-lab-output {
    padding: 0 0 48px !important;
  }
  body.page-id-13 .beheshti-lab-output .elementor-container,
  body.page-id-13 .beheshti-lab-output__media,
  body.page-id-13 .beheshti-lab-output__copy,
  body.page-id-13 .beheshti-lab-output__spacer {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }
  body.page-id-13 .beheshti-lab-output__media,
  body.page-id-13 .beheshti-lab-output__spacer {
    min-height: 220px !important;
    height: 220px !important;
  }
  body.page-id-13 .beheshti-lab-output__copy {
    padding: 32px 20px 0 !important;
  }
  body.page-id-13 .beheshti-lab-output__copy::before {
    display: none !important;
  }
  body.page-id-13 .beheshti-lab-cta .elementor-button,
  body.page-id-13 .beheshti-btn {
    width: 100% !important;
    height: 42px;
    justify-content: center;
  }

  /* ---------- Growth Architecture (page 33) — Figma 317:965 ---------- */
  body.page-id-33 .beheshti-growth-hero,
  body.page-id-33 .beheshti-growth-how,
  body.page-id-33 .beheshti-growth-outcomes {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  body.page-id-33 .beheshti-growth-hero .elementor-heading-title,
  body.page-id-33 h1.elementor-heading-title {
    font-size: 28px !important;
    font-weight: 200 !important;
    text-align: right !important;
  }
  body.page-id-33 .beheshti-growth-lead {
    max-width: 100% !important;
  }
  body.page-id-33 .beheshti-growth-lead p {
    font-size: 14px !important;
    line-height: 1.85 !important;
  }
  body.page-id-33 .elementor-33 .elementor-widget-image img {
    max-width: 100% !important;
    margin: 24px auto !important;
  }
  body.page-id-33 .beheshti-growth-process {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    text-align: right !important;
  }
  body.page-id-33 .beheshti-growth-process__item {
    display: grid;
    grid-template-columns: 40px 1fr;
    gap: 12px 14px;
    align-items: start;
    text-align: right;
  }
  body.page-id-33 .beheshti-growth-process__icon {
    grid-row: 1 / span 2;
  }
  body.page-id-33 .beheshti-growth-process__item h3 {
    font-size: 16px !important;
    margin: 0 0 6px !important;
  }
  body.page-id-33 .beheshti-growth-process__item p {
    font-size: 13px !important;
  }
  body.page-id-33 .beheshti-growth-results {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  body.page-id-33 .beheshti-growth-results__item {
    gap: 12px;
  }
  body.page-id-33 .elementor-button,
  body.page-id-33 .beheshti-btn {
    width: 100% !important;
    height: 42px;
    justify-content: center;
  }
  body.page-id-33 .elementor-col-50,
  body.page-id-33 .elementor-col-33,
  body.page-id-33 .elementor-col-66 {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* ---------- Blog archive (page 14 / blog) — Figma 317:1712 ---------- */
  body.page-id-14 .elementor-section,
  body.blog .elementor-section,
  body.archive .elementor-section {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
  body.page-id-14 .elementor-heading-title,
  body.blog .elementor-heading-title,
  body.archive .elementor-heading-title {
    font-size: 28px !important;
    font-weight: 300 !important;
    text-align: right !important;
  }
  .beheshti-archive-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  .beheshti-archive-card {
    grid-template-columns: 1fr !important;
    border: 1px solid var(--b-alpha-white-35);
  }
  .beheshti-archive-card__media {
    order: 0;
    min-height: 200px !important;
    aspect-ratio: 16 / 10;
  }
  .beheshti-archive-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .beheshti-archive-card__body {
    padding: 16px !important;
  }
  .beheshti-archive-card__title {
    font-size: 18px !important;
    line-height: 1.4 !important;
  }
  .beheshti-blog-cats {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
  }
  .beheshti-archive-search .elementor-search-form__container,
  .beheshti-archive-search form {
    width: 100% !important;
  }

  /* ---------- Blog single — Figma 317:2225 ---------- */
  body.single-post .beheshti-single__shell {
    padding: 28px 20px 56px !important;
  }
  body.single-post .beheshti-single__hero {
    max-height: 240px !important;
  }
  body.single-post .beheshti-single__hero img {
    height: 240px !important;
  }
  body.single-post .beheshti-single__intro {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
    margin-bottom: 28px !important;
  }
  body.single-post .beheshti-single__meta {
    flex-direction: column;
    align-items: flex-start !important;
    gap: 10px !important;
  }
  body.single-post .beheshti-single__content,
  body.single-post .beheshti-single__content p {
    font-size: 15px !important;
    line-height: 1.9 !important;
  }
  body.single-post .beheshti-related,
  body.single-post .beheshti-related__grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    padding: 0 20px 40px !important;
  }
  body.single-post .beheshti-related__all .beheshti-btn,
  body.single-post .beheshti-btn {
    width: 100%;
    justify-content: center;
    height: 42px;
  }

  /* Shared full-width outline buttons on inner pages */
  body.page-id-9 .beheshti-btn,
  body.page-id-12 .beheshti-btn,
  body.page-id-13 .beheshti-btn,
  body.page-id-14 .beheshti-btn,
  body.page-id-33 .beheshti-btn,
  body.blog .beheshti-btn,
  body.single-post .beheshti-btn {
    box-sizing: border-box;
    background: var(--b-color-black) !important;
    border: 0.5px solid var(--b-color-white) !important;
    font-size: 14px !important;
  }
}

/* === 2026-08-30: cap each snap section to exactly one screen; overflow content scrolls internally, not the page === */
body.home .elementor > .beheshti-snap-section,
body.home .elementor > .e-con.beheshti-snap-section,
body.home .elementor > .elementor-section.beheshti-snap-section {
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: 100vh !important;
  overflow-y: auto;
  overflow-x: hidden;
}
body.home #beheshti-hero {
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: 100vh !important;
  overflow-y: hidden;
  overflow-x: hidden;
}
body.home #beheshti-venn {
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: 100vh !important;
}
/* the FAQ section previously forced overflow:hidden to clip a decorative flare;
   the flare is display:none, so this is safe to override for the internal scroll */
body.home #beheshti-faq {
  height: 100vh !important;
  min-height: 100vh !important;
  max-height: 100vh !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}
body.home .beheshti-snap-section {
  scrollbar-width: thin;
  scrollbar-color: var(--b-alpha-white-28) transparent;
}
body.home .beheshti-snap-section::-webkit-scrollbar {
  width: 6px;
}
body.home .beheshti-snap-section::-webkit-scrollbar-thumb {
  background: var(--b-alpha-white-28);
  border-radius: 3px;
}
body.home .beheshti-snap-section::-webkit-scrollbar-track {
  background: transparent;
}

/* === Innovation Lab — Figma "Business Growth Architecture" desktop pass (2026-09-04) ===
   Measured 1:1 against the 1440px artboard. All values are artboard pixels. */
@media (min-width: 1025px) {
  /* ---- hero: artboard 187 → 817 (630 tall), no extra section padding ---- */
  body.page-id-13 .beheshti-lab-hero {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    min-height: 630px !important;
    height: 630px !important;
  }
  body.page-id-13 .beheshti-lab-hero h1.elementor-heading-title {
    font-size: 60px !important;
    font-weight: 300 !important;
    line-height: 1.1 !important;
    margin: 0 0 34px !important;
  }
  body.page-id-13 .beheshti-lab-hero .elementor-widget-text-editor p {
    font-size: 18px !important;
    line-height: 20px !important;
    font-weight: 300 !important;
    color: var(--b-alpha-white-95) !important;
    margin: 0 !important;
    text-align: center !important;
  }

  /* ---- intro paragraph: artboard 144..1320, 4 lines, fs 19 / lh 24 ---- */
  body.page-id-13 .beheshti-lab-intro__wrap {
    max-width: 1176px !important;
    margin-left: auto !important;
    margin-right: -15px !important;
  }
  body.page-id-13 .beheshti-lab-intro__wrap p {
    font-size: 20px !important;
    line-height: 24px !important;
  }

  /* ---- pillars: artboard columns 140..658 and 784..1318 (gap 126) ---- */
  body.page-id-13 .beheshti-lab-pillars {
    max-width: 1240px !important;
    margin: 0 auto !important;
    grid-template-columns: 534px 518px !important;
    justify-content: space-between !important;
    gap: 0 126px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item {
    width: auto !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item h3 {
    font-size: 36px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item p {
    font-size: 18px !important;
    line-height: 24px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__head {
    margin-bottom: 22px !important;
  }

  /* intro kicker line (artboard line 4) */
  body.page-id-13 .beheshti-lab-intro__kicker {
    margin-top: 0 !important;
  }

  /* ---- blocks: artboard block 1 at 128..648, block 2 at 791..1314 ---- */
  body.page-id-13 .beheshti-lab-blocks__item--top {
    width: 520px !important;
    margin-right: auto !important;
    margin-left: 0 !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item--bottom {
    width: 523px !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item p {
    font-size: 18px !important;
    line-height: 22.5px !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item h3 {
    font-size: 36px !important;
  }

  /* ---- output: artboard photo 0..873 (60.7%), copy column to the right ---- */
  body.page-id-13 .beheshti-lab-output {
    max-width: 1440px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-output > .e-con-inner,
  body.page-id-13 .beheshti-lab-output > .elementor-container {
    max-width: 1440px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: row !important;
  }
  body.page-id-13 .beheshti-lab-output__media {
    flex: 1 1 auto !important;
    max-width: 875px !important;
    width: auto !important;
    min-height: 810px !important;
    margin: 0 !important;
    clip-path: polygon(0 0, 100% 0, 90.74% 100%, 0 100%) !important;
  }
  body.page-id-13 .beheshti-lab-output__copy {
    flex: 0 0 467px !important;
    width: 467px !important;
    /* (100% - 1240px) / 2 goes negative below 1240 and pushed the column (and its CTA) off the page */
    margin-right: max(20px, (100% - 1240px) / 2) !important;
    margin-left: 0 !important;
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-output__copy h2.elementor-heading-title {
    font-size: 60px !important;
    line-height: 81px !important;
  }
  body.page-id-13 .beheshti-lab-output__list li {
    font-size: 18px !important;
    line-height: 24px !important;
  }
  body.page-id-13 .beheshti-lab-output__list {
    width: 384px !important;
    margin-left: auto !important;
  }

  /* ---- footer: artboard content capped to 1180px ---- */
  body.page-id-13 .beheshti-footer {
    max-width: var(--b-container-max) !important;
    padding: 120px 0px 0px 0px !important;
  }
  body.page-id-13 .beheshti-footer__grid {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1.15fr) minmax(0, 1fr) !important;
    gap: 40px 32px !important;
  }
  body.page-id-13 .beheshti-footer__col h4 {
    font-size: 25px !important;
  }
  body.page-id-13 .beheshti-footer__col a {
    font-size: 20px !important;
    line-height: 24px !important;
  }
  body.page-id-13 .beheshti-footer__col li {
    margin-bottom: 12px !important;
  }
  body.page-id-13 .beheshti-footer__grid {
    margin-top: 54px !important;
  }
  body.page-id-13 .beheshti-footer__copy {
    font-size: 16px !important;
  }
  body.page-id-13 .beheshti-footer__cta .beheshti-btn--outline {
    font-size: 20px !important;
  }

  /* ---- vertical rhythm to the artboard ---- */
  body.page-id-13 .beheshti-lab-pillars-wrap {
    padding-top: 127px !important;
  }
  body.page-id-13 .beheshti-lab-blocks-wrap {
    padding-top: 295px !important;
  }
  body.page-id-13 .beheshti-footer__grid {
    margin-bottom: 193px !important;
  }
  body.page-id-13 .beheshti-lab-output {
    padding-top: 0px !important;
  }
}

/* ---- footer/header chrome to the artboard (page-scoped) ---- */
@media (min-width: 1025px) {
  body.page-id-13 .beheshti-site-footer > .elementor-container,
  body.page-id-13 .beheshti-site-footer .elementor-widget-wrap,
  body.page-id-13 .beheshti-site-footer .elementor-column-wrap {
    max-width: var(--b-container-max) !important;
    width: 100% !important;
  }
  body.page-id-13 .beheshti-footer {
    max-width: var(--b-container-max) !important;
  }
  body.page-id-13 .beheshti-footer__logo {
    font-size: 23px !important;
  }
  body.page-id-13 .beheshti-footer__logo-fa {
    font-size: 13px !important;
  }
  body.page-id-13 .beheshti-footer__col a,
  body.page-id-13 .beheshti-footer__contact li a span {
    color: var(--b-color-cyan-glow) !important;
  }

  /* hero decoration: Figma right-edge glow (Asset 2 2.png, 87×630). Lives in the
     theme so it ships with git — uploads/ is not deployed. */
  body.page-id-13 .beheshti-lab-hero::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 1;
    background-image: url('/wp-content/themes/beheshti-child/assets/lab-hero-gradient.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: auto 100%;
  }
  body.page-id-13 .beheshti-lab-hero::after {
    content: none;
  }

  /* section hairlines: vertical + diagonal at exact design coordinates */
  body.page-id-13 .beheshti-lab-intro::before {
    background-image:
      linear-gradient(
        63.4deg,
        transparent calc(50% - 0.5px),
        var(--b-alpha-white-22) 50%,
        transparent calc(50% + 0.5px)
      ),
      linear-gradient(
        to right,
        transparent calc(503px - 0.5px),
        var(--b-alpha-white-20) 503px,
        transparent calc(503px + 0.5px)
      ) !important;
    background-position:
      calc(50% - 218px) calc(50% + 109px),
      0 0 !important;
  }
}

/* ---- output photo: artboard path is a trapezoid (875 wide at the top,
   794 at the bottom) filled with the photo at 1214x810, offset -34px ---- */
@media (min-width: 1025px) {
  body.page-id-13 .beheshti-lab-output__media {
    clip-path: polygon(0 0, 100% 0, 90.74% 100%, 0 100%);
  }
  body.page-id-13 .beheshti-lab-output__media,
  body.page-id-13 .beheshti-lab-output__media > .elementor-widget-wrap {
    background-image: url('/wp-content/uploads/figma-assets/lab-output-photo-v2.jpg') !important;
    background-size: 1214px 810px !important;
    background-position: -34px 0 !important;
    background-repeat: no-repeat !important;
  }
}

/* === Innovation Lab — desktop artboard reconciliation ====================
   Source of truth: `Innovation lab - desktop` (1440x4043).
   Ink boxes measured at threshold 130 so the faint decorative hairlines
   (var(--b-alpha-white-20)) are excluded — at the old threshold of 60 they
   were counted as text and made columns look far narrower than they are.
   Live captures use a 1455px window so the content box is a true 1440
   (scrollbar-gutter reserves 15px). See docs/lab-pixel-qa.md.
   ===================================================================== */
@media (min-width: 1025px) {
  /* -- pillars: grid geometry was right, it just sat 9px left of the

  /* artboard paragraph ink is 535 wide over 3 lines in a 59px band -> 18/22,
   not 19/24 which wrapped short and left a 19px gap at the column edge. */
  body.page-id-13 .beheshti-lab-pillars__item p {
    font-size: 19px !important;
    line-height: 21.8px !important;
  }
  .beheshti-about-hero__titles {
    padding: 100px;
  }
  /* artboard glyph is ~30px wide inside the 62px teardrop; 32px rendered 23px */
  body.page-id-13 .beheshti-lab-pillars__icon svg {
    width: 45px !important;
    height: 45px !important;
  }
  /* artboard ring reads var(--b-color-cyan-muted) on black, i.e. ~.44 alpha, not .32 */
  body.page-id-13 .beheshti-lab-pillars__icon::before {
    border-color: var(--b-alpha-glow-44) !important;
  }
  /* The offset ring exists but `z-index:-1` pushed it behind the section
   background, so it never rendered. Isolating the row gives it a stacking
   context: the ring then paints above the page and below the teardrop. */
  body.page-id-13 .beheshti-lab-pillars__head {
    isolation: isolate !important;
  }

  /* -- blocks: artboard block 1 ink 128..648, block 2 ink 791..1314 -------- */
  body.page-id-13 .beheshti-lab-blocks {
    max-width: var(--b-container-max) !important;
    margin: 0 auto !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item--top {
    width: 524px !important;
    margin-top: 4px !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item--bottom {
    width: 535px !important;
    margin-top: 175px !important;
  }
  /* the artboard leaves 20px between heading ink and paragraph ink; the 18px
   margin plus the h3 line box left 32px. */
  body.page-id-13 .beheshti-lab-blocks__item h3 {
    margin-bottom: 4px !important;
  }
  /* block 2's heading is flush with the paragraph's LEFT edge on the artboard
   (heading ink 793..1127, paragraph ink 791..1314), not right-aligned. */
  body.page-id-13 .beheshti-lab-blocks__item--bottom h3 {
    text-align: left !important;
    margin-left: 0px !important;
  }

  /* -- stars: removed per request -- */
  body.page-id-13 .beheshti-lab-intro::after,
  body.page-id-13 .beheshti-lab-blocks-wrap::after {
    display: none !important;
  }

  /* -- output column: artboard title ink 2521..2647 (two lines, ~87px leading)
      and list ink 2830..3090 — ten tightly-led lines with almost no gap
      between items, where live had 24px leading plus 14px padding. ------- */
  body.page-id-13 .beheshti-lab-output__copy h2.elementor-heading-title {
    line-height: 87px !important;
  }
  body.page-id-13 .beheshti-lab-output__list li {
    line-height: 26px !important;
    padding-bottom: 0 !important;
    margin-bottom: 3px !important;
  }
  /* title ink sat 48px below the artboard; the list then needs its own offset
   because it follows the title in normal flow. */
  body.page-id-13 .beheshti-lab-output__copy h2.elementor-heading-title {
    margin-top: 9px !important;
  }
  body.page-id-13 .beheshti-lab-output__list {
    margin-top: 122px !important;
  }
  /* the copy column now runs 18px past the 810px photo band, which stretched
   the section and pushed the whole footer down; pin the section to the
   artboard's 2381..3240. */
  body.page-id-13 .beheshti-lab-output {
    height: 859px !important;
  }
  /* -- footer/CTA band sat 10px high of the artboard's 3360..3439 ---------- */
  body.page-id-13 footer.elementor-location-footer {
    padding-top: 10px !important;
  }
  .strtegy-header {
    height: calc(100vh - 180px) !important;
  }
}

/* === Innovation Lab — Figma tablet artboard (744x3696) ================= */
@media (min-width: 600px) and (max-width: 1024px) {
  /* hero: artboard 60 -> 1133 */
  body.page-id-13 .beheshti-lab-hero > .elementor-container {
    padding-top: 462px !important;
    align-items: flex-start !important;
  }
  body.page-id-13 .beheshti-lab-hero {
    min-height: 1073px !important;
    height: 1073px !important;
    padding: 0 20px !important;
    background-color: var(--b-color-gray-850) !important;
    background-blend-mode: luminosity !important;
    background-size: cover !important;
    background-position: 50% 50% !important;
    box-shadow: inset 0 0 0 9999px var(--b-alpha-black-34);
  }
  body.page-id-13 .beheshti-lab-hero h1.elementor-heading-title {
    font-size: 44px !important;
    line-height: 1.15 !important;
    margin: 0 0 16px !important;
  }
  body.page-id-13 .beheshti-lab-hero .elementor-widget-text-editor p {
    font-size: 15px !important;
    line-height: 22px !important;
    text-align: center !important;
    margin: 0 !important;
  }

  /* intro + pillars sit on the navy band (var(--b-color-navy)) */
  body.page-id-13 .beheshti-lab-intro,
  body.page-id-13 .beheshti-lab-pillars-wrap {
    background: var(--b-color-navy) !important;
  }
  body.page-id-13 .beheshti-lab-blocks-wrap {
    background: var(--b-color-black) !important;
  }
  body.page-id-13 .beheshti-lab-output {
    background: var(--b-color-navy) !important;
  }

  body.page-id-13 .beheshti-lab-intro {
    padding: 199px 20px 0 !important;
  }
  body.page-id-13 .beheshti-lab-intro__wrap {
    max-width: 660px !important;
    margin: 0 auto !important;
  }
  body.page-id-13 .beheshti-lab-intro__wrap p {
    font-size: 15px !important;
    line-height: 22px !important;
  }

  body.page-id-13 .beheshti-lab-pillars-wrap {
    padding: 58px 20px 0 !important;
  }
  body.page-id-13 .beheshti-lab-pillars {
    display: block !important;
    max-width: 660px !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item + .beheshti-lab-pillars__item {
    margin-top: 35px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item h3,
  body.page-id-13 .beheshti-lab-blocks__item h3 {
    font-size: 26px !important;
    line-height: 1.3 !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item p {
    font-size: 15px !important;
    line-height: 22px !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item p {
    font-size: 15px !important;
    line-height: 17.5px !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item h3 {
    margin-bottom: 0 !important;
  }
  body.page-id-13 .beheshti-lab-pillars__icon {
    width: 44px !important;
    height: 44px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__icon svg {
    width: 22px !important;
    height: 22px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__head {
    margin-bottom: 0 !important;
  }
  body.page-id-13 .beheshti-lab-intro__kicker {
    margin-top: 23px !important;
  }
  /* widget wrappers must not eat the artboard's 42px side gutters */
  body.page-id-13 .beheshti-lab-intro .elementor-widget-wrap,
  body.page-id-13 .beheshti-lab-pillars-wrap .elementor-widget-wrap,
  body.page-id-13 .beheshti-lab-blocks-wrap .elementor-widget-wrap,
  body.page-id-13 .beheshti-lab-intro .elementor-widget-html,
  body.page-id-13 .beheshti-lab-pillars-wrap .elementor-widget-html,
  body.page-id-13 .beheshti-lab-blocks-wrap .elementor-widget-html {
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-blocks-wrap::after {
    display: block !important;
    width: 50px !important;
    height: 35px !important;
    background-size: 50px 35px !important;
    left: 111px !important;
    margin-left: 0 !important;
    top: 319px !important;
    bottom: auto !important;
  }
  body.page-id-13 .beheshti-lab-intro::after {
    display: block !important;
    width: 73px !important;
    height: 50px !important;
    background-size: 73px 50px !important;
    top: 80px !important;
    left: 100px !important;
    margin-left: 0 !important;
  }

  body.page-id-13 .beheshti-lab-blocks-wrap {
    padding: 193px 20px 97px !important;
  }
  body.page-id-13 .beheshti-lab-blocks {
    max-width: 660px !important;
    margin: 0 auto !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item--top,
  body.page-id-13 .beheshti-lab-blocks__item--bottom {
    width: 100% !important;
    margin: 0 !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item--bottom {
    margin-top: 176px !important;
  }

  /* output: photo on the left half, navy copy panel on the right, 600 tall */
  body.page-id-13 .beheshti-lab-output {
    display: flex !important;
    min-height: 600px !important;
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-output > .elementor-container {
    display: flex !important;
    flex-direction: row !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 600px !important;
  }
  body.page-id-13 .beheshti-lab-output__media {
    width: 50% !important;
    flex: 0 0 50% !important;
    clip-path: polygon(0 0, 100% 0, 89.25% 100%, 0 100%) !important;
    min-height: 600px !important;
  }
  body.page-id-13 .beheshti-lab-output__media > .elementor-widget-wrap {
    background-image: url('/wp-content/uploads/figma-assets/lab-output-photo-v2.jpg') !important;
    background-size: 899px 600px !important; /* artboard pattern8 matrix */
    background-position: -291px 0 !important;
    background-repeat: no-repeat !important;
    min-height: 600px !important;
  }
  body.page-id-13 .beheshti-lab-output__spacer {
    min-height: 600px !important;
  }
  body.page-id-13 .beheshti-lab-output__copy {
    width: 30% !important;
    flex: 0 0 50% !important;
    background: var(--b-color-navy) !important;
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-output__copy > .elementor-widget-wrap {
    padding: 11px 40px 0 !important;
  }
  body.page-id-13 .beheshti-lab-output__list {
    margin-top: 28px !important;
  }
  body.page-id-13 .beheshti-lab-output__copy .elementor-widget-button {
    margin-top: -46px !important;
  }
  body.page-id-13 .beheshti-lab-output__copy h2.elementor-heading-title {
    font-size: 35px !important;
    line-height: 44px !important;
  }
  body.page-id-13 .beheshti-lab-output__list {
    width: auto !important;
  }
  body.page-id-13 .beheshti-lab-output__list li {
    font-size: 15px !important;
    line-height: 19px !important;
    margin-bottom: 6px !important;
    padding-bottom: 0 !important;
  }
  body.page-id-13 .beheshti-lab-output__copy .elementor-widget-button a {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    background: var(--b-color-black) !important;
    border: 1px solid var(--b-alpha-white-55) !important;
    color: var(--b-color-white) !important;
  }

  /* footer */
  body.page-id-13 .beheshti-site-footer > .elementor-container,
  body.page-id-13 .beheshti-site-footer .elementor-widget-wrap,
  body.page-id-13 .beheshti-site-footer .elementor-column-wrap {
    max-width: none !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.page-id-13 .beheshti-footer {
    max-width: none !important;
    padding: 13px 40px 20px !important;
  }
  body.page-id-13 .beheshti-footer__top {
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    margin-bottom: 0 !important;
  }
  body.page-id-13 .beheshti-footer__brand,
  body.page-id-13 .beheshti-footer__cta {
    width: auto !important;
  }
  body.page-id-13 .beheshti-footer__brand {
    text-align: right !important;
  }
  body.page-id-13 .beheshti-footer__logo {
    font-size: 26px !important;
  }
  body.page-id-13 .beheshti-footer__logo-fa {
    font-size: 14px !important;
  }
  body.page-id-13 .beheshti-footer__grid {
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 0 !important;
    margin: 72px 0 60px !important;
  }
  body.page-id-13 .beheshti-footer__col h4 {
    font-size: 16px !important;
  }
  body.page-id-13 .beheshti-footer__col a {
    font-size: 14px !important;
    line-height: 20px !important;
  }
  body.page-id-13 .beheshti-footer__copy {
    font-size: 12px !important;
    text-align: center !important;
  }
  body.page-id-13 .beheshti-footer__bottom {
    text-align: center !important;
  }

  /* no desktop-only decorations at this size */
  body.page-id-13 .beheshti-lab-hero::before {
    display: none !important;
  }
}

/* === Innovation Lab — Figma mobile artboard (393x4009) ================ */
@media (max-width: 599px) {
  body.page-id-13 .beheshti-lab-hero {
    min-height: 792px !important;
    height: 792px !important;
    padding: 0 58px 0 30px !important;
    background-color: var(--b-color-gray-850) !important;
    background-blend-mode: luminosity !important;
    background-size: cover !important;
    background-position: 50% 50% !important;
    box-shadow: inset 0 0 0 9999px var(--b-alpha-black-34);
  }
  body.page-id-13 .beheshti-lab-hero > .elementor-container {
    padding-top: 235px !important;
    align-items: flex-start !important;
  }
  body.page-id-13 .beheshti-lab-hero h1.elementor-heading-title {
    font-size: 37.5px !important;
    line-height: 1.35 !important;
    text-align: right !important;
    margin: 0 0 130px !important;
  }
  body.page-id-13 .beheshti-lab-hero .elementor-widget-text-editor p {
    font-size: 15px !important;
    line-height: 24px !important;
    text-align: right !important;
    margin: 0 0 30px !important;
  }

  body.page-id-13 .beheshti-lab-intro,
  body.page-id-13 .beheshti-lab-pillars-wrap {
    background: var(--b-color-navy) !important;
  }
  body.page-id-13 .beheshti-lab-blocks-wrap {
    background: var(--b-color-black) !important;
  }
  body.page-id-13 .beheshti-lab-output {
    background: var(--b-color-navy) !important;
  }

  body.page-id-13 .beheshti-lab-intro .elementor-widget-wrap,
  body.page-id-13 .beheshti-lab-pillars-wrap .elementor-widget-wrap,
  body.page-id-13 .beheshti-lab-blocks-wrap .elementor-widget-wrap,
  body.page-id-13 .beheshti-lab-intro .elementor-widget-html,
  body.page-id-13 .beheshti-lab-pillars-wrap .elementor-widget-html,
  body.page-id-13 .beheshti-lab-blocks-wrap .elementor-widget-html {
    padding: 0 !important;
  }

  body.page-id-13 .beheshti-lab-intro {
    padding: 122px 30px 0 !important;
  }
  body.page-id-13 .beheshti-lab-intro__wrap {
    max-width: none !important;
    margin: 0 !important;
  }
  body.page-id-13 .beheshti-lab-intro__wrap p {
    font-size: 15px !important;
    line-height: 20px !important;
  }
  body.page-id-13 .beheshti-lab-intro__kicker {
    margin-top: 25px !important;
  }

  body.page-id-13 .beheshti-lab-pillars-wrap {
    padding: 72px 30px 0 !important;
  }
  body.page-id-13 .beheshti-lab-pillars {
    display: block !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item + .beheshti-lab-pillars__item {
    margin-top: 49px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item h3,
  body.page-id-13 .beheshti-lab-blocks__item h3 {
    font-size: 22px !important;
    line-height: 1.3 !important;
    margin-bottom: 0 !important;
  }
  body.page-id-13 .beheshti-lab-pillars__item p {
    font-size: 15px !important;
    line-height: 20px !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item p {
    font-size: 14.5px !important;
    line-height: 20px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__icon {
    width: 40px !important;
    height: 40px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__icon svg {
    width: 20px !important;
    height: 20px !important;
  }
  body.page-id-13 .beheshti-lab-pillars__head {
    margin-bottom: 0 !important;
  }

  body.page-id-13 .beheshti-lab-blocks-wrap {
    padding: 103px 30px 42px !important;
  }
  body.page-id-13 .beheshti-lab-blocks {
    max-width: none !important;
    margin: 0 !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item--top,
  body.page-id-13 .beheshti-lab-blocks__item--bottom {
    width: 100% !important;
    margin: 0 !important;
  }
  body.page-id-13 .beheshti-lab-blocks__item--bottom {
    margin-top: 117px !important;
  }

  /* output: photo strip on top, navy copy panel under it */
  body.page-id-13 .beheshti-lab-output {
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-output > .elementor-container {
    display: flex !important;
    flex-direction: column-reverse !important;
  }
  body.page-id-13 .beheshti-lab-output__media {
    width: 100% !important;
    flex: none !important;
    min-height: 258px !important;
    clip-path: none !important;
  }
  body.page-id-13 .beheshti-lab-output__media > .elementor-widget-wrap {
    background-image: url('/wp-content/uploads/figma-assets/lab-output-photo-v2.jpg') !important;
    background-size: cover !important;
    background-position: 50% 50% !important;
    background-repeat: no-repeat !important;
    min-height: 258px !important;
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-output__spacer {
    min-height: 258px !important;
  }
  body.page-id-13 .beheshti-lab-output__copy {
    width: 100% !important;
    flex: none !important;
    padding: 0 !important;
  }
  body.page-id-13 .beheshti-lab-output__copy > .elementor-widget-wrap {
    padding: 55px 30px 0 !important;
  }
  body.page-id-13 .beheshti-lab-output__copy h2.elementor-heading-title {
    font-size: 36px !important;
    line-height: 34px !important;
  }
  body.page-id-13 .beheshti-lab-output__list {
    width: auto !important;
    margin-top: 44px !important;
  }
  body.page-id-13 .beheshti-lab-output__list li {
    font-size: 15px !important;
    line-height: 21px !important;
    margin-bottom: 4px !important;
    padding-bottom: 0 !important;
  }
  body.page-id-13 .beheshti-lab-output__copy .elementor-widget-button {
    margin-top: -29px !important;
  }
  body.page-id-13 .beheshti-lab-output__copy .elementor-widget-button a {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    background: var(--b-color-black) !important;
    border: 1px solid var(--b-alpha-white-55) !important;
    color: var(--b-color-white) !important;
  }

  /* footer — fully stacked, right aligned, centred CTA + copyright */
  body.page-id-13 .beheshti-site-footer > .elementor-container,
  body.page-id-13 .beheshti-site-footer .elementor-widget-wrap,
  body.page-id-13 .beheshti-site-footer .elementor-column-wrap {
    max-width: none !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  body.page-id-13 .beheshti-footer {
    max-width: none !important;
    padding: 79px 30px 30px !important;
  }
  body.page-id-13 .beheshti-footer__top {
    flex-direction: column !important;
    align-items: stretch !important;
    margin-bottom: 0 !important;
  }
  body.page-id-13 .beheshti-footer__cta {
    order: -1 !important;
    text-align: center !important;
  }
  body.page-id-13 .beheshti-footer__cta p {
    text-align: center !important;
  }
  body.page-id-13 .beheshti-footer__cta .beheshti-btn--outline {
    display: block !important;
    width: 100% !important;
  }
  body.page-id-13 .beheshti-footer__brand {
    text-align: right !important;
    margin-top: 38px !important;
  }
  body.page-id-13 .beheshti-footer__logo {
    font-size: 23px !important;
  }
  body.page-id-13 .beheshti-footer__logo-fa {
    font-size: 15px !important;
  }
  body.page-id-13 .beheshti-footer__grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    margin: 62px 0 60px !important;
  }
  body.page-id-13 .beheshti-footer__col h4 {
    font-size: 20px !important;
    margin-bottom: 14px !important;
  }
  body.page-id-13 .beheshti-footer__col a {
    font-size: 15px !important;
    line-height: 20px !important;
  }
  body.page-id-13 .beheshti-footer__col li {
    margin-bottom: 12px !important;
  }
  body.page-id-13 .beheshti-footer__contact li {
    margin-bottom: 4px !important;
  }
  body.page-id-13 .beheshti-footer__copy {
    font-size: 14px !important;
    text-align: center !important;
  }
  body.page-id-13 .beheshti-footer__bottom {
    text-align: center !important;
  }

  body.page-id-13 .beheshti-lab-hero::before {
    display: none !important;
  }

  body.page-id-13 .beheshti-lab-intro::after {
    display: block !important;
    width: 61px !important;
    height: 42px !important;
    background-size: 61px 42px !important;
    top: 51px !important;
    left: 22px !important;
    margin-left: 0 !important;
  }
  body.page-id-13 .beheshti-lab-blocks-wrap::after {
    display: block !important;
    width: 41px !important;
    height: 33px !important;
    background-size: 41px 33px !important;
    top: 401px !important;
    bottom: auto !important;
    left: 33px !important;
    margin-left: 0 !important;
  }
}

/* === Innovation Lab — cross-breakpoint corrections ==================== */
/* AriaWebFaNum remaps ASCII→Persian digits; phone/copyright use AriaEn (Latin). */
.beheshti-footer__contact li a span,
.beheshti-footer__copy {
  font-family: 'AriaEn', 'Aria', sans-serif !important;
  font-feature-settings: 'locl' 0;
  -moz-font-feature-settings: 'locl' 0;
}
body.page-id-13 .beheshti-footer__col a,
body.page-id-13 .beheshti-footer__contact li a span {
  color: var(--b-color-cyan-glow) !important;
}

/* === Disable Homepage Snap and 100vh height locks inside Elementor Editor === */
body.elementor-editor-active,
body.elementor-editor-preview,
body.beheshti-elementor-edit-mode {
  --beheshti-snap-h: auto !important;
}

body.elementor-editor-active.home,
body.elementor-editor-preview.home,
body.beheshti-elementor-edit-mode.home {
  scroll-snap-type: none !important;
}

body.elementor-editor-active.home .elementor > .beheshti-snap-section,
body.elementor-editor-active.home .elementor > .e-con.beheshti-snap-section,
body.elementor-editor-active.home .elementor > .elementor-section.beheshti-snap-section,
body.elementor-editor-preview.home .elementor > .beheshti-snap-section,
body.elementor-editor-preview.home .elementor > .e-con.beheshti-snap-section,
body.elementor-editor-preview.home .elementor > .elementor-section.beheshti-snap-section,
body.beheshti-elementor-edit-mode.home .elementor > .beheshti-snap-section,
body.beheshti-elementor-edit-mode.home .elementor > .e-con.beheshti-snap-section,
body.beheshti-elementor-edit-mode.home .elementor > .elementor-section.beheshti-snap-section,
body.elementor-editor-active.home #beheshti-hero,
body.elementor-editor-preview.home #beheshti-hero,
body.beheshti-elementor-edit-mode.home #beheshti-hero,
body.elementor-editor-active.home #beheshti-venn,
body.elementor-editor-preview.home #beheshti-venn,
body.beheshti-elementor-edit-mode.home #beheshti-venn,
body.elementor-editor-active.home #beheshti-faq,
body.elementor-editor-preview.home #beheshti-faq,
body.beheshti-elementor-edit-mode.home #beheshti-faq,
body.elementor-editor-active.home .elementor-location-footer,
body.elementor-editor-preview.home .elementor-location-footer,
body.beheshti-elementor-edit-mode.home .elementor-location-footer {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
  overflow-y: visible !important;
  overflow-x: visible !important;
  scroll-snap-align: none !important;
  scroll-snap-stop: normal !important;
}

body.elementor-editor-active.home .beheshti-snap-section:not(#beheshti-hero),
body.elementor-editor-preview.home .beheshti-snap-section:not(#beheshti-hero),
body.beheshti-elementor-edit-mode.home .beheshti-snap-section:not(#beheshti-hero) {
  padding-top: 0 !important;
}

body.elementor-editor-active.home .elementor-location-header,
body.elementor-editor-preview.home .elementor-location-header,
body.beheshti-elementor-edit-mode.home .elementor-location-header {
  position: relative !important;
}

body.elementor-editor-active.home .beheshti-progressbar,
body.elementor-editor-preview.home .beheshti-progressbar,
body.beheshti-elementor-edit-mode.home .beheshti-progressbar {
  display: none !important;
}

/* =========================================================================
   HOMEPAGE MODERN SECTIONS (SECTIONS 3 TO 9) - FLEXBOX CONTAINERS & DESIGN
   ========================================================================= */

/* Shared container styling for sections 3 to 9 */
body.home .elementor > .e-con.beheshti-snap-section {
  background-color: var(--e-global-color-secondary, #021a51) !important;
  color: #ffffff;
  box-sizing: border-box;
}

/* Base button styling */
.beheshti-btn--outline {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(255, 255, 255, 0.85) !important;
  background: transparent !important;
  color: #ffffff !important;
  padding: 12px 32px !important;
  font-family: 'Aria', sans-serif !important;
  border-radius: 0 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  cursor: pointer;
  box-sizing: border-box !important;
}
.beheshti-btn--outline:hover {
  background: rgba(255, 255, 255, 0.1) !important;
  border-color: #5ce1e6 !important;
  color: #5ce1e6 !important;
  box-shadow: 0 0 15px rgba(92, 225, 230, 0.2) !important;
}

/* Sparkle icon base */
.beheshti-sparkle-icon {
  width: 22px;
  height: 22px;
  display: inline-block;
  vertical-align: middle;
  filter: drop-shadow(0 0 8px rgba(92, 225, 230, 0.8));
}

/* SECTION 3: INTRO (#beheshti-intro) */
body.home #beheshti-intro {
  padding: 0 !important;
}
body.home #beheshti-intro .beheshti-intro-media {
  flex: 0 0 48% !important;
  width: 48% !important;
  height: 100% !important;
  min-height: 100vh;
  display: flex !important;
  align-items: stretch !important;
  justify-content: center !important;
  overflow: hidden;
  padding: 0 !important;
}
body.home #beheshti-intro .beheshti-intro-photo,
body.home #beheshti-intro .beheshti-intro-photo .elementor-widget-container,
body.home #beheshti-intro .beheshti-intro-photo img {
  width: 100% !important;
  height: 100% !important;
  min-height: 100vh !important;
  object-fit: cover !important;
  display: block !important;
  clip-path: polygon(8% 0, 100% 0, 100% 100%, 0% 100%);
  border-radius: 0 !important;
}
body.home #beheshti-intro .beheshti-intro-copy {
  flex: 0 0 52% !important;
  width: 52% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  padding: 60px !important;
  box-sizing: border-box !important;
  text-align: right !important;
  height: 100%;
}
body.home #beheshti-intro .beheshti-intro-copy h2.elementor-heading-title {
  font-size: clamp(38px, 4.5vw, 56px) !important;
  font-weight: 300 !important;
  line-height: 1.2 !important;
  color: #ffffff !important;
  margin: 0 0 10px 0 !important;
}
body.home #beheshti-intro .beheshti-intro-copy h3.elementor-heading-title {
  font-size: 26px!important;
  font-weight: 400 !important;
  line-height: 1.3 !important;
  color: #fff !important;
  margin: 0 0 28px 0 !important;
}
.about-us-parent-btn{
  display: flex;
  justify-content: end;
}
.about-us-btn-home{
  min-width: 220px!important;
  width: 220px!important;
  font-size: 18px!important;
  font-weight: 350!important;
background-color: #000!important;
border: 1px solid #FFF!important;
}

/* SECTION 4: STATS (#beheshti-stats) */
body.home #beheshti-stats {
  padding: 0 !important;
}
body.home #beheshti-stats .beheshti-stats-copy {
  flex: 0 0 55% !important;
  width: 55% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  padding: 40px 80px 40px 40px !important;
  box-sizing: border-box !important;
  text-align: right !important;
}
body.home #beheshti-stats .beheshti-stats-copy h3.elementor-heading-title {
  font-size: clamp(20px, 2vw, 26px) !important;
  font-weight: 300 !important;
  line-height: 1.4 !important;
  color: #ffffff !important;
  margin: 0 0 12px 0 !important;
}
body.home #beheshti-stats .beheshti-stats-copy .beheshti-intro-desc {
  font-size: 15px !important;
  font-weight: 300 !important;
  line-height: 1.85 !important;
  color: rgba(255, 255, 255, 0.85) !important;
  margin: 0 0 24px 0 !important;
}
body.home #beheshti-stats .beheshti-stats-copy h2.elementor-heading-title {
  font-size: 74px !important;
  font-weight: 200 !important;
  line-height: 1.25 !important;
  color: #ffffff !important;
  margin: 0 !important;
}
body.home #beheshti-stats .beheshti-stats-diag-line {
  position: relative;
  width: 100%;
  height: 2px;
  margin: 12px 0 24px 0;
  background: linear-gradient(90deg, transparent, rgba(92, 225, 230, 0.6), transparent);
}
body.home #beheshti-stats .beheshti-stats-diag-line .beheshti-sparkle-icon {
  position: absolute;
  top: 50%;
  left: 25%;
  transform: translate(-50%, -50%);
}
body.home #beheshti-stats .beheshti-stat--row {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: end !important;
  gap: 24px !important;
  margin-bottom: 14px !important;
  width: 100% !important;
}
body.home #beheshti-stats .beheshti-stat__number {
  font-size: 90px!important;
  font-weight: 100 !important;
  color: #ffffff !important;
  min-width: 130px;
  text-align: right !important;
  font-family: 'Aria', sans-serif !important;
}
body.home #beheshti-stats .beheshti-stat__title {
  font-size: 32px !important;
  font-weight: 300 !important;
  color: rgba(255, 255, 255, 0.88) !important;
  text-align: right !important;
  font-family: 'Aria', sans-serif !important;
  white-space: nowrap !important;
}
body.home #beheshti-stats .beheshti-stats-media {
  flex: 0 0 45% !important;
  width: 45% !important;
  height: 100% !important;
  min-height: 100vh;
  display: flex !important;
  align-items: stretch !important;
  justify-content: center !important;
  overflow: hidden;
  padding: 0 !important;
}
body.home #beheshti-stats .beheshti-stats-photo,
body.home #beheshti-stats .beheshti-stats-photo .elementor-widget-container,
body.home #beheshti-stats .beheshti-stats-photo img {
  width: 100% !important;
  height: 100% !important;
  min-height: 100vh !important;
  object-fit: cover !important;
  display: block !important;
  clip-path: polygon(0 0, 100% 0, 88% 100%, 0 100%);
  border-radius: 0 !important;
}

/* SECTION 5: CHALLENGE (#beheshti-challenge) */
body.home #beheshti-challenge {
}
body.home #beheshti-challenge .elementor-element-challenge_header_con {
  width: 100% !important;
  margin-bottom: 48px !important;
}
body.home #beheshti-challenge .elementor-element-challenge_header_con h2.elementor-heading-title {
  font-size: clamp(34px, 4vw, 52px) !important;
  font-weight: 200 !important;
  color: #ffffff !important;
  margin: 0 !important;
}
body.home #beheshti-challenge .elementor-element-challenge_body_con {
  width: 100% !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
}
body.home #beheshti-challenge .elementor-element-challenge_items_con {
  flex: 0 0 68% !important;
  width: 68% !important;
}
body.home #beheshti-challenge .beheshti-challenge-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 24px !important;
  width: 100% !important;
  margin-top: 0 !important;
  padding: 0 !important;
}
body.home #beheshti-challenge .beheshti-challenge-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 20px !important;
  text-align: right !important;
  direction: rtl !important;
}
body.home #beheshti-challenge .beheshti-challenge-icon {
  flex: 0 0 48px !important;
  width: 48px !important;
  height: 48px !important;
  border-radius: 50% !important;
  background: #010d2c !important;
  border: 1.5px solid #5ce1e6 !important;
  color: #5ce1e6 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  font-weight: 600 !important;
  box-shadow: 0 0 16px rgba(92, 225, 230, 0.25) !important;
}
body.home #beheshti-challenge .beheshti-challenge-text {
  font-size: 26px !important;
  font-weight: 350 !important;
  line-height: 1.8 !important;
  color: rgba(255, 255, 255, 0.92) !important;
  margin: 0 !important;
}.chalesh-kasb a{
  width: 240px!important;
  min-width: 240px!important;
  background-color: #000!important;
  font-size: 18px!important;
  font-weight: 350!important;
}
body.home #beheshti-challenge .elementor-element-challenge_action_con {
  flex: 0 0 28% !important;
  width: 28% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 32px !important;
}
body.home #beheshti-challenge .beheshti-challenge-decor {
  position: relative;
  width: 100%;
  height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.home #beheshti-challenge .beheshti-challenge-vline {
  width: 1px;
  height: 100%;
  background: linear-gradient(180deg, transparent, rgba(92, 225, 230, 0.7), transparent);
  display: block;
}
body.home #beheshti-challenge .beheshti-challenge-sparkle {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 24px;
  height: 24px;
  filter: drop-shadow(0 0 10px #5ce1e6);
}

/* SECTION 6: ARCHITECTURE (#beheshti-architecture) */
body.home #beheshti-architecture {
  padding: 70px !important;
  box-sizing: border-box !important;
}
body.home #beheshti-architecture .beheshti-arch-media {
  flex: 0 0 48% !important;
  width: 48% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
body.home #beheshti-architecture .beheshti-arch-diagram img {
  max-width: 500px !important;
  width: 100% !important;
  height: auto !important;
  display: block !important;
  filter: drop-shadow(0 0 30px rgba(92, 225, 230, 0.15)) !important;
}
body.home #beheshti-architecture .beheshti-arch-copy {
  flex: 0 0 52% !important;
  width: 52% !important;
  padding: 20px 40px !important;
  box-sizing: border-box !important;
  text-align: right !important;
}
body.home #beheshti-architecture .beheshti-arch-copy h2.elementor-heading-title {
  font-size:60px !important;
  font-weight: 200 !important;
  color: #ffffff !important;
  margin: 0 0 20px 0 !important;
}
body.home #beheshti-architecture .beheshti-arch-copy p {
  font-size: 20px !important;
  font-weight: 200 !important;
  line-height: 1.85 !important;
  color: rgba(255, 255, 255, 0.88) !important;
  margin: 0 0 16px 0 !important;
}
.bishtar-darbare a{
  background-color: #000!important;
  font-size: 18px!important;
  font-weight: 350!important;
  border: 1px solid #fff!important;
  width: 240px!important;
  min-width: 240px!important;
}

/* SECTION 7: LAB (#beheshti-lab) */
body.home #beheshti-lab {
  padding: 0 !important;
}
body.home #beheshti-lab .beheshti-lab-copy {
  flex: 0 0 50% !important;
  width: 50% !important;
  padding: 60px 80px 60px 60px !important;
  box-sizing: border-box !important;
  text-align: right !important;
}
body.home #beheshti-lab .beheshti-lab-copy h2.elementor-heading-title {
  font-size: 60px !important;
  font-weight: 200 !important;
  line-height: 1.25 !important;
  color: #ffffff !important;
  margin: 0 0 16px 0 !important;
}
body.home #beheshti-lab .beheshti-lab-sparkle-wrap {
  margin-bottom: 20px;
}
body.home #beheshti-lab .beheshti-lab-sparkle-wrap .beheshti-sparkle-icon {
  width: 22px;
  height: 22px;
  filter: drop-shadow(0 0 10px #5ce1e6);
}
body.home #beheshti-lab .beheshti-lab-copy p {
  font-size: 20px !important;
  font-weight: 300 !important;
  line-height: 1.85 !important;
  color: rgba(255, 255, 255, 0.88) !important;
  margin: 0 0 28px 0 !important;
}.bishtar a{
  background-color: #000!important;
  border: 1px solid #fff!important;
  width: 320px!important;
  min-width: 320px!important;
  font-weight: 350!important;
  font-size: 18px!important;


}
body.home #beheshti-lab .beheshti-lab-media {
  flex: 0 0 50% !important;
  width: 50% !important;
  height: 100% !important;
  min-height: 100vh;
  display: flex !important;
  align-items: stretch !important;
  justify-content: center !important;
  overflow: hidden;
  padding: 0 !important;
}
body.home #beheshti-lab .beheshti-lab-photo,
body.home #beheshti-lab .beheshti-lab-photo .elementor-widget-container,
body.home #beheshti-lab .beheshti-lab-photo img {
  width: 100% !important;
  height: 100% !important;
  min-height: 100vh !important;
  object-fit: cover !important;
  display: block !important;
  clip-path: polygon(0 0, 100% 0, 88% 100%, 0 100%);
  border-radius: 0 !important;
}

/* SECTION 8: INSIGHTS (#beheshti-insights) */
body.home #beheshti-insights {
  padding: 80px 80px !important;
  box-sizing: border-box !important;
}
body.home #beheshti-insights h2.elementor-heading-title {
  font-size: 60px !important;
  font-weight: 200 !important;
  color: #ffffff !important;
  margin: 0 0 20px 0 !important;
  text-align: right !important;
}
body.home #beheshti-insights .beheshti-home-archive-grid,
body.home #beheshti-insights .beheshti-blog-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
  margin: 0px !important;
  width: 100% !important;
  direction: rtl;
  align-items: stretch !important;
}
body.home #beheshti-insights .beheshti-archive-card {
  display: flex !important;
  flex-direction: column !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: right !important;
  direction: rtl;
  transition: background 0.2s ease, box-shadow 0.2s ease;
  min-width: 0;
  box-sizing: border-box !important;
}
body.home #beheshti-insights .beheshti-archive-card:hover {
  background: #000000 !important;
  box-shadow: 0 0 0 10px #000000 !important;
}
body.home #beheshti-insights .beheshti-archive-card__media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 200px !important;
  overflow: hidden;
  background: #0a1633;
}
body.home #beheshti-insights .beheshti-archive-card__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  border: 0 !important;
}
body.home #beheshti-insights .beheshti-archive-card__hover-excerpt {
  display: none !important;
}
body.home #beheshti-insights .beheshti-archive-card__body {
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto;
  gap: 0 !important;
  text-align: right !important;
  background: transparent !important;
  min-width: 0;
  overflow: hidden;
}
body.home #beheshti-insights .beheshti-archive-card__cats {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 4px 12px;
  margin: 16px 0 0 !important;
  color: rgba(255, 255, 255, 0.62) !important;
  font-size: 12px !important;
  font-weight: 300 !important;
  line-height: 1.4;
}
body.home #beheshti-insights .beheshti-archive-card__cats a {
  color: var(--e-global-color-accent, #99f1ff) !important;
  font-size: 12px !important;
  font-weight: 350 !important;
  text-decoration: none !important;
}
body.home #beheshti-insights .beheshti-archive-card__title {
  margin: 14px 0 0 !important;
  font-size: 18px !important;
  font-weight: 350 !important;
  line-height: 24px !important;
  flex: 1 1 auto;
  min-height: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}
body.home #beheshti-insights .beheshti-archive-card__title a {
  color: #ffffff !important;
  text-decoration: none !important;
}
body.home #beheshti-insights .beheshti-archive-card__meta {
  margin: 20px 0 0 !important;
  padding-top: 15px !important;
  padding-bottom: 15px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.35) !important;
  display: flex !important;
  flex-direction: row;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 12px !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  direction: rtl;
}
body.home #beheshti-insights .beheshti-archive-card__date {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: rgba(255, 255, 255, 0.62) !important;
  font-weight: 300 !important;
}
body.home #beheshti-insights .beheshti-archive-card__date svg {
  margin-top: -3px;
}
body.home #beheshti-insights .beheshti-archive-card__more {
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 400 !important;
  white-space: nowrap;
  font-size: 16px!important;
}
body.home #beheshti-insights .beheshti-archive-card__more:hover {
  color: var(--e-global-color-accent, #99f1ff) !important;
}

/* SECTION 9: FAQ (#beheshti-faq) */
body.home #beheshti-faq {
  background-color: var(--e-global-color-secondary, #021a51) !important;
  padding: 80px 80px !important;
  box-sizing: border-box !important;
}
body.home #beheshti-faq .elementor-element-faq_inner_con {
  max-width: 920px !important;
  width: 100% !important;
  margin: 0 auto !important;
}
body.home #beheshti-faq h2.elementor-heading-title {
  font-size: clamp(34px, 4vw, 52px) !important;
  font-weight: 300 !important;
  color: #ffffff !important;
  margin: 0 0 32px 0 !important;
  text-align: right !important;
}
body.home #beheshti-faq .beheshti-faq {
  max-width: 1000px !important;
  width: 100% !important;
}
body.home #beheshti-faq .beheshti-faq__item {
  border: 1px solid rgba(170, 200, 220, 0.25) !important;
  background: #000;
  margin-bottom: 12px !important;
  box-sizing: border-box !important;
}
body.home #beheshti-faq .beheshti-faq__summary {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 16px !important;
  padding: 18px 24px !important;
  direction: rtl !important;
  cursor: pointer !important;
}
body.home #beheshti-faq .beheshti-faq__qmark {
  border: 1px solid #ffffff !important;
  color: #ffffff !important;
  border-radius: 50% !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 16px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  padding-top: 3px;
}
body.home #beheshti-faq .beheshti-faq__question {
  font-size: 18px !important;
  font-weight: 300 !important;
  color: #ffffff !important;
}
body.home #beheshti-faq .beheshti-faq__answer {
  border-top: none !important;
  padding: 18px 24px !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 350 !important;
  line-height: 1.9 !important;
}

/* RESPONSIVE (MOBILE & TABLET) */
@media (max-width: 1024px) {
  body.home .elementor > .e-con.beheshti-snap-section {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    padding: 60px 24px !important;
    flex-direction: column !important;
  }
  body.home #beheshti-intro .beheshti-intro-media,
  body.home #beheshti-intro .beheshti-intro-copy,
  body.home #beheshti-stats .beheshti-stats-media,
  body.home #beheshti-stats .beheshti-stats-copy,
  body.home #beheshti-challenge .elementor-element-challenge_body_con,
  body.home #beheshti-challenge .elementor-element-challenge_items_con,
  body.home #beheshti-challenge .elementor-element-challenge_action_con,
  body.home #beheshti-architecture .beheshti-arch-media,
  body.home #beheshti-architecture .beheshti-arch-copy,
  body.home #beheshti-lab .beheshti-lab-media,
  body.home #beheshti-lab .beheshti-lab-copy,
  body.home #beheshti-insights #insights_posts_wrap,
  body.home #beheshti-faq .elementor-element-faq_inner_con {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding: 0 !important;
  }
  body.home #beheshti-intro .beheshti-intro-photo img,
  body.home #beheshti-stats .beheshti-stats-photo img,
  body.home #beheshti-lab .beheshti-lab-photo img {
    height: 280px !important;
    min-height: 280px !important;
    clip-path: none !important;
    margin-bottom: 24px;
  }
  body.home #beheshti-intro .beheshti-intro-media,
  body.home #beheshti-stats .beheshti-stats-media,
  body.home #beheshti-lab .beheshti-lab-media {
    order: -1;
    min-height: 0 !important;
    height: auto !important;
  }
  body.home #beheshti-challenge .elementor-element-challenge_body_con {
    flex-direction: column !important;
    gap: 32px !important;
  }
  body.home #beheshti-insights .beheshti-home-archive-grid,
  body.home #beheshti-insights .beheshti-blog-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
}

/* === Home review pass — annotated desktop corrections === */
@media (min-width: 1025px) {
  body.home {
    /* Figma: section content top at y=120 (progress overlays first ~52px). */
    --beheshti-bar-gap: 120px;
  }

  body.home #beheshti-hero .beheshti-btn,
  body.home #beheshti-hero .beheshti-hero-buttons .beheshti-btn,
  body.home .beheshti-btn.beheshti-btn--outline {
    height: 45px !important;
    min-height: 45px !important;
    max-height: 45px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 1 !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-hero {
    position: relative !important;
  }

  body.home #beheshti-hero .elementor-element-9a7b8a6,
  body.home #beheshti-hero .elementor-element-65e3975 {
    position: static !important;
  }

  body.home #beheshti-hero .elementor-element-21a6825 {
    position: absolute !important;
    top: 80px !important;
    left: 103px !important;
    margin-top: 0 !important;
  }

  body.home #beheshti-hero .elementor-element-2290b71 .elementor-heading-title {
    color: #ffffff !important;
  }

  body.home #beheshti-venn.e-con.beheshti-snap-section,
  body.home #beheshti-venn.beheshti-snap-section,
  body.home #beheshti-venn {
    background-color: var(--e-global-color-secondary, #021a51) !important;
  }

  body.home #beheshti-venn .beheshti-venn-list__description::before {
    content: "(";
  }

  body.home #beheshti-venn .beheshti-venn-list__description::after {
    content: ")";
  }

  body.home .beheshti-progressbar {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.home .beheshti-progressbar::before {
    content: "";
    position: absolute;
    left: 50%;
    right: auto;
    top: 23px;
    width: min(1240px, calc(100% - 200px));
    height: 0.3px;
    transform: translateX(-50%);
    background: #ffffff;
    pointer-events: none;
    z-index: 0;
  }

  body.home .beheshti-timeline__steps {
    position: relative;
    z-index: 1;
    max-width: 1440px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 100px !important;
    box-sizing: border-box !important;
  }

  body.home .beheshti-timeline__node.is-active .beheshti-timeline__marker,
  body.home .beheshti-timeline__node:hover .beheshti-timeline__marker,
  body.home .beheshti-timeline__step.is-active .beheshti-timeline__marker {
    box-shadow: none !important;
    filter: none !important;
  }

  body.home #beheshti-intro .beheshti-intro-media,
  body.home #beheshti-stats .beheshti-stats-media,
  body.home #beheshti-lab .beheshti-lab-media {
    align-items: stretch !important;
    justify-content: stretch !important;
  }

  body.home #beheshti-intro .beheshti-intro-media > .elementor-widget-image,
  body.home #beheshti-intro .beheshti-intro-media .elementor-widget-container,
  body.home #beheshti-intro .beheshti-intro-media img,
  body.home #beheshti-stats .beheshti-stats-media > .elementor-widget-image,
  body.home #beheshti-stats .beheshti-stats-media .elementor-widget-container,
  body.home #beheshti-stats .beheshti-stats-media .attachment-full {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    align-self: stretch !important;
    object-fit: cover !important;
    object-position: center center !important;
    display: block !important;
  }

  body.home #beheshti-lab .beheshti-lab-media > .elementor-widget-image,
  body.home #beheshti-lab .beheshti-lab-media .elementor-widget-container,
  body.home #beheshti-lab .beheshti-lab-media img {
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    max-height: none !important;
    margin: 0 !important;
    align-self: stretch !important;
    object-fit: cover !important;
    object-position: 68% center !important;
    display: block !important;
  }

  /* Two 50% columns: any gap pushes the photo off the left edge. */
  body.home #beheshti-lab > .e-con-inner,
  body.home #beheshti-lab.e-con {
    gap: 0 !important;
    --gap: 0px !important;
  }

  body.home #beheshti-lab .beheshti-lab-media .elementor-element-lab_img img {
    clip-path: polygon(0 0, 100% 0, 88% 100%, 0 100%) !important;
  }

  body.home #beheshti-intro {
    align-items: stretch !important;
    --align-items: stretch !important;
  }

  body.home #beheshti-intro .beheshti-intro-copy,
  body.home #beheshti-intro .elementor-element-intro_copy_con {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    --justify-content: flex-start !important;
    align-self: stretch !important;
    min-height: 100% !important;
    /* 60px above the main photo bottom (peek strip is 304px tall below that). */
    padding: calc(52px + 60px) 100px calc(var(--beheshti-span-peek, 304px) + 60px) 100px !important;
    box-sizing: border-box !important;
    overflow: hidden;
  }

  body.home #beheshti-intro .elementor-element-intro_btn,
  body.home #beheshti-intro .about-us-parent-btn {
    margin-top: auto !important;
    width: 100% !important;
  }

  body.home #beheshti-intro .beheshti-intro-copy h3.elementor-heading-title,
  body.home #beheshti-intro .beheshti-intro-copy .elementor-widget-text-editor,
  body.home #beheshti-intro .beheshti-intro-copy .elementor-widget-text-editor p {
    color: #ffffff !important;
    max-width: 100% !important;
  }

  body.home #beheshti-stats {
    align-items: stretch !important;
    --align-items: stretch !important;
  }

  body.home #beheshti-stats .beheshti-stats-copy,
  body.home #beheshti-stats .elementor-element-stats_copy_con {
    align-self: stretch !important;
    min-height: 100% !important;
    justify-content: flex-start !important;
    --justify-content: flex-start !important;
    --padding-top: 0 !important;
    padding-top: calc(52px + 60px) !important;
    padding-bottom: 60px !important;
    padding-right: 100px !important;
    padding-left: 100px !important;
    box-sizing: border-box !important;
    gap: 0 !important;
  }

  body.home #beheshti-stats .elementor-element-stats_title {
    /* Figma: 225px from title to first stat row. */
    margin-bottom: 225px !important;
  }

  body.home #beheshti-stats .elementor-element-stats_title h2.elementor-heading-title {
    margin: 0 !important;
  }

  body.home #beheshti-lab {
    align-items: stretch !important;
    --align-items: stretch !important;
  }

  body.home #beheshti-lab .beheshti-lab-copy {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    --justify-content: flex-start !important;
    align-items: flex-start !important;
    --align-items: flex-start !important;
    align-self: stretch !important;
    min-height: 100% !important;
    height: auto !important;
    gap: 0 !important;
    --gap: 0px !important;
    --row-gap: 0px !important;
    --column-gap: 0px !important;
    padding-top: calc(52px + 60px) !important;
    --padding-top: calc(52px + 60px) !important;
    padding-bottom: 60px !important;
    padding-left: 60px !important;
    padding-right: 100px !important;
    box-sizing: border-box !important;
  }

  /* Star comes from vector-5 ::before — inline sparkle breaks title/body rhythm. */
  body.home #beheshti-lab .elementor-element-lab_sparkle,
  body.home #beheshti-lab .beheshti-lab-sparkle-wrap {
    display: none !important;
  }

  body.home #beheshti-lab .beheshti-lab-copy h2.elementor-heading-title {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 24px 0 !important;
    text-align: right !important;
  }

  body.home #beheshti-lab .elementor-element-lab_desc {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    align-self: stretch !important;
  }

  body.home #beheshti-lab .elementor-element-lab_desc p {
    max-width: 520px !important;
    width: 100% !important;
    margin: 0 !important;
    margin-inline-start: auto !important;
    margin-inline-end: 0 !important;
    text-align: right !important;
    text-align-last: right !important;
  }

  body.home #beheshti-lab .elementor-element-lab_btn {
    margin-top: auto !important;
    margin-bottom: 0 !important;
    align-self: flex-start !important;
  }

  body.home #beheshti-lab .beheshti-lab-copy p {
    text-align: right !important;
    text-align-last: right !important;
  }

  body.home #beheshti-architecture {
    padding: 0 100px !important;
    box-sizing: border-box !important;
    /* Elementor defaults to centered columns — stretch so CTA can pin to bottom. */
    justify-content: space-between !important;
    align-items: stretch !important;
    --justify-content: space-between !important;
    --align-items: stretch !important;
  }

  body.home #beheshti-architecture .beheshti-arch-media,
  body.home #beheshti-architecture .beheshti-arch-copy {
    align-self: stretch !important;
    height: auto !important;
    min-height: 100% !important;
  }

  body.home #beheshti-architecture .beheshti-arch-copy {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    --justify-content: flex-start !important;
    /* 60px under progress bar (52) + 60px above section bottom. */
    padding-top: calc(52px + 60px) !important;
    padding-bottom: 60px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-architecture .elementor-element-arch_btn,
  body.home #beheshti-architecture .bishtar-darbare {
    margin-top: auto !important;
  }

  body.home #beheshti-architecture .beheshti-arch-media {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  body.home #beheshti-architecture .beheshti-arch-media .elementor-widget-image,
  body.home #beheshti-architecture .beheshti-arch-media .elementor-widget-container,
  body.home #beheshti-architecture .beheshti-arch-media img {
    width: 476px !important;
    height: 525px !important;
    max-width: 476px !important;
    min-height: 0 !important;
    object-fit: contain !important;
  }

  body.home #beheshti-insights .beheshti-home-archive-grid,
  body.home #beheshti-insights .beheshti-blog-grid {
    gap: 40px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    width: 100% !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
  }

  body.home #beheshti-insights .beheshti-archive-card {
    width: 100% !important;
    max-width: none !important;
  }

  body.home #beheshti-insights .beheshti-archive-card__media,
  body.home #beheshti-insights .beheshti-archive-card__media img {
    width: 100% !important;
    height: 235px !important;
    min-height: 235px !important;
    max-height: 235px !important;
  }

  body.home #beheshti-insights .beheshti-archive-card__meta {
    border-top: 0 !important;
  }

  body.home #beheshti-insights .elementor-element-insights_btn {
    width: 100% !important;
    max-width: 1240px !important;
    margin: 0 auto !important;
    height: 45px !important;
    min-height: 45px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-insights .elementor-element-insights_btn p {
    color: #ffffff !important;
    margin: 0 !important;
  }

  body.home #beheshti-faq {
    /* Figma Frame 43 padding 120 / 100 / 120 / 100 (top includes 52px progress bar). */
    --padding-top: calc(52px + 68px) !important;
    padding: calc(52px + 68px) 100px 120px 100px !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-faq .elementor-element-faq_inner_con {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    align-items: flex-start !important;
    --align-items: flex-start !important;
  }

  body.home #beheshti-faq .beheshti-faq,
  body.home #beheshti-faq .beheshti-faq__list {
    width: 1000px !important;
    max-width: 1000px !important;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  /* Same 1000px column as the accordion (Figma x=100); avoid margin-left:auto on title. */
  body.home #beheshti-faq h2.elementor-heading-title,
  body.home #beheshti-faq .beheshti-faq-title .elementor-heading-title {
    width: 1000px !important;
    max-width: 1000px !important;
    margin: 0 0 32px 0 !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: right !important;
  }

  body.home #beheshti-faq .beheshti-faq__list {
    gap: 8px !important;
  }

  body.home #beheshti-faq .beheshti-faq__item {
    margin-bottom: 0 !important;
    border-top: none !important;
  }

  body.home #beheshti-faq .beheshti-faq__summary {
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    padding: 0 16px !important;
    gap: 8px !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-faq .beheshti-faq__qmark {
    color: #ffffff !important;
    border-color: #ffffff !important;
  }

  body.home #beheshti-faq .beheshti-faq__question {
    font-family: Aria, sans-serif !important;
    font-size: 18px !important;
    font-weight: 300 !important;
    color: #ffffff !important;
  }

  body.home #beheshti-faq h2.elementor-heading-title {
    font-size: 74px !important;
    font-weight: 200 !important;
    line-height: 1.2 !important;
    color: #ffffff !important;
  }

  body.home #beheshti-faq .elementor-element-faq_title,
  body.home #beheshti-faq .elementor-element-faq_title .elementor-widget-container {
    width: auto !important;
    max-width: none !important;
  }

  body.home #beheshti-faq .beheshti-faq__answer {
    font-size: 16px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    color: #ffffff !important;
    border-top: none !important;
  }

  body.home #beheshti-faq .beheshti-faq__chevron {
    border-right-color: #ffffff !important;
    border-bottom-color: #ffffff !important;
  }

  body.home #beheshti-faq .beheshti-faq__item[open] {
    border: none !important;
    border-right: 0.5px solid #ffffff !important;
  }

  body.home .beheshti-timeline__step .beheshti-subnav-item {
    color: #ffffff !important;
    font-weight: 400 !important;
    font-size: 12px !important;
  }

  body.home .beheshti-timeline__step.is-active .beheshti-subnav-item,
  body.home .beheshti-timeline__step .beheshti-subnav-item.is-active {
    color: var(--e-global-color-accent, #99f1ff) !important;
    font-weight: 800 !important;
  }

  body.home .beheshti-timeline__node.is-active .beheshti-timeline__marker,
  body.home .beheshti-timeline__step.is-active .beheshti-timeline__marker {
    background: var(--e-global-color-accent, #99f1ff) !important;
    box-shadow: none !important;
  }

  body.home #beheshti-hero .elementor-widget-text-editor,
  body.home #beheshti-hero .elementor-widget-text-editor p,
  body.home #beheshti-hero .beheshti-hero-lead,
  body.home #beheshti-hero .beheshti-hero-desc {
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    /* Figma Frame 171 is 36px tall for two lines → ~18px line box. */
    line-height: 1.5 !important;
  }

  body.home #beheshti-hero .elementor-element-2290b71 .elementor-heading-title {
    font-weight: 400 !important;
    font-size: 32px !important;
    color: #ffffff !important;
  }

  body.home #beheshti-hero .beheshti-btn {
    font-size: 18px !important;
    font-weight: 400 !important;
  }

  body.home #beheshti-hero .beheshti-hero-buttons {
    gap: 20px !important;
  }

  body.home #beheshti-venn .elementor-element-6f4d98d .elementor-heading-title,
  body.home #beheshti-venn h2.elementor-heading-title {
    font-size: 54px !important;
    font-weight: 200 !important;
    color: #ffffff !important;
  }

  body.home #beheshti-venn .elementor-widget-text-editor,
  body.home #beheshti-venn .elementor-widget-text-editor p {
    font-size: 20px !important;
    font-weight: 300 !important;
    color: #ffffff !important;
    line-height: normal !important;
  }

  body.home #beheshti-venn .beheshti-venn-list__title,
  body.home #beheshti-venn .beheshti-venn-list__title strong {
    font-size: 20px !important;
    font-weight: 400 !important;
    line-height: 18px !important;
    color: #ffffff !important;
  }

  body.home #beheshti-venn .beheshti-venn-list__description {
    font-size: 18px !important;
    font-weight: 300 !important;
    line-height: 18px !important;
    color: #ffffff !important;
  }

  body.home #beheshti-venn .beheshti-venn-list__description::before,
  body.home #beheshti-venn .beheshti-venn-list__description::after {
    content: none !important;
  }

  body.home #beheshti-venn.e-con.beheshti-snap-section,
  body.home #beheshti-venn {
    overflow: visible !important;
    padding: var(--beheshti-bar-gap) 100px 60px 100px !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-intro .elementor-element-intro_copy_con {
    align-items: flex-start !important;
    gap: 16px !important;
    position: relative !important;
    z-index: 3 !important;
  }

  body.home #beheshti-intro .elementor-element-intro_copy_con h3.elementor-heading-title {
    font-size: 26px !important;
    font-weight: 400 !important;
    color: #ffffff !important;
  }

  body.home #beheshti-intro .elementor-element-intro_media_con {
    position: relative !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
  }

  body.home #beheshti-intro .beheshti-intro-media > .elementor-element-intro_img.elementor-widget-image {
    flex: 0 0 calc(100% - 304px) !important;
    height: calc(100% - 304px) !important;
    min-height: 0 !important;
    max-height: calc(100% - 304px) !important;
    overflow: hidden !important;
    width: 100% !important;
    align-self: flex-start !important;
  }

  body.home #beheshti-intro .elementor-element-intro_img .elementor-widget-container,
  body.home #beheshti-intro .elementor-element-intro_img img {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    /* The PNG already carries Figma's transparent edge. A 120px radius was
       cutting that corner a second time, and top alignment floated the curve
       above the next band. */
    object-fit: contain !important;
    object-position: left bottom !important;
    border-radius: 0 !important;
  }

  body.home #beheshti-intro .elementor-element-intro_media_con h3.elementor-heading-title {
    font-size: 26px !important;
    font-weight: 400 !important;
    color: #ffffff !important;
    line-height: normal !important;
    margin-top: 40px !important;
    padding-left: 24px !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-intro .beheshti-intro-desc {
    font-size: 18px !important;
    font-weight: 300 !important;
    color: #ffffff !important;
    line-height: normal !important;
    padding-left: 24px !important;
    box-sizing: border-box !important;
  }

  /* The intro peek strip and the stats photo are two windows onto ONE photo
     (Figma): same image box, stats window shifted up by the peek height,
     one continuous slanted right edge. */
  body.home {
    --beheshti-span-peek: 304px;
    --beheshti-span-w: 50vw;
    --beheshti-span-h: calc(var(--beheshti-span-peek) + 100vh);
    --beheshti-span-img-w: calc(var(--beheshti-span-h) * 1.5);
    --beheshti-span-img-x: calc(var(--beheshti-span-w) / 2 - var(--beheshti-span-img-w) * 0.42);
    --beheshti-span-slant: 0.13;
  }

  body.home #beheshti-intro .beheshti-intro-peek {
    position: absolute;
    left: 0;
    bottom: 0;
    width: var(--beheshti-span-w);
    height: var(--beheshti-span-peek);
    overflow: hidden;
    z-index: 2;
    clip-path: polygon(
      0 0,
      100% 0,
      calc(100% - var(--beheshti-span-peek) * var(--beheshti-span-slant)) 100%,
      0 100%
    );
  }

  body.home #beheshti-intro .beheshti-intro-peek img {
    position: absolute !important;
    top: 0 !important;
    left: var(--beheshti-span-img-x) !important;
    width: var(--beheshti-span-img-w) !important;
    max-width: none !important;
    height: var(--beheshti-span-h) !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: cover !important;
    clip-path: none !important;
  }

  body.home #beheshti-stats .beheshti-stats-media {
    position: relative !important;
    flex: 0 0 calc(var(--beheshti-span-w) - var(--beheshti-span-peek) * var(--beheshti-span-slant)) !important;
    width: calc(var(--beheshti-span-w) - var(--beheshti-span-peek) * var(--beheshti-span-slant)) !important;
    clip-path: polygon(
      0 0,
      100% 0,
      calc(100% - 100vh * var(--beheshti-span-slant)) 100%,
      0 100%
    );
  }

  body.home #beheshti-stats .beheshti-stats-copy {
    flex: 1 1 auto !important;
    width: auto !important;
  }

  body.home #beheshti-stats .beheshti-stats-media > .elementor-element-stats_img.elementor-widget-image {
    position: absolute !important;
    inset: 0 !important;
    overflow: hidden !important;
  }

  body.home #beheshti-stats .beheshti-stats-media .elementor-element-stats_img img {
    position: absolute !important;
    top: calc(var(--beheshti-span-peek) * -1) !important;
    left: var(--beheshti-span-img-x) !important;
    width: var(--beheshti-span-img-w) !important;
    max-width: none !important;
    height: var(--beheshti-span-h) !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: cover !important;
    clip-path: none !important;
  }

  body.home #beheshti-challenge h2.elementor-heading-title {
    font-size: 74px !important;
    font-weight: 200 !important;
    color: #ffffff !important;
    line-height: 1.2 !important;
  }

  body.home #beheshti-challenge .beheshti-challenge-text,
  body.home #beheshti-challenge .beheshti-challenge-item p {
    font-family: Aria, sans-serif !important;
    font-size: 26px !important;
    font-weight: 400 !important;
    line-height: normal !important;
    color: #ffffff !important;
  }

  body.home #beheshti-challenge .beheshti-challenge-list {
    max-width: 1006px !important;
    width: 1006px !important;
    gap: 40px !important;
    /* Figma list x=234 in 1240 → 234px empty on the left. */
    margin: 0 0 0 auto !important;
    padding: 0 !important;
  }

  body.home #beheshti-challenge .elementor-element-challenge_items_con,
  body.home #beheshti-challenge .elementor-element-challenge_items_con .elementor-widget-wrap,
  body.home #beheshti-challenge .elementor-element-challenge_items_con .elementor-widget-text-editor,
  body.home #beheshti-challenge .elementor-element-challenge_items_con .elementor-widget-container {
    padding: 0 !important;
    --padding-top: 0 !important;
    --padding-bottom: 0 !important;
    --padding-left: 0 !important;
    --padding-right: 0 !important;
    margin-top: 0 !important;
  }

  body.home #beheshti-insights .beheshti-archive-card__title,
  body.home #beheshti-insights .beheshti-archive-card__title a {
    font-weight: 300 !important;
    font-size: 18px !important;
  }

  body.home #beheshti-insights .beheshti-home-posts .elementor-post__title a {
    font-weight: 300 !important;
    font-size: 18px !important;
  }

  body.home #beheshti-insights {
    padding: var(--beheshti-bar-gap) 100px 60px 100px !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-challenge {
    /* 60px under progress bar (52px). */
    justify-content: flex-start !important;
    --justify-content: flex-start !important;
    align-items: stretch !important;
    --align-items: stretch !important;
    /* Figma Frame 10 padding-top 120px (52px progress bar + 68px section inset). */
    --padding-top: calc(52px + 68px) !important;
    padding-top: calc(52px + 68px) !important;
    padding-bottom: 60px !important;
    padding-left: 100px !important;
    padding-right: 100px !important;
    gap: 0 !important;
    --gap: 0px !important;
    --row-gap: 0px !important;
    box-sizing: border-box !important;
  }

  body.home #beheshti-challenge > .e-con-inner,
  body.home #beheshti-challenge > .elementor-container {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  /* Figma: title 74 ExtraLight; list full-width above CTA (not side-by-side). */
  body.home #beheshti-challenge .elementor-element-challenge_header_con h2.elementor-heading-title,
  body.home #beheshti-challenge h2.elementor-heading-title {
    font-size: 74px !important;
    font-weight: 200 !important;
    line-height: 1.2 !important;
    color: #ffffff !important;
  }

  body.home #beheshti-challenge .elementor-element-challenge_body_con {
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 60px !important;
  }

  body.home #beheshti-challenge .elementor-element-challenge_items_con {
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 1006px !important;
    margin-left: auto !important;
    margin-right: 0 !important;
  }

  body.home #beheshti-challenge .elementor-element-challenge_action_con {
    flex: 0 0 auto !important;
    width: 100% !important;
    /* Figma CTA at x=0 → visual left; in RTL column, flex-end = left. */
    align-items: flex-end !important;
    justify-content: flex-end !important;
  }

  body.home #beheshti-challenge .beheshti-challenge-decor {
    display: none !important;
  }

  body.home #beheshti-challenge .elementor-element-challenge_header_con {
    margin: 0 0 163px !important;
    padding: 0 !important;
    --padding-top: 0 !important;
    --padding-bottom: 0 !important;
  }

  body.home #beheshti-challenge .elementor-element-challenge_header_con .elementor-widget-heading,
  body.home #beheshti-challenge .elementor-element-challenge_title {
    margin: 0 !important;
    --margin-top: 0 !important;
    --margin-bottom: 0 !important;
    padding: 0 !important;
  }

  body.home #beheshti-challenge .elementor-element-challenge_header_con h2.elementor-heading-title {
    margin: 0 !important;
  }

  body.home #beheshti-stats .beheshti-stat__title {
    font-size: 32px !important;
    font-weight: 300 !important;
    white-space: nowrap !important;
  }

  body.home #beheshti-stats .beheshti-stat--row,
  body.home #beheshti-stats .elementor-element-stat_item_1,
  body.home #beheshti-stats .elementor-element-stat_item_2,
  body.home #beheshti-stats .elementor-element-stat_item_3 {
    white-space: nowrap !important;
  }

  body.home #beheshti-stats .beheshti-stat--row .beheshti-stat__title,
  body.home #beheshti-stats .beheshti-stat--row p {
    white-space: nowrap !important;
  }

  body.home #beheshti-insights .beheshti-archive-card__more,
  body.home #beheshti-insights .beheshti-archive-card__date,
  body.home #beheshti-insights .beheshti-archive-card__cats,
  body.home #beheshti-insights .beheshti-archive-card__cats a {
    color: var(--e-global-color-accent, #99f1ff) !important;
  }
}



/* Text that fell through to Elementor's default Roboto (found by a computed-font scan at 393 / 744 / 1440): FAQ items,
   the hero slogan on phones/tablets and the lab hero copy variants. */
html:not(#ff) body #beheshti-faq .beheshti-faq__item,
html:not(#ff) body #beheshti-faq .beheshti-faq__item *,
html:not(#ff) body #beheshti-hero h2.elementor-heading-title,
html:not(#ff) body .beheshti-lab-hero .elementor-element-2227884 p,
html:not(#ff) body .beheshti-lab-hero .bh-lab-copy {
  font-family: Aria, sans-serif !important;
}

/* Lab blocks: desktop keeps the second paragraph left-aligned (was an inline style, see beheshti-inner-responsive.php). */
@media (min-width: 1025px) {
  html:not(#ff) body .beheshti-lab-blocks__item--bottom p.bh-lab-p-left { text-align: left !important; }
}

/* Footer copyright: Aria is the Farsi-numeral cut and draws "2026" in Persian digits; the line is English, so its
   digits come from a system Latin face (same sources ltr-fixes.css uses for the English pages). */
@font-face { font-family: "Bh Latin Digits"; font-weight: 100 900; unicode-range: U+0030-0039; src: local("HelveticaNeue"), local("Helvetica Neue"), local("SegoeUI"), local("Segoe UI"), local("Roboto-Regular"), local("Roboto"), local("Arial"); }
html:not(#ff) body .elementor-location-footer .beheshti-footer__copy { font-family: "Bh Latin Digits", Aria, sans-serif !important; }
