:root {
  --bd4-navy: #0b1f3a;
  --bd4-navy-2: #102b4f;
  --bd4-blue: #1f5eea;
  --bd4-blue-dark: #1748b5;
  --bd4-blue-soft: #eaf2ff;
  --bd4-ink: #17243a;
  --bd4-muted: #56657a;
  --bd4-line: #d8e3ef;
  --bd4-soft: #f3f7fc;
  --bd4-white: #ffffff;
  --bd4-radius: 18px;
  --bd4-shadow: 0 24px 64px rgba(11, 31, 58, 0.12);
}

html {
  scroll-behavior: smooth;
}

#wrap_all {
  overflow-x: clip;
}

#top.bd4-site .bd4-page-hero > .container > .content,
#top.bd4-site .bd4-hero > .container > .content {
  animation: bd4-intro-rise 900ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

#top.bd4-site .bd4-page-hero + .bd4-section .bd4-section-head,
#top.bd4-site .bd4-hero + .bd4-section .bd4-section-head {
  animation: bd4-intro-rise 760ms 180ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes bd4-intro-rise {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  #top.bd4-site .bd4-page-hero > .container > .content,
  #top.bd4-site .bd4-hero > .container > .content,
  #top.bd4-site .bd4-page-hero + .bd4-section .bd4-section-head,
  #top.bd4-site .bd4-hero + .bd4-section .bd4-section-head {
    animation: none;
  }
}

/*
 * Enfold wraps these Advanced Layout Builder pages in its regular content
 * container before rendering the color sections. Remove only that outer
 * frame so section backgrounds run edge to edge; each section keeps its own
 * inner .container for readable content widths.
 */
#top.bd4-site:is(
  .page-id-513,
  .page-id-862,
  .page-id-863,
  .page-id-864,
  .page-id-865,
  .page-id-866,
  .page-id-868,
  .page-id-1131,
  .page-id-1132,
  .page-id-1171
) #main > .container_wrap_first > .container {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
  width: 100%;
}

#top.bd4-site:is(
  .page-id-513,
  .page-id-862,
  .page-id-863,
  .page-id-864,
  .page-id-865,
  .page-id-866,
  .page-id-868,
  .page-id-1131,
  .page-id-1132,
  .page-id-1171
) #main > .container_wrap_first > .container > .content {
  margin: 0;
  padding-bottom: 0;
  padding-top: 0;
  width: 100%;
}

#top.bd4-site:is(
  .page-id-513,
  .page-id-862,
  .page-id-863,
  .page-id-864,
  .page-id-865,
  .page-id-866,
  .page-id-868,
  .page-id-1131,
  .page-id-1132,
  .page-id-1171
) #main > .container_wrap_first > .container > .content > .post-entry > .entry-content-wrapper > p:empty {
  display: none;
}

#top,
#top p,
#top li,
#top input,
#top textarea,
#top select,
#top button {
  color: var(--bd4-ink);
  font-size: 17px;
  line-height: 1.65;
}

#top h1,
#top h2,
#top h3,
#top h4 {
  color: var(--bd4-navy);
  font-weight: 800;
  letter-spacing: -0.025em;
  line-height: 1.12;
  overflow-wrap: anywhere;
  text-transform: none;
}

#top h1,
#top .bd4-title {
  font-size: clamp(38px, 5vw, 56px);
}

#top h2,
#top .bd4-section-title {
  font-size: clamp(34px, 4vw, 40px);
}

#top h3 {
  font-size: clamp(22px, 2.2vw, 26px);
}

#top p {
  margin: 0 0 1em;
}

#top a {
  text-underline-offset: 3px;
}

#top a:focus-visible,
#top button:focus-visible,
#top input:focus-visible,
#top textarea:focus-visible,
#top select:focus-visible,
#top summary:focus-visible {
  outline: 3px solid #075dcc !important;
  outline-offset: 3px;
  box-shadow: 0 0 0 2px #fff !important;
}

.bd4-measure,
.bd4-measure p,
.bd4-measure li,
.bd4-intro,
.bd4-page-lead {
  max-width: 65ch;
}

.bd4-eyebrow {
  display: inline-block;
  margin: 0 0 14px;
  color: var(--bd4-blue-dark);
  font-size: 14px;
  font-weight: 850;
  letter-spacing: 0.09em;
  line-height: 1.4;
  text-transform: uppercase;
}

.bd4-eyebrow-light {
  color: #9fc1ff;
}

.bd4-section .content {
  padding-bottom: 72px;
  padding-top: 72px;
}

/*
 * Keep every generated page hero on the same spacing rhythm. Target the
 * section's own content wrapper so nested builder content cannot affect it,
 * and override Enfold's per-page section padding consistently.
 */
#top .bd4-page-hero > .container > .content {
  padding-bottom: 72px !important;
  padding-top: 72px !important;
}

.bd4-section-soft {
  background: var(--bd4-soft) !important;
}

.bd4-section-blue {
  background: var(--bd4-blue-soft) !important;
}

.bd4-section-dark {
  background: var(--bd4-navy) !important;
}

.bd4-section-dark h1,
.bd4-section-dark h2,
.bd4-section-dark h3,
.bd4-section-dark p,
.bd4-section-dark li,
.bd4-page-hero h1,
.bd4-page-hero p {
  color: #fff !important;
}

.bd4-section-head {
  margin-bottom: 38px;
  max-width: 760px;
}

.bd4-section-head h2 {
  margin-bottom: 16px;
}

.bd4-button,
#top .bd4-button .avia_iconbox_title,
#top .bd4-button .avia-button,
#top .bd4-button-primary .avia-button,
#top .bd4-button-secondary .avia-button {
  font-weight: 800;
}

#top .bd4-button .avia-button,
.bd4-button:not(.avia-button-wrap) {
  align-items: center;
  border: 2px solid transparent;
  border-radius: 10px;
  display: inline-flex;
  justify-content: center;
  min-height: 52px;
  padding: 11px 22px;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

#top .bd4-button-primary .avia-button,
.bd4-button-primary:not(.avia-button-wrap) {
  background: var(--bd4-blue) !important;
  border-color: var(--bd4-blue) !important;
  color: #fff !important;
}

#top .bd4-button-primary .avia-button:hover,
.bd4-button-primary:not(.avia-button-wrap):hover {
  background: var(--bd4-blue-dark) !important;
  border-color: var(--bd4-blue-dark) !important;
  transform: translateY(-2px);
}

#top .bd4-button-secondary .avia-button,
.bd4-button-secondary:not(.avia-button-wrap) {
  background: #fff !important;
  border-color: var(--bd4-line) !important;
  color: var(--bd4-navy) !important;
}

#top .bd4-button-secondary .avia-button:hover,
.bd4-button-secondary:not(.avia-button-wrap):hover {
  border-color: var(--bd4-blue) !important;
  color: var(--bd4-blue-dark) !important;
}

.bd4-text-link {
  align-items: center;
  color: var(--bd4-blue-dark) !important;
  display: inline-flex;
  font-weight: 800;
  min-height: 44px;
}

/* Header and footer */
#header_main {
  border-bottom: 1px solid rgba(11, 31, 58, 0.08);
}

#top .main_menu .menu > li > a {
  font-size: 15px;
  font-weight: 750;
  min-height: 44px;
  min-width: 44px;
}

#top .main_menu .menu > li.bd-nav-cta > a .avia-menu-text {
  background: var(--bd4-blue);
  border-radius: 9px;
  color: #fff;
  display: inline-block;
  line-height: 1;
  padding: 13px 16px;
}

#top .main_menu .menu > li.bd-nav-cta > a:hover .avia-menu-text,
#top .main_menu .menu > li.bd-nav-cta.current-menu-item > a .avia-menu-text {
  background: var(--bd4-blue-dark);
  color: #fff;
}

#top #header .main_menu .menu > li.bd-nav-cta > a > .avia-menu-fx,
#top #header .main_menu .menu > li.bd-nav-phone > a > .avia-menu-fx,
#top #header .main_menu .menu > li.bd-nav-cta.current-menu-item > a > .avia-menu-fx,
#top #header .main_menu .menu > li.bd-nav-cta.current_page_item > a > .avia-menu-fx {
  display: none !important;
  height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  width: 0 !important;
}

#top #header .main_menu .menu > li.bd-nav-cta > a,
#top #header .main_menu .menu > li.bd-nav-cta > a:hover,
#top #header .main_menu .menu > li.bd-nav-cta > a:focus,
#top #header .main_menu .menu > li.bd-nav-cta.current-menu-item > a,
#top #header .main_menu .menu > li.bd-nav-cta.current_page_item > a {
  border-bottom: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
}

#top #header li.bd-nav-cta > a > .avia-menu-fx,
#top #header li.bd-nav-cta > a > .avia-menu-fx::before,
#top #header li.bd-nav-cta > a > .avia-menu-fx::after {
  display: none !important;
}

#top .main_menu .menu > li.bd-nav-phone > a {
  color: var(--bd4-navy);
  font-weight: 850;
  white-space: nowrap;
}

#top .main_menu .sub-menu a {
  align-items: center;
  display: flex;
  min-height: 44px;
}

#top .av-main-nav > li.bd-nav-open,
#top .av-main-nav > li:focus-within {
  z-index: 100;
}

#top .av-main-nav > li.bd-nav-open > .sub-menu,
#top .av-main-nav > li.bd-nav-open > .avia_mega_div,
#top .av-main-nav > li:focus-within > .sub-menu,
#top .av-main-nav > li:focus-within > .avia_mega_div {
  display: block;
}

#top #av-burger-menu-ul a {
  min-height: 48px;
}

#top #av-burger-menu-ul > .bd-nav-cta {
  border-top: 1px solid rgba(127, 151, 180, 0.35);
  margin-top: 14px;
  padding-top: 14px;
}

#top #wrap_all #av-burger-menu-ul > .bd-nav-cta > a {
  align-items: center;
  background: var(--bd4-blue) !important;
  border: 0 !important;
  border-radius: 10px;
  color: #fff !important;
  display: flex;
  justify-content: center;
  line-height: 1.3;
  margin: 8px clamp(24px, 8vw, 50px) 4px;
  min-height: 48px;
  padding: 12px 18px;
  width: auto;
}

#top #wrap_all #av-burger-menu-ul > .bd-nav-cta > a:hover,
#top #wrap_all #av-burger-menu-ul > .bd-nav-cta > a:focus-visible {
  background: var(--bd4-blue-dark) !important;
  opacity: 1;
}

#top #av-burger-menu-ul .bd-nav-phone > a {
  color: var(--bd4-blue-dark) !important;
  font-size: 18px;
  font-weight: 850;
}

#top #wrap_all #av-burger-menu-ul > .bd-nav-phone > a {
  align-items: center;
  display: flex;
  justify-content: center;
  margin: 0 clamp(24px, 8vw, 50px);
  min-height: 48px;
  padding-bottom: 12px;
  padding-top: 12px;
  width: auto;
}

#footer {
  background: var(--bd4-navy);
  border: 0;
  padding: 44px 0 24px;
}

#footer,
#footer p,
#footer li,
#footer a,
#footer h3 {
  color: #dbe8f8;
}

#footer h3 {
  font-size: 18px;
  letter-spacing: 0;
}

#footer a:hover {
  color: #fff;
}

#footer a,
#socket a {
  align-items: center;
  display: inline-flex;
  max-width: 100%;
  min-height: 44px;
  min-width: 44px;
  overflow-wrap: anywhere;
}

#footer ul {
  margin-left: 0;
}

#footer li {
  list-style: none;
  margin: 0 0 8px;
}

.bd-footer-logo {
  background: #fff;
  border-radius: 10px;
  box-sizing: border-box;
  height: auto;
  margin-bottom: 18px;
  max-width: 100%;
  padding: 8px 10px;
  width: 220px;
}

.bd-footer-meta {
  color: #a9bbd2 !important;
  font-size: 14px !important;
}

#socket {
  background: #07162a;
  border: 0;
}

#socket .container {
  min-height: 44px;
  padding-bottom: 10px;
  padding-top: 10px;
}

/* Hero */
.bd4-hero {
  background: radial-gradient(circle at 78% 20%, rgba(42, 102, 245, 0.24), transparent 34%), var(--bd4-navy) !important;
}

.bd4-hero .content {
  padding-bottom: 58px;
  padding-top: 58px;
}

.bd4-hero .entry-content-wrapper {
  align-items: center;
  display: flex;
  gap: 5%;
}

.bd4-hero .flex_column {
  margin-left: 0 !important;
  width: 47.5% !important;
}

.bd4-hero h1,
.bd4-hero p {
  color: #fff !important;
}

.bd4-hero h1 {
  margin-bottom: 22px;
  max-width: 22ch;
}

#top .bd4-hero h1 {
  font-size: clamp(48px, 4vw, 54px);
}

.bd4-hero .bd4-hero-copy {
  width: 56% !important;
}

.bd4-hero .bd4-hero-visual {
  width: 39% !important;
}

.bd4-hero-lead {
  color: #d8e6f8 !important;
  font-size: clamp(18px, 2vw, 21px) !important;
  max-width: 58ch;
}

.bd4-hero-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.bd4-hero-copy .avia-button-wrap {
  display: inline-block;
  margin: 10px 10px 0 0;
}

.bd4-page-hero .avia-button-wrap {
  display: inline-block;
  margin: 18px 10px 0 0;
}

.bd4-cta-actions .avia-button-wrap {
  display: block;
  margin: 8px 0;
}

.bd4-hero-visual {
  position: relative;
}

.bd4-hero-visual::after {
  background: var(--bd4-blue);
  border-radius: 999px;
  bottom: -16px;
  content: '';
  height: 72px;
  opacity: 0.8;
  position: absolute;
  right: -22px;
  width: 72px;
  z-index: 0;
}

.bd4-hero-visual .avia-image-container-inner {
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 22px;
  box-shadow: 0 32px 90px rgba(0, 0, 0, 0.38);
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.bd4-hero-visual img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
  width: 100%;
}

/* Product proof and interface previews */
.bd4-hero .bd4-hero-product {
  min-width: 0;
  width: 39% !important;
}

.bd4-hero-product .avia_textblock,
.bd4-laravel-hero-visual .avia_textblock {
  overflow: visible;
}

.bd4-hero-composition {
  isolation: isolate;
  min-height: 510px;
  position: relative;
  width: 100%;
}

.bd4-hero-composition::before {
  background: rgba(31, 94, 234, 0.34);
  border-radius: 999px;
  content: '';
  filter: blur(1px);
  height: 150px;
  position: absolute;
  right: -30px;
  top: 76px;
  width: 150px;
  z-index: -1;
}

.bd4-hero-site-proof,
.bd4-dashboard-demo {
  box-sizing: border-box;
  margin: 0;
  max-width: 100%;
}

.bd4-hero-site-proof {
  background: #fff;
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 18px;
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.34);
  left: 0;
  padding: 10px;
  position: absolute;
  top: 0;
  width: 96%;
  z-index: 1;
}

.bd4-hero-site-proof figcaption {
  align-items: center;
  color: var(--bd4-navy);
  display: flex;
  flex-wrap: wrap;
  gap: 5px 10px;
  justify-content: space-between;
  min-height: 34px;
  padding: 0 4px 8px;
}

.bd4-hero-site-proof figcaption span {
  color: var(--bd4-blue-dark);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.bd4-hero-site-proof figcaption strong {
  color: var(--bd4-navy);
  font-size: 13px;
}

.bd4-browser-frame,
.bd4-responsive-desktop {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-radius: 13px;
  box-sizing: border-box;
  overflow: hidden;
}

.bd4-browser-frame img,
.bd4-responsive-desktop img,
.bd4-responsive-mobile img {
  display: block;
  height: auto;
  max-width: 100%;
  width: 100%;
}

.bd4-browser-bar {
  align-items: center;
  background: #eef3f9;
  border-bottom: 1px solid var(--bd4-line);
  box-sizing: border-box;
  display: flex;
  gap: 6px;
  height: 32px;
  min-width: 0;
  padding: 0 11px;
}

.bd4-browser-bar i {
  background: #a9b8ca;
  border-radius: 999px;
  flex: 0 0 7px;
  height: 7px;
  width: 7px;
}

.bd4-browser-bar i:first-child {
  background: #7394bd;
}

.bd4-browser-bar span {
  background: #fff;
  border: 1px solid #dce5ef;
  border-radius: 999px;
  color: var(--bd4-muted);
  display: block;
  font-size: 10px;
  line-height: 1.2;
  margin-left: 5px;
  overflow: hidden;
  padding: 4px 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bd4-dashboard-demo {
  background: #fff;
  border: 1px solid rgba(216, 227, 239, 0.95);
  border-radius: 18px;
  box-shadow: 0 28px 75px rgba(4, 16, 32, 0.34);
  overflow: hidden;
  width: 100%;
}

.bd4-dashboard-demo,
.bd4-dashboard-demo * {
  box-sizing: border-box;
}

.bd4-dashboard-demo figcaption {
  align-items: center;
  background: #fff;
  color: var(--bd4-muted);
  display: flex;
  flex-wrap: wrap;
  font-size: 11px;
  gap: 7px 12px;
  justify-content: space-between;
  min-height: 40px;
  padding: 8px 13px;
}

.bd4-demo-label {
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  display: inline-flex;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: 0.07em;
  padding: 5px 8px;
  text-transform: uppercase;
}

.bd4-dashboard-shell {
  background: #eef3f9;
  display: grid;
  grid-template-columns: 110px minmax(0, 1fr);
  min-height: 390px;
  min-width: 0;
  overflow: hidden;
}

.bd4-dashboard-nav {
  align-content: start;
  background: var(--bd4-navy);
  color: #dce8f8;
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 17px 12px;
}

.bd4-dashboard-nav b {
  align-items: center;
  background: var(--bd4-blue);
  border-radius: 8px;
  color: #fff;
  display: inline-flex;
  font-size: 11px;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.bd4-dashboard-nav strong {
  color: #fff;
  font-size: 12px;
  margin: 1px 0 9px;
}

.bd4-dashboard-nav span {
  border-radius: 7px;
  color: #b9c9dd;
  display: block;
  font-size: 9px;
  font-weight: 750;
  line-height: 1.25;
  overflow: hidden;
  padding: 7px 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bd4-dashboard-nav span.is-active {
  background: rgba(95, 152, 255, 0.22);
  color: #fff;
}

.bd4-dashboard-main {
  display: block;
  min-width: 0;
  overflow: hidden;
  padding: 17px;
}

.bd4-dashboard-main > header {
  align-items: center;
  display: flex;
  gap: 12px;
  justify-content: space-between;
  min-width: 0;
}

.bd4-dashboard-main > header div {
  display: grid;
  min-width: 0;
}

.bd4-dashboard-main > header small {
  color: var(--bd4-muted);
  font-size: 8px;
}

.bd4-dashboard-main > header strong {
  color: var(--bd4-navy);
  font-size: 14px;
  line-height: 1.25;
}

.bd4-dashboard-action,
.bd4-dashboard-form > span {
  background: var(--bd4-blue);
  border-radius: 7px;
  color: #fff;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 8px;
  font-weight: 850;
  justify-content: center;
  line-height: 1.2;
  padding: 7px 9px;
}

.bd4-dashboard-stats {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 14px 0;
}

.bd4-dashboard-stats > div {
  background: #fff;
  border: 1px solid #dce5ef;
  border-radius: 9px;
  display: grid;
  min-width: 0;
  padding: 9px;
}

.bd4-dashboard-stats small {
  color: var(--bd4-muted);
  font-size: 7px;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bd4-dashboard-stats strong {
  color: var(--bd4-navy);
  font-size: 16px;
  line-height: 1.15;
  margin-top: 3px;
}

.bd4-dashboard-workspace {
  align-items: stretch;
  display: grid;
  gap: 9px;
  grid-template-columns: minmax(0, 1.45fr) minmax(126px, 0.75fr);
  min-width: 0;
}

.bd4-dashboard-workspace > section,
.bd4-dashboard-form {
  background: #fff;
  border: 1px solid #dce5ef;
  border-radius: 9px;
  margin: 0;
  min-width: 0;
  overflow: hidden;
}

.bd4-dashboard-toolbar {
  align-items: center;
  border-bottom: 1px solid #e5ebf2;
  display: flex;
  gap: 7px;
  justify-content: space-between;
  min-width: 0;
  padding: 9px;
}

.bd4-dashboard-toolbar strong {
  color: var(--bd4-navy);
  font-size: 9px;
  line-height: 1.25;
}

.bd4-dashboard-toolbar span {
  background: var(--bd4-soft);
  border-radius: 5px;
  color: var(--bd4-muted);
  font-size: 6px;
  line-height: 1.2;
  padding: 4px 5px;
  white-space: nowrap;
}

.bd4-dashboard-table {
  min-width: 0;
  overflow: hidden;
}

.bd4-dashboard-table > div {
  align-items: center;
  border-bottom: 1px solid #edf1f6;
  display: grid;
  gap: 5px;
  grid-template-columns: 0.8fr 1.15fr 0.8fr 0.55fr;
  min-width: 0;
  padding: 8px 9px;
}

.bd4-dashboard-table > div:last-child {
  border-bottom: 0;
}

.bd4-dashboard-table > div > * {
  color: var(--bd4-ink);
  font-size: 7px;
  font-style: normal;
  line-height: 1.2;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bd4-dashboard-table > div.is-head {
  background: #f8fafc;
}

.bd4-dashboard-table > div.is-head > span {
  color: var(--bd4-muted);
  font-size: 6px;
  font-weight: 850;
  text-transform: uppercase;
}

.bd4-dashboard-table i {
  border-radius: 999px;
  display: inline-block;
  font-weight: 850;
  padding: 4px 5px;
  text-align: center;
}

.bd4-dashboard-table i.is-new {
  background: var(--bd4-blue-soft);
  color: var(--bd4-blue-dark);
}

.bd4-dashboard-table i.is-progress {
  background: #fff4d8;
  color: #8a5a00;
}

.bd4-dashboard-table i.is-done {
  background: #e5f7ee;
  color: #16764a;
}

.bd4-dashboard-table b {
  color: var(--bd4-blue-dark);
}

.bd4-dashboard-form {
  align-content: start;
  display: grid;
  gap: 7px;
  padding: 10px;
}

.bd4-dashboard-form > strong {
  color: var(--bd4-navy);
  font-size: 9px;
  line-height: 1.25;
  margin-bottom: 2px;
}

.bd4-dashboard-field {
  color: var(--bd4-muted);
  display: grid;
  font-size: 6px;
  font-weight: 800;
  gap: 3px;
  line-height: 1.2;
  margin: 0;
}

.bd4-dashboard-control {
  background: #f8fafc;
  border: 1px solid #dce5ef;
  border-radius: 5px;
  box-shadow: none;
  box-sizing: border-box;
  color: var(--bd4-ink);
  display: block;
  font-family: inherit;
  font-size: 7px !important;
  height: auto;
  line-height: 1.25;
  margin: 0;
  min-height: 25px;
  padding: 5px 6px;
  width: 100%;
}

.bd4-dashboard-field.is-textarea .bd4-dashboard-control {
  min-height: 44px;
}

.bd4-dashboard-form > span {
  justify-self: start;
  margin-top: 1px;
}

.bd4-dashboard-demo-compact {
  bottom: 0;
  position: absolute;
  right: 0;
  width: 86%;
  z-index: 3;
}

.bd4-dashboard-demo-compact figcaption {
  font-size: 9px;
  min-height: 34px;
  padding: 6px 10px;
}

.bd4-dashboard-demo-compact .bd4-demo-label {
  font-size: 7px;
  padding: 4px 6px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-shell {
  grid-template-columns: 78px minmax(0, 1fr);
  min-height: 245px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-nav {
  gap: 4px;
  padding: 10px 7px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-nav b {
  border-radius: 6px;
  font-size: 8px;
  height: 23px;
  width: 23px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-nav strong {
  font-size: 9px;
  margin-bottom: 4px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-nav span {
  font-size: 6px;
  padding: 5px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-main {
  padding: 10px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-main > header strong {
  font-size: 10px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-action {
  font-size: 6px;
  padding: 5px 6px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-stats {
  gap: 5px;
  margin: 8px 0;
}

.bd4-dashboard-demo-compact .bd4-dashboard-stats > div {
  padding: 6px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-stats small {
  font-size: 5px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-stats strong {
  font-size: 11px;
}

.bd4-dashboard-demo-compact .bd4-dashboard-workspace {
  display: block;
}

.bd4-dashboard-demo-compact .bd4-dashboard-form {
  display: none;
}

.bd4-dashboard-demo-compact .bd4-dashboard-toolbar,
.bd4-dashboard-demo-compact .bd4-dashboard-table > div {
  padding: 6px;
}

/* Services */
.bd4-service-grid {
  display: grid;
  gap: 22px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bd4-service-card {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-radius: var(--bd4-radius);
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 32px;
}

.bd4-service-number {
  color: var(--bd4-blue-dark);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.08em;
}

.bd4-service-card h3 {
  margin: 18px 0 14px;
}

.bd4-service-card p {
  color: var(--bd4-muted) !important;
}

.bd4-service-card ul {
  margin: 4px 0 24px 20px;
}

.bd4-service-card a {
  margin-top: auto;
}

.bd4-included-cta {
  margin: 32px 0 0 !important;
  text-align: center;
}

.bd4-home-pricing .bd4-service-card,
.bd4-services .bd4-service-card {
  border: 1px solid rgba(31, 94, 234, 0.16);
  border-top: 4px solid var(--bd4-blue);
  box-shadow: 0 16px 38px rgba(11, 31, 58, 0.09);
}

.bd4-home-pricing .bd4-service-grid,
.bd4-services .bd4-service-grid {
  gap: 26px;
}

.bd4-visitor-journey {
  display: grid;
  gap: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 40px 0 0;
  padding: 0;
}

.bd4-visitor-journey li {
  margin: 0;
  padding: 0 28px;
  position: relative;
  text-align: center;
}

.bd4-visitor-journey li:not(:last-child)::after {
  background: rgba(31, 94, 234, 0.25);
  content: "";
  height: 2px;
  left: calc(50% + 28px);
  position: absolute;
  right: calc(-50% + 28px);
  top: 25px;
}

.bd4-visitor-journey li > span {
  align-items: center;
  background: var(--bd4-blue);
  border: 6px solid #f3f7fc;
  border-radius: 50%;
  color: #fff;
  display: inline-flex;
  font-size: 13px;
  font-weight: 900;
  height: 52px;
  justify-content: center;
  position: relative;
  width: 52px;
  z-index: 1;
}

.bd4-visitor-journey strong {
  color: var(--bd4-blue-dark);
  display: block;
  font-size: 13px;
  letter-spacing: 0.07em;
  margin-top: 16px;
  text-transform: uppercase;
}

.bd4-visitor-journey h3 {
  margin: 8px 0 10px;
}

#top .bd4-visitor-journey p {
  color: var(--bd4-muted);
  margin: 0;
}

.bd4-preparation-layout {
  align-items: start;
  display: grid;
  gap: 9%;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
}

.bd4-preparation-intro h2 {
  color: #fff !important;
  margin-bottom: 18px;
}

#top .bd4-preparation-copy {
  color: #cbd9eb !important;
  font-size: 18px;
  line-height: 1.7;
  margin: 0;
}

#top .bd4-preparation-cta {
  margin: 28px 0 0;
}

.bd4-preparation-list {
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  list-style: none;
  margin: 0;
  padding: 0;
}

.bd4-preparation-list li {
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  display: grid;
  gap: 20px;
  grid-template-columns: 48px minmax(0, 1fr);
  margin: 0;
  padding: 24px 0;
}

.bd4-preparation-list li > span {
  align-items: center;
  border: 1px solid rgba(118, 162, 255, 0.55);
  border-radius: 50%;
  color: #b9d1ff;
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 44px;
  justify-content: center;
  width: 44px;
}

.bd4-preparation-list strong {
  color: #8fb4ff;
  display: block;
  font-size: 12px;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

.bd4-preparation-list h3 {
  color: #fff !important;
  margin: 5px 0 8px;
}

#top .bd4-preparation-list p {
  color: #cbd9eb !important;
  margin: 0;
}

.bd4-services-hero,
.bd4-laravel-hero {
  background: radial-gradient(circle at 78% 20%, rgba(42, 102, 245, 0.22), transparent 34%), var(--bd4-navy) !important;
}

.bd4-services-hero .entry-content-wrapper,
.bd4-laravel-hero .entry-content-wrapper {
  align-items: center;
  display: flex;
  gap: 5%;
}

.bd4-services-hero .flex_column,
.bd4-laravel-hero .flex_column {
  margin-left: 0 !important;
  min-width: 0;
}

.bd4-services-hero .bd4-services-hero-copy,
.bd4-laravel-hero .bd4-laravel-hero-copy {
  width: 47.5% !important;
}

.bd4-services-hero .bd4-services-choice,
.bd4-laravel-hero .bd4-laravel-hero-visual {
  width: 47.5% !important;
}

.bd4-choice-helper {
  background: #fff;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: var(--bd4-radius);
  box-shadow: 0 28px 72px rgba(0, 0, 0, 0.28);
  box-sizing: border-box;
  color: var(--bd4-ink);
  margin: 0;
  max-width: 100%;
  overflow: hidden;
  padding: 28px 30px 20px;
}

#top .bd4-choice-helper .bd4-choice-kicker {
  color: var(--bd4-blue-dark) !important;
  font-size: 12px !important;
  font-weight: 900;
  letter-spacing: 0.09em;
  margin: 0 0 7px !important;
  text-transform: uppercase;
}

#top .bd4-choice-helper h2 {
  color: var(--bd4-navy) !important;
  font-size: clamp(28px, 3vw, 34px);
  margin: 0 0 17px;
}

.bd4-choice-helper a {
  align-items: center;
  border-top: 1px solid var(--bd4-line);
  display: grid;
  gap: 15px;
  grid-template-columns: minmax(0, 1fr) auto;
  min-width: 0;
  padding: 14px 2px;
  text-decoration: none;
  transition: color 160ms ease, padding 160ms ease;
}

.bd4-choice-helper a:hover,
.bd4-choice-helper a:focus-visible {
  padding-left: 8px;
}

.bd4-choice-helper a > span {
  color: var(--bd4-muted);
  font-size: 14px;
  line-height: 1.35;
  min-width: 0;
}

.bd4-choice-helper a > strong {
  color: var(--bd4-navy);
  font-size: 15px;
  white-space: nowrap;
}

.bd4-choice-helper a i {
  color: var(--bd4-blue);
  font-style: normal;
  margin-left: 3px;
}

.bd4-services-compact .content {
  padding-bottom: 76px;
  padding-top: 76px;
}

.bd4-services-compact {
  background:
    radial-gradient(circle at 8% 15%, rgba(31, 94, 234, 0.08), transparent 28%),
    linear-gradient(180deg, #f8fbff 0%, #f3f7fc 100%) !important;
}

.bd4-services-compact .bd4-section-head {
  margin: 0 auto 38px;
  max-width: 760px;
  text-align: center;
}

.bd4-services-compact .bd4-service-grid-compact {
  align-items: stretch;
  gap: 24px;
}

.bd4-services-compact .bd4-service-grid-compact .bd4-service-card {
  align-items: center;
  background: #fff;
  border: 1px solid rgba(23, 72, 181, 0.14);
  border-radius: 24px;
  box-shadow: 0 18px 50px rgba(11, 31, 58, 0.09);
  isolation: isolate;
  overflow: hidden;
  padding: 36px 30px 30px;
  position: relative;
  text-align: center;
  transition: border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.bd4-services-compact .bd4-service-grid-compact .bd4-service-card::before {
  background: var(--bd4-blue-soft);
  content: "";
  height: 8px;
  inset: 0 0 auto;
  position: absolute;
}

.bd4-services-compact .bd4-service-grid-compact .bd4-service-card::after {
  content: none;
}

.bd4-services-compact .bd4-service-grid-compact .bd4-service-card:hover {
  border-color: rgba(31, 94, 234, 0.32);
  box-shadow: 0 24px 60px rgba(11, 31, 58, 0.14);
  transform: translateY(-5px);
}

.bd4-services-compact .bd4-service-grid-compact .bd4-service-number {
  background: var(--bd4-blue-soft);
  border: 1px solid rgba(31, 94, 234, 0.12);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  display: inline-flex;
  font-size: 12px;
  justify-content: center;
  letter-spacing: 0.055em;
  line-height: 1.3;
  min-height: 0;
  padding: 8px 12px;
  text-transform: uppercase;
}

.bd4-services-compact .bd4-service-grid-compact .bd4-service-card h3 {
  margin: 20px 0 14px;
  max-width: 320px;
}

#top .bd4-services-compact .bd4-service-grid-compact .bd4-service-card > p {
  font-size: 16px !important;
  line-height: 1.65;
  margin-bottom: 22px;
  max-width: 340px;
}

.bd4-services-compact .bd4-service-grid-compact .bd4-service-card ul {
  display: grid;
  gap: 8px;
  list-style: none;
  margin: 0 0 28px;
  max-width: 340px;
  padding: 0;
  width: 100%;
}

.bd4-services-compact .bd4-service-grid-compact .bd4-service-card li {
  background: rgba(234, 242, 255, 0.72);
  border-radius: 10px;
  color: var(--bd4-ink);
  font-size: 15px !important;
  line-height: 1.4;
  padding: 10px 12px;
  text-align: center;
}

#top .bd4-services-compact .bd4-service-grid-compact .bd4-button {
  align-self: center;
  background: var(--bd4-blue) !important;
  border-color: var(--bd4-blue) !important;
  border-radius: 10px;
  margin-top: auto;
  min-width: 210px;
  width: auto;
}

#top .bd4-services-compact .bd4-service-grid-compact .bd4-button:hover,
#top .bd4-services-compact .bd4-service-grid-compact .bd4-button:focus-visible {
  background: var(--bd4-blue-dark) !important;
  border-color: var(--bd4-blue-dark) !important;
}

#top .bd4-services .bd4-service-card .bd4-button {
  align-self: center;
  background: var(--bd4-blue) !important;
  border-color: var(--bd4-blue) !important;
  color: #fff !important;
  margin-top: auto;
  text-decoration: none;
}

#top .bd4-services .bd4-service-card .bd4-button:hover,
#top .bd4-services .bd4-service-card .bd4-button:focus-visible {
  background: var(--bd4-blue-dark) !important;
  border-color: var(--bd4-blue-dark) !important;
}

/* Complete services page */
.bd4-service-anchor {
  display: block;
  height: 0;
  scroll-margin-top: 120px;
  width: 0;
}

.bd4-service-detail .entry-content-wrapper {
  align-items: center;
  display: flex;
  gap: 5%;
}

.bd4-service-detail .flex_column {
  margin-left: 0 !important;
  min-width: 0;
}

.bd4-service-detail .bd4-service-detail-copy {
  width: 40% !important;
}

.bd4-service-detail .bd4-service-detail-visual {
  width: 55% !important;
}

#top .bd4-service-intro {
  color: var(--bd4-muted);
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 25px;
}

.bd4-service-detail-points {
  display: grid;
  gap: 10px;
  list-style: none;
  margin: 0 0 28px;
  padding: 0;
}

.bd4-service-detail-points li {
  background: var(--bd4-soft);
  border-left: 3px solid var(--bd4-blue);
  border-radius: 0 11px 11px 0;
  display: grid;
  gap: 3px;
  padding: 13px 15px;
}

.bd4-service-detail-points strong {
  color: var(--bd4-navy);
  font-size: 15px;
}

.bd4-service-detail-points span {
  color: var(--bd4-muted);
  font-size: 14px;
  line-height: 1.5;
}

#top .bd4-detail-page-link {
  margin: 13px 0 0;
}

.bd4-text-link-light {
  color: #b9d1ff !important;
}

.bd4-service-detail-laravel {
  background: radial-gradient(circle at 82% 24%, rgba(42, 102, 245, 0.2), transparent 34%), var(--bd4-navy) !important;
}

#top .bd4-service-detail-laravel .bd4-service-intro {
  color: #d4e3f6 !important;
}

.bd4-service-detail-points-dark li {
  background: rgba(255, 255, 255, 0.08);
  border-left-color: #76a2ff;
}

.bd4-service-detail-points-dark strong {
  color: #fff;
}

.bd4-service-detail-points-dark span {
  color: #d4e3f6;
}

.bd4-service-package-row {
  align-items: stretch;
  display: grid;
  gap: 22px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bd4-service-package-row article {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-radius: var(--bd4-radius);
  box-shadow: 0 14px 36px rgba(11, 31, 58, 0.07);
  padding: 28px;
}

.bd4-service-package-row article.is-featured {
  border: 2px solid var(--bd4-blue);
  box-shadow: 0 18px 44px rgba(11, 31, 58, 0.13);
  padding: 27px;
}

.bd4-service-package-row article > span {
  color: var(--bd4-blue-dark);
  display: block;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.055em;
  line-height: 1.4;
  min-height: 2.8em;
  text-transform: uppercase;
}

.bd4-service-package-row h3 {
  margin: 15px 0 7px;
}

.bd4-service-package-row article > strong {
  color: var(--bd4-navy);
  display: block;
  font-size: clamp(28px, 3vw, 36px);
  letter-spacing: -0.035em;
  line-height: 1.15;
  margin-bottom: 15px;
}

#top .bd4-service-package-row p {
  color: var(--bd4-muted);
  font-size: 15px;
  margin: 0;
}

.bd4-package-cta {
  margin: 32px 0 0 !important;
  text-align: center;
}

.bd4-services-hosting .bd4-section-head,
.bd4-services-system-prices .bd4-section-head,
.bd4-services-package-section .bd4-section-head {
  max-width: 800px;
}

.bd4-services-hosting .bd4-management-grid {
  margin-top: 34px;
}

.bd4-services-process .bd4-section-head {
  max-width: 820px;
}

/* Cases and project proof */
.bd4-case .entry-content-wrapper,
.bd4-personal .entry-content-wrapper,
.bd4-split .entry-content-wrapper {
  align-items: center;
  display: flex;
  gap: 6%;
}

.bd4-case .flex_column,
.bd4-personal .flex_column,
.bd4-split .flex_column {
  margin-left: 0 !important;
}

.bd4-case-image .avia-image-container-inner,
.bd4-project-showcase .avia-image-container-inner {
  border-radius: 22px;
  box-shadow: var(--bd4-shadow);
  overflow: hidden;
}

.bd4-case-image img {
  aspect-ratio: 4 / 3;
  object-fit: cover;
  width: 100%;
}

.bd4-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 22px 0;
}

.bd4-tags span {
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  font-size: 13px;
  font-weight: 800;
  padding: 6px 11px;
}

.bd4-case-facts {
  border-top: 1px solid var(--bd4-line);
  margin: 24px 0;
}

.bd4-case-facts > div {
  border-bottom: 1px solid var(--bd4-line);
  display: grid;
  gap: 20px;
  grid-template-columns: 130px 1fr;
  padding: 13px 0;
}

.bd4-case-facts dt {
  color: var(--bd4-navy);
  font-weight: 850;
}

.bd4-case-facts dd {
  margin: 0;
}

/* Homepage case: a single organic story, not a pair of content cards. */
.bd4-home-case {
  background:
    radial-gradient(circle at 8% 16%, rgba(14, 116, 202, 0.11) 0 3px, transparent 4px),
    radial-gradient(circle at 93% 78%, rgba(14, 165, 233, 0.09) 0 2px, transparent 3px),
    #edf6ff !important;
  background-size: 38px 38px, 30px 30px, auto;
  overflow: hidden;
  position: relative;
}

.bd4-home-case::before,
.bd4-home-case::after {
  content: "";
  pointer-events: none;
  position: absolute;
}

.bd4-home-case::before {
  background: rgba(14, 165, 233, 0.09);
  border-radius: 43% 57% 35% 65% / 56% 34% 66% 44%;
  height: 610px;
  left: -250px;
  top: 120px;
  transform: rotate(14deg);
  width: 720px;
}

.bd4-home-case::after {
  border: 48px solid rgba(186, 230, 253, 0.42);
  border-radius: 50%;
  height: 180px;
  right: -95px;
  top: -110px;
  width: 180px;
}

.bd4-home-case-story {
  margin: 0 auto;
  max-width: 1180px;
  position: relative;
  z-index: 1;
}

.bd4-home-case-head {
  margin-bottom: clamp(36px, 5vw, 68px);
  max-width: 850px;
  position: relative;
}

#top .bd4-home-case-head h2 {
  font-size: clamp(34px, 4vw, 48px);
  letter-spacing: -0.03em;
  line-height: 1.08;
  margin: 0;
  max-width: 18ch;
}

#top .bd4-home-case-head h2 em {
  color: var(--bd4-blue);
  display: inline-block;
  font-family: inherit;
  font-style: normal;
  font-weight: inherit;
  letter-spacing: inherit;
  position: relative;
  z-index: 0;
}

#top .bd4-home-case-head h2 em::after {
  background: #7dd3fc;
  border-radius: 45% 55% 52% 48%;
  bottom: -1px;
  content: "";
  height: 7px;
  left: 1%;
  opacity: 0.5;
  position: absolute;
  transform: rotate(-1.5deg);
  width: 98%;
  z-index: -1;
}

.bd4-home-case-main {
  align-items: center;
  display: grid;
  gap: clamp(34px, 7vw, 100px);
  grid-template-columns: minmax(0, 1.25fr) minmax(270px, 0.75fr);
}

.bd4-home-case-visual {
  margin: 0;
  position: relative;
  transform: rotate(-1.25deg);
}

.bd4-home-case-visual::before {
  background: #38bdf8;
  border-radius: 57% 43% 63% 37% / 42% 58% 42% 58%;
  content: "";
  inset: -18px 22px 15px -20px;
  opacity: 0.13;
  position: absolute;
  transform: rotate(4deg);
}

.bd4-home-case-visual > a {
  background: #fff;
  border: 7px solid rgba(255, 255, 255, 0.92);
  border-radius: 41% 59% 48% 52% / 36% 42% 58% 64%;
  box-shadow: 0 32px 76px rgba(11, 31, 58, 0.2);
  display: block;
  overflow: hidden;
  position: relative;
  transform: translateZ(0);
  z-index: 1;
}

.bd4-home-case-visual img {
  aspect-ratio: 16 / 10;
  display: block;
  height: 100%;
  object-fit: cover;
  transition: transform 450ms ease;
  width: 100%;
}

.bd4-home-case-visual > a:hover img {
  transform: scale(1.025);
}

#top .bd4-home-case-visual figcaption {
  background: var(--bd4-navy);
  border-radius: 999px;
  bottom: 5%;
  box-shadow: 0 14px 34px rgba(11, 31, 58, 0.24);
  color: #fff;
  display: grid;
  padding: 10px 20px 11px;
  position: absolute;
  right: -18px;
  transform: rotate(1.25deg);
  z-index: 3;
}

#top .bd4-home-case-visual figcaption span {
  color: #bae6fd;
  font-size: 10px;
  font-weight: 850;
  letter-spacing: 0.09em;
  line-height: 1.35;
  text-transform: uppercase;
}

#top .bd4-home-case-visual figcaption strong {
  color: #fff;
  font-size: 15px;
  line-height: 1.4;
}

.bd4-home-case-orbit {
  border: 2px dashed rgba(14, 165, 233, 0.48);
  border-radius: 50%;
  height: 112px;
  left: -39px;
  position: absolute;
  top: -44px;
  width: 112px;
  z-index: 2;
}

.bd4-home-case-orbit::after {
  background: #0ea5e9;
  border: 5px solid #edf6ff;
  border-radius: 50%;
  content: "";
  height: 18px;
  position: absolute;
  right: 5px;
  top: 7px;
  width: 18px;
}

.bd4-home-case-intro {
  padding: 30px 0 16px;
  position: relative;
}

#top .bd4-home-case-intro > p {
  color: var(--bd4-navy);
  font-size: clamp(17px, 1.5vw, 19px);
  line-height: 1.65;
  margin: 0;
}

#top .bd4-home-case-intro .bd4-tags {
  margin-bottom: 0;
  margin-top: 24px;
}

#top .bd4-home-case-intro .bd4-tags span {
  background: rgba(255, 255, 255, 0.58);
  border: 1px solid rgba(14, 116, 202, 0.2);
}

.bd4-home-case-route {
  margin: clamp(52px, 7vw, 84px) 0 30px;
  min-height: 190px;
  position: relative;
}

.bd4-home-case-route svg {
  height: 190px;
  inset: 0;
  overflow: visible;
  position: absolute;
  width: 100%;
}

.bd4-home-case-route path {
  fill: none;
  stroke: rgba(14, 116, 202, 0.3);
  stroke-dasharray: 5 9;
  stroke-linecap: round;
  stroke-width: 2;
  vector-effect: non-scaling-stroke;
}

#top .bd4-home-case-route ol {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}

#top .bd4-home-case-route li {
  align-items: center;
  display: grid;
  gap: 16px;
  grid-template-columns: 58px minmax(0, 1fr);
  max-width: 320px;
  padding: 0;
}

#top .bd4-home-case-route li:nth-child(1) {
  margin-top: 96px;
}

#top .bd4-home-case-route li:nth-child(2) {
  justify-self: center;
  margin-top: 48px;
}

#top .bd4-home-case-route li:nth-child(3) {
  justify-self: end;
  margin-top: 10px;
}

#top .bd4-home-case-route li > span {
  align-items: center;
  background: var(--bd4-blue);
  border: 7px solid #edf6ff;
  border-radius: 50%;
  box-shadow: 0 0 0 1px rgba(14, 116, 202, 0.2), 0 12px 28px rgba(14, 116, 202, 0.18);
  color: #fff;
  display: flex;
  font-size: 13px;
  font-weight: 900;
  height: 58px;
  justify-content: center;
  width: 58px;
}

#top .bd4-home-case-route small {
  color: var(--bd4-blue-dark);
  display: block;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.09em;
  line-height: 1.4;
  margin-bottom: 3px;
  text-transform: uppercase;
}

#top .bd4-home-case-route strong {
  color: var(--bd4-navy);
  display: block;
  font-size: 16px;
  line-height: 1.42;
}

.bd4-home-case-footer {
  align-items: center;
  border-top: 1px solid rgba(11, 31, 58, 0.12);
  display: flex;
  justify-content: space-between;
  padding-top: 24px;
}

#top .bd4-home-case-footer p {
  color: var(--bd4-muted);
  font-size: 14px;
  margin: 0;
}

#top .bd4-home-case-footer .bd4-text-link {
  gap: 9px;
}

#top .bd4-home-case-footer .bd4-text-link span {
  font-size: 22px;
  transition: transform 160ms ease;
}

#top .bd4-home-case-footer .bd4-text-link:hover span {
  transform: translateX(4px);
}

@media only screen and (max-width: 900px) {
  .bd4-home-case-main {
    grid-template-columns: 1fr;
  }

  .bd4-home-case-visual {
    margin: 0 auto;
    max-width: 720px;
  }

  .bd4-home-case-intro {
    max-width: 680px;
  }

  .bd4-home-case-route svg {
    display: none;
  }

  .bd4-home-case-route {
    min-height: 0;
  }

  #top .bd4-home-case-route ol {
    gap: 26px;
    grid-template-columns: 1fr;
    padding-left: 8px;
  }

  #top .bd4-home-case-route ol::before {
    background: linear-gradient(var(--bd4-blue), rgba(14, 165, 233, 0.08));
    content: "";
    height: calc(100% - 42px);
    left: 36px;
    position: absolute;
    top: 30px;
    width: 2px;
  }

  #top .bd4-home-case-route li,
  #top .bd4-home-case-route li:nth-child(n) {
    justify-self: auto;
    margin-top: 0;
    max-width: 560px;
  }
}

@media only screen and (max-width: 540px) {
  .bd4-home-case::before {
    height: 470px;
    left: -270px;
    width: 570px;
  }

  #top .bd4-home-case-head h2 {
    font-size: clamp(34px, 10vw, 42px);
  }

  .bd4-home-case-visual > a {
    border-width: 5px;
    border-radius: 34% 66% 39% 61% / 31% 38% 62% 69%;
  }

  #top .bd4-home-case-visual figcaption {
    bottom: -24px;
    right: 0;
  }

  .bd4-home-case-orbit {
    height: 76px;
    left: -22px;
    top: -28px;
    width: 76px;
  }

  .bd4-home-case-intro {
    padding-top: 44px;
  }

  .bd4-home-case-footer {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
}

.bd4-example-grid {
  border-bottom: 1px solid rgba(255, 255, 255, 0.16);
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 36px;
}

.bd4-example-grid article {
  border-right: 1px solid rgba(255, 255, 255, 0.16);
  padding: 26px 24px;
}

.bd4-example-grid article:last-child {
  border-right: 0;
}

.bd4-example-grid span {
  color: #90b7ff;
  font-size: 13px;
  font-weight: 900;
}

.bd4-example-grid h3 {
  color: #fff !important;
  font-size: 22px !important;
  margin: 12px 0 8px;
}

.bd4-example-grid p {
  color: #cbd9eb !important;
  font-size: 16px !important;
}

.bd4-example-cta {
  margin: 32px 0 0 !important;
}

.bd4-honesty-note {
  background: rgba(255, 255, 255, 0.08);
  border-left: 4px solid rgba(255, 255, 255, 0.3);
  color: #dce8f8 !important;
  margin-top: 26px !important;
  max-width: 68ch;
  padding: 14px 18px;
}

.bd4-project-index {
  align-items: center;
  border-bottom: 1px solid var(--bd4-line);
  display: grid;
  gap: 28px;
  grid-template-columns: 90px 1fr auto;
  padding: 24px 0;
}

.bd4-project-index > span {
  color: var(--bd4-blue-dark);
  font-size: 14px;
  font-weight: 900;
}

.bd4-project-index h3,
.bd4-project-index p {
  margin: 0 0 4px;
}

.bd4-project-gallery {
  align-items: start;
  display: grid;
  gap: 22px;
  grid-template-columns: 1fr;
  margin-top: 36px;
}

.bd4-project-gallery figure {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-radius: 16px;
  margin: 0;
  overflow: hidden;
  padding: 10px;
}

.bd4-project-gallery figure:first-child {
  grid-row: auto;
  margin-left: auto;
  margin-right: auto;
  max-width: 900px;
  width: 100%;
}

.bd4-project-gallery figure:nth-child(2) {
  margin-left: auto;
  margin-right: auto;
  max-width: 390px;
  width: 100%;
}

.bd4-project-gallery img {
  display: block;
  height: auto;
  width: 100%;
}

.bd4-project-gallery figcaption {
  color: var(--bd4-muted);
  font-size: 14px;
  padding: 10px 6px 4px;
}

.bd4-project-casehero .entry-content-wrapper,
.bd4-about-hero .entry-content-wrapper {
  align-items: center;
  display: flex;
  gap: 6%;
}

.bd4-project-casehero .flex_column,
.bd4-about-hero .flex_column {
  margin-left: 0 !important;
  min-width: 0;
  width: 47% !important;
}

.bd4-project-casehero .content,
.bd4-about-hero .content {
  padding-bottom: 76px;
  padding-top: 76px;
}

.bd4-tags-dark span {
  background: rgba(255, 255, 255, 0.11);
  border: 1px solid rgba(255, 255, 255, 0.16);
  color: #dce9fb;
}

.bd4-project-casehero-visual {
  margin: 0;
  text-align: center;
}

.bd4-project-casehero-visual img {
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 22px;
  box-shadow: 0 32px 76px rgba(0, 0, 0, 0.35);
  display: block;
  height: auto;
  margin: 0 auto;
  max-height: 540px;
  object-fit: contain;
  width: auto;
}

#top .bd4-project-casehero-visual figcaption {
  color: #cbd9eb;
  font-size: 13px;
  margin-top: 12px;
}

.bd4-case-story {
  border-top: 1px solid var(--bd4-line);
}

.bd4-case-story article {
  align-items: start;
  border-bottom: 1px solid var(--bd4-line);
  display: grid;
  gap: 36px;
  grid-template-columns: minmax(130px, 0.28fr) minmax(0, 1fr);
  padding: 28px 0;
}

.bd4-case-story article > span {
  color: var(--bd4-blue-dark);
  font-size: 13px;
  font-weight: 900;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.bd4-case-story h3,
.bd4-case-story p {
  margin: 0 0 9px;
}

.bd4-case-story p {
  max-width: 68ch;
}

.bd4-case-detail-image,
.bd4-about-case-image {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-radius: 18px;
  box-shadow: var(--bd4-shadow);
  margin: 0;
  overflow: hidden;
}

.bd4-case-detail-image img,
.bd4-about-case-image img {
  display: block;
  height: auto;
  width: 100%;
}

.bd4-case-detail-image figcaption,
.bd4-about-case-image figcaption {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 5px 14px;
  padding: 14px 18px 16px;
}

.bd4-case-detail-image figcaption strong,
.bd4-about-case-image figcaption {
  color: var(--bd4-navy);
  font-size: 15px;
  font-weight: 850;
}

.bd4-case-detail-image figcaption span {
  color: var(--bd4-muted);
  font-size: 14px;
}

.bd4-example-grid-three {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bd4-responsive-project-visual {
  background: linear-gradient(145deg, #fff 0%, #edf4fd 100%);
  border: 1px solid var(--bd4-line);
  border-radius: 24px;
  box-shadow: var(--bd4-shadow);
  box-sizing: border-box;
  isolation: isolate;
  margin: 0 auto;
  max-width: 1120px;
  min-height: 710px;
  overflow: hidden;
  padding: 30px 32px 24px;
  position: relative;
}

.bd4-project-proof-label {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 7px 14px;
  justify-content: space-between;
  margin-bottom: 23px;
}

.bd4-project-proof-label span {
  background: var(--bd4-blue);
  border-radius: 999px;
  color: #fff;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.08em;
  padding: 6px 10px;
  text-transform: uppercase;
}

.bd4-project-proof-label strong {
  color: var(--bd4-navy);
  font-size: 15px;
}

.bd4-responsive-desktop,
.bd4-responsive-mobile {
  margin: 0;
  position: relative;
}

.bd4-responsive-desktop {
  box-shadow: 0 22px 54px rgba(11, 31, 58, 0.18);
  width: 84%;
  z-index: 1;
}

.bd4-responsive-mobile {
  background: var(--bd4-navy);
  border: 7px solid var(--bd4-navy);
  border-radius: 27px;
  bottom: 24px;
  box-shadow: 0 24px 58px rgba(11, 31, 58, 0.32);
  overflow: hidden;
  padding-top: 13px;
  position: absolute;
  right: 4%;
  width: 24%;
  z-index: 2;
}

.bd4-responsive-mobile img {
  border-radius: 17px;
}

.bd4-mobile-speaker {
  background: #52657e;
  border-radius: 999px;
  height: 4px;
  left: 50%;
  position: absolute;
  top: 5px;
  transform: translateX(-50%);
  width: 35%;
  z-index: 2;
}

#top .bd4-responsive-project-visual > p {
  color: var(--bd4-muted) !important;
  font-size: 15px !important;
  margin: 22px 30% 0 0 !important;
}

/* Reviews */
.bd-review-module {
  width: 100%;
}

.bd4-reviews:has(.bd-review-no-data) {
  display: none !important;
}

.bd4-review-section,
.bd4-review-section .flex_column,
.bd4-review-section .avia_textblock {
  min-width: 0;
}

.bd4-review-section {
  overflow: hidden;
}

.bd4-review-section:has(.bd-review-no-data),
.bd4-review-summary-band:has(.bd-review-no-data) {
  display: none !important;
}

.bd4-home-proof-bar {
  background: #fff !important;
  border-bottom: 1px solid var(--bd4-line);
  box-shadow: 0 12px 34px rgba(11, 31, 58, 0.06);
  position: relative;
  z-index: 2;
}

#top .bd4-home-proof-bar .content {
  padding-bottom: 24px !important;
  padding-top: 24px !important;
}

.bd4-home-proof-bar .flex_column,
.bd4-home-proof-bar .av_textblock_section,
.bd4-home-proof-bar .avia_textblock {
  min-height: 100%;
}

.bd4-home-proof-bar .entry-content-wrapper {
  align-items: center;
  display: flex;
  gap: 4%;
}

.bd4-home-proof-bar .flex_column {
  float: none;
  margin-left: 0 !important;
}

.bd4-home-proof-score {
  border-right: 1px solid var(--bd4-line);
  box-sizing: border-box;
  padding-right: 30px;
  width: 36% !important;
}

.bd4-home-proof-copy {
  width: 60% !important;
}

.bd4-home-proof-bar:not(:has(.bd-review-summary, .bd-review-admin-diagnostic)) .bd4-home-proof-score {
  display: none;
}

.bd4-home-proof-bar:not(:has(.bd-review-summary, .bd-review-admin-diagnostic)) .bd4-home-proof-copy {
  margin-left: 0 !important;
  width: 100% !important;
}

.bd4-home-proof-points {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.bd4-home-proof-points li {
  align-items: center;
  display: grid;
  gap: 10px;
  grid-template-columns: 28px minmax(0, 1fr);
  line-height: 1.35 !important;
  min-width: 0;
}

.bd4-home-proof-points li > span {
  align-items: center;
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 28px;
  justify-content: center;
  width: 28px;
}

.bd4-home-proof-points strong,
.bd4-home-proof-points small {
  display: block;
}

.bd4-home-proof-points strong {
  color: var(--bd4-navy);
  font-size: 14px;
  font-weight: 850;
}

.bd4-home-proof-points small {
  color: var(--bd4-muted);
  font-size: 12px;
  margin-top: 1px;
}

.bd4-review-summary-band {
  background: var(--bd4-soft) !important;
  border-bottom: 1px solid var(--bd4-line);
  border-top: 1px solid var(--bd4-line);
  overflow: hidden;
}

#top .bd4-review-summary-band .content {
  padding-bottom: 24px !important;
  padding-top: 24px !important;
}

.bd4-review-summary-band-soft {
  background: var(--bd4-soft) !important;
}

.bd4-home-review-summary .bd-review-summary {
  justify-content: start;
}

.bd4-home-review-summary .bd-review-summary-link > span:first-child {
  display: none;
}

.bd4-review-intro {
  display: block;
  margin-bottom: 34px;
  max-width: 720px;
}

.bd4-review-intro .bd4-eyebrow {
  margin-bottom: 8px;
}

.bd4-review-intro h2 {
  margin: 0 0 12px;
}

.bd4-review-intro p:last-child {
  color: var(--bd4-muted) !important;
  margin-bottom: 0 !important;
}

.bd4-reviews {
  background: linear-gradient(180deg, #fff 0%, #f6f9fe 100%) !important;
}

.bd4-review-section .wp-gr .grw-img-wrap,
.bd4-review-section .wp-gr .grw-img {
  display: none !important;
}

.bd4-review-section .wp-gr .grw-header-inner {
  gap: 0 !important;
}

.bd4-review-section .wp-gr .grw-review-inner {
  border: 1px solid #dce7f2 !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 30px rgba(11, 31, 58, 0.08) !important;
}

.bd-review-header {
  align-items: end;
  display: flex;
  gap: 32px;
  justify-content: space-between;
  margin-bottom: 32px;
}

.bd-review-header h2 {
  margin: 0;
}

.bd-review-summary {
  align-items: center;
  display: grid;
  gap: 12px 18px;
  grid-template-columns: auto minmax(120px, 1fr) auto;
  min-width: 0;
  width: 100%;
}

.bd-review-summary-has-label {
  grid-template-columns: minmax(210px, 1fr) auto minmax(120px, 0.65fr) auto;
}

.bd-review-summary-label {
  color: var(--bd4-navy);
  font-size: 14px;
  font-weight: 850;
  letter-spacing: 0.055em;
  line-height: 1.4;
  text-transform: uppercase;
}

.bd-review-summary-score,
.bd-review-summary-details {
  min-width: 0;
}

.bd-review-summary-score strong {
  align-items: baseline;
  color: var(--bd4-navy);
  display: inline-flex;
  font-size: 38px;
  font-weight: 850;
  letter-spacing: -0.045em;
  line-height: 1;
}

.bd-review-summary-score small {
  color: var(--bd4-muted);
  font-size: 16px;
  font-weight: 750;
  letter-spacing: -0.02em;
  margin-left: 2px;
}

.bd-review-summary-details {
  display: grid;
  gap: 5px;
}

.bd-review-count {
  color: var(--bd4-muted);
  display: block;
  font-size: 14px;
  line-height: 1.35;
}

.bd-review-summary-link {
  align-items: center;
  background: var(--bd4-blue-soft);
  border: 1px solid #c8daf7;
  border-radius: 999px;
  color: var(--bd4-blue-dark) !important;
  display: inline-flex;
  gap: 4px;
  font-size: 14px;
  font-weight: 750;
  justify-self: end;
  min-height: 44px;
  padding: 8px 14px;
  text-decoration: none !important;
  transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
}

.bd-review-summary-link:hover {
  background: #dce9ff;
  border-color: #a9c4ef;
  color: var(--bd4-navy) !important;
}

.bd-review-summary-link strong {
  font-weight: 850;
  white-space: nowrap;
}

.bd-review-external {
  font-size: 16px;
  margin-left: 2px;
}

.bd-google-maps-attribution {
  font-family: inherit;
  letter-spacing: normal;
  line-height: 1.35;
}

.bd-review-rating {
  align-items: center;
  display: inline-flex;
  gap: 8px;
}

.bd-review-stars {
  display: inline-block;
  font-size: 18px;
  letter-spacing: 1.5px;
  line-height: 1;
  position: relative;
  white-space: nowrap;
}

.bd-review-stars-base {
  color: #c8d2df;
}

.bd-review-stars-fill {
  color: #f5a623;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
}

.bd-review-score {
  color: var(--bd4-muted);
  font-size: 14px;
  font-weight: 800;
  letter-spacing: 0;
}

.bd-review-grid {
  display: grid;
  gap: 24px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
}

.bd-review-card {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-radius: var(--bd4-radius);
  box-shadow: 0 16px 42px rgba(11, 31, 58, 0.08);
  display: flex;
  flex-direction: column;
  isolation: isolate;
  min-height: 310px;
  overflow: hidden;
  padding: 28px;
  position: relative;
}

.bd-review-card::before {
  content: none;
}

.bd-review-card-top {
  align-items: center;
  display: flex;
  gap: 14px;
  justify-content: space-between;
}

.bd-review-source-badge {
  background: var(--bd4-blue-soft);
  border: 1px solid #d5e3f8;
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  font-size: 11px;
  font-weight: 850;
  letter-spacing: 0.055em;
  line-height: 1.25;
  padding: 6px 9px;
  text-transform: uppercase;
  white-space: nowrap;
}

.bd-review-text {
  border: 0;
  color: var(--bd4-ink) !important;
  flex: 1;
  margin: 24px 0 !important;
  padding: 0;
  position: relative;
}

#top .bd-review-text p {
  color: var(--bd4-ink) !important;
  font-size: 17px !important;
  line-height: 1.68 !important;
  margin: 0 !important;
}

.bd-review-card footer {
  align-items: center;
  border-top: 1px solid var(--bd4-line);
  display: flex;
  gap: 16px;
  justify-content: space-between;
  margin-top: auto;
  padding-top: 18px;
}

.bd-review-author {
  display: grid;
  min-width: 0;
}

.bd-review-author strong,
.bd-review-author time {
  display: block;
  line-height: 1.4;
}

.bd-review-author strong {
  color: var(--bd4-navy);
  font-size: 15px;
  font-weight: 850;
}

.bd-review-author strong a {
  color: var(--bd4-navy);
}

.bd-review-author time {
  color: var(--bd4-muted);
  font-size: 13px;
  margin-top: 3px;
}

.bd-review-source-link {
  align-items: center;
  color: var(--bd4-blue-dark);
  display: inline-flex;
  gap: 4px;
  font-size: 14px;
  font-weight: 800;
  min-height: 44px;
  white-space: nowrap;
}

.bd-review-original {
  border-top: 1px solid var(--bd4-line);
  margin: 0 0 14px;
  padding-top: 12px;
}

.bd-review-original summary {
  color: var(--bd4-blue-dark);
  cursor: pointer;
  font-size: 14px;
  font-weight: 750;
  min-height: 44px;
  padding: 10px 0;
}

#top .bd-review-original p {
  color: var(--bd4-muted) !important;
  font-size: 15px !important;
}

.bd-review-disclosure {
  color: var(--bd4-muted) !important;
  font-size: 14px !important;
  margin: 0 !important;
}

.bd-review-section-footer {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px 22px;
  justify-content: space-between;
  margin-top: 22px;
}

.bd-review-all-link {
  align-items: center;
  color: var(--bd4-blue-dark);
  display: inline-flex;
  font-size: 14px;
  font-weight: 750;
  gap: 4px;
  min-height: 44px;
}

.bd-review-all-link strong {
  font-weight: 850;
}

.bd-review-admin-diagnostic {
  background: #fff8e5;
  border: 1px solid #d8a72f;
  border-left-width: 4px;
  border-radius: 10px;
  color: var(--bd4-ink);
  max-width: 68ch;
  padding: 18px 20px;
}

.bd-review-admin-diagnostic p {
  margin: 7px 0 !important;
}

.bd-review-admin-diagnostic a {
  align-items: center;
  display: inline-flex;
  font-weight: 800;
  min-height: 44px;
}

.bd-review-empty {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-left-width: 4px;
  border-radius: 12px;
  max-width: 800px;
  padding: 22px 24px;
}

.bd-review-empty p {
  margin: 0 !important;
}

.bd-review-google-link {
  margin-top: 26px;
}

.bd-inline-case-review {
  background: var(--bd4-soft);
  border: 1px solid var(--bd4-line);
  border-left-width: 4px;
  border-radius: 12px;
  margin: 28px 0;
  max-width: 760px;
  padding: 24px 26px;
}

.bd-inline-case-review blockquote {
  border: 0;
  margin: 16px 0;
  padding: 0;
}

.bd-inline-case-review blockquote p {
  color: var(--bd4-navy) !important;
  font-size: 19px !important;
  font-weight: 700;
  margin: 0 !important;
}

.bd-inline-case-review figcaption {
  color: var(--bd4-muted);
  font-size: 14px;
}

.bd-inline-case-review figcaption a {
  font-weight: 750;
}

/* Personal trust, process and data */
.bd4-about-hero-visual {
  isolation: isolate;
  margin: 0;
  min-height: 430px;
  position: relative;
}

.bd4-about-hero-visual::before {
  background: rgba(31, 94, 234, 0.38);
  border-radius: 999px;
  content: '';
  filter: blur(2px);
  height: 150px;
  position: absolute;
  right: 6%;
  top: 8%;
  width: 150px;
  z-index: -1;
}

.bd4-about-hero-visual > figcaption {
  align-items: center;
  color: #fff;
  display: flex;
  font-size: 14px;
  font-weight: 850;
  justify-content: space-between;
  margin-bottom: 15px;
}

.bd4-about-hero-visual > figcaption span {
  color: #9fc1ff;
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.bd4-about-screen {
  background: #fff;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-radius: 16px;
  box-shadow: 0 28px 68px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
  overflow: hidden;
  position: absolute;
}

.bd4-about-screen-site {
  left: 0;
  top: 44px;
  transform: rotate(-1.5deg);
  width: 83%;
}

.bd4-about-screen-dashboard {
  bottom: 0;
  display: grid;
  grid-template-columns: 25% 1fr;
  min-height: 220px;
  right: 0;
  transform: rotate(1deg);
  width: 75%;
}

.bd4-about-screen-bar {
  align-items: center;
  background: #edf3fa;
  display: flex;
  gap: 5px;
  height: 25px;
  padding: 0 10px;
}

.bd4-about-screen-bar i {
  background: #9fb1c6;
  border-radius: 50%;
  height: 5px;
  width: 5px;
}

.bd4-about-screen-bar span {
  background: #d6e1ed;
  border-radius: 999px;
  height: 8px;
  margin-left: 7px;
  width: 46%;
}

.bd4-about-site-nav {
  align-items: center;
  border-bottom: 1px solid #e4ebf3;
  display: flex;
  gap: 13px;
  min-height: 48px;
  padding: 0 16px;
}

.bd4-about-site-nav b {
  color: var(--bd4-blue);
  font-size: 12px;
  margin-right: auto;
}

.bd4-about-site-nav span {
  background: #cad6e3;
  border-radius: 999px;
  height: 6px;
  width: 34px;
}

.bd4-about-site-nav em {
  background: var(--bd4-blue);
  border-radius: 5px;
  height: 20px;
  width: 50px;
}

.bd4-about-site-body {
  background: linear-gradient(135deg, #f7faff, #e8f1ff);
  min-height: 215px;
  padding: 34px 26px;
}

.bd4-about-site-body small,
.bd4-about-site-body strong,
.bd4-about-site-body p,
.bd4-about-site-body button {
  border: 0;
  border-radius: 999px;
  display: block;
}

.bd4-about-site-body small {
  background: #aac6f5;
  height: 7px;
  margin-bottom: 15px;
  width: 70px;
}

.bd4-about-site-body strong {
  background: var(--bd4-navy);
  height: 12px;
  margin-bottom: 8px;
  width: 72%;
}

.bd4-about-site-body strong + strong {
  width: 55%;
}

.bd4-about-site-body p {
  background: #aebdce;
  height: 6px;
  margin: 15px 0 0 !important;
  width: 78%;
}

.bd4-about-site-body p + p {
  margin-top: 7px !important;
  width: 62%;
}

.bd4-about-site-body button {
  background: var(--bd4-blue);
  height: 24px;
  margin-top: 20px;
  width: 82px;
}

.bd4-about-screen-dashboard aside {
  background: var(--bd4-navy);
  padding: 16px 11px;
}

.bd4-about-screen-dashboard aside b {
  color: #fff;
  display: block;
  font-size: 11px;
  margin-bottom: 24px;
}

.bd4-about-screen-dashboard aside span {
  background: rgba(255, 255, 255, 0.2);
  border-radius: 999px;
  display: block;
  height: 6px;
  margin-bottom: 12px;
  width: 80%;
}

.bd4-about-screen-dashboard > div {
  background: #f6f8fb;
  padding: 14px;
}

.bd4-about-screen-dashboard header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 15px;
}

.bd4-about-screen-dashboard header strong,
.bd4-about-screen-dashboard header i {
  background: #9cabbc;
  border-radius: 999px;
  height: 7px;
  width: 42%;
}

.bd4-about-screen-dashboard header i {
  background: var(--bd4-blue);
  height: 18px;
  width: 24%;
}

.bd4-about-screen-dashboard section {
  display: grid;
  gap: 7px;
  grid-template-columns: repeat(3, 1fr);
}

.bd4-about-screen-dashboard section span {
  background: #e6edf5;
  border-radius: 6px;
  height: 42px;
}

.bd4-about-screen-dashboard ul {
  background: #fff;
  border: 1px solid #e1e8f0;
  border-radius: 7px;
  margin: 11px 0 0;
  padding: 5px 10px;
}

.bd4-about-screen-dashboard li {
  border-bottom: 1px solid #e7edf4;
  height: 22px;
  list-style: none;
}

.bd4-about-screen-dashboard li:last-child {
  border-bottom: 0;
}

.bd4-tech-labels {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: auto;
  padding-top: 20px;
}

.bd4-tech-labels span {
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  font-size: 12px;
  font-weight: 850;
  padding: 5px 9px;
}

.bd4-solution-choice-grid .bd4-service-card {
  display: flex;
  flex-direction: column;
}

.bd4-about-case .entry-content-wrapper {
  align-items: center;
}

.bd4-direct-card {
  background: var(--bd4-navy);
  border-radius: var(--bd4-radius);
  color: #fff;
  padding: 34px;
}

.bd4-direct-card h3,
.bd4-direct-card p,
.bd4-direct-card a,
.bd4-direct-card dt,
.bd4-direct-card dd {
  color: #fff !important;
}

.bd4-direct-card dl {
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  margin: 24px 0 0;
}

.bd4-direct-card dl > div {
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  display: grid;
  gap: 12px;
  grid-template-columns: 90px 1fr;
  padding: 12px 0;
}

.bd4-direct-card dd {
  margin: 0;
}

.bd4-direct-card-action {
  margin: 28px 0 0 !important;
}

.bd4-direct-card-action .bd4-button {
  width: 100%;
}

.bd4-direct-card a,
.bd4-data-list a,
.bd4-form-note a {
  align-items: center;
  display: inline-flex;
  min-height: 44px;
}

.bd4-steps {
  counter-reset: steps;
  display: grid;
  gap: 0;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: 36px 0 0;
  padding: 0;
}

.bd4-steps li {
  border-left: 1px solid rgba(255, 255, 255, 0.18);
  list-style: none;
  padding: 0 28px 4px;
}

.bd4-steps li::before {
  color: #8cb4ff;
  content: counter(steps, decimal-leading-zero);
  counter-increment: steps;
  display: block;
  font-size: 14px;
  font-weight: 900;
  margin-bottom: 18px;
}

.bd4-contact-steps li::before {
  content: none;
  display: none;
}

.bd4-step-number {
  color: #8cb4ff;
  display: block;
  font-size: 14px;
  font-weight: 900;
  margin-bottom: 18px;
}

.bd4-steps h3 {
  color: #fff !important;
  font-size: 22px !important;
}

.bd4-steps p {
  color: #cbd9eb !important;
  font-size: 16px !important;
}

.bd4-process-cta {
  margin: 32px 0 0 !important;
}

.bd4-data-list {
  border-top: 1px solid var(--bd4-line);
  margin-top: 28px;
}

.bd4-data-list > div {
  border-bottom: 1px solid var(--bd4-line);
  display: grid;
  gap: 20px;
  grid-template-columns: 180px 1fr;
  padding: 14px 0;
}

.bd4-data-list dt {
  color: var(--bd4-navy);
  font-weight: 850;
}

.bd4-data-list dd {
  margin: 0;
}

/* Pricing */
#websiteprijzen,
#laravelprijzen {
  scroll-margin-top: 120px;
}

.bd4-price-grid {
  display: grid;
  gap: 20px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.bd4-price-card {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-radius: var(--bd4-radius);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  padding: 30px;
  position: relative;
}

.bd4-price-grid > .bd4-price-card {
  height: 100%;
}

.bd4-price-card-featured {
  border-color: var(--bd4-blue);
  box-shadow: 0 18px 42px rgba(11, 31, 58, 0.14);
  position: relative;
}

.bd4-popular-badge {
  background: var(--bd4-blue);
  border-radius: 999px;
  color: #fff;
  font-size: 13px;
  font-weight: 850;
  left: 50%;
  letter-spacing: 0.04em;
  line-height: 1.3;
  margin: 0;
  padding: 7px 12px;
  position: absolute;
  top: 0;
  transform: translate(-50%, -50%);
  text-transform: uppercase;
  white-space: nowrap;
  z-index: 2;
}

.bd4-price-card h3 {
  margin-bottom: 8px;
}

.bd4-price {
  color: var(--bd4-navy);
  display: block;
  font-size: 31px;
  font-weight: 850;
  line-height: 1.2;
  margin-bottom: 6px;
}

.bd4-price-card > small {
  color: var(--bd4-muted);
  font-size: 13px;
}

.bd4-price-card .bd4-for {
  background: var(--bd4-soft);
  border-radius: 10px;
  margin: 20px 0 !important;
  padding: 13px 15px;
}

.bd4-price-card ul {
  margin: 0 0 22px 20px;
}

.bd4-price-card .bd4-not-included {
  border-top: 1px solid var(--bd4-line);
  color: var(--bd4-muted) !important;
  font-size: 14px !important;
  margin-top: auto;
  padding-top: 16px;
}

.bd4-price-card .bd4-button {
  margin-top: 16px;
}

.bd4-pricing-packages {
  background: #eaf1fb !important;
}

.bd4-pricing-packages .bd4-price-card {
  background: linear-gradient(180deg, #ffffff 0%, #f7f9ff 100%);
  border: 1px solid rgba(31, 94, 234, 0.2);
  border-top: 5px solid var(--bd4-blue);
  box-shadow: 0 18px 42px rgba(11, 31, 58, 0.12);
}

.bd4-pricing-packages .bd4-price-card-featured {
  border-color: var(--bd4-blue);
  box-shadow: 0 18px 42px rgba(11, 31, 58, 0.14);
}

.bd4-pricing-packages .bd4-package-head {
  background: linear-gradient(135deg, var(--bd4-blue-soft), #f4f7ff);
  border: 1px solid rgba(31, 94, 234, 0.12);
  border-radius: 14px;
  padding: 20px;
}

.bd4-pricing-packages .bd4-price-card-featured .bd4-package-head {
  background: linear-gradient(135deg, #e3ebff, #f3f6ff);
}

.bd4-package-head {
  border-bottom: 1px solid var(--bd4-line);
  min-height: 170px;
  padding-bottom: 20px;
}

.bd4-package-difference {
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  display: inline-flex;
  font-size: 12px;
  font-weight: 850;
  line-height: 1.25;
  padding: 6px 10px;
}

.bd4-package-head h3 {
  margin: 16px 0 7px;
}

#top .bd4-package-price {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 4px 9px;
  margin: 0 !important;
}

.bd4-package-price .bd4-price {
  font-size: clamp(28px, 2.7vw, 34px);
  margin: 0;
}

.bd4-package-price small {
  color: var(--bd4-muted);
  font-size: 12px;
  white-space: nowrap;
}

.bd4-package-head + .bd4-for {
  align-content: start;
  display: grid;
  min-height: 128px;
}

.bd4-package-included {
  margin-bottom: 20px;
}

.bd4-package-included > strong {
  color: var(--bd4-navy);
  display: block;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.bd4-price-card .bd4-package-included ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.bd4-package-included li {
  padding-left: 24px;
  position: relative;
}

.bd4-package-included li::before {
  align-items: center;
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  content: '✓';
  display: inline-flex;
  font-size: 10px;
  font-weight: 900;
  height: 17px;
  justify-content: center;
  left: 0;
  line-height: 1;
  position: absolute;
  top: 0.42em;
  width: 17px;
}

.bd4-price-card .bd4-not-included {
  display: grid;
  gap: 4px;
}

.bd4-not-included strong {
  color: var(--bd4-navy);
}

.bd4-not-included span {
  display: block;
}

.bd4-price-card .bd4-button {
  align-self: stretch;
  width: 100%;
}

#beheerpakketten,
#beheer-voorwaarden {
  scroll-margin-top: 120px;
}

.bd4-price-note {
  color: var(--bd4-muted);
  display: block;
  font-size: 13px;
  font-weight: 750;
  margin: -1px 0 15px;
}

.bd4-service-price-list {
  border-bottom: 1px solid var(--bd4-line);
  border-top: 1px solid var(--bd4-line);
  display: grid;
  margin: 16px 0 18px;
}

#top .bd4-service-price-list p {
  align-items: baseline;
  display: grid;
  gap: 1px 12px;
  grid-template-columns: minmax(0, 1fr) auto;
  margin: 0 !important;
  padding: 9px 0;
}

#top .bd4-service-price-list p + p {
  border-top: 1px solid var(--bd4-line);
}

.bd4-service-price-list strong,
.bd4-service-price-list span {
  color: var(--bd4-navy);
  font-size: 14px;
  line-height: 1.35;
}

.bd4-service-price-list span {
  font-weight: 850;
  text-align: right;
}

.bd4-service-price-list small {
  color: var(--bd4-muted);
  font-size: 11px;
  grid-column: 2;
  line-height: 1.3;
  text-align: right;
}

.bd4-management-grid {
  align-items: stretch;
  display: grid;
  gap: 22px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.bd4-management-card {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-radius: var(--bd4-radius);
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 32px;
}

.bd4-management-grid-compact .bd4-management-card {
  padding: 29px;
}

.bd4-management-card-plus {
  border: 2px solid var(--bd4-blue);
  box-shadow: 0 18px 42px rgba(11, 31, 58, 0.14);
  padding: 31px;
}

.bd4-management-grid-compact .bd4-management-card-plus {
  padding: 28px;
}

.bd4-management-card-head {
  border-bottom: 1px solid var(--bd4-line);
  margin-bottom: 23px;
  padding-bottom: 23px;
}

.bd4-management-label {
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.055em;
  line-height: 1.3;
  padding: 7px 11px;
  text-transform: uppercase;
}

.bd4-management-card-plus .bd4-management-label {
  background: var(--bd4-blue);
  color: #fff;
}

.bd4-management-card h3 {
  font-size: clamp(28px, 3vw, 34px) !important;
  margin: 18px 0 10px;
}

#top .bd4-management-price {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 2px 10px;
  margin: 0 0 20px !important;
}

.bd4-management-price strong {
  color: var(--bd4-navy);
  font-size: clamp(44px, 4.8vw, 54px);
  letter-spacing: -0.04em;
  line-height: 1;
}

.bd4-management-price span {
  color: var(--bd4-navy);
  font-size: 15px;
  font-weight: 850;
}

.bd4-management-price small {
  color: var(--bd4-muted);
  flex-basis: 100%;
  font-size: 13px;
  font-weight: 750;
  margin-top: 4px;
}

#top .bd4-management-difference {
  background: var(--bd4-soft);
  border-left: 3px solid var(--bd4-blue);
  border-radius: 0 10px 10px 0;
  display: grid;
  gap: 4px;
  margin: 0 !important;
  min-height: 108px;
  padding: 14px 16px;
}

.bd4-management-difference strong {
  color: var(--bd4-navy);
  font-size: 15px;
}

.bd4-management-difference span {
  color: var(--bd4-muted);
  font-size: 14px;
  line-height: 1.5;
}

.bd4-management-included {
  margin-bottom: 24px;
}

.bd4-management-included > strong {
  color: var(--bd4-navy);
  display: block;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.08em;
  margin-bottom: 14px;
  text-transform: uppercase;
}

.bd4-management-included ul {
  display: grid;
  gap: 11px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.bd4-management-included li {
  font-size: 15px !important;
  line-height: 1.48 !important;
  padding-left: 26px;
  position: relative;
}

.bd4-management-included li::before {
  align-items: center;
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  content: '✓';
  display: inline-flex;
  font-size: 10px;
  font-weight: 900;
  height: 18px;
  justify-content: center;
  left: 0;
  line-height: 1;
  position: absolute;
  top: 0.22em;
  width: 18px;
}

.bd4-management-limits {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0 0 24px;
}

.bd4-management-limits > span {
  background: var(--bd4-blue-soft);
  border-radius: 11px;
  display: grid;
  gap: 2px;
  padding: 13px 14px;
}

.bd4-management-limits strong {
  color: var(--bd4-blue-dark);
  font-size: 17px;
}

.bd4-management-limits small {
  color: var(--bd4-muted);
  font-size: 11px;
  line-height: 1.35;
}

.bd4-management-card .bd4-button {
  align-self: stretch;
  margin-top: auto;
  width: 100%;
}

#top .bd4-management-card > p:last-child {
  margin: auto 0 0 !important;
}

.bd4-management-card > p:last-child .bd4-button {
  width: 100%;
}

#top .bd4-package-footnote {
  color: var(--bd4-muted);
  font-size: 14px;
  margin: 24px 0 0 !important;
  text-align: center;
}

.bd4-provider-band {
  align-items: start;
  display: grid;
  gap: 56px;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
}

.bd4-provider-band h2 {
  margin-bottom: 16px;
}

.bd4-provider-band > div > p:last-child {
  color: #cbd9eb !important;
}

.bd4-provider-band ul {
  border-top: 1px solid rgba(255, 255, 255, 0.18);
  list-style: none;
  margin: 0;
  padding: 0;
}

.bd4-provider-band li {
  border-bottom: 1px solid rgba(255, 255, 255, 0.18);
  display: grid;
  gap: 5px;
  padding: 15px 0;
}

.bd4-provider-band li strong {
  color: #fff;
  font-size: 16px;
}

.bd4-provider-band li span {
  color: #cbd9eb;
  font-size: 14px;
  line-height: 1.5;
}

.bd4-management-terms {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0;
}

.bd4-management-terms > div {
  background: #fff;
  border: 1px solid var(--bd4-line);
  border-radius: 13px;
  min-width: 0;
  padding: 20px 21px;
}

.bd4-management-terms dt {
  color: var(--bd4-navy);
  font-size: 16px;
  font-weight: 900;
  margin-bottom: 6px;
}

.bd4-management-terms dd {
  color: var(--bd4-muted);
  font-size: 14px;
  line-height: 1.58;
  margin: 0;
}

.bd4-system-prices {
  border-top: 1px solid var(--bd4-line);
}

.bd4-system-prices article {
  align-items: center;
  border-bottom: 1px solid var(--bd4-line);
  display: grid;
  gap: 24px;
  grid-template-columns: 48px minmax(0, 1fr) auto;
  padding: 20px 0;
}

.bd4-system-prices article > span {
  align-items: center;
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  display: inline-flex;
  font-size: 12px;
  font-weight: 900;
  height: 36px;
  justify-content: center;
  width: 36px;
}

.bd4-system-prices h3,
.bd4-system-prices p {
  margin: 0 0 5px;
}

.bd4-system-prices strong {
  color: var(--bd4-navy);
  white-space: nowrap;
}

.bd4-module-label {
  background: var(--bd4-blue-soft);
  border-radius: 999px;
  color: var(--bd4-blue-dark);
  display: inline-flex;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.07em;
  line-height: 1.25;
  margin-bottom: 8px;
  padding: 5px 8px;
  text-transform: uppercase;
}

.bd4-system-start-price {
  align-content: center;
  display: grid;
  justify-items: end;
  line-height: 1.25;
}

.bd4-system-start-price small {
  color: var(--bd4-blue-dark);
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  margin-bottom: 4px;
  text-transform: uppercase;
}

.bd4-system-start-price span {
  color: var(--bd4-navy);
  font-size: 18px;
}

.bd4-scope-note {
	background: var(--bd4-soft);
	border: 1px solid var(--bd4-line);
	border-left-width: 4px;
	border-radius: 10px;
	margin-top: 26px;
	max-width: 68ch;
	padding: 16px 20px;
}

.bd4-hosting-choice-note {
  margin-bottom: 0;
}

.bd4-hosting-choice-spacer {
  display: block;
  height: 32px;
  width: 100%;
}

/* FAQ */
#top .bd4-faq .togglecontainer {
  border-top: 1px solid var(--bd4-line);
  margin-top: 28px;
}

#top .bd4-faq .toggler {
  background: transparent;
  border-bottom: 1px solid var(--bd4-line);
  border-radius: 8px;
  color: var(--bd4-navy);
  cursor: pointer;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.45;
  min-height: 60px;
  padding: 18px 54px 18px 12px;
  transition: background-color 150ms ease, color 150ms ease;
}

#top .bd4-faq .toggler:hover,
#top .bd4-faq .toggler:focus-visible,
#top .bd4-faq .toggler.activeTitle {
  background: #eaf2ff;
  color: var(--bd4-blue-dark);
}

#top .bd4-faq .toggler:focus-visible {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 3px solid #075dcc !important;
  outline-offset: 3px;
}

#top .bd4-faq .toggle_icon {
  border: 1px solid #9ab4d5;
  border-radius: 50%;
  height: 28px;
  left: auto;
  margin-top: -14px;
  right: 12px;
  top: 50%;
  width: 28px;
}

#top .bd4-faq .toggle_icon .vert_icon {
  height: 10px;
  left: 12px;
  top: 8px;
}

#top .bd4-faq .toggle_icon .hor_icon {
  left: 8px;
  top: 12px;
  width: 10px;
}

#top .bd4-faq .toggle_content {
  background: transparent;
  border: 0;
  font-size: 17px;
  max-width: 68ch;
  padding: 20px 0 28px;
}

/* Contact */
.bd4-contact-layout .entry-content-wrapper {
  align-items: start;
  display: flex;
  gap: 6%;
}

.bd4-contact-layout .flex_column {
  margin-left: 0 !important;
}

#top .bd-contact-form fieldset {
  display: block;
}

#top .bd-contact-form .form_element,
#top .bd-contact-form .form_element.element_half,
#top .bd-contact-form .form_element.element_third,
#top .bd-contact-form .form_element.element_two_third {
  clear: both;
  float: none;
  margin: 0 0 20px;
  width: 100%;
}

#top .bd-contact-form label {
  color: var(--bd4-navy);
  display: block;
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 7px;
}

#top .bd-contact-form label.textare_label.hidden {
  clip: auto;
  display: block !important;
  height: auto;
  overflow: visible;
  position: static !important;
  visibility: visible;
  width: auto;
}

#top .bd-contact-form .required,
#top .bd-contact-form .abbr-required {
  color: #b42318;
  display: inline;
  margin-left: 3px;
  position: static;
}

#top .bd-contact-form input[type='text'],
#top .bd-contact-form input[type='email'],
#top .bd-contact-form input[type='tel'],
#top .bd-contact-form select,
#top .bd-contact-form textarea {
  background: #fff;
  border: 1px solid #aab9cb;
  border-radius: 8px;
  color: var(--bd4-ink);
  min-height: 50px;
  padding: 11px 13px;
  width: 100%;
}

#top .bd-contact-form textarea {
  min-height: 180px;
  resize: vertical;
}

#top .bd-contact-form input:focus,
#top .bd-contact-form select:focus,
#top .bd-contact-form textarea:focus {
  border-color: var(--bd4-blue);
  box-shadow: 0 0 0 3px rgba(31, 94, 234, 0.18) !important;
}

#top .bd-contact-form input:focus-visible,
#top .bd-contact-form select:focus-visible,
#top .bd-contact-form textarea:focus-visible {
  box-shadow: 0 0 0 2px #fff !important;
  outline: 3px solid #075dcc !important;
  outline-offset: 2px;
}

#top .bd-contact-form .form_element.error input,
#top .bd-contact-form .form_element.error select,
#top .bd-contact-form .form_element.error textarea {
  background: #fff8f7;
  border-color: #b42318;
}

#top .bd-contact-form .form_element.error input:focus,
#top .bd-contact-form .form_element.error select:focus,
#top .bd-contact-form .form_element.error textarea:focus {
  box-shadow: 0 0 0 3px rgba(180, 35, 24, 0.16) !important;
}

.bd4-field-error {
  color: #8f1b13;
  display: block;
  font-size: 14px;
  font-weight: 700;
  margin-top: 6px;
}

.bd4-field-error[hidden] {
  display: none;
}

#top .bd-contact-form .button {
  background: var(--bd4-blue);
  border: 2px solid var(--bd4-blue);
  border-radius: 9px;
  color: #fff;
  font-size: 17px;
  font-weight: 850;
  min-height: 52px;
  padding: 10px 21px;
}

#top .bd-contact-form .button:hover {
  background: var(--bd4-blue-dark);
  border-color: var(--bd4-blue-dark);
}

#top .bd-contact-form .button:disabled,
#top .bd-contact-form .button.av-sending-button,
#top .bd-contact-form.is-submitting .button {
  background: #537bbd !important;
  border-color: #537bbd !important;
  cursor: wait;
  opacity: 1;
}

#top .bd-contact-form .error,
#top .bd-contact-form .validating {
  color: #8f1b13;
}

.bd4-form-note {
  color: var(--bd4-muted) !important;
  font-size: 14px !important;
}

.bd4-form-status {
  border-radius: 9px;
  font-size: 15px !important;
  margin: 12px 0 0 !important;
  padding: 10px 13px;
}

.bd4-form-status.is-loading {
  background: var(--bd4-blue-soft);
  color: var(--bd4-blue-dark) !important;
}

.bd4-form-status.is-error {
  background: #fff0ee;
  color: #8f1b13 !important;
}

.bd4-form-status[hidden] {
  display: none;
}

#top .bd4-contact-layout .ajaxresponse {
  background: #edf9f1;
  border: 1px solid #9dceb0;
  border-radius: 12px;
  color: #185c32;
  font-size: 17px;
  font-weight: 700;
  margin: 0;
  padding: 20px 22px;
}

#top .bd4-contact-layout .ajaxresponse.avia-form-error {
  background: #fff0ee;
  border-color: #e4aaa4;
  color: #8f1b13;
}

#top .bd4-contact-layout .ajaxresponse.hidden {
  display: none;
}

.bd4-contact-card {
  background: var(--bd4-soft);
  border: 1px solid var(--bd4-line);
  border-radius: var(--bd4-radius);
  padding: 30px;
}

.bd4-contact-card ul {
  margin: 24px 0 0;
}

.bd4-contact-card li {
  border-top: 1px solid var(--bd4-line);
  list-style: none;
  padding: 12px 0;
}

.bd4-contact-card a {
  align-items: center;
  display: inline-flex;
  max-width: 100%;
  min-height: 44px;
  overflow-wrap: anywhere;
}

#top .bd-contact-form .input_checkbox_label {
  align-items: center;
  display: inline-flex;
  min-height: 44px;
}

.bd4-contact-review-summary {
  margin-top: 0;
}

.bd4-contact-side:has(.bd4-contact-review-summary .bd-review-summary) .bd4-contact-card {
  border-bottom: 0;
  border-radius: var(--bd4-radius) var(--bd4-radius) 0 0;
  padding-bottom: 24px;
}

.bd4-contact-review-summary .bd-review-summary {
  background: var(--bd4-navy);
  border: 1px solid var(--bd4-navy);
  border-radius: 0 0 var(--bd4-radius) var(--bd4-radius);
  gap: 10px 16px;
  grid-template-columns: auto minmax(0, 1fr);
  padding: 21px 24px;
}

.bd4-contact-review-summary .bd-review-summary-score strong {
  color: #fff;
  font-size: 34px;
}

.bd4-contact-review-summary .bd-review-summary-score small,
.bd4-contact-review-summary .bd-review-count {
  color: rgba(255, 255, 255, 0.72);
}

.bd4-contact-review-summary .bd-review-stars-base {
  color: rgba(255, 255, 255, 0.28);
}

.bd4-contact-review-summary .bd-review-summary-link {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.22);
  color: #fff !important;
  grid-column: 1 / -1;
  justify-content: center;
  justify-self: stretch;
  margin-top: 4px;
}

.bd4-contact-review-summary .bd-review-summary-link:hover {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.34);
  color: #fff !important;
}

/* CTA */
.bd4-final-cta {
  background: linear-gradient(135deg, var(--bd4-navy), #143d70) !important;
}

.bd4-final-cta .content {
  padding-bottom: 52px;
  padding-top: 52px;
}

.bd4-final-cta .entry-content-wrapper {
  align-items: center;
  display: flex;
  gap: 5%;
  justify-content: space-between;
}

.bd4-final-cta .flex_column {
  margin-left: 0 !important;
}

.bd4-final-cta h2,
.bd4-final-cta p {
  color: #fff !important;
}

.bd4-final-cta p {
  color: #d4e3f6 !important;
}

/* Tablet */
@media only screen and (min-width: 1181px) and (max-width: 1250px) {
  #top .main_menu .menu > li > a {
    font-size: 14px;
    padding-left: 7px;
    padding-right: 7px;
  }

  #top .main_menu .menu > li.bd-nav-cta > a .avia-menu-text {
    padding: 12px 11px;
  }

  #top .main_menu .menu > li.bd-nav-phone > a {
    font-size: 13.5px;
  }
}

@media only screen and (max-width: 1180px) {
  .responsive #top #header .av-main-nav > li:not(.menu-item-avia-special) {
    display: none;
  }

  .responsive #top #header .av-main-nav > li.av-burger-menu-main {
    display: block;
  }

  .responsive #top #header .av-burger-menu-main > a {
    min-height: 48px;
    min-width: 48px;
    padding-left: 16px;
    padding-right: 0;
  }
}

@media only screen and (max-width: 1100px) {
  #top .bd4-section .content {
    padding-bottom: 58px !important;
    padding-top: 58px !important;
  }

  #top .bd4-page-hero > .container > .content {
    padding-bottom: 58px !important;
    padding-top: 58px !important;
  }

  #top .bd4-hero .content {
    padding-bottom: 58px !important;
    padding-top: 58px !important;
  }

  .bd4-hero .entry-content-wrapper,
  .bd4-project-casehero .entry-content-wrapper,
  .bd4-about-hero .entry-content-wrapper,
  .bd4-services-hero .entry-content-wrapper,
  .bd4-laravel-hero .entry-content-wrapper,
  .bd4-service-detail .entry-content-wrapper,
  .bd4-case .entry-content-wrapper,
  .bd4-personal .entry-content-wrapper,
  .bd4-split .entry-content-wrapper,
  .bd4-contact-layout .entry-content-wrapper,
  .bd4-final-cta .entry-content-wrapper {
    display: block;
  }

  .bd4-hero .flex_column,
  .bd4-project-casehero .flex_column,
  .bd4-about-hero .flex_column,
  .bd4-services-hero .flex_column,
  .bd4-laravel-hero .flex_column,
  .bd4-service-detail .flex_column,
  .bd4-case .flex_column,
  .bd4-personal .flex_column,
  .bd4-split .flex_column,
  .bd4-contact-layout .flex_column,
  .bd4-final-cta .flex_column {
    margin-bottom: 30px !important;
    width: 100% !important;
  }

  .bd4-project-casehero-media,
  .bd4-about-hero-media {
    margin: 38px auto 0 !important;
    max-width: 760px;
  }

  .bd4-project-casehero-visual img {
    max-height: 620px;
  }

  .bd4-services-hero .bd4-services-choice,
  .bd4-laravel-hero .bd4-laravel-hero-visual {
    margin-top: 24px;
  }

  .bd4-service-detail .bd4-service-detail-visual {
    margin-top: 36px;
  }

  .bd4-services-choice > .av_textblock_section:first-child,
  .bd4-laravel-hero-visual > .av_textblock_section:first-child {
    transform: none;
  }

  .bd4-hero-visual {
    margin-top: 34px;
  }

  .bd4-hero-composition {
    margin: 36px auto 0;
    max-width: 780px;
  }

  .bd4-laravel-hero-visual .bd4-dashboard-demo {
    margin-left: auto;
    margin-right: auto;
    max-width: 820px;
  }

  .bd4-service-grid,
  .bd4-price-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bd4-service-card:last-child {
    grid-column: 1 / -1;
  }

	.bd4-price-card:last-child {
		grid-column: auto;
		justify-self: stretch;
		width: auto;
	}

  .bd4-responsive-project-visual {
    min-height: 620px;
  }

  .bd4-system-prices article {
    grid-template-columns: 40px minmax(0, 1fr);
  }

  .bd4-system-start-price {
    grid-column: 2;
    justify-items: start;
    margin-top: 4px;
    white-space: normal;
  }

  .bd4-example-grid,
  .bd4-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bd4-example-grid article:nth-child(2),
  .bd4-steps li:nth-child(2) {
    border-right: 0;
  }
}

@media only screen and (max-width: 900px) {
	.bd4-service-grid,
	.bd4-price-grid,
  .bd4-service-package-row,
  .bd4-management-grid,
  .bd4-provider-band,
  .bd4-management-terms {
		grid-template-columns: 1fr;
	}

  .bd4-provider-band {
    gap: 32px;
  }

  .bd4-preparation-layout {
    gap: 38px;
    grid-template-columns: 1fr;
  }

  .bd4-visitor-journey {
    gap: 26px;
    grid-template-columns: 1fr;
  }

  .bd4-visitor-journey li {
    display: grid;
    gap: 18px;
    grid-template-columns: 52px minmax(0, 1fr);
    padding: 0;
    text-align: left;
  }

  .bd4-visitor-journey li:not(:last-child)::after {
    bottom: -26px;
    height: auto;
    left: 25px;
    right: auto;
    top: 46px;
    width: 2px;
  }

  .bd4-visitor-journey strong {
    margin-top: 0;
  }

	.bd4-service-card:last-child {
		grid-column: auto;
	}

  .bd4-home-proof-bar .entry-content-wrapper {
    display: block;
  }

  .bd4-home-proof-bar .flex_column {
    margin-left: 0 !important;
    width: 100% !important;
  }

  .bd4-home-proof-score {
    border-bottom: 1px solid var(--bd4-line);
    border-right: 0;
    margin-bottom: 20px !important;
    padding-bottom: 20px;
    padding-right: 0;
  }

  #footer .flex_column {
    margin-left: 0 !important;
    width: 100% !important;
  }
}

/* Enfold disables its fixed header in the responsive phone/tablet layout.
   Native sticky positioning covers that complete range without scroll JS. */
@media only screen and (max-width: 989px) {
  .responsive #top,
  .responsive #top #wrap_all {
    overflow-x: clip;
    overflow-y: visible;
  }

  .responsive.html_header_top.html_header_sticky #top #wrap_all #header {
    position: sticky;
    top: 0;
    width: 100%;
  }

  .responsive.html_header_top.html_header_sticky #top #wrap_all #main {
    padding-top: 0 !important;
  }
}

@media only screen and (min-width: 601px) and (max-width: 989px) {
  /* WordPress keeps its toolbar fixed at these widths. */
  .responsive.admin-bar.html_header_top.html_header_sticky #top #wrap_all #header {
    top: var(--wp-admin--admin-bar--height, 32px);
  }
}

/* Mobile */
@media only screen and (max-width: 767px) {

  #top,
  #top p,
  #top li,
  #top input,
  #top textarea,
  #top select,
  #top button {
    font-size: 17px;
  }

  #top h1,
  #top .bd4-title {
    font-size: clamp(36px, 10.5vw, 40px);
  }

  #top h2,
  #top .bd4-section-title {
    font-size: clamp(31px, 9vw, 36px);
  }

  #top .bd4-section .content {
    padding-bottom: 48px !important;
    padding-top: 48px !important;
  }

  #top .bd4-page-hero > .container > .content {
    padding-bottom: 48px !important;
    padding-top: 128px !important;
  }

	#top .bd4-hero .content {
		padding-bottom: 42px !important;
		padding-top: 122px !important;
	}

  .bd4-hero-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .bd4-hero-actions .avia-button-wrap,
  .bd4-hero-actions .avia-button {
    width: 100%;
  }

  .bd4-service-grid,
  .bd4-price-grid,
  .bd-review-grid,
  .bd4-example-grid,
  .bd4-steps,
  .bd4-project-gallery {
    grid-template-columns: 1fr;
  }

  .bd4-service-card:last-child,
  .bd4-price-card:last-child {
    grid-column: auto;
  }

  .bd4-price-card:last-child {
    justify-self: stretch;
    width: 100%;
  }

  .bd4-service-card,
  .bd4-price-card,
  .bd-review-card {
    padding: 24px;
  }

  .bd4-example-grid article {
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    border-right: 0;
  }

  .bd4-steps li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.18);
    border-left: 0;
    padding: 22px 0;
  }

  .bd4-case-facts > div,
  .bd4-case-story article,
  .bd4-data-list > div,
  .bd4-direct-card dl > div {
    gap: 3px;
    grid-template-columns: 1fr;
  }

  .bd4-case-story article {
    gap: 9px;
    padding: 23px 0;
  }

  .bd-review-header {
    align-items: start;
    display: grid;
    gap: 20px;
  }

  .bd-review-summary,
  .bd-review-summary-has-label {
    gap: 10px 16px;
    grid-template-columns: auto minmax(0, 1fr);
  }

  .bd-review-summary-label {
    border-bottom: 1px solid var(--bd4-line);
    grid-column: 1 / -1;
    padding-bottom: 10px;
  }

  .bd-review-summary-link {
    grid-column: 1 / -1;
    justify-content: center;
    justify-self: stretch;
    margin-top: 3px;
  }

  .bd4-home-proof-points {
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  }

  #top .bd4-review-summary-band .content {
    padding-bottom: 20px !important;
    padding-top: 20px !important;
  }

  .bd-review-section-footer {
    align-items: flex-start;
    display: grid;
    justify-content: stretch;
  }

  .bd-review-all-link {
    justify-self: start;
  }

  .bd4-hero-composition {
    display: grid;
    gap: 0;
    margin-top: 32px;
    min-height: 0;
  }

  .bd4-hero-composition::before {
    height: 100px;
    right: -20px;
    top: 52px;
    width: 100px;
  }

  .bd4-hero-site-proof {
    left: auto;
    position: relative;
    top: auto;
    width: 100%;
  }

  .bd4-dashboard-demo-compact {
    bottom: auto;
    margin: -30px 0 0 auto;
    position: relative;
    right: auto;
    width: 96%;
  }

  .bd4-dashboard-shell,
  .bd4-dashboard-demo-compact .bd4-dashboard-shell {
    display: block;
    min-height: 0;
  }

  .bd4-dashboard-nav,
  .bd4-dashboard-demo-compact .bd4-dashboard-nav {
    align-items: center;
    display: flex;
    gap: 5px;
    overflow: hidden;
    padding: 8px 9px;
  }

  .bd4-dashboard-nav b,
  .bd4-dashboard-demo-compact .bd4-dashboard-nav b {
    flex: 0 0 25px;
    height: 25px;
    width: 25px;
  }

  .bd4-dashboard-nav strong,
  .bd4-dashboard-demo-compact .bd4-dashboard-nav strong {
    flex: 0 0 auto;
    font-size: 9px;
    margin: 0 5px 0 0;
  }

  .bd4-dashboard-nav span,
  .bd4-dashboard-demo-compact .bd4-dashboard-nav span {
    flex: 0 1 auto;
    font-size: 6px;
    padding: 5px 6px;
  }

  .bd4-dashboard-nav span:nth-of-type(n+4) {
    display: none;
  }

  .bd4-dashboard-main {
    padding: 12px;
  }

  .bd4-dashboard-workspace {
    grid-template-columns: 1fr;
  }

  .bd4-dashboard-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .bd4-dashboard-form > strong,
  .bd4-dashboard-form > span,
  .bd4-dashboard-form .bd4-dashboard-field:last-of-type {
    grid-column: 1 / -1;
  }

  .bd4-dashboard-form .bd4-dashboard-control {
    font-size: 9px !important;
  }

  .bd4-dashboard-demo-compact .bd4-dashboard-form {
    display: none;
  }

  .bd4-services-hero .avia-button-wrap,
  .bd4-laravel-hero .avia-button-wrap {
    display: block;
    margin-right: 0;
  }

  .bd4-services-hero .avia-button,
  .bd4-laravel-hero .avia-button {
    width: 100%;
  }

  .bd4-choice-helper {
    padding: 23px 22px 16px;
  }

  .bd4-choice-helper a {
    gap: 10px;
  }

  .bd4-service-grid-compact .bd4-service-number {
    min-height: 0;
  }

  .bd4-responsive-project-visual {
    min-height: 0;
    padding: 20px 18px;
  }

  .bd4-project-proof-label {
    align-items: flex-start;
    display: grid;
    justify-content: start;
    margin-bottom: 18px;
  }

  .bd4-responsive-desktop {
    width: 100%;
  }

  .bd4-responsive-mobile {
    bottom: auto;
    margin: -62px auto 18px;
    position: relative;
    right: auto;
    width: min(48%, 190px);
  }

  #top .bd4-responsive-project-visual > p {
    margin: 0 !important;
    text-align: center;
  }

  .bd4-package-head,
  .bd4-package-head + .bd4-for {
    min-height: 0;
  }

  .bd4-package-head {
    padding-bottom: 17px;
  }

  .bd4-popular-badge {
    font-size: 11px;
  }

  .bd4-management-card,
  .bd4-management-grid-compact .bd4-management-card,
  .bd4-management-card-plus,
  .bd4-management-grid-compact .bd4-management-card-plus {
    padding: 24px;
  }

  #top .bd4-management-difference {
    min-height: 0;
  }

  .bd4-management-price strong {
    font-size: 42px;
  }

  .bd4-management-terms > div {
    padding: 18px;
  }

  .bd4-system-prices article,
  .bd4-project-index {
    align-items: start;
    gap: 8px;
    grid-template-columns: 1fr;
  }

  .bd4-system-prices article > strong {
    margin-top: 6px;
  }

  .bd4-system-prices article {
    grid-template-columns: 36px minmax(0, 1fr);
  }

  .bd4-system-prices article > span {
    height: 32px;
    width: 32px;
  }

  .bd4-system-start-price {
    grid-column: 2;
    justify-items: start;
    white-space: normal;
  }

  .bd4-system-start-price span {
    font-size: 17px;
    white-space: normal;
  }

  .bd4-project-gallery figure:first-child {
    grid-row: auto;
  }

  .bd4-final-cta .content {
    padding-bottom: 42px;
    padding-top: 42px;
  }

  #footer {
    padding-bottom: 18px;
    padding-top: 36px;
  }
}

@media only screen and (max-width: 480px) {
  .bd4-hero-site-proof figcaption,
  .bd4-dashboard-demo figcaption {
    align-items: start;
    display: grid;
    justify-content: start;
  }

  .bd4-browser-bar {
    padding-left: 8px;
    padding-right: 8px;
  }

  .bd4-browser-bar span {
    padding-left: 7px;
    padding-right: 7px;
  }

  .bd4-dashboard-action {
    display: none;
  }

  .bd4-dashboard-table > div {
    grid-template-columns: 0.8fr 1.15fr 0.9fr;
  }

  .bd4-dashboard-table > div > :last-child {
    display: none;
  }

  .bd4-dashboard-form {
    grid-template-columns: 1fr;
  }

  .bd4-dashboard-form > strong,
  .bd4-dashboard-form > span,
  .bd4-dashboard-form .bd4-dashboard-field:last-of-type {
    grid-column: auto;
  }

  .bd4-choice-helper a {
    align-items: start;
    gap: 3px;
    grid-template-columns: 1fr;
  }

  .bd4-choice-helper a > strong {
    white-space: normal;
  }

  .bd4-responsive-mobile {
    margin-top: -42px;
    width: min(52%, 172px);
  }

  .bd4-review-summary {
    align-items: center;
  }

  .bd4-home-proof-points {
    grid-template-columns: 1fr;
  }

  .bd-review-card-top,
  .bd-review-card footer {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .bd-review-source-link {
    margin-left: -4px;
  }

}

@media only screen and (max-width: 480px) {
  .bd4-management-limits {
    grid-template-columns: 1fr;
  }

  #top .bd4-service-price-list p {
    grid-template-columns: 1fr;
  }

  .bd4-service-price-list span,
  .bd4-service-price-list small {
    grid-column: 1;
    text-align: left;
  }
}

@media (max-width: 767px) {
  .bd4-review-intro {
    align-items: flex-start;
    display: block;
  }

  .bd4-review-card {
    min-height: 0;
    padding: 24px 22px;
  }

}

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

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}

	#top a:hover,
	#top button:hover,
	#top .avia-button:hover {
		transform: none !important;
	}
}
