/* BRAND COLORS (from Conscient logo) */
:root {
    --brand-blue: #21409A;
    --brand-red: #EE4023;
}

/* GRID */
body, html { padding: 0; margin: 0; overflow-x: hidden !important; }
.container { padding-right: 15px; padding-left: 15px; margin-right: auto; margin-left: auto; }
.container:before, .container:after { display: table; content: " "; }
.container:after { clear: both; }
.row { margin-right: -15px; margin-left: -15px; }
.row:before, .row:after { display: table; content: " "; }
.row:after { clear: both; }
.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6,
.col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    position: relative; min-height: 1px; padding-right: 15px; padding-left: 15px;
}
*, *:before, *:after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

.county-logos { width: 170px !important; height: auto; padding: 6px !important; }
@media (max-width: 575px) {
    .county-logos { margin-bottom: -5px; width: 100px !important; height: auto; text-align: left; }
}

img { border: 0; outline: none; vertical-align: top; max-width: 100%; }
iframe { border: 0; }
input, textarea { outline: none !important; resize: none; -webkit-appearance: none; }
.clear { display: none; }   /* empty clearing div no longer needed (header uses flex) */
ul { padding: 0; margin: 0; }
li { padding: 0; margin: 0; list-style: none; }
.fleft { float: left; }
.fright { float: right; }
.color { color: #EE4023; }

/** MAIN **/
body { color: #000; background: #f7f7f7; font-weight: 500; font-family: "Open Sans", sans-serif; font-size: 15px; line-height: 21px; margin: 0; padding: 0; }
html { font-size: 100%; }
::selection { background: #EE4023; color: #2d2e2e; }
::-moz-selection { background: #EE4023; color: #2d2e2e; }
.wrapper { overflow: hidden; position: relative; }
a { color: #2d2e2e; text-decoration: none !important; }
strong { font-weight: 700; }
.center { text-align: center; }
.justify { text-align: justify; }
p { padding: 0; margin: 0 0 10px 0; }

/** HEADER **/
#top {
    position: absolute; left: 0; top: 0; width: 100% !important; z-index: 9999; background: #ffffff;
    transition: background-color 300ms; -webkit-transition: background-color 300ms;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1) !important;
}

/* Header layout: logo left, nav right, always on one line (flex instead of floats) */
header .container {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
}
header .container:after { display: none; }        /* clearfix not needed with flex */
header .container.hide { opacity: 1; }            /* header must always stay visible */

.fixed_show { position: fixed !important; }

#logo { float: none; flex: 0 0 auto; vertical-align: top; padding-top: 0; }
#logo a {
    line-height: 1; display: block; font-size: 24px; color: #fff; font-weight: 400;
    transition: color 300ms; -webkit-transition: color 300ms;
}
#logo a span { display: inline-block; }
.fixed_show #logo a { color: #2d2e2e; }

header .container:before {
    position: absolute; left: 15px; bottom: 0; height: 1px; width: calc(100% - 30px);
    background: rgba(255, 255, 255, 0.5); content: "";
}
.fixed_show header .container:before { display: none; }
.fixed_show header { position: relative; }
.fixed_show header:before { position: absolute; left: 0; bottom: 0; width: 100%; background: rgba(46, 46, 46, 0.5); content: ""; }

.bg-grey {
    position: relative; background-color: #ffffff; background-image: url("../img/ami-backgorund.png");
    background-size: cover; background-position: center; background-repeat: no-repeat; padding: 20px 0; overflow: hidden;
}
.bg-greys { padding: 40px 0; }
.bg-grey::before {
    content: ""; position: absolute; inset: 0; z-index: 1;
    background: linear-gradient(120deg, rgba(255,255,255,0.95) 20%, rgba(255,255,255,0.75) 50%, rgba(33,64,154,0.25) 100%);
}
.bg-grey > * { position: relative; z-index: 2; }
.bg-grey-light { background: #21409A; }
.light-grey { background-color: #222; }

/* Menu */
.navmenu { float: none; margin: 0; padding: 0; flex: 0 1 auto; }
.navmenu ul { display: flex; align-items: center; flex-wrap: nowrap; }
.navmenu ul li { display: inline-block; vertical-align: top; list-style: none; margin: 0 0 0 18px; position: relative; white-space: nowrap; }
.navmenu ul li:last-child { margin-right: 0; }
.navmenu ul li a {
    display: block; color: #000; font-size: 13px !important; padding: 0; font-weight: 600; text-decoration: none !important;
    outline: none; text-transform: uppercase; position: relative; z-index: 5;
    transition: color 300ms; -webkit-transition: color 300ms;
}
.fixed_show .navmenu ul li a { color: #000; }
.navmenu li a:hover, .navmenu li.active a, .navmenu li:hover a { padding: 0; text-decoration: none; color: #000 !important; }
a.menu_toggler { display: none; }
.mobile_menu_wrapper { display: none; }
.navmenu ul li:before {
    position: absolute; left: 50%; right: 50%; bottom: -15px; height: 0px; content: ""; background-color: transparent;
    z-index: 1; transition: all 300ms; -webkit-transition: all 300ms;
}
.navmenu ul li.active:before { left: -10px; right: -10px; background-color: #EE4023; }

/* Tablet: no menu toggle exists in the HTML, so keep only the phone button */
@media (max-width: 991px) {
    .navmenu ul li:not(:last-child) { display: none; }
}

/* Buttons */
.shortcode_button {
    width: 124px; margin: 0 auto; text-decoration: none; border: 1px #EE4023 solid; background-color: #EE4023; color: #1c2025;
    transition: all 300ms; -webkit-transition: all 300ms; line-height: 24px; font-size: 14px; padding: 10px 20px; font-weight: 500;
    text-transform: uppercase; vertical-align: top; text-align: center; -webkit-border-radius: 18px; border-radius: 18px;
}
.shortcode_button:hover { color: #1c2025; background-color: #EE4023; }
.shortcode_button.white { background-color: transparent; border-color: #EE4023; color: #EE4023; }
.shortcode_button.white:hover { background-color: transparent; color: #EE4023; }

/* Main Slider */
.full_slider { background-position: center center; background-repeat: no-repeat; }
.full_slider.preloader { background-image: url(../img/preloader.gif); }
.flex-control-paging li a { background-color: #fff; border: 1px #cdcdcd solid; }
.flex-control-paging li a.flex-active { background-color: #EE4023; border-color: #EE4023; }
.full_slider_caption {
    position: absolute; top: 70%; transform: translateY(-50%); -webkit-transform: translateY(-50%); left: 20px; right: 20px;
    text-align: left; color: #fff; font-size: 14px; font-weight: 400; line-height: 21px; margin: 0; text-shadow: none; opacity: 1; float: none;
}
.slide_title { line-height: 58px; font-size: 48px; font-weight: 700; padding-bottom: 23px; text-transform: uppercase; }
.slide_title span { display: block; }
.full_slider_caption .shortcode_button { margin: 34px 27px 0 0; }
.next_section {
    position: absolute; left: 50%; bottom: 30px; width: 24px; height: 42px; margin-left: -12px;
    transition: all 300ms; -webkit-transition: all 300ms; background-image: url(../img/sprite.png); background-position: 0 0; background-repeat: no-repeat;
}
.next_section:hover { opacity: 0.5; }
.relative { position: relative; }
.dark_bg { background: #21409A; }

.cover50 { position: absolute; left: 0; margin-top: 0; bottom: 0; width: 50%; background-size: cover; background-repeat: no-repeat; background-position: center center; }
.cover51, .cover52, .cover53, .cover54, .cover55, .cover56, .cover57, .cover58 {
    position: absolute; left: 0; top: 0; bottom: 0; width: 50%; background-size: cover; background-repeat: no-repeat; background-position: center center;
}
.cover56, .cover57, .cover58 { background-image: url(../img/imgs/about.png); }
.stretch { background-position: center center; background-size: cover; -webkit-background-size: cover; background-repeat: no-repeat; background-attachment: fixed; }

/* Icon Box */
.icon_box { text-align: center; padding-bottom: 30px; }
.icon_box p a { color: #EE4023; margin-bottom: 20px !important; }
.icon_box_icon { display: inline-block; margin: 0 auto 26px auto; position: relative; width: 100px; height: 100px; background: #f3f3f3; -webkit-border-radius: 50%; border-radius: 50%; }
.icon_box_icon img { display: block; opacity: 1; transition: opacity 400ms; -webkit-transition: opacity 400ms; width: 100%; height: auto; }
.icon_box_icon img.hovered { opacity: 0; z-index: 5; position: absolute; left: 0; top: 0; }
.icon_box a:hover .icon_box_icon img { opacity: 0; }
.icon_box a:hover .icon_box_icon img.hovered { opacity: 1; }
.icon_box_title { line-height: 21px; padding-bottom: 22px; font-size: 18px; color: #EE4023; font-weight: 100; display: block; transition: all 300ms; -webkit-transition: all 300ms; }
.icon_box a:hover .icon_box_title { color: #EE4023; }

h2 { line-height: 31px; color: #ffffff; font-weight: 500; font-size: 30px; margin: 0; padding: 0 0 33px 0; position: relative; }
h2.separator { margin-bottom: 32px; }
h2.separator:before, h2.separator:after { position: absolute; left: 50%; width: 170px; height: 1px; background: #cdcdcd; content: ""; bottom: 0; margin-left: 15px; }
h2.separator:after { margin-left: -185px; }
h2.separator span { position: relative; display: block; }
h2.separator span:before { position: absolute; left: 50%; width: 12px; height: 12px; background-color: transparent; content: ""; bottom: -38px; margin-left: -6px; -webkit-border-radius: 50%; border-radius: 50%; border: 1px #cdcdcd solid; }
h3 { line-height: 24px; color: #2d2e2e; font-weight: 700; font-size: 18px; margin: 0; padding: 0 0 31px 0; text-transform: uppercase; }
.white { color: #fff; }
h2.separator.white:before, h2.separator.white:after { background: rgba(255, 255, 255, 0.5); }
h2.separator.white span:before { border: 1px rgba(255, 255, 255, 0.5) solid; }

/* Testimonials */
.testimonials_list ul { margin: 0; padding: 0; }
.testimonials_list ul li { padding: 0; margin: 0; display: block; }
.testimonials_list ul li:before { display: none; }
.testimonials_list ul li .item { padding: 4px 0 0 130px; position: relative; margin-bottom: 39px; }
.testimonial_item_wrapper { padding-bottom: 33px; border-bottom: 1px #cdcdcd solid; min-height: 127px; }
.testimonials_list ul li:last-child .testimonial_item_wrapper { border-bottom: 0; }
.testimonials_list ul li:last-child .item { margin-bottom: 12px; }
.testimonials_list li .item .testimonials_photo { width: 100px; height: 100px; display: block; border-radius: 50%; -webkit-border-radius: 50%; position: absolute; left: 0; top: 0; }
.testimonials_list li .item .testimonials_photo img { display: block; width: 100%; height: auto; border-radius: 50%; -webkit-border-radius: 50%; }
.testimonials_list li .item p { font-style: italic; }
.testimonials_list li .item h6.testimonials_title { margin: 0; padding: 0; line-height: 21px; font-size: 14px; color: #2d2e2e; font-weight: 400; text-align: right; }
.testimonials_list li .item h6.testimonials_title span:before { content: ","; padding-right: 5px; }

/* Diagrams */
.skills_list { padding: 0 !important; list-style: none !important; margin: 0 !important; }
.skills_list li { border: 0; border-radius: 0; box-shadow: none; min-height: 50px; display: block; position: relative; margin: 0 !important; overflow: hidden; padding: 0 0 28px 0 !important; }
.skills_list li:last-child { padding: 0 0 34px 0 !important; }
.skills_list li:before { display: none; }
.skills_list li .diagram_bar { padding: 0; display: block; }
.skills_list li .diagram_bar h6 { margin: 0 0 5px 0; padding: 0 10px; font-size: 14px; font-weight: 600; font-style: normal; line-height: 20px; text-transform: uppercase; color: #2d2e2e; }
.skill_div-wrapper { height: 25px; display: block; background: #f3f3f3; border-radius: 11px; -webkit-border-radius: 11px; box-shadow: none; position: relative; }
.skill_div-wrapper:before { height: 25px; width: 12px; position: absolute; right: 0; top: 0; content: ""; background-image: url(../img/sprite.png); background-position: 0 -95px; background-repeat: no-repeat; z-index: 50; }
.skills_list li .skill_div { height: 25px; display: inline-block; box-shadow: none; vertical-align: top; border-radius: 11px 0 0 11px; -webkit-border-radius: 11px 0 0 11px; background-color: #EE4023; position: relative; overflow: visible !important; opacity: 0; }
.skills_list li .skill_div:before { position: absolute; top: -27px; z-index: 999; width: auto; height: 21px; line-height: 19px; padding: 2px 5px 0 6px; background: #2d2e2e; font-size: 11px; color: #fff; vertical-align: top; content: attr(data-percent) "%"; font-weight: 400; right: -16px; }
.skills_list li .skill_div:after { position: absolute; top: -6px; z-index: 999; width: 0; height: 0; content: ""; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 3px solid #2d2e2e; right: -3px; }

/* Our Team */
.bg1 { background-image: url(../img/bgs/1.jpg); }
.og-grid { list-style: none; padding: 0; font-size: 0; line-height: 0; margin: 0 0 0 -30px; width: 100%; }
.og-grid li { position: static !important; height: auto; padding: 0 0 0 30px; margin: 0; display: inline-block; vertical-align: top; width: 25%; }
.og-grid li > a { position: relative; }
.og-grid li > a, .og-grid li > a img { border: none; outline: none; display: block; position: relative; width: 100%; height: auto; }
.team_avatar { max-width: 220px; margin: 0 auto 16px auto; -webkit-border-radius: 50%; border-radius: 50%; position: relative; border: 3px #ffffff solid; background: #21409A; }
.team_avatar img { -webkit-border-radius: 50%; border-radius: 50%; }
.team_title { padding-bottom: 73px; color: #ffffff; line-height: 21px; font-size: 14px; font-weight: 400; text-align: center; }
.op { padding-top: 9px; }
.team_title h6 { padding: 0; margin: 0; line-height: 24px; font-size: 18px; color: #fff; font-weight: bold; text-transform: uppercase; }
.our_team, .og-expander { width: 100%; }
.og-expander { background: #21409A; height: 0; transition: height 300ms; -webkit-transition: height 300ms; overflow: hidden; }
.og-expander .container { position: relative; padding-top: 55px; padding-bottom: 50px; }
.team_info { display: none; }

/* Fader */
.og-grid a.team_link span.plus_icon { content: ""; background: rgba(33, 64, 154, 0); position: absolute; left: 0; top: 0; width: 100%; height: 100%; display: block; transition: all 300ms; -webkit-transition: all 300ms; -webkit-border-radius: 50%; border-radius: 50%; }
.og-grid a.team_link.active span.plus_icon { background: rgba(33, 64, 154, 0.8); }
.og-grid a.team_link span.plus_icon:before { content: ""; position: absolute; left: 50%; top: 50%; width: 58px; height: 58px; display: block; margin: -29px 0 0 -29px; opacity: 0; z-index: 99; background: url(../img/sprite.png) no-repeat -29px 0; transition: opacity 300ms; -webkit-transition: opacity 300ms; }
.og-grid a.team_link.active span.plus_icon:before { opacity: 1; }
.og-grid a.team_link.active:after { top: auto; border: solid transparent; content: " "; height: 0; width: 0; position: absolute; border-bottom-color: #21409A; border-width: 15px; left: 50%; margin: -30px 0 0 -15px; }
.og-details h3 { font-weight: 700; font-size: 18px; line-height: 23px; padding: 0 50px 0 0; margin-bottom: 20px; color: #fff; text-transform: uppercase; }
.og-details p { line-height: 21px; color: #fff; margin-bottom: 24px; font-size: 14px; font-weight: 400; }
.og-close { position: absolute; width: 13px; height: 13px; top: 59px; right: 15px; cursor: pointer; z-index: 99; background-image: url(../img/sprite.png); background-repeat: no-repeat; background-position: 0 -50px; transition: opacity 300ms; -webkit-transition: opacity 300ms; }
.og-close:hover { opacity: 0.5; }
.og-details a.fb_link, .og-details a.tweet_link, .og-details a.google_link { width: 30px; height: 29px; padding: 0; display: inline-block; margin: 0 10px 10px 0; vertical-align: top; text-indent: -9999px; background-image: url(../img/sprite.png); background-repeat: no-repeat; }
.og-details a.fb_link { background-position: -90px 0; }
.og-details a.fb_link:hover { background-position: -90px -29px; }
.og-details a.tweet_link { background-position: -130px 0; }
.og-details a.tweet_link:hover { background-position: -130px -29px; }
.og-details a.google_link { background-position: -170px 0; }
.og-details a.google_link:hover { background-position: -170px -29px; }

/* Accordion */
.shortcode_accordion_shortcode { padding-left: 0; }
h5.shortcode_accordion_item_title { margin: 0; padding: 9px 15px; position: relative; font-size: 14px; line-height: 20px; cursor: pointer; color: #fff; outline: none; background: #21409A; font-weight: 600; }
.shortcode_accordion_item_body { padding: 10px; display: none; border-top: 0; color: #fff; font-size: 13px; font-weight: 300; background: #9e9e9e; margin: 0 0 5px 0; }
.module_accordion .shortcode_accordion_item_body p { margin: 20px 0 0 0; }
.module_accordion .shortcode_accordion_item_body p:first-child { margin: 0; }

/* Price Table */
.price_item_wrapper { margin-top: 30px; text-align: center; padding: 0; border-radius: 0; -webkit-border-radius: 0; overflow: hidden; border: none; background: #21409A; }
.price_item_title { margin: 0; padding: 25px 10px 12px 10px; background: #21409A; }
.price_item_title h5 { padding: 0; margin: 0; line-height: 27px; color: #fff; font-size: 18px; font-weight: 400; text-align: center; text-transform: none; }
.most_popular .price_item_title h5 { color: #EE4023; }
.price_item_cost { padding: 9px 10px 27px 10px; text-align: center; background: #21409A; }
.price_item_cost h3 { line-height: 27px; margin: 0; padding: 0; color: #fff; font-size: 30px; font-weight: 700; vertical-align: top; }
.price_item_cost h3 span { font-weight: 400; vertical-align: top; display: inline-block; line-height: 16px; margin-top: 12px; font-size: 14px; text-transform: none; padding-left: 6px; }
.price_item_cost h3 i { font-weight: 400; vertical-align: top; display: inline-block; line-height: 14px; font-size: 14px; text-transform: none; padding-right: 1px; font-style: normal; margin-top: 2px; }
.price_text_wrap { padding: 25px 20px 34px 20px; }
.price_item_text { text-align: center; padding: 0 0 10px 0; position: relative; line-height: 21px; font-size: 14px; color: #b3b3b3; }
.price_item_btn { padding: 0 15px 30px 15px; }
.most_popular a.shortcode_button.white { background-color: #EE4023; border-color: #EE4023; color: #1c2025; }

/* Portfolio / Isotope */
.isotope-item { z-index: 2; }
.isotope-hidden.isotope-item { pointer-events: none; z-index: 1; }
.isotope, .isotope .isotope-item { -webkit-transition-duration: 0.8s; -moz-transition-duration: 0.8s; transition-duration: 0.8s; }
.isotope { -webkit-transition-property: height, width; -moz-transition-property: height, width; transition-property: height, width; }
.isotope .isotope-item { -webkit-transition-property: -webkit-transform, opacity; -moz-transition-property: -moz-transform, opacity; transition-property: transform, opacity; }
.isotope.no-transition, .isotope.no-transition .isotope-item, .isotope .isotope-item.no-transition { -webkit-transition-duration: 0s; -moz-transition-duration: 0s; transition-duration: 0s; }
.isotope.infinite-scrolling { -webkit-transition: none; -moz-transition: none; transition: none; }

/* Filter Block */
.filter_block { text-align: center; padding-bottom: 30px; }
.filter_navigation { margin: 0 auto !important; text-align: center; display: inline-block; padding: 0; position: relative; vertical-align: top; }
.filter_navigation ul, .filter_navigation ul li ul { padding: 0 !important; margin: 0 !important; list-style: none !important; }
.filter_navigation ul li, .filter_navigation ul li ul li { padding: 0 !important; margin: 0 !important; }
.filter_navigation ul li:before, .filter_navigation ul li ul li:before { content: "" !important; padding: 0 !important; }
.filter_navigation ul li ul li { display: inline-block; position: relative; margin: 0 -2px 10px 0 !important; vertical-align: top; }
.filter_navigation ul li ul li a { display: block; margin: 0; text-decoration: none; line-height: 24px; font-size: 14px; padding: 7px 19px; font-weight: 600; text-transform: uppercase; vertical-align: top; text-align: center; color: #666666; transition: all 300ms; -webkit-transition: all 300ms; border-radius: 18px; -webkit-border-radius: 18px; border: 1px #fff solid; }
.filter_navigation ul li ul li:before { display: none; }
.filter_navigation ul li ul li a:hover { color: #666666; }
.filter_navigation ul li ul li.selected a { border-color: #cdcdcd; color: #666666; }
.image-grid .element { background: none; overflow: hidden; display: inline-block; margin: 0 0 30px 0; }
.img_block img { width: 100%; height: auto; padding: 0; margin: 0; display: block; }
.img_block a .item_info { bottom: 0; }
.hover_img { position: relative; overflow: hidden; }
.hover_img a { display: block; position: relative; }
.item_info { position: absolute; left: 0; bottom: -100%; width: 100%; background: rgba(255, 255, 255, 0.8); padding: 16px 10px 17px 10px; font-size: 14px; color: #333333; text-align: center; line-height: 21px; transition: all 300ms; -webkit-transition: all 300ms; }
.item_info span { display: block; margin-bottom: 10px; font-size: 18px; font-weight: 700; text-transform: uppercase; transition: all 250ms; -webkit-transition: all 250ms; color: #2d2e2e; }
.hover_img a:hover { bottom: 0; }
.portfolio_block .hover_img a img { transition: all 500ms; -webkit-transition: all 500ms; }
.portfolio_block .hover_img a:hover img { transform: scale(1.05); -webkit-transform: scale(1.05); }
.load_more_cont { text-align: center; }
.btn_load_more { display: inline-block; margin: 0 auto 30px auto; }

/** Contact Section **/
form input[type="text"], form input[type="email"], form textarea {
    background: none; margin: 0 0 15px 0; width: 100%; outline: none; border-radius: 0; -webkit-border-radius: 0; box-shadow: none;
    border: 1px #d2cfcc solid; padding: 10px; background-color: #fff; font-size: 14px; color: #54504b; font-weight: 400;
    font-family: "Open Sans", sans-serif; line-height: 22px;
}
form textarea { height: 80px; margin-bottom: 10px; }
input.send_btn {
    cursor: pointer; color: #1c2025 !important; margin: 0 auto 5px auto !important; display: inline-block; padding: 0 20px !important;
    height: 40px; line-height: 38px; font-size: 14px !important; font-weight: 400 !important; width: auto !important;
    font-family: "Open Sans", sans-serif; vertical-align: top; -webkit-transition: all 0.3s ease; transition: all 0.3s ease;
    border: 1px #EE4023 solid !important; background: #fff !important; text-transform: uppercase;
}
input.send_btn:hover { background: #fff !important; text-decoration: none; color: #1c2025 !important; }

/* Subscribe Form */
.subscribe_form { margin: 0 auto; max-width: 770px; padding-bottom: 47px; }
.subscribe_form p { line-height: 21px; margin-bottom: 24px; font-size: 12px; }
.text-center { text-align: center; }
#contact .stretch { background-image: url(../img/bgs/2.jpg); }
.contact_form { margin: 0 auto; max-width: 370px; background-color: #21409A; padding: 20px; }
.contact_form form input[type="text"], .contact_form form input[type="email"], .contact_form form textarea { color: #54504b; border-bottom: 1px #d2cfcc solid; }
.contact_form form input[type="text"], .contact_form form input[type="email"] { margin-bottom: 6px; }

/* Placeholder */
::-webkit-input-placeholder { opacity: 1 !important; }
:-moz-placeholder { opacity: 1 !important; }
::-moz-placeholder { opacity: 1 !important; }
:-ms-input-placeholder { opacity: 1 !important; }
input:focus::-webkit-input-placeholder, textarea:focus::-webkit-input-placeholder { color: transparent !important; }
input:focus:-moz-placeholder, textarea:focus:-moz-placeholder { color: transparent !important; }
input:focus::-moz-placeholder, textarea:focus::-moz-placeholder { color: transparent !important; }
input:focus:-ms-input-placeholder, textarea:focus:-ms-input-placeholder { color: transparent !important; }

/** Form valid style **/
.notification_error, .notification_ok { border-radius: 0; margin: 0 0 51px 0; padding: 12px 10px 12px 25px; position: relative; text-align: left; }
.notification_ok { border: 1px #21409A solid; color: #21409A; }
.notification_error { border: 1px #c93119 solid; color: #c93119; }
.notification_ok, .notification_error { border-left: none; border-right: none; background-color: transparent; }
.notification_error:before, .notification_ok:before { content: ""; width: 16px; height: 16px; position: absolute; left: 0; top: 13px; background-position: 0 0; background-repeat: no-repeat; }
.notification_error:before { background-image: url(../img/error.png); }
.notification_ok:before { background-image: url(../img/info.png); }
.hide { opacity: 0; }

/* Footer */
.footer { padding-top: 55px; text-align: center; color: #fff; background-color: #21409A !important; }
.footer .icon_box { text-align: center; padding-bottom: 35px; }
.footer .icon_box a { display: inline-block; color: #fff; font-size: 18px; }
.footer .icon_box a:hover { color: #fff; }
.footer .icon_box p { padding: 0; margin: 0; }
.footer .icon_box_icon { display: inline-block; margin: 0 auto 20px auto; position: relative; width: auto; height: auto; background: none; -webkit-border-radius: 0; border-radius: 0; }
.footer .icon_box_icon img { width: auto; height: auto; }
.copyright { padding-top: 24px; }

/* Socials */
ul.social_links { padding: 0; margin: 0; list-style: none; text-align: center; font-size: 0; line-height: 0; }
ul.social_links li { padding: 0; margin: 0 5px 10px 5px; display: inline-block; vertical-align: top; }
ul.social_links li:before, ul.social_links li:after { display: none; }
ul.social_links li a.fb_link, ul.social_links li a.tweet_link, ul.social_links li a.google_link { width: 30px; height: 29px; padding: 0; display: block; margin: 0; text-indent: -9999px; background-image: url(../img/sprite.png); background-repeat: no-repeat; }
ul.social_links li a.fb_link { background-position: -90px 0; }
ul.social_links li a.fb_link:hover { background-position: -90px -29px; }
ul.social_links li a.tweet_link { background-position: -130px 0; }
ul.social_links li a.tweet_link:hover { background-position: -130px -29px; }
ul.social_links li a.google_link { background-position: -170px 0; }
ul.social_links li a.google_link:hover { background-position: -170px -29px; }

/* Padding & Margin */
.pl15 { padding-left: 15px; }
.pr15 { padding-right: 15px; }
.pt45 { padding-top: 45px; }
.pt75 { padding-top: 75px; padding-bottom: 75px; }
.pt80 { padding-top: 80px; }
.pb35 { padding-bottom: 35px; }
.pb65 { padding-bottom: 65px; }
.pb80 { padding-bottom: 80px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb25 { margin-bottom: 25px; }
.mb34 { margin-bottom: 34px; }
.mb41 { margin-bottom: 41px !important; }
.mb48 { margin-bottom: 48px; }
.mb55 { margin-bottom: 55px; }
.mb65 { margin-bottom: 65px; }
.mb100 { margin-bottom: 127px; }
.ml-30 { margin-left: -30px; }
.mr-30 { margin-right: -30px; }
.img100 { width: 100%; height: auto; }
.phone-no { font-size: 20px; color: #EE4023; text-align: right; }

/* ===================== RESPONSIVE (media queries are now properly closed) ===================== */

@media only screen and (max-width: 520px) {
    .full_slider_caption .shortcode_button { display: none; }
    .icon_box p a { margin-bottom: 10px !important; }
    .pt80 { padding-top: 0; text-align: left; }
    .mobile_menu ul { margin-left: -32px !important; }
    .footer .icon_box a { font-size: 16px; }
    .og-grid { margin: 0; }
    .og-grid li { width: 100%; padding: 0; }
    .og-grid a.team_link.active:after { display: none; }
    .team_title { padding-bottom: 30px; }
    .full_slider_caption p { display: none; }
}

@media only screen and (max-width: 767px) {
    .full_slider_caption { font-size: 11px; line-height: 18px; }
    .full_slider_caption p { margin-bottom: 10px; }
    .slide_title { line-height: 22px; font-size: 18px; padding-bottom: 10px; }
    .full_slider_caption .shortcode_button { margin: 5px 7px 0 0; }
    #top { padding: 5px; position: fixed !important; width: 100%; z-index: 999; top: 0; left: 0; box-shadow: 0 1px 3px rgba(0, 0, 0, 0.18); background: #ffffff; }
    #top header nav { display: none !important; }
    #home { margin-top: 65px; }
    #logo a { color: #262626; }
    header:before, header .container:before { display: none !important; }
    a.menu_toggler { display: inline-block; float: right; margin: -17px 20px 0 0; width: 34px; height: 34px; position: absolute; overflow: hidden; right: 0; top: 50%; }
    a.menu_toggler:before { content: ""; display: block; position: absolute; left: 7px; top: 7px; width: 20px; height: 20px; background: url(../img/sprite.png) no-repeat -110px -69px; }
    .mobile_menu_wrapper { margin-top: 9px !important; display: block; background: #000; position: fixed; width: 100%; z-index: 999; top: 52px; left: 0; padding: 15px 40px 20px 20px; }
    .mobile_menu_wrapper a { color: #ffffff; font-size: 14px; line-height: 42px !important; text-transform: uppercase; }
    .mobile_menu_wrapper a:hover { color: #ffffff; }
    .full_slider.preloader { background-image: none !important; }
    .cover50 { position: static; height: 300px; width: calc(100% + 30px); margin-left: -15px; }
    .ml-30, .mr-30 { margin-left: 0; margin-right: 0; }
    .image-grid .element { width: 100%; }
}

@media only screen and (min-width: 768px) and (max-width: 992px) {
    .container { width: 760px; }
    .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11 { float: left; }
    .col-md-1 { width: 8.333333333333332%; }
    .col-md-2 { width: 16.666666666666664%; }
    .col-md-3 { width: 25%; }
    .col-md-4 { width: 33.33333333333333%; }
    .col-md-5 { width: 41.66666666666667%; }
    .col-md-6 { width: 50%; }
    .col-md-7 { width: 58.333333333333336%; }
    .col-md-8 { width: 66.66666666666666%; }
    .col-md-9 { width: 75%; }
    .col-md-10 { width: 83.33333333333334%; }
    .col-md-11 { width: 91.66666666666666%; }
    .col-md-12 { width: 100%; }
}

@media (min-width: 992px) {
    .container { width: 990px; }
    .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { float: left; }
    .col-md-12 { width: 100%; }
    .col-md-11 { width: 91.66666666666666%; }
    .col-md-10 { width: 83.33333333333334%; }
    .col-md-9 { width: 75%; }
    .col-md-8 { width: 66.66666666666666%; }
    .col-md-7 { width: 58.333333333333336%; }
    .col-md-6 { width: 50%; }
    .col-md-5 { width: 41.66666666666667%; }
    .col-md-4 { width: 33.33333333333333%; }
    .col-md-3 { width: 25%; }
    .col-md-2 { width: 16.666666666666664%; }
    .col-md-1 { width: 8.333333333333332%; }
}

@media only screen and (max-width: 1025px) {
    .stretch { background-attachment: scroll; }
}

@media only screen and (min-width: 1200px) {
    .container { width: 1200px; }
}

/* Tablet: no menu toggle exists in the HTML, so keep only the phone button */
@media (max-width: 991px) {
    .navmenu ul li:not(:last-child) { display: none; }
}

@media (max-width: 1024px) {
    .slides-navigation a.prev { left: -20px; }
    .slides-navigation a.next { right: -20px; }
    .testimony .owl-nav .owl-prev { left: -20px; }
    .testimony .owl-nav .owl-next { right: -20px; }
}

@media (max-width: 768px) {
    .navbar-toggle { clear: left; float: right; }
    .topbar { height: auto; }
    .topbar-menu, .topbar-sosmed { margin-left: 0; margin-bottom: 0; }
    .nav > li > a { padding: 10px 6px; }
    .box-icon-1 .icon { clear: left; display: block; width: 100%; text-align: center; }
    .box-icon-1 .body-content { text-align: center; margin-left: 0; }
    .container-nav .btn-orange-cta { position: absolute; right: 10px; top: 0; }
    .wrap-caption { width: 100%; }
    .box-team .box-image, .box-team .body-content { width: 100%; }
    .btn-sidebar.btn, .btn-sidebar.btn-primary, .btn-sidebar.btn-secondary, .btn-sidebar.btn-white { padding: 15px 25px; }
    .call_mobile { display: flex; position: fixed; bottom: 1px; width: 100%; justify-content: space-evenly; z-index: 9; }
}

@media (max-width: 479px) {
    .topbar { display: none; }
    .navbar-main .navbar-brand { top: 7px; }
    .navbar-main .navbar-brand > img { width: 60%; }
    .contact-info { clear: right; width: 100%; }
    .contact-info > div { display: block; margin-right: 0; }
    .navbar-nav .open .dropdown-menu > li > a { color: #999999; }
    .bos-quote .bos-photo { clear: left; display: block; width: auto; margin-bottom: 20px; }
    .bos-quote .bos-text { clear: left; display: block; margin-left: 0; }
    h2, .banner-page .title-page { font-size: 20px !important; }
    .box-partner .item .box-image { clear: left; }
    .box-partner .item .box-info { width: inherit; margin-left: 0; }
    .career-tabs .nav-tabs > li { width: 100%; clear: left; }
    .nav > li > a { padding: 10px 25px; }
    .testimonial-1 .media { clear: both; display: block; max-width: 300px; margin-bottom: 40px; margin-right: 0; }
    .testimonial-1 .body { clear: both; display: block; }
    .cta .cta-info { width: 100%; }
}

/* Floating buttons */
.wp-button { margin-top: 4px; }
.ph-button { margin-top: 15px; font-size: 22px; }
.whatsapp, .phone { position: fixed; width: 50px; height: 50px; right: 20px; color: #fff; border-radius: 50px; text-align: center; font-size: 19px; z-index: 100; padding-top: 10px; }
.phone:hover { color: #fff !important; background-color: #21409A; }
.whatsapp:hover { color: #fff !important; background-color: #25d366; }
.phone { background-color: #21409A; bottom: 40px; }
.whatsapp { background-color: #25d366; bottom: 100px; }

.phone-icon { margin-right: 8px; color: #EE4023; display: inline-block; animation: phone-bounce 1s infinite; }
@keyframes phone-bounce { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-5px); } }

.logo-text { font-size: 20px; font-weight: 700; color: #000; text-decoration: none; letter-spacing: 1px; }
#logos a { display: flex; align-items: center; }

/* Animated phone icon */
.call-icon { font-size: 18px; color: #fff; animation: ring 1.5s infinite; transform-origin: center; }
@keyframes ring {
    0% { transform: rotate(0deg); } 10% { transform: rotate(15deg); } 20% { transform: rotate(-10deg); }
    30% { transform: rotate(15deg); } 40% { transform: rotate(-5deg); } 50% { transform: rotate(10deg); }
    60% { transform: rotate(0deg); } 100% { transform: rotate(0deg); }
}
.call-icon:hover { animation: none; transform: scale(1.2); }