:root {
  --statusko-color-accent: #f08319;
  --statusko-color-text: #3f3f3f;
  --statusko-color-muted: #747474;
  --statusko-color-surface: #ffffff;
  --statusko-color-page: #f7f8f9;
  --statusko-page-max: 1232px;
  --statusko-content-max: 908px;
  --statusko-sidebar-width: 292px;
  --statusko-layout-gap: 32px;
  --statusko-page-gutter: 24px;
  --statusko-section-space: 56px;
  --statusko-panel-radius: 32px;
  --statusko-card-radius: 24px;
  --statusko-shadow-panel: 0 16px 40px rgba(63, 63, 63, 0.07);
  --statusko-shadow-sticky: 0 24px 48px rgba(63, 63, 63, 0.1),
    0 8px 20px rgba(63, 63, 63, 0.07);
  --statusko-card-hover-border: #f08319;
  --statusko-card-hover-shadow: 0 10px 24px rgba(63, 63, 63, 0.07);
  --statusko-card-hover-lift: translateY(-2px);
  --statusko-card-hover-speed: 0.22s;
  --statusko-button-bg: #f08319;
  --statusko-button-hover: linear-gradient(90deg, #ffb06e 6%, #ee8228 74%);
  --statusko-button-shadow: 0 8px 20px rgba(240, 131, 25, 0.2);
}

:is(
  .btn-arrow,
  .langs__btn,
  .services-search__button,
  .statusko-order-card .ff-btn-submit,
  .statusko-service-main-button,
  .statusko-service-category:not(.statusko-service-category--featured) .statusko-service-category__button,
  .statusko-about__btn--primary,
  .fluentform_wrapper_3 .ff-btn-submit,
  .statusko-contact-card .ff-btn-submit,
  .statusko-service-request__form .ff-btn-submit,
  .blog-search__submit,
  .statusko-hero__button .kt-button,
  .statusko-hero__button .kb-button,
  .statusko-hero__button .wp-block-button__link,
  .statusko-hero__button a
) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  min-height: 48px !important;
  padding: 16px 32px !important;
  border: 0 !important;
  border-radius: 32px !important;
  background: var(--statusko-button-bg) !important;
  box-shadow: none !important;
  color: #ffffff !important;
  font-family: "Mulish", sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: background 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease !important;
}

:is(
  .btn-arrow,
  .langs__btn,
  .services-search__button,
  .statusko-order-card .ff-btn-submit,
  .statusko-service-main-button,
  .statusko-service-category:not(.statusko-service-category--featured) .statusko-service-category__button,
  .statusko-about__btn--primary,
  .fluentform_wrapper_3 .ff-btn-submit,
  .statusko-contact-card .ff-btn-submit,
  .statusko-service-request__form .ff-btn-submit,
  .blog-search__submit,
  .statusko-hero__button .kt-button,
  .statusko-hero__button .kb-button,
  .statusko-hero__button .wp-block-button__link,
  .statusko-hero__button a
):not(.is-disabled):not(:disabled):not([aria-disabled="true"]):hover {
  background: var(--statusko-button-hover) !important;
  box-shadow: var(--statusko-button-shadow) !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

:is(
  .btn-arrow,
  .langs__btn,
  .services-search__button,
  .statusko-order-card .ff-btn-submit,
  .statusko-service-main-button,
  .statusko-service-category:not(.statusko-service-category--featured) .statusko-service-category__button,
  .statusko-about__btn--primary,
  .fluentform_wrapper_3 .ff-btn-submit,
  .statusko-contact-card .ff-btn-submit,
  .statusko-service-request__form .ff-btn-submit,
  .blog-search__submit,
  .statusko-hero__button .kt-button,
  .statusko-hero__button .kb-button,
  .statusko-hero__button .wp-block-button__link,
  .statusko-hero__button a
):focus-visible {
  outline: 2px solid rgba(240, 131, 25, 0.32) !important;
  outline-offset: 3px;
}

:is(
  .services-search__button,
  .statusko-order-card .ff-btn-submit,
  .statusko-contact-card .ff-btn-submit,
  .statusko-service-request__form .ff-btn-submit
):is(.is-disabled, :disabled, [aria-disabled="true"]) {
  background: #cccccc !important;
  box-shadow: none !important;
  cursor: default !important;
  transform: none !important;
}

@media (prefers-reduced-motion: reduce) {
  :is(
    .btn-arrow,
    .langs__btn,
    .services-search__button,
    .statusko-order-card .ff-btn-submit,
    .statusko-service-main-button,
    .statusko-service-category:not(.statusko-service-category--featured) .statusko-service-category__button,
    .statusko-about__btn--primary,
    .fluentform_wrapper_3 .ff-btn-submit,
    .statusko-contact-card .ff-btn-submit,
    .statusko-service-request__form .ff-btn-submit,
    .blog-search__submit,
    .statusko-hero__button .kt-button,
    .statusko-hero__button .kb-button,
    .statusko-hero__button .wp-block-button__link,
    .statusko-hero__button a
  ) {
    transition: none !important;
  }
}

:is(
  .statusko-about__service-card,
  .statusko-about__step,
  .statusko-about__advantage,
  .statusko-services-section__card,
  .statusko-service-card,
  .services-grid-card__item a
) {
  transition: border-color var(--statusko-card-hover-speed) ease,
    box-shadow var(--statusko-card-hover-speed) ease,
    transform var(--statusko-card-hover-speed) ease;
}

:is(
  .statusko-about__service-card,
  .statusko-about__step,
  .statusko-about__advantage,
  .statusko-services-section__card,
  .statusko-service-card,
  .services-grid-card__item a
):is(:hover, :focus-visible, :focus-within) {
  border-color: var(--statusko-card-hover-border);
  box-shadow: var(--statusko-card-hover-shadow);
  transform: var(--statusko-card-hover-lift);
}

.statusko-service-page,
.statusko-about,
.statusko-services-overview,
.statusko-faq-layout {
  width: calc(100% - (var(--statusko-page-gutter) * 2));
  max-width: var(--statusko-page-max);
  margin-inline: auto;
}

.statusko-service-layout,
.statusko-about__layout,
.statusko-faq-layout {
  grid-template-columns: minmax(0, var(--statusko-content-max)) var(--statusko-sidebar-width);
  gap: var(--statusko-layout-gap);
}

.services-grid-block,
.statusko-advantages,
.statusko-stages,
.statusko-service-summary__body,
.statusko-service-request,
.statusko-service-category {
  max-width: var(--statusko-content-max);
}

.statusko-order-card {
  width: 100%;
  max-width: var(--statusko-sidebar-width);
}

.statusko-about__hero,
.statusko-about__toc,
.statusko-about__intro,
.statusko-about__section,
.statusko-about__cta,
.statusko-advantages {
  border-radius: var(--statusko-panel-radius);
  box-shadow: var(--statusko-shadow-panel);
}

/* Home stays editable in Gutenberg; only its code blocks share this geometry. */
.home .services-grid-block,
.home .statusko-advantages,
.home .statusko-stages {
  width: 100%;
  max-width: var(--statusko-content-max);
}

@media (max-width: 1024px) {
  :root {
    --statusko-page-gutter: 20px;
    --statusko-layout-gap: 24px;
    --statusko-section-space: 48px;
  }

  .statusko-service-layout,
  .statusko-about__layout,
  .statusko-faq-layout {
    grid-template-columns: minmax(0, 1fr);
  }

  .statusko-service-layout > *,
  .statusko-about__layout > *,
  .statusko-faq-layout > * {
    min-width: 0;
  }

  .statusko-service-page,
  .statusko-about,
  .statusko-services-overview,
  .statusko-faq-layout,
  .statusko-has-faq-layout .entry-content.is-layout-constrained > .statusko-faq-layout,
  .home .services-grid-block,
  .home .statusko-advantages,
  .home .statusko-stages,
  .home .langs,
  .home .statusko-testimonials-brands {
    position: relative;
    left: 50%;
    width: min(calc(100vw - 40px), var(--statusko-page-max)) !important;
    margin-inline: 0 !important;
    transform: translateX(-50%);
  }

  .home .services-grid-block,
  .home .statusko-advantages,
  .home .statusko-stages,
  .home .langs,
  .home .statusko-testimonials-brands {
    max-width: var(--statusko-content-max) !important;
  }
}

@media (max-width: 767px) {
  :root {
    --statusko-page-gutter: 10px;
    --statusko-layout-gap: 20px;
    --statusko-section-space: 40px;
    --statusko-panel-radius: 24px;
    --statusko-card-radius: 20px;
  }

  .statusko-order-card {
    max-width: none;
  }

  /* Blocksy content widths vary by page type, so anchor to the viewport for a consistent 10px gutter. */
  .statusko-service-page,
  .statusko-about,
  .statusko-services-overview,
  .statusko-faq-layout,
  .statusko-has-faq-layout .entry-content.is-layout-constrained > .statusko-faq-layout,
  .home .services-grid-block,
  .home .statusko-advantages,
  .home .statusko-stages,
  .home .langs,
  .home .statusko-testimonials-brands {
    position: relative;
    left: 50%;
    width: calc(100vw - 20px) !important;
    max-width: 430px !important;
    margin-inline: 0 !important;
    transform: translateX(-50%);
  }
}
