@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { font-size: 100%; font: inherit; padding: 0; border: 0; margin: 0; vertical-align: baseline; }

body { line-height: 1; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

table { border-collapse: collapse; border-spacing: 0; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

.screen-reader-text { clip: rect(1px, 1px, 1px, 1px); position: absolute !important; }

@font-face { font-family: 'PFDmed'; src: url("/assets/fonts/pfdintextcondpro-medium.eot"); src: url("/assets/fonts/pfdintextcondpro-medium.eot?#iefix") format("embedded-opentype"), url("/assets/fonts/pfdintextcondpro-medium.woff") format("woff"), url("/assets/fonts/pfdintextcondpro-medium.ttf") format("truetype"), url("/assets/fonts/pfdintextcondpro-medium.svg#pfdintextcondpro-medium") format("svg"); font-weight: normal; font-style: normal; }
/* variables */
/* mixins */
/* basic data */
.two-cols, .three-cols, .tiles, .imagelist-services, .imagelist-steps, .imagelist-crm-when, .imagelist-crm-how, .imagelist-smm-how, .imagelist-team, .imagelist-portfolio { display: flex; flex-wrap: wrap; }

html { font-size: 62.5%; box-sizing: border-box; }

body { min-width: 300px; font-family: 'Roboto', sans-serif; font-size: 16px; font-size: 1.6rem; font-weight: 400; color: #333; background: #fff; }

*, *:before, *:after { box-sizing: inherit; }

a { color: orange; }
a:hover, a:focus { color: darkorange; }
a:active { color: darkgoldenrod; }

h1, .site-title { font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; margin-bottom: 0.35em; line-height: 1.2; color: inherit; margin-bottom: 0; font-size: 1.8rem; line-height: 1em; }
h1 a, .site-title a { color: inherit; }

h2, .h2 { font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; margin-bottom: 0.35em; line-height: 1.2; color: inherit; margin-bottom: 0.75em; font-size: 3vw; letter-spacing: 0.02em; text-align: center; }
h2 a, .h2 a { color: inherit; }
@media (max-width: 1199px) { h2, .h2 { font-size: 3.6rem; } }
@media (max-width: 767px) { h2, .h2 { font-size: 3.2rem; } }
h2.has-subtitle, .h2.has-subtitle { margin-bottom: 0.3em; }
h2.line-bottom, .h2.line-bottom { margin-bottom: 0.4em; padding-bottom: 0.4em; border-bottom: 1px solid #ccc; }
.textblock h2, .textblock .h2 { text-align: left; }

h3, .h3 { font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; margin-bottom: 0.35em; line-height: 1.2; color: inherit; margin-bottom: 0.75em; font-size: 2.8rem; color: #444; }
h3 a, .h3 a { color: inherit; }

h4, .h4 { font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; margin-bottom: 0.35em; line-height: 1.2; color: inherit; margin-bottom: 0.5em; font-size: 1.8rem; color: #333; }
h4 a, .h4 a { color: inherit; }

.main-block { position: relative; font-size: 1.02vw; padding: 5vw 0; }
@media (max-width: 1750px) { .main-block { padding: 5em 0; } }
@media (max-width: 1570px) { .main-block { font-size: 1.6rem; } }
@media (max-width: 1199px) { .main-block { font-size: 1.5rem; } }
@media (max-width: 991px) { .main-block { font-size: 1.4rem; } }
@media (max-width: 940px) { .main-block { padding: 4em 0; } }
@media (max-width: 767px) { .main-block { padding: 3.5em 0; font-size: 1.3rem; } }
@media (max-width: 499px) { .main-block { padding: 3em 0; font-size: 1.2rem; } }
@media (max-width: 399px) { .main-block { font-size: 1.1rem; } }
.main-block .titleblock { margin-bottom: 2.5em; }
.main-block .titleblock.line-bottom { border-bottom: 1px solid #585c65; }
.main-block .subtitle { margin: 0 auto 3em; font-size: 1.2em; font-weight: 300; line-height: 1.25em; text-align: center; color: #858484; }
@media (max-width: 767px) { .main-block .subtitle br { display: none; } }
.main-block .subtitle.lowmargin { margin-bottom: 1em; }
@media (max-width: 767px) { .main-block .subtitle.smaller { font-size: 1.1em; } }

strong { font-weight: bold; }

.lowmargin { margin-bottom: 12px; }

.dark { color: #eee; }
.dark h1, .dark h2, .dark h3 { color: #fff; }
.dark .subtitle { color: #eee; }

.pale-bg { background: #eee; }

.clearfix:after { content: ''; display: table; clear: both; }

.centered { margin: 0 auto; padding: 0 1.25em; max-width: 80%; }
@media (max-width: 1920px) { .centered { max-width: 1500px; } }
@media (max-width: 767px) { .centered { padding-left: 0.75em; padding-right: 0.75em; } }

.two-cols > div { width: 50%; }
.two-cols .imageblock img { max-width: 100%; display: block; margin-left: auto; margin-right: auto; }

.two-cols-narrowimage .imageblock { width: 30%; }
.two-cols-narrowimage .textblock { width: 70%; }

.three-cols > div { width: 33.333%; }

.textblock { font-weight: 300; line-height: 1.45; }
.textblock p { margin-bottom: 0.85em; line-height: 1.65; }

section { padding-top: 100px; padding-bottom: 100px; }

.btn, input[type="submit"] { padding: 0.37em 2.2em 0.35em; font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; font-size: 0.94vw; background: #edd355; border: 0; border-radius: 0; cursor: pointer; transition: all 0.2s ease-out; }
.btn:hover, input[type="submit"]:hover { background: #f7dd5d; }
.btn:focus, .btn:active, input[type="submit"]:focus, input[type="submit"]:active { background: #fce264; }
@media (max-width: 1920px) { .btn, input[type="submit"] { font-size: 1.8rem; } }
.btn.small, input[type="submit"].small { padding: 0.35em 1.5em 0.35em; font-family: 'Roboto', sans-serif; font-weight: 400; font-size: 0.835vw; text-transform: none; }
@media (max-width: 1920px) { .btn.small, input[type="submit"].small { font-size: 1.6rem; } }
.btn.btn-filter, input[type="submit"].btn-filter { padding: 0.35em 0.85em 0.35em; font-family: 'Roboto', sans-serif; font-weight: 300; font-size: 1.6rem; text-transform: none; color: #fff; background: #636054; border: 2px solid #edd355; }
.btn.btn-filter:hover, .btn.btn-filter:active, .btn.btn-filter.active, input[type="submit"].btn-filter:hover, input[type="submit"].btn-filter:active, input[type="submit"].btn-filter.active { color: #333; background: #edd355; }
form .btn, form input[type="submit"] { width: 100%; }

form { color: #fff; }

.form-title { font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; font-size: 2.8rem; margin-bottom: 0.45em; line-height: 1.2; text-align: center; }

.form-subtitle { font-size: 1.6rem; margin-bottom: 1.5em; line-height: 1.35; text-align: center; }

.form-row { margin: 0 0 15px; }
.form-row.button-row { margin-top: 20px; }
.form-row.conf-policy { display: block; margin-bottom: 0; font-size: 12px; text-align: center; }

div.wpcf7 .ajax-loader { display: none; }

div.wpcf7-response-output { margin: 1em 0 0 0; padding: 0.6em 1em; font-size: 14px; line-height: 1.35em; }

span.wpcf7-not-valid-tip { padding-top: 0.5em; }

div.wpcf7-mail-sent-ok { border-color: limegreen; }

input:not(.btn) { width: 100%; padding: 6px 15px 6px 35px; line-height: 2.8rem; background: #fff; background-position: 0 50%; background-repeat: no-repeat; border: 0; border-radius: 4px; }

input:not(.btn).wpcf7-not-valid { background-color: #ffd7dd; }

input[name="client-name"] { background-image: url("/assets/images/icon-form/name.png") !important; background-position: 6px 50%; }

input[name="client-phone"] { background-image: url("/assets/images/icon-form/phone.png") !important; background-position: 12px 50%; }

/* modal centering */
.modal { text-align: center; padding: 0 !important; }

.modal:before { content: ''; display: inline-block; height: 100%; vertical-align: middle; margin-right: -4px; }

.modal-dialog { display: inline-block; text-align: left; vertical-align: middle; }

.main-menu { justify-content: center; }
.main-menu ul { text-align: center; }
.main-menu ul li { display: inline-block; }
.main-menu ul li a { padding: 0 3px; font-size: 1.9rem; letter-spacing: 0.03em; color: #fff; font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; }
@media (min-width: 1921px) { .main-menu ul li a { font-size: 0.964em; } }
.main-menu .menu-item-has-children { display: none; }

.popup-form { color: #fff; }
.popup-form .modal-dialog { max-width: 400px; }
.popup-form .modal-content { background: linear-gradient(to bottom, #184666 0%, #3c899f 100%); border-radius: 5px; }
.popup-form .modal-body { padding: 25px 40px 30px; }

/* header-footer */
#header { position: fixed; padding: 0; width: 100%; z-index: 1000; }

.phone { font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; font-size: 2.55rem; }

.header-top { padding: 15px 0; text-transform: uppercase; color: #fff; background: #494E58; }
@media (max-width: 680px) { .header-top { padding: 0; } }
.header-top > .centered { display: flex; max-width: 80%; }
@media (max-width: 1920px) { .header-top > .centered { max-width: 1500px; } }
@media (max-width: 680px) { .header-top > .centered { flex-wrap: wrap; padding: 0; } }
.header-top > .centered > div { display: flex; align-items: center; }
.header-top > .centered > div.header-top-left { width: 27%; font-size: 0.61em; }
@media (max-width: 1920px) { .header-top > .centered > div.header-top-left { font-size: 1.2rem; } }
@media (max-width: 1100px) { .header-top > .centered > div.header-top-left { width: 50%; } }
@media (max-width: 680px) { .header-top > .centered > div.header-top-left { padding: 10px; width: 100%; justify-content: center; background: linear-gradient(to bottom, #ffffff 0%, #e5ecf2 100%); } }
.header-top > .centered > div.header-main-menu { width: 46%; justify-content: center; display: none; }
@media (min-width: 1101px) { .header-top > .centered > div.header-main-menu { display: flex !important; } }
@media (max-width: 1100px) { .header-top > .centered > div.header-main-menu { position: absolute; right: 0; top: 100%; width: 200px; padding-bottom: 10px; background: #494e58; }
  .header-top > .centered > div.header-main-menu ul > li { display: block; }
  .header-top > .centered > div.header-main-menu a { display: block; padding: 0.4em 0.8em; } }
@media (max-width: 1100px) { .header-top > .centered > div.header-main-menu.show, .header-top > .centered > div.header-main-menu.collapsing { display: block; } }
.header-top > .centered > div.header-top-right { width: 27%; }
@media (max-width: 1100px) { .header-top > .centered > div.header-top-right { width: 50%; } }
@media (max-width: 680px) { .header-top > .centered > div.header-top-right { width: 100%; padding: 10px; justify-content: flex-start; } }
.header-top > .centered > div.header-nav-button { display: none; }
@media (max-width: 1100px) { .header-top > .centered > div.header-nav-button { display: block; } }
@media (max-width: 680px) { .header-top > .centered > div.header-nav-button { margin-left: -64px; } }
.header-top a { color: #fff; }

.site-logo .site-title, .site-logo .site-subtitle { text-align: left; }
.site-logo .site-title { margin-bottom: 2px; font-size: 1.92em; }
.site-logo .site-subtitle { font-family: 'Roboto', sans-serif; font-size: 1.00em; font-weight: normal; text-transform: uppercase; }
.site-logo a { display: flex; align-items: center; text-decoration: none; transition: all 0.2s ease-out; }
.site-logo a:hover, .site-logo a:focus, .site-logo a:active { text-shadow: 1px 1px 10px rgba(255, 255, 255, 0.45); }
.site-logo img { display: inline-block; margin-right: 0.5em; width: 4em; height: 4em; }
@media (max-width: 1920px) { .site-logo img { width: auto; height: auto; } }

.header-top-left .site-logo { margin: -10px 0; }
@media (max-width: 680px) { .header-top-left .site-logo { margin: 0; } }
@media (max-width: 680px) { .header-top-left .site-logo a { color: #494e58; } }
.header-top-left p:first-child { margin-bottom: 5px; }

.header-top-right { font-size: 1.2rem; justify-content: flex-end; text-align: right; }
.header-top-right .phone-block { margin-bottom: 5px; }
.header-top-right .callback-icon-block { margin: 0 10px -3px 0; }
.header-top-right .callback-icon-block .callback-icon { display: inline-block; width: 50px; height: 50px; background: url("/assets/images/icon-header-callback.png") 0 0 no-repeat; }

.header-nav-button { display: none; }
@media (max-width: 1100px) { .header-nav-button { display: block; } }

#menu-button { position: relative; display: block; overflow: hidden; margin: -8px 0 -8px; width: 64px; height: 64px; font-size: 0; text-indent: -9999px; appearance: none; cursor: pointer; z-index: 25; }
@media (max-width: 680px) { #menu-button { margin: 0; } }
#menu-button:hover, #menu-button:focus, #menu-button:active { background: none; }
#menu-button:focus { outline: none; }
#menu-button span { display: block; position: absolute; top: 30px; left: 14px; right: 14px; height: 5px; background: #fff; }
#menu-button span:before, #menu-button span:after { position: absolute; display: block; left: 0; width: 100%; height: 5px; background-color: #fff; content: ""; transition-duration: 0.3s, 0.3s; transition-delay: 0.3s, 0s; }

#menu-button span:before { top: -14px; transition-property: top, transform; }

#menu-button span:after { bottom: -14px; transition-property: bottom, transform; }

/* active state, i.e. menu open */
#menu-button:not(.collapsed) span { background: none; }

#menu-button:not(.collapsed) span:before { top: 0; transform: rotate(45deg); }

#menu-button:not(.collapsed) span:after { bottom: 0; transform: rotate(-45deg); }

#menu-button:not(.collapsed) span:before, #menu-button:not(.collapsed) span:after { transition-delay: 0s, 0.3s; }

.header-bottom { padding: 0; background: #fff; border-bottom: 1px solid #ccc; }
.header-2019 .header-bottom { background: rgba(255, 255, 255, 0); border-bottom: none; transition: background-color 0.2s ease-out; }
.moved .header-2019 .header-bottom, .page-inner:not(.page-template-page-site-dev) .header-2019 .header-bottom { background: #edd355; box-shadow: 0 1px 5px rgba(0, 0, 0, 0.35); }
@media (max-width: 1100px) { .header-bottom { display: none; } }

.iconmenu { width: 100%; text-align: center; }
.iconmenu li { display: inline-block; }
.iconmenu li a { display: block; padding: 10px 5px; font-size: 1.3rem; text-decoration: none; color: #777; transition: all 0.15s ease-out; }
.iconmenu li a:hover, .iconmenu li a:focus { background: #ddd; }

.iconmenu-2019 ul { display: flex; justify-content: center; }
.iconmenu-2019 li { display: block; flex: 0 0 auto; }
.iconmenu-2019 li .imageblock { margin: 0 auto 15px; height: 60px; width: 80px; overflow: hidden; transition: all 0.15s ease-out; }
.iconmenu-2019 li .imageblock img { position: relative; width: 100%; transition: none; }
.iconmenu-2019 li a { position: relative; padding: 1em 3.5em; font-size: 1.6rem; font-weight: bold; letter-spacing: 0.075em; text-transform: uppercase; color: #fff; transition: all 0.15s ease-out; }
.iconmenu-2019 li a:before, .iconmenu-2019 li a:after { content: ''; position: absolute; top: 0.5em; bottom: 0.5em; width: 0.75em; border: 1px solid #fff; transform: scale(1.7, 1.3); opacity: 0; transition: all 0.2s ease-out; }
.iconmenu-2019 li a:before { left: 0.5em; border-right: 0; }
.iconmenu-2019 li a:after { right: 0.5em; border-left: 0; }
.iconmenu-2019 li a:hover, .iconmenu-2019 li a:focus { background: rgba(255, 255, 255, 0.25); }
.iconmenu-2019 li a:hover:before, .iconmenu-2019 li a:hover:after, .iconmenu-2019 li a:focus:before, .iconmenu-2019 li a:focus:after { transform: scale(1, 1); opacity: 1; }
.moved .iconmenu-2019 li, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li { display: flex; flex-direction: row; justify-content: center; align-items: center; flex-wrap: nowrap; }
.moved .iconmenu-2019 li .imageblock, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li .imageblock { display: inline-block; margin: 0 0.25em 0 0; width: 40px; height: 30px; vertical-align: middle; transition: all 0.15s ease-out; }
.moved .iconmenu-2019 li .imageblock img, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li .imageblock img { top: -30px; }
.moved .iconmenu-2019 li .text, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li .text { display: inline-block; }
.moved .iconmenu-2019 li a, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a { padding: 0.5em 2.5em; font-weight: normal; color: #000; }
.moved .iconmenu-2019 li a:before, .moved .iconmenu-2019 li a:after, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:before, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:after { top: 0.35em; bottom: 0.35em; width: 0.42em; border-color: #333; border-width: 1px; transform: scale(1.2, 1.6); }
.moved .iconmenu-2019 li a:before, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:before { left: 0.45em; }
.moved .iconmenu-2019 li a:after, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:after { right: 0.45em; }
.moved .iconmenu-2019 li a:hover, .moved .iconmenu-2019 li a:focus, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:hover, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:focus { background: white; }
.moved .iconmenu-2019 li a:hover:before, .moved .iconmenu-2019 li a:hover:after, .moved .iconmenu-2019 li a:focus:before, .moved .iconmenu-2019 li a:focus:after, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:hover:before, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:hover:after, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:focus:before, .page-inner:not(.page-template-page-site-dev) .iconmenu-2019 li a:focus:after { transform: scale(1, 1); }

#footer { padding: 0; text-align: center; color: #fff; background: #333; }

.footer-top { padding: 3% 0; background: #edd355; }

.iconmenu-footer { width: 100%; text-align: center; }
.iconmenu-footer > ul { display: block; }
.iconmenu-footer > ul > li { display: block; }
.iconmenu-footer > ul > li .item-main { position: relative; }
.iconmenu-footer > ul > li .item-main > a { display: block; margin: 0.5em 0 -0.25em; font-size: 1.1vw; font-weight: bold; text-decoration: none; text-transform: uppercase; color: #000; background: none; transition: all 0.15s ease-out; }
@media (max-width: 1450px) { .iconmenu-footer > ul > li .item-main > a { font-size: 1.6rem; } }
.iconmenu-footer > ul > li .item-main > a .imageblock { display: block; margin: 0.4em 0; }
.iconmenu-footer > ul > li .item-main > a .imageblock img { display: block; margin: 0 auto; }
.iconmenu-footer > ul > li .item-main > a .text { position: relative; display: flex; flex-direction: row; align-items: center; }
.iconmenu-footer > ul > li .item-main > a .text:before, .iconmenu-footer > ul > li .item-main > a .text:after { position: relative; content: ''; flex: 1 1 auto; height: 0; border-bottom: 1px solid #333; }
.iconmenu-footer > ul > li .item-main > a .text span { flex: 0 1 auto; margin: 0 0.75em; }
.iconmenu-footer > ul > li .item-main:hover, .iconmenu-footer > ul > li .item-main:focus, .iconmenu-footer > ul > li .item-main:active { text-decoration: underline; }
.iconmenu-footer ul.submenu { margin-bottom: 15px; }
.iconmenu-footer ul.submenu li { display: inline-block; white-space: nowrap; cursor: default; }
.iconmenu-footer ul.submenu li:before { display: inline-block; margin-left: -3px; padding: 0 0.5em; content: "\f111"; font-family: FontAwesome; font-size: 6px; text-align: center; vertical-align: middle; color: #000; }
.iconmenu-footer ul.submenu li:first-child:before { display: none; }
.iconmenu-footer ul.submenu li a { display: inline-block; padding: 0.5em 0.5em 0.5em 0.5em; font-size: 0.97vw; line-height: 1.3; text-align: left; text-decoration: none; color: #555; }
@media (max-width: 1450px) { .iconmenu-footer ul.submenu li a { font-size: 1.4rem; } }
.iconmenu-footer ul.submenu li a:hover, .iconmenu-footer ul.submenu li a:focus, .iconmenu-footer ul.submenu li a:active { text-decoration: underline; color: #000; background: transparent; }

.footer-content { padding: 30px 0; color: #fff; }
.footer-content .centered { display: flex; }
@media (max-width: 1150px) { .footer-content .centered { flex-direction: column; } }
.footer-content .centered > div { display: flex; flex-direction: column; justify-content: center; }
@media (max-width: 1150px) { .footer-content .centered > div { width: 100%; align-items: center; } }
.footer-content a:not(.btn) { color: #fff; }
.footer-content .btn { color: #333; }
.footer-content .phone { font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; font-size: 2.2rem; }

.footer-left { width: 25%; font-size: 1.2rem; }
@media (max-width: 1150px) { .footer-left { order: 1; margin-bottom: 25px; } }
.footer-left .copyright { text-align: left; }

.footer-mid { width: 50%; align-items: center; }
@media (max-width: 1150px) { .footer-mid { order: 3; } }
.footer-mid .footer-main-menu, .footer-mid .footer-social { margin-bottom: 0.75em; }

.footer-right { width: 25%; text-align: right; }
@media (max-width: 1150px) { .footer-right { order: 2; margin-bottom: 30px; } }
.footer-right .phone-block { margin-bottom: 14px; }
.footer-right .phone-block .phone { padding-left: 30px; background: url("/assets/images/icon-footer-phone.png") 0 50% no-repeat; }
.footer-right .callback-block { margin-bottom: 12px; }
.footer-right .email-block .email-link { padding: 2px 0 4px 30px; line-height: 2rem; background: url("/assets/images/icon-footer-email.png") 0 100% no-repeat; }

.copyright { font-size: 1.2rem; color: #aaa; }

.social { display: flex; cursor: default; }
.social li { margin: 2px; }
.social li a { opacity: 0.8; transition: opacity 0.2s ease-out; }
.social li a:hover, .social li a:focus { opacity: 1; }

/* content blocks */
.promo { position: relative; padding: 0; font-size: 2.6vw; text-align: center; background: #2b3157; background: #ddd url("/assets/images/bg_promo.jpg") 50% 0/cover no-repeat; overflow: hidden; height: 100vh; min-height: 48vw; }
@media (max-width: 1920px) { .promo { min-height: 900px; } }
@media (max-width: 991px) { .promo { height: auto; min-height: 0; font-size: 2rem; } }
.promo .overlay { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 3; }
.promo .centered { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: center; height: 100%; padding-top: 5em; padding-bottom: 7em; z-index: 4; }
.promo #particles-js { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 2; }
.promo .titleblock { width: 100%; color: #fff; }
.promo .title { display: flex; justify-content: center; align-items: center; margin-bottom: 0.25em; font-family: 'Roboto', sans-serif; font-weight: 700; font-size: 1em; text-transform: uppercase; white-space: nowrap; }
.promo .title span { flex: 1 0 auto; white-space: normal; }
.promo .title:before, .promo .title:after { content: ''; display: block; flex: 0 1 35%; margin: 0 0.5em; height: 2px; background: #eee; }
.promo .subtitle { position: relative; margin: 0 auto; font-family: 'Roboto', sans-serif; font-weight: 300; font-size: 1em; line-height: 1.25em; text-transform: none; }
.promo .scrollblock { position: absolute; bottom: 0; left: 0; width: 100%; text-align: center; z-index: 4; user-select: none; }
.promo .scrollblock a { display: inline-block; padding: 1em; }
.promo .scrollblock .more-icon span { position: relative; display: block; opacity: 0.75; transition: all 0.2s ease-out; }
.promo .scrollblock .more-icon span:before, .promo .scrollblock .more-icon span:after { content: ''; position: absolute; bottom: 0; width: 34px; height: 2px; background: #fff; }
.promo .scrollblock .more-icon span:before { left: 29px; transform: rotate(-30deg); transform-origin: top left; }
.promo .scrollblock .more-icon span:after { right: 29px; transform: rotate(30deg); transform-origin: top right; }
@media (max-width: 1950px) { .promo .scrollblock .more-icon span:before, .promo .scrollblock .more-icon span:after { width: 26px; }
  .promo .scrollblock .more-icon span:before { left: 22px; }
  .promo .scrollblock .more-icon span:after { right: 22px; } }
.promo .scrollblock .more-icon:hover span, .promo .scrollblock .more-icon:focus span { opacity: 1; }
.promo .scrollblock .more-icon span { display: block; margin: 0 0 -13px; width: 60px; height: 22px; /*background: url(../images/more-arrow.png) 50% 50% no-repeat; background-size: contain;*/ }
@media (max-width: 1920px) { .promo .scrollblock .more-icon span { margin: 0 0 -7px; width: 46px; height: 14px; } }
.promo.promo-sitedev { font-size: 1.2vw; }
@media (max-width: 1920px) { .promo.promo-sitedev { font-size: 2.4rem; } }
@media (max-width: 1599px) { .promo.promo-sitedev { font-size: 2.2rem; } }
@media (max-width: 1399px) { .promo.promo-sitedev { height: auto; min-height: 0; font-size: 2.4rem; } }
@media (max-width: 1199px) { .promo.promo-sitedev { font-size: 2.2rem; } }
@media (max-width: 991px) { .promo.promo-sitedev { font-size: 2.0rem; } }
.promo.promo-sitedev .centered { flex-direction: row; padding-top: 0; padding-bottom: 0; align-items: flex-end; }
@media (max-width: 1399px) { .promo.promo-sitedev .centered { flex-wrap: wrap; } }
.promo.promo-sitedev .centered .hand-cell { position: relative; flex: 0 0 30%; display: flex; flex-direction: column; justify-content: flex-end; }
@media (max-width: 1399px) { .promo.promo-sitedev .centered .hand-cell { order: 2; flex-basis: 35%; } }
@media (max-width: 649px) { .promo.promo-sitedev .centered .hand-cell { flex-basis: 320px; } }
.promo.promo-sitedev .centered .hand-cell .hand { position: absolute; bottom: 0; left: 0; width: 100%; padding-bottom: 200%; background-position: 50% 100%; background-repeat: no-repeat; background-size: 100% auto; background-image: url(../images/hand.png); }
@media (max-width: 1399px) { .promo.promo-sitedev .centered .hand-cell .hand { position: relative; padding-bottom: 155%; } }
.promo.promo-sitedev .centered .hand-cell .inner { position: absolute; left: 47%; bottom: -6.1%; width: 50.5%; padding-bottom: 107%; transform: translate(-50%, -50%); background-position: 50% 0; background-repeat: no-repeat; background-size: cover; border-radius: 1em; }
.promo.promo-sitedev .centered .text-cell { flex: 0 0 70%; display: flex; flex-direction: column; padding-bottom: 2em; color: #fff; }
@media (max-width: 1399px) { .promo.promo-sitedev .centered .text-cell { order: 1; flex-basis: 100%; padding-top: 12em; } }
@media (max-width: 1099px) { .promo.promo-sitedev .centered .text-cell { padding-top: 7em; } }
@media (max-width: 679px) { .promo.promo-sitedev .centered .text-cell { padding-top: 8.5em; } }
.promo.promo-sitedev .centered .text-cell .titleblock { margin-bottom: 3.5em; padding-left: 2em; text-align: left; }
@media (max-width: 1399px) { .promo.promo-sitedev .centered .text-cell .titleblock { margin-bottom: 1.5em; padding-left: 0; } }
@media (max-width: 649px) { .promo.promo-sitedev .centered .text-cell .titleblock { text-align: center; } }
.promo.promo-sitedev .centered .text-cell .titleblock .title { display: block; margin-bottom: 0; font-size: 4em; }
@media (max-width: 991px) { .promo.promo-sitedev .centered .text-cell .titleblock .title { font-size: 3.2em; } }
@media (max-width: 767px) { .promo.promo-sitedev .centered .text-cell .titleblock .title { font-size: 2.8em; } }
@media (max-width: 649px) { .promo.promo-sitedev .centered .text-cell .titleblock .title { font-size: 2.4em; white-space: normal; } }
.promo.promo-sitedev .centered .text-cell .titleblock .title:before, .promo.promo-sitedev .centered .text-cell .titleblock .title:after { display: none; }
.promo.promo-sitedev .centered .text-cell .titleblock .subtitle { font-size: 1.4em; text-transform: uppercase; }
@media (max-width: 767px) { .promo.promo-sitedev .centered .text-cell .titleblock .subtitle { font-size: 1.2em; } }
.promo.promo-sitedev .centered .text-cell .features { padding-bottom: 2em; display: flex; flex-direction: row; }
@media (max-width: 1399px) { .promo.promo-sitedev .centered .text-cell .features { padding-bottom: 0; } }
.promo.promo-sitedev .centered .text-cell .features .why { flex: 0 0 40%; padding: 0 0.5em 0 1em; font-size: 2.5em; font-weight: 700; letter-spacing: 0.04em; line-height: 0.85; color: #edd355; border-right: 3px solid #edd355; }
@media (max-width: 1199px) { .promo.promo-sitedev .centered .text-cell .features .why { padding-left: 0; } }
@media (max-width: 991px) { .promo.promo-sitedev .centered .text-cell .features .why { display: none; } }
.promo.promo-sitedev .centered .text-cell .features .why .num { font-size: 4em; }
.promo.promo-sitedev .centered .text-cell .features .text { flex: 0 0 60%; padding: 0 0 0 1.5em; font-size: 1.05em; font-weight: 300; line-height: 1.3; text-align: left; }
@media (max-width: 991px) { .promo.promo-sitedev .centered .text-cell .features .text { flex-basis: 100%; padding-left: 0; } }
.promo.promo-sitedev .centered .text-cell .features .text ol { list-style-type: decimal; list-style-position: inside; margin-bottom: 1.5em; }
@media (max-width: 649px) { .promo.promo-sitedev .centered .text-cell .features .text ol { display: none; } }
@media (max-width: 649px) { .promo.promo-sitedev .centered .text-cell .features .text .button-container { text-align: center; } }
body:not(.home) .promo .more-link { display: none; }
@media (max-width: 1000px) { body:not(.home) .promo .title { display: block; }
  body:not(.home) .promo .title:before, body:not(.home) .promo .title:after { display: none; } }
body:not(.home) .promo .imageblock img { max-width: 180px; }
@media (max-width: 3200px) { body:not(.home) .promo .imageblock img { max-width: 140px; } }
@media (max-width: 1950px) { body:not(.home) .promo .imageblock img { max-width: 100px; } }

.main-tabs { padding: 0; background: #4a4e59; /*.tab-content>.tab-pane { display: block; }*/ }
.main-tabs .centered { padding: 0px !important; }
.main-tabs .top { padding: 30px 0; }
.main-tabs .tab-controls { position: relative; z-index: 100; background: #f6f4f7; background: linear-gradient(180deg, #f6f4f7 0%, #dbe4eb 100%); box-shadow: 0 1px 5px rgba(0, 0, 0, 0.25); }
.main-tabs .nav-tabs { border-bottom: 0; flex: 1 1 0; flex-wrap: nowrap; /*.nav-item.show .nav-link, 
.nav-link.active { background-color: #728896; }*/ }
@media (max-width: 1000px) { .main-tabs .nav-tabs { display: none; } }
.main-tabs .nav-tabs .nav-link { position: relative; display: flex; flex-grow: 1; flex-basis: 0; justify-content: center; align-items: center; padding: 1.6rem 2rem 1.4rem; text-align: left; text-transform: uppercase; letter-spacing: 0.05em; line-height: 1.35; color: #4a4e59; background-color: none; /*@include trans-short;*/ /*&:after { visibility: hidden; content: '▼'; position: absolute; top:100%; left: 50%; height: 7px; line-height: 7px; font-size: 10px; color: #cfd9e2; }*/ }
@media (max-width: 1440px) { .main-tabs .nav-tabs .nav-link { padding: 1.2rem 1.4rem 1.0rem; font-size: 14px; } }
@media (max-width: 1250px) { .main-tabs .nav-tabs .nav-link { padding: 0.8rem 0.8rem 0.6rem; } }
@media (max-width: 1185px) { .main-tabs .nav-tabs .nav-link { flex-basis: auto; } }
@media (max-width: 1150px) { .main-tabs .nav-tabs .nav-link { padding: 1.2rem 1.4rem 1.0rem; text-align: center; } }
.main-tabs .nav-tabs .nav-link .imageblock { min-width: 36px; width: 36px; height: 34px; margin-right: 8px; overflow: hidden; }
@media (max-width: 1150px) { .main-tabs .nav-tabs .nav-link .imageblock { display: none; } }
.main-tabs .nav-tabs .nav-link .imageblock img { position: relative; }
.main-tabs .nav-tabs .nav-link:before { visibility: hidden; content: ''; position: absolute; top: 100%; left: 50%; margin-left: -16px; width: 0; height: 0; border-left: 16px solid transparent; border-right: 16px solid transparent; border-top: 16px solid #fff; }
.main-tabs .nav-tabs .nav-link:hover, .main-tabs .nav-tabs .nav-link:focus, .main-tabs .nav-tabs .nav-link:active, .main-tabs .nav-tabs .nav-link.active { color: #222; background: #fff !important; /*background-color: #cfd9e2; */ }
.main-tabs .nav-tabs .nav-link:hover .imageblock img, .main-tabs .nav-tabs .nav-link:focus .imageblock img, .main-tabs .nav-tabs .nav-link:active .imageblock img, .main-tabs .nav-tabs .nav-link.active .imageblock img { top: -34px; }
.main-tabs .nav-tabs .nav-link.active:before { visibility: visible; }
.main-tabs .nav-tabs .nav-item { margin-bottom: 0; border: 0; border-radius: 0; }
.main-tabs .tab-pane { padding: 3em 0 5em; color: #fff; background-color: #728896; }
.main-tabs h2 { margin-bottom: 0; font-weight: normal; color: #fff; }
.main-tabs h3 { text-align: center; color: #fff; }
.main-tabs .tab-desc { margin: -1rem auto 1rem; font-size: 1.8rem; text-align: center; }

.tiles { flex-wrap: wrap; justify-content: center; padding-top: 25px; }
.tiles .tile { position: relative; flex: 1 0 30%; margin: 15px; max-width: 420px; padding-bottom: 27%; line-height: 1.4; color: #fff; overflow: hidden; background-repeat: no-repeat; background-size: cover; background-color: #555; }
.tiles .tile:hover, .tiles .tile:focus, .tiles .tile:active { text-decoration: none; }
@media (max-width: 1300px) { .tiles .tile { flex: 1 0 410px; padding-bottom: 380px; } }
.tiles .tile .bg-filter, .tiles .tile .bg-border, .tiles .tile .tile-content { position: absolute; top: 0; left: 0; height: 100%; width: 100%; }
.tiles .tile .tile-content { top: 55%; padding: 8%; background: rgba(0, 0, 0, 0.7); transition: all 0.2s ease-out; }
.tiles .tile .tile-content .title { margin-bottom: 0.85em; font-size: 2rem; line-height: 1.2; text-transform: uppercase; }
.tiles .tile .tile-content .bg-filter, .tiles .tile .tile-content .bg-border { opacity: 0; transition: opacity 0.2s ease-out; }
.tiles .tile .tile-content .bg-filter { background: linear-gradient(to bottom, rgba(236, 167, 0, 0.75), rgba(158, 13, 0, 0.75) 77%); }
.tiles .tile .tile-content .bg-border { top: 4%; left: 4%; width: 92%; height: 92%; border: 3px solid #fff; }
.tiles .tile.no-desc-short .tile-content { top: 72%; }
.tiles .tile:hover .tile-content, .tiles .tile:focus .tile-content, .tiles .tile:active .tile-content { top: 0; }
.tiles .tile:hover .tile-content .bg-filter, .tiles .tile:focus .tile-content .bg-filter, .tiles .tile:active .tile-content .bg-filter { opacity: 0.95; }
.tiles .tile:hover .tile-content .bg-border, .tiles .tile:focus .tile-content .bg-border, .tiles .tile:active .tile-content .bg-border { opacity: 1; }
.tiles .tile .content-visible { position: relative; height: 45%; padding-bottom: 35px; }
.tiles .tile .content-visible:after { content: ''; position: absolute; bottom: 20px; left: 0; width: 100%; border-bottom: 2px solid #fff; }
.tiles .tile.no-desc-short .content-visible { height: 22%; }
.tiles .tile .content-hover { position: relative; }

.tile-block { color: #fff; background-color: #728896; }
.tile-block h2 { text-align: center; }

.imagelist-services .item { width: 27%; margin: 0 3% 50px; padding: 0 2%; text-align: center; border: 1px solid #ddd; }
.imagelist-services .item .imageblock img { margin: -2rem 0 2.3rem; background: #fff; padding: 0 10px; }
.imagelist-services .item .title { margin-bottom: 2rem; font-size: 1.4rem; font-weight: bold; letter-spacing: 0.03em; text-transform: uppercase; color: #333; }
.imagelist-services .item .textblock { margin-bottom: 2rem; font-size: 1.4rem; line-height: 1.5; color: #777; }
.imagelist-services .item .linkblock { padding-bottom: 4rem; }
.imagelist-services .item .linkblock a:after { content: '>'; display: inline-block; margin-left: 0.5rem; font-weight: 400; }

.m-test { background: #333; }

.sitedev { background-position: 50% 50%; background-repeat: no-repeat; background-size: cover; }
.sitedev .text-cont { display: flex; flex-direction: column; justify-content: center; height: 100%; padding-left: 49%; }
@media (max-width: 991px) { .sitedev .text-cont { padding: 0; } }
.sitedev .text-cont .textblock { padding: 0 0 1.5em; font-weight: 300; }
.sitedev .text-cont .button-container { margin-top: 2em; }

.cms { /*background: #999 url('/assets/images/bg_blue.jpg') 50% 0 / cover no-repeat;*/ }

.owl-carousel-cms { margin-top: 45px; margin-bottom: 45px; }

.steps { background: #eee; }

.imagelist-steps { margin: 50px auto 0; max-width: 960px; }
.imagelist-steps .item { width: 19%; margin: 25px 3%; text-align: center; }
.imagelist-steps .item .imageblock { position: relative; margin-bottom: 8px; }
.imagelist-steps .item .imageblock .number { position: absolute; top: -15px; left: 50%; margin-left: -36px; width: 28px; height: 28px; line-height: 22px; font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; text-align: center; border-radius: 50%; background: #fff; border: 2px solid #555; }
.imagelist-steps .item .imageblock img { margin: 0; }
.imagelist-steps .item .textblock { margin-bottom: 2rem; font-size: 1.4rem; line-height: 1.4; color: #777; }

.callback-block1 { padding: 100px 0; background: #999 url("/assets/images/bg_callback.jpg") 50% 0/cover no-repeat; }
.callback-block1 .two-cols > div { padding: 0 1.5%; }
.callback-block1 .formblock { display: flex; justify-content: flex-end; }
.callback-block1 form { max-width: 400px; padding: 25px 40px 30px; background: linear-gradient(to bottom, #184666 0%, #3c899f 100%); border-radius: 5px; }
.callback-block1 .textblock { display: flex; flex-direction: column; justify-content: center; }
.callback-block1 .textblock h2 { max-width: 400px; }

.crm { padding-bottom: 0; }

.crm-intro { padding-bottom: 100px; padding-top: 50px; }

.bg-2 { padding-top: 100px; padding-bottom: 100px; }

.imagelist-crm-when { justify-content: space-between; margin-bottom: 75px; }
.imagelist-crm-when .item { width: 21%; margin: 25px 0; padding: 15px; text-align: center; background-color: cornflowerblue; border: 1px solid #333; }
.imagelist-crm-when .item .imageblock { margin-bottom: 8px; }
.imagelist-crm-when .item .textblock { font-size: 1.4rem; color: #fff; }

.imagelist-crm-how .item { width: 29%; margin: 13px 1%; padding: 12px 1%; background: #fff; }
.imagelist-crm-how .item .titleblock { display: flex; align-items: center; margin-bottom: 15px; min-height: 50px; padding-bottom: 10px; border-bottom: 5px solid grey; }
.imagelist-crm-how .item .titleblock .imageblock { margin-right: 15px; }
.imagelist-crm-how .item .titleblock .title { font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; margin-bottom: 0.35em; line-height: 1.2; color: inherit; font-size: 1.8rem; color: #333; margin: 0 15px 0 0; }
.imagelist-crm-how .item .titleblock .title a { color: inherit; }
.imagelist-crm-how .item .textblock { font-size: 1.4rem; line-height: 1.35; color: #777; }
.imagelist-crm-how .item .textblock li:before { content: '■'; margin-right: 0.35em; font-size: 24px; }
.imagelist-crm-how .item:nth-child(1) .titleblock { border-bottom-color: #3796df; }
.imagelist-crm-how .item:nth-child(1) .textblock li::before { color: #3796df; }
.imagelist-crm-how .item:nth-child(2) .titleblock, .imagelist-crm-how .item:nth-child(5) .titleblock { border-bottom-color: #f09c2d; }
.imagelist-crm-how .item:nth-child(2) .textblock li::before, .imagelist-crm-how .item:nth-child(5) .textblock li::before { color: #f09c2d; }
.imagelist-crm-how .item:nth-child(3) .titleblock, .imagelist-crm-how .item:nth-child(6) .titleblock { border-bottom-color: #96c92b; }
.imagelist-crm-how .item:nth-child(3) .textblock li::before, .imagelist-crm-how .item:nth-child(6) .textblock li::before { color: #96c92b; }
.imagelist-crm-how .item:nth-child(4) .titleblock { border-bottom-color: #ff0000; }
.imagelist-crm-how .item:nth-child(4) .textblock li::before { color: #ff0000; }

.textimage1 { min-height: 120vh; background: #ddd url("/assets/images/bg_notebook.jpg") 50% 50%/cover no-repeat; }
.textimage1 .textblock { margin: 0 auto; /*max-width: 750px;*/ font-size: 2em; text-align: center; color: #fff; }
.textimage1 .imageblock { margin: 3em auto; }

.smm { padding-bottom: 0; }

.smm-intro { padding-bottom: 100px; }

.bg-2 { padding-top: 100px; padding-bottom: 100px; }

.smm-interlude { margin: 0 0 75px; text-align: center; }

.imagelist-smm-how { justify-content: center; }
.imagelist-smm-how .item { width: 29%; margin: 15px 2%; }
.imagelist-smm-how .item .imageblock { margin-bottom: 12px; }
.imagelist-smm-how .item .imageblock img { display: block; margin: 0 auto; }
.imagelist-smm-how .item .title { margin-bottom: 0.5em; font-family: 'PFDmed', Arial, Helvetica, sans-serif; text-transform: uppercase; font-size: 1.8rem; text-align: center; color: #333; }
.imagelist-smm-how .item .textblock { font-size: 1.4rem; color: #777; }
.imagelist-smm-how .item-button { display: flex; justify-content: center; align-items: center; }
.imagelist-smm-how .item-button .button-container { padding: 12px; border: 3px solid #edd355; }

.team-intro { margin-bottom: 50px; }

.imagelist-team .item { width: 20%; padding: 0 1%; }
.imagelist-team .item:nth-child(2n) { background: #eee; }
.imagelist-team .item .imageblock { padding-top: 10px; }
.imagelist-team .item .imageblock img { display: block; margin: 0 auto; }
.imagelist-team .item .title { margin: 0 0 0.85em; padding: 0.85em 0; font-size: 2rem; text-align: center; color: #576da9; border-bottom: 3px solid orange; }
.imagelist-team .item .textblock { padding-bottom: 10px; font-size: 1.4rem; color: #777; }

#portfolio-tabs a { padding: 1rem 1.5rem; }
#portfolio-tabs a img { vertical-align: middle; }

.owl-carousel-portfolio .owl-item { border: 4px solid orange; /*box-shadow: inset 2px 3px 10px rgba(0,0,0,0.35);*/ }
.owl-carousel-portfolio img { max-width: 100%; /*padding: 10px;*/ }

#portfolio-tabs-content .tab-pane { padding-top: 25px; }

.imagelist-portfolio { justify-content: center; align-items: center; }
.imagelist-portfolio .item { width: 31%; margin: 0px 1% 22px; border: 4px solid orange; }
.imagelist-portfolio .item .imageblock img { display: block; max-width: 100%; display: block; margin-left: auto; margin-right: auto; }

/* gallery-tabs */
.nav-tabs { display: none; }

@media (min-width: 768px) { .nav-tabs { display: flex; }
  .nav-link { border: 0; }
  .card { border: 0; }
  .card .card-header { display: none; }
  .card .collapse { display: block; } }
@media (max-width: 767px) { .tab-content > .tab-pane { display: block; opacity: 1; } }
.main-gallery { position: relative; }
.main-gallery #gallery-start { position: relative; top: -80px; }
.main-gallery .centered { max-width: 1500px; }
.main-gallery .nav-tabs { justify-content: center; margin: 0; border-bottom: 2px solid #74b25f; }
.main-gallery .nav-tabs li a { display: block; padding: 0.6em 1em; font-family: 'Roboto', sans-serif; font-weight: 400; font-size: 1.6rem; text-decoration: none; color: #333; border: 0; transition: all 0.2s ease-out; }
.main-gallery .nav-tabs li a:hover, .main-gallery .nav-tabs li a:focus { background: #d3f2c8; }
.main-gallery .nav-tabs li a.active { color: #fff; background: #74b25f; }
.main-gallery .nav-tabs li a img { vertical-align: middle; }
.main-gallery h3 { display: none; margin: 1em auto 0.5em; text-align: center; }
@media (max-width: 768px) { .main-gallery h3 { margin: 0.5em 0; } }
.main-gallery .tab-content { margin-bottom: 2.5em; }
.main-gallery .tab-pane .card-header { padding: 0; }
.main-gallery .tab-pane .card-header h5 { padding: 0; font-family: 'Roboto', sans-serif; font-weight: 400; font-size: 1.8rem; }
.main-gallery .tab-pane .card-header a { display: block; padding: 0.6em 1em; text-decoration: none; color: #333; transition: all 0.2s ease-out; }
.main-gallery .tab-pane .card-header a:hover, .main-gallery .tab-pane .card-header a:focus { color: #333; background: #d3f2c8; }
.main-gallery .tab-pane .card-header a[aria-expanded^="true"] { color: #fff; background: #74b25f; }
.main-gallery .tab-pane .tiles { display: flex; flex-wrap: wrap; justify-content: center; }
.main-gallery .tab-pane .tiles .item { flex: 0 1 33.333%; font-family: 'Roboto', sans-serif; font-weight: 400; color: #fff; cursor: pointer; }
@media (max-width: 1350px) { .main-gallery .tab-pane .tiles .item { flex-basis: 33.333%; } }
@media (max-width: 1075px) { .main-gallery .tab-pane .tiles .item { flex-basis: 50%; } }
@media (max-width: 680px) { .main-gallery .tab-pane .tiles .item { flex-basis: 100%; max-width: 550px; } }
.main-gallery .tab-pane .tiles .item .inner { position: relative; margin: 15px; padding-bottom: 65%; background-size: cover; background-position: 50% 50%; }
@media (max-width: 1350px) { .main-gallery .tab-pane .tiles .item .inner { padding-bottom: 72%; } }
@media (max-width: 1075px) { .main-gallery .tab-pane .tiles .item .inner { padding-bottom: 67%; } }
@media (max-width: 850px) { .main-gallery .tab-pane .tiles .item .inner { padding-bottom: 70%; } }
@media (max-width: 750px) { .main-gallery .tab-pane .tiles .item .inner { padding-bottom: 80%; } }
@media (max-width: 680px) { .main-gallery .tab-pane .tiles .item .inner { margin: 8px; padding-bottom: 50%; } }
@media (max-width: 480px) { .main-gallery .tab-pane .tiles .item .inner { padding-bottom: 250px; } }
@media (max-width: 380px) { .main-gallery .tab-pane .tiles .item .inner { padding-bottom: 270px; } }
.main-gallery .tab-pane .tiles .item .type { position: absolute; bottom: 0; right: 0; padding: 0.6em 1em; background: rgba(0, 0, 0, 0.5); transition: all 0.2s ease-out; cursor: default; }
.main-gallery .tab-pane .tiles .item .hover { position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 1.5em 1.75em; font-size: 1.4rem; line-height: 1.3em; background: rgba(0, 0, 0, 0.6); opacity: 0; transition: all 0.2s ease-out; /*@media (max-width: 767px) { visibility: hidden; }*/ }
.main-gallery .tab-pane .tiles .item .hover em, .main-gallery .tab-pane .tiles .item .hover strong { color: orange; }
.main-gallery .tab-pane .tiles .item .hover .title { margin-bottom: 1.8em; font-size: 1.8rem; }
.main-gallery .tab-pane .tiles .item .hover p { margin-bottom: 0.75em; }
.main-gallery .tab-pane .tiles .item .hover p:last-child { margin-bottom: 0; }
@media (min-width: 320px) { .main-gallery .tab-pane .tiles .item:hover .type { opacity: 0; }
  .main-gallery .tab-pane .tiles .item:hover .hover { opacity: 1; } }
.main-gallery .button-container { text-align: center; }

/* end gallery-tabs */
.textimage2 { background-color: #f4f4f4; background-image: url("/assets/images/bg_project_stage.jpg"); background-position: 50% 50%; background-repeat: no-repeat; background-size: cover; }
.textimage2 .centered { height: 100%; }
.textimage2 .text-cont { display: flex; flex-direction: column; justify-content: center; height: 100%; padding-left: 55%; }
.textimage2 .text-cont .textblock { padding: 0 0 1.5em; font-weight: 300; }
.textimage2 .text-cont .button-container { margin-top: 2em; }
@media (max-width: 767px) { .textimage2 { background-position: 4% 100%; background-size: auto 28em; }
  .textimage2 h2 { text-align: center; }
  .textimage2 .text-cont { padding: 0; text-align: center; }
  .textimage2 .text-cont .button-container { height: 19em; padding-top: 8em; } }

.portfolio { padding: 1px 0 4% 0; background: #272a31; }
@media (min-width: 1300px) { .portfolio .centered { max-width: 100%; } }
.portfolio h2 { margin-top: 2em; margin-bottom: 0.35em; color: #fff; }
.portfolio .subtitle { margin-bottom: 2.5em; font-family: 'Roboto', sans-serif; font-weight: 300; font-size: 1.6vw; text-align: center; color: #a3a4a7; }
@media (max-width: 1299px) { .portfolio .subtitle { font-size: 2.0rem; } }
@media (max-width: 499px) { .portfolio .subtitle { font-size: 1.8rem; }
  .portfolio .subtitle br { display: none; } }
.portfolio .filter { margin-bottom: 2em; display: flex; justify-content: center; flex-wrap: wrap; }
.portfolio .filter li { margin: 0.5em; }
.portfolio .filter li a { font-size: 1.345vw; white-space: nowrap; outline: none; }
@media (max-width: 1199px) { .portfolio .filter li a { font-size: 1.6rem; } }
.portfolio .grid { /* column sizes */ /*
.grid-sizer,
.grid-item.item-w1 { width: 16.66665%; }
.grid-item.item-w2 { width: 33.33332%; }
.grid-item { &.item-w1 .inner { padding-bottom: 100%; } &.item-w2 .inner { padding-bottom: 66.666%; }
}
*/ }
.portfolio .grid .grid-sizer, .portfolio .grid .grid-item.item-w1 { width: 16.66666%; }
.portfolio .grid .grid-item.item-w2 { width: 33.33333%; }
.portfolio .grid .grid-item.item-w1, .portfolio .grid .grid-item.item-w2 { padding-bottom: 16.66666%; }
@media (max-width: 1199px) { .portfolio .grid .grid-sizer, .portfolio .grid .grid-item.item-w1 { width: 25%; }
  .portfolio .grid .grid-item.item-w2 { width: 50%; }
  .portfolio .grid .grid-item.item-w1, .portfolio .grid .grid-item.item-w2 { padding-bottom: 25%; } }
@media (max-width: 767px) { .portfolio .grid .grid-sizer, .portfolio .grid .grid-item.item-w1 { width: 50%; }
  .portfolio .grid .grid-item.item-w2 { width: 100%; }
  .portfolio .grid .grid-item.item-w1, .portfolio .grid .grid-item.item-w2 { padding-bottom: 50%; } }
.portfolio .grid .grid-item { font-size: 1.3vw; /*padding: 10px;*/ }
@media (max-width: 1450px) { .portfolio .grid .grid-item { font-size: 2rem; } }
.portfolio .grid .grid-item .inner { position: absolute; left: 0.5em; right: 0.5em; top: 0.5em; bottom: 0.5em; overflow: hidden; backface-visibility: hidden; }
.portfolio .grid .grid-item .inner:before { content: ''; position: absolute; top: 0; left: 0; bottom: 0; right: 0; opacity: 0; background: rgba(0, 0, 0, 0.75); transition: all .35s ease-in-out 0s; z-index: 2; backface-visibility: hidden; }
.portfolio .grid .grid-item .inner a { display: block; width: 100%; height: 100%; text-decoration: none; color: #fff; overflow: hidden; }
.portfolio .grid .grid-item .inner .bg { position: absolute; top: 0; left: 0; bottom: 0; right: 0; /*top: 0.5em; left: 0.5em; bottom: 0.5em; right: 0.5em;*/ background-position: 50% 50%; background-repeat: no-repeat; background-size: cover; z-index: 1; transition: all 2s ease-in-out 0s; backface-visibility: hidden; }
.portfolio .grid .grid-item .inner .text { position: absolute; left: 0; top: 50%; width: 100%; text-align: center; transform: translateY(-50%); z-index: 3; opacity: 0; transition: all .35s ease-in-out 0s; }
.portfolio .grid .grid-item .inner .text .name { text-transform: uppercase; }
.portfolio .grid .grid-item .inner .text .name:after { content: ''; display: block; height: 1px; width: 10%; margin: 0.35em auto; background: #fff; transition: all .75s ease-in-out .1s; }
.portfolio .grid .grid-item .inner .text .type { font-size: .9em; font-family: 'Roboto', sans-serif; font-weight: 300; }
.portfolio .grid .grid-item:hover .inner:before { opacity: 1; margin: 0.5em; }
.portfolio .grid .grid-item:hover .inner .bg { transform: scale(1.1); }
.portfolio .grid .grid-item:hover .inner .text { opacity: 1; }
.portfolio .grid .grid-item:hover .inner .text .name:after { width: 80%; }

.website-types .centered { margin: 0 auto; padding: 0 1.25em; max-width: 88%; }
@media (max-width: 1920px) { .website-types .centered { max-width: 1650px; } }
.website-types h2 { margin-bottom: 0.5em; }
@media (max-width: 767px) { .website-types h2 { margin-bottom: 1em; } }
.website-types .website-types-cols { margin-bottom: 1em; display: flex; flex-direction: row; }
@media (max-width: 1199px) { .website-types .website-types-cols { justify-content: center; } }
.website-types .website-types-cols .column { display: flex; flex-direction: column; justify-content: center; }
.website-types .website-types-cols .column.list { flex: 0 0 28%; max-width: 28%; padding-bottom: 9.25em; }
@media (max-width: 1199px) { .website-types .website-types-cols .column.list { display: none; } }
.website-types .website-types-cols .column.list.list1 { text-align: right; padding-right: 6em; }
.website-types .website-types-cols .column.list.list1 .item span:after { transform-origin: top left; left: 100%; }
.website-types .website-types-cols .column.list.list2 { padding-left: 6em; }
.website-types .website-types-cols .column.list.list2 .item span:after { transform-origin: top right; right: 100%; }
.website-types .website-types-cols .column.list .item { position: relative; margin: 3em 0; text-transform: uppercase; font-weight: 500; cursor: pointer; color: #000; opacity: 0.65; transition: all 0.2s ease-out; }
.website-types .website-types-cols .column.list .item span { position: relative; display: inline-block; padding: 0.45em 0; }
.website-types .website-types-cols .column.list .item span:before, .website-types .website-types-cols .column.list .item span:after { content: ''; position: absolute; bottom: 0; height: 1px; background: #333; }
.website-types .website-types-cols .column.list .item span:before { left: 0; right: 0; }
.website-types .website-types-cols .column.list .item span:after { width: 7em; }
.website-types .website-types-cols .column.list .item div.text { position: absolute; top: 100%; left: 0; right: 0; padding-top: 0.4em; font-size: 0.8em; font-weight: 300; line-height: 1.25em; text-transform: none; color: #798da3; opacity: 0; transition: all 0.2s ease-out; }
@media (max-width: 1399px) { .website-types .website-types-cols .column.list .item div.text { font-size: 0.7em; } }
.website-types .website-types-cols .column.list .item .icon { display: inline-block; width: 1.8em; height: 1.8em; margin: 0 0.6em; vertical-align: middle; background-position: 50% 50%; background-repeat: no-repeat; background-size: contain; }
.website-types .website-types-cols .column.list .item[data-num="0"] span:after, .website-types .website-types-cols .column.list .item[data-num="5"] span:after { transform: rotate(55deg); }
.website-types .website-types-cols .column.list .item[data-num="2"] span:after, .website-types .website-types-cols .column.list .item[data-num="3"] span:after { transform: rotate(-55deg); }
.website-types .website-types-cols .column.list .item:hover, .website-types .website-types-cols .column.list .item.active { opacity: 1; }
.website-types .website-types-cols .column.list .item:hover div.text { opacity: 0.75; }
.website-types .website-types-cols .column.list .item.active div.text { opacity: 1; }
.website-types .website-types-cols .column.center-col { flex: 0 0 44%; max-width: 44%; }
@media (max-width: 1199px) { .website-types .website-types-cols .column.center-col { flex-basis: 80%; max-width: 80%; } }
@media (max-width: 767px) { .website-types .website-types-cols .column.center-col { flex-basis: 100%; max-width: 100%; } }
.website-types .website-types-cols .column.center-col .owl-container { position: relative; width: 100%; padding-bottom: 85%; background: url(../images/device-monitor.png) 50% 0/100% 100% no-repeat; }
.website-types .website-types-cols .column.center-col .owl-container .owl-carousel { position: absolute; top: 4.63%; left: 3.7%; bottom: 34%; right: 3.7%; width: auto; background: #333; }
.website-types .website-types-cols .column.center-col .owl-container .owl-carousel .item { position: relative; }
.website-types .website-types-cols .column.center-col .owl-container .owl-carousel .item .video-item { width: 100%; max-width: 100%; }
.website-types .website-types-cols .column.center-col .owl-container .owl-carousel .item .text { display: none; position: absolute; bottom: 5%; left: 5%; right: 5%; font-size: 1.6em; font-weight: bold; text-align: center; color: #fff; text-shadow: 1px 1px 3px black; }
@media (max-width: 1199px) { .website-types .website-types-cols .column.center-col .owl-container .owl-carousel .item .text { display: block; } }
.website-types .website-types-text { max-width: 80%; margin: 1em auto 4em; text-align: center; }
@media (max-width: 1920px) { .website-types .website-types-text { max-width: 100%; } }
@media (max-width: 767px) { .website-types .website-types-text { margin-bottom: 2.5em; } }
.website-types .website-types-text .item { font-size: 1.15em; }
.website-types .website-types-text .item p:last-child { margin-bottom: 0; }
.website-types .website-types-cms-list { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; }
.website-types .website-types-cms-list .item { flex: 0 0 16%; margin: 0 2%; padding-bottom: 4em; background-position: 50% 50%; background-repeat: no-repeat; background-size: contain; }
@media (max-width: 1299px) { .website-types .website-types-cms-list .item { flex: 0 0 31%; margin: 0 1%; } }
@media (max-width: 499px) { .website-types .website-types-cms-list .item { flex: 0 0 46%; margin: 0 2%; } }

.special-arrows .owl-dots { margin-top: 0 !important; padding-top: 4%; }
.special-arrows .owl-dots .owl-dot.active span, .special-arrows .owl-dots .owl-dot:hover span { background-color: #edd355; }
.special-arrows .owl-nav button[class*='owl-'] { position: absolute; top: 55%; margin: 0; width: 4em; height: 7.5em; cursor: pointer; background: #fff !important; border: 1px solid #333; transform: translateY(-50%); outline: none; }
.special-arrows .owl-nav button[class*='owl-'] div { height: 100%; position: relative; background: #d0d0d0; transition: all 0.2s ease-out; backface-visibility: hidden; }
.special-arrows .owl-nav button[class*='owl-'] div:before, .special-arrows .owl-nav button[class*='owl-'] div:after { content: ''; display: block; position: absolute; left: 50%; top: 50%; width: 60%; height: 2px; background: #aaa; backface-visibility: hidden; }
.special-arrows .owl-nav button[class*='owl-'].disabled { opacity: 1; }
.special-arrows .owl-nav button[class*='owl-'].disabled div { opacity: 0.5; }
.special-arrows .owl-nav button[class*='owl-'].owl-prev { right: 104%; padding: 0.5em 0 0.5em 0.5em !important; border-radius: 4em 0 0 4em; border-right: 0; }
.special-arrows .owl-nav button[class*='owl-'].owl-prev div { border-radius: 4em 0 0 4em; transform-origin: center right; }
.special-arrows .owl-nav button[class*='owl-'].owl-next { left: 104%; padding: 0.5em 0.5em 0.5em 0 !important; border-radius: 0 4em 4em 0; border-left: 0; }
.special-arrows .owl-nav button[class*='owl-'].owl-next div { border-radius: 0 4em 4em 0; transform-origin: center left; }
.special-arrows .owl-nav button[class*='owl-'].owl-prev div:before { transform-origin: bottom left; transform: translateX(-30%) rotate(-45deg); }
.special-arrows .owl-nav button[class*='owl-'].owl-prev div:after { transform-origin: top left; transform: translateX(-30%) rotate(45deg); }
.special-arrows .owl-nav button[class*='owl-'].owl-next div:before { transform-origin: bottom right; transform: translateX(-70%) rotate(45deg); }
.special-arrows .owl-nav button[class*='owl-'].owl-next div:after { transform-origin: top right; transform: translateX(-70%) rotate(-45deg); }
.special-arrows .owl-nav button[class*='owl-'].disabled div.owl-prev, .special-arrows .owl-nav button[class*='owl-'].disabled div.owl-next { cursor: default; }
.special-arrows .owl-nav button[class*='owl-']:not(.disabled) div:hover, .special-arrows .owl-nav button[class*='owl-']:not(.disabled) div:active { background: #d9d9d9; /*transform: scale(1.05);*/ }
.special-arrows .owl-nav button[class*='owl-']:not(.disabled) div:hover:before, .special-arrows .owl-nav button[class*='owl-']:not(.disabled) div:hover:after, .special-arrows .owl-nav button[class*='owl-']:not(.disabled) div:active:before, .special-arrows .owl-nav button[class*='owl-']:not(.disabled) div:active:after { /*background: $highlight-bright;*/ }

.adaptive-design .bg-hand { position: absolute; right: 0; top: 12em; width: 30%; padding-bottom: 20.5%; background-position: 100% 50%; background-repeat: no-repeat; background-size: auto 100%; background-image: url("../images/hand2.png"); z-index: 10; }
.adaptive-design .bg-hand button { position: absolute; top: 33.5%; left: 0; width: 20.5%; padding-bottom: 20.5%; border: 0; background: transparent; cursor: pointer; outline: none; }
.adaptive-design .centered { z-index: 5; }
.adaptive-design .textblock { text-align: center; }
.adaptive-design .items { position: relative; margin: -0.75em -10% 2.5em 0; width: 90%; padding-bottom: 38%; }
.adaptive-design .items .item { position: absolute; background-position: 50% 50%; background-repeat: no-repeat; background-size: contain; z-index: 1; }
.adaptive-design .items .item .inner { position: absolute; width: auto; background: #333; overflow: hidden; }
.adaptive-design .items .item .inner .bg { width: 100%; height: 200%; background-position: 50% 0; background-repeat: no-repeat; background-size: 100% 100%; z-index: 1; }
.adaptive-design .items .item .inner:before { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 5; box-shadow: inset 0 0 5px #373737; }
.adaptive-design .items .item.item0 { left: 16.4%; top: 0; width: 50%; padding-bottom: 42.9%; background-image: url(../images/device-monitor.png); }
.adaptive-design .items .item.item0 .inner { top: 4.63%; left: 3.7%; bottom: 34%; right: 3.7%; }
.adaptive-design .items .item.item1 { left: 0; top: 36%; width: 14.9%; padding-bottom: 20%; background-image: url(../images/device-tablet.png); }
.adaptive-design .items .item.item1 .inner { top: 3.8%; left: 6.5%; bottom: 3.7%; right: 6.5%; border-radius: 0.25em; }
.adaptive-design .items .item.item2 { left: 18%; top: 59%; width: 8.4%; padding-bottom: 16.2%; background-image: url(../images/device-phone.png); }
.adaptive-design .items .item.item2 .inner { top: 3%; left: 7.9%; bottom: 4.55%; right: 9%; border-radius: 0.4em; }
.adaptive-design .items .item.item3 { left: 52.5%; top: 44%; width: 45%; padding-bottom: 25.4%; background-image: url(../images/device-laptop.png); }
.adaptive-design .items .item.item3 .inner { top: 5.7%; left: 12.1%; bottom: 10.5%; right: 12.3%; }

.team-approach { background: #ddd url("/assets/images/bg-team-approach.jpg") 50% 0/cover no-repeat; }
.team-approach .items { display: flex; flex-direction: row; justify-content: space-between; flex-wrap: wrap; }
@media (max-width: 1199px) { .team-approach .items { justify-content: center; } }
.team-approach .items .item { flex: 0 0 33.333%; padding: 0.75em; transition: all 0.2s ease-out; backface-visibility: hidden; cursor: default; }
@media (max-width: 1199px) { .team-approach .items .item { flex: 0 0 40%; margin: 0 2em 2.5em; } }
@media (max-width: 499px) { .team-approach .items .item { flex: 0 0 100%; margin: 0 0 2.5em; } }
@media (min-width: 1951px) { .team-approach .items .item { font-size: 1vw; } }
.team-approach .items .item .imageblock { display: flex; align-items: flex-start; flex-direction: row; justify-content: space-between; height: 17.5em; background: #444; border: 1px solid #000; transition: all 0.2s ease-out; }
.team-approach .items .item .imageblock img { align-self: flex-end; max-height: 95%; width: auto; backface-visibility: hidden; filter: grayscale(100%); }
.team-approach .items .item .imageblock .text { padding: 0.5em 0.75em; font-size: 1.8vw; line-height: 1.15em; color: #000; backface-visibility: hidden; }
@media (max-width: 1950px) { .team-approach .items .item .imageblock .text { font-size: 1.7em; } }
@media (max-width: 499px) { .team-approach .items .item .imageblock .text { font-size: 2em; } }
.team-approach .items .item .imageblock .text .name { font-weight: bold; color: #fff; }
.team-approach .items .item .imageblock .text .job { margin-top: 0.4em; font-size: 0.65em; font-weight: 300; color: #edd355; }
@media (max-width: 499px) { .team-approach .items .item .imageblock .text .job { font-size: 1.35em; } }
.team-approach .items .item:hover { transform: scale(1.05); }
.team-approach .items .item:hover .imageblock { background: #666; }
.team-approach .items .item:hover .imageblock img { filter: none; }

/* custom content blocks for inner pages */
.under-construction { padding-top: 165px; }
.under-construction img { max-width: 100%; display: block; margin-left: auto; margin-right: auto; }
