:root {
    --ss-color-81801: #5273C1;
    --ss-color-81801-dark: #395aa8;
}


:root {
  --ss-title-font-family: 'Abel', sans-serif;
  --ss-paragraph-font-family: 'Arimo', sans-serif;
  --ss-navigation-font-family: 'Rubik', sans-serif;
  --ss-navigation-font-size: 14px;
}


.site-button {
    border-style: solid;


  border-radius: 5px;

    box-shadow: 0px 4px 12px 1.28px rgba(0, 0, 0, 0.3);

}


body {
  background-color: #878787;
}

body:before {
    background-image: url(/images/cloudfront-background.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}


.integrity-name-notice {
    max-width: 700px;
    margin: 10px auto 15px;
    padding: 8px 12px;
    font-size: 12px;
    line-height: 1.45;
    text-align: center;
}

.integrity-name-notice strong {
    font-weight: 700;
}

/* Keep Privacy Concerns text together beside its image */
#post_11875124 .content {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

#post_11875124 .media--outer-wrapper {
    flex: 0 0 33.333%;
    margin: 0;
}

#post_11875124 .copy {
    flex: 1 1 auto;
    min-width: 0;
}

@media (max-width: 599px) {
    #post_11875124 .content {
        display: block;
    }

    #post_11875124 .media--outer-wrapper {
        width: 100%;
        margin-bottom: 20px;
    }
}

/* Homepage OUR SERVICES cards */
.post-item_list .items-container.item-count-5 .item {
  display: flex;
  flex-direction: column;
}

/* Normalize homepage service-card image areas */
.post-item_list .items-container.item-count-5 .media--outer-wrapper {
    aspect-ratio: 3 / 2;
    overflow: hidden;
}

.post-item_list .items-container.item-count-5 .media--outer-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}



/* Test: align homepage service-card buttons at the bottom */
.post-item_list .items-container.item-count-5 .item .copy {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

.post-item_list .items-container.item-count-5 .post-button--wrapper {
    margin-top: auto;
}

/* Align blue service-card descriptions */
.post-item_list .items-container.item-count-5 .item--description {
    min-height: 2.8em;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.post-item_list .items-container.item-count-5 .item--description h1 {
    margin: 0;
}

.post-item_list .items-container.item-count-5 .item--description br:first-child {
    display: none;
}

/* Fine-tune descriptions under the two-line titles */
.post-item_list .items-container.item-count-5 .item:nth-child(1) .item--description,
.post-item_list .items-container.item-count-5 .item:nth-child(2) .item--description,
.post-item_list .items-container.item-count-5 .item:nth-child(5) .item--description {
    position: relative;
    top: 1.0em;
}

/* Fine-tune descriptions under the two-line titles */
.post-item_list .items-container.item-count-5 .item:nth-child(3) .item--description,
.post-item_list .items-container.item-count-5 .item:nth-child(4) .item--description {
    position: relative;
    top: -2.0em;
}

/* On narrower layouts, keep descriptions in normal flow above buttons */
@media (max-width: 1023px) {
    .post-item_list .items-container.item-count-5 .item--description {
        position: static !important;
        top: auto !important;
        min-height: 2.8em;
    }
}

/* Tablet: bring Threat Assessment description closer to its button */
@media (min-width: 600px) and (max-width: 1023px) {
    .post-item_list .items-container.item-count-5 .item:nth-child(4) .item--description {
        margin-bottom: -0.6em;
    }
}

/* Local contact form styling */
.content > form ul {
  list-style: none;
  margin: 0 auto;
  width: 90%;
}

.content > form li + li {
  margin-top: 23px;
}

.content > form input[type=email],
.content > form input[type=tel],
.content > form input[type=text],
.content > form textarea {
  box-sizing: border-box;
  width: 100%;
}

.content > form textarea {
  height: 115px;
}

/* Local replacement for original email-form layout */
#post_11875129 .post--title {
  margin-bottom: 15px;
}

#post_11875129 .description {
  margin-bottom: 1.5em;
}

#post_11875129 form {
  padding-block: 5%;
}

#post_11875129 form ul {
  list-style: none;
  margin: 0 auto;
  width: 90%;
}

#post_11875129 form li + li {
  margin-top: 23px;
}

#post_11875129 input[type=email],
#post_11875129 input[type=tel],
#post_11875129 input[type=text],
#post_11875129 textarea {
  box-sizing: border-box;
  width: 100%;
}

#post_11875129 textarea {
  height: 115px;
}
