:root {font-size: 16px;}
html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body { /*font-weight: 500;*/ }
@-ms-viewport { width: device-width; }

/* Safari Overflow Scroll */
@supports (-webkit-overflow-scrolling: touch) {
	.ios.safari { height: 100%; }
.ios.safari body { height: 100%; }
}

.tk-rift { font-family: "rift",sans-serif; }

/* MODAL */
.customMsgModal .modal-content { background-color: #000000; border: 0; border-radius: 0; }
.customMsgModal .modal-content p { color: #FFFFFF; font-size: 1.25rem; line-height: 1.5; margin-bottom: 1.5rem; }
.customMsgModal .modal-content p:last-of-type { margin-bottom: 1.75rem; }
.customMsgModal .modal-body { padding: 0.25rem 2.5rem 2.5rem 2.5rem; }
.customClose { -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 0; outline: 0; padding: 0 .5rem; background-color: #000;line-height: 1;  }
.customClose i { color: #FFF; font-size: 2rem; line-height: 1; }
.modal-header-custom { text-align: right; padding: .5rem .25rem 0 1rem; }
.modalLogo { text-align: left; }
#doerr-logo-svg-alt { width: 190px; }

@media (min-width: 576px) {
.customMsgModal .modal-body { padding: 0.5rem 4rem 3rem 4rem; }
}

@media (min-width: 768px) {
	.customMsgModal .modal-content p { font-size: 1.5rem; line-height: 1.75; margin-bottom: 1.75rem; }
	.customMsgModal .modal-content p:last-of-type { margin-bottom: 2.25rem; }
	.customMsgModal .modal-body { padding: 2rem 6rem 4rem 6rem; }
	#doerr-logo-svg-alt { width: 219.2px; }
}
@media (min-width: 1200px) {
	.customMsgModal .modal-content p { font-size: 1.5rem; line-height: 1.75; margin-bottom: 1.75rem; }
	.customMsgModal .modal-content p:last-of-type { margin-bottom: 2.25rem; }
	.customMsgModal .modal-body { padding: 2rem 6rem 4rem 6rem; }
}
@media (min-width: 1400px) {
.customMsgModal .modal-body { padding: 2rem 6rem 4rem 6rem; }
}

.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6 { font-family: "rift", sans-serif; letter-spacing: .125rem; }



.h2, h2 { font-size: 1.75rem;letter-spacing: .125rem;}



p, li, dt, dd, address { }
p:last-child { margin-bottom: 0; }
address { color: inherit; }
.blockquote { }

a { color: inherit; }
a:hover {color: inherit;}
a:focus { }

/* FOCUS */
.no-focus-outline main, .no-focus-outline a:focus,
.no-focus-outline .gform_wrapper .gform_button:active,
.no-focus-outline .gform_wrapper .gform_button:focus,
.no-focus-outline .gform_wrapper .gform_button:hover
{ outline: none; }
.no-focus-outline .outerWrap article[tabindex],
.no-focus-outline .outerWrap main[tabindex],
.no-focus-outline .outerWrap header[tabindex],
.no-focus-outline .outerWrap div[tabindex],
.no-focus-outline .outerWrap h1[tabindex],
.using-mouse .outerWrap article:focus[tabindex],
.using-mouse .outerWrap main:focus[tabindex],
.using-mouse .outerWrap header:focus[tabindex],
.using-mouse .outerWrap div:focus[tabindex],
.using-mouse .outerWrap h1[tabindex] {
	outline: none;
}

.no-focus-outline .outerWrap [tabindex]:not(a) {}

.partial_entry_warning { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

article { }

/* FONT HELPERS */
.tk-rift { font-family: "rift", sans-serif; font-weight: 400; }
.tk-rift-medium { font-family: "rift", sans-serif; font-weight: 500 !important; }
.tk-rift-bold { font-family: "rift", sans-serif; font-weight: 700 !important; }
.rift-caps { font-family: "rift", sans-serif; text-transform: uppercase; }
.mark-ot { font-family: 'MarkOT', sans-serif !important; font-weight: normal !important; }
.mark-ot-500 { font-family: 'MarkOT', sans-serif !important; font-weight: 500 !important; }
.mark-ot-bold { font-family: 'MarkOT', sans-serif !important; font-weight: bold !important; }

/* HELPER CLASSES */
.text-underline { text-decoration: underline; }
.bg-black, .bg-black-solo { background-color: #000; }
.bg-black * { color: #fff; }
.red { color: #f13f34 !important; }
.grey { color: #6d6e71 !important; }
.no-underline-hover:hover { text-decoration: none; }
.text-transform-none { text-transform: none !important; }
.letter-spacing-none { letter-spacing: normal !important; }

/* BUTTONS */
.button {font-weight:500;position: relative;display: inline-block;color: #000;border-bottom: 2px solid #000;cursor: pointer;overflow: hidden;transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;-webkit-transform-style: preserve-3d;-moz-transform-style: preserve-3d;transform-style: preserve-3d;}
.button--white { color: #fff; border-bottom: 2px solid #fff; }

.button:after {content: '';position: absolute;right: 0;bottom: 0;height: 100%;width: 2px;background: #000;transform: translateY(100%);transition: transform 0.2s ease-in-out;transition-delay: 0.6s;}
.button--white:after { background: #fff; }

.button > span { position: relative; display: block; padding: .25rem .75rem; color: inherit; }
.button > span:before,
.button > span:after { content: ''; position: absolute; top: 0; background: #000; transition: transform 0.2s ease-in-out; }
.button--white > span:before,
.button--white > span:after { background: #fff; }
.button > span:before { left: 1px; }
.button > span:after { left: 0; }

.button > span:before {
height: 2px;
width: 100%;
transform: translateX(100%);
transition-delay: 0.4s;
background-color: #000;
}
.button > span:before { background: #000; }
.button--white > span:before { background: #fff; }
.button > span:after { height: 100%; width: 2px; transform: translateY(-100%); transition-delay: 0.2s; }
.button:hover:after, .button:hover > span:before, .button:hover > span:after { transform: translate(0, 0); }
.button:hover:after { transition-delay: 0s; }
.button:hover > span:before { transition-delay: 0.2s; background-color: #000; }
.button--white:hover > span:before { background-color: #fff; }
.button:hover > span:after { transition-delay: 0.4s; }
.button:hover { text-decoration: none; transition-delay: 0.6s; }
.button--black:hover { color: #ffffff; background-color: #000; }
.button--white:hover { color: #000; background-color: #ffffff;}

/* DISABLE BUTTON ANIMATION ON TOUCH SCREEN */
.is-touch .button:hover:after, .is-touch .button:hover > span:before, .is-touch .button:hover > span:after { transform: none !important; content: none; }

.is-touch .button:hover > span:before { transition: none !important; background-color: initial; }
.is-touch .button--white:hover > span:before { background-color: initial; }
.is-touch .button:hover > span:after { transition: none !important; }
.is-touch .button:hover { text-decoration: none; transition: none !important; }
.is-touch .button--black:hover { color: initial; background-color: initial; }
.is-touch .button--white:hover { color: #fff; background-color: initial;}


/* FOOTER */
.socialLink, .socialLink .fa-circle { -moz-transition: all .25s ease-in-out; -webkit-transition: all .25s ease-in-out; -ms-transition:all .25s ease-in-out; transition: all .25s ease-in-out; }
.socialLink .fab { font-size: 1rem; }
.socialLink--facebook:hover .fa-circle { color: #3C5A99; }
.socialLink--instagram:hover .fa-circle { background: #d6249f; -o-radial-gradient(30% 107%, circle, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%); background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%); background-clip: text; -webkit-background-clip: text; text-fill-color: transparent; -webkit-text-fill-color: transparent; }
.msie .socialLink--instagram:hover .fa-circle { background: transparent !important; color: #d6249f; }
.socialLink--linkedin:hover .fa-circle { color: #0077B5; }
.socialLink--youtube:hover .fa-circle { color: #c00; }

.msie #footer .socialIconCustom .fa-stack-1x, .msie .socialIconCustom--contactpg .fa-stack-1x { line-height: 44px; }

.socialIconCustom--nav a.socialLink { display: inline-block; padding: .25rem 0; }

.socialIconCustom--contactpg a.socialLink { display: inline-block; padding: .125rem 0; margin: 0 .0625rem; }

#footer h2, #footer .h2 { font-size: 2rem; letter-spacing: .0625rem; font-weight: bold; }
#footer .container { max-width: 100%; }

/* FANCYBOX */
video.fancybox-video::-webkit-media-controls-fullscreen-button { display: none; }
video:focus { outline: 0; }


/* MEDIAELEMENT.js VIDEO CUSTOMIZATION */
#main .mejs__overlay-button { background-image: url("https://mdoerr.com/wp-content/uploads/video-btn-ylw.png"); height: 91px; width: 91px; background-position: center !important; background-size: contain; background-repeat: no-repeat;}
#main .mejs__controls:not([style*="display: none"]) { background: #000; }

.mejs__container.no-audio .mejs__button.mejs__volume-button, .mejs__container.no-audio .mejs__button.mejs__volume-button button { opacity: .5; pointer-events: none; }

#main .mejs__speed-button { margin: 0 8px; }
#main .mejs-speed-selector-label, #main .mejs__speed-selector-label { margin-bottom: 0; margin-left: 0; width: 100%; padding: 3.5px 0 3.5px 0; display: inline-block; text-align: center; font-size: .875rem; font-weight: 700; }
#main .mejs-speed-button>button, #main .mejs__speed-button>button { font-size: 12px; font-weight: 700; }
#main .mejs-speed-selector-list-item, #main .mejs__speed-selector-list-item { width: 100%; margin: 0 0 .625rem; }
#main .mejs-speed-selector, #main .mejs__speed-selector { border: 0; top: 96px; height: 96px; }
#main .mejs__speed-selector:not(.mejs__offscreen) { top: -96px; }

/******************************************************
FORM CLASSES AND STYLES
******************************************************/

ul.gform_fields { list-style-type: none; padding-left: 0; margin-bottom: 0;}
.hidden_label > label, .gform_validation_container, .gform_hidden { display: none !important; }
.gform_wrapper input, .gform_wrapper textarea { font-size: .8125rem; font-family: MarkOT, sans-serif; color: #000; width: 100%; background-color: #ffffff; border: .125rem solid #f13f34; }
.gform_wrapper select { cursor: pointer; font-family: MarkOT, sans-serif; font-size: 1rem; color: #000; width: 100%; background-color: #ffffff; border-radius: 0; border: .125rem solid #f13f34; -moz-appearance: none; -webkit-appearance: none; padding: .5rem;background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAAKCAYAAABWiWWfAAAAcUlEQVR4AWL4////3f/UAXdBhqVRybBUBvcCH0Apc1EAIBAEUBRJO3esAJIAi4rbxx3Wd+R1oPyEpHN6DND8CJkYMwbovIQcevcYoPcQ8ug5xwCDGyig9h4DjE6giJpXmLoF+auvMUCt3Wm7c279qr4BPosd+ylLWtoAAAAASUVORK5CYII=); background-repeat: no-repeat; background-position: 98% 50%;}
.ie .gform_wrapper select::-ms-expand, .msie .gform_wrapper select::-ms-expand { display: none; }
.gform_wrapper select:focus, .gform_wrapper select:hover, .gform_wrapper select:active { outline: 0; }
textarea { resize: none;}
.ie textarea, .msie textarea { overflow: auto; -ms-overflow-style: none }
.validation_error,
.gform_validation_error .validation_message { color: #721c24; font-weight: 700; font-size: 1rem; }
.validation_error { margin-bottom: .75rem; }
.gform_confirmation_message p { color: #000000; font-weight: 700;}
.gform_confirmation_message { text-align: left; }
.gform_wrapper input:focus, .gform_wrapper textarea:focus,
.gform_wrapper input:active, .gform_wrapper textarea:active,
.gform_wrapper select:active, .gform_wrapper select:active { outline: 0; }
.gform_wrapper ::-webkit-input-placeholder { color: #939598;
font-size: .8125rem; letter-spacing: 0;
font-family: MarkOT, sans-serif; font-weight: 500;
}
.gform_wrapper ::-moz-placeholder { color: #939598;
font-size: .8125rem; letter-spacing: 0;
font-family: MarkOT, sans-serif; font-weight: 500;
}
.gform_wrapper :-ms-input-placeholder { color: #939598;
font-size: .8125rem; letter-spacing: 0;
font-family: MarkOT, sans-serif; font-weight: 500;
}
.gform_wrapper ::-ms-input-placeholder { color: #939598;
font-size: .8125rem; letter-spacing: 0;
font-family: MarkOT, sans-serif; font-weight: 500;
}
.gform_wrapper :-moz-placeholder { color: #939598;
font-size: .8125rem; letter-spacing: 0;
font-family: MarkOT, sans-serif; font-weight: 500;
}
.gform_wrapper ::placeholder { color: #939598;
opacity: 1; font-size: .8125rem; letter-spacing: 0;
font-family: MarkOT, sans-serif; font-weight: 500;
}
.gform_fields .gfield input,.gform_fields .gfield textarea{
margin-bottom: .9375rem;
padding: .5rem;
border-radius: 0;
}
.gform_wrapper textarea { height: 95px; }
.gform_fields .gfield.gfield_error input,.gform_fields .gfield.gfield_error textarea{
margin-bottom: 0;
}
.gform_fields #field_1_4 { margin-bottom: .9375rem; }
.gform_fields #field_1_4,
.gform_fields #field_1_4 .ginput_container { height: 95px; }
.gform_fields .gfield textarea { height: 95px; }
.gform_fields #field_1_1.gfield_error .validation_message,
.gform_fields #field_1_2.gfield_error .validation_message,
.gform_fields #field_1_3.gfield_error .validation_message,
.gform_fields #field_1_4.gfield_error .validation_message { margin-bottom: .9375rem; }
.gform_fields #field_1_4.gfield_error { height: auto; }

.ginput_container_select { margin-bottom: .9375rem; }
.gform_wrapper .gform_button{ color: #ffffff; padding: .5rem 2.5rem .375rem 2.5rem; border-color: #f13f34; background-color: #f13f34; font-family: "rift", sans-serif; text-transform: uppercase; letter-spacing: .25rem; font-size: 1.375rem; font-weight: 700; -webkit-transition: .25s all ease; -moz-transition: .25s all ease; transition: .25s all ease; width: 100%; border-width: .125rem; border-style: solid; }
.msie .gform_wrapper .gform_button { border-style: solid; }
.gform_wrapper .gform_button:active,
.gform_wrapper .gform_button:focus,
.gform_wrapper .gform_button:hover{color: #f13f34;border-color: #f13f34;background-color: #fff;box-shadow: none;border-style:solid;}
.gform_footer { text-align: center; }

/* CASE STUDY */
.caseStudy__hero header h1, .caseStudy__hero header .h1 { font-weight: 700; }
.clientDl {  margin-bottom: 0; }
.clientDl dt, .clientDl dd { float: left }
.clientDl dt { clear:both; margin-right: .375rem; font-weight: bold; }
.clientDl dd { margin-bottom: 0; padding-bottom: .125rem;}
.clientDl dd:last-of-type { padding-bottom: 0; }

.websiteDl a { display: inline-block; }
.websiteDl dd a { margin-bottom: .25rem; padding: .125rem 0; }
.websiteDl dd:last-of-type a { margin-bottom: 0; }

.servicesDl dd::after { content: ","; }
.servicesDl dd:last-of-type::after { content: none; }
.servicesDl dt { font-weight: bold; }
.two_images.equalHts img { object-fit: cover; height: 100%; width: 100%; }
.two_images.equalHts figure { height: 100%; }
.carousel-control i {color: #636363; }
.caseStudySections .col-12 > img { display: block; margin: auto; }

.caseStudySections a { cursor: -moz-zoom-in; cursor: -webkit-zoom-in; cursor: zoom-in; }
.caseStudySections a[href^="https://www.youtube"], .caseStudySections a[href^="https://youtube"],
.caseStudySections a[href^="https://www.vimeo"], .caseStudySections a[href^="https://vimeo"],
a[href$=".mp4"] { cursor: pointer; }
.caseStudySections a.carousel-control { cursor: pointer; }

.caseStudy--nav .fa-arrow-left { margin-right: .375rem; }
.caseStudy--nav .fa-arrow-right { margin-left: .375rem; }

/* OUR WORK */
#portfoliolist * { -webkit-box-sizing:border-box;-moz-box-sizing:border-box;-o-box-sizing:border-box; overflow: hidden;}
#portfoliolist .portfolio { display: inline-block; }
.portfolio { float: left; margin: 0 0 1rem; position: relative; background-size: cover; -o-background-size: cover; -webkit-background-size: cover; -moz-background-size: cover; background-position: center; width: 100%; }


.filter { cursor: pointer; -webkit-appearance: none; -moz-appearance: none; appearance: none; outline: none; border: 0; background-color: transparent; color: #6d6e71; font-weight: 500; }
.filter:hover, .filter:active, .filter:focus { outline: 0; color: #000; }
.filter.active, .filter.activeDefault, .filter.mixitup-control-active { font-weight: bold; color: #000;}
button.filter:disabled { color: #6d6e71; cursor:not-allowed; font-weight: 400; }

#filterselect {}

/* HOMEPAGE */
.h1--homepage { font-weight: bold; }
.locationSub { font-family: 'MarkOT', sans-serif !important; font-weight: 500 !important; font-style: italic; letter-spacing: normal; line-height: 1.2; }


/* MAP */
.popup-bubble { position: absolute;
top: 0;
left: 0;
transform: translate(-50%, -100%);
background-color: #f13f34;
padding: 1rem 2rem;
border-radius: 0;
color: #fff;
font-size: 1rem;
font-family: sans-serif;
overflow-y: auto;
max-height: auto; }
.popup-bubble-anchor {
position: absolute;
width: 100%;
bottom: 8px;
left: 0;
}
.popup-bubble-anchor::after {
content: "";
position: absolute;
top: 0;
left: 0;
transform: translate(-50%, -8%);
width: 0;
height: 0; border-left: 6px solid transparent;
border-right: 6px solid transparent;
border-top: 8px solid #f13f34;
}
.popup-container {
cursor: auto;
height: 0;
position: absolute; width: 140px;
}
#contactBubble img { width: 140px; }

/* TEAM */
.featured_team_section .liame { color: #f13f34 !important; font-weight: bold; }


/* OUR WORK - PORTFOLIO */
.portfolio figure::before { content: ''; height: 100%; width: 100%; position: absolute; top: 0; left: 0; background: rgb(0,0,0);
background: -moz-linear-gradient(354deg, rgba(0,0,0,0.804359243697479) 4%, rgba(0,0,0,0.25253851540616246) 23%, rgba(0,0,0,0) 51%, rgba(0,0,0,0) 73%);
background: -webkit-linear-gradient(354deg, rgba(0,0,0,0.804359243697479) 4%, rgba(0,0,0,0.25253851540616246) 23%, rgba(0,0,0,0) 51%, rgba(0,0,0,0) 73%);
background: linear-gradient(354deg, rgba(0,0,0,0.804359243697479) 4%, rgba(0,0,0,0.25253851540616246) 23%, rgba(0,0,0,0) 51%, rgba(0,0,0,0) 73%); }
.portfolio figure figcaption { position: absolute; bottom: 1rem; right: 1.125rem; text-align: right; }
.portfolio figure figcaption span { color: #fff; }
.portfolio figure figcaption .portfolio--title { font-family: "rift", sans-serif; font-weight: 700; }
.portfolio figure figcaption .portfolio--place { font-family: 'MarkOT', sans-serif !important; font-weight: 500 !important; font-style: italic; padding-right: .0625rem; margin-right: .25rem; }

/* SEARCH */
#searchsubmit { border-color: #f13f34; background-color: #f13f34; }

/* MEDIAELEMENT.js - Speed Plugin */
.mejs-speed-button,.mejs__speed-button{position:relative}.mejs-speed-button>button,.mejs__speed-button>button{background:transparent;color:#fff;font-size:11px;line-height:normal;margin:11px 0 0;width:36px}.mejs-speed-selector,.mejs__speed-selector{background:rgba(50,50,50,.7);border:1px solid transparent;border-radius:0;height:150px;left:-10px;overflow:hidden;padding:0;position:absolute;top:-100px;width:60px;visibility:visible}.mejs-speed-selector-list,.mejs__speed-selector-list{display:block;list-style-type:none!important;margin:0;overflow:hidden;padding:0}.mejs-speed-selector-list-item,.mejs__speed-selector-list-item{color:#fff;display:block;list-style-type:none!important;margin:0 0 6px;overflow:hidden;padding:0 10px}.mejs-speed-selector-list-item:hover,.mejs__speed-selector-list-item:hover{background-color:#c8c8c8!important;background-color:hsla(0,0%,100%,.4)!important}.mejs-speed-selector-input,.mejs__speed-selector-input{clear:both;float:left;left:-1000px;margin:3px 3px 0 5px;position:absolute}.mejs-speed-selector-label,.mejs__speed-selector-label{color:#fff;cursor:pointer;float:left;font-size:11px;line-height:15px;margin-left:5px;padding:4px 0 0;width:60px}.mejs-speed-selected,.mejs__speed-selected{color:#21f8f8}.mejs-speed-selector,.mejs__speed-selector{visibility:hidden}.mejs-speed-button:hover .mejs-speed-selector,.mejs__speed-button:hover .mejs__speed-selector{visibility:visible}
