/*
Theme Name: WeThreeDesign
Author: (W Thode)
Author URI: https://keystrokedigital.com/
Description: Keystroke Custom Responsive Theme
Version: 1.0
*/

@font-face {
    font-family: ChronicleDisplayLight;
    src: url("template/fonts/ChronicleDisplayLight.otf") format("opentype");
}

/* Reset */
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 { margin:0; padding:0; border:0; }

/* Type */
* { font-family:raleway,sans-serif; color:#000; font-weight:400; }
p { margin:0px 0px 15px 0px; color:inherit; font-family:inherit; font-weight:inherit; }
h1, h1 a:link, h1 a:visited { font-size:50px; line-height:54px; margin:30px 0px 15px 0px; color:#222; font-family: ChronicleDisplayLight, sans-serif; }
h2, h2 a:link, h2 a:visited { font-size:40px; line-height:44px; margin:25px 0px 12px 0px; color:#222; font-family: ChronicleDisplayLight, sans-serif; }
h3, h3 a:link, h3 a:visited { font-size:30px; line-height:34px; margin:25px 0px 10px 0px; color:#222; font-family: ChronicleDisplayLight, sans-serif; }
h4, h4 a:link, h4 a:visited { font-size:24px; line-height:28px; margin:10px 0px 6px 0px; color:#222; font-family: ChronicleDisplayLight, sans-serif; }
h5, h5 a:link, h5 a:visited { font-size:20px; line-height:30px; margin:5px 0px 3px 0px; color:#222; font-family: ChronicleDisplayLight, sans-serif; }
a:link, a:visited { color:#666666; text-decoration:none; font-family:inherit; font-weight:inherit; }
a:hover, a:active { color:#222222; text-decoration:none; font-family:inherit; font-weight:inherit; }
ul { padding:0px 0px 10px 35px; margin:0px; color:inherit; font-family:inherit; }
ol { padding:0px 0px 10px 35px; margin:0px; color:inherit; font-family:inherit; }
ol li { padding:0px 0px 5px 0px; margin:0px; color:inherit; font-family:inherit; }
ul li { padding:0px 0px 5px 0px; margin:0px; color:inherit; font-family:inherit; }
hr { margin:0px 0px 20px 0px; } 
img { border:none; max-width:100%; height:auto; }
strong { color:inherit; font-family:inherit; font-weight: 700;}
strong a:link, strong a:visited, strong a:hover, strong a:active { }
em { color:inherit; font-family:inherit; font-weight:inherit; }
span { color:inherit; font-family:inherit; font-weight:inherit; }
iframe { max-width:100%; }
table tr td { vertical-align:top; }
div { position:relative; }

/* Fonts */
.font_a { font-family:raleway,sans-serif; }
.font_b { font-family:termina,sans-serif; }
.font_c { }
.font_d { }
.font_f { }

/* Body */
body { margin:0px; padding:0px; background:#f8f4f0; text-align:center; }
body, html { height:100%; }

/* Header Navigation */
.header_navigation { width:100%; height:65px; margin:0px; padding:0px; text-align:center; background:#f8f4f0; position:absolute; bottom:0px; }
.header_navigation .nav_menu { display:none; height:65px; margin:0px; padding:0px; list-style:none; }
.header_navigation .nav_menu li { display:inline-block; margin:0px; padding:0px; text-align:center; font-size:14px; line-height:65px; font-weight:400; letter-spacing:0.3em; text-transform:uppercase; position:relative; }
.header_navigation .nav_menu li:after { content:""; position:absolute; top:24px; right:0px; height:14px; width:1px; border-right:1px solid #000; }
.header_navigation .nav_menu li:last-child:after { border:none; }
.header_navigation .nav_menu a:link, .header_navigation .nav_menu a:visited { display:block; margin:0px; height:65px; padding:0px 50px; color:#000000; text-decoration:none; font-family:ChronicleDisplayLight; }
.header_navigation .nav_menu a:hover, .header_navigation .nav_menu a:active { display:block; margin:0px; height:65px; padding:0px 50px; color:#000000; text-decoration:none; font-family:ChronicleDisplayLight; }
.header_navigation .nav_menu a:link:after, .header_navigation .nav_menu a:visited:after { content:""; position:absolute; bottom:17px; left:50%; right:50%; height:1px; border-bottom:1px solid #000; transition:0.4s; }
.header_navigation .nav_menu a:hover:after, .header_navigation .nav_menu a:active:after { content:""; position:absolute; bottom:17px; left:45px; right:45px; height:1px; border-bottom:1px solid #000; transition:0.4s; }

/* Header Subnavigation */
.header_navigation .nav_menu li ul { top:70px; list-style:none; margin:0px 0px 0px 0px; padding:0px; min-width:200px; position:absolute; z-index:99999; background:rgba(10,44,37,0.95); border-radius:0px 0px 5px 5px; } 
.header_navigation .nav_menu li ul li { display:block; height:35px; margin:0px; padding:0px; font-size:12px; line-height:35px; font-weight:400; text-align:left; border-top:1px solid #FFF; background:none; float:none; }
.header_navigation .nav_menu li ul li a:link, .header_navigation .nav_menu li ul li a:visited { display:block; margin:0px; padding:0px 30px 0px 30px; color:#FFFFFF; text-decoration:none; }
.header_navigation .nav_menu li ul li a:hover, .header_navigation .nav_menu li ul li a:active { display:block; margin:0px; padding:0px 30px 0px 30px; color:#FFFF00; text-decoration:none; }
.header_navigation .nav_menu ul, .header_navigation .nav_menu li:hover ul ul, .header_navigation .nav_menu ul li:hover ul ul { display:none; }
.header_navigation .nav_menu li:hover ul, .header_navigation .nav_menu ul li:hover ul, .header_navigation.nav_menu ul li ul li:hover ul { display:block; }

/* Header Navigation Mobile */
.header_navigation_mobile { display:none; }

/* Footer Navigation */
.footer_navigation { width:100%; height:30px; margin:0px auto; padding:0px; text-align:center; }
.footer_navigation .nav_menu { height:30px; margin:0px; padding:0px; list-style:none; }
.footer_navigation .nav_menu li { display:inline-block; margin:0px; padding:0px; text-align:center; font-size:12px; line-height:30px; font-weight:400; letter-spacing:0.3em; font-family:termina,sans-serif; text-transform:uppercase; position:relative; }
.footer_navigation .nav_menu li:after { content:""; position:absolute; top:8px; right:0px; height:13px; width:1px; border-right:1px solid #FFF; }
.footer_navigation .nav_menu li:last-child:after { border:none; }
.footer_navigation .nav_menu a:link, .footer_navigation .nav_menu a:visited { display:block; margin:0px; height:30px; padding:0px 50px; color:#FFFFFF; text-decoration:none; transition:all 0.1s; }
.footer_navigation .nav_menu a:hover, .footer_navigation .nav_menu a:active { display:block; margin:0px; height:30px; padding:0px 50px; color:#f8f4f0; text-decoration:none; transition:all 0.1s; }
.footer_navigation .nav_menu a:link:after, .footer_navigation .nav_menu a:visited:after { content:""; position:absolute; bottom:0px; left:50%; right:50%; height:1px; border-bottom:1px solid #FFF; transition:0.4s; }
.footer_navigation .nav_menu a:hover:after, .footer_navigation .nav_menu a:active:after { content:""; position:absolute; bottom:0px; left:45px; right:45px; height:1px; border-bottom:1px solid #FFF; transition:0.4s; }

/* Header */
.header_container_mini { width:100%; height:40vh; min-height:350px; margin:0px; padding:0px; position:relative; }
.header_container_short { width:100%; height:80vh; min-height:700px; margin:0px; padding:0px; position:relative; }
.header_container_tall { width:100%; height:100vh; min-height:700px; margin:0px; padding:0px; position:relative; }
.header { width:100%; height:auto; margin:0px; padding:0px; text-align:center; position:relative; z-index:999; }
.header_portfolio { display:inline-block; margin:0px; padding:0px; position:absolute; top:0px; left:50%; transform:translateX(-50%); z-index:999; }
.header_logo { display:inline-block; width:510px; height:auto; margin:130px auto 0px auto; padding:0px; opacity:0; }
.header_banner_mini { width:100%; height:40vh; min-height:350px; margin:0px; padding:0px; position:fixed; background-size:cover; background-position:center; }
.header_banner_short { width:100%; height:80vh; min-height:700px; margin:0px; padding:0px; position:fixed; background-size:cover; background-position:center; }
.header_banner_tall { display:none; width:100%; height:100vh; min-height:700px; margin:0px; padding:0px; position:fixed; background-size:cover; background-position:center; }
.header_mask { width:100%; margin:0px; padding:0px; position:absolute; top:0px; bottom:0px; left:0px; right:0px; background:linear-gradient(to bottom, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.3) 25%, rgba(0,0,0,0) 50%); }

/* Banner */
.banner_container { width:90%; margin:0px auto; padding:35px 0px; text-align:center; }
.banner_container h1 { margin:0px; font-weight:bold; color:#fff; }

/* Footer */
.footer_container { margin:0px; padding:0px; background:#000; }
.footer { margin:0px auto; padding:0px 0px; width:100%; text-align:center; overflow:auto; }
.footer_logo { width:180px; height:auto; margin:30px auto 30px auto; padding:0px; }
.footer_social { display:inline-block; margin:60px auto 30px auto; padding:0px; }
.footer_social i { margin:0px 10px; color:#FFF; font-size:36px; line-height:36px; }
.footer_contact { margin:0px 20px 45px 20px; padding:0px; color:#FFF; font-size:13px; line-height:20px; text-align:center; }

/* Main */
#main {  }

/* Content */
.content_container { margin:0px; padding:0px; text-align:center; background:#FFF; position:relative; overflow:auto; }
.content_container_a { margin:0px; padding:0px; text-align:center; position:relative; background:#f8f4f0; overflow:auto; }
.content_container_b { margin:0px; padding:0px; text-align:center; position:relative; background:#000000; overflow:auto; }
.content_feature { margin:0px; padding:0px 0px 45% 0px; text-align:center; background-color:#FFF; background-size:cover; background-position:right center; position:relative; overflow:hidden; }
.content_banner { margin:0px; padding:0px; min-height:450px; text-align:center; background-size:cover; background-position:center; position:relative; overflow:hidden; }
.content { display:block; width:100%; max-width:1440px; min-height:100px; margin:0px auto; padding:0px; overflow:auto; position:relative; }
.content_wide { display:block; width:100%; margin:0px; padding:0px; overflow:auto; position:relative; }
.content_narrow { display:block; width:100%; max-width:990px; min-height:100px; margin:0px auto; padding:0px; overflow:auto; position:relative; }
.content_left { display:block; margin:0px; padding:0px; vertical-align:top; float:left; }
.content_right { display:block; margin:0px; padding:0px; vertical-align:top; float:right; }
.content_full { display:block; margin:0px; padding:0px; vertical-align:top; }
.content_border { border-left:1px solid #DDD; box-sizing:border-box; }
.content_one { width:8%; }
.content_two { width:17% }
.content_three { width:25% }
.content_four { width:33%; }
.content_five { width:41%; }
.content_six { width:50%; }
.content_seven { width:59%; }
.content_eight { width:67%; }
.content_nine { width:75%; }
.content_ten { width:83%; }
.content_eleven { width:92%; }
.content_twelve { width:100%; }

/* Containers */
.container_title { margin:40px 30px 20px 30px; padding:0px; color:#333; font-size:55px; line-height:60px; text-align:left; }
.container_text { margin:20px 20px 30px 20px; padding:20px 40px;font-size:15px; line-height:25px; text-align:left; overflow:auto; }

/* Post */
.post_title { margin:15px 20px 0 20px; padding:0px; color:#1B4D92; font-size:45px; line-height:50px; font-weight:700; text-align:left; }
.post_title h1 { margin:0px; padding:0px; color:#fff; font-size:45px;line-height:50px; font-weight:900; text-align:center; }
.post_text { margin:20px 20px 30px 20px; padding:0px; font-size:16px; line-height:34px; text-align:left; overflow:auto; }
.post_text iframe { margin:0px 0px 15px 0px; }
.post_text img { max-width:100%; }
.post_intro { margin:20px 20px 20px 20px; padding:10px 40px; font-size:15px; line-height:25px; text-align:center; overflow:auto; }
.post_link { margin:0px; padding:0px; font-size:22px; line-height:35px; float:left; }
.post_header { margin:45px 20px 15px 20px; padding:0px; color:#444; font-size:60px; line-height:65px; text-align:center; }
.post_subhead { margin:0px 20px; padding:0px; color:#666; font-size:26px; line-height:30px; text-align:center; }
.post_header_a { margin:45px 20px 15px 20px; padding:0px; color:#FFF; font-size:60px; line-height:65px; text-align:center; }
.post_subhead_a { margin:0px 20px; padding:0px; color:#FFF; font-size:26px; line-height:30px; text-align:center; }
.post_subhead_a a:link, .post_subhead_a a:visited, .post_subhead_a a:hover, .post_subhead_a a:active { color:#FFF; text-decoration:underline; }

/* Sidebar */
.sidebar_featured_image { margin:40px 0 0;width:100%; height:300px; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover;}
.sidebar_contact_wrap h4 { text-align:left;}
.sidebar_contact_wrap p { font-size: 14px;margin-bottom:4px; text-align:left;}
.sidebar_contact_info a.button { float:left; margin: 8px 0;}
.sidebar_contact_wrap h4 { color:#c7265a; font-weight: 900; text-align:left;}
.sidebar_content { margin-top:60px;}

/* Text */
.text_color_a { color:#000000; }
.text_color_b { color:#333333; }
.text_color_c { color:#666666; }
.text_color_d { color:#999999; }
.text_color_e { color:#CCCCCC; }
.text_color_f { color:#FFFFFF; }

/* Link */
.link_button { height:60px; display:inline-block; margin:10px auto; padding:0px 45px; color:#000; font-size:12px; line-height:60px; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; }
.link_button:link, .link_button:visited { color:#000; text-decoration:none; background:#f8f4f0; font-weight:400; transition:all 0.3s; font-family:termina; }
.link_button:hover, .link_button:active { color:#000; text-decoration:none; background:#ecdccf; font-weight:400; transition:all 0.3s; font-family:termina; }

/* Forms */
.form_container { margin:30px 20px; padding:20px 20px; text-align:left; font-size:16px; line-height:26px; background:#EBEBEB; border-radius:5px; }
.form_body { margin:0px; padding:0px; overflow:auto; }
.form_field { display:block; height:35px; margin:10px 0px; padding:0px 5px; border:1px solid #999; font-size:16px; }
.form_dropdown { display:block; height:30px; margin:10px 0px; padding:0px 0px 0px 5px; border:1px solid #999; font-size:16px; }
.form_textarea { display:block; margin:10px 0px; padding:5px 5px; border:1px solid #999; font-size:16px; line-height:26px; }
.form_button { height:35px; display:inline-block; margin:10px auto; padding:0px 40px; color:#FFF; font-size:20px; line-height:35px; text-align:center; font-family:'Cairo'; background:#519122; border-radius:1px; border:none; -webkit-appearance:none; }

/* Align */
.alignright { float:right; margin:0px 0px 10px 45px; }
.alignleft { float:left; margin:0px 45px 10px 0px; }

/* Admin */
.admin_edit_link { display:inline-block!important; margin:10px 0px!important; padding:5px 10px!important; font-size:10px!important; line-height:10px!important; border-radius:10px!important; position:absolute!important; bottom:5px!important; right:5px!important; z-index:299!important; }
.admin_edit_link:link, .admin_edit_link:visited { background:rgba(0,0,0,0.8)!important; color:#FFF!important; text-decoration:none!important; }
.admin_edit_link:hover, .admin_edit_link:active { background:rgba(0,0,0,1.0)!important; color:#FFF!important; text-decoration:none!important; }

/* Responsive */
.desktop { display:inherit!important; }
.mobile { display:none!important; }


/* Custom Containers ------------------------------------------------------*/

/* Intro */
.intro_line { margin:100px auto; width:1px; height:150px; position:relative; overflow:hidden; }
.intro_line_scroll { height:150px; width:1px; background:#878787; position:absolute; top:-150px; transition:all 0.7s ease; }
.intro_title { width:100%; max-width:1100px; margin:0px auto 100px auto; padding:60px 0px 0px 0px; color:#000; font-size:32px; line-height:50px; letter-spacing:0.02em; text-align:center; text-transform:uppercase; font-family:ChronicleDisplayLight; opacity:0; transition:opacity 1.2s, padding 0.9s; }
.intro_title h1 { margin:0px 110px; color:#000; font-size:32px; line-height:50px; letter-spacing:0.02em; text-align:center; text-transform:uppercase; font-family:ChronicleDisplayLight; }
.intro_title_alt { margin:120px auto 90px auto; padding:60px 0px 0px 0px; }
.intro_text { margin:0px 110px 100px 110px; padding:0px; font-size:17px; line-height:34px; font-weight:300; text-align:center; }
.intro_next {  width:95px; height:48px; margin:0px auto 100px auto; padding:0px; text-align:center; vertical-align:bottom; background:url(template/background/background-intro-next.png) no-repeat bottom center; position:relative; background-size:contain; }
.intro_section_title { display:inline-block; min-width:350px; margin:0px auto 60px auto; padding:30px 30px 0px 30px; font-size:16px; line-height:20px; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; }
.intro_section_title:before { content:""; position:absolute; top:0px; left:50%; right:50%; height:1px; border-top:1px solid #000; transition:all 0.7s; }
.intro_section_title_active:before { left:0%; right:0%; transition:all 0.7s; }
.intro_section_text { margin:0px 110px 100px 110px; padding:0px; font-size:25px; line-height:40px; font-weight:300; text-align:center; }

/* Home */
.home_about_banner { margin:0px; padding:0px 0px 50% 0px; position:relative; background-position:bottom center; background-size:cover; }
.home_about_banner_text { width:100%; margin:0px; padding:0px; position:absolute; bottom:0px; background:linear-gradient(to top, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.3) 25%, rgba(0,0,0,0) 50%);}
.home_about_banner_title { display:inline-block; width:100%; max-width:1440px; margin:0px auto; padding:30% 30px 30px 10%; box-sizing:border-box; color:#FFF; font-size:14px; line-height:21px; letter-spacing:0.3em; text-align:left; text-transform:uppercase; font-family:termina; transition:all 0.7s ease; }
.home_about_banner_line { display:inline-block; width:0%; height:1px; margin:10px 20px; padding:0px; background:#FFF; vertical-align:bottom; box-sizing:border-box; transition:all 0.7s ease; }
.home_about_header { display:flex; justify-content:space-evenly; align-items:stretch; margin:180px 110px 90px 110px; padding:0px; overflow:auto; transition:all 0.7s; }
.home_about_who { flex-basis:54%; margin:0px; padding:0px 7% 0px 0px; font-size:32px; line-height:50px; text-align:left; text-transform:uppercase; font-family:ChronicleDisplayLight; box-sizing:border-box; position:relative; }
.home_about_who h2 { margin:0px 0px 0px 0px; font-size:32px; line-height:50px; opacity:0; transition:all 1.2s; }
.home_about_who em { font-style:normal; background-image:linear-gradient(#fff 50%, #f8f4f0 50%); }
.home_about_who:after { content:""; position:absolute; top:10px; bottom:100%; right:0px; width:1px; border-right:1px solid #000; transition:all 0.7s; }
.home_about_who_active:after { top:10px; bottom:10px; transition:all 0.7s; }
.home_about_title { flex-basis:45%; margin:10px 0px 10px 7%; padding:0px 0px 0px 130px; background:#f8f4f0 url(template/background/background-triple-line.png) left no-repeat; box-sizing:border-box; position:relative; opacity:0; transition:all 1.2s; }
.home_about_title_text { margin:0px; padding:0px 10% 0px 0px; font-size:13px; line-height:26px; letter-spacing:0.3em; font-weight:400; text-align:left; text-transform:uppercase; font-family:termina; position:absolute; top:50%; transform:translateY(-50%); }
.home_about_text { margin:0px 110px; padding:0px; font-size:16px; line-height:34px; font-weight:300; text-align:left; transition:all 0.7s; }
.home_about_footer { margin:100px 110px; padding:10px; font-size:13px; line-height:30px; font-weight:300; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; background:#f8f4f0; }
.home_featured { display:flex; justify-content:space-evenly; align-items:center; margin:0px; padding:180px 10%; background:#f8f4f0; }
.home_featured_logos { margin:0px 2%; padding:0px; text-align:center; }
.home_featured_logos img { width:auto; max-height:100px; margin:0px auto; }

/* Slider */
.slide_container { display:block; width:auto; margin:0px auto; padding:0px 0px 29% 0px; position:relative; overflow:hidden; }
.slide_panel { display:block; width:100%; margin:0px; padding:0px; background-position:top center; background-size:cover; background-repeat:no-repeat; text-align:center; position:absolute; top:0px; bottom:0px; }
.slide_label { background:rgba(255,255,255,0.9); display:inline-block; min-width:200px; margin:0px; padding:5px 25px 5px 20px; font-size:12px; line-height:25px; font-weight:600; text-align:center; text-shadow:none; border-radius:0px; position:absolute; bottom:0px; left:0px; z-index:9001; }
.slide_prev { display:inline-block; width:30px; height:20px; margin:0px; padding:0px; position:absolute; top:0px; left:1%; z-index:9003; cursor:pointer; transition:all 0.2s; }
.slide_next { display:inline-block; width:30px; height:20px; margin:0px; padding:0px; position:absolute; top:0px; right:1%; z-index:9002; cursor:pointer; transition:all 0.2s; }
.slide_show { display:block; left:0%; }
.slide_hide { display:none; }
.slide_buttons { display:inline-block; margin:0px; padding:0px; overflow:auto; text-align:center; }
.slide_navigation { width:100%; margin:0px 0px 100px 0px; padding:0px; overflow:auto; position:relative; }
.slide_navigation_button { display:inline-block; width:10px; height:10px; margin:0px 4px; padding:0px; background:#cdd3d4; border-radius:5px; cursor:pointer; opacity:0.5; }
.slide_navigation_button_active { display:inline-block; width:10px; height:10px; margin:0px 4px; padding:0px; background:#cdd3d4; border-radius:5px; cursor:auto; opacity:1.0; }
.slide_container_mobile { display:none; }

/* Carousel */
.carousel { display:flex; flex-wrap:nowrap; justify-content:space-between; align-items:center; margin:0px; padding:0px; overflow:auto; }
.carousel_block { display:block; flex-basis:33%; flex-shrink:1; margin:0px; padding:0px; text-align:center; }
.carousel_image { margin:0px; padding:0px 0px 85% 0px; background-size:cover; position:relative; }
.carousel_mask { margin:0px; padding:0px; background:rgba(0,0,0,0.4); position:absolute; top:0px; bottom:0px; left:0px; right:0px; transition:all 0.7s; }
.carousel_mask h2 { width:100%; margin:0px 0px; color:#FFF; font-size:12px; line-height:20px; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; position:absolute; top:50%; transform:translateY(-50%); }
.carousel_block:hover .carousel_mask { background:rgba(0,0,0,0.2); transition:all 0.7s; }

/* Services */
.service_menu { display:flex; justify-content:center; align-items:stretch; margin:0px; padding:120px 0px; background:#f8f4f0; }
.service_menu_block { flex-basis:15%; margin:0px; padding:0px; text-align:left; box-sizing:border-box; border-right:1px solid #efebe7; cursor:pointer; transition:all 0.2s; }
.service_menu_block:last-child { border-right:none; }
.service_menu_count { display:inline-block; width:65px; margin:0px 20% 30px 20%; padding:0px 0px 30px 0px; color:#b8b5b2; font-size:46px; line-height:46px; font-family:ChronicleDisplayLight; border-bottom:1px solid #dedbd7; transition:all 0.2s; }
.service_menu_title { margin:0px 20%; padding:0px; color:#b8b5b2; font-size:14px; line-height:27px; letter-spacing:0.3em; font-weight:400; text-align:left; text-transform:uppercase; font-family:termina; transition:all 0.2s; }
.service_menu_block:hover .service_menu_count { color:#000; width:80px; border-bottom:1px solid #000; transition:all 0.7s; } 
.service_menu_block:hover .service_menu_title { color:#000; transition:all 0.7s; }
.services { margin:0px 0px 200px 0px; padding:0px; position:relative; }
.service_block { margin:200px 0px 0px 0px; padding:0px 0px 45% 0px; overflow:auto; }
.service_image { margin:0px; padding:0px; background-size:cover; background-position:center; position:absolute; top:0px; bottom:0px; left:0px; right:38%; z-index:100; }
.service_text { min-height:200px; margin:0px; padding:40px 70px; font-size:16px; line-height:34px; font-weight:300; text-align:left; background:#f8f4f0; position:absolute; top:55%; left:48%; right:15%; z-index:200; transform:translateY(-55%); overflow:visible; opacity:0; transition:all 0.7s; }
.service_text h2 { margin:0px 0px 20px 0px; font-size:29px; line-height:40px; font-family:ChronicleDisplayLight; text-transform:uppercase; }
.service_text img { margin:50px 0px 0px -100px; padding:0px; float:left; }
.service_icon { display:inline-block; width:60px; height:45px; margin:50px 0px 0px -100px; padding:0px; border-top:1px solid #000; border-bottom:1px solid #000; float:left; }
.service_icon_line { display:block; height:1px; margin:22px 0px; padding:0px; border-top:1px solid #000; }
.service_block:nth-child(even) .service_image { left:38%; right:0px; }
.service_block:nth-child(even) .service_text { left:15%; right:48%; }
.service_block:nth-child(even) .service_text img { margin:50px -100px 0px 0px; padding:0px; float:right; }
.service_top { margin:0px 0px 0px 0px; padding:0px; position:absolute; bottom:0px; right:20px; font-size:12px; cursor:pointer; transition:all 0.2s; }
.service_top i { color:#b8b5b2; transition:all 0.2s; }
.service_top:hover i { color:#000000; transition:all 0.2s; }
.service_cta { max-width:800px; margin:0px auto; padding:200px 0px; background:#f8f4f0; overflow:auto; }
.service_cta_title { display:inline-block; margin:0px auto 60px auto; padding:30px 30px 0px 30px; font-size:16px; line-height:20px; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; position:relative; }
.service_cta_title:before { content:""; position:absolute; top:0px; left:50%; right:50%; height:1px; border-top:1px solid #000; }
.service_cta_title_active:before { left:0%; right:0%; transition:all 0.7s; }
.service_cta_text { margin:0px 30px; padding:0px; font-size:16px; line-height:34px; font-weight:300; text-align:center; }
.service_cta .link_button:link, .service_cta .link_button:visited { margin:40px auto 0px auto; background:#cda36d; color:#FFF; font-size:12px; font-weight:400; }
.service_cta .link_button:hover, .service_cta .link_button:active { margin:40px auto 0px auto; background:#000000; color:#FFF; font-size:12px; font-weight:400; }

/* Portfolio */
.portfolio_types { height:100vh; width:100%; min-height:630px; margin:0px; padding:0px; position:relative; z-index:0; }
.portfolio_type { display:inline-block; width:50%; height:100vh; min-height:630px; margin:0px; padding:0px; background-size:cover; background-position:bottom center; position:relative; float:left; }
.portfolio_type_mask { margin:0px; padding:0px; position:absolute; top:0px; bottom:0px; left:0px; right:0px; background:rgba(0,0,0,0.4); transition:all 0.7s; }
.portfolio_type_text { display:block; margin:0px; padding:15px 0px; position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); }
.portfolio_type_title { margin:0px; padding:0px; color:#FFF; font-size:16px; line-height:30px; font-weight:300; letter-spacing:0.3em; font-family:termina; text-align:center; text-transform:uppercase;  }
.portfolio_type:hover .portfolio_type_mask { background:rgba(0,0,0,0.2); transition:all 0.7s; }
.portfolio_type_text:after { content:""; position:absolute; bottom:0px; left:50%; right:50%; height:1px; border-bottom:1px solid #FFF; transition:0.4s; }
.portfolio_type:hover .portfolio_type_text:after, .portfolio_type:active .portfolio_type_text:after { content:""; position:absolute; bottom:0px; left:0px; right:0px; height:1px; border-bottom:1px solid #FFF; transition:0.4s; }

/* About */
.about_banner { margin:0px 0px 180px 0px; padding:0px 0px 60% 0px; position:relative; background-position:bottom center; background-size:cover; }
.about_team { display:flex; flex-wrap:nowrap; justify-content:space-around; align-items:stretch; margin:90px 5% 180px 5%; padding:0px; overflow:auto; }
.about_team_block { display:block; width:25%; margin:0px 5px; padding:0px 0px 60px 0px; background:#f8f4f0; box-sizing:border-box; position:relative; }
.about_team_image { margin:0px; padding:0px; aspect-ratio:1/1.5; text-align:center; overflow:hidden; position:relative; }
.about_team_image img { max-width:100%; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); transition:all 0.5s; }
.about_team_mask { position:absolute; top:0px; bottom:0px; left:0px; right:0px; background:rgba(255,255,255,0.1); transition:all 0.3s; }
.about_team_text { margin:45px 40px; padding:0px; font-size:16px; line-height:34px; font-weight:300; text-align:left;  }
.about_team_text h2 { margin:0px 0px 30px 0px; font-size:29px; line-height:40px; text-transform:uppercase; font-family:ChronicleDisplayLight; }
.about_team_arrow { display:inline-block; width:30px; height:10px; margin:0px; padding:0px; position:absolute; bottom:60px; left:40px; overflow:hidden; transition:all 0.2s; }
.about_team_arrow img { max-width:60px; width:60px; height:10px; margin:0px 0px 0px -30px; float:right; }
.about_team_block a:hover .about_team_arrow { width:60px; transition:all 0.3s; }
.about_team_block a:hover .about_team_image img { max-width:102%; margin:0px auto; transition:all 0.5s; }
.about_collaboration { margin:180px 60px; padding:0px; overflow:hidden; position:relative; }
.about_collaboration_text { width:33%; margin:80px 0px; padding:70px 60px; font-size:16px; line-height:34px; font-weight:300; text-align:left; background:#f8f4f0; z-index:1; }
.about_collaboration_text h2 { margin:0px 0px 30px 0px; font-size:32px; line-height:50px; text-transform:uppercase; font-family:ChronicleDisplayLight; }
.about_collaboration_text img { margin:180px -95px 0px 0px; padding:0px; float:right; }
.about_collaboration_image { width:70%; margin:0px 0px; padding:0px 0px 64% 0px; background-position:top right; background-size:cover; position:absolute; right:0px; top:0px; }

/* Team */
.team_bio { display:flex; justify-content:flex-start; align-items:stretch; margin:0px 5% 240px 5%; padding:0px; background:#f8f4f0; }
.team_bio_image { flex-basis:40%; margin:0px; padding:0px 0px 60% 0px; box-sizing:border-box; overflow:hidden; position:relative; }
.team_bio_image img { width:auto; min-width:100%; height:auto; position:absolute; top:0px; left:50%; transform:translateX(-50%); }
.team_bio_content { flex-basis:60%; margin:0px; padding:0px; box-sizing:border-box; background:#f8f4f0; box-sizing:border-box; position:relative; }
.team_bio_content img { margin:120px 0px 0px -30px; padding:0px; float:left; }
.team_bio_text { margin:75px 85px; padding:0px; font-size:16px; line-height:34px; font-weight:300; text-align:left; }
.team_bio_text h1 { margin:0px 0px 30px 0px; padding:0px; font-size:32px; line-height:40px; font-family:ChronicleDisplayLight; text-transform:uppercase; }
.team_bio_instagram { margin:0px 85px; padding:0px; position:absolute; bottom:60px; left:0px; }
.team_bio_instagram i { color:#e8d6c4; font-size:50px; line-height:50px; }

/* Projects */
.projects_header { width:100%; max-width:1100px; margin:0px auto 60px auto; padding:0px; color:#000; font-size:32px; line-height:50px; letter-spacing:0.02em; text-align:center; text-transform:uppercase; font-family:ChronicleDisplayLight; }
.projects_header h2 { margin:0px; color:#000; font-size:32px; line-height:50px; letter-spacing:0.02em; text-align:center; text-transform:uppercase; font-family:ChronicleDisplayLight; }
.projects { display:flex; flex-wrap:wrap; justify-content:space-evenly; align-items:stretch; margin:0px 0px 200px 0px; padding:0px; }
.project_block { display:inline-block; flex-basis:49%; margin:0.5%; padding:0px 0px 33% 0px; position:relative; background-position:center; background-size:cover; }
.project_mask { margin:0px; padding:0px; background:rgba(0,0,0,0.4); position:absolute; top:0px; bottom:0px; left:0px; right:0px; transition:all 0.7s; }
.project_text { width:90%; margin:0px 5%; padding:0px; position:absolute; top:55%; transform:translateY(-55%); transition:all 0.7s; }
.project_title { display:inline-block; margin:0px auto; padding:15px 0px; color:#FFF; font-size:15px; line-height:22px; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; transition:all 0.6s; }
.project_title:after { content:""; position:absolute; bottom:0px; left:50%; right:50%; height:1px; border-bottom:1px solid #000; transition:0.6s; }
.project_date { margin:0px; padding:30px 0px 0px 0px; color:#000; font-size:12px; line-height:13px; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; opacity:0%; transition:all 0.7s; }
.project_arrow { width:30px; height:11px; margin:30px auto 0px auto; padding:0px; background:url(template/icons/icon-go-black.png) right no-repeat; transition:all 0.7s; }
.project_block:hover .project_mask, .project_block:active .project_mask { background:rgba(248,244,240,0.9); transition:all 0.6s; }
.project_block:hover .project_title, .project_block:active .project_title { color:#000; font-weight:400; transition:all 0.6s; }
.project_block:hover .project_title:after, .project_block:active .project_title:after { content:""; position:absolute; bottom:0px; left:0%; right:0%; height:1px; border-bottom:1px solid #000; transition:0.6s; }
.project_block:hover .project_text, .project_block:active .project_text { top:50%; transform:translateY(-50%); transition:all 0.6s; }
.project_banner { margin:0px 0px 200px 0px; padding:0px 0px 40% 0px; background-size:cover; background-position:center; }
.project_header { display:flex; justify-content:space-evenly; align-items:stretch; margin:120px 30px 60px 30px; padding:0px; overflow:auto; }
.project_intro { flex-basis:50%; margin:0px; padding:10px 5% 0px 0px; font-size:16px; line-height:34px; font-weight:300; text-align:left; box-sizing:border-box; position:relative; }
.project_intro h1 { margin:0px 0px 10px 0px; font-size:32px; line-height:50px; font-weight:400; text-transform:uppercase; font-family:ChronicleDisplayLight; }
.project_intro:after { content:""; position:absolute; top:10px; bottom:10px; right:0px; width:1px; border-right:1px solid #000; }
.project_completed { flex-basis:45%; margin:10px 0px 10px 5%; padding:90px 0px 90px 130px; background:#f8f4f0 url(template/background/background-triple-line.png) left no-repeat; box-sizing:border-box; position:relative; }
.project_completed_date { margin:0px; padding:0px 10% 0px 0px; font-size:12px; line-height:26px; letter-spacing:0.3em; font-weight:400; text-align:left; text-transform:uppercase; font-family:termina; position:absolute; top:50%; transform:translateY(-50%); }
.project_description { margin:0px 30px 90px 30px; padding:0px; font-size:16px; line-height:34px; font-weight:300; text-align:left; }
.project_gallery { margin:0px 30px; height:100%; padding:0px; line-height:0; column-count:2; column-gap:10px; overflow:auto; vertical-align:top; background-color:#FFF; background-size:50%; background-position:bottom right -5px; background-repeat:no-repeat; }
.project_gallery_link { display:block; width:100%; margin:0px 0px 10px 0px; background-position:center; background-size:cover; overflow:hidden; }
.project_gallery_link img { object-fit:cover; min-width:100%; min-height:100%; }
.project_gallery_link:last-child img { border-bottom:10px solid #FFF; }
.project_gallery_footer { height:45px; margin:15px 30px 200px 30px; padding:0px; color:#000; font-size:13px; line-height:45px; letter-spacing:0.3em; font-weight:400; text-align:right; text-transform:uppercase; font-family:termina; background:url(template/background/background-triple-line.png) left no-repeat; }
.project_gallery_footer a:link, .project_gallery_footer a:visited { color:#000; }
.project_gallery_footer a:hover, .project_gallery_footer a:active { color:#000; }
.project_gallery_arrow { display:inline-block; width:30px; height:10px; margin:16px 30px 0px 10px; padding:0px; transition:all 0.2s; overflow:hidden; float:right; }
.project_gallery_arrow img { max-width:60px; width:60px; height:10px; margin:0px 0px 0px -30px; float:right; }
.project_gallery_footer a:hover .project_gallery_arrow, .project_gallery_footer a:active .project_gallery_arrow { width:60px; margin:16px 0px 0px 10px; transition:all 0.3s; }

/* Contact */
.contact_text { max-width:900px; margin:0px auto 180px auto; padding:0px; font-size:16px; line-height:34px; font-weight:300; text-align:center;  }
.contact_text em { text-transform:uppercase; font-size:13px; font-family:ChronicleDisplayLight; font-style:normal; letter-spacing:0.3em; }
.contact_text a:link, .contact_text a:visited { width:300px; height:60px; display:inline-block; margin:45px 45px; padding:0px 0px; color:#000; font-size:12px; line-height:60px; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; text-decoration:none; background:#f8f4f0; transition:all 0.3s; }
.contact_text a:hover, .contact_text a:active { width:300px; height:60px; display:inline-block; margin:45px 45px; padding:0px 0px; color:#000; font-size:12px; line-height:60px; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; text-decoration:none; background:#ecdccf; transition:all 0.3s; }

/* Questionnaire */
.questionnaire_intro { max-width:900px; margin:0px auto 90px auto; padding:0px; font-size:16px; line-height:34px; font-weight:300; text-align:center;  }
.questionnaire { margin:0px 0px 180px 0px; padding:0px; font-size:16px; line-height:34px; font-weight:300; text-align:center; }
.questionnaire .wpforms-page-indicator { display:flex!important; justify-content:space-evenly!important; align-items:stretch!important; flex-wrap:nowrap!important; padding:30px 5%!important; background:#f8f4f0!important; border:none!important; text-align:center!important; }
.questionnaire .wpforms-page-indicator-page { flex-basis:25%!important; }
.questionnaire .wpforms-page-indicator-page-number { width:auto!important; height:40px!important; padding:0px 10px 0px 20px!important; color:#b8b5b2!important; font-size:46px!important; line-height:40px!important; text-align:right!important; font-family:ChronicleDisplayLight!important; background:none!important; border-radius:0px!important; float:left!important; }
.questionnaire .wpforms-page-indicator-page-title { height:35px!important; margin:3px 0px 2px 0px!important; padding:8px 0px 8px 17px!important; color:#b8b5b2!important; font-size:14px!important; line-height:20px!important; letter-spacing:0.2em!important; font-weight:400!important; text-align:left!important; text-transform:uppercase!important; font-family:termina!important; border-left:1px solid #b8b5b2!important; float:left!important; }
.questionnaire .wpforms-page-indicator-page.active .wpforms-page-indicator-page-number { color:#000!important; }
.questionnaire .wpforms-page-indicator-page.active .wpforms-page-indicator-page-title { color:#000!important; border-left:1px solid #000!important; }
.questionnaire .wpforms-field-container { max-width:900px!important; margin:90px auto!important; }
.questionnaire .form_field { padding-bottom:90px!important; } 
.questionnaire .form_field input { border:none!important; border-bottom:1px solid #000!important; text-align:center!important; border-radius:0px!important; font-size:13px!important; letter-spacing:0.3em!important; }
.questionnaire .form_radio { padding-bottom:90px!important; } 
.questionnaire .form_dropdown { padding-bottom:90px!important; } 
.questionnaire .form_dropdown select { border:none!important; border-bottom:1px solid #000!important; text-align:center!important; border-radius:0px!important; font-size:13px!important; letter-spacing:0.3em!important; }
.questionnaire .form_checkbox { padding-bottom:90px!important; } 
.questionnaire .form_textarea { padding-bottom:90px!important; } 
.questionnaire .form_textarea textarea { padding:20px!important; font-size:13px!important; } 
.questionnaire .form_button { min-width:300px!important; height:60px!important; display:inline-block!important; margin:0px auto!important; padding:0px 45px!important; color:#000!important; font-size:13px!important; line-height:60px!important; letter-spacing:0.3em!important; font-weight:400!important; text-align:center!important; text-transform:uppercase!important; font-family:termina!important; background:#f8f4f0!important; border:none!important; }
.questionnaire .form_button:hover { color:#000!important; background:#ecdccf!important; transition:all 0.3s!important; }
.questionnaire .wpforms-field-label { font-family:ChronicleDisplayLight!important; text-transform:uppercase!important; font-size:14px!important; font-weight:300!important; letter-spacing:0.2em!important; }
.questionnaire .wpforms-field-label-inline { font-size:13px!important; letter-spacing:0.3em!important; text-transform:uppercase!important; }
.questionnaire .wpforms-page-button { padding:10px 55px!important; font-size:14px!important; text-transform:uppercase!important; font-family:termina!important; letter-spacing:0.3em!important; background:#FFF!important; border:none!important; }
.questionnaire .wpforms-page-next { background:#FFF url(template/icons/icon-arrow-right-1x.png) right no-repeat!important; }
.questionnaire .wpforms-page-prev { background:#FFF url(template/icons/icon-arrow-left-1x.png) left no-repeat!important; }

/* Fancybox */
.fancybox-navigation { top:50%!important; }
.fancybox-content { padding:15px!important; max-height:90vh!important; }
.fancybox-content img { max-height:100%!important; }

/* Media Queries ------------------------------------------------------*/

@media screen and (max-width : 1600px) {
	
}

@media screen and (max-width : 1366px) {
	
}

@media screen and (max-width : 1024px) {
	
}

@media screen and (max-width : 768px) {

/* Responsive */
.desktop { display:none!important; }
.mobile { display:inherit!important; }

/* Header Navigation Mobile */
.header_navigation_mobile { display:none; width:100%; margin:0px; padding:0px; text-align:left; background:rgba(248,244,240,0.95); position:absolute; z-index:9999; top:65px; left:0px; }
.header_navigation_mobile .nav_menu { width:100%; margin:0px auto; padding:0px; list-style:none; border-bottom:5px solid #f8f4f0; }
.header_navigation_mobile .nav_menu li { display:block; min-height:40px; margin:0px; padding:0px; text-align:left; font-size:12px; line-height:40px; font-weight:500; letter-spacing:0.3em; text-transform:uppercase; border-bottom:1px solid #FFF; }
.header_navigation_mobile .nav_menu li:last-child { border-bottom:none; }
.header_navigation_mobile .nav_menu a:link, .header_navigation_mobile .nav_menu a:visited { display:block; margin:0px; height:40px; padding:0px 20px; color:#000000; text-decoration:none; font-family:ChronicleDisplayLight;}
.header_navigation_mobile .nav_menu a:hover, .header_navigation_mobile .nav_menu a:active { display:block; margin:0px; height:40px; padding:0px 20px; color:#000000; text-decoration:none; font-family:ChronicleDisplayLight; }

/* Header Navigation Mobile */
.header_navigation { display:none; }

/* Header */
.header_mobile { display:block; width:100%; min-width:300px; height:65px; margin:0px; padding:0px; background:#f8f4f0; cursor:pointer; position:relative; top:0px; left:0px; z-index:999999; }
.header { width:100%; min-width:300px; height:65px; margin:0px auto 0px auto; text-align:center; background:url(template/header/header-menu-black-mobile.png) no-repeat; background-size:40px 31px; background-position:right 10px center; }
.header_logo { display:none; }
.header_logo_mobile { width:250px; height:auto; margin:15px auto 0px auto; }
.header_container_mini { display:none; }
.header_container_short { display:none; }
.header_container_tall { display:none; }
.header_banner_mini { display:none; }
.header_banner_short { display:none; }
.header_banner_tall { display:none; }
.header_banner_mobile { width:100%; height:40vh; min-height:200px; margin:0px; padding:0px; position:relative; background-size:cover; background-position:center; border-bottom:5px solid #f8f4f0; }
.header_mask { width:100%; margin:0px; padding:0px; position:absolute; top:0px; bottom:0px; left:0px; right:0px; background:linear-gradient(to bottom, rgba(0,0,0,0.4) 0%, rgba(0,0,0,0.3) 25%, rgba(0,0,0,0) 50%); }
.header_portfolio { display:inline-block; margin:0px; padding:0px; position:absolute; top:0px; left:50%; transform:translateX(-50%); z-index:999; }

/* Footer */
.footer_container {  }
.footer { margin:0px auto; padding:20px 0px 30px 0px; width:100%; min-width:300px; max-width:none; text-align:center; overflow:auto; }

/* Footer Navigation */
.footer_navigation .nav_menu li { font-size:8px; letter-spacing:0.2em; }
.footer_navigation .nav_menu li:after { top:9px; height:10px; }
.footer_navigation .nav_menu a:link, .footer_navigation .nav_menu a:visited { padding:0px 12px 0px 10px; }
.footer_navigation .nav_menu a:hover, .footer_navigation .nav_menu a:active { padding:0px 12px 0px 10px; }
.footer_navigation .nav_menu a:link:after, .footer_navigation .nav_menu a:visited:after { display:none; }
.footer_navigation .nav_menu a:hover:after, .footer_navigation .nav_menu a:active:after { display:none; }

/* Content */
.content_container { min-width:300px; max-width:none; background:#FFF; }
.content { width:auto; min-width:300px; max-width:none; }
.content_feature { height:auto; min-width:300px; }
.content_cta { min-width:300px; max-width:none; }
.content_background { min-width:300px; max-width:none; }
.content_banner { min-width:300px; max-width:none; }
.content_left { float:none; }
.content_right { float:none; }
.content_one { width:100%; }
.content_two { width:100% }
.content_three { width:100% }
.content_four { width:100%; }
.content_five { width:100%; }
.content_six { width:100%; }
.content_seven { width:100%; }
.content_eight { width:100%; }
.content_nine { width:100%; }
.content_ten { width:100%; }
.content_eleven { width:100%; }
.content_twelve { width:100%; }
.content_sidebar { display:none; }

/* Containers */
.container_title { margin:20px 15px 15px 15px; font-size:30px; line-height:34px; }
.container_text { margin:0px 15px 30px 15px; font-size:14px; }

/* Post */
.post_title { margin:0px 20px 15px 20px; font-size:26px; line-height:30px; }
.post_text { margin:20px; font-size:14px; padding:0;}
.post_text img { width:100%; float:none; margin:0px 0px 10px 0px; }
.post_text iframe { width:290px; height:162px; margin:0px 0px 15px 0px; }
.post_sharing { margin:0px 15px 15px 15px; }
.post_sharing .addthis_sharing_toolbox { float:none!important; }
.post_link { margin:0px 10px 20px 10px; padding:10px 5px 0px 5px; font-size:18px; line-height:20px; text-align:left; border-top:1px dotted #999; }

/* Link */
.link_button { width:100%; max-width:450px; font-size:11px; padding:0px; }


/* Custom Containers ------------------------------------------------------*/

/* Intro */
.intro_line { margin:45px auto 30px auto; height:75px; }
.intro_line_scroll { height:75px; top:-75px; }
.intro_title { width:auto; margin:0px 20px 45px 20px; padding:15px 0px 0px 0px; font-size:26px; line-height:40px; }
.intro_title h1 { margin:0px; font-size:26px; line-height:40px; }
.intro_title_alt { margin:120px auto 90px auto; padding:60px 0px 0px 0px; }
.intro_text { margin:0px 20px 60px 20px; font-size:16px; line-height:32px; }
.intro_next { margin:0px auto 60px auto; }
.intro_section_title { display:block; min-width:0px; margin:0px 20px 60px 20px; }
.intro_section_title:before { }
.intro_section_title_active:before { }
.intro_section_text { margin:0px 20px 45px 20px; font-size:22px; line-height:36px; }

/* Home */
.home_about_banner { }
.home_about_banner_text { }
.home_about_banner_title { width:100%; margin:0px auto; font-size:12px; }
.home_about_banner_line { display:inline-block; width:0%; height:1px; margin:10px 20px; padding:0px; background:#FFF; vertical-align:bottom; box-sizing:border-box; transition:all 0.7s ease; }
.home_about_header { display:block; margin:45px 0px 30px 0px; overflow:auto; }
.home_about_who { display:block; flex-basis:100%; margin:0px 20px 30px 20px; padding:0px 0px 0px 0px; font-size:26px; line-height:40px; text-align:center; }
.home_about_who h2 { margin:0px 0px 0px 0px; font-size:26px; line-height:40px; }
.home_about_who em { }
.home_about_who:after { display:none; }
.home_about_who_active:after { display:none; }
.home_about_title { display:block; margin:10px 20px; padding:30px 20px; background:#f8f4f0; }
.home_about_title_text { margin:0px; padding:0px; font-size:11px; line-height:22px; text-align:center; position:relative; top:auto; transform:none; }
.home_about_text { margin:0px 20px; font-size:14px; line-height:30px;}
.home_about_footer { margin:45px 20px 60px 20px; padding:30px 20px; font-size:11px; line-height:22px; text-align:center; }
.home_featured { display:flex; justify-content:space-evenly; align-items:center; flex-wrap:wrap; margin:0px; padding:60px 20px; background:#f8f4f0; }
.home_featured_logos { flex-basis:44%; margin:20px 3%; padding:0px; text-align:center; }
.home_featured_logos img { width:auto; max-height:100px; margin:0px auto; }

/* Slider */
.slide_container_mobile { display:flex; justify-content:space-between; align-items:stretch; flex-wrap:wrap; width:auto; margin:0px 20px 45px 20px; padding:0px; position:relative; overflow:auto; }

/* Carousel */
.carousel { }
.carousel_block { flex-basis:100%; flex-shrink:1; margin:0px 0px 1px 0px; padding:0px; text-align:center; box-sizing:border-box; }
.carousel_image { margin:0px; padding:0px 0px 50% 0px; background-size:cover; position:relative; }
.carousel_mask h2 { width:90%; margin:0px 5%; color:#FFF; font-size:11px; line-height:20px; letter-spacing:0.3em; font-weight:400; text-align:center; text-transform:uppercase; font-family:termina; position:absolute; top:50%; transform:translateY(-50%); }
.carousel_block:hover .carousel_mask { background:rgba(0,0,0,0.2); transition:all 0.7s; }

/* Services */
.service_menu { flex-wrap:wrap; margin:0px; padding:45px 0px; }
.service_menu_block { flex-basis:50%; margin:0px 0px 30px 0px; border-right:1px solid #dedbd7; }
.service_menu_block:nth-child(even) { border-right:none; }
.service_menu_block:last-child { border-right:none; }
.service_menu_count { width:65px; margin:0px 20px 20px 20px; padding:0px 0px 20px 0px; }
.service_menu_title { margin:0px 20px; padding:0px; color:#b8b5b2; font-size:11px; line-height:22px; letter-spacing:0.2em; }
.services { margin:90px 0px; padding:0px; position:relative; }
.service_block { margin:45px 20px 0px 20px; padding:0px; overflow:visible; }
.service_image { margin:0px; padding:0px 0px 60% 0px; position:relative; top:auto; bottom:auto; left:auto; right:auto; z-index:0; }
.service_text { min-height:0px; margin:0px; padding:40px 20px; font-size:15px; line-height:32px; text-align:left; position:relative; top:auto; left:auto; right:auto; z-index:0; transform:none; }
.service_text h2 { min-height:48px; margin:0px 0px 20px 0px; font-size:24px; line-height:34px; }
.service_text img { margin:-5px -40px 15px 10px; padding:0px; float:right; }
.service_block:nth-child(even) .service_image { left:auto; right:auto; }
.service_block:nth-child(even) .service_text { left:auto; right:auto; }
.service_block:nth-child(even) .service_text img { margin:-5px -40px 15px 10px; padding:0px; float:right; }
.service_cta { margin:0px; padding:90px 0px; }
.service_cta_title { display:inline-block; margin:0px 20px 60px 20px; padding:30px 0px 0px 0px; }
.service_cta_text { margin:0px 20px; padding:0px; font-size:15px; line-height:32px; }

/* About */
.about_banner { margin:0px 0px 75px 0px; }
.about_team { flex-wrap:wrap; justify-content:space-between; margin:0px 20px 60px 20px; }
.about_team_block { flex-basis:49%; margin:0px 0px 10px 0px; padding:0px 0px 40px 0px; }
.about_team_text { margin:30px 20px; padding:0px; font-size:15px; line-height:32px; }
.about_team_text h2 { margin:0px 0px 15px 0px; font-size:24px; line-height:34px; }
.about_team_image { margin:0px; padding:0px 0px 150% 0px; aspect-ratio:auto; text-align:center; overflow:hidden; position:relative; }
.about_team_image img { max-width:100%; position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); transition:all 0.5s; }
.about_team_arrow { display:inline-block; width:30px; height:10px; margin:0px; padding:0px; position:absolute; bottom:40px; left:20px; }
.about_team_arrow img { margin:0px 0px 0px -20px; }
.about_team_block:hover .about_team_arrow { width:60px; transition:all 0.3s; }
.about_team_block:hover .about_team_image img { max-width:100%; margin:0px auto; transition:all 0.5s; }
.about_collaboration { margin:60px 20px 90px 20px; padding:0px; overflow:hidden; position:relative; }
.about_collaboration_text { width:auto; margin:0px 0px; padding:40px 20px; font-size:15px; line-height:32px; z-index:0; }
.about_collaboration_text h2 { margin:0px 0px 20px 0px; font-size:24px; line-height:34px; }
.about_collaboration_text img { display:none;}
.about_collaboration_image { width:auto; margin:0px 0px; padding:0px 0px 80% 0px; background-position:top right; background-size:cover; position:relative; right:0px; top:0px; }

/* Team */
.team_bio { display:block; margin:0px 20px 90px 20px; padding:0px; background:#f8f4f0; }
.team_bio_image { margin:0px 0px 45px 0px; padding:0px; overflow:auto; }
.team_bio_image img { width:100%; position:relative; top:0px; left:0%; transform:none; }
.team_bio_content { margin:0px; padding:0px; box-sizing:border-box; background:#f8f4f0; box-sizing:border-box; position:relative; }
.team_bio_content img { margin:-5px -20px 0px 10px; padding:0px; float:right; }
.team_bio_text { margin:45px 20px 0px 20px; padding:0px 0px 45px 0px; font-size:15px; line-height:32px; }
.team_bio_text h1 { margin:0px 0px 20px 0px; padding:0px; font-size:26px; line-height:40px; }

/* Contact */
.contact_text { margin:0px 20px 90px 20px; }
.contact_text em { text-transform:uppercase; font-size:13px; font-family:ChronicleDisplayLight; font-style:normal; letter-spacing:0.3em; }
.contact_text a:link, .contact_text a:visited { width:300px; height:60px; display:block; margin:20px auto; }
.contact_text a:hover, .contact_text a:active { width:300px; height:60px; display:block; margin:20px auto; }

/* Questionnaire */
.questionnaire_intro { margin:0px 20px 60px 20px; padding:0px; font-size:15px; line-height:32px; }
.questionnaire { margin:0px 0px 90px 0px; padding:0px; font-size:15px; line-height:32px; }
.questionnaire .wpforms-page-indicator-page-number { height:40px!important; padding:0px 10px 0px 12px!important; font-size:40px!important; line-height:40px!important; }
.questionnaire .wpforms-page-indicator-page-title { height:40px!important; margin:3px 0px 2px 0px!important; padding:5px 5px 5px 10px!important; font-size:9px!important; line-height:15px!important; letter-spacing:0.1em!important; }
.questionnaire .wpforms-field-container { max-width:900px!important; margin:60px 20px!important; }
.questionnaire .form_field { padding-bottom:60px!important; } 
.questionnaire .form_radio { padding-bottom:60px!important; } 
.questionnaire .form_dropdown { padding-bottom:60px!important; } 
.questionnaire .form_checkbox { padding-bottom:60px!important; } 
.questionnaire .form_textarea { padding-bottom:60px!important; } 
.questionnaire .wpforms-field-label { font-size:12px!important; letter-spacing:0.2em!important; }
.questionnaire .wpforms-field-label-inline { font-size:12px!important; letter-spacing:0.2em!important; }
.questionnaire .form_field input { font-size:12px!important; letter-spacing:0.2em!important; }
.questionnaire .form_dropdown select { font-size:12px!important; letter-spacing:0.2em!important; }

/* Projects */
.projects { margin:0px 20px 90px 20px; }
.project_block { display:block; flex-basis:100%; margin:0px 0px 10px 0px; padding:0px 0px 50% 0px; }
.project_title { font-size:12px; line-height:18px; letter-spacing:0.2em; }
.project_header { flex-wrap:wrap; margin:60px 20px; overflow:auto; }
.project_intro { flex-basis:100%; margin:0px; padding:0px 0px 30px 0px; font-size:15px; line-height:32px; text-align:center; }
.project_intro h1 { margin:0px 0px 10px 0px; font-size:26px; line-height:40px; }
.project_intro:after { display:none; }
.project_completed { flex-basis:100%; margin:0px; padding:0px; font-size:11px; line-height:22px; background:#f8f4f0; }
.project_completed_date { margin:30px 20px; padding:0px; text-align:center; text-transform:uppercase; font-family:termina; position:relative; top:auto; transform:none; }
.project_description { margin:0px 20px 60px 20px; padding:0px; font-size:15px; line-height:32px; text-align:center; }
.project_gallery { margin:0px 20px; column-count:1; column-gap:0px; background:none!important; }
.project_gallery_link:last-child img { border-bottom:none; }
.project_gallery_footer { height:45px; margin:15px 20px 90px 20px; font-size:10px; line-height:45px; letter-spacing:0.2em; }
.project_gallery_arrow { margin:16px 0px 0px 10px; }
.project_gallery_footer a:hover .project_gallery_arrow, .project_gallery_footer a:active .project_gallery_arrow { width:30px; }

}

@media screen and (max-width : 480px) {

/* About */
.about_team_block { flex-basis:100%;

}