/* AlphaCode shared layout: logical geometry; original theme owns visual identity. */
body.ac-bidi .ac-header-bar {
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: clamp(20px, 2vw, 40px);
}
body.ac-bidi .ac-header-logo {
  flex: 0 0 clamp(140px, 12vw, 190px);
  width: auto;
  min-width: 0;
}
body.ac-bidi .ac-header-logo .elementor-widget-site-logo { width: 100%; }
body.ac-bidi .ac-header-logo img { width: 100%; height: auto; }
body.ac-bidi .ac-header-nav { flex: 1 1 auto; width: auto; min-width: 0; }
body.ac-bidi .ac-header-actions {
  flex: 0 0 auto;
  width: auto;
  flex-direction: row;
  align-items: center;
  justify-content: flex-end;
  gap: 16px;
}
body.ac-bidi .ac-header-nav nav > ul.hfe-nav-menu {
  display: flex;
  flex-wrap: nowrap;
  justify-content: center;
  gap: clamp(18px, 1.4vw, 28px);
}
body.ac-bidi .ac-header-nav.elementor-element .elementor-widget-navigation-menu .hfe-nav-menu > li.menu-item {
  margin: 0;
  padding: 0;
  flex: 0 0 auto;
}
body.ac-bidi .ac-header-nav.elementor-element .elementor-widget-navigation-menu .hfe-nav-menu > li.menu-item > a.hfe-menu-item,
body.ac-bidi .ac-header-nav.elementor-element .elementor-widget-navigation-menu .hfe-nav-menu > li.menu-item > .hfe-has-submenu-container > a.hfe-menu-item {
  font-size: clamp(18px, 1.1vw, 20px);
  font-weight: 600;
  line-height: 1.5;
  white-space: nowrap;
}
/* Give the selected page and primary contact action a clearer visual emphasis. */
body.ac-bidi .ac-header-nav.elementor-element .elementor-widget-navigation-menu .hfe-nav-menu > li.current-menu-item > a.hfe-menu-item {
  font-weight: 800;
}
body.ac-bidi .ac-header-actions.elementor-element .elementor-widget-rs-button .rs-btn,
body.ac-bidi .ac-header-actions.elementor-element .elementor-widget-rs-button .rs-btn > span {
  font-weight: 700;
}
body.ac-bidi .ac-header-nav .hfe-nav-menu li:not(.ac-submenu-dismissed):focus-within > .sub-menu {
  visibility: visible;
  opacity: 1;
  height: auto;
  transform: scaleY(1);
}
body.ac-bidi .ac-header-nav .hfe-nav-menu li.ac-submenu-dismissed > .sub-menu {
  visibility: hidden;
  opacity: 0;
  height: 0;
  transform: scaleY(0);
}
body.ac-bidi .ac-header-top .address-item { gap: 8px; }
/* Contact values read left-to-right, with their native icons on the left. */
body.ac-bidi .ac-header-top .ac-header-contact .address-item {
  direction: ltr;
  flex-direction: row;
}
/* Match the font icon's box and baseline to the neighboring 16px SVG icons. */
body.ac-bidi .ac-header-social .social-icon-warap .ri-instagram-line {
  display: inline-block;
  width: 1em;
  height: 1em;
  line-height: 1;
  vertical-align: middle;
}
body.ac-bidi .ac-hero-badge.elementor-element .prelements-heading .title-inner .sub-text {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  max-width: 100%;
  vertical-align: middle;
  font-weight: 700;
}
/* Override the legacy !important heading weight only for this highlighted title. */
body.ac-bidi .ac-hero-badge.elementor-element .prelements-heading .title-inner h1.title { font-weight: 800 !important; }
body.ac-bidi .ac-hero-badge.elementor-element .prelements-heading .title-inner .sub-text > :is(svg, i, img) { flex: 0 0 auto; margin: 0; }
/* Keep the hero copy on deep navy, with restrained light behind the side artwork. */
body.ac-bidi .ac-home-hero.elementor-element.e-con {
  background-color: #080d2b;
  background-image:
    radial-gradient(ellipse at 14% 24%, rgba(83, 245, 255, .14), transparent 48%),
    radial-gradient(ellipse at 87% 28%, rgba(197, 255, 231, .08), transparent 42%),
    linear-gradient(115deg, #0d2438 0%, #0b1630 36%, #080b27 72%, #07022a 100%);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
body.ac-bidi .ac-home-hero .ac-hero-orbit .rs-button-rotating a {
  background: rgba(83, 245, 255, .6);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgba(197, 255, 231, .06), 0 12px 32px rgba(0, 0, 0, .18);
  transition: background-color .2s ease, box-shadow .2s ease;
}
body.ac-bidi .ac-home-hero .ac-hero-orbit .rs-button-rotating.overlay-yes a::before {
  inset: 1px;
  width: auto;
  height: auto;
  border-radius: inherit;
  background: linear-gradient(145deg, rgba(16, 39, 57, .96), rgba(8, 13, 37, .98));
}
body.ac-bidi .ac-home-hero .ac-hero-orbit .rs-button-rotating a .rs-lettering-text :is(span, svg text) {
  color: #f0fff8;
  font-weight: 800;
}
body.ac-bidi .ac-home-hero .ac-hero-orbit .rs-button-rotating a .button-logo {
  background: #53f5ff;
  box-shadow: 0 0 0 6px rgba(83, 245, 255, .07);
}
body.ac-bidi .ac-home-hero .ac-hero-orbit .rs-button-rotating a .button-logo svg path { fill: #07022a; }
body.ac-bidi .ac-home-hero .ac-hero-orbit .rs-button-rotating a:is(:hover, :focus-visible) {
  background-color: #53f5ff;
  box-shadow: 0 0 0 4px rgba(83, 245, 255, .1), 0 14px 36px rgba(0, 0, 0, .22);
}
body.ac-bidi .ac-home-hero .ac-hero-orbit .rs-button-rotating a:focus-visible {
  outline: 2px solid #c5ffe7;
  outline-offset: 6px;
}
body.ac-bidi .ac-home-hero .ac-hero-label {
  background-color: rgba(7, 13, 37, .72);
  box-shadow: 0 4px 18px rgba(0, 0, 0, .12);
}
/* Use the original rounded PNG decorations at their intended proportions. */
body.ac-bidi .ac-about-shape.elementor-element.elementor-widget {
  width: 267px;
  max-width: 65%;
  inset-inline-start: 0;
  inset-inline-end: auto;
}
body.ac-bidi .ac-about-shape.elementor-element.elementor-widget .rs-image img { width: 100%; height: auto; }
body.ac-bidi .ac-case-shape.elementor-element.elementor-widget .rs-image img { width: 226px; max-width: 100%; height: auto; }
/* Match the template's button spacing in either reading direction and across wrapped rows. */
body.ac-bidi .ac-case-tabs.elementor-element :is(.tab-menu-wrapper, .accordion-menu-wrapper) .nav-tabs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
}
body.ac-bidi .ac-case-tabs.elementor-element :is(.tab-menu-wrapper, .accordion-menu-wrapper) .nav-tabs .nav-link {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  margin: 0;
  padding: 20px;
  max-width: 100%;
  text-align: start;
}
body.ac-bidi .ac-case-tabs.elementor-element :is(.tab-menu-wrapper, .accordion-menu-wrapper) .nav-tabs .nav-link .nav-btn-icon {
  flex: 0 0 auto;
  margin: 0;
}
/* Give each case-study panel equal reading-side gutters and flexible feature labels. */
body.ac-bidi .ac-case-tabs .ac-case-panel.elementor-element.e-con { padding-inline: clamp(20px, 2.1vw, 40px); }
body.ac-bidi .ac-case-tabs .ac-case-copy.elementor-element.e-con {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px 20px;
  min-width: 0;
}
body.ac-bidi .ac-case-tabs .ac-case-copy > .elementor-widget-rs-heading { grid-column: 1 / -1; width: 100%; }
body.ac-bidi .ac-case-tabs .ac-case-copy > .elementor-widget-rs-iconbox { width: 100%; min-width: 0; align-self: center; }
body.ac-bidi .ac-case-tabs .ac-case-copy .rs-iconbox-area .box-inner { align-items: center; }
body.ac-bidi .ac-case-tabs .ac-case-copy .rs-iconbox-area .icon-area { flex-shrink: 0; }
body.ac-bidi .ac-case-tabs .ac-case-copy .rs-iconbox-area .text-area { flex: 1 1 auto; min-width: 0; }
@media (max-width: 767px) {
  body.ac-bidi .ac-case-tabs .ac-case-copy.elementor-element.e-con { grid-template-columns: minmax(0, 1fr); }
}
/* The contact card icon occupies reading-start; its divider occupies reading-end. */
body.ac-bidi .ac-contact-card.elementor-element .elementor-widget-rs-divider { width: 100%; }
body.ac-bidi .ac-contact-card.elementor-element .elementor-widget-rs-divider > .elementor-widget-container { margin-inline-start: auto; margin-inline-end: 0; }
body.ac-bidi .ac-contact-card.elementor-element .elementor-widget-rs-divider .rs-divider { margin-inline-start: auto; margin-inline-end: 0; }
body.ac-bidi .ac-contact-card.elementor-element .elementor-widget-rs-divider .rs-divider::after { left: auto; right: auto; inset-inline-end: 0; }
body.ac-bidi .elementor-widget-rs-contact-box a[href*="wa.me/"] {
  direction: ltr;
  unicode-bidi: isolate;
}
body.ac-bidi :is(a[href^="mailto:"], a[href^="tel:"], .ac-ltr-value) {
  direction: ltr;
  unicode-bidi: isolate;
}
body.ac-bidi :is(input[type="email"], input[type="url"], input[type="tel"]) {
  direction: ltr;
  text-align: start;
  unicode-bidi: isolate;
}
body.ac-bidi .right_menu_togle {
  max-width: min(400px, 100vw);
  overflow-y: auto;
  overscroll-behavior: contain;
}
body.ac-bidi .right_menu_togle[aria-hidden="true"] { visibility: hidden; }
body.ac-bidi .right_menu_togle[aria-hidden="false"] { visibility: visible; }
body.ac-bidi .right_menu_togle .rsoffwrap-close { cursor: pointer; }
body.ac-bidi #mobile_menu_rstheme .submenu-button {
  inset-inline-end: 0;
  inset-inline-start: auto;
}
body.ac-bidi .right_menu_togle .hfe-has-submenu-container { padding-inline-end: 44px; }
body.ac-bidi .right_menu_togle .hfe-menu-toggle { display: none; }
body.ac-bidi .ac-inner-hero-art { position: relative; min-width: 0; }
body.ac-bidi .ac-hero-art-shell.e-con { width: 100%; max-width: 1230px; position: relative; }
body.ac-bidi .ac-hero-art-row.e-con { width: 100%; max-width: 100%; justify-content: center; align-items: stretch; }
body.ac-bidi .ac-hero-core.e-con {
  position: relative;
  isolation: isolate;
  flex: 0 1 45.2%;
  width: 45.2%;
  min-width: 0;
  aspect-ratio: auto;
  align-self: stretch;
  gap: 0;
}
body.ac-bidi .ac-hero-core.e-con::before { content: none; }
body.ac-bidi .ac-hero-side { flex: 0 1 27.4%; min-width: 0; align-self: stretch; }
body.ac-bidi .ac-hero-side.elementor-element .rs-image,
body.ac-bidi .ac-hero-side.elementor-element .rs-image img { width: 100%; height: auto; }
body.ac-bidi .ac-hero-side img { filter: url("#ac-hero-cyan-panels"); }
body.ac-bidi .ac-hero-arch { margin: 0; }
body.ac-bidi .ac-hero-arch.elementor-widget > .elementor-widget-container { margin: 0; padding: 0; }
body.ac-bidi .ac-hero-arch img,
body.ac-bidi .ac-hero-portrait img { width: 100%; height: auto; }
body.ac-bidi .ac-hero-core.e-con :is(.ac-hero-portrait, .ac-hero-backdrop).elementor-widget {
  width: 100%;
  left: 0;
  right: auto;
}
/* Align the visible cutout, accounting for the CEO PNG's 132/165px transparent margins. */
body.ac-bidi .ac-hero-core.e-con .ac-hero-portrait.elementor-widget {
  top: -14px;
  left: 50%;
  width: 94.5%;
  max-width: none;
}
/* Preserve the reference's 462:556 glow-to-curve ratio at every width. */
body.ac-bidi .ac-hero-core.e-con .ac-hero-backdrop.elementor-widget {
  top: -25px;
  inset-inline: 0;
  margin-inline: auto;
  width: 83.1%;
  max-width: 100%;
  z-index: 1;
  pointer-events: none;
}
body.ac-bidi .ac-hero-core.e-con .ac-hero-portrait.elementor-widget > .elementor-widget-container {
  transform: translateX(-51.85%) !important;
}
body.ac-bidi .ac-hero-core.e-con .ac-hero-backdrop.elementor-widget > .elementor-widget-container {
  transform: none !important;
}
body.ac-bidi .ac-hero-backdrop.elementor-element :is(.rs-image, .prallax-parent) { width: 100%; max-width: 100%; }
body.ac-bidi .ac-hero-portrait.elementor-element .rs-image,
body.ac-bidi .ac-hero-portrait.elementor-element .rs-image img { width: 100%; max-width: 100%; }
/* The native PNG supplies the entire localized fade; no light field behind the stage. */
body.ac-bidi .ac-hero-backdrop img {
  width: 100%;
  height: auto;
  display: block;
  margin-inline: auto;
  filter: url("#ac-hero-cyan-glow");
  /* Widen the fade around its center while retaining the native parallax transform. */
  scale: 1.2;
}
body.ac-bidi .ac-hero-arch.elementor-widget { position: relative; z-index: 0; pointer-events: none; }
/* Reuse the original line image as an alpha mask, preserving every curve and its responsive proportions. */
body.ac-bidi .ac-hero-arch .rs-image {
  background: linear-gradient(180deg, rgba(38, 198, 218, .52), rgba(38, 198, 218, .32) 55%, rgba(38, 198, 218, .12));
  -webkit-mask: url("https://alpha-code.net/wp-content/uploads/2025/01/banner-line-pattern.png") center / 100% 100% no-repeat;
  mask: url("https://alpha-code.net/wp-content/uploads/2025/01/banner-line-pattern.png") center / 100% 100% no-repeat;
}
body.ac-bidi .ac-hero-arch img { opacity: 0; }
body.ac-bidi .ac-hero-core.e-con .ac-hero-portrait.elementor-widget { z-index: 2; }
/* The supplied portrait already includes its lighting; retain its colors and silhouette. */
body.ac-bidi .ac-hero-portrait img {
  translate: 0 -13.1265%;
  filter: drop-shadow(0 12px 20px rgba(2, 8, 26, .24));
}
@media (max-width: 767px) {
  body.ac-bidi .ac-hero-core.e-con .ac-hero-portrait.elementor-widget { top: -6px; }
  body.ac-bidi .ac-hero-core.e-con .ac-hero-backdrop.elementor-widget { top: -16px; }
  /* Cover the source hero's 80px bottom gutter so the cutout meets the next panel. */
  body.ac-bidi .ac-hero-feature-row.elementor-element.e-con { margin-block-start: -80px; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  body.ac-bidi .ac-hero-feature-row.elementor-element.e-con { margin-block-start: -170px; }
}
body.ac-bidi .ac-hero-feature-row.elementor-element.e-con {
  max-width: min(1520px, 100%);
  direction: inherit;
  display: grid;
  grid-template-columns: minmax(0, 335px) minmax(0, 1fr) minmax(0, 335px);
  gap: clamp(16px, 1.5vw, 30px);
}
body.ac-bidi .ac-hero-feature-row > .e-con { width: auto; min-width: 0; }
/* Keep the question column stable while switching answers. */
body.ac-bidi .elementor-element.elementor-widget-rs-accordions-custom {
  width: 100%;
  min-width: 0;
  align-self: stretch;
}
body.ac-bidi .rs-accordion-area .accordion-button {
  text-align: start;
  padding-inline-end: 2em;
}
body.ac-bidi .rs-accordion-area .accordion-button:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
/* Equal-length decorative lines follow their label with the template's fixed gap. */
body.ac-bidi .ac-faq-categories.elementor-element .tab-menu-wrapper .nav-tabs .nav-link .nav-btn-icon {
  flex: 0 0 min(40%, 245px);
  width: min(40%, 245px);
  margin: 0;
  margin-inline-start: 30px;
}
body.ac-bidi .ac-faq-categories .tab-menu-wrapper .nav-btn-icon svg {
  width: 100%;
  max-width: 235px;
}
@media (min-width: 768px) {
  body.ac-bidi .ac-faq-categories .rstab-main.vertical > .tab-menu-wrapper {
    flex: 0 0 50%;
    min-width: 0;
  }
  body.ac-bidi .ac-faq-categories .rstab-main.vertical > .tab-content {
    flex: 1 1 50%;
    min-width: 0;
  }
}
/* Use reading order for the thumbnail and retain the vendor's responsive width. */
body.ac-bidi .bs-sidebar .recent-post-widget .show-featured {
  display: flex;
  align-items: flex-start;
}
body.ac-bidi .bs-sidebar .recent-post-widget .show-featured .post-img {
  float: none;
  flex: 0 0 auto;
  padding-inline-start: 0;
  padding-inline-end: 15px;
}
body.ac-bidi .bs-sidebar .recent-post-widget .show-featured .post-item {
  flex: 1 1 auto;
  min-width: 0;
}
body.ac-bidi .bs-sidebar .recent-post-widget .date-post em {
  display: inline-block;
  max-width: 100%;
  direction: ltr;
  unicode-bidi: isolate;
  overflow-wrap: anywhere;
}
body.ac-bidi :is(.bs-sidebar, .rs-blog) .ac-english-copy { unicode-bidi: isolate; }
body.ac-bidi .ac-english-copy[dir="ltr"] .prelements-heading :is(.title, .description, .desc-text) {
  direction: ltr;
  text-align: start;
  unicode-bidi: isolate;
}
body.ac-bidi .testi-card-bottom.ac-english-copy :is(.description, .name, .testi-designation) {
  direction: ltr;
  text-align: start;
  unicode-bidi: isolate;
}
/* Preserve the original style-2 portrait/rating separation in either direction. */
body.ac-bidi .elementor-element.elementor-widget-rs-testimonial-slider .rs-testimonial-slider.style2 {
  --ac-avatar-offset: -32px;
  --ac-rating-inset: 40px;
}
body.ac-bidi .elementor-element.elementor-widget-rs-testimonial-slider .rs-testimonial-slider.style2 .testimonial-inner .vendor-img {
  margin-inline-start: var(--ac-avatar-offset);
  margin-inline-end: 0;
}
body.ac-bidi .elementor-element.elementor-widget-rs-testimonial-slider .rs-testimonial-slider.style2 .testimonial-inner .vendor-img img {
  border-start-start-radius: 16px;
  border-start-end-radius: 0;
  border-end-start-radius: 0;
  border-end-end-radius: 300px;
}
body.ac-bidi .elementor-element.elementor-widget-rs-testimonial-slider .rs-testimonial-slider.style2 .testimonial-inner .ratings {
  left: auto;
  right: auto;
  inset-inline-end: var(--ac-rating-inset);
}
@media (max-width: 1366px) {
  body.ac-bidi .elementor-element.elementor-widget-rs-testimonial-slider .rs-testimonial-slider.style2 { --ac-avatar-offset: -22px; }
}
@media (max-width: 767px) {
  body.ac-bidi .elementor-element.elementor-widget-rs-testimonial-slider .rs-testimonial-slider.style2 { --ac-rating-inset: 10px; }
}
body.ac-bidi .ac-story-layout {
  --ac-story-gutter: 5rem;
  --ac-story-marker-size: 4rem;
}
body.ac-bidi .ac-story-layout > .e-con-inner {
  display: grid;
  grid-template-columns: minmax(0, 0.76fr) minmax(0, 1.24fr);
  gap: var(--ac-story-gutter);
  align-items: start;
}
body.ac-bidi .ac-story-copy.e-con { width: auto; height: auto; padding: 0; align-self: start; gap: 1.5rem; }
body.ac-bidi .ac-story-copy .ac-story-intro {
  width: 100%;
  height: auto;
  padding: 0;
  flex: 0 0 auto;
  background-image: none;
}
body.ac-bidi .ac-story-copy .ac-story-intro.elementor-element .prelements-heading .description {
  padding-inline-start: 0;
  padding-inline-end: clamp(0px, 4.2vw, 80px);
}
body.ac-bidi .ac-story-copy .ac-story-intro > .elementor-widget-container {
  padding-block-end: 0;
  background-image: none;
}
body.ac-bidi .ac-story-copy .ac-story-cta.e-con { position: static; inset: auto; width: 100%; }
body.ac-bidi .ac-story-stack.e-con { width: auto; padding: 0; position: relative; }
body.ac-bidi .ac-story-stack::before {
  content: "";
  position: absolute;
  inset-block: 0;
  inset-inline-start: calc(-0.5 * var(--ac-story-gutter) - 8px);
  width: 16px;
  pointer-events: none;
  background: url("https://alpha-code.net/wp-content/uploads/2026/08/W-19-px-H-1001-px-scaled.png") center / 100% 100% no-repeat;
}
body.ac-bidi .ac-story-stack .ac-story-marker.elementor-absolute {
  inset-inline-start: calc(-0.5 * (var(--ac-story-gutter) + var(--ac-story-marker-size)));
  inset-inline-end: auto;
  inset-block-start: 50%;
  width: var(--ac-story-marker-size);
  transform: translateY(-50%);
  direction: inherit;
}
body.ac-bidi .ac-story-marker.elementor-element .prelements-heading .title-inner .sub-text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  direction: ltr;
  unicode-bidi: isolate;
  width: var(--ac-story-marker-size);
  height: var(--ac-story-marker-size);
  line-height: 1;
}
/* Vendor navigation sits beside the following CTA; keep it at the reading-end edge. */
body.ac-bidi .ac-carousel-actions.e-con,
body.ac-bidi .ac-carousel-actions.e-con > .e-con-inner { direction: inherit; }
body.ac-bidi .elementor-element.elementor-widget:is(.elementor-widget-rs-service-slider, .elementor-widget-rsteam-slider, .elementor-widget-rs-testimonial-slider) {
  direction: inherit;
}
body.ac-bidi .elementor-element.elementor-widget:is(.elementor-widget-rs-service-slider, .elementor-widget-rsteam-slider, .elementor-widget-rs-testimonial-slider) .rsaddon-unique-slider .swiper-btn-wrapper {
  left: auto;
  right: auto;
  inset-inline-end: 0;
}
@media (max-width: 1024px) {
  body.ac-bidi .ac-story-layout { --ac-story-marker-size: 3rem; }
  body.ac-bidi .ac-story-layout > .e-con-inner { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  body.ac-bidi .ac-story-stack.e-con { padding-inline-start: var(--ac-story-marker-size); }
  body.ac-bidi .ac-story-stack::before { inset-inline-start: calc(0.5 * var(--ac-story-marker-size) - 8px); }
  body.ac-bidi .ac-story-stack .ac-story-marker.elementor-absolute { inset-inline-start: calc(-1 * var(--ac-story-marker-size)); }
}
@media (max-width: 1200px) {
  /* Elementor's device visibility uses !important; this is the shared menu threshold. */
  body.ac-bidi .ac-header-nav { display: none !important; }
  body.ac-bidi .ac-header-actions .elementor-widget-rsoffcanvas { display: block !important; }
  body.ac-bidi .ac-header-actions { margin-inline-start: auto; }
  /* Keep the native drawer's inner nav visible across the same shared breakpoint. */
  body.ac-bidi .right_menu_togle > .nav.navbar { display: block; }
}
@media (max-width: 767px) {
  /* A narrow screen cannot fit the CTA and both controls on the same line. */
  body.ac-bidi .elementor-element.elementor-widget:is(.elementor-widget-rs-service-slider, .elementor-widget-rsteam-slider, .elementor-widget-rs-testimonial-slider) .rsaddon-unique-slider .swiper-btn-wrapper {
    position: static;
    inset: auto;
    margin-block-start: 1rem;
    margin-inline-start: auto;
  }
  body.ac-bidi .ac-header-logo { flex-basis: clamp(140px, 42vw, 190px); }
  body.ac-bidi .ac-header-actions { flex: 0 0 auto; }
  body.ac-bidi .ac-hero-core.e-con { flex-basis: 100%; width: 100%; max-width: 556px; }
  body.ac-bidi .ac-hero-feature-row.elementor-element.e-con { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 1024px) {
  body.ac-bidi .ac-hero-side > .elementor-widget-container { --e-transform-translateX: 0px; }
  body.ac-bidi .ac-hero-feature-row.e-con { margin-block-start: 0; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.ac-bidi .ac-hero-feature-row > .e-con { margin-block-start: 0; }
  body.ac-bidi .ac-hero-copy { grid-column: 1 / -1; grid-row: 1; }
}
@media (min-width: 768px) and (max-width: 1024px) {
  body.ac-bidi .ac-hero-feature-row.elementor-element.e-con { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (min-width: 1025px) {
  /* Reserve flow space beneath the portrait while the flanking cards overlap the art. */
  body.ac-bidi .ac-hero-feature-row .ac-hero-copy { padding-block-start: 5rem; }
}

/* Mirror the authored inner banner gutter, rather than squeezing the copy at the border. */
body.ac-bidi .ac-inner-hero-shell.elementor-element.e-con {
  padding-inline-start: 80px;
  padding-inline-end: 0;
}
body.ac-bidi .ac-inner-hero-shell > .e-con:not(.ac-inner-hero-art) { min-width: 0; text-align: start; }
body.ac-bidi .ac-inner-hero-shell > .e-con:not(.ac-inner-hero-art) .prelements-heading .title { overflow-wrap: break-word; }
body.ac-bidi .elementor-widget-rs-accordions-custom.elementor-element .rs-accordion-area .accordion-body {
  padding-inline-start: 0;
  padding-inline-end: 100px;
  text-align: start;
}
/* Keep each process mark attached to its step pill in reading order. */
body.ac-bidi .elementor-widget-rs-service-grid .rs-addon-services.style7 .services-inner .numbering {
  left: auto;
  right: auto;
  inset-inline-start: 84px;
  border-radius: 0;
  border-start-end-radius: 30px;
  border-end-end-radius: 30px;
}
body.ac-bidi .rs-addon-services.style7 .media_wrap { text-align: start; }
/* Article badges belong at reading-start; vertical news badges reserve the same content gutter. */
body.ac-bidi:is(.blog, .archive) .rs-blog .blog-item .blog-img .blog-meta {
  left: auto;
  right: auto;
  inset-inline-start: 27px;
}
body.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .pre-image-wrap .rs-cate {
  left: auto;
  right: auto;
  inset-inline-start: -17px;
}
body.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .blog-inner-wrap .pre-blog-content {
  padding-inline-start: 85px;
  padding-inline-end: 20px;
}
body.ac-bidi .rs_latest_blog_slider .pre-post-title.ac-english-copy { text-align: start; unicode-bidi: isolate; }
/* Footer logo and field follow the surrounding page direction. */
body.ac-bidi #colophon .elementor-widget-site-logo .hfe-site-logo-container { text-align: start; }
body.ac-bidi #colophon .elementor-widget-site-logo .hfe-site-logo { text-align: start; }
body.ac-bidi #colophon .wpcf7[data-wpcf7-id="651"] .wpcf7-submit { text-align: center; }
@media (max-width: 1366px) {
  body.ac-bidi .ac-inner-hero-shell.elementor-element.e-con { padding-inline: 30px; }
  body.ac-bidi .elementor-widget-rs-accordions-custom.elementor-element .rs-accordion-area .accordion-body { padding-inline-end: 30px; }
  body.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .blog-inner-wrap .pre-blog-content { padding-inline-start: 70px; }
}
@media (max-width: 1024px) {
  body.ac-bidi .ac-inner-hero-shell.elementor-element.e-con { padding-inline: 20px; }
  body.ac-bidi .ac-story-copy .ac-story-intro.elementor-element .prelements-heading .description { padding-inline: 0; }
}
@media (max-width: 767px) {
  body.ac-bidi .ac-inner-hero-shell.elementor-element.e-con { flex-direction: column; gap: 20px; }
  body.ac-bidi .ac-inner-hero-shell.elementor-element > .e-con { width: 100%; }
  body.ac-bidi .ac-inner-hero-shell > .e-con:not(.ac-inner-hero-art) { padding: 0; }
  body.ac-bidi .ac-faq-categories.elementor-element .tab-menu-wrapper .nav-tabs .nav-link .nav-btn-icon { margin-inline-start: 20px; }
}

/* Place the circuit artwork beside the final story, following the template reference. */
body.ac-bidi .ac-story-section.elementor-element.e-con {
  background-image: none !important;
  isolation: isolate;
}
body.ac-bidi .ac-story-section::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: url("https://alpha-code.net/wp-content/uploads/2026/10/AlphaCode-native-success-story-circuit-artwork.png") left 95% / auto no-repeat;
}
@media (max-width: 1366px) {
  body.ac-bidi .ac-story-section::after { background-position: left bottom; }
}

/* The following panel covers the portrait's lower edge, as in the original hero. */
body.ac-bidi .ac-hero-art-shell.e-con { isolation: isolate; z-index: 0; }
body.ac-bidi .ac-hero-feature-row.elementor-element.e-con { z-index: 1; }
@media (min-width: 1025px) {
  /* Preserve the original template's 730px sticky clearance without spacing the CTA away from its copy. */
  body.ac-bidi .ac-story-copy > .theiaStickySidebar { min-height: 730px; }
}
/* Treat animated digits and their suffix as one unbroken numeric value. */
body.ac-bidi .elementor-widget-rs-counter .count-number {
  display: flex;
  flex-wrap: nowrap;
  max-width: 100%;
  direction: inherit;
  unicode-bidi: isolate;
  white-space: nowrap;
}
body.ac-bidi .elementor-widget-rs-counter .count-number > :is(.odometer, .prefix) {
  flex: 0 0 auto;
  direction: ltr;
  white-space: nowrap;
}
body.ac-bidi .elementor-widget-rs-counter .odometer-inside { white-space: nowrap; }

/* Home news: adapt the approved case-study glass to an editorial card. */
body.home.ac-bidi .ac-news-section.elementor-element.e-con {
  background:
    linear-gradient(180deg, rgba(83, 245, 255, .24), transparent 230px),
    radial-gradient(ellipse at 76% 44%, rgba(0, 151, 167, .13), transparent 58%),
    linear-gradient(145deg, #153b4c 0%, #0b1630 52%, #07022a 100%) !important;
  color: #e0f7fa;
  isolation: isolate;
  box-shadow: inset 0 1px 0 rgba(178, 235, 242, .3);
}
body.home.ac-bidi .ac-news-section.elementor-element.e-con::after {
  /* Keep the native grain; the case-study filter removes its opaque pale ground. */
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: url("https://alpha-code.net/wp-content/uploads/2026/10/AlphaCode-native-news-background.jpg") left bottom / cover no-repeat;
  transform: none;
  filter: url("#ac-case-cyan-art");
  mix-blend-mode: normal;
  opacity: .85;
  pointer-events: none;
}
body.home.ac-bidi .ac-news-section .elementor-widget-rs-heading .prelements-heading .title { color: #53f5ff; }
body.home.ac-bidi .ac-news-section .elementor-widget-rs-heading .prelements-heading .sub-text { color: #e0f7fa; }
body.home.ac-bidi .ac-news-section .elementor-widget-rs-heading .prelements-heading .title-inner .sub-text svg { color: #b2ebf2; }
body.home.ac-bidi .ac-news-section .elementor-widget-rs-heading .prelements-heading .title-inner .sub-text svg path { fill: currentColor; }

/* An illuminated primary action keeps both native moving parts visible. */
body.home.ac-bidi .ac-news-section .elementor-element-505024f > .elementor-widget-container { margin: 0; }
body.home.ac-bidi .ac-news-section .elementor-widget-rs-button .rs-button.style2 .rs-btn :is(.rs-btn-text, .rs-icon) {
  background: #53f5ff;
  color: #07022a;
  transition: background-color .2s ease, color .2s ease, transform .35s ease;
}
body.home.ac-bidi .ac-news-section .elementor-widget-rs-button .rs-button .rs-btn svg path { fill: currentColor; }
body.home.ac-bidi .ac-news-section .elementor-widget-rs-button .rs-button.style2 .rs-btn:is(:hover, :focus-visible) :is(.rs-btn-text, .rs-icon) {
  background: #b2ebf2;
  color: #07022a;
}
body.home.ac-bidi .ac-news-section .rs-btn:focus-visible { outline: 2px solid #e0f7fa; outline-offset: 6px; border-radius: 40px; }

/* Match the case panels' translucent navy, angled reflections, fine rim and depth. */
body.home.ac-bidi .ac-news-section .prelements-blog-slider .slick-track { display: flex; align-items: stretch; }
body.home.ac-bidi .ac-news-section .prelements-blog-slider .pre-blog-item.slick-slide { flex: 0 0 auto; height: auto; }
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .blog-inner-wrap {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: linear-gradient(135deg, rgba(224, 247, 250, .16), rgba(224, 247, 250, .025) 48%, rgba(38, 198, 218, .08)), rgba(11, 22, 48, .42);
  border: 1px solid rgba(178, 235, 242, .6);
  -webkit-backdrop-filter: blur(24px) saturate(115%);
  backdrop-filter: blur(24px) saturate(115%);
  box-shadow: 0 12px 32px rgba(11, 22, 48, .18), inset 0 1px 0 rgba(224, 247, 250, .28), inset 0 -1px 0 rgba(178, 235, 242, .08);
  transition: border-color .2s ease, box-shadow .2s ease;
}
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .blog-inner-wrap:is(:hover, :focus-within) {
  border-color: #53f5ff;
  box-shadow: 0 16px 36px rgba(11, 22, 48, .26), inset 0 1px 0 rgba(224, 247, 250, .34), inset 0 0 0 1px rgba(83, 245, 255, .08);
}
/* Neutralize a legacy global [dir=rtl] offset only on this carousel. */
body.home.ac-bidi .ac-news-section .prelements-blog-slider .rs_latest_blog_slider[dir] { right: 0 !important; left: 0 !important; }

/* A normal horizontal category chip gives long headlines the whole reading width. */
body.home.ac-bidi .ac-news-section.elementor-element .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .pre-image-wrap .rs-cate {
  position: static;
  inset: auto;
  transform: none;
  display: table;
  width: auto;
  max-width: 100%;
  margin: 18px 0 0;
  padding: 5px 12px;
  border: 1px solid rgba(178, 235, 242, .35);
  border-radius: 8px;
  background: rgba(11, 22, 48, .45);
  /* The theme's global category text declares a dark color important. */
  color: #b2ebf2 !important;
  font-size: 13px;
  line-height: 1.6;
  text-align: start;
  text-transform: none;
  overflow-wrap: anywhere;
}
body.home.ac-bidi .ac-news-section.elementor-element .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .pre-image-wrap .rs-cate:is(:hover, :focus-visible) {
  background: rgba(83, 245, 255, .12);
  color: #e0f7fa !important;
  border-color: #53f5ff;
}
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .blog-inner-wrap .pre-blog-content {
  display: flex;
  flex-grow: 1;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  min-height: 184px;
  padding: 16px 20px 24px;
  background: transparent;
}
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .pre-blog-content .pre-post-title { margin: 0; }
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .pre-blog-content .pre-post-title a { color: #e0f7fa; }
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .pre-blog-content .pre-post-title a:is(:hover, :focus-visible) { color: #53f5ff; }
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .pre-blog-item :is(.top_meta_wrapper, .date_meta, .author_text, .pre-content) { color: #b2cfd9; }
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .pre-blog-item .pre-blog-content .blog-btn-part a { color: #53f5ff; }
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .pre-blog-item .blog-btn-part a svg path { fill: currentColor; }
body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .pre-blog-item .pre-blog-content .blog-btn-part a:is(:hover, :focus-visible) { color: #e0f7fa; text-decoration: underline; text-underline-offset: .2em; }
body.home.ac-bidi .ac-news-section .pre-blog-item a:focus-visible { outline: 2px solid #53f5ff; outline-offset: 4px; border-radius: 4px; }
body.home.ac-bidi .ac-news-section .elementor-widget-rs-gsap-marquee-slide .rs-marquee-slider-gsap .gsap-marquee .marquee-wrapper .slider-item.image .marquee-item > p {
  color: #e0f7fa;
  border-color: rgba(178, 235, 242, .35);
  background: rgba(224, 247, 250, .025);
}
body.home.ac-bidi .ac-news-section .elementor-widget-rs-gsap-marquee-slide .rs-marquee-slider-gsap .gsap-marquee .marquee-wrapper .slider-item.image .marquee-item .image-wrapper {
  border-color: rgba(178, 235, 242, .35);
  background: rgba(224, 247, 250, .055);
}
@media (max-width: 767px) {
  body.home.ac-bidi .ac-news-section .elementor-widget-prelements-blog-slider .prelements-blog-slider .pre-blog-item .blog-inner-wrap .pre-blog-content { min-height: 168px; }
}
@media (prefers-reduced-motion: reduce) {
  body.home.ac-bidi .ac-news-section :is(.blog-inner-wrap, .rs-btn-text, .rs-icon) { transition: none; }
}
