@charset "UTF-8";
/* CSS Document */

@font-face {
  font-family:jubilat;
  src:url(../fonts/Jubilat/Jubilat-Regular.woff2)format("woff2");
  font-weight:300;
  font-style:normal
}
@font-face {
  font-family:jubilat;
  src:url(../fonts/Jubilat/Jubilat-RegularItalic.woff2)format("woff2");
  font-weight:300;
  font-style:italic
}
@font-face {
  font-family:jubilat;
  src:url(../fonts/Jubilat/JubilMed.woff2)format("woff2");
  font-weight:400;
  font-style:normal
}
@font-face {
  font-family:jubilat;
  src:url(../fonts/Jubilat/JubilMed.woff2)format("woff2");
  font-weight:400;
  font-style:normal
}
@font-face {
  font-family:jubilat;
  src:url(../fonts/Jubilat/JubilMedIta.woff2)format("woff2");
  font-weight:400;
  font-style:italic
}
@font-face {
  font-family:rubik;
  src:url(../fonts/Rubik/Rubik-Regular.woff2)format("woff2");
  font-weight:400;
  font-style:normal
}
@font-face {
  font-family:rubik;
  src:url(../fonts/Rubik/Rubik-Medium.woff2)format("woff2");
  font-weight:500;
  font-style:normal
}
@font-face {
  font-family:rubik;
  src:url(../fonts/Rubik/Rubik-SemiBold.woff2)format("woff2");
  font-weight:600;
  font-style:normal
}
@font-face {
  font-family:rubik;
  src:url(../fonts/Rubik/Rubik-Bold.woff2)format("woff2");
  font-weight:700;
  font-style:normal
}

/* =======
____ _    ____ ___  ____ _       _  _ ____ ____ ____ 
| __ |    |  | |__] |__| |       |  | |__| |__/ [__  
|__] |___ |__| |__] |  | |___     \/  |  | |  \ ___]

======= */


:root {
/* =======
COLOR VAR
======= */
/* Main Colors */
	--pfMain:#152A44;
	--pfGreen:#1EA140;
	--pfBrown:#A0630B;
	--pfPurple:#721EA2;
	--pfButtercream:#FFF9EE;

/* Greyscale */
	--white:#fff;
	--pfChalk:#F7F7F7;
	--pfGreyMedium:#606060;
	--pfCarbon:#333333;


/* =======
TYPOGRAPHY VAR
======= */
/* Main Font Weights */
	--fontRegular:400;
	--fontMedium:500;
	--fontBold:700;

/* =======
LAYOUT VAR
======= */

/* page padding */
	--pgBtm: 10rem;
	--pgTop: 15rem;
}

/* =======
____ _    ____ ___  ____ _       ____ _    ____ ____ ____ ____ ____ 
| __ |    |  | |__] |__| |       |    |    |__| [__  [__  |___ [__  
|__] |___ |__| |__] |  | |___    |___ |___ |  | ___] ___] |___ ___]

======= */


/* =======
TYPOGRAPHY CLASSES
======= */

.fontRegular {font-weight: var(--fontRegular);}
.fontMedium {font-weight: var(--fontMedium);}
.fontBold {font-weight: var(--fontBold);}


/* =======
COLOR CLASSES
======= */

.pfMain {color: var(--pfMain);}
.pfGreen {color: var(--pfGreen);}
.pfPurple {color: var(--pfPurple);}
.pfButtercream {color: var(--pfButtercream);}

.pfGreyMedium {color: var(--pfGreyMedium);}
.pfCarbon {color: var(--pfCarbon);}


/* =======
LAYOUT CLASSES
======= */

.pageBottom {
	padding-bottom: var(--pgBtm);
}

.curved-edge-top {
  mask: radial-gradient(60% 120px at top,transparent 99%,black);
}


/* amended */

.asdf .row,
.asdf .col {
  border:1px solid #000
}
body {
  font-family:rubik,Arial,sans-serif
}
p {
  font-weight:400;
  line-height:1.75
}
.text-uppercase {
  letter-spacing:.05em
}
.siteWrap {
  max-width:1800px;
  margin-left:auto;
  margin-right:auto
}
.bg-grey {
  background-color:#606060
}
.pylons {
  background:url(../images/bg_patterns/triangle_pylons.png);
  background-size:100px
}
.pylonsDark {
  background:url(../images/bg_patterns/triangle_pylons_dark.png);
  background-size:100px
}
.rubik {
  font-family:rubik,sans-serif
}
.rubik-bold {
  font-family:rubik-bold,sans-serif
}
.accent,.jubilat {
  font-family:jubilat,serif
}
.navbar {
  padding-top:2.5rem
}
.nav-link {
  font-size:1.1rem;
  font-weight:500
}
.homeWrap {
  background-image:url(../images/background_shapes/blue-cloud-sm.webp);
  background-position:95% -100px;
  background-repeat:no-repeat;
  background-size:480px
}
.homepage-h1 {
  font-size:54px;
  font-weight:700;
  line-height:64px
}
.homepage-h2 {
  font-size:1.688rem;
  font-weight:400;
  line-height:2.375rem
}
.homepage-essential-text {
  color:#fcf1db;
  font-size:14px;
  font-weight:500;
  line-height:13px;
  letter-spacing:.04em;
  padding-top:1rem
}
.homepage-services-text {
  color:#fcf1db;
  font-size:60px;
  font-weight:600;
  letter-spacing:-.01em;
  margin-bottom:2rem;
  text-align:center
}
.homepage-operational-bases {
  font-size:20px;
  font-weight:400;
  line-height:32px
}
.homepage-operational-bases-list {
  font-size:20px;
  font-weight:600;
  line-height:45px;
  list-style-type:circle
}
.homepage-services-callout {
  background-color:#fff;
  border-width:5px;
  color:#152a45;
  font-size:21px;
  font-weight:600;
  line-height:25px;
  letter-spacing:0
}
.btn-linked-learn {
  --bs-btn-padding-x:.75rem;
  --bs-btn-padding-y:.375rem;
  --bs-btn-font-family: ;
  --bs-btn-font-size:1rem;
  --bs-btn-font-weight:700;
  --bs-btn-line-height:1.5;
  --bs-btn-color:var(--bs-body-color);
  --bs-btn-bg:transparent;
  --bs-btn-border-width:var(--bs-border-width);
  --bs-btn-border-color:transparent;
  --bs-btn-border-radius:.375rem;
  --bs-btn-hover-border-color:transparent;
  --bs-btn-box-shadow:inset 0 1px 0 rgba(255,255,255,0.15),0 1px 1px rgba(0,0,0,0.075);
  --bs-btn-disabled-opacity:.65;
  --bs-btn-focus-box-shadow:0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
  display:inline-block;
  padding:var(--bs-btn-padding-y)var(--bs-btn-padding-x);
  font-family:var(--bs-btn-font-family);
  font-size:var(--bs-btn-font-size);
  font-weight:var(--bs-btn-font-weight);
  line-height:var(--bs-btn-line-height);
  color:var(--bs-btn-color);
  text-align:center;
  text-decoration:none;
  vertical-align:middle;
  cursor:pointer;
  user-select:none;
  border:var(--bs-btn-border-width)solid var(--bs-btn-border-color);
  border-radius:var(--bs-btn-border-radius);
  background-color:var(--bs-btn-bg);
  transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
  background-color:#fff;
  border-width:5px;
  color:#152a45;
  font-family:rubik,sans-serif;
  font-size:21px;
  font-weight:600;
  line-height:25px;
  letter-spacing:0
}
.homepage-why-personified {
  font-size:20px;
  font-weight:500;
  line-height:25px;
  letter-spacing:.08em;
  color:#89b3ce;
  margin-bottom:2rem
}
.homepage-why-personified-h2 {
  color:#fff;
  font-size:36px;
  font-weight:600;
  line-height:40px
}
.whyBorder {
  border-right:dashed;
  border-color:#89b3ce;
  border-width:3px
}
.homepage-benefits-callout {
  background-color:#89b3ce;
  border-width:5px;
  color:#152a45;
  padding:15px;
  font-size:20px;
  font-weight:600;
  line-height:26px;
  letter-spacing:0
}
.homepage-benefits-callout:hover {
  background-color:#7fa8c3
}
.homepage-investing {
  font-size:56px;
  font-weight:700;
  line-height:72px;
  margin-bottom:5rem
}
.homepage-investing-blurb {
  font-size:24px;
  font-weight:400;
  line-height:36px;
  letter-spacing:.01em
}
.homepage-clients-callout {
  background-color:#fff;
  color:#152a44;
  border:4px solid #152a44;
  font-size:20px;
  font-weight:600;
  line-height:25px;
  margin-top:8rem;
  width:fit-content
}
.homepage-quotes {
  padding-top:1rem;
  position:relative;
  top:70px;
  z-index:1
}
.homepage-client-quotes {
  font-family:rubik,sans-serif;
  font-size:24px;
  font-weight:400;
  line-height:32px;
  letter-spacing:0;
  color:#fcf1db
}
.homepage-our-mission {
  font-family:rubik,sans-serif;
  font-size:56px;
  font-weight:600;
  line-height:64px;
  letter-spacing:-.01em;
  margin-bottom:2rem
}
.homepage-our-mission-blurb {
  font-family:rubik,sans-serif;
  font-size:18px;
  font-weight:400;
  line-height:29px;
  letter-spacing:.01em
}
.services-width {
  width:1240px;
  margin-left:100px
}
.serviceLanding {
  background-image:url(../images/background_shapes/blue-cloud-2-lg.png);
  background-repeat:no-repeat;
  background-position:7% -200px;
  background-size:600px
}
@supports(background-image:url("../images/background_shapes/blue-cloud-2-lg.webp")) {
  .serviceLanding {
    background-image:url(../images/background_shapes/blue-cloud-2-lg.webp)
  }
}
.services-h1 {
  font-family:rubik,sans-serif;
  line-height:56px;
  letter-spacing:-.01em
}
.services-h1-superhead {
  font-family:rubik,sans-serif;
  font-size:21px;
  font-weight:700;
  line-height:56px;
  letter-spacing:0;
  margin-bottom:10px
}
.services-h1-blurb {
  font-family:jubilat,serif;
  font-size:44px;
  font-weight:500;
  line-height:58px;
  letter-spacing:.02em;
  margin-top:4rem
}
.ITadminCloud {
  top:-260px;
  left:70%
}
.services-it-admin {
  font-family:rubik,sans-serif;
  font-size:48px;
  font-weight:700;
  line-height:60px;
  letter-spacing:0;
  width:50%
}
.services-it-admin-list {
  font-family:rubik,sans-serif;
  font-size:18px;
  font-weight:400;
  line-height:33px;
  letter-spacing:0
}
.services-cybersecurity {
  font-family:rubik,sans-serif;
  font-size:60px;
  font-weight:700;
  line-height:60px;
  letter-spacing:0
}
.services-cybersecurity-list {
  font-family:rubik,sans-serif;
  font-size:18px;
  font-weight:400;
  line-height:33px;
  letter-spacing:0
}
.services-admin-corner {
  margin-top:-52px;
  margin-left:-52px
}
.services-admin-grid {
  position:relative;
  top:50px;
  left:-50px
}
.services-cyber-section {
  margin-top:-300px
}
.services-strategy-section {
  margin-top:-300px
}
.services-cyber-corner {
  -webkit-transform:scaleX(-1);
  transform:scaleX(-1);
  margin-top:-52px;
  margin-left:-52px
}
.services-strategy {
  font-family:rubik,sans-serif;
  font-size:80px;
  font-weight:700;
  line-height:90px;
  letter-spacing:0;
  margin-bottom:2rem
}
.services-strategy-list {
  font-family:rubik,sans-serif;
  font-size:18px;
  font-weight:400;
  line-height:33px;
  letter-spacing:0
}
.stratCompliance .serviceImg {
  padding-top:1rem
}
.stratCompliance .serviceGrid {
  height:480px;
  top:-60px
}
.whyLanding {
  background-image:url(../images/background_shapes/bread-cloud-lg.png),url(../images/background_shapes/green-cloud-3-lg.png);
  background-position:-10% -140px,125% -140px;
  background-repeat:no-repeat
}
@supports(background-image:url("../images/background_shapes/bread-cloud-lg.webp"),url("../images/background_shapes/green-cloud-3-lg.webp")) {
  .whyLanding {
    background-image:url(../images/background_shapes/bread-cloud-lg.webp),url(../images/background_shapes/green-cloud-3-lg.webp)
  }
}
.whyDome {
  margin-top:-2rem
}
.firstDome {
  margin-top:-5rem
}
@keyframes Rotate {
  from {
    transform:rotate(0)
  }
  to {
    transform:rotate(800deg)
  }
}
.whyWheel {
  left:calc(50% - 300px);
  top:-300px;
  opacity:10%;
  animation:Rotate 360s linear infinite
}
.why-h1 {
  font-family:jubilat,serif;
  font-size:72px;
  font-weight:500;
  line-height:72px;
  letter-spacing:.02em
}
.why-h1-superhead {
  font-family:rubik,sans-serif;
  font-size:21px;
  font-weight:700;
  line-height:56px;
  letter-spacing:0
}
.fourCards {
  max-height:480px
}
.whyCards {
  position:relative;
  top:-16rem
}
.whyCard {
  max-width:480px;
  min-height:280px
}
.whyCard img {
  width:45px
}
.why-four-boxes-h2 {
  font-size:48px;
  font-weight:600;
  line-height:.8em;
  letter-spacing:-.01em;
  color:#fcf1db
}
.why-four-boxes-blurb {
  font-size:15px;
  font-weight:400;
  line-height:25px;
  letter-spacing:.01em
}
.softCross {
  background:url(../images/bg_patterns/soft_cross_100.png)repeat;
  background-size:80px
}
.why-testimonials-callout {
  background-color:#fff;
  color:#152a44;
  border:4px solid #152a44;
  padding:15px;
  border-radius:0%;
  font-size:24px;
  font-weight:600;
  line-height:13px;
  letter-spacing:.03em;
  margin:-1.5rem 0 3rem
}
.why-testimonials-quotes {
  font-size:15px;
  font-weight:400;
  line-height:27px;
  letter-spacing:.01em;
  text-align:left
}
.whyTestimonials {
  background-color:#fff;
  background-image:url(../images/background_shapes/bread-cloud-2-lg.webp);
  background-repeat:no-repeat;
  background-position:50% -180px;
  background-size:60%;
  margin-bottom:5rem
}
.testimonials {
  padding-top:8rem
}
.why-testimonials-quotes-byline {
  font-size:15px;
  font-weight:600;
  line-height:28px;
  letter-spacing:.01em
}
.opItem {
  padding:2rem 0
}
.cyberBadge {
  margin-top:-3rem
}
.why-cybersecurity-icons {
  max-width:75px
}
.why-cybersecurity-h2 {
  font-size:40px;
  font-weight:600;
  line-height:58px;
  letter-spacing:-.01em;
  margin:4rem 0 6rem
}
.why-cybersecurity-list {
  font-size:18px;
  font-weight:400;
  line-height:28px;
  letter-spacing:.01em;
  margin-bottom:0
}
.why-cybersecurity-hr hr {
  border:none;
  border-bottom:3px dashed #dfc471;
  color:#fff;
  background-color:#96371d;
  height:3px;
  width:90%;
  margin-left:100px;
  opacity:1
}
.why-cybersecurity-blurb {
  font-size:24px;
  font-weight:400;
  line-height:36px;
  letter-spacing:.01em
}
.why-threats {
  font-size:18px;
  color:#fffdc3
}
.operationalContent {
  padding-bottom:10rem
}
.opBorder {
  border-bottom:3px dashed #dfc471
}
.operationalContent .riskPill {
  margin-left:unset;
  margin-right:10px
}
.operationalContent .pillSet {
  flex-direction:initial;
  width:440px
}
.caseLanding {
  padding:12rem 0 6rem
}
.caseLanding picture {
  margin-left:-8rem
}
.caseIllustration {
  margin-top:-3rem
}
.case {
  padding:6rem 0 16rem;
  position:relative
}
.case-1::before,
.case-2::before,
.case-3::before {
  content:"";
  width:102%;
  height:calc(var(--size)/var(--aspect-ratio));
  display:block;
  background-size:100%;
  position:absolute;
  top:calc(-62vw/var(--aspect-ratio));
  margin-left:-10px;
  --size:1140px;
  --aspect-ratio:8.4
}
.case-1::before,
.case-3::before {
  background:url(../images/crests/case_crest_1.svg)no-repeat;
  background-size:100%
}
.case-2::before {
  background:url(../images/crests/case_crest_2.svg)no-repeat;
  background-size:100%
}
.case-h1-superhead {
  font-family:rubik,sans-serif;
  font-size:21px;
  font-weight:700;
  line-height:30px;
  letter-spacing:0
}
.case-h1 {
  font-family:jubilat,serif;
  font-size:96px;
  font-weight:500;
  line-height:100px;
  letter-spacing:.02em
}
.case-section-h2 {
  font-family:jubilat,serif;
  font-size:36px;
  font-weight:500;
  line-height:50px;
  letter-spacing:.02em
}
.case-section-1-h2 {
  margin-bottom:40px;
  color:#c7dff9;
  font-size:48px;
  letter-spacing:.02em
}
.case-section-1-h2-superhead {
  font-family:rubik,sans-serif;
  font-size:15px;
  font-weight:500;
  line-height:42px;
  letter-spacing:.06em
}
.case-section-1-blurb {
  font-family:rubik,sans-serif;
  font-size:15px;
  font-weight:400;
  line-height:32px;
  letter-spacing:0
}
.case-section-1-list {
  font-family:rubik,sans-serif;
  font-size:14px;
  font-weight:400;
  line-height:24px;
  letter-spacing:0;
  text-align:left;
  color:#c70ff9;
  background-image:url(../images/corners/case_corner_tl.svg),url(../images/corners/case_corner_tr.svg),url(../images/corners/case_corner_br.svg),url(../images/corners/case_corner_bl.svg);
  background-repeat:no-repeat;
  background-size:32px;
  background-position:0 0,100% 0,100% 100%,0 100%
}
.case-section-1-list li {
  list-style-type:none;
  border-bottom:1px solid #2d4e78;
  color:#89b3ce;
  padding:20px 0 20px 30px;
  background-image:url(../images/trinkets/case_diamond.svg);
  background-repeat:no-repeat;
  background-size:16px;
  background-position:0 25px
}
.case-section-1-list li:last-child {
  border-bottom:none
}
.case-section-2 {
  margin-top:100px;
  margin-left:-20px
}
.case-section-3 {
  margin-top:100px;
  margin-left:-20px
}
.companyPage {
  background-image:url(../images/background_shapes/intersection.png),url(../images/background_shapes/blue-cloud-lg.webp);
  background-position:25% -60px,90% -130px;
  background-repeat:no-repeat;
  background-size:500px,700px
}
.companyWrap {
  background-repeat:no-repeat;
  background-image:url(../images/background_shapes/blue-cloud-2-lg.webp);
  background-position:0 500px;
  background-size:560px
}
.company-h1-superhead {
  font-size:30px;
  font-weight:700;
  line-height:56px;
  letter-spacing:0
}
.company-h1 {
  font-family:jubilat,serif;
  font-size:84px;
  font-weight:500;
  line-height:90px;
  letter-spacing:.02em
}
.commitmentNotch {
  width:30px;
  height:30px;
  background:#fff;
  position:absolute;
  left:-15px;
  bottom:-15px
}
.notchInner {
  width:15px;
  height:15px;
  background:rgba(var(--bs-success-rgb),var(--bs-border-opacity))!important;
  margin-top:15px
}
.company-dei-h2 {
  font-size:32px;
  font-weight:700;
  line-height:40px;
  letter-spacing:-.01em
}
.company-dei-h2-blurb {
  font-size:15px;
  font-weight:400;
  line-height:28px;
  letter-spacing:.01em
}
.company-dei-h2-blurb span {
  font-weight:600
}
.teamHead {
  background:url(../images/corners/top_right_outline_green.svg)no-repeat;
  background-position:100% 20px;
  background-size:50px;
  margin-top:3rem
}
.card {
  --bs-card-border-color:rgba(0,0,0,0.05)
}
.teamSet {
  background:url(../images/bg_patterns/dark_cross.png)repeat;
  background-size:80px;
  margin-top:1rem;
  margin-bottom:8rem
}
.teamSet .card {
  overflow:clip
}
.teamSet .card-body a {
  width:18px;
  height:18px;
  display:flex;
  margin-left:auto;
  cursor:pointer
}
.cardThumb img {
  width:100%
}
.joinCard a {
  text-decoration:none;
  color:#fcf1db;
  width:fit-content;
  border-radius:.15rem;
  display:flex;
  margin-top:9rem
}
.joinCard .card {
  height:100%
}
.joinThumb {
  border:3px dashed;
  border-color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important;
  border-radius:var(--bs-card-border-radius);
  background:url(../images/background_shapes/personified_join_team.gif)no-repeat;
  background-position:50% calc(100% + 40px);
  background-size:90%;
  flex-direction:column;
  height:100%
}
.joinThumb p {
  font-weight:400;
  font-size:13px;
  line-height:20px
}
.company-working-blurb {
  font-size:35px;
  font-weight:400;
  line-height:55px;
  letter-spacing:.01em
}
.company-team-superhead {
  font-size:21px;
  font-weight:700;
  line-height:56px;
  letter-spacing:0;
  margin-bottom:0
}
.company-staffer-title {
  font-size:11px;
  font-weight:400;
  line-height:18px;
  color:#152a45;
  margin-bottom:10px
}
.company-team-h2 {
  font-family:jubilat,serif;
  font-size:72px;
  font-weight:500;
  line-height:84px;
  letter-spacing:.02em;
  text-align:left
}
.company-staffer-name {
  font-size:18px;
  font-weight:500;
  line-height:28px;
  letter-spacing:0;
  color:#152a45
}
.modal-header {
  align-items:flex-start
}
.modal-content {
  border:0;
  overflow:clip
}
.modal-title {
  margin-bottom:.375rem
}
.company-modal-name {
  font-size:18px;
  font-weight:500;
  line-height:24px;
  letter-spacing:0
}
.company-modal-header {
  background:#f3f3f3
}
.company-modal-title {
  font-size:10px;
  font-weight:400;
  line-height:18px;
  margin-bottom:0
}
.company-modal-close-image {
  width:19.5px;
  transform:rotate(45deg)
}
.company-staffer-bio {
  font-size:15px;
  font-weight:400;
  line-height:28px;
  letter-spacing:.01em
}
.careersEmbed {
  margin-bottom:8rem
}
.bzOpeningsList {
  list-style-type:none;
  padding-left:0
}
.bzOpening {
  border-bottom:2px solid #ececec;
  margin-bottom:1.5rem;
  padding-bottom:1.75rem
}
.bzOpening a {
  --bs-text-opacity:1;
  color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important;
  display:block;
  position:relative;
  text-decoration:none
}
.bzOpening button {
  background-color:#152a44!important;
  border:none;
  border-radius:4px;
  color:#fff;
  cursor:pointer!important;
  display:inline-block;
  font-weight:200;
  letter-spacing:.5px;
  margin-top:.5rem;
  outline:0;
  padding:6px 16px;
  position:absolute;
  right:0;
  text-decoration:none;
  -webkit-transition:.5s;
  -moz-transition:.5s;
  -ms-transition:.5s;
  -o-transition:.5s;
  transition:.5s
}
.bzOpening .h2,
.bzOpening h2 {
  font-size:1.75rem;
  font-weight:400;
  line-height:1.375
}
.bzMeta {
  display:flex;
  list-style-type:none;
  padding:.5rem 0 0
}
.bzMeta li {
  border-right:1px solid #c8c8c8;
  font-size:.925rem;
  line-height:1;
  margin-right:1rem;
  padding-right:1rem
}
.bzMeta li:last-child {
  border-right:0
}
.contactLanding {
  background-image:url(../images/background_shapes/contact-bg-lg.png),url(../images/background_shapes/blue-cloud-lg.webp);
  background-position:5% 0,130% -130px;
  background-repeat:no-repeat;
  background-size:500px,800px
}
.contactBox {
  margin-top:-5rem;
  border-radius:6px;
  margin-bottom:11rem;
  background-position:49px 40px,calc(100% - 40px)40px,40px calc(100% - 40px),calc(100% - 40px)calc(100% - 40px);
  background-size:48px
}
.contact-form .form-label {
  font-weight:500
}
.contact-form .btn {
  font-weight:500;
  font-size:24px
}
.contact-h1-superhead {
  font-family:rubik,sans-serif;
  font-size:21px;
  font-weight:700;
  letter-spacing:0
}
.contact-h1 {
  font-family:jubilat,serif;
  font-size:72px;
  font-weight:500;
  line-height:72px;
  letter-spacing:.02em
}
.contact-form-h2 {
  font-family:rubik,sans-serif;
  font-size:24px;
  font-weight:700;
  line-height:36px;
  letter-spacing:0;
  margin-bottom:2rem
}
.contact-form-labels {
  font-family:rubik,sans-serif;
  font-size:18px;
  font-weight:500;
  line-height:36px;
  letter-spacing:0;
  text-align:center
}
.contact-form-button {
  font-family:rubik,sans-serif;
  font-size:24px;
  font-weight:500;
  line-height:28px;
  letter-spacing:0
}
.refText {
  font-size:.65rem;
  color:#2f5688
}
.text-subpage-h1 {
  font-size:6.875rem;
  font-weight:700;
  text-align:right
}
.text-subpage-h1 span {
  border-bottom:5px dashed rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important
}
.text-subpage-h2 {
  font-size:2.75rem;
  font-weight:500;
  text-align:right
}
.text-why-h1 {
  font-size:6.875rem;
  font-weight:700
}
.text-why-h2 {
  font-size:2.75rem;
  font-weight:500
}
.fw-bold {
  font-weight:700
}
.plus-grid {
  top:-10px;
  background:url(../images/bg_patterns/dark_cross.png)repeat;
  min-height:700px;
  background-size:80px;
  width:960px;
  height:600px;
  opacity:.6;
}
.services-admin-grid {
  top:1200px
}
.why-plus-grid {
  top:1400px;
  opacity:60%
}
.serviceSet {
  margin:2rem 0 10rem
}
.serviceImg {
  position:relative
}
.serviceGrid {
  width:100%;
  height:500px;
  top:60px;
  background:url(../images/bg_patterns/dark_cross.png)repeat;
  background-size:80px
}
.services-plus-grid {
  top:35px;
  opacity:60%;
  left:200px
}
.services-it-gear img {
  margin-top:-10rem
}
.services-strategy-chart {
  position:relative;
  top:-500px
}
.company-plus-grid {
  top:1200px;
  opacity:60%;
  left:-10px;
  z-index:1
}
.navbar-nav>a {
  color:#152a44;
  margin-right:.5rem;
}
.navbar-nav>a:hover {
  color:#1ea140
}
.navbar-nav>a:active {
  text-decoration:underline
}
.dome {
  border-top-left-radius:100% 200%;
  border-top-right-radius:100% 200%;
  padding-bottom:160px;
  width:120%;
  margin-left:-10%;
  margin-bottom:-1px
}
.dome.flipY-1 {
  margin-top:-1px;
  margin-bottom:unset
}
.dome-why {
  border-top-left-radius:100% 200%;
  border-top-right-radius:100% 200%;
  padding-bottom:100px;
  width:1800px
}
.essential-col {
  padding-left:-12px;
  padding-right:-12px
}
.dome-circle {
  height:25px;
  width:25px;
  background-color:#bbb;
  border-radius:50%;
  display:inline-block
}
.dome-sm {
  border-top-left-radius:100% 200%;
  border-top-right-radius:100% 200%;
  padding-bottom:10px;
  height:60px
}
.dome-sm-inverted {
  border-top-left-radius:100% 200%;
  border-top-right-radius:100% 200%;
  padding-bottom:10px;
  height:60px;
  transform:rotate(180deg)
}
.dome-inverted {
  border-top-left-radius:100% 200%;
  border-top-right-radius:100% 200%;
  padding-bottom:200px;
  transform:rotate(180deg)
}
.home-brackets {
  top:1150px
}
.footer-callout {
  position:relative;
  top:-50px
}
.footer-callout span {
  font-size:24px;
  font-weight:600;
  line-height:33px;
  letter-spacing:.01em;
  color:#fcf1db
}
h1,
.h1 {
  font-weight:700
}
#logo-div {
  position:absolute;
  left:-120px
}
.empty-row {
  height:12px
}
.empty-col-2 {
  height:100px;
  width:300px
}
.empty-col-5 {
  height:100px;
  width:1200px
}
.empty-col-5-narrow {
  height:50px;
  width:1000px
}
.tile-bg {
  background:url(../images/bg_patterns/dark_cross.png)repeat
}
.tile-bg-cloud {
  position:absolute;
  left:1100px;
  top:50px;
  overflow:hidden;
  width:fit-content;
  margin-top:-150px
}
.tile-bg-cloud-services {
  position:absolute;
  left:1100px;
  top:150px;
  overflow:hidden;
  width:fit-content;
  margin-top:-150px
}
.tile-bg-case {
  height:650px;
  position:absolute;
  left:290px
}
.why-clients-callout {
  background-color:#152a44;
  font-weight:600;
  font-size:1.25rem;
  color:#152a44;
  border-width:5px;
  border-color:#fff;
  padding:15px;
  border-radius:0%
}
.why-blue-background {
  position:absolute;
  top:650px;
  width:1800px;
  left:5px
}
.why-blue-background-sub-1 {
  position:absolute;
  top:100px;
  height:402px;
  width:1800px;
  left:10px
}
.why-blue-background-sub-2 {
  position:absolute;
  top:500px;
  left:10px;
  padding:0
}
.why-blue-background-sub-3 {
  position:absolute;
  top:0;
  left:10px;
  padding:0
}
.case-blue-background {
  position:absolute;
  top:550px;
  width:1800px;
  margin-left:-80px
}
.red-castle {
  background:url(../images/edges/cyber_edge.png)repeat;
  background-size:55px 24px;
  background-color:#fff
}
.case-hero {
  position:absolute;
  top:50px;
  width:787px;
  margin-left:-302px
}
.services-hero {
  position:absolute;
  top:150px;
  width:552px
}
.why-hero {
  position:absolute;
  left:550px;
  top:0;
  width:603px;
  height:50px
}
.tile-bg-why {
  background:url(../images/why-circles-bg-lg.png)no-repeat;
  height:552px
}
.tile-bg-company {
  background:url(../images/company-bg-lg.png)no-repeat;
  height:334px;
  margin-left:-50px;
  top:-25px;
  position:absolute;
  width:1440px
}
.tile-bg-contact {
  background:url(../images/contact-bg-lg.png)no-repeat;
  height:451px;
  left:-320px;
  top:0;
  position:absolute
}
.contact-us-via {
  position:relative;
  top:0;
  left:0
}
.contact-form .form-control {
  padding:.5rem .75rem
}
.why-background-img {
  background:url(../images/why-partner-lg.webp)no-repeat;
  background-size:775px 490px;
  position:relative;
  left:350px;
  top:130px;
  height:500px
}
.flipY-1 {
  -webkit-transform:scaleY(-1);
  transform:scaleY(-1)
}
.flipX-1 {
  -webkit-transform:scaleX(-1);
  transform:scaleX(-1)
}
.flipY-2 {
  -webkit-transform:scaleY(-1);
  transform:scaleY(-1)
}
.flipX-2 {
  transform:rotate(180deg)
}
btn:disabled,
.btn.disabled,
fieldset:disabled .btn {
  color:var(--bs-btn-disabled-color);
  pointer-events:none;
  background-color:var(--bs-btn-disabled-bg);
  border-color:var(--bs-btn-disabled-border-color);
  opacity:100%
}
.services-dotted-line {
  width:500px
}
.inverted-v {
  transform:rotate(180deg)
}
.headerWrap {
  position:absolute;
  width:100%
}
.nav-link {
  font-weight:500
}
.navNotch::after {
  content:"";
  display:flex;
  width:calc(100% - 16px);
  height:16px;
  background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important;
  top:16px;
  position:relative
}
.navbar {
  padding-top:2rem
}
@media(min-width:576px) {
  .navbar-nav a.nav-link:first-child {
    padding-left:0
  }
}
.navbar-brand {
  width:175px;
  height:120px;
  display:block;
  z-index:10;
  padding:30px;
  position:absolute;
  top:52px;
  --bs-bg-opacity:1;
  background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important
}
.navbar-collapse .navbar-brand {
  --bs-bg-opacity:0;
  display:none
}
.main-logo {
  background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important;
  background-image:url(../images/personified_logo_reversed.png);
  background-repeat:no-repeat;
  background-size:20%;
  background-position:50%;
  display:block;
  height:120px;
  width:175px;
  position:absolute
}
.mainLanding {
  padding:12rem 0 5rem
}
.homeServices {
  padding-top:1rem
}
.essentialCircle,
.whyCircle {
  border-radius:50%;
  content:"";
  display:block;
  position:absolute;
  height:250px;
  width:250px;
  left:calc(50% - 125px)
}
.essentialIllo {
  margin-top:-3rem
}
.essentialCircle {
  top:-50px
}
.whyCircle {
  top:-160px;
  background-image:url(../images/logos/home-personified-icon-lg.png);
  background-position:50% 85%;
  background-repeat:no-repeat;
  background-size:25px
}
.homepage-services-callout {
  border-radius:.375rem .375rem 0 0;
  background-image:url(../images/trinkets/home-arrow-lg.png);
  background-repeat:no-repeat;
  background-position:25px;
  background-size:42px;
  margin-top:3rem;
  max-width:320px;
  padding:20px 20px 20px 90px;
  text-align:left
}
.essential {
  margin:0 4rem;
  position:relative;
  z-index:1
}
.boxCorners {
  background-image:url(../images/corners/top_left.svg),url(../images/corners/top_right.svg),url(../images/corners/bottom_left.svg),url(../images/corners/bottom_right.svg);
  background-repeat:no-repeat
}
.essentialInner {
  background-position:40px 40px,calc(100% - 40px)40px,40px calc(100% - 40px),calc(100% - 40px)calc(100% - 40px);
  background-size:60px;
  position:relative
}
.whyPersonified {
  padding-top:10rem
}
.whyPersonified .circle {
  background-color:#606060;
  border-radius:50%;
  display:block;
  position:absolute;
  height:250px;
  width:250px;
  left:calc(50% - 125px);
  top:-125px
}
.whyHomeWheel {
  top:-340px;
  left:calc(50% - 300px);
  width:600px;
  height:600px;
  animation:Rotate 360s linear infinite;
  opacity:.04
}
.homepage-benefits-callout {
  max-width:420px;
  text-align:left;
  padding-left:80px;
  background-image:url(../images/trinkets/home-arrow-lg.png);
  background-repeat:no-repeat;
  background-position:23px;
  background-size:42px;
  margin:6rem 0 0
}
.cyberDome {
  margin-top:-2rem
}
.home-cyber {
  position:relative
}
.home-cyber .pillRow {
  margin-left:-10vw;
  width:460px
}
.home-cyber::after {
  content:"";
  display:block;
  width:100%;
  height:30px;
  position:absolute;
  bottom:-30px;
  background:url(../images/edges/cyber_edge.png)repeat-x;
  background-size:55px 24px
}
.cyberCrisis {
  padding-bottom:8rem
}
.pillModule {
  flex-flow:wrap;
  flex-direction:row;
  display:flex!important
}
.pillRow {
  display:flex!important;
  flex-direction:row-reverse
}
.pillSet {
  display:flex;
  flex-flow:wrap;
  flex-direction:row-reverse
}
.warningPill {
  height:100px;
  width:100px;
  background:#fffdc3;
  border-radius:2px;
  box-shadow:-4px 4px rgba(0,0,0,.25);
  color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important;
  margin-left:.5rem;
  margin-bottom:.5rem;
  display:flex
}
.warningPill picture {
  justify-content:center;
  display:flex
}
.riskPill {
  background:#fffdc3;
  border-radius:2px;
  box-shadow:-4px 4px rgba(0,0,0,.25);
  color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important;
  width:fit-content;
  display:flex;
  padding:10px 20px;
  font-weight:500;
  margin-left:10px;
  margin-bottom:10px;
  height:45px
}
.red-castle {
  background:url(../images/edges/cyber_edge.png)repeat;
  background-color:transparent;
  background-size:auto;
  background-size:55px 24px;
  background-color:#fff;
  margin-bottom:7rem
}
.homepage-client-quotes {
  font-family:rubik,sans-serif;
  font-size:21px;
  font-weight:400;
  line-height:30px;
  letter-spacing:0;
  color:#fcf1db;
  min-height:250px
}
.quote p {
  margin-bottom:0;
  position:relative
}
.homepage-quotes .quote p::after {
  bottom:-30px;
  content:"";
  height:30px;
  position:absolute;
  display:block;
  background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important
}
.homepage-quotes .quote:nth-child(2) {
  margin-top:2.5rem
}
.homepage-quotes .quote:first-child p::after {
  width:calc(100% - 30px);
  left:0
}
.homepage-quotes .quote:nth-child(2) p::after {
  width:calc(100% - 60px);
  left:30px
}
.homepage-quotes .quote:last-child p::after {
  width:calc(100% - 30px);
  right:0
}
.missionValues {
  margin-top:-7rem;
  margin-bottom:9rem
}
.missionBrackets {
  background-image:url(../images/corners/top_right.svg),url(../images/corners/bottom_right.svg);
  background-position:100% 7rem,100% 100%;
  background-repeat:no-repeat;
  background-size:60px;
  margin-bottom:1rem;
  padding-top:12rem;
  position:relative
}
.docThumb {
  border:1px solid #e9e8e8;
  border-radius:6px;
  max-width:180px
}
.backFwd {
  display:inline-block;
  padding:.25rem .5rem
}
.arrow {
  border:solid #000;
  border-width:0 3px 3px 0;
  display:inline-block;
  padding:3px
}
.arrowLeft {
  transform:rotate(135deg);
  -webkit-transform:rotate(135deg)
}
.arrowRight {
  transform:rotate(-45deg);
  -webkit-transform:rotate(-45deg)
}
.pagethru {
  color:#152a44;
  list-style-type:none
}
.pagethru a {
  color:inherit;
  text-decoration:none
}
.pagethru ul {
  display:inline-block;
  padding:0 1rem
}
.pagethru li {
  display:inline-block
}
.pagethru li a {
  padding:.25rem .375rem
}
.pagethru .active i,
.pagethru .inactive a {
  border-color:#152a44;
  color:#152a44;
  pointer-events:none
}
.pagethru .inactive i,
.pagethru .inactive a {
  border-color:#ccc;
  color:#ccc;
  pointer-events:none
}
.posts-index,
.single-post {
  padding:11rem 0 6rem
}
.postsHead {
  color:#1ea23f;
  font-size:1.75em;
  font-weight:700
}
.posts-index {
  background-image:url(../images/illustrations/posts-gear-left.webp),url(../images/illustrations/posts-gear-right.webp),url(../images/background_shapes/bread-cloud-2-lg.webp);
  background-position:30% 40px,70% 100px,50% -260px;
  background-repeat:no-repeat;
  background-size:150px,160px,940px
}
.single-post {
  background-image:url(../images/background_shapes/bread-cloud-2-lg.webp);
  background-position:50% -260px;
  background-repeat:no-repeat;
  background-size:1020px
}
.filtering {
  flex-direction:column
}
.filtering ul {
  padding:0
}
.filtering li {
  list-style-type:none;
  padding-left:.5rem
}
.filtering a {
  color:#152a44;
  font-size:.875rem;
  text-decoration:none
}
.postsSidebar ul {
  padding:0
}
.postsSidebar li {
  font-size:.875rem;
  list-style-type:none;
  margin-bottom:1.5rem
}
.postsSidebar a {
  color:#152a44;
  display:block;
  text-decoration:none
}
.postsSidebar p {
  font-size:.875rem
}
.postsSidebar label {
  font-weight:500;
  margin-bottom:.5rem
}
.postsSidebar input,
.postsSidebar select {
  background:#f5f9ff;
  border:0;
  margin-bottom:1rem;
  padding:.75rem
}
.postsSidebar button {
  background:#152a45;
  border:none;
  color:#fff
}
.sideHead {
  border-top:1px solid #152a44;
  color:#152a44;
  font-size:1rem;
  font-weight:700;
  letter-spacing:.02em;
  padding-bottom:.25rem;
  padding-top:1rem;
  text-transform:uppercase
}
.pinnedPost h5,
.pinnedPost .h5 {
  font-size:1.125rem;
  font-weight:400;
  padding-top:1rem
}
.postWrapper {
  margin-bottom:2rem;
  margin-top:6rem
}
.postColumn {
  padding-bottom:1rem
}
.postImage {
  border-radius:8px;
  width:100%
}
.entry>a {
  color:inherit;
  text-decoration:none
}
.postColumn a {
  color:#1ea23f
}
.single-post .postWrapper {
  margin-top:0
}
.single-post .postsHead {
  font-size:1.25em;
  margin-top:2rem
}
.single-post .postBody p {
  font-size:1.125rem
}
.PostTitle {
  background:#e9fdfa;
  box-shadow:0 10px 30px rgba(0,0,0,6%);
  border-radius:8px;
  text-align:center;
  margin-top:-5rem;
  z-index:2;
  position:relative;
  margin-bottom:2rem
}
.PostTitle ul {
  list-style-type:none;
  padding:0
}
.PostTitle h1,
.PostTitle .h1 {
  font-family:jubilat,serif;
  font-size:2rem
}
.PostTitle h2,
.PostTitle .h2 {
  font-family:jubilat,serif
}
.postTags li {
  background:#a9fff5;
  display:inline;
  padding:.375rem .75rem;
  border-radius:5px;
  margin:.25rem;
  font-size:.675rem;
  color:#919191
}
.postDate {
  color:#919191;
  font-size:.75rem;
  font-weight:400;
  margin-top:1rem
}
.postCat {
  color:#152a45;
  text-decoration:none
}
.postsSidebar {
  background-image:url(../images/bg_patterns/soft_cross_100.png);
  background-size:71px
}
.single-post .postsSidebar {
  margin-top:8rem
}
.caseLanding {
  padding:12rem 0 6rem
}
.postlet .postImage {
  border-radius:8px
}
.postlet h5,
.postlet .h5 {
  line-height:1.5;
  font-family:jubilat
}
.suggested a {
  text-decoration:none;
  color:inherit
}
.entry {
  margin-bottom:6rem;
  max-width:640px
}
.excerpt a {
  color:#152a44;
  text-decoration:none
}
.ngpVanLogo {
  margin:4.5rem 0 3rem;
  max-width:250px
}
.ngpVan .plus-grid {
  height:460px;
  opacity:100%;
  padding-top:8rem;
  min-height:460px;
  text-align:right
}
.ngpVan .plus-grid picture img {
  max-width:540px
}
.ngpVan .contact-form .btn {
  background-color:var(--bs-primary);
  border-color:var(--bs-primary)
}
.client-grid {
  list-style-type:none;
  display:grid;
  gap:3rem 1rem;
  grid-template-columns:1fr 1fr 1fr
}
.client-grid li {
  align-items:center;
  display:flex;
  max-width:110px
}
.client-grid li img {
  height:auto;
  max-width:100%
}


/* AI Principles Page */

.principlesLift {
	padding-top: 5rem;
}

.principlesLift picture {
	margin-left: -5rem;
	position:absolute;
	width: max-content;
}

.principles {
	background-color:var(--pfButtercream);
	background-image:url('../images/background_shapes/ai-principles-left.svg'),url('../images/background_shapes/ai-principles-right.svg');
	background-position: top left, top right;
	background-repeat:no-repeat,no-repeat;
	background-size: 170px;
	margin-top: -4rem;
	padding-top: 12rem;
}

.principle {
	margin-bottom:4rem;
}

.principleIllustration .crossGrid {
	background: url(../images/bg_patterns/dark_cross.png)repeat;
}

.aiGuidance .crossGrid {
	height:800px;
	width:400px;
}

.aiGuidance picture {
	margin-top: 10rem;
	width: max-content;
}

.techLift .crossGrid {
	height:800px;
	width:480px;
}

.techLift picture {
	margin-top: 6rem;
	width: max-content;
}

.principle p {
	font-size: 1.125rem;
}

.principleHead {
	display:flex;
	background:url('../images/operational_icons/ai-square.svg') no-repeat;
	background-size: 8rem;
	min-height: 8rem;
	margin-bottom: 2rem;
	padding-left:10rem;
}

.principleHead h1 {
	font-weight: 700;
	align-self: center;
	color:var(--pfGreen);
}

.useExamples {
	background:url('../images/operational_icons/ai-crown.svg') no-repeat top;
	padding-top: 8rem;
}

.useExample h4 {
	text-align:center;
}

.useExample h4:first-child {
	min-height: 5rem;
	margin-bottom: 1rem;
}




.contact-form-h2 {
  margin:0 auto;
  width:60%
}
.formWrapper.contactBox {
  margin-top:14rem
}
.formWrapper label {
  color:#fff
}
.formWrapper button {
  color:#fff
}
.endText {
  margin-bottom:5rem
}
.footerLinks {
  background-image:url(../images/corners/top_left_green.svg),url(../images/corners/top_right_green.svg),url(../images/corners/bottom_right_green.svg),url(../images/corners/bottom_left_green.svg);
  background-position:0 0,100% 0,100% 100%,0 100%;
  background-repeat:no-repeat;
  background-size:12px;
  padding:1rem 2rem
}
.footer {
  padding-bottom:4rem;
  position:relative
}
.footer a {
  color:#8b8b8b
}
.footer::before {
  content:"";
  display:block;
  width:100%;
  height:30px;
  background:url(../images/edges/footer_crown.png)repeat-x;
  position:absolute;
  top:-30px;
  background-size:50px
}
.footerLogo {
  width:140px
}
.copyRight {
  font-size:.7rem;
  color:#8b8b8b;
  line-height:1.8;
  margin-top:1rem
}
@media(max-width:1319.98px) {
  .homeIllo img {
    width:100%
  }
}
@media(min-width:992px) {
  .flipY-lg-1 {
    -webkit-transform:scaleY(-1);
    transform:scaleY(-1)
  }
  .flipX-lg-1 {
    -webkit-transform:scaleX(-1);
    transform:scaleX(-1)
  }
  .flipY-lg-2 {
    -webkit-transform:scaleY(-1);
    transform:scaleY(-1)
  }
  .flipX-lg-2 {
    transform:rotate(180deg)
  }
}
@media(max-width:991.98px) {
  .navbar-brand {
    left:0
  }
  .plus-grid {
    width:75vw
  }
  .mainLanding {
    padding:12rem 0 0
  }
  .essential {
    margin:0
  }
  .essentialIllo {
    margin-top:0
  }
  .homepage-operational-bases {
    padding-top:2rem
  }
  .homepage-operational-bases-list {
    font-size:18px;
    line-height:38px
  }
  .whyBorder {
    border-right:unset;
    border-bottom:dashed;
    border-color:#89b3ce
  }
  .homepage-investing {
    margin-top:-3rem;
    margin-bottom:3rem
  }
  .home-cyber .pillRow {
    margin-left:0
  }
  .homepage-investing-blurb {
    font-size:18px;
    line-height:30px
  }
  .homepage-clients-callout {
    border-width:5px;
    max-width:280px;
    margin-top:5rem
  }
  .homepage-quotes {
    padding-top:0;
    position:relative;
    top:10px
  }
  .homepage-client-quotes {
    min-height:unset
  }
  .homepage-quotes .quote:nth-child(2) {
    margin-top:unset
  }
  .services-hero-copy-sm {
    margin-top:-6rem
  }
  .services-admin-corner {
    margin-left:0
  }
  .services-it-gear img {
    margin-top:0
  }
  .services-cyber-corner {
    margin-top:0;
    transform:rotate(0);
    right:10vw
  }
  .cyberSecurity .serviceGrid {
    top:-4rem
  }
  .serviceSet {
    margin:6rem 0
  }
  .whyLanding {
    background-position:-10vw -200px,40vw -200px;
    background-size:90%,70%
  }
  .fourCards {
    max-height:unset;
    margin-bottom:-16rem
  }
  .whyCard {
    max-width:unset;
    min-height:unset
  }
  .why-cybersecurity-blurb {
    font-size:18px;
    line-height:28px;
    margin-top:2rem
  }
	.principlesLift picture {
		margin-left:unset;
		position:relative;
	}
	.aiGuidance .crossGrid,.techLift .crossGrid {
		height: 300px;
		width: 100%;
	}
	.useExample h4:first-child {
		min-height: auto;
	}
	.principles {
		background-size:80px;
		background-position: left -8rem, right -8rem;
		margin-top: -8rem;
		padding-top: 10rem;
	}

}

@media(min-width:1800px) {
  .dome {
    margin-left:0;
    width:100%
  }
  .case-1::before,
  .case-2::before,
  .case-3::before {
    margin-left:0;
    height:140px;
    top:-140px;
    width:100%
  }
}
@media(max-width:767.98px) {
  .menu-circle {
    height:77px;
    width:77px;
    background-color:#152a44;
    border-radius:50%;
    display:inline-block;
    position:absolute;
    top:20px;
    right:25px
  }
  .menu-circle-close {
    font-size:1rem;
    height:77px;
    width:77px;
    background-color:#fff;
    border-radius:50%;
    display:inline-block;
    position:absolute;
    top:20px;
    right:25px
  }
  .menu-circle,
  .menu-circle-close {
    font-family:rubik;
    font-size:12px;
    font-weight:400;
    letter-spacing:.12em
  }
  .navbar-collapse {
    position:fixed;
    top:0;
    bottom:0;
    left:0;
    right:0;
    z-index:1000;
    background:url(../images/bg_patterns/triangle_pylons_100.png)repeat;
    background-size:100px;
    background-color:#152a44;
    flex-direction:column
  }
  .navbar-collapse {
    display:flex
  }
  #navbarContent.nav {
    flex-wrap:nowrap
  }
  .navbar .navbar-nav {
    padding-top:25vh;
    padding-bottom:35vh
  }
  .navbar-nav a {
    color:#fff
  }
  .navbar-collapse-logo {
    position:absolute;
    top:20px;
    left:20px
  }
  .nav-link {
    color:#fff;
    font-size:1.875rem;
    font-weight:500
  }
  .navbar-brand {
    height:84px;
    padding:20px;
    top:20px;
    width:130px
  }
  .illoWrap img {
    width:100%
  }
  .contact-h1 {
    margin-bottom:8rem
  }
}
@media(max-width:575.98px) {
  .mainLanding {
    padding:8rem 0 0
  }
  .homeWrap {
    background-position:180px -30px;
    background-size:300px
  }
  .homepage-h1 {
    font-size:36px;
    font-family:rubik,sans-serif;
    line-height:45px;
    letter-spacing:-.01em
  }
  .homepage-h2 {
    font-size:1.125rem;
    font-weight:500;
    font-family:rubik,sans-serif;
    line-height:1.75rem;
    margin-left:10px;
    margin-right:10px;
    margin-bottom:-2px
  }
  .homeServices {
    padding-top:1rem
  }
  .essential {
    background-size:70%;
    background-position:50% 350px
  }
  .essentialInner {
    background-image:url(../images/corners/top_left.svg),url(../images/corners/top_right.svg);
    background-position:25px 30px,calc(100% - 25px)30px;
    background-size:25px
  }
  .homepage-essential-text {
    font-family:rubik,sans-serif;
    font-size:14px;
    font-weight:500;
    line-height:13px;
    letter-spacing:.04em;
    margin-top:-10px
  }
  .homepage-services-text {
    font-family:rubik,sans-serif;
    font-size:56px;
    font-weight:600;
    line-height:13px;
    letter-spacing:-.01em;
    margin-top:40px;
    margin-left:0;
    margin-bottom:40px
  }
  .homeServices {
    padding-top:1rem
  }
  .homepage-services-callout {
    background-color:#fff;
    border-width:5px;
    color:#152a45;
    font-family:rubik,sans-serif;
    font-size:21px;
    font-weight:600;
    line-height:25px;
    letter-spacing:0
  }
  .whyPersonified {
    padding-left:25px;
    padding-right:25px
  }
  .homepage-why-personified {
    font-family:rubik,sans-serif;
    font-size:20px;
    font-weight:500;
    line-height:25px;
    letter-spacing:.05em
  }
  .homepage-why-personified-h2 {
    font-family:rubik,sans-serif;
    font-size:30px;
    font-weight:600;
    line-height:24px;
    letter-spacing:0
  }
  .whyHomeWheel {
    top:-220px;
    left:calc(50vw - 180px);
    width:360px;
    height:360px
  }
  .homepage-benefits-callout {
    font-size:18px;
    max-width:300px;
    margin:3rem 0 0
  }
  .homepage-investing {
    font-size:28px;
    line-height:36px;
    margin-top:-60px;
    margin-bottom:3rem
  }
  .cyberDome {
    margin-top:-3rem
  }
  .cyberCrisis {
    padding-bottom:3rem
  }
  .pillRow {
    margin-left:-200px;
    width:450px
  }
  .pillSet {
    display:flex;
    flex-flow:wrap;
    flex-direction:row-reverse
  }
  .warningPill {
    height:82px;
    width:82px
  }
  .riskPill {
    font-size:14px;
    padding:6px 14px;
    height:36px
  }
  .home-cyber .pillRow {
    margin-left:-28vw
  }
  .home-threats {
    max-width:110%;
    margin-left:-70px;
    margin-bottom:40px
  }
  .cyberBadge {
    margin:0 0 1rem
  }
  .homepage-client-quotes {
    font-size:18px;
    line-height:27px
  }
  .homepage-our-mission {
    font-size:48px;
    line-height:56px
  }
  .missionBrackets {
    position:relative;
    background-image:url(../images/corners/bottom_left.svg),url(../images/corners/bottom_right.svg);
    background-repeat:no-repeat;
    background-position:0 100%,100% 100%;
    background-size:40px;
    padding-top:8rem
  }
  .homepage-our-mission-blurb {
    font-family:rubik,sans-serif;
    font-size:15px;
    font-weight:400;
    line-height:24px;
    letter-spacing:.01em
  }
  .services-width {
    width:350px;
    margin-left:0
  }
  .serviceLanding {
    background:url(../images/background_shapes/blue-cloud-2-lg.webp)no-repeat;
    background-position:7% -180px;
    background-size:400px
  }
  .services-h1 {
    font-family:rubik,sans-serif;
    font-size:42px;
    font-weight:700;
    line-height:56px;
    letter-spacing:-.01em;
    margin-bottom:-15px
  }
  .services-h1-superhead {
    font-family:rubik,sans-serif;
    font-size:18px;
    font-weight:700;
    line-height:56px;
    letter-spacing:0;
    margin-bottom:-20px
  }
  .services-h1-blurb {
    font-family:jubilat,serif;
    font-size:20px;
    font-weight:500;
    line-height:30px;
    letter-spacing:.02em;
    margin-top:3rem
  }
  .ITadminCloud {
    left:10%
  }
  .services-it-admin {
    font-family:rubik,sans-serif;
    font-size:30px;
    font-weight:700;
    line-height:42px;
    letter-spacing:0;
    width:100%
  }
  .services-it-admin-list {
    font-family:rubik,sans-serif;
    font-size:15px;
    font-weight:500;
    line-height:25px;
    letter-spacing:0;
    margin-left:-10px
  }
  .services-plus-grid {
    top:35px;
    opacity:60%;
    left:20px
  }
  .ITAdminOps .serviceGrid {
    height:400px;
    top:-30px
  }
  .cyberSecurity .serviceGrid {
    height:400px
  }
  .services-it-gear img {
    margin-top:2rem
  }
  .services-strategy-chart {
    position:relative;
    top:-500px
  }
  .services-cybersecurity {
    font-family:rubik,sans-serif;
    font-size:30px;
    font-weight:700;
    line-height:42px;
    letter-spacing:0
  }
  .services-cybersecurity-list {
    font-family:rubik,sans-serif;
    font-size:15px;
    font-weight:500;
    line-height:25px;
    letter-spacing:0
  }
  .services-admin-grid {
    position:relative;
    top:50px;
    left:-50px
  }
  .services-cyber-section {
    margin-top:0;
    margin-left:-20px
  }
  .services-strategy {
    font-family:rubik,sans-serif;
    font-size:30px;
    font-weight:700;
    line-height:42px;
    letter-spacing:0
  }
  .services-strategy-section {
    margin-top:0;
    margin-left:20px
  }
  .services-strategy-chart {
    position:relative;
    top:-250px
  }
  .services-strategy-list {
    font-family:rubik,sans-serif;
    font-size:15px;
    font-weight:500;
    line-height:25px;
    letter-spacing:0;
    margin-left:-10px;
    margin-bottom:60px
  }
  .services-strategy-col {
    margin-left:0;
    margin-bottom:-50px
  }
  .whyLanding {
    background-position:-10vw -100px,20vw -140px;
    background-size:100%,100%
  }
  .whyWheel {
    left:calc(50% - 220px);
    top:-220px;
    width:117.5%
  }
  .why-h1 {
    font-family:jubilat,sans-serif;
    font-size:40px;
    font-weight:500;
    line-height:48px;
    letter-spacing:.02em
  }
  .why-h1-superhead {
    font-family:rubik,sans-serif;
    font-size:21px;
    font-weight:700;
    line-height:56px;
    letter-spacing:0
  }
  .whyCards {
    top:-220px
  }
  .whyCard {
    width:100%;
    min-height:unset
  }
  .whyCard img {
    width:30px
  }
  .why-four-boxes-h2 {
    font-size:36px;
    font-weight:600;
    letter-spacing:-.01em;
    color:#fcf1db
  }
  .why-four-boxes-blurb {
    font-size:15px;
    font-weight:400;
    line-height:25px
  }
  .why-testimonials-callout {
    font-family:rubik,sans-serif;
    font-size:18px;
    font-weight:600;
    line-height:13px;
    margin:-2rem 0 3rem
  }
  .whyTestimonials {
    background-position:50% 0;
    background-size:150%;
    padding-bottom:2rem;
    margin-bottom:3rem
  }
  .why-testimonials-quotes {
    font-family:rubik,sans-serif;
    font-size:15px;
    font-weight:400;
    line-height:25px;
    letter-spacing:.01em
  }
  .why-testimonials-quotes-byline {
    font-family:rubik,sans-serif;
    font-size:15px;
    font-weight:600;
    line-height:28px;
    letter-spacing:.01em
  }
  .why-cybersecurity-icons {
    max-width:60px
  }
  .why-cybersecurity-h2 {
    font-family:rubik,sans-serif;
    font-size:36px;
    font-weight:600;
    line-height:45px;
    letter-spacing:-.01em;
    margin:1.5rem 0 3rem
  }
  .why-cybersecurity-list {
    font-family:rubik,sans-serif;
    font-size:15px;
    font-weight:600;
    line-height:24px;
    letter-spacing:.01em
  }
  .why-cybersecurity-hr hr {
    border:none;
    border-bottom:3px dashed #dfc471;
    color:#fff;
    background-color:#96371d;
    height:3px;
    width:125%;
    margin-left:-30px;
    opacity:1
  }
  .operationalContent .pillSet {
    flex-direction:initial;
    width:420px
  }
  .operationalContent .pillRow {
    margin-left:unset;
    width:450px
  }
  .caseLanding {
    padding:8rem 0 1rem
  }
  .caseLanding picture {
    margin-left:-240px
  }
  .caseIllustration {
    margin-top:-4rem
  }
  .caseIllustration picture {
    margin-left:-12rem
  }
  .case-1::before,
  .case-2::before,
  .case-3::before {
    margin-left:0
  }
  .case {
    padding:4rem 0 8rem;
    position:relative
  }
  .case-h1-superhead {
    font-family:rubik,sans-serif;
    font-size:18px;
    font-weight:700;
    line-height:30px;
    letter-spacing:0;
    margin-bottom:10px;
    margin-top:10px
  }
  .case-h1 {
    font-family:jubilat,serif;
    font-size:48px;
    font-weight:500;
    line-height:56px;
    letter-spacing:.02em
  }
  .case-section-1-h2 {
    margin-bottom:30px;
    font-size:32px;
    line-height:1.3
  }
  .companyPage {
    background-position:40% 0,70px -110px;
    background-size:290px,440px
  }
  .companyWrap {
    background-position:-50px 320px;
    background-size:420px
  }
  .company-h1-superhead {
    font-family:rubik,sans-serif;
    font-size:21px;
    font-weight:700;
    line-height:56px;
    letter-spacing:0
  }
  .company-h1 {
    font-family:jubilat,serif;
    font-size:48px;
    font-weight:500;
    line-height:56px;
    letter-spacing:.02em;
    margin-bottom:4rem
  }
  .company-dei-h2 {
    font-family:rubik,sans-serif;
    font-size:21px;
    font-weight:700;
    line-height:40px;
    letter-spacing:-.01em
  }
  .company-dei-h2-blurb {
    font-family:rubik,sans-serif;
    font-size:15px;
    line-height:28px;
    letter-spacing:.01em
  }
  .company-working-blurb {
    font-family:rubik,sans-serif;
    font-size:21px;
    line-height:32px;
    letter-spacing:.01em
  }
  .company-team-superhead {
    font-family:rubik,sans-serif;
    font-size:21px;
    font-weight:700;
    line-height:56px;
    letter-spacing:0
  }
  .company-team-h2 {
    font-family:jubilat,serif;
    font-size:40px;
    font-weight:500;
    line-height:48px;
    letter-spacing:.02em;
    text-align:left
  }
  .cardThumb {
    display:flex;
    height:80px;
    width:80px
  }
  .cardThumb img {
    min-width:100%;
    width:unset
  }
  .joinThumb {
    background-size:70%
  }
  .teamSet {
    margin-top:1rem;
    background:0 0;
    margin-bottom: 2rem;
  }
  .teamSet .card {
    flex-direction:row
  }
  .teamSet .joinCard .card {
    flex-direction:column
  }
  .joinCard a {
    margin-top:7rem
  }
  .company-staffer-name {
    font-family:rubik,sans-serif;
    font-size:18px;
    font-weight:500;
    line-height:28px;
    letter-spacing:0;
    margin-bottom:0
  }
  .company-staffer-title {
    font-size:10px;
    margin-bottom:0
  }
  .modal.show .modal-dialog {
    margin:0 20px
  }
  .company-modal-header {
    background:#f3f3f3
  }
  .homepage-h1 {
    font-size:36px;
    font-family:rubik,sans-serif;
    line-height:45px;
    letter-spacing:-.01em
  }
  .bzOpening {
    margin-bottom:1.5rem;
    padding-bottom:1.5rem
  }
  .bzOpening .h2,
  .bzOpening h2 {
    font-size: 1.5rem;
    padding-right:6rem
  }
  .bzMeta {
    flex-direction:column;
    padding:.5rem 0 0
  }
  .bzMeta li {
    border-right:0;
    margin-bottom:.5rem;
    margin-right:0
  }
  .contactLanding {
    background-position:5% 0,40px -130px;
    background-size:400px,600px
  }
  .contactBox {
    margin-bottom:8rem;
    background:0 0
  }
  .contact-h1-superhead {
    font-family:rubik,sans-serif;
    font-size:21px;
    font-weight:700;
    line-height:56px;
    letter-spacing:0
  }
  .contact-h1 {
    font-family:jubilat,serif;
    font-size:40px;
    font-weight:500;
    line-height:46px;
    letter-spacing:.02em
  }
  .contact-form-h2 {
    font-family:rubik,sans-serif;
    font-size:24px;
    font-weight:700;
    line-height:36px;
    letter-spacing:0
  }
  .contact-form-labels {
    font-family:rubik,sans-serif;
    font-size:18px;
    font-weight:500;
    line-height:36px;
    letter-spacing:0;
    text-align:center
  }
  .contact-form-button {
    font-family:rubik,sans-serif;
    font-size:24px;
    font-weight:500;
    line-height:28px;
    letter-spacing:0
  }
  .services-hero {
    position:absolute;
    left:-132px;
    top:-70px;
    width:248px
  }
  .services-dotted-line {
    width:200px
  }
  .tile-bg-services {
    margin-left:10px;
    height:248px
  }
  .services-hero {
    position:absolute;
    left:10px;
    top:50px;
    width:248px
  }
  .case-blue-background {
    position:absolute;
    top:450px;
    z-index:2
  }
  .services-hero-copy-sm {
    margin-top:-3rem
  }
  .case-hero {
    position:absolute;
    left:-120px;
    top:50px;
    width:459px
  }
  .tile-bg-company {
    background:url(../images/company-bg-sm.png)no-repeat;
    height:334px;
    margin-left:20px;
    top:-25px;
    width:300px;
    position:absolute;
    overflow:hidden
  }
  .tile-bg-contact {
    background:url(../images/contact-bg-sm.png)no-repeat;
    height:334px;
    left:150px;
    top:50px;
    position:absolute
  }
  .tile-bg-case {
    background:url(../images/case-hero-sm.png)no-repeat;
    height:273px;
    position:absolute;
    top:150px;
    left:0
  }
  .contact-us-via {
    position:absolute;
    top:290px;
    left:70px
  }
  .why-hero {
    position:absolute;
    left:-10px;
    top:-50px;
    width:375px;
    height:50px
  }
  .tile-bg-why {
    background:url(../images/why-circles-bg-sm.png)no-repeat;
    height:440px
  }
  .why-background-img {
    background:url(../images/why-partner-sm.webp)no-repeat;
    background-size:403px 255px;
    position:relative;
    left:-12px;
    top:200px;
    width:375px
  }
  .why-blue-background {
    position:absolute;
    top:530px;
    width:375px;
    padding:0;
    left:2px
  }
  .why-proactive {
    margin-top:-40px;
    margin-left:60px
  }
  .why-embedded {
    margin-top:-40px;
    margin-left:60px
  }
  .why-blue-background-sub-1 {
    position:absolute;
    top:10px;
    height:1300px
  }
  .why-blue-background-sub-2 {
    position:relative;
    top:1300px
  }
  .why-blue-background-sub-3 {
    position:absolute;
    top:-80px
  }
  .posts-index,
  .single-post {
    padding:9rem 0 6rem
  }
  .single-post .postsHead {
    font-size:1em;
    margin-top:0
  }
  .posts-index {
    background-position:-5% 92px,105% 110px,50% -260px;
    background-size:110px,120px,870px
  }
  .postWrapper {
    background:0 0;
    margin-bottom:0
  }
  .filtering {
    flex-direction:row
  }
  .PostTitle {
    box-shadow:0 5px 10px rgba(0,0,0,.1);
    margin-top:-2rem;
    margin-bottom:2rem
  }
  .PostTitle h1,
  .PostTitle .h1 {
    font-size:calc(.75rem + 1.5vw)
  }
  .single-post {
    background-size:860px
  }
  .single-post .postsHead {
    font-size:1em
  }
  .single-post .postBody p {
    font-size:1rem
  }
  .single-post .postsSidebar {
    margin-top:0
  }
  .entry {
    margin-bottom:3rem
  }
  .ngpVan .plus-grid {
    min-height:400px;
    height:400px;
    padding-top:10rem;
    left:0;
    top:0;
    text-align:center;
    width:100%
  }
  .ngpVan .plus-grid picture img {
    max-width:86vw
  }
  .ngpVan .mainLanding {
    padding:22rem 0 0
  }
  .ngpVanLogo {
    margin:2.5rem 0 3rem
  }
  .landingIntro {
    text-align:center
  }
  .partnerLogo {
    text-align:center
  }
  .ngpVan .client-grid {
    gap:2rem 2rem;
    padding-left:0
  }
  .formWrapper.contactBox {
    margin-bottom:3rem;
    margin-top:3rem
  }
  .contact-form-h2 {
    width:100%
  }
  .homepage-h2.endText {
    font-size:1.5rem;
    margin-bottom:3rem
  }
  .home-brackets {
    top:1100px;
    left:10px
  }
  .plus-grid {
    top:65px;
    opacity:80%;
    left:-10px;
    width:360px;
    min-height:unset;
    height:480px
  }
  .dome {
    border-top-left-radius:100% 200%;
    border-top-right-radius:100% 200%;
    width:150%;
    margin-left:-25%
  }
  .dome-why {
    border-top-left-radius:100% 200%;
    border-top-right-radius:100% 200%;
    padding-bottom:100px
  }
  .dome-circle {
    height:25px;
    width:25px;
    background-color:#bbb;
    border-radius:50%;
    display:inline-block
  }
  .dome-sm {
    border-top-left-radius:100% 200%;
    border-top-right-radius:100% 200%;
    padding-bottom:10px;
    height:60px
  }
  .dome-sm-inverted {
    border-top-left-radius:100% 200%;
    border-top-right-radius:100% 200%;
    padding-bottom:10px;
    height:60px;
    transform:rotate(180deg)
  }
  .dome-inverted {
    border-top-left-radius:100% 200%;
    border-top-right-radius:100% 200%;
    padding-bottom:200px;
    transform:rotate(180deg)
  }
  .footer-callout span {
    font-family:rubik,sans-serif;
    font-size:18px;
    font-weight:600;
    line-height:33px;
    letter-spacing:.01em;
    color:#fcf1db
  }
  .footer-nav-text {
    font-family:rubik,sans-serif;
    font-size:15px;
    font-weight:500;
    line-height:24px;
    letter-spacing:-.01em
  }
  .red-castle {
    background:url(../images/edges/cyber_edge.png)repeat;
    background-size:55px 24px;
    background-color:#fff
  }
  .tile-bg-cloud {
    position:absolute;
    left:150px;
    overflow:hidden;
    width:fit-content;
    height:200px;
    top:15px;
    padding-right:0;
    padding-left:0;
    margin-top:-50px
  }
  .tile-bg-cloud-services {
    position:absolute;
    left:180px;
    top:150px;
    overflow:hidden;
    width:fit-content;
    margin-top:-150px
  }
  .tile-bg {
    background:url(../images/bg_patterns/dark_cross_50.png)repeat;
    position:absolute;
    left:150px;
    height:30vh;
    width:50vw
  }
  .empty-row {
    height:12px
  }
  .empty-col-2 {
    height:100px;
    width:160px
  }
  .empty-col-5 {
    height:200px;
    width:400px
  }
  .empty-col-5-narrow {
    height:50px;
    width:375px
  }
  .container {
    overflow-x:clip;
    padding-right:calc(var(--bs-gutter-x) * 1);
    padding-left:calc(var(--bs-gutter-x) * 1)
  }
  .text-subpage-h1 {
    font-size:4rem;
    font-weight:700;
    text-align:right
  }
  .text-subpage-h2 {
    font-size:1.25rem;
    font-weight:500;
    text-align:right
  }
  .flipY-1 {
    -webkit-transform:scaleY(-1);
    transform:scaleY(-1)
  }
  .flipX-1 {
    -webkit-transform:scaleX(-1);
    transform:scaleX(-1)
  }
  .flipY-2 {
    -webkit-transform:scaleY(-1);
    transform:scaleY(-1)
  }
  .flipX-2 {
    transform:rotate(180deg)
  }

/* AI Principles Page */

	.principlesLift {
		padding-top: 0;
	}

	.principleHead {
		background-size: 3.75rem;
		padding-left: 4.5rem;
		margin-bottom:.75rem;
		min-height: 4rem;
	}

	.principleHead h1 {
		font-size: 1.25rem;
	}

	.principle p {
		font-size: .875rem;
	}

	.aiGuidance picture {
		margin-left: -1rem;
	}

}
