/* Rectangular prism modules — single frame, flat faces, no shadows (manus-box-faces reference) */

:root {
  --dp-ink: #121c28;
  --dp-depth: 10px;
  --dp-front: #ffffff;
  --dp-face-right: #6b8498;
  --dp-face-bottom: #516a7e;
}

body {
  background:
    linear-gradient(90deg, rgba(36, 52, 71, 0.04) 1px, transparent 1px) 0 0 / 24px 24px,
    linear-gradient(rgba(36, 52, 71, 0.04) 1px, transparent 1px) 0 0 / 24px 24px,
    #e3e9ef !important;
  padding: 1.5rem 2vw 2.75rem !important;
}

/* Front face of each box */
.topbar,
.menu-top-navigation-container,
.secondbar,
.content,
.awards,
.calltoaction > .wpcf7,
.calltoaction > div[role="form"].wpcf7,
.calltoaction > h2,
.calltoaction > .benefits,
.calltoaction > .contactinfo,
.calltoaction > .footer,
.content ul,
.content ol {
  position: relative;
  z-index: 0;
  box-sizing: border-box;
  border: 1px solid var(--dp-ink) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: var(--dp-front) !important;
}

/* Bottom face */
.topbar::before,
.menu-top-navigation-container::before,
.secondbar::before,
.content::before,
.awards::before,
.calltoaction > .wpcf7::before,
.calltoaction > div[role="form"].wpcf7::before,
.calltoaction > h2::before,
.calltoaction > .benefits::before,
.calltoaction > .contactinfo::before,
.calltoaction > .footer::before,
.content ul::before,
.content ol::before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  top: 100%;
  left: 0;
  width: calc(100% - var(--dp-depth));
  height: var(--dp-depth);
  box-sizing: border-box;
  border: 1px solid var(--dp-ink);
  border-top: none;
  border-radius: 0;
  box-shadow: none;
  background: var(--dp-face-bottom);
}

/* Right face */
.topbar::after,
.menu-top-navigation-container::after,
.secondbar::after,
.content::after,
.awards::after,
.calltoaction > .wpcf7::after,
.calltoaction > div[role="form"].wpcf7::after,
.calltoaction > h2::after,
.calltoaction > .benefits::after,
.calltoaction > .contactinfo::after,
.calltoaction > .footer::after,
.content ul::after,
.content ol::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  top: 0;
  left: 100%;
  width: var(--dp-depth);
  height: calc(100% - var(--dp-depth));
  box-sizing: border-box;
  border: 1px solid var(--dp-ink);
  border-left: none;
  border-radius: 0;
  box-shadow: none;
  background: var(--dp-face-right);
}

.topbar,
.menu-top-navigation-container,
.secondbar,
.content,
.awards,
.calltoaction {
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: calc(1.85rem + var(--dp-depth));
}

.topbar {
  width: auto !important;
  height: auto !important;
  min-height: 5.5rem;
  padding: 1rem 1.25rem !important;
  margin-right: 3vw;
}

.topbar > *,
.secondbar .inner,
.content > * {
  position: relative;
  z-index: 1;
}

.menu-top-navigation-container {
  padding: 0 !important;
  margin-left: 2.5vw;
  margin-right: auto;
  overflow: visible;
  background: transparent !important;
  border: none !important;
}

.menu-top-navigation-container::before,
.menu-top-navigation-container::after {
  display: none;
}

.menu-top-navigation-container .menu {
  margin: 0 !important;
  padding: 1.25rem 1rem !important;
  position: relative;
  box-sizing: border-box;
  border: 1px solid var(--dp-ink) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: linear-gradient(180deg, #eef4f9 0%, #dce8f2 100%) !important;
}

.menu-top-navigation-container .menu::before {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  top: 100%;
  left: 0;
  width: calc(100% - var(--dp-depth));
  height: var(--dp-depth);
  box-sizing: border-box;
  border: 1px solid var(--dp-ink);
  border-top: none;
  background: var(--dp-face-bottom);
}

.menu-top-navigation-container .menu::after {
  content: "";
  position: absolute;
  z-index: -1;
  pointer-events: none;
  top: 0;
  left: 100%;
  width: var(--dp-depth);
  height: calc(100% - var(--dp-depth));
  box-sizing: border-box;
  border: 1px solid var(--dp-ink);
  border-left: none;
  background: var(--dp-face-right);
}

.menu-top-navigation-container .menu a {
  color: #243447 !important;
  font-weight: 600;
}

.menu-top-navigation-container .menu a:hover {
  color: #d03027 !important;
}

.secondbar {
  width: auto !important;
  margin-right: 4vw;
  overflow: visible;
}

.content {
  padding: 2rem 2.5rem !important;
  margin-left: 1.5vw;
}

.content ul,
.content ol {
  margin: 1.25rem 0 !important;
  padding: 1rem 1.5rem !important;
  list-style-position: inside;
}

.content ul::before,
.content ol::before,
.content ul::after,
.content ol::after {
  --dp-depth: 8px;
}

.calltoaction {
  display: grid !important;
  grid-template-columns: minmax(260px, 32%) 1fr;
  gap: 1.15rem;
  align-items: start;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  max-width: 1160px;
}

.calltoaction::before,
.calltoaction::after {
  display: none !important;
}

.calltoaction > .wpcf7,
.calltoaction > div[role="form"].wpcf7 {
  grid-column: 1;
  grid-row: 1 / span 6;
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 1.25rem 1.5rem !important;
  color: #243447 !important;
  background: linear-gradient(180deg, #e4eef6 0%, #c5d8e8 100%) !important;
}

.calltoaction > .wpcf7::after,
.calltoaction > div[role="form"].wpcf7::after {
  background: #628099;
}

.calltoaction > .wpcf7::before,
.calltoaction > div[role="form"].wpcf7::before {
  background: #4a6278;
}

.calltoaction > h2,
.calltoaction > .benefits,
.calltoaction > .contactinfo,
.calltoaction > p,
.calltoaction > hr,
.calltoaction > .footer {
  grid-column: 2;
}

.calltoaction > h2,
.calltoaction > .benefits,
.calltoaction > .contactinfo {
  padding: 1rem 1.25rem;
  margin: 0 0 1rem 0 !important;
}

.calltoaction > h2 {
  margin-top: 0 !important;
}

.calltoaction > hr {
  display: none;
}

.calltoaction > .footer {
  grid-column: 1 / -1;
  padding: 0.75rem 1rem;
  margin: 0 !important;
}

.calltoaction .wpcf7 input,
.calltoaction .wpcf7 textarea {
  width: 100% !important;
  max-width: 100%;
  border: 1px solid var(--dp-ink) !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  background: #fff;
}

.calltoaction .wpcf7 input[type="submit"] {
  background: #d03027 !important;
  border: 1px solid var(--dp-ink) !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.awards {
  padding: 1.5rem !important;
  text-align: center;
  margin-right: 2vw;
}

.highlight {
  border-radius: 0 !important;
  border: 1px solid var(--dp-ink) !important;
  box-shadow: none !important;
  background: #fff;
}

@media (max-width: 900px) {
  .topbar,
  .menu-top-navigation-container,
  .secondbar,
  .content,
  .awards {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .calltoaction {
    grid-template-columns: 1fr;
  }

  .calltoaction > .wpcf7,
  .calltoaction > div.wpcf7 {
    grid-row: auto;
  }

  .calltoaction > h2,
  .calltoaction > .benefits,
  .calltoaction > .contactinfo,
  .calltoaction > p,
  .calltoaction > .footer {
    grid-column: 1;
  }
}
