body {
  font-family: Manrope, Arial, sans-serif;
}

/* Visually hidden; available to screen readers (WordPress core class). */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

.blog-wrapper {
  padding: 50px 0;
}

.blog-top {
  margin-bottom: 30px;
}

/*
 * Archive & featured-sticky cards: .img_anim_* moves the <img> by ~15px (GSAP).
 * Padding + visible overflow so parents (incl. .site-main { overflow: clip }) do not crop the motion.
 */
.blog-tab-images:has(img[class*='img_anim']),
a.solution-images-box:has(img[class*='img_anim']) {
  overflow: visible;
  padding: clamp(14px, 3vw, 22px);
  box-sizing: border-box;
}

.blog-tab-images:has(img[class*='img_anim']) {
  margin-bottom: 22px;
}

.blog-tabs-single-item:has(img[class*='img_anim']),
.solution-left-item-box:has(img[class*='img_anim']),
article.blog-about-item:has(img[class*='img_anim']),
.solution-countent-box.blog-countent-box:has(img[class*='img_anim']) {
  overflow: visible;
}

.blog-tab-img[class*='img_anim'],
.solution-img[class*='img_anim'] {
  display: block;
  max-width: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  max-height: 211.922px;
}

@media screen and (min-width: 1280px) {
  .blog-tab-images:has(img[class*='img_anim']) {
    margin-bottom: 70px;
  }
}

/* Single post: author row — centered flex, left-aligned text */
/* Sticky posts: WordPress adds the .sticky class to the post container in loops. */
.blog-about-item.sticky,
.blog-tabs-single-item.sticky,
article.post.sticky {
  position: relative;
}

.blog-about-item.sticky,
.blog-tabs-single-item.sticky {
  border-radius: 16px;
  outline: 1px solid rgba(125, 44, 255, 0.22);
  outline-offset: 4px;
}

.blockora-single-article .blog-collection-athour {
  justify-content: center;
  text-align: left;
}

.blockora-single-article .collection-athour-images {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  overflow: hidden;
  border: 2px solid rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.06);
}

.blockora-single-article .blog-collection-athour-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.blockora-single-article .articles-collection-wrapper {
  flex: 1 1 45%;
  min-width: min(100%, 280px);
}

.blockora-single-article .articles-img {
  width: 100%;
  max-width: 100%;
  height: auto;
  border-radius: 16px;
  object-fit: cover;
  display: block;
}

/* Single post hero image — Webflow-style frame: full image visible, not clipped */
.blockora-single-article .blog-details-section .blog-cms-images {
  overflow: visible;
}

.blockora-single-article .blog-cms-img {
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 276.766px;
  object-fit: contain;
  object-position: center;
  display: block;
}

.site-main {
  overflow: clip;
}

.custom-logo-link img,
.global-logo {
  max-height: 46px;
  width: auto;
}

.nav-menu-two {
  position: relative;
  padding: 0 20px;
}

/* Desktop dropdown: dark panel (HTML template), white links, primary on hover; chevron right, same ▾ as template. */
.nav-menu-two > .dropdown > .dropdown-toggle.w-dropdown-toggle {
  display: inline-flex;
  align-items: center;
  flex-direction: row;
  gap: 5px;
}

.nav-menu-two > .dropdown > .dropdown-toggle.w-dropdown-toggle > .menu-icon-drodown.w-icon-dropdown-toggle {
  position: static;
  margin: 0;
  width: 1em;
  height: 1em;
  min-width: 1em;
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.25s ease;
  color: inherit;
}

.nav-menu-two > .dropdown > .dropdown-toggle.w-dropdown-toggle > .menu-icon-drodown.w-icon-dropdown-toggle:before {
  line-height: 1;
}

.nav-menu-two > .dropdown.w-dropdown.w--open > .dropdown-toggle > .menu-icon-drodown.w-icon-dropdown-toggle {
  transform: rotate(-180deg);
}

.nav-menu-two > .dropdown > .dropdown-toggle.w-dropdown-toggle:hover,
.nav-menu-two > .dropdown.w-dropdown.w--open > .dropdown-toggle.w-dropdown-toggle {
  color: #fff;
}

.nav-menu-two .navigation-dropdown .dropdown-wrapper {
  background-color: var(--color-stoke-clr);
  border: 1px solid #021619;
  border-radius: 8px;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.45);
}

.nav-menu-two .navigation-dropdown .dropdown-wrapper.w--open {
  background-color: var(--color-stoke-clr);
  border: 1px solid #021619;
  border-radius: 8px;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.45);
  min-width: 225px;
  left: auto;
}

.nav-menu-two .navigation-dropdown .dropdown-link {
  color: #fff;
}

.nav-menu-two .navigation-dropdown .dropdown-link:hover,
.nav-menu-two .navigation-dropdown .dropdown-link:focus-visible {
  color: var(--blockora-primary);
}

.nav-menu-two .navigation-dropdown .dropdown-link.w--current {
  color: var(--blockora-primary);
  font-weight: 500;
}

.nav-menu-two .navigation-dropdown .blockora-desktop-subtoggle {
  color: rgba(255, 255, 255, 0.92);
  margin-left: auto;
  margin-right: 0;
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  min-width: 1em;
  padding: 0;
}

.nav-menu-two .navigation-dropdown .blockora-desktop-subtoggle .menu-icon-drodown.w-icon-dropdown-toggle {
  transition: transform 0.25s ease;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1em;
  height: 1em;
}

.nav-menu-two .navigation-dropdown .blockora-desktop-subtoggle .menu-icon-drodown.w-icon-dropdown-toggle:before {
  line-height: 1;
}

.nav-menu-two .blockora-submenu-item.has-children.is-open > .blockora-submenu-link-row .blockora-desktop-subtoggle .menu-icon-drodown.w-icon-dropdown-toggle {
  transform: rotate(-180deg);
}

.nav-menu-two .blockora-desktop-submenu.level-3 {
  border-left-color: rgba(255, 255, 255, 0.22);
}

.nav-menu-two > .dropdown.w-dropdown {
  position: relative;
}

.nav-menu-two > .dropdown.w-dropdown > .navigation-dropdown.w-dropdown-list {
  display: none;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.18s ease, transform 0.18s ease;
}

.nav-menu-two > .dropdown.w-dropdown.w--open > .navigation-dropdown.w-dropdown-list {
  display: block;
  opacity: 1;
  transform: translateY(0);
}

.blockora-desktop-submenu {
  margin: 0;
  padding: 0;
  list-style: none;
}

.blockora-submenu-link-row {
  display: flex;
  align-items: center;
  width: 100%;
  gap: 6px;
}

.nav-menu-two .navigation-dropdown .blockora-submenu-link-row .dropdown-link {
  flex: 1 1 auto;
  min-width: 0;
}

.blockora-desktop-subtoggle {
  background: transparent;
  border: 0;
  color: #283338;
  cursor: pointer;
  margin-left: 6px;
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.blockora-desktop-submenu.level-3 {
  display: none;
  margin: 0 0 8px 12px;
  border-left: 1px dashed rgba(40, 51, 56, 0.22);
  padding-left: 12px;
}

.blockora-submenu-item.has-children.is-open > .blockora-desktop-submenu.level-3 {
  display: block;
}

/* Fine-tuned dropdown placement to match template alignment. */
.nav-menu-two > .dropdown.w-dropdown > .navigation-dropdown.w-dropdown-list.w--open {
  left: var(--blockora-dd-blog-left, -26px);
}

.nav-menu-two > .dropdown.w-dropdown:nth-of-type(1) > .navigation-dropdown.w-dropdown-list.w--open {
  left: var(--blockora-dd-blog-left, -26px);
}

.nav-menu-two > .dropdown.w-dropdown:nth-of-type(2) > .navigation-dropdown.w-dropdown-list.w--open {
  left: var(--blockora-dd-pages-left, -34px);
}

.navigation-mob {
  display: none;
}

.mobile-dropdown.w-dropdown > .dropdown-list.w-dropdown-list {
  display: none;
}

.mobile-dropdown.w-dropdown.w--open > .dropdown-list.w-dropdown-list {
  display: block;
}

.mobile-dropdown.w-dropdown > .dropdown-list.w-dropdown-list.w--open {
  display: block;
}

/*
 * Mobile nav accordion: Webflow .w-dropdown-list is position:absolute by default,
 * which stacks panels like a desktop dropdown. Force in-flow layout inside .mobile-nav only.
 */
.mobile-nav .mobile-dropdown.w-dropdown {
  display: block;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
  z-index: auto;
  text-align: left;
}

.mobile-nav .mobile-dropdown.w-dropdown > .dropdown-list.w-dropdown-list {
  position: static;
  left: auto;
  right: auto;
  top: auto;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
  background-color: transparent;
}

.mobile-nav .blockora-mobile-sub-item > .dropdown-list.w-dropdown-list {
  position: static;
  left: auto;
  right: auto;
  top: auto;
  min-width: 0;
  width: 100%;
  box-sizing: border-box;
}

.mobile-nav .mobile-toggle.w-dropdown-toggle {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  white-space: normal;
}

.mobile-nav .blockora-mobile-submenu.level-3,
.mobile-nav .blockora-mobile-submenu.level-4 {
  padding-left: 14px;
  margin-top: 2px;
  margin-bottom: 2px;
}

.blockora-mobile-submenu {
  list-style: none;
  margin: 0;
  padding: 0;
}

.blockora-mobile-sub-row {
  display: flex;
  align-items: center;
}

.blockora-mobile-subtoggle {
  border: 0;
  background: transparent;
  color: #283338;
  margin-right: 12px;
  cursor: pointer;
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.blockora-mobile-sub-item > .dropdown-list.w-dropdown-list {
  display: none;
}

.blockora-mobile-sub-item.is-open > .dropdown-list.w-dropdown-list {
  display: block;
}

.blockora-mobile-sub-item > .dropdown-list.w-dropdown-list.w--open {
  display: block;
}

.footer-countent .menu {
  margin: 0;
  list-style: none;
  padding: 0;
}

.footer-countent .menu li {
  margin-bottom: 10px;
}

.footer-countent .menu li a {
  color: #b9c4d8;
  text-decoration: none;
}

.w-richtext img {
  border-radius: 12px;
}

.w-richtext p,
.w-richtext li {
  color: #d8deea;
}

.blockora-page-links {
  margin-top: 20px;
  color: #fff;
}

.blog-tab-three,
.solution-title,
.collection-title {
  display: block;
}

.blog-tab-text,
.blog-tab-text:hover,
.blog-tab-text:focus {
  text-decoration: none;
}

.blog-tabs-menu[data-filter='ajax'] {
  display: none;
}

.blog-tabs-menu[data-filter='ajax'].blockora-filter-ready {
  display: flex;
}

#blockora-blog-posts.blockora-loading {
  opacity: 0.55;
  transition: opacity 0.2s ease;
}

.blockora-pagination,
.blockora-shop-wrapper .woocommerce-pagination {
  margin-top: 36px;
}

.blockora-pagination .nav-links,
.blockora-shop-wrapper .woocommerce-pagination ul.page-numbers {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.blockora-shop-wrapper .woocommerce-pagination ul.page-numbers li {
  margin: 0;
  padding: 0;
  list-style: none;
}

.blockora-pagination .page-numbers,
.blockora-shop-wrapper .woocommerce-pagination ul.page-numbers a.page-numbers,
.blockora-shop-wrapper .woocommerce-pagination ul.page-numbers span.page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  border-radius: 999px;
  border: none;
  background: rgba(255, 255, 255, 0.03);
  color: #e8ecf5;
  text-decoration: none;
  font-size: 14px;
  padding: 0 18px;
  transition: all 0.2s ease;
  box-sizing: border-box;
}

.blockora-shop-wrapper .woocommerce-pagination ul.page-numbers span.page-numbers.dots {
  min-width: auto;
  padding: 0 14px;
  background: rgba(255, 255, 255, 0.03);
}

.blockora-pagination .page-numbers.current,
.blockora-pagination .page-numbers:hover,
.blockora-shop-wrapper .woocommerce-pagination a.page-numbers:hover,
.blockora-shop-wrapper .woocommerce-pagination span.page-numbers.current {
  background-image: linear-gradient(214deg, var(--blockora-primary), var(--blockora-accent));
  color: #fff;
  border: none;
}

.has_blurred_anim,
.has_rotate_anim,
.shiny_star,
.img_anim_one,
.img_anim_two,
.img_anim_three {
  will-change: transform, opacity, filter;
}

.blockora-thin-footer {
  padding: 16px 0;
  background: #0b1020;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.blockora-thin-footer .copy-right {
  padding: 0;
  justify-content: center;
  display: flex;
}

.blog-comments-section {
  margin-top: 60px;
  padding: 0 0 90px;
}

.blockora-page-section {
  padding-bottom: 90px;
}

/* Pages: inner hero is not the blog collection strip — remove negative overlap margin from core .blog-details-section. */
.blog-details-section.blockora-page-section {
  margin-top: 0;
}

/*
 * Post & page body: global h1/h2/h3 in core are hero-sized (88px / 64px / 32px).
 * Readable sizes for block/content in .w-richtext only — wrapped in :where() so
 * specificity is only the heading tag (0,0,1). Elementor typography (.elementor-heading-title,
 * .elementor-kit-* *, widget classes) overrides this; we still beat blockora-core h1–h3 because
 * this file loads after it with equal tag specificity.
 */
:where(.blockora-page-article .blog-details-section.blockora-page-section .w-richtext) h1,
:where(.blockora-single-article .blog-details-wrapper .w-richtext) h1 {
  font-size: clamp(1.75rem, 4vw, 2.25rem);
  line-height: 1.2;
  margin-top: 1.25em;
  margin-bottom: 0.5em;
}

:where(.blockora-page-article .blog-details-section.blockora-page-section .w-richtext) h2,
:where(.blockora-single-article .blog-details-wrapper .w-richtext) h2 {
  font-size: clamp(1.5rem, 3.5vw, 1.75rem);
  line-height: 1.28;
  margin-top: 1.15em;
  margin-bottom: 0.45em;
}

:where(.blockora-page-article .blog-details-section.blockora-page-section .w-richtext) h3,
:where(.blockora-single-article .blog-details-wrapper .w-richtext) h3 {
  font-size: clamp(1.2rem, 2.8vw, 1.45rem);
  line-height: 1.35;
  margin-top: 1em;
  margin-bottom: 0.4em;
}

.blog-comments-wrapper {
  background: #ffffff08;
  border: 1px solid #ffffff14;
  border-radius: 16px;
  padding: 34px 28px;
}

.blog-comments-wrapper .comments-title,
.blog-comments-wrapper .comment-reply-title {
  color: #fff;
  margin: 0 0 18px;
}

.blog-comments-wrapper .comment-list {
  list-style: none;
  margin: 0 0 30px;
  padding: 0;
}

.blog-comments-wrapper .comment-list .children {
  list-style: none;
  margin: 14px 0 0 0;
  padding: 0 0 0 36px;
  border-left: 1px solid rgba(255, 255, 255, 0.12);
}

.blog-comments-wrapper .comment-list .children .children {
  margin-top: 14px;
  padding-left: 36px;
}

.blog-comments-wrapper .comment-body {
  display: block;
}

.blog-comments-wrapper .comment {
  border: 1px solid #ffffff1a;
  border-radius: 12px;
  padding: 18px;
  margin: 0 0 14px;
  background: #ffffff03;
}

.blog-comments-wrapper .comment-list > .comment:last-child {
  margin-bottom: 0;
}

.blog-comments-wrapper .comment .children .comment:last-child {
  margin-bottom: 0;
}

.blog-comments-wrapper .comment-author,
.blog-comments-wrapper .comment-meta a {
  color: #fff;
}

.blog-comments-wrapper .comment-content p {
  color: #d8deea;
}

.blog-comments-wrapper .comment-reply-link {
  color: var(--blockora-accent);
  text-decoration: none;
}

.blog-comments-wrapper .logged-in-as {
  color: #d8deea;
}

.blog-comments-wrapper .logged-in-as a {
  color: var(--blockora-primary, #7d2cff);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.blog-comments-wrapper .logged-in-as a:hover,
.blog-comments-wrapper .logged-in-as a:focus-visible {
  color: var(--blockora-accent, #00e4ff);
}

.blog-comments-wrapper .comment-respond {
  margin-top: 18px;
}

.blog-comments-wrapper .comment-form {
  display: grid;
  gap: 12px;
}

.blog-comments-wrapper .comment-form-cookies-consent {
  display: none !important;
}

.blog-comments-wrapper .comment-form input,
.blog-comments-wrapper .comment-form textarea {
  width: 100%;
  border: 1px solid #ffffff22;
  border-radius: 10px;
  background: #ffffff06;
  color: #fff;
  padding: 12px 14px;
}

.blog-comments-wrapper .comment-form .submit {
  display: inline-block;
  width: auto;
  max-width: 100%;
  box-sizing: border-box;
  margin-top: 4px;
  cursor: pointer;
  border: 0;
  appearance: none;
  -webkit-appearance: none;
  text-align: center;
  /*
   * Matches .button.cryptocurrency-button + .button-linear-gradient-color.white + .button-title-two.about-button-text-color
   * (see comments.php submit_button). Theme button hover rules in this file apply.
   */
}

.blockora-shop-section {
  padding: 0 0 100px;
}

.blockora-shop-wrapper {
  background: #ffffff08;
  border: 1px solid #ffffff16;
  border-radius: 18px;
  padding: 30px 26px;
}

.blockora-shop-wrapper .woocommerce-result-count,
.blockora-shop-wrapper .woocommerce-ordering select,
.blockora-shop-wrapper .price,
.blockora-shop-wrapper .woocommerce-breadcrumb,
.blockora-shop-wrapper p {
  color: #d8deea;
}

.blockora-shop-wrapper .woocommerce-ordering select {
  background: #ffffff0a;
  border: 1px solid #ffffff24;
  border-radius: 8px;
  padding: 8px 10px;
}

.blockora-shop-wrapper ul.products li.product {
  background: #ffffff05;
  border: 1px solid #ffffff16;
  border-radius: var(--blockora-wc-card-radius, 14px);
  padding: 14px;
  transition: transform 0.2s ease;
}

.blockora-shop-wrapper ul.products li.product:hover {
  transform: translateY(calc(var(--blockora-wc-card-hover-lift, 4px) * -1));
}

.blockora-shop-wrapper ul.products li.product a img {
  border-radius: calc(var(--blockora-wc-card-radius, 14px) - 2px);
}

.blockora-shop-wrapper ul.products li.product .woocommerce-loop-product__title,
.blockora-shop-wrapper .product_title,
.blockora-shop-wrapper .related > h2,
.blockora-shop-wrapper .woocommerce-tabs h2,
.blockora-shop-wrapper .woocommerce-Reviews-title {
  color: #fff;
}

.blockora-shop-wrapper .button,
.blockora-shop-wrapper button.button,
.blockora-shop-wrapper input.button,
.blockora-shop-wrapper #respond input#submit {
  background: linear-gradient(214deg, var(--blockora-primary), var(--blockora-accent));
  border: 0;
  color: #fff;
  border-radius: var(--blockora-wc-button-radius, 10px);
  padding: 10px 16px;
  transition: filter 0.25s ease;
}

.blockora-shop-wrapper .button:hover,
.blockora-shop-wrapper .button:focus-visible,
.blockora-shop-wrapper button.button:hover,
.blockora-shop-wrapper button.button:focus-visible,
.blockora-shop-wrapper input.button:hover,
.blockora-shop-wrapper input.button:focus-visible,
.blockora-shop-wrapper #respond input#submit:hover,
.blockora-shop-wrapper #respond input#submit:focus-visible {
  filter: brightness(1.08);
}

.blockora-shop-wrapper div.product .woocommerce-tabs ul.tabs li {
  background: #ffffff0c;
  border: 1px solid #ffffff14;
}

.blockora-shop-wrapper .woocommerce-tabs ul.tabs li a {
  color: #fff;
}

.blockora-shop-wrapper .woocommerce-product-gallery__image img {
  border-radius: var(--blockora-wc-card-radius, 14px);
}

.blockora-shop-wrapper .quantity .qty,
.blockora-shop-wrapper .input-text,
.blockora-shop-wrapper textarea {
  border: 1px solid #ffffff22;
  border-radius: calc(var(--blockora-wc-button-radius, 10px) - 2px);
  background: #ffffff08;
  color: #fff;
}

.blockora-shop-wrapper .onsale {
  background: linear-gradient(214deg, var(--blockora-primary), var(--blockora-accent));
  color: #fff;
  border: 0;
  border-radius: max(var(--blockora-wc-button-radius, 10px), 999px);
  min-height: auto;
  min-width: auto;
  line-height: 1;
  padding: 8px 12px;
  font-weight: 600;
}

@media (max-width: 991px) {
  .ns_navigation {
    display: none;
  }

  .navigation-mob {
    flex-direction: row;
    justify-content: space-between;
    padding-left: 0;
    padding-right: 0;
    display: flex;
  }

  .mobile-nav.w-nav-menu {
    display: none;
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    right: 0;
    z-index: 30;
    border: 1px solid #e7ecf5;
  }

  .mobile-nav.w-nav-menu.w--open {
    display: block;
  }

  /* Keep burger control visually unchanged when open or pressed (core uses white :active). */
  .lm_mobail_menu_button.w-nav-button:active,
  .lm_mobail_menu_button.w-nav-button.w--open,
  .lm_mobail_menu_button.w-nav-button.w--open:active {
    background-color: transparent;
    box-shadow: none;
  }

  .lm_mobail_menu_button.w-nav-button.w--open .lm_mobail_menu {
    transform: none;
  }
}

@media (max-width: 767px) {
  .dropdown-list {
    padding-right: 10px;
  }

  .mobile-nav {
    border-radius: 12px;
    margin-top: 8px;
    padding-right: 0;
  }

  .mobile-nav-link {
    font-size: 16px;
  }

  .mobile-toggle {
    font-size: 16px;
    line-height: 160%;
  }

  .dropdown-link-mobile {
    padding-top: 12px;
    padding-bottom: 12px;
  }
}

/* -------------------------------------------------------------------------
   WordPress core: alignment, captions, sticky, gallery, comments (Theme Check)
   ------------------------------------------------------------------------- */

.alignleft {
  float: left;
  margin: 0 1.5em 1em 0;
}

.alignright {
  float: right;
  margin: 0 0 1em 1.5em;
}

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  clear: both;
}

.w-richtext::after,
.entry-content::after {
  content: '';
  display: table;
  clear: both;
}

.entry-content .alignwide,
.w-richtext .alignwide {
  max-width: 100%;
}

.wp-caption {
  max-width: 100%;
}

.wp-caption img {
  display: block;
  height: auto;
  max-width: 100%;
  border-radius: 12px;
}

.wp-caption-text,
.wp-block-image figcaption {
  font-size: 0.875rem;
  line-height: 1.5;
  color: rgba(216, 222, 234, 0.85);
  margin: 0.5em 0 0;
  text-align: center;
}

.blocks-gallery-grid .blocks-gallery-item figcaption,
.gallery-caption {
  font-size: 0.8125rem;
  line-height: 1.45;
  color: rgba(216, 222, 234, 0.9);
}

/* Sticky posts: label via .blockora-featured-badge in markup (no outline) */
.blockora-featured-badge {
  display: inline-flex;
  align-items: center;
  margin-bottom: 14px;
  padding: 6px 14px;
  border-radius: 999px;
  font-family: Manrope, sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-1, #fff);
  background: linear-gradient(135deg, rgba(125, 44, 255, 0.35), rgba(0, 228, 255, 0.22));
  border: 1px solid rgba(255, 255, 255, 0.14);
  box-shadow: 0 0 0 1px rgba(125, 44, 255, 0.12);
}

/* Hero sticky card: badge inside image column, anchored to box */
.solution-left-item-box:has(.blockora-featured-badge) {
  position: relative;
}

.solution-left-item-box .blockora-featured-badge {
  position: absolute;
  top: clamp(14px, 3vw, 28px);
  left: clamp(14px, 3vw, 28px);
  z-index: 4;
  margin-bottom: 0;
}

@media screen and (min-width: 1280px) {
  .solution-left-item-box .blockora-featured-badge {
    top: 28px;
    left: 36px;
  }
}

.blog-comments-wrapper .comment-list .comment.bypostauthor {
  border-color: rgba(0, 228, 255, 0.35);
  box-shadow: 0 0 0 1px rgba(0, 228, 255, 0.12);
}

.blockora-post-tags {
  margin-top: 1.5rem;
  margin-bottom: 30px;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-size: 0.9375rem;
  color: #d8deea;
}

.blockora-post-tags-label {
  display: inline-block;
  margin-right: 0.5em;
  font-weight: 600;
  color: #fff;
}

.blockora-post-tags-list a {
  color: var(--blockora-accent, #00e4ff);
  text-decoration: none;
  margin-right: 0.35em;
}

.blockora-post-tags-list a:hover {
  text-decoration: underline;
}

/* ---------------------------------------------------------------------------
   Buttons — hover / focus (Webflow template used IX2; we mirror with CSS).
   Overlays start translated/scaled off-screen; slide or expand on interaction.
   --------------------------------------------------------------------------- */

.button-linear-gradient-color,
.button-two-bg-color,
.about-button-bg-color {
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.button:hover .button-linear-gradient-color,
.button:focus-visible .button-linear-gradient-color {
  transform: translate(0, 0);
}

/* White-fill hover: background becomes #fff — use dark label text */
.button .button-linear-gradient-color.white ~ .button-title-two {
  transition: color 0.35s ease;
}

.button:hover .button-linear-gradient-color.white ~ .button-title-two,
.button:focus-visible .button-linear-gradient-color.white ~ .button-title-two {
  color: var(--color-2);
}

/* Gradient-fill hover (no .white): overlay is purple/teal — keep label white for contrast. */
.button .button-linear-gradient-color:not(.white) ~ .button-title {
  transition: color 0.35s ease;
}

.button:hover .button-linear-gradient-color:not(.white) ~ .button-title,
.button:focus-visible .button-linear-gradient-color:not(.white) ~ .button-title {
  color: #fff;
}

.button-two:hover .button-two-bg-color,
.button-two:focus-visible .button-two-bg-color {
  transform: translate(0, 0);
}

.about-button-link:hover .about-button-bg-color,
.about-button-link:focus-visible .about-button-bg-color {
  transform: translate(0, 0);
}

/* Style guide–style pill (dark fill grows from bottom) */
.main-button {
  transition: color 0.35s ease;
}

.main-button-hover-background {
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.main-button:hover,
.main-button:focus-visible {
  color: #fff;
}

.main-button:hover .main-button-hover-background,
.main-button:focus-visible .main-button-hover-background {
  transform: scale3d(1, 1, 1);
}

.main-button:hover .main-button-text,
.main-button:focus-visible .main-button-text {
  color: #fff;
}

/* CF7 submits — no border, normal weight (overrides .footer-button / .contact-from-button in core). */
.wpcf7-form-control.wpcf7-submit.footer-button,
.wpcf7-form-control.wpcf7-submit.contact-from-button {
  border: 0;
  border-width: 0;
  box-shadow: none;
  font-weight: var(--fw_400, 400);
}

/* Full-width gradient submits (footer newsletter, etc.) */
.footer-button,
.contact-from-button {
  transition: filter 0.3s ease, transform 0.25s ease;
  cursor: pointer;
}

.footer-button:hover,
.footer-button:focus-visible,
.contact-from-button:hover,
.contact-from-button:focus-visible {
  filter: brightness(1.1);
}

@media (prefers-reduced-motion: reduce) {
  .button-linear-gradient-color,
  .button-two-bg-color,
  .about-button-bg-color,
  .main-button-hover-background,
  .main-button,
  .footer-button,
  .contact-from-button {
    transition: none;
  }

  .button:hover .button-linear-gradient-color,
  .button:focus-visible .button-linear-gradient-color,
  .button-two:hover .button-two-bg-color,
  .button-two:focus-visible .button-two-bg-color,
  .about-button-link:hover .about-button-bg-color,
  .about-button-link:focus-visible .about-button-bg-color {
    transform: translate(0, 0);
  }

  .main-button:hover .main-button-hover-background,
  .main-button:focus-visible .main-button-hover-background {
    transform: scale3d(1, 1, 1);
  }

  .footer-button:hover,
  .footer-button:focus-visible,
  .contact-from-button:hover,
  .contact-from-button:focus-visible {
    filter: none;
  }

  .blockora-shop-wrapper .button,
  .blockora-shop-wrapper button.button,
  .blockora-shop-wrapper input.button,
  .blockora-shop-wrapper #respond input#submit {
    transition: none;
  }

  .blockora-shop-wrapper .button:hover,
  .blockora-shop-wrapper .button:focus-visible,
  .blockora-shop-wrapper button.button:hover,
  .blockora-shop-wrapper button.button:focus-visible,
  .blockora-shop-wrapper input.button:hover,
  .blockora-shop-wrapper input.button:focus-visible,
  .blockora-shop-wrapper #respond input#submit:hover,
  .blockora-shop-wrapper #respond input#submit:focus-visible {
    filter: none;
  }

  .blockora-back-to-top {
    transition: none;
  }

  .navber.blockora-header--sticky {
    transition: none;
  }
}

/* -------------------------------------------------------------------------
   Sticky header (Customizer → Blockora Global Options) + back-to-top
   ------------------------------------------------------------------------- */

/*
 * Sticky header: default matches “floating” hero (no chrome). After scroll,
 * .blockora-header--scrolled adds glass panel; .blockora-header--hidden slides
 * away on scroll-down (see blockora-scroll-ui.js).
 */
.navber.blockora-header--sticky {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  z-index: 1000;
  background-color: transparent;
  border-bottom: 1px solid transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  transform: translate3d(0, 0, 0);
  transition:
    transform 0.38s cubic-bezier(0.4, 0, 0.2, 1),
    background-color 0.35s ease,
    border-color 0.35s ease,
    box-shadow 0.35s ease,
    backdrop-filter 0.35s ease,
    -webkit-backdrop-filter 0.35s ease;
}

.navber.blockora-header--sticky.blockora-header--scrolled {
  background-color: rgba(0, 2, 2, 0.9);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-color: rgba(255, 255, 255, 0.07);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
}

.navber.blockora-header--sticky.blockora-header--hidden.blockora-header--scrolled {
  transform: translate3d(0, -100%, 0);
  pointer-events: none;
}

body.admin-bar .navber.blockora-header--sticky {
  top: 32px;
}

@media screen and (max-width: 782px) {
  body.admin-bar .navber.blockora-header--sticky {
    top: 46px;
  }
}

.blockora-back-to-top {
  position: fixed;
  right: clamp(16px, 3vw, 28px);
  bottom: clamp(20px, 4vw, 32px);
  z-index: 1001;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  padding: 0;
  margin: 0;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 50%;
  cursor: pointer;
  color: var(--color-1, #fff);
  background:
    linear-gradient(160deg, rgba(125, 44, 255, 0.2), rgba(0, 228, 255, 0.12)),
    rgba(10, 12, 16, 0.94);
  box-shadow:
    0 10px 36px rgba(0, 0, 0, 0.45),
    0 0 0 1px rgba(125, 44, 255, 0.18);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(12px) scale(0.96);
  transition:
    opacity 0.35s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
    visibility 0.35s,
    box-shadow 0.25s ease,
    border-color 0.25s ease,
    color 0.25s ease;
}

.blockora-back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.blockora-back-to-top:hover,
.blockora-back-to-top:focus-visible {
  color: var(--blockora-accent, #00e4ff);
  border-color: rgba(0, 228, 255, 0.35);
  box-shadow:
    0 14px 40px rgba(125, 44, 255, 0.25),
    0 0 0 1px rgba(0, 228, 255, 0.28);
}

.blockora-back-to-top:focus-visible {
  outline: 2px solid var(--blockora-accent, #00e4ff);
  outline-offset: 3px;
}

.blockora-back-to-top__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.blockora-back-to-top__icon svg {
  display: block;
}

/*
 * Core Quote block — premium card aligned with Blockora (gradient rail, dark surface, Switzer type).
 * Overrides thick legacy blockquote.css from blockora-core for .wp-block-quote only.
 */
blockquote.wp-block-quote {
  position: relative;
  box-sizing: border-box;
  margin: clamp(1.75rem, 4vw, 2.85rem) 0;
  padding-block: clamp(1.45rem, 2.8vw, 2.2rem);
  padding-inline: clamp(1.35rem, 2.6vw, 2.15rem) clamp(1.45rem, 2.8vw, 2.35rem);
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 16px;
  background:
    linear-gradient(155deg, rgba(18, 18, 22, 0.98) 0%, rgba(12, 12, 14, 0.94) 42%, rgba(15, 16, 24, 0.96) 100%);
  box-shadow:
    0 0 0 1px rgba(125, 44, 255, 0.1),
    0 28px 56px -36px rgba(0, 0, 0, 0.65),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
  font-family: var(--switzer, Switzer, Arial, sans-serif);
  font-size: clamp(1.05rem, 2.1vw, 1.3rem);
  line-height: 1.68;
  font-style: normal;
  font-weight: 500;
  color: #e8ecf5;
  overflow: hidden;
}

blockquote.wp-block-quote::before {
  content: '';
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0;
  inline-size: 4px;
  border-start-start-radius: 16px;
  border-end-start-radius: 16px;
  background: linear-gradient(
    180deg,
    var(--blockora-primary, #7d2cff) 0%,
    var(--blockora-accent, #00e4ff) 100%
  );
  pointer-events: none;
}

/* Decorative quote mark — matches gradient chips elsewhere */
blockquote.wp-block-quote::after {
  content: '\201C';
  position: absolute;
  inset-inline-end: clamp(0.75rem, 2vw, 1.35rem);
  inset-block-start: clamp(0.35rem, 1.5vw, 0.65rem);
  font-family: var(--switzer, Switzer, Arial, sans-serif);
  font-size: clamp(3.25rem, 8vw, 4.75rem);
  line-height: 1;
  font-weight: 600;
  color: rgba(125, 44, 255, 0.14);
  pointer-events: none;
  user-select: none;
}

.w-richtext blockquote.wp-block-quote p,
.block-editor-block-list__layout blockquote.wp-block-quote p,
blockquote.wp-block-quote p {
  margin: 0;
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
}

.w-richtext blockquote.wp-block-quote p + p,
blockquote.wp-block-quote p + p {
  margin-block-start: 0.85em;
}

.w-richtext blockquote.wp-block-quote em,
blockquote.wp-block-quote em {
  font-style: italic;
  color: rgba(232, 236, 245, 0.94);
}

.w-richtext blockquote.wp-block-quote cite,
.w-richtext blockquote.wp-block-quote .wp-block-quote__citation,
blockquote.wp-block-quote cite,
blockquote.wp-block-quote .wp-block-quote__citation {
  display: block;
  margin-block-start: 1.1rem;
  padding-block-start: 1rem;
  border-block-start: 1px solid rgba(255, 255, 255, 0.08);
  font-family: var(--manrope, Manrope, sans-serif);
  font-size: 0.8125rem;
  line-height: 1.55;
  font-style: normal;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(205, 200, 200, 0.88);
}

/* Large / plain core variations: same shell, scale type */
blockquote.wp-block-quote.is-style-large {
  font-size: clamp(1.15rem, 2.35vw, 1.45rem);
  line-height: 1.62;
  font-weight: 500;
}

blockquote.wp-block-quote.is-style-plain {
  box-shadow: none;
  background: rgba(255, 255, 255, 0.03);
}

blockquote.wp-block-quote.is-style-plain::after {
  opacity: 0.45;
}
