﻿/*
font-family: 'canada-type-gibson';
*/

img {max-width: 100%; border: none;}
.clearDiv {clear: both;}
.setWidth {width: 90%; max-width: 1400px; margin: 0 auto;}
*{box-sizing: border-box;}
iframe {max-width: 100%;}
body * {letter-spacing: normal; line-height: inherit;}
.sc-content-block-quick-insert {display: none !important;}
div.actionMenu ul.dnn_mact > li.actionMenuMove > ul li {height: auto !important;}
.eds_galleryWrapper {padding-top: 0px !important;}
.slider-wrapper > div {background: transparent !important;}
.sc-menu {position: relative; margin: 0 !important;z-index: 1000 !important;}
.slick-dots {margin-left: 0;}
.mark, mark {background: none;}
.theme-default .nivoSlider {background: transparent !important; -webkit-box-shadow: 0px 0px 0px 0px #4a4a4a !important; -moz-box-shadow: 0px 0px 0px 0px #4a4a4a !important; box-shadow: 0px 0px 0px 0px #4a4a4a !important; margin-bottom: 0px !important;}
.menuBtn, .mobileMenuWrapper {display: none;}
.fa-facebook-f:before {content: "\f39e" !important;}
.slick-dots {margin: 0 !important;}
html, body {overflow-x: hidden; max-width: 100%;}





/* ------------------------- header & footer ------------------------- */


.headerWrapper {
    background: #ffffff;
    padding: 18px 0 0;
    box-shadow: rgb(0 0 0 / 50%) 0px -16px 29px;
    z-index: 1010;
    position: sticky;
    transition: all 0.1s ease;
}
.sticky {
    position: fixed;
    width: 100%;
    left: 0;
    top: 0;
}
.sticky.headerWrapper {
	padding: 7px 0 0;
}
.sticky .logoWrapper {
	width: 180px;
	padding-bottom: 19px;
}
.headerWrapper > .setWidth {
    display: table;
}
.logoWrapper {
    display: table-cell;
    vertical-align: bottom;
    width: 220px;
    transition: all 0.1s ease;
    padding-bottom: 25px;
}
.menuWrapper {
    display: table-cell;
    vertical-align: bottom;
    text-align: right;
}
.supportBtn {
	margin-left: 4px;
	margin-top: 2px;
}
.supportBtn img {
    width: 19px;
    padding-top: 5px;
}
.supportBtn a {
	background: #B3001E;
	background: linear-gradient(0deg, #750014, #B3001E 70%);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: block;
    text-align: center;
    margin-right: 0;
    margin-left: auto;
	position: relative;
	z-index: 100;
}
.supportBtn a:before {
	background: linear-gradient(0deg, #750014, #231F20 200%);
    content: '';
    display: block;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
	border-radius: 50%;
    width: 100%;
    z-index: -100;
    transition: opacity 0.45s;
}
.supportBtn a:hover:before, .supportBtn a:focus:before {
	opacity: 1;
}
.menu, .supportBtn {
	display: inline-block;
    vertical-align: top;
}


.footerSupport {
    background: #e7edf0;
    padding: 19px 0 16px;
}
.footerColumns {
    background: #f3f7f9;
    padding: 55px 0 44px;
}
.footerSupport .setWidth {
	display: table;
}
.footerSupportLeft {
	display: table-cell;
    vertical-align: middle;
}
.footerSupportRight {
	display: table-cell;
    vertical-align: middle;
    width: 1%;
    white-space: nowrap;
}
.footerSupportTitle {
	margin: 0;
    padding-right: 20px;
}
.footerSupportText {
    color: #231f20;
    font-size: 130%;
    line-height: 100%;
    margin: 11px 0;
    font-weight: 200;
}
.footerSupportText span {
	font-weight: 500;
}
.footerSupportText i {
    font-size: 61%;
    border-radius: 50%;
    border: 1px solid #fff;
    padding: 6px;
    background: #B3001E;
    background: linear-gradient(0deg, #750014, #B3001E 70%);
    color: #fff;
    margin-right: 5px;
    position: relative;
    top: -1px;
}
.footerSupportText a {
    text-decoration: none !important;
    color: inherit !important;
}
.footerSupportText a:hover, .footerSupportText a:focus {
	color: #B3001E !important;
}
.footerColumns .setWidth {
	display: table;
}
.footerLeftCol {
	display: table-cell;
    vertical-align: top;
    padding-right: 20px;
}
.footerMiddleCol {
	display: table-cell;
    vertical-align: top;
    padding-right: 20px;
    width: 28%;
}
.footerRightCol {
	display: table-cell;
    vertical-align: middle;
    text-align: right;
}
.footerInfoCol{
	display: table;
	width: 100%;
}
.footerInfo {
    display: table-cell;
    vertical-align: top;
    color: #231F20;
    font-size: 100%;
    line-height: 130%;
	font-weight: 200;
}
.footerInfoLeft, .footerInfoCenter {
    width: 1%;
    white-space: nowrap;
    padding-right: 45px;
}
.footerTitle {
    font-weight: 600;
    font-size: 110%;
    padding-bottom: 4px;
}
.footerInfoRight .footerText {
	letter-spacing: 0.5px;
}
.footerInfoRight .footerCities {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1px 0px;
    max-width: 260px;
}
.footerLink {
    margin: 0 0 11px;
}
.footerLink i {
    color: #B3001E;
    font-size: 90%;
    padding-right: 5px;
}
.footerLink a {
    padding: 9px 0;
    color: #231F20 !important;
    text-decoration: none !important;
    font-size: 100%;
    line-height: 100%;
}
.footerLink a:hover, .footerLink a:focus {
	letter-spacing: 0.8px;
}
.footerRightCol a {
	color: #750014 !important;
    font-size: 122%;
    padding: 2px;
    margin-left: 13px;
}
.footerRightCol a:hover, .footerRightCol a:focus {
	color: #B3001E !important;
}
.footerRightCol a.fb {
	font-size: 115%;
    position: relative;
    top: -1px;
}
.copyLoginDiv {
    background: #750014;
    padding: 7px 0 5px;
    text-align: center;
    color: #ffffff;
    font-size: 83%;
    font-weight: 200;
    line-height: 100%;
}
.copyLogin {
	letter-spacing: 0.8px;
}
.copyLogin span {
	letter-spacing: inherit;
}
.copyLogin a {
	color: inherit !important;
    text-decoration: none !important;
	letter-spacing: inherit;
}
.copyLogin a:hover, .copyLogin a:focus {
	text-decoration: underline !important;
}





/* ----------------------------- generic ----------------------------- */

body {margin: 0; padding: 0; width: 100%; height: 100%; background: #fff; color: #231f20; font-family: 'canada-type-gibson'; font-size: 1em; font-weight: 300;}

p, li, .contentDiv td, .Normal {font-family: 'canada-type-gibson';font-size: 100%;line-height: 150%;color: #231f20;font-weight: 300;letter-spacing: 0.5px;}

.contentWrapper {padding-top: 210px; padding-bottom: 270px; position: relative;}
.contentDiv li{padding: 4px 0;}
.contentDiv li:first-child {padding-top: 0;}
.contentDiv ul, .contentDiv ol{margin: 0 0 22px 30px;}
.contentDiv ul li ul li {font-size: 0.9em; line-height: 1.25em; list-style-type: circle;}
.contentDiv ul li ul {margin-top: 1px; line-height: 1.2em; margin-bottom: 0;}
.contentDiv li p {line-height: 1.5em;}

strong{font-weight: 600;}
em{font-style: italic;}
strong em, em strong{font-style: italic; font-weight: 600;}

h1 {font-family: 'canada-type-gibson';font-size: 440%;line-height: 100%;font-weight: 600;font-style: normal;color: #B3001E;margin: 0 0 40px 0;display: inline-block;background: linear-gradient(45deg, #5a000f, #b3001e 62%);-webkit-background-clip: text;background-clip: text;-webkit-text-fill-color: transparent;word-spacing: 6px;}
h2 {font-family: 'canada-type-gibson';font-size: 260%;line-height: 103%;font-weight: 600;font-style: normal;color: #750014;margin: 0 0 40px 0;word-spacing: 2px;}
h3, [name="dnn605Results"] p:first-child {font-family: 'canada-type-gibson';font-size: 180%;line-height: 100%;font-weight: 500;font-style: normal;color: #750014;margin: 53px 0 20px 0;letter-spacing: 0.5px;word-spacing: 2px;}
h4 {font-family: 'canada-type-gibson';font-size: 145%;line-height: 100%;font-weight: 500;font-style: normal;color: #750014;margin: 30px 0 20px 0;letter-spacing: 0.5px;}
h5 {font-family: 'canada-type-gibson';font-size: 120%;line-height: 100%;font-weight: 400;font-style: normal;color: #750014;margin: 30px 0 20px 0;letter-spacing: 0.5px;}
h6 {font-family: 'canada-type-gibson';font-size: 110%;line-height: 100%;font-weight: 400;font-style: normal;color: #750014;margin: 30px 0 20px 0;letter-spacing: 0.5px;}

h1 + h2{margin-top: 35px;}
h1 + h3, h2 + h3{margin-top: 35px;}
h1 + h4, h2 + h4, h3 + h4{margin-top: 35px;}
h1 + h5, h2 + h5, h3 + h5, h4 + h5{margin-top: 35px;}
h1 + h6, h2 + h6, h3 + h6, h4 + h6, h5 + h6{margin-top: 35px;}
p + h2, ul + h2 {margin-top: 70px;}

a:link, a:visited{ text-decoration: underline; color: #B3001E; }
a:hover, a:active, a:focus{ text-decoration: none; color: #B3001E; }
a:focus, select:focus, input:focus, textarea:focus {outline: none !important;}
a:focus-visible, select:focus-visible, input:focus-visible, textarea:focus-visible, button:focus-visible {outline: 4px solid #ffc100 !important;}
a {transition: all 0.3s ease; letter-spacing: inherit;}

a.dnnPrimaryAction, a.dnnSecondaryAction {text-decoration: none;border: none;box-shadow: none;text-shadow: none;transition: all 0.3s ease;font-size: 90%;padding: 12px 23px 10px;line-height: 100%;font-weight: normal;margin-right: 4px;}
a.dnnPrimaryAction {color: #fff;background: #750014;}
a.dnnPrimaryAction:hover, a.dnnPrimaryAction:focus {border: none;background: #B3001E;}
a.dnnSecondaryAction {color: #000;background: #E6E6E6;}
a.dnnSecondaryAction:hover, a.dnnSecondaryAction:focus {color: #000;background: #BDBDBD !important;}
.dnnLoginActions a.dnnSecondaryAction {font-size: 80%;font-weight: 300;position: relative;right: -28px;padding: 8px 15px;background: #F5F5F5;}
.dnnCheckbox {margin-right: 0;}
.dnnBoxLabel {font-size: 80%;color: #616161;}
.dnnLabel {font-size: 95%;color: #000;}
.dnnLoginService input {font-family: inherit !important;font-size: 90% !important;letter-spacing: 0.6px;color: #000 !important;box-shadow: none !important;padding: 7px 10px !important;}
.dnnLoginService input[type="text"], .dnnLoginService input[type="password"] {width: 230px;}

span {letter-spacing: inherit;}
small{font-size:0.8em;}
big{font-size:1.2em;}
blockquote, pre{font-family:Lucida Console, monospace;}
ul li{list-style-type:square;}
ul li li{list-style-type:disc;}
ul li li li{list-style-type:circle;}
ol li{list-style-type:decimal;}
ol ol li{list-style-type:lower-alpha;}
ol ol ol li{list-style-type:lower-roman;}
ol ul li{list-style-type:disc;}

hr{color: #E9B5BE; background-color: #E9B5BE; border: none; height: 1px; text-align: left; margin: 25px 0; opacity: 100%;}

.skiptocontent a {background: #750014;font-family: 'canada-type-gibson';padding: 6px 8px;position: absolute;z-index: 1025;top: -50px;left: 0;color: #fff;font-size: 95%;line-height: 150%;transition: top 1s ease-out, background 1s linear;}
.skiptocontent a:focus {top: 0;text-decoration: none;outline: 0;transition: top .1s ease-in, background .5s linear;}
.skipLink {position: absolute; top: 50px;}

/* animated service icons */
svg {opacity: 0;}
svg.active {opacity: 1;}
svg .red-fill, svg .gray-outline, svg .thin-gray-outline, svg .thick-gray-outline, svg .red_fill, svg .gray_outline, svg .thin_gray_outline, svg .thick_gray_outline {transition: stroke-dashoffset 1.7s ease-in-out 0s, fill 1.1s ease-in-out 0.3s; stroke-dasharray: 1; stroke-dashoffset: 1; fill: transparent;}
svg.active .gray-outline, svg.active .thin-gray-outline, svg.active .thick-gray-outline, svg.active .gray_outline, svg.active .thin_gray_outline, svg.active .thick_gray_outline {stroke-dashoffset: 0;}
svg.active .red-fill, svg.active .red_fill {stroke-dashoffset: 0;fill: #b3001e;}

/* animated circuit icon */
.circuits {position: absolute; right: 25px; top: 0; width: 290px;}
.cls-1 {fill: #dde2e4;}
.cls-2 {fill: none; stroke-width: 2px;}
.cls-1, .cls-2 {transition: stroke-dashoffset 3.0s ease-in-out 0s, fill 1.7s ease-in-out 0.3s; stroke: #dde2e4; stroke-dasharray: 1; stroke-dashoffset: 1; fill: transparent; stroke-miterlimit: 10;}
svg.active .cls-1 {fill: #dde2e4; stroke-dashoffset: 0;}
svg.active .cls-2 {stroke-dashoffset: 0;}


/* ------------------------- specific styling ------------------------- */

.mainBtn a, a.aMainBtn {will-change: auto;background: #B3001E;background: linear-gradient(45deg, #5a000f, #b3001e 60%);transition: all 0.4s ease;padding: 10px 27px 8px;color: #fff;text-decoration: none;border-radius: 40px;margin: 4px 0;display: inline-block;position: relative;z-index: 50;}
.mainBtn a:before, .aMainBtn:before {background: #630011;content: '';display: block;height: 100%;position: absolute;top: 0;left: 0;opacity: 0;width: 100%;z-index: -50;border-radius: inherit;transition: inherit;}
.mainBtn a:hover:before, .mainBtn a:focus:before, a.aMainBtn:hover:before, a.aMainBtn:focus:before {opacity: 1}
.mainBtn a p {display: inline;margin: 0;color: #fff;text-transform: uppercase;letter-spacing: 1.9px;font-weight: 200;line-height: 100%;}
.mainBtn a p strong {letter-spacing: inherit;}
a.aMainBtn {color: #fff;text-transform: uppercase;letter-spacing: 1.9px;font-weight: 200;text-decoration: none;font-size: 87%;padding: 9px 23px 6px;margin: 10px 0 11px;}
.mainBtn a i, a.aMainBtn a i {font-size: 90%; transition: inherit;}
a.btnIconLeft i {padding-right: 8px;}
a.btnIconRight i {padding-left: 6px;text-align: left;width: 10px;}
a.btnIconRight:hover i, a.btnIconRight:focus i {padding-left: 10px;}
.outlineBtn a, a.aOutlineBtn {background: transparent;color: #750014;outline: 1px solid #750014; padding: 10px 27px 7px;}
.outlineBtn a p {color: inherit;}
a.aOutlineBtn {color: #750014; padding: 8px 23px 5px;}
.outlineBtn a i {transition: padding 0.5s ease;}
.outlineBtn a:hover, .outlineBtn a:focus, a.aOutlineBtn:hover, a.aOutlineBtn:focus {background: #630011; color: #fff;}
.btnWrap {text-align: center;margin: 20px 0 0;}
.btnItem {display: inline-block;margin: 0 9px;}

.largeText {font-size: 120%; margin-top: 30px;}
.smallText {font-size: 80%;}

.containerWidthHalf {width: 46%;margin-right: 8%;display: inline-block;vertical-align: top;}
.containerWidthHalf + .containerWidthHalf {margin-right: 0;}
.containerWidthOneThird {width: 33%; margin-right: 0; display: inline-block; vertical-align: top;}
.containerWidthTwoThird {width: 61%; margin-right: 6%; display: inline-block; vertical-align: top;}

.circuitLeftDiv.DNNEmptyPane, .whiteDiv.DNNEmptyPane, .circuitRightDiv.DNNEmptyPane, .ctaDiv.DNNEmptyPane {padding: 0 !important;margin: 0 !important;}
.circuitLeftWrapper {background-repeat: no-repeat;background-size: auto 100%;background-position: left;position: relative;background-image: url(images/circuits-left.png);background-color: #f3f7f9;}
.circuitLeftDiv, .circuitLeftDiv.dnnModuleManager {padding: 150px 0 130px !important; margin: 50px 0;}
.circuitRightWrapper {background-repeat: no-repeat;background-size: auto 100%;background-position: right;position: relative;background-image: url(images/circuits-right.png);background-color: #f3f7f9;}
.circuitRightDiv, .circuitRightDiv.dnnModuleManager {padding: 120px 0 !important;margin: 80px 0;}
.whiteDiv, .whiteDiv.dnnModuleManager {padding: 150px 0 !important;}
.whiteWrapper, .whiteDiv {position: relative;}
.ctaDiv {margin: 0 0 200px;}

.adminWarning {text-align: center;font-size: 110%;line-height: 100%;color: #B3001E;letter-spacing: 0.4px;padding: 50px 0 10px;}
.adminWarning span {font-size: 150%;position: relative;top: 7px;padding: 0 6px;}
.adminWarning.adminLeft {text-align: left;}
.adminUnpublished {color: #ff7800;background: #fff5ee;display: inline-block;max-width: fit-content;padding: 9px 15px 7px;border-radius: 7px;border: 1px solid #ffb879;margin: 10px 1px 10px;font-size: 110%;font-weight: 400;letter-spacing: 0.5px;}
.listToolbar {padding-bottom: 50px; text-align: center;}
.listToolbar + .listToolbar {margin-top: -37px;}
.listToolbar span {padding: 0 7px 0 0;font-size: 110%;letter-spacing: 0.3px;font-weight: 600;}
.listToolbar + .adminWarning {margin-top: -87px;padding-bottom: 30px;}

.linkADA {height: 1px;width: 1px;position: absolute;overflow: hidden;top: -10px;}
.clearBtn {background: none;color: inherit;border: none;padding: 0;font: inherit;cursor: pointer;outline: inherit;transition: all 0.3s ease;}
.triCol {display: table-cell;vertical-align: top;padding: 0 25px;}
.triColWrap {display: table;margin: 0 auto;}
.grayBg {box-shadow: -530px 0 0 0 #f3f7f9, 530px 0 0 0 #f3f7f9;background: #f3f7f9;padding: 130px 0;}
label[for="dnn605Checkboxes"] {margin-bottom: 20px !important;font-size: 130%;}
p[name="dnn605Results"] h3 {margin-top: 0;}
.DnnModule-605 {margin-bottom: -220px;}
.DnnModule-642 {text-align: center;}
.staffWrap {border-bottom: 1px solid #c1c1c1;padding-bottom: 170px;}
.memoriam {text-align: center;background: #750014;color: #fff;padding: 10px 85px 8px;border-radius: 50px;display: inline-block;margin: 90px 0 0;font-weight: 500;letter-spacing: 0.8px;font-size: 110%;}
.memoriam1 {text-transform: uppercase;letter-spacing: 1.6px;font-weight: 200;font-size: 95%;padding-right: 8px;}
.memoriam2 {font-weight: 200;letter-spacing: 0.8px;padding-left: 4px;}

body.dnnEditState [data-aos] {opacity: 1 !important;transform: none !important;}





/* ------------------------------ modules ------------------------------ */




/* portfolio */

.portWrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    column-gap: 60px;
    row-gap: 40px;
}
.portList {
    flex: 0 0 calc(33.33% - 41px);
    display: flex;
    flex-direction: column;
}
.portlink {
    text-decoration: none !important;
}
.portLandImg {
    position: relative;
}
.portLandImgBg {
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    position: relative;
    padding: 0 50px;
    height: 300px;
    border-radius: 25px;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 4px 18px 0px;
    text-align: center;
}
.portLandColor {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    transition: all 0.5s ease;
}
.portLandLogo {
    position: relative;
    z-index: 10;
    top: 50%;
    transform: translateY(-50%);
    max-height: 200px;
    transition: all 0.5s ease;
}
.portLandOverlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    text-align: center;
    transition: all 0.5s ease;
}
.portLandOverlay i {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    z-index: 12;
    width: 60px;
    height: 60px;
    background: #ffffff;
    border-radius: 50%;
    padding-top: 18px;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
    font-size: 150%;
}
.portlink:hover .portLandOverlay, .portlink:focus .portLandOverlay {
    opacity: 1;
}
.portlink:hover .portLandLogo, .portlink:focus .portLandLogo {
    opacity: 0;
}
.portlink:focus {
    outline: none !important;
}
.portlink:focus-visible {
    outline: 2px solid #ffc100 !important;
    outline-offset: 5px;
}
.portList .portTitle {
    color: #231F20;
    margin: 22px 0 0 2px;
    font-size: 200%;
    font-weight: 600;
}
.portFeatures {
    margin-top: 15px;
}
.portFeature {
    color: #b3001e;
    border: 1px solid #E7EDF0;
    padding: 7px 9px 5px;
    border-radius: 8px;
    line-height: 100%;
    font-size: 79%;
    display: inline-block;
    margin: 3px 3px 0 0;
}
.portDetail {
    max-width: 1000px;
    margin: 0 auto;
    margin-top: -15px;
}
.portTop {
    display: table;
    width: 100%;
    margin-bottom: 80px;
}
.portDetail .portTitle {
    margin-bottom: 0
}
.portLogo {
    display: table-cell;
    vertical-align: top;
    text-align: right;
}
.portLogo img {
    max-width: 210px;
    max-height: 170px;
    padding-top: 7px;
}
.portBottom {
    display: table;
    width: 100%;
    margin-bottom: 100px;
}
.portText {
    display: table-cell;
    vertical-align: top;
    width: 67%;
}
.portFeaturesList {
    display: table-cell;
    vertical-align: top;
    white-space: nowrap;
    text-align: right;
}
.portFeaturesAlign {
    text-align: left;
    display: inline-block;
}
.portLaptop {
    background: #E7EDF0;
    padding: 75px;
    border-radius: 20px;
    margin-bottom: 130px;
}
.portFullScreen img {
    box-shadow: rgba(100, 100, 111, 34%) 0px 7px 29px 0px;
    border-radius: 20px;
}
.portFeaturesList span {
    font-weight: 600;
    font-size: 120%;
    text-transform: uppercase;
    color: #750014;
    margin-bottom: 11px;
    letter-spacing: 0.9px;
    display: block;
}
.portFeaturesList ul {
    margin-left: 17px;
    padding-left: 0;
}
.portFeaturesList li {
    padding-left: 1em;
    text-indent: -1em;
    list-style: none;
    padding-bottom: 0px;
    color: #5B575B;
    font-size: 94%; 
}
.portFeaturesList li:before {
    content: "\f00c";
    font-weight: 900;
    padding-right: 9px;
    color: #B3001E;
    font-family: 'Font Awesome 6 Free';
    display: inline-block;
}
.portBackLink {
    margin-top: -100px;
    margin-bottom: 90px;
}
.portBackLink a {
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1.3px;
    word-spacing: 2px;
    font-size: 82%;
    padding: 7px 0;
}
.portBackLink a:hover, .portBackLink a:focus {
    letter-spacing: 2px;
    color: #750014;
}
.portBackLink i {
    padding-right: 7px;
    font-size: 90%;
}
.portBackLink:hover i, .portBackLink:focus i {
    padding-right: 10px;
}
.portDetail .mainBtn a {
    font-size: 80%;
    padding: 8px 21px 5px;
}
.portDetail .mainBtn {
    margin-top: 40px;
}
.portSiteItem {
    display: inline-block;
    vertical-align: top;
    width: 49%;
    padding: 100px 1% 0;
    text-align: center;
}
.portSisterSites {
    text-align: center;
}
.portSiteItem a {
    display: block;
    text-decoration: none;
    padding: 30px 20px 20px;
    border-radius: 20px;
}
.portSiteItem h2 {
    color: #231F20;
    margin: 20px 0 0;
    font-size: 140%;
    transition: all 0.3s ease;
}
.portSiteItem a:hover h2, .portSiteItem a:focus h2 {
    color: #B3001E;
}
.portSiteItem a:hover, .portSiteItem a:focus {
    background: #E7EDF0;
}
.portMarketingExamples {
    text-align: center;
}
.portMarketingItem img {
    border-radius: 20px;
}
.portMarketingSlider .youtubeEmbed {
    padding-bottom: 0;
    width: 888.9px;
}
.portMarketingItem img, .portMarketingSlider .youtubeEmbed {
    height: 500px;
}
.portMarketingItem h2 {
    font-size: 179%;
    margin: 34px 0 0;
    color: #231F20;
    font-weight: 500;
    transition: all 0.3s ease;
}
.portMarketingItem h2 i {
    font-size: 70%;
    padding-left: 8px;
    position: relative;
    top: -2px;
    color: #750014;
    left: 0;
    transition: all 0.3s ease;
}
.portHelper {
    padding: 30px 20px 20px;
}
.portMarketingItem .portLinkHelper a {
    text-decoration: none;
    display: block;
    padding: 30px 25px 30px;
    border-radius: 20px;
}
.portMarketingItem a:hover, .portMarketingItem a:focus {
    background: #E7EDF0;
}
.portMarketingItem a:hover h2, .portMarketingItem a:focus h2, .portMarketingItem a:hover h2 i, .portMarketingItem a:focus h2 i {
    color: #B3001E;
}
.portMarketingItem a:hover h2 i, .portMarketingItem a:focus h2 i {
    left: 6px;
}
.portMarketingExamples .slick-list {
    padding: 0 0 40px !important;
    margin: 0 !important;
}
.portMarketingSlider {
    position: relative;
}
.portMarketingSlider .slick-arrow {
    top: 43% !important;
}
.portMarketingSlider .slick-prev {
    left: -60px !important;
}
.portMarketingSlider .slick-next {
    right: -60px !important;
}
.portMarketingSlider .slick-autoplay-toggle-button {
	bottom: -30px !important;
}

/* END portfolio */






/* forms */

.c-form {
    column-gap: 30px !important;
}
.form-group {
    margin-bottom: 50px !important;
}
.form-label {
    font-weight: 500 !important;
    font-size: 100% !important;
    line-height: 100% !important;
    margin: 0 0 8px 1px !important;
    display: block !important;
}
.form-control {
    font-family: inherit;
    font-weight: 300 !important;
    color: rgb(35 31 32 / 75%) !important;
    font-size: 100% !important;
    line-height: 140% !important;
    padding: 13px 16px 12px !important;
    background: transparent;
    border-color: #d3dbdf !important;
    border-radius: 10px !important;
}
.form-check-label{
    font-weight: 300 !important;
    color: rgb(35 31 32 / 75%) !important;
    font-size: 100% !important;
    line-height: 140% !important;
    position: relative !important;
    top: 2px !important;
}
.form-control:focus {
    color: rgb(35 31 32 / 75%) !important;
    outline: none !important;
}
textarea.form-control {
    padding-top: 16px !important;
    padding-bottom: 16px !important;
}
input.form-control::placeholder {
    letter-spacing: 2px !important;
    color: rgb(35 31 32 / 40%) !important;
}
.form-check-input:checked {
    background-color: #750014 !important;
    border-color: #750014 !important;
}
.form-check-input:focus {
    box-shadow: 0 0 0 2px rgb(117 0 20 / 25%) !important;
    outline: none !important;
}
.text-danger {
    color: #B3001E !important;
    font-size: 90% !important;
    padding-left: 17px !important;
    position: relative !important;
    top: 3px !important;
}
label.required:after {
    content: "*" !important;
    color: #750014 !important;
    font-size: 100% !important;
    font-weight: 600 !important;
    position: relative !important;
    top: 1px !important;
    padding-right: 3px !important;
}
.required label:after, legend.required:after {
    display: none !important;
}
.field-container h2 {
    margin: 70px 0 0 !important;
    font-size: 210% !important;
}
.field-container hr {
    margin: 50px 0 !important;
}
.form-check .form-check-input {
    margin-left: -20px !important;
}
.form-check-inline {
    margin-right: 20px !important;
}
.btn-form {
    margin-top: 30px !important;
}
.btn {
    will-change: auto !important;
    background: #B3001E !important;
    background: linear-gradient(45deg, #5a000f, #b3001e 60%) !important;
    transition: all 0.4s ease !important;
    padding: 10px 27px 10px !important;
    color: #fff !important;
    text-decoration: none !important;
    border-radius: 40px !important;
    margin: 4px 0 !important;
    display: inline-block !important;
    position: relative !important;
    z-index: 50 !important;
    border: none !important;
    font-family: inherit !important;
    font-weight: 200 !important;
    text-transform: uppercase !important;
    letter-spacing: 1.9px !important;
}
.btn:focus {
    box-shadow: none !important;
}
.btn:before, .btn:before {
    background: #630011 !important;
    content: '' !important;
    display: block !important;
    height: 100% !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    opacity: 0 !important;
    width: 100% !important;
    z-index: -50 !important;
    border-radius: inherit !important;
    transition: inherit !important;
}
.btn:hover:before, .btn:focus:before {
    opacity: 1 !important;
}
.alert-info {
    background: #f3f7f9 !important;
    border-color: #E7EDF0 !important;
    border-radius: 20px !important;
    padding: 50px 30px !important;
    margin-top: 20px !important;
}
.submit-confirm h4 {
    margin: 0 0 13px 0 !important;
    color: #231F20 !important;
}
.submit-confirm p {
    margin: 0 !important;
}

/* END forms */







/* services checklist */

.servCheckWrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    row-gap: 40px;
    column-gap: 60px;
}
.servCheckItem {
    box-shadow: rgba(100, 100, 111, 18%) 0px 7px 29px 0px;
    border-radius: 16px;
    display: flex;
    flex-direction: row;
    flex: 0 0 calc(50% - 32px);
    padding: 22px 25px;
}
.servCheckItem > i {
    color: #B3001E;
    font-size: 180%;
    padding-right: 24px;
    position: relative;
    top: 1px;
}
.servCheckItem > div {
    margin: 0;
    font-size: 120%;
    padding-top: 6px;
    line-height: 106%;
    color: #231f20;
    font-weight: 300;
    letter-spacing: 0.5px;
}

/* END services checklist */







/* careers */

.careersWrap {
    margin-bottom: 250px;
    margin-top: 20px;
}
.careersHeader {
    font-size: 310%;
    text-align: center;
}
.careersItem {
    padding-top: 80px;
    margin-top: 80px;
    border-top: 1px solid #231f201f;
	max-width: 1130px;
    margin: 0 auto;
}
.careersDemoItem {
    text-align: center;
    margin-top: -10px;
}
.careersNoOpenings {
    color: #231F20;
    margin-top: 10px;
    font-size: 168%;
}
.careersTitle {
    margin: 0 0 35px;
    font-size: 210%;
}
.careersDescrp p:last-child {
    margin-bottom: 0;
}
.careersDescrp h4 {
    font-size: 129%;
    margin: 33px 0 15px;
}
.careersDescrp li {
    padding: 3px 0;
}

/* END careers */







/* image & text */

.imgTextWrap {
    max-width: 1130px;
    margin: 0 auto;
}
.imgTextWrap.grayBg {
    padding: 160px 0;
}
.imgTextItem {
    display: table;
    width: 100%;
    padding: 60px 0;
}
.imgTextItem:first-child {
    padding-top: 0;
}
.imgTextItem:last-child {
    padding-bottom: 0;
}
.imgTextImg {
    display: table-cell;
    vertical-align: middle;
    width: 430px;
}
.imgTextBg {
    background-color: #75001454;
    border-radius: 34px;
}
.imgTextImg img {
    border-radius: 34px;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 0px 29px 0px;
    mix-blend-mode: hard-light;
}
.imgTextContent {
    display: table-cell;
    vertical-align: middle;
}
.imgTextLeft .imgTextContent {
    padding-left: 7%;
}
.imgTextRight .imgTextContent {
    padding-right: 7%;
}
.imgTextTitle {
    font-size: 230%;
    margin: 0 0 22px 0;
}
.imgTextText {
    margin: 0;
}
.imgTextContent .btnItem {
    margin: 26px 0 0;
    font-size: 85%;
}

/* END image & text */





/* call to action testimonials */

.tsmlTitle {
    margin: 0 0 27px 0;
}
.tsmlTsml {
    background: #fff;
    box-shadow: rgb(100 100 111 / 16%) 0px 2px 15px 0px;
    margin: 0 27px;
    border-radius: 12px;
    padding: 25px 22px;
    position: relative;
}
.tsmlTsml:after {
    content: " ";
    position: absolute;
    top: 100%;
    right: 213px;
    margin-left: -5px;
    border-width: 16px;
    border-style: solid;
    z-index: 10;
    border-color: #fff transparent transparent transparent;
}
.tsmlLeftQuote img {
    transform: scale(-1, 1);
    opacity: 50%;
    width: 24px;
}
.tsmlRightQuote img {
    transform: scale(1, -1);
    opacity: 50%;
    width: 24px;
    margin-left: auto;
}
.tsmlQuote {
    text-align: left;
    font-size: 120%;
    margin: -9px 34px -10px 46px;
}
.tsmlAttribution {
    text-align: right;
    padding: 37px 120px 0 0;
}
.tsmlAttrText {
    display: inline-block;
    vertical-align: middle;
    padding-right: 22px;
}
.tsmlAttrImg {
    display: inline-block;
    vertical-align: middle;
}
.tsmlName {
    margin: 0;
    font-size: 121%;
    color: #231F20;
}
.tsmlCompany {
    font-size: 89%;
    line-height: 100%;
    font-weight: 200;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 8px 0 0;
}
.tsmlLocation {
    font-size: 84%;
    font-weight: 200;
    padding: 3px 0 0;
    letter-spacing: 0.4px;
}
.tsmlLocation i {
    font-size: 80%;
    padding-right: 6px;
    opacity: 40%;
}
.tsmlAttrImg img {
    width: 75px;
    height: 75px;
    border-radius: 50%;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 0px 10px;
}
.tsmlOuterWrap .sliderArrow {
    top: 46%;
}
.tsmlOuterWrap .sliderArrowPrev {
    left: 50px;
}
.tsmlOuterWrap .sliderArrowNext {
    right: 50px;
}
.tsmlOuterWrap .slick-dots {
    bottom: -32px !important;
}
.tsmlOuterWrap .slick-autoplay-toggle-button {
	bottom: -8px !important;
}
.tsmlOuterWrap.ctaItem {
    padding: 110px 50px 44px;
}
.tsmlOuterWrap .slick-arrow {
    top: 30% !important;
}

/* END call to action testimonials */





/* call to action */

.ctaItem {
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: left;
    position: relative;
    background-image: url(images/circuits-left.png);
    background-color: #f3f7f9;
    text-align: center;
    padding: 110px 50px 106px;
    border-radius: 23px;
}
.ctaTitle {
    margin: 0 0 33px 0;
}
.ctaText {
    font-size: 110%;
    font-weight: 400;
    margin: 0 auto 50px;
    max-width: 960px;
}

/* END call to action */







/* logo links */

.logoLinksWrap {
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 40px;
    row-gap: 40px;
}
.logoLinkItem {
    flex: 0 0 calc(20% - 33px);
    display: flex;
    flex-direction: column;
}
.logoLinkLink {
    text-decoration: none !important;
    flex: 0 0 100%;
    display: flex;
    flex-direction: column;
    padding: 20px 20px 16px;
    border-radius: 13px;
    box-shadow: rgb(100 100 111 / 18%) 0px 0px 24px 0px;
    border: 1px solid transparent;
    transition: all 0.6s ease;
}
.logoLinkLink:hover, .logoLinkLink:focus {
    background: #f3f7f9;
    box-shadow: none;
    border: 1px solid #DFEAEC;
}
.logoLinkLink:hover .logoLinkName, .logoLinkLink:focus .logoLinkName {
    color: #B3001E;
    transition: all 0.5s ease;
}
.logoLinkImg {
    margin-top: auto;
    margin-bottom: 22px;
}
.logoLinkImg img {
    max-height: 110px;
}
.logoLinkName {
    margin-bottom: 0;
    margin-top: auto;
    font-size: 110%;
    font-weight: 400;
    color: #231F20;
}
.logoLinks3Col .logoLinkItem {
    flex: 0 0 calc(33% - 23px);
}
.logoLinks3Col .logoLinkLink {
    padding: 49px 40px;
}
.logoLinks3Col .logoLinkImg {
    margin-bottom: 60px;
}
.logoLinks3Col .logoLinkName {
    font-size: 160%;
    color: #750014;
    font-weight: 500;
}

/* END logo links */








/* staff bio cards */

.staffWrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    column-gap: 25px;
    row-gap: 53px;
}
.staffDept {
    flex-basis: 100%;
    color: #B3001E;
    font-weight: 200;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 220%;
    margin: 170px 0 0;
	text-align: center;
}
.staffItem {
    flex: 0 0 calc(25% - 20px);
    display: flex;
    flex-direction: column;
	text-align: center;
}
.staffThumb {
	text-decoration: none !important;
}
.staffThumb:focus {
    outline: none !important;
}
.staffThumb:focus-visible {
    outline: 4px solid #ffc100 !important;
}
.staffHeadshot img {
    border-radius: 20px;
	height: 100%;
}
.staffThumb:hover .staffName, .staffThumb:focus .staffName, .staffThumb:hover .staffPosition, .staffThumb:focus .staffPosition {
    color: #B3001E;
}
.staffName {
    color: #231F20;
    font-weight: 600;
    font-size: 149%;
    margin: 20px 0 8px;
    transition: all 0.3s ease;
}
.staffPosition {
    text-transform: uppercase;
    margin: 0;
    font-size: 95%;
    font-weight: 200;
    color: #231F20;
    transition: all 0.3s ease;
}
.staffHeadshot {
    padding-bottom: 115%;
    position: relative;
    width: 100%;
}
.staffHeadshot:hover .staffFront {
    transform: rotateY(-180deg);
}
.staffHeadshot:hover .staffBack {
    transform: rotateY(0);
}
.staffFront, .staffBack {
    backface-visibility: hidden;
    overflow: hidden;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: all 0.4s ease;
	border-radius: 20px;
}
.staffBack {
    transform: rotateY(-180deg);
}
.staffBack img {
	width: 100%;
}
.staffPopup {
    padding: 67px 90px 42px;
}
.staffCouch img {
    border-radius: 20px;
    margin-bottom: 52px;
}
.staffNamePop {
    text-align: center;
    color: #231F20;
    font-weight: 600;
    font-size: 250%;
    margin: 0 0 10px 0;
}
.staffPositionPop {
    color: #231F20;
    text-transform: uppercase;
    font-weight: 200;
    text-align: center;
    font-size: 150%;
    margin: 0 0 8px 0;
    letter-spacing: 1px;
}
.staffBioDiv {
    margin: 45px 0 0;
}
.staffBio {
    display: inline-block;
    vertical-align: top;
    width: calc(50% - 3px);
}
.staffBio:first-child {
    padding-right: 15px
}
.staffBio:last-child {
    padding-left: 15px
}
.staffPositionPop + .staffContactDiv {
    margin-top: 60px;
}
.staffContactDiv {
    border-top: 1px solid #dbdbdb;
    margin: 20px 0 0;
    padding: 40px 0 0;
    text-align: center;
}
.staffEmail, .staffPhone {
    display: inline-block;
    vertical-align: top;
    color: #231F20;
    font-weight: 500;
    font-size: 100%;
    line-height: 100%;
    letter-spacing: 0.4px;
}
.staffEmail {
    padding-right: 25px;
    text-align: right;
}
.staffPhone {
    padding-left: 25px;
    text-align: left;
}
.staffEmail a {
    letter-spacing: inherit;
    text-decoration: none;
    color: #231f20;
}
.staffEmail a:hover, .staffEmail a:focus {
    color: #B3001E;
}
.staffEmail i, .staffPhone i {
    font-size: 73%;
    border-radius: 50%;
    border: 1px solid #fff;
    padding: 5.5px;
    background: #B3001E;
    background: linear-gradient(0deg, #750014, #B3001E 70%);
    color: #fff;
    margin-right: 4px;
    position: relative;
    top: -1px;
}
.staffStrengthsDiv {
    text-align: center;
    font-size: 76%;
    line-height: 110%;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    margin-top: 20px;
    color: #5D5151;
    font-weight: 200;
}
.fancybox-skin {
    background: #f3f7f9 !important;
    border-radius: 20px !important;
}
.fancybox-inner {
    height: auto !important;
}
.fancybox-overlay {
    background: #00000061 !important;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}
.fancybox-nav {
    height: auto !important;
    width: unset !important;
    font-size: 140%;
    color: #231F20 !important;
    padding: 0 18px !important;
    background: none !important;
    opacity: 30%;
    top: 0 !important;
    bottom: 0 !important;
}
.fancybox-nav i {
    
}
.fancybox-prev {
    border-radius: 20px 0 0 20px;
}
.fancybox-next {
    border-radius: 0 20px 20px 0;
}
.fancybox-nav:hover, .fancybox-nav:focus {
    opacity: 100%;
    background: #E7EBED !important;
}
.fancybox-close {
    background: none !important;
    width: unset !important;
    height: unset !important;
    padding: 11px 14px;
    font-size: 140%;
    color: #231F20 !important;
    opacity: 30%;
    top: 4px !important;
    right: 4px !important;
    border-radius: 50%;
}
.fancybox-close:hover, .fancybox-close:focus {
    opacity: 100%;
    background: #E7EBED !important;
}
.fancybox-nav:focus-visible, .fancybox-close:focus-visible {
	outline: 4px solid #ffc100 !important;
}

/* END staff bio cards */






/* counter */

.counterWrap {
    text-align: center;
    max-width: 1100px;
    margin: 0 auto 80px;
    position: relative;
}
.counterItem {
    display: inline-block;
    vertical-align: top;
    width: calc(25% - 4px);
    padding: 0 17px;
}
.counterItem:first-child {
    padding-left: 0;
}
.counterItem:last-child {
    padding-right: 0;
}
.counterCircle {
    border-radius: 50%;
    box-shadow: rgba(149, 157, 165, 0.25) 0px 0 24px;
    padding: 45px 0 0;
    height: 150px;
    width: 150px;
    margin: 0 auto 19px;
    background: rgb(243 247 249 / 21%);
}
.counterNum {
    font-size: 470%;
    color: #B3001E;
    font-weight: 700;
    line-height: 100%;
    letter-spacing: -0.7px;
    background: linear-gradient(75deg, #5a000f, #b3001e 62%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
}
.counterCaption {
    color: #231F20;
    font-size: 143%;
    line-height: 100%;
    font-weight: 500;
}

/* END counter */






/* youtube embeds */

.youtubeWrap {
    text-align: center;
}
.youtubeItem {
    display: inline-block;
    vertical-align: top;
    width: 33%;
    padding: 0 5px;
}
.youtubeItem:first-child {
    padding-left: 0;
    padding-right: 10px;
}
.youtubeItem:last-child {
    padding-right: 0;
    padding-left: 10px;
}
.youtubeEmbed {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    width: 100%
}
.youtubeEmbed iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 10px;
}
lite-youtube {
	border-radius: 10px;
	max-width: unset !important;
}
lite-youtube::before {
	font-family: 'canada-type-gibson' !important;
	font-size: 20px !important;
    font-weight: 500 !important;
    letter-spacing: 0.4px !important; 
	background-image: linear-gradient(180deg, rgb(0 0 0 / 68%) 16%, rgb(0 0 0 / 58%) 32%, rgb(0 0 0 / 22%) 67%, rgb(0 0 0 / 9%) 82%, rgb(0 0 0 / 0%) 94%) !important;
}

/* END youtube embeds */




/* tech tips */

.techWrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    column-gap: 30px;
    row-gap: 60px;
}
.techItem {
    width: 100%;
}
.techItem lite-youtube::before {
	display:none;
}
.techTitle {
    display: block;
    font-size: 147%;
    line-height: 108%;
    padding: 18px 16px 0 0;
    font-weight: 600;
    color: #B3001E;
    letter-spacing: 0.4px;
}

/* END tech tips */





/* staff slider */

.staffSliderOuterWrap {
    position: relative;
}
.staffSliderBg {
    box-shadow: -530px 0 0 0 #f3f7f9, 530px 0 0 0 #f3f7f9;
    background: #f3f7f9;
    height: 210px;
    width: 100%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}
.slick-list {
    padding: 40px 0 !important;
    margin: 0 30px !important;
}
.staffSliderItem {
    background: #fff;
    box-shadow: rgba(149, 157, 165, 0.2) 0px 0 15px;
    text-align: center;
    border-radius: 12px;
    padding: 20px 17px;
}
.slick-slide {
	margin: 0 12px;
}
.staffSliderHeadshot img {
    display: inline-block !important;
    border-radius: 50%;
}
.staffSliderName {
    color: #231F20;
    margin: 26px 0 13px;
    font-size: 140%;
}
.staffSliderPosition {
    color: #231F20;
    margin: 0;
    font-weight: 200;
    font-size: 87%;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.slick-slider {
    margin-bottom: 0 !important;
    text-align: center;
}
.sliderItem {
    padding: 100px 0 100px;
}
.slick-prev .slick-prev-icon:before {
    content: "\f053" !important;
    font-weight: 900;
    font-family: 'Font Awesome 6 Free';
}
.slick-next .slick-next-icon:before {
    content: "\f054" !important;
    font-weight: 900;
    font-family: 'Font Awesome 6 Free';
}
.slick-prev {
    left: -10px !important;
}
.slick-next {
    right: -10px !important;
}
.slick-arrow, .slick-autoplay-toggle-button, .slick-dots {
	transition: all 0.3s ease;
}
.slick-arrow, .slick-autoplay-toggle-button {
	z-index: 20;
	border-radius: 50%;
	height: 35px !important;
    width: 35px !important;
	opacity: 100% !important;
}
.slick-arrow {
	top: 50% !important;
}
.slick-autoplay-toggle-button {
    left: unset !important;
    bottom: -10px !important;
    transform: translateX(-50%);
}
.slick-dots {
    bottom: 7px !important;
    display: inline-block !important;
    width: max-content !important;
    transform: translateX(-50%);
    padding: 9px 16px 3px !important;
    border-radius: 30px;
    margin: 0 !important;
}
.slick-next-icon, .slick-prev-icon, .slick-pause-icon, .slick-play-icon, .slick-dots li button .slick-dot-icon {
	color: #231F20 !important;
	opacity: 50% !important;
}
.slick-next-icon, .slick-prev-icon, .slick-pause-icon, .slick-play-icon {
    font-size: 21px !important;
    transition: all 0.3s ease;
}
.slick-arrow:hover .slick-next-icon, .slick-arrow:hover .slick-prev-icon, .slick-autoplay-toggle-button:hover .slick-pause-icon, .slick-autoplay-toggle-button:hover .slick-play-icon, .slick-arrow:focus-visible .slick-next-icon, .slick-arrow:focus-visible .slick-prev-icon, .slick-autoplay-toggle-button:focus-visible .slick-pause-icon, .slick-autoplay-toggle-button:focus-visible .slick-play-icon {
	opacity: 100% !important;
}
.slick-dots li button:focus-visible .slick-dot-icon:before, .slick-dots li button:hover .slick-dot-icon:before{
    color: #B3001E !important;
}
.slick-dots li button:focus, .slick-autoplay-toggle-button:focus, .slick-arrow:focus {
    outline: none !important;
}
.slick-dots li button .slick-dot-icon {
    opacity: 50% !important;
}
.slick-dots li.slick-active button .slick-dot-icon {
    opacity: 100% !important;
}
.slick-dots li button .slick-dot-icon:before {
    transition: all 0.3s ease !important;
	color: inherit !important;
	border-radius: 50%;
}
.slick-dots li button {
	border-radius: 50%;
}
.slick-arrow:focus-visible, .slick-autoplay-toggle-button:focus-visible, .sliderBtns .mainBtn a:focus-visible, .slick-dots li button:focus-visible .slick-dot-icon:before {
    outline: 4px solid #ffc100 !important;
}

/* END staff slider */






/* icon cards */

.iconCardWrap {
    margin-bottom: 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    gap: 20px;
}
.iconCardTwoCol .iconCardItem {
    flex: 0 0 calc(50% - 11px);
}
.iconCardThreeCol .iconCardItem {
    flex: 0 0 calc(33.33% - 14px);
}
.iconCardItem {
    background: #f3f7f9;
    padding: 40px 40px 34px;
    border-radius: 14px;
    display: flex;
    flex-direction: column;
}
.iconCardContent {
    display: table-cell;
    vertical-align: middle;
    padding-right: 50px;
}
.iconCardIcon {
    display: table-cell;
    vertical-align: middle;
    width: 110px;
}
.iconCardTitle {
    color: #231F20;
    font-size: 170%;
    margin: 0 0 20px;
    font-weight: 600;
    letter-spacing: 0.2px;
    line-height: 105%;
}
.iconCardText * {
    font-weight: 200;
}
.iconCardText p:last-child, .iconCardText ul:last-child {
    margin-bottom: 0;
}
.iconCardText ul {
    margin-left: 19px;
}
.iconCardText li {
    padding: 2px 0;
}
.iconCardLink {
    margin-top: 26px;
}
.iconCardLink a {
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-weight: 300;
    font-size: 100%;
    line-height: 100%;
	color: #A8001C;
    transition: 0.5s all ease;
}
.iconCardLink a i {
    font-size: 85%;
    padding-left: 3px;
}
.iconCardLink a:hover, .iconCardLink a:focus {
    letter-spacing: 2.6px;
    color: #750014;
}
.iconCardThreeCol .iconCardContent {
    display: block;
    padding-right: 0;
}
.iconCardThreeCol .iconCardIcon {
    margin-bottom: 43px;
    display: block;
    width: auto;
}
.iconCardThreeCol .iconCardIcon svg, .iconCardThreeCol .iconCardIcon {
    height: 120px;
}
.iconCardThreeCol .iconCardIcon img {
    max-height: 100%;
}

/* END icon cards */






/* partner logos */

.partnerHomeWrap {
    display: table;
    width: 100%;
    padding-bottom: 50px;
}
.partnerHomeItem {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    padding: 0 44px;
}
.partnerHomeItem:first-child {
    padding-left: 0;
}
.partnerHomeItem:last-child {
    padding-right: 0;
}
.partnerHomeItem img {
    opacity: 73%;
}

/* END partner logos */






/* titles */

.heroTitleItem {
    text-align: center;
    margin: 190px auto 70px;
    max-width: 1030px;
}
.heroTitleTitle {
    margin-bottom: 0;
    font-size: 580%;
    display: inline-block;
}
.heroTitleText {
    padding: 35px 0 0;
    max-width: 780px;
    margin: 0 auto;
    font-size: 115%;
}
.heroTitleText p:last-child {
    margin-bottom: 0;
}
.heroTitleItem .sc-menu {
    display: block !important;
}

.subtitleTitle {
    margin-bottom: 0;
}
.subtitleText {
    font-weight: 300;
    color: #231F20;
    font-size: 116%;
    max-width: 780px;
    margin: 0 auto;
    margin-top: 16px;
    line-height: 150%;
}

.servTitleItem {
    margin: 110px auto 70px;
}
.servTitleBread {
    margin-bottom: 60px;
}
.servTitleBread a {
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1.3px;
    word-spacing: 2px;
    font-size: 82%;
}
.servTitleBread a:hover, .servTitleBread a:focus {
    letter-spacing: 2px;
    color: #750014;
}
.servTitleService {
    display: table;
    width: 100%;
}
.servTitleContent {
    display: table-cell;
    vertical-align: middle;
    padding-right: 100px;
}
.servTitleIcon {
    display: table-cell;
    vertical-align: middle;
    width: 190px;
}
.servTitleText.heroTitleText {
    max-width: 1040px;
    margin: 0;
}

/* END titles */






/* blog */

.eds_news_Intellicom .row {
    column-gap: 30px;
    row-gap: 70px;
    margin: 0 !important;
}
.eds_news_Intellicom .col-lg-4 {
    flex: 0 0 calc(33.33% - 22px) !important;
    display: flex;
    flex-direction: column;
    padding: 20px 30px 32px !important;
    border-radius: 13px;
    box-shadow: rgb(100 100 111 / 21%) 0px 0px 18px 0px;
}
.eds_news_Intellicom .card {
    box-shadow: none !important;
    margin: 0 !important;
}
.eds_news_Intellicom .card .card-header.card-header-image {
    margin: -40px 0 0 !important;
    background: transparent !important;
}
.eds_news_Intellicom .card .card-header.card-header-image img {
    border-radius: inherit !important;
    box-shadow: rgba(100, 100, 111, 18%) 0px -7px 17px 0px !important;
}
.eds_news_Intellicom .card .card-header.card-header-image a {
    position: relative;
    border-radius: 14px !important;
}
.eds_news_Intellicom .card .card-title {
    margin: 24px 0 12px !important;
}
.eds_news_Intellicom .card .card-title a {
    font-family: 'canada-type-gibson' !important;
    font-weight: 500 !important;
    text-decoration: none;
    font-size: 70% !important;
    line-height: 115% !important;
    color: #750014 !important;
}
.eds_news_Intellicom .card .card-title a:hover, .eds_news_Intellicom .card .card-title a:focus {
    color: #B3001E !important;
}
.eds_news_Intellicom .card .card-body, .eds_news_Intellicom .card .card-footer {
    padding: 0 !important;
}
.blogList p {
    margin-bottom: 25px !important;
    font-size: 100%;
}
.card-btn a {
    font-size: 71%;
    padding: 7px 19px 5px;
    display: inline;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 1.9px;
    font-weight: 200;
    line-height: 100%;
}
.card-btn a:hover, .card-btn a:focus {
    color: #fff !important;
}
.card-btn {
    margin-top: auto;
}

.blogDetails .article_pager {
    display: block !important;
}
.blogDetails .edn_tooltipLeft {
    float: left;
}
.blogDetails .edn_tooltipRight {
    float: right;
}
.blogDetails .edNews_mediaContainer {
    float: right;
    padding: 3px 0 30px 30px;
    margin: 0 !important;
}
.blogDetails .edNews_date {
    margin: 0 0 50px;
    line-height: 100%;
    color: #B3001E;
    text-transform: uppercase;
    font-weight: 200;
    letter-spacing: 1px;
}
.blogDetails.card {
    max-width: 960px;
    margin: 0 auto !important;
    border: none !important;
}
.card-body h1 {
    font-size: 350%;
    line-height: 106%;
}
.eds_news_Intellicom.eds_subCollection_news .edNews_socialPrintWrapper {
    padding: 70px 0 0 !important;
    display: block !important;
    text-align: center;
}
.edn_printButton, .sharethis-inline-share-buttons {
    display: inline-block !important;
    vertical-align: middle;
}
.st-btn {
    display: inline-block !important;
}
.blogDetails h2 {
    margin-bottom: 23px;
    margin-top: 55px;
    font-size: 180%;
}
.blogDetails h3 {
    font-size: 140%;
    color: #231F20;
}
.eds_news_Intellicom.eds_subCollection_news .article_pager.edn_articleScrolling a {
    padding: 0 !important;
    margin: 0 !important;
    line-height: 100% !important;
    color: #5A5859 !important;
    text-transform: uppercase !important;
    font-weight: 300 !important;
    letter-spacing: 1px !important;
    font-size: 80% !important;
    transition: all 0.5s ease !important;
}
.edn_previusArticle i {
    font-size: 83%;
    padding-right: 4px;
    color: #B3001E;
    position: relative;
    left: 0;
    transition: all 0.5s ease;
}
.edn_nextArticle i {
    font-size: 83%;
    padding-left: 4px;
    color: #B3001E;
    position: relative;
    right: 0;
    transition: all 0.5s ease;
}
.eds_news_Intellicom.eds_subCollection_news .article_pager.edn_articleScrolling a:hover, .eds_news_Intellicom.eds_subCollection_news .article_pager.edn_articleScrolling a:focus {
    color: #B3001E !important;
}
.edn_previusArticle:hover i, .edn_previusArticle:focus i {
    left: -6px;
}
.edn_nextArticle:hover i, .edn_nextArticle:focus i {
    right: -6px;
}
.eds_news_Intellicom .edn_toolTip .edn_toolTipContent {
    transition: opacity 0.5s ease !important;
}
.eds_news_Intellicom .edn_toolTip:hover .edn_toolTipContent {
    background: #787677 !important;
    width: 131% !important;
    margin-bottom: 15px;
    padding: 7px 10px !important;
    line-height: 125% !important;
    letter-spacing: 0.5px;
    font-weight: 200;
}
#st-1 .st-btn > img {
    top: 4px !important;
}
#st-1 .st-btn {
    height: 24px !important;
    padding: 0 4px !important;
    border-radius: 4px !important;
}
.eds_news_Intellicom.eds_subCollection_news .edn_printButton {
    background: #5A5859 !important;
    border-radius: 4px !important;
    padding: 5px 11px 4px 10px !important;
    font-size: 100% !important;
    opacity: 100%;
    top: 0;
    transition: all 0.3s ease !important;
}
.eds_news_Intellicom.eds_subCollection_news .edn_printButton > span {
    font-family: inherit !important;
    font-weight: 200 !important;
    letter-spacing: 1px !important;
}
.eds_news_Intellicom.eds_subCollection_news .edn_printButton::before {
    padding-right: 6px !important;
    font-size: 70% !important;
}
.eds_news_Intellicom.eds_subCollection_news .edn_printButton:hover {
    top: -4px;
    opacity: .8;
}
.article_pager a.page {
    color: #625555 !important;
    font-size: 76% !important;
    border: 1px solid transparent !important;
}
.article_pager a.page.active {
    background: #B3001E !important;
    color: #fff !important;
    box-shadow: none !important;
}
.article_pager a.page.active:hover, .article_pager a.page.active:focus {
    cursor: default;
}
.article_pager a.page:hover, .article_pager a.page:focus, .article_pager a.prev:hover, .article_pager a.next:hover, .article_pager a.last:hover, .article_pager a.first:hover {
    border: 1px solid #B3001E !important;
}
.article_pager a.prev, .article_pager a.next, .article_pager a.last, .article_pager a.first {
    color: #625555 !important;
    text-transform: uppercase !important;
    font-weight: 300 !important;
    letter-spacing: 1px !important;
    font-size: 74% !important;
    border: 1px solid transparent !important;
}
.article_pager a.prev {
    margin: 0 20px 0 0 !important;
}
.article_pager a.next {
    margin: 0 0 0 20px !important;
}
.blogList + .article_pager {
    margin: 70px 0 0;
}

/* END blog */







/* mailchimp */

#dnn_ctr479_ContentPane {
    background: #f3f7f9;
    padding: 50px 40px;
    border-radius: 20px;
}
.DnnModule-479 h2 {
    font-size: 210%;
    font-weight: 500;
    margin: 0 0 13px 0;
}
.DnnModule-479 p {
    font-size: 110%;
}
.display_archive {
    padding-top: 40px;
    margin-top: 27px;
    border-top: 1px solid #DCDFE2;
    overflow: visible;
}
.campaign {
    padding: 9px 0;
}
.campaign:first-child {
    padding-top: 0;
}
.campaign:last-child {
    padding-bottom: 0;
}
.campaign span {
    display: none;
}
.campaign a {
    text-decoration: none;
    letter-spacing: 0.3px;
    font-size: 100%;
    line-height: 100%;
    padding: 3px 0;
	color: #A8001C;
}
.campaign a:hover, .campaign a:focus {
    letter-spacing: 0.7px;
    color: #750014;
}
.edmcp_mainWrapper {
    max-width: 820px;
    border: none !important;
    background: #f3f7f9;
    border-radius: 20px !important;
}
.eds_mailChimpPlus_Ozone .edmcp_headerTitle {
    font-family: 'canada-type-gibson' !important;
    font-size: 210% !important;
    font-weight: 500 !important;
    margin: 0 0 20px !important;
    color: #750014 !important;
}
.eds_mailChimpPlus_Ozone .edmcp_header {
    padding: 50px 0 45px !important;
    border-bottom: 1px solid #DCDFE2 !important;
    margin: 0 40px;
}
.eds_mailChimpPlus_Ozone .edmcp_header::after {
    color: #B3001E !important;
    background: #F9FBFC !important;
    box-shadow: none !important;
    border: 1px solid #DCDFE2 !important;
    font-size: 150% !important;
    line-height: 47px !important;
    width: 50px !important;
    height: 50px !important;
    bottom: -26px !important;
}
.eds_mailChimpPlus_Ozone .edmcp_formWrapper {
    padding: 82px 40px 34px !important;
}
.eds_mailChimpPlus_Ozone .edmcp__inputGroup {
    margin-bottom: 33px !important;
}
.eds_mailChimpPlus_Ozone .edmcp__label {
    font-family: 'canada-type-gibson' !important;
    font-size: 110% !important;
    font-weight: 400 !important;
    letter-spacing: 0.3px;
    color: #750014 !important;
    margin-left: 2px !important;
}
.eds_mailChimpPlus_Ozone .edmcp__inputGroup.edmcp_fullWidth input {
    font-family: 'canada-type-gibson';
    font-size: 103%;
    font-weight: 200;
    letter-spacing: 0.3px;
    color: #231F20;
    padding: 9px 12px 6px;
    border: 1px solid #DCDFE2;
    border-radius: 8px;
}
.eds_mailChimpPlus_Ozone .edmcp__inputGroup.edmcp_fullWidth input:hover {
    border-color: #babfc5 !important;
}
.eds_mailChimpPlus_Ozone .edForm__subscribe, .eds_mailChimpPlus_Ozone .edForm__closeResponse {
    will-change: auto;
    background: #630011 !important;
    transition: all 0.5s ease !important;
    padding: 13px 27px 11px !important;
    color: #fff !important;
    text-decoration: none;
    border-radius: 40px !important;
    margin: 4px 0;
    display: inline-block !important;
    border: none !important;
    font-size: 100% !important;
    font-family: 'canada-type-gibson' !important;
    font-weight: 200 !important;
    letter-spacing: 1.9px;
}
.eds_mailChimpPlus_Ozone .edForm__subscribe:hover, .eds_mailChimpPlus_Ozone .edForm__subscribe:focus {
    background: #B3001E !important;
}
.eds_mailChimpPlus_Ozone .edForm__unsubscribe, .eds_mailChimpPlus_Ozone .edmcp_archiveButton {
    font-family: 'canada-type-gibson' !important;
    font-size: 93% !important;
    font-weight: 200;
    letter-spacing: 0.3px;
    color: #231F20 !important;
}

/* END mailchimp */





/* newsletter */

.newsWrapperTitle {
    margin-bottom: 50px;
}
.newsWrapper {
	display: grid;
    grid-template-columns: repeat(2, 1fr); 
    gap: 30px;
}
.newsList {
    box-shadow: rgb(100 100 111 / 21%) 0px 0px 18px 0px;
	padding: 34px 30px;
    border-radius: 13px;
}
.newsListTitle {
    margin: 0 0 7px;
}
.newsDate {
    color: #757575;
    font-weight: 200;
    letter-spacing: 1px;
    line-height: 100%;
    font-size: 100%;
}
.newsListSummary {
    margin: 16px 0 0;
}
.newsLink {
    margin: 27px 0 0;
}
.newsLink a {
	font-size: 71%;
    padding: 7px 19px 5px;
    display: inline;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: 1.9px;
    font-weight: 200;
    line-height: 100%;
}

.newsDetail h2 {
    margin: 0 0 24px;
	font-size: 230%;
}
.newsDetail h3 {
    color: #B3001E;
    margin-bottom: 20px;
}
.newsDetail p, .newsDetail li {
	font-size: 105%;
}
.newsDetail p {
	margin-bottom: 15px;
}
.newsDiv {
    margin: 63px 0 0;
	padding: 0 0 44px;
    border-bottom: 1px solid #d5d5d5;
}
.newsBackLink {
    margin-top: -90px;
    margin-bottom: 71px;
}
.newsBackLink a {
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1.8px;
    font-weight: 200;
}
.newsBackLink a i {
    position: relative;
    left: 0;
    padding-right: 5px;
    font-size: 90%;
	transition: all 0.3s ease;
}
.newsBackLink a:hover, .newsBackLink a:focus-visible  {
	color: #750014;
}
.newsBackLink a:hover i, .newsBackLink a:focus-visible i {
	left: -4px;
}
.newsDetailTitle {
    margin: 0 0 16px;
}
.newsMain {
    margin: 70px 0 0;
    padding: 0 0 44px;
    border-bottom: 1px solid #d5d5d5;
}
.newsMainArticle h3, .newsMainArticle h2 {
    color: #750014;
	font-size: 160%;
	line-height: 102%;
	font-weight: 500;
	letter-spacing: 0.5px;
    word-spacing: 2px;
}
.newsMainArticle p + h3, .newsMainArticle p + h2, .newsMainArticle ul + h3, .newsMainArticle ul + h2, .newsMainArticle ol + h3, .newsMainArticle ol + h2 {
	margin-top: 35px;
}
.newsTechTip {
	padding: 0 0 66px;
}
.newsTechText {
    margin: 0 0 30px !important;
    font-size: 125% !important;
}
.newsTechTip lite-youtube {
	border-radius: 14px;
}
h3.newsStaffName {
    margin-bottom: 40px;
}
.newsStaffName span {
    font-weight: 200;
    letter-spacing: 0.7px;
	font-size: 87%;
}
.newsStaffImg img {
    border-radius: 18px;
    margin-bottom: 37px;
}
.newsSpotBlog {
    border: none;
    padding: 0;
}
.newsBlogLink {
    padding: 2px 0 8px;
}
.newsBlogLink a {
    text-decoration: none;
    font-weight: 400;
    font-size: 110%;
    line-height: 120%;
    letter-spacing: 0.3px;
}
.newsBlogLink a i {
	transition: all 0.3s ease;
	font-size: 80%;
}
.newsBlogLink a:hover, .newsBlogLink a:focus-visible  {
	color: #750014;
}
.articleNav {
    text-align: right;
    background: #f3f7f9;
    margin: 60px 0 0;
    padding: 10px 16px 8px;
    border-radius: 6px;
}
.articleNav span {
	padding: 0 9px;
}
a.articlePrev, a.articleNext {
	font-weight: 200;
    color: #707070;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 92%;
    line-height: 100%;
	padding: 10px 0 8px;
}
.articlePrev i, .articleNext i {
    font-size: 90%;
    opacity: 60%;
    position: relative;
    left: 0;
    right: 0;
	transition: all 0.3s ease;
}
.articlePrev:hover, .articlePrev:focus-visible, .articleNext:hover, .articleNext:focus-visible {
	opacity: 60%;
}
.articlePrev:hover i, .articlePrev:focus-visible i {
	left: -3px;
}
.articleNext:hover i, .articleNext:focus-visible i {
	left: 3px;
}

/* END newsletter */









/* ----------------------------- responsive ----------------------------- */

@media all and (min-width: 765px) {
    .mobileMenuWrapper {display: none !important;}
}

@media all and (max-width: 1250px) {
    .iconCardContent {padding-right: 30px; font-size: 95%;}
    .iconCardItem {padding: 40px 29px 34px 36px;}
    .iconCardTitle {margin: 0 0 14px;}
    .iconCardLink {margin-top: 18px;}
    .partnerHomeItem {padding: 0 38px;}
    .logoLinksWrap {column-gap: 20px;row-gap: 20px;}
    .logoLinkItem {flex: 0 0 calc(20% - 18px);}
    .logoLinkLink {padding: 15px 15px 16px;}
    .portWrapper {column-gap: 35px;row-gap: 50px;}
    .portList {flex: 0 0 calc(33.33% - 25px);}
    .portList .portTitle {font-size: 160%;}
	.footerMiddleCol {width: 19%;}
	.techWrap {grid-template-columns: repeat(2, 1fr);}
}
@media all and (max-width: 1150px) {
    .heroTitleTitle {font-size: 490%;}
    .iconCardContent {display: block; padding-right: 0;}
    .iconCardIcon {float: right; padding: 0 0 20px 20px; width: 116px;}
    .footerSupportTitle {font-size: 210%;}
    .iconCardThreeCol .iconCardItem {padding: 30px 19px 24px 26px;}
    .servCheckWrap {row-gap: 30px;column-gap: 30px;}
    .servCheckItem {flex: 0 0 calc(50% - 16px);}
	.footerRightCol a {display: block;text-align: center;margin: 0 0 10px;}
	.footerRightCol a.fb {top: -11px;margin-bottom: 1px;}
	.footerMiddleCol {width: 20%;padding-right: 34px;}
	.portMarketingSlider .slick-prev {left: -40px !important;}
	.portMarketingSlider .slick-next {right: -40px !important;}
	.portHelper {padding: 30px 0px 20px;}
	.portMarketingItem .portLinkHelper a {padding: 30px 15px 30px;}
	.portMarketingItem img, .portMarketingSlider .youtubeEmbed {height: unset; max-height: 500px;margin: 0 auto;}
	.portMarketingSlider .youtubeEmbed {padding-bottom: 56.25%;width: unset;}
	.slick-track {align-items: center;justify-content: center;display: flex !important;}
}
@media all and (max-width: 1100px) {
    .partnerHomeItem {padding: 0 28px;}
    .logoLinkItem {flex: 0 0 calc(25% - 16px);}
    .staffWrap {column-gap: 15px;row-gap: 40px;}
    .staffItem {flex: 0 0 calc(25% - 13px);}
    .staffName { font-size: 122%;margin: 15px 0 6px;}
    .staffPosition {font-size: 78%;}
    .staffHeadshot img {border-radius: 12px;}
	.slick-slide {margin: 0 9px;}
	.tsmlTsml {margin: 0 7px;}
	.eds_mailChimpPlus_Ozone .edmcp_formWrapper {padding: 72px 23px 24px !important;}
	.eds_mailChimpPlus_Ozone .edmcp_header {margin: 0 28px;}
}
@media all and (max-width: 1000px) {
    body {font-size: 93%;}
    .imgTextImg {width: 380px;}
    .imgTextLeft .imgTextContent {padding-left: 5%;}
    .imgTextRight .imgTextContent {padding-right: 5%;}
    .imgTextBg, .imgTextImg img {border-radius: 24px;}
    .imgTextTitle {margin: 0 0 14px 0;}
    #dnn_pnav > li, .menuNav .menuListItem0 {margin: 0 28px 0 0 !important; padding: 8px 0 29px !important;}
    .sticky #dnn_pnav > li, .sticky .menuNav .menuListItem0 {padding: 8px 0 20px !important;}
    #dnn_pnav > li:hover > ul {top: 58px !important;}
    .sticky #dnn_pnav > li:hover > ul {top: 49px !important;}
	.menuNav .menuListItem0 .menuList0 {top: 84px !important;}
    .sticky .menuNav .menuListItem0 .menuList0 {top: 65px !important;}
    .logoWrapper {width: 190px;}
    .partnerHomeItem {padding: 0 22px;}
    .tsmlOuterWrap.ctaItem {padding: 110px 30px 36px}
    .tsmlQuote {font-size: 110%;margin: -9px 24px -10px 38px;}
    .tsmlOuterWrap .sliderArrowPrev {left: 30px;}
    .tsmlOuterWrap .sliderArrowNext {right: 30px;}
    .logoLinks3Col .logoLinkLink {padding: 30px 12px}
    .eds_news_Intellicom .row {column-gap: 20px;row-gap: 50px;}
    .eds_news_Intellicom .col-lg-4 {flex: 0 0 calc(33.33% - 15px) !important;padding: 20px 21px 21px !important;}
    .eds_news_Intellicom .card .card-title {font-size: 220%;}
    .blogList p {font-size: 98%;}
    .portFeature {padding: 6px 9px 3px;border-radius: 6px;}
    .portList .portTitle {margin: 17px 0 0 2px;}
    .portLandImgBg {padding: 0 20px;}
    .portLandOverlay i {padding-top: 19px;}
	.newsWrapper {gap: 18px;}
	.newsList {padding: 34px 27px;}
}
@media all and (max-width: 950px) {
	.footerLink a:hover, .footerLink a:focus {letter-spacing: 0;color: #B3001E !important;}
	.footerMiddleCol {width: 21%;}
	.footerInfoLeft, .footerInfoCenter {padding-right: 25px;}
	.footerInfoRight .footerCities {max-width: 230px;}
}
@media all and (max-width: 900px) {
    body {font-size: 90%;}
    .heroTitleItem {margin: 140px auto 30px;}
    .heroTitleTitle {font-size: 450%;}
    .youtubeItem, .youtubeItem:first-child, .youtubeItem:last-child {padding: 20px 0;}
    .youtubeItem { width: 100%;padding: 20px 0;max-width: 460px;}
    .circuitRightDiv, .circuitRightDiv.dnnModuleManager {padding: 110px 0 60px !important;}
    .whiteDiv, .whiteDiv.dnnModuleManager {padding: 100px 0 !important;}
    .contentWrapper {padding-bottom: 190px;}
    .counterCircle {padding: 37px 0 0;height: 130px;width: 130px;}
    .slick-list {margin: 0 20px !important;}
    .tsmlTsml {padding: 23px 14px;}
    .staffItem {flex: 0 0 calc(33% - 9px);}
    .iconCardThreeCol .iconCardItem {flex: 0 0 calc(50% - 11px);}
	.tsmlAttribution {padding: 37px 40px 0 0;}
	.tsmlTsml:after {right: 131px;}
}
@media all and (max-width: 850px) {
    .containerWidthOneThird, .containerWidthTwoThird {width: 100%; margin-right: 0; display: block; padding: 25px 0;}
	.edmcp_mainWrapper {margin-top: 170px;}
    .imgTextImg {width: 320px;}
    .logoWrapper {width: 180px; padding-bottom: 23px;}
    #dnn_pnav > li {margin: 0 24px 0 0 !important; padding: 8px 0 25px !important;}
	.menuNav .menuListItem0 {margin: 0 18px 0 0 !important; padding: 8px 0 25px !important;}
	.menuParent:after {padding-left: 3px;}
    #dnn_pnav > li:hover > ul, .menuNav .menuListItem0 .menuList0 {top: 54px !important;}
    .headerWrapper {padding: 11px 0 0;}
    .partnerHomeItem {padding: 0 17px;}
    .footerSupportText {font-size: 120%; margin: 8px 0;}
    .footerSupportText i {margin-right: 3px;padding: 5px;}
    .footerSupportTitle {font-size: 190%;}
    .logoLinkItem {flex: 0 0 calc(33% - 12px);}
    .staffPopup {padding: 37px 50px 35px;}
    .staffCouch img {margin-bottom: 42px;}
    .staffBioDiv {margin: 27px 0 0;}
    .staffBio:last-child {padding-left: 10px;}
    .staffBio:first-child {padding-right: 10px;}
    .staffContactDiv {margin: 10px 0 0;padding: 30px 0 0;}
    .fancybox-nav {padding: 0 11px !important;}
    .logoLinks3Col .logoLinkItem {flex: 0 0 calc(50% - 11px);}
    .eds_news_Intellicom .col-lg-4 {flex: 0 0 calc(50% - 11px) !important;}
    .servTitleIcon {width: 140px;}
    .servTitleContent {padding-right: 50px;}
	.footerLeftCol, .footerMiddleCol, .footerRightCol {display: block;padding: 0;}
    .footerColumns {padding: 39px 0;}
    .footerInfoCol {display: block;}
    .footerInfo {display: block;width: 100%;padding: 0;}
    .footerInfoLeft, .footerInfoCenter {padding-bottom: 26px;}
    .footerLeftCol {text-align: center;}
    .footerMiddleCol {text-align: center;margin-top: 30px; width: unset;}
    .footerRightCol {text-align: center; margin-top: 50px;}
	.footerInfoRight .footerCities {margin: 0 auto;}
}
@media all and (max-width: 765px) {
	body {font-size: 87%;}
    .menu, .supportBtn { display: none;}
    .menuBtn {display: inline; padding: 3px 0 3px 3px; font-size: 124%; transition: all 0.3s ease; letter-spacing: 1.1px; text-transform: uppercase; position: relative; top: 2px;}    
    .menuBtn:hover, .menuBtn:focus {color: #B3001E; letter-spacing: 2.6px;}
    .menuBtn i {padding-left: 4px;padding-right: 2px; font-size: 90%;}
    .menuWrapper {vertical-align: middle;}
    .logoWrapper {padding: 11px 0 20px;}
    .headerWrapper, .sticky.headerWrapper {padding: 0;}
    .mobileOpen {position: fixed; overflow: hidden;}
    .mobileMenu {overflow: auto; position: absolute; z-index: 2000; top: 12%; right: 3%; bottom: 4%; width: 88%;}
    .mobileMenuWrapper {position: fixed;top: 0;right: 0;bottom: 0;width: 90%;padding: 26px 37px;z-index: 9999;background: rgb(0 0 0 / 90%);}
    .mobileButtons {text-align: right;}
    .mobileSupport img { height: 22px; position: relative; top: -2px;}
    .mobileSupport {display: inline-block; vertical-align: middle; margin-right: 20px;}
    .closeBtn {display: inline-block; vertical-align: middle; text-align: right; font-size: 124%; color: #fff; text-transform: uppercase; font-weight: 200; padding: 0 3px 3px 3px; letter-spacing: 1.8px; transition: all 0.3s ease;}
    .closeBtn i {font-size: 100%; padding-left: 2px; position: relative; top: 1px;}
	.closeBtn:hover, .closeBtn:focus {letter-spacing: 2.6px;}
    .containerWidthHalf{width: 100%; margin-right: 0; display: block; padding: 20px 0;}
    .imgTextImg {display: block; width: 100%;padding-bottom: 45px;}
    .imgTextContent {display: block;}
    .imgTextBg {display: inline-block;}
    .imgTextLeft .imgTextContent, .imgTextRight .imgTextContent {padding: 0;}
    .grayBg {box-shadow: -300px 0 0 0 #f3f7f9, 300px 0 0 0 #f3f7f9;}
    .heroTitleItem {margin: 120px auto 0;}
    .heroTitleTitle {font-size: 440%;}
    .iconCardContent {font-size: 100%;}
    .iconCardIcon {float: none;padding: 0 0 34px;width: 100px;}
    .iconCardHeight, .iconCardItem {height: auto !important;}
    .iconCardItem {padding: 30px 29px 29px 31px;}
    .partnerHomeWrap {display: block;text-align: center;}
    .partnerHomeItem {display: inline-block; padding: 20px 24px; max-width: 166px;}
    .slick-slide {margin: 0 7px;}
    .counterNum {font-size: 410%;}
    .counterCircle {padding: 27px 0 0;height: 100px;width: 100px;}
    .counterCaption {font-size: 132%;}
    .footerSupportRight {display: block;width: 100%;white-space: unset;}
    .footerSupportLeft {display: block;}
    .footerSupportTitle {padding-right: 0; margin: 3px 0 15px;}
    .footerSupport {text-align: center; padding: 39px 0 28px;}
    .footerSupportText {margin: 1px 0;}
    .footerMiddleCol {width: unset;padding-right: 10px;}
    .footerRightCol a {margin-left: 8px;}
    .footerInfoLeft {padding-right: 20px;}
    .tsmlAttribution {padding: 37px 20px 0 0;}
    .tsmlTsml:after {right: 103px;}
    .tsmlOuterWrap.ctaItem {padding: 80px 30px 36px;}
    .servCheckItem {flex: 0 0 100%;}
    .servCheckWrap {row-gap: 20px;}
    .portList {flex: 0 0 calc(50% - 19px);}
    .triCol {padding: 0 10px;}
    h4 {margin: 37px 0 20px 0;}
	.techWrap {grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), auto));}
}

@media all and (max-width: 675px) {
    .staffSliderBg {box-shadow: -300px 0 0 0 #f3f7f9, 300px 0 0 0 #f3f7f9;}
    .staffItem {flex: 0 0 calc(50% - 9px);}
    .staffPosition {font-size: 87%;}
}

@media all and (max-width: 650px) {
    .iconCardTwoCol .iconCardItem {flex: 0 0 100%;}
    .staffPopup {padding: 37px 40px 35px;}
    .staffBio:last-child {padding-left: 5px;}
    .staffBio:first-child {padding-right: 5px;margin-bottom: 10px;}
    .staffCouch img {margin-bottom: 32px;}
    .staffEmail {padding-right: 5px;}
    .staffPhone {padding-left: 5px;}
    .eds_news_Intellicom .col-lg-4 {flex: 0 0 100% !important;}
    .portText, .portFeaturesList {display: block; width: 100%;}
    .portFeaturesList {text-align: left; padding-top: 75px;}
    .portDetail .mainBtn {margin-top: 24px;}
    .portSiteItem {width: 100%;padding: 35px 0 0;}
    .portSisterSites {padding-top: 60px;}
    .portLaptop {padding: 55px 17px;}
	.portMarketingSlider .slick-prev {left: -25px !important;}
	.portMarketingSlider .slick-next {right: -25px !important;}
}

@media all and (max-width: 600px) {
    body {font-size: 84%;}
	.ModDNNHTMLC td { display: block; width: 100%;}
    .counterItem {padding: 20px 0;width: calc(50% - 4px);}
    .logoLinkItem {flex: 0 0 calc(50% - 12px);}
    .tsmlAttrText {padding-right: 12px;}
    .tsmlAttrImg img {width: 63px;height: 63px;}
    .staffBio {width: 100%;padding: 0 !important;}
    .servTitleService, .servTitleIcon {display: block;}
    .servTitleContent {display: block;width: 100%;padding: 50px 0 0 0;}
    .heroTitleText {padding: 25px 0 0;}
    .iconCardThreeCol .iconCardItem {flex: 0 0 100%;}
    .iconCardThreeCol .iconCardIcon {margin-bottom: 33px;}
    .triCol, .triColWrap {padding: 0;display: block;}
    .memoriam {padding: 10px 25px 8px;}
	.newsWrapper {grid-template-columns: repeat(1,1fr); gap: 30px;}
}

@media all and (max-width: 500px) {
    .imgTextWrap.grayBg {padding: 110px 0;}
    .partnerHomeItem, .partnerHomeItem:first-child, .partnerHomeItem:last-child {max-width: 140px; padding: 20px 20px;}
    .logoLinkItem {flex: 0 0 100%;}
    .logoLinkLink {padding: 20px 20px 20px;}
    .ctaItem {padding: 70px 23px 56px;}
    .ctaDiv {margin: 0 0 140px;}
    .tsmlOuterWrap.ctaItem {padding: 80px 18px 66px;}
	.tsmlOuterWrap .slick-dots {bottom: -52px !important;}
	.tsmlOuterWrap .slick-autoplay-toggle-button {bottom: -24px !important;}
    .slick-list {margin: 0 20px !important;padding: 30px 0 39px !important;}
    .tsmlOuterWrap .sliderArrowPrev {left: 15px;}
    .tsmlOuterWrap .sliderArrowNext {right: 15px;}
    .tsmlLeftQuote img, .tsmlRightQuote img {width: 18px;}
	.tsmlTsml {margin: 0;}
    .tsmlQuote {margin: -9px 22px -10px 29px;}
    .staffItem {flex: 0 0 100%; max-width: 340px;}
    .staffName {font-size: 139%;margin: 13px 0 6px;}
    .staffPosition {font-size: 97%;}
    .logoLinks3Col .logoLinkItem {flex: 0 0 100%;}
    .footerSupportText {margin: 1px 0 12px;}
    .heroTitleTitle {font-size: 370%;}
    .servTitleBread a {font-size: 96%;}
    .iconCardItem {padding: 30px 21px 29px 25px;}
    .portList {flex: 0 0 100%;}
    .portLandImgBg {height: 200px;}
    .form-group {margin-bottom: 30px !important;}
    .c-form {column-gap: 12px !important;}
    .form-control {border-radius: 11px !important;}
}

@media all and (max-width: 400px) {
    .tsmlQuote {margin: 11px 3px 1px;font-size: 105%;}
    .tsmlAttribution {padding: 24px 0 0 0;}
	.tsmlTsml {padding: 13px 13px 10px;}
    .tsmlAttrText {padding-right: 8px; width: 72%;}
	.tsmlAttrImg img {width: 56px;height: 56px;}
	.tsmlLocation {letter-spacing: 0.8px;font-size: 91%;}
	.tsmlCompany {font-size: 86%;}
    .tsmlTsml:after {right: 19px;}
    .slick-list {margin: 0 10px !important;}
	.staffSliderBg {box-shadow: -250px 0 0 0 #f3f7f9, 250px 0 0 0 #f3f7f9;}
	.staffSliderItem {padding: 20px 17px 17px;}
	.slick-prev {left: -18px !important;}
	.slick-next {right: -18px !important;}
	.slick-slide {margin: 0 9px;}
    .fancybox-wrap, .fancybox-inner {left: 0 !important;width: 100% !important;}
    .fancybox-nav {padding: 0 6px !important;font-size: 100%;}
    .fancybox-close {top: 0px !important; right: 0px !important;opacity: 60%;}
    .staffNamePop {font-size: 210%;margin: 0 0 8px 0;}
    .staffPositionPop {font-size: 125%;}
    .staffBioDiv {margin: 19px 0 0;}
    .staffPopup {padding: 208px 28px 31px;position: relative;}
    .staffCouch {position: absolute;top: 0;left: 0;right: 0;bottom: 0;}
    .staffCouch img {border-radius: 20px 20px 0 0;}
	.staffItem {max-width: unset;}
}



