/*
Theme Name: Vámpont Kft.
Theme URI: https://vampont.hu
Description: A Vámpont Kft. weboldalának alapértelmezett sablonja
Author: Digitalform
Author URI: https://digitalform.hu
Version: 1.0
*/

*{
margin: 0;
padding: 0;
border: 0;
text-decoration: none; 
}

@font-face { 
	font-family: 'Anivers'; 
	src: url("fonts/anivers-regular.eot"); 
	src: url("fonts/anivers-regular.eot?#iefix") format('embedded-opentype'),url("fonts/anivers-regular.woff") format('woff'),url("fonts/anivers-regular.ttf") format('truetype'),url("fonts/anivers-regular.svg#MetaSerifPro-Book") format('svg');
	font-weight: 400; 
	font-style: normal;
	font-stretch: normal;
}

@font-face { 
	font-family: 'Anivers';
	src: url("fonts/anivers-bold.eot"); 
	src: url("fonts/anivers-bold.eot?#iefix") format('embedded-opentype'),url("fonts/anivers-bold.woff") format('woff'),url("fonts/anivers-bold.ttf") format('truetype'),url("fonts/anivers-bold.svg#MetaSerifPro-Book") format('svg');
	font-weight: 700;
	font-style: normal;
	font-stretch: normal;
}

*, *:after, *::before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

body { max-width: 2000px; margin: auto; font-family: 'PT Sans', sans-serif; font-size: 18px; font-weight: 400; color: #555; line-height: 25px; overflow-x: hidden; }
body.rwd_menu__opened { overflow: none; }

textarea, input, select, button { font-family: 'PT Sans', sans-serif; font-size: 15px; outline: none; }

h1, h2, h3, h4 { font-weight: normal; line-height: 100%; }

hr { margin: 30px 0; border-top: 5px solid #efefed; }

/* Classes */
.left { float: left; }
.right { float: right; }
.clear { clear: both; }
.inner { max-width: 1200px; margin-left: auto; margin-right: auto; position: relative; }
.inner_900 { max-width: 900px; }
.alignleft { margin: 0 20px 5px 0; float: left; }
.alignright { margin: 0 0 5px 20px; float: right; }
.aligncenter { margin: 0 auto 20px auto; display: block; }
.vertical_middle { top: 50%; position: relative; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
.uppercase { text-transform: uppercase; }
.center { text-align: center; }
.hide { display: none !important; }
.red { color: #f1655c; }
.b_r_50p { -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }
.sec_font, .button, #content h3 { font-family: 'Anivers', sans-serif; }

/* Cols */
.row { font-size: 0; }
.row .col { font-size: 18px; vertical-align: top; display: inline-block; }
.row .col_50 { width: 50%; }
.row .col_33 { width: 33.3333333333%; }

.row.row_table { width: 100%; display: table; table-layout: fixed; }
.row.row_table .col { display: table-cell; }

/* Animation */
.anim, #header ul.menu li a:after, #services .title:after { -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; -o-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
.anim_cubic { -webkit-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); -moz-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); -o-transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); }

/* Button */
.button { height: 50px; padding: 0 20px; font-size: 17px !important; font-weight: 700; text-decoration: none !important; text-align: center; color: #032a58 !important; line-height: 48px; background: transparent; border: 2px solid #38a8ea; display: inline-block; position: relative; cursor: pointer; -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; -o-transition: all 0.2s ease-out; transition: all 0.2s ease-out; -webkit-border-radius: 25px; -moz-border-radius: 25px; border-radius: 25px; }
.button:hover { border-color: #032a58; }
.button:disabled { opacity: 0.4; }
.button:disabled:hover { border-color: #38a8ea; }

.button.has_icon { padding-right: 45px; }
.button.has_icon:after { width: 16px; height: 16px; right: 20px; top: 50%; margin-top: -8px; background: url(images/icon_arrow_right.svg) no-repeat center; background-size: auto 100%; position: absolute; content: ''; }

/* Checkbox and radio */
input[type="checkbox"], 
input[type="radio"] { width: 24px; height: 24px; margin: -4px 4px 0 0 !important; padding: 0 !important; text-align: center !important; background-color: white; border: 1px solid #828282; clear: none; cursor: pointer; display: inline-block; line-height: 0; outline: 0; vertical-align: middle !important;  -webkit-appearance: none; -webkit-box-shadow: none; box-shadow: none; -webkit-transition: .05s border-color ease-in-out; transition: .05s border-color ease-in-out; }
input[type="radio"] { -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; }

input[type="radio"]:checked:before { width: 14px; height: 14px; left: 4px; top: 4px; text-align: center; background: #38a8ea; position: relative; border-radius: 8px; display: block; content: ''; }
input[type="checkbox"]:checked:before { width: 14px; height: 14px; left: 4px; top: 4px; text-align: center; background: #38a8ea; position: relative; display: block; content: ''; }


/*
-------------------
	NAVIGATION
-------------------
*/
#rwd_menu { width: 100%; left: 0; top: 80px; bottom: 0; font-size: 18px; color: white; position: fixed; z-index: 100; visibility: hidden; opacity: 0; overflow: hidden; }
#rwd_menu p { margin-bottom: 10px; }
#rwd_menu p:last-child { margin-bottom: 0; }
#rwd_menu p label { margin-bottom: 5px; font-size: 15px; font-weight: 700; text-transform: uppercase; color: #dde0e4; display: block; }
#rwd_menu p a { font-size: 20px; color: white; }
#rwd_menu hr { max-width: none; margin: 0 0 30px 0; border-top-width: 1px; border-top-color: rgba(255,255,255,0.15); }

#rwd_menu .rwd_menu_overlay { width: 100%; height: 100%; left: 0; top: 0; background: #032a58; position: absolute; }
#rwd_menu .rwd_menu_wrapper { max-height: 100%; margin-top: -30px; padding: 50px 30px 30px 30px; position: relative; overflow-y: auto; opacity: 0; }

/* Menu */
#rwd_menu .rwd_menu_wrapper ul { margin-bottom: 20px; position: relative; z-index: 1; } 
#rwd_menu .rwd_menu_wrapper ul li { list-style: none; } 
#rwd_menu .rwd_menu_wrapper ul li a { padding: 5px 0; font-size: 40px; color: white; line-height: 1; display: block; position: relative; }

/* RWD nav opened */
body.rwd_menu__opened #rwd_menu { visibility: visible; opacity: 1; }
body.rwd_menu__opened #rwd_menu .rwd_menu_wrapper { margin-top: 0; opacity: 1; }


/*
---------------
	HEADER
---------------
*/
#header { height: 120px; position: relative; }
#header .inner { height: 100%; }

/* Logo */
#header .logo { width: 180px; height: 50px; left: 0; display: block; position: absolute; }
#header .logo img { width: auto; height: 100%; display: block; }

/* Menü */
#header ul.menu { height: 40px; left: 220px; padding-left: 40px; font-size: 0; border-left: 1px solid #e2ebf8; position: absolute; }
#header ul.menu li { margin-right: 30px; vertical-align: top; display: inline-block; }
#header ul.menu li a { height: 40px; font-size: 18px; font-weight: 700; color: #085fc0; line-height: 40px; display: block; position: relative; }
#header ul.menu li a:after { width: 0; height: 3px; left: 0; bottom: 0; background: #fb8014; position: absolute; content: ''; }
#header ul.menu li a:hover:after { width: 20px; }
#header ul.menu li.current_page_item a, 
#header ul.menu li.current-menu-item a, 
#header ul.menu li.current-menu-parent a { color: #032a58; }
#header ul.menu li.current_page_item a:after, 
#header ul.menu li.current-menu-item a:after, 
#header ul.menu li.current-menu-parent a:after { width: 20px; }

/* Phone */
#header a.phone { height: 24px; right: 0; padding-left: 36px; font-size: 18px; font-weight: 700; color: #032a58; line-height: 24px; background: url(images/icon_phone.svg) no-repeat left center; background-size: auto 100%; display: block; position: absolute; }
#header a.phone:hover { text-decoration: underline; }

/* RWD menu */
#header .rwd_button { width: 50px; height: 50px; right: 20px; background: #fb8014; position: absolute; cursor: pointer; }
#header .rwd_button .burg { width: 30px; height: 2px; left: 10px; background: white; display: block; position: relative; -moz-transition: 0.2s; -o-transition: 0.2s; -webkit-transition: 0.2s; transition: 0.2s; }

#header .rwd_button .burg:before, 
#header .rwd_button .burg:after { width: 30px; height: 2px; background: white; position: absolute; content: ''; -moz-transition: 0.2s; -o-transition: 0.2s; -webkit-transition: 0.2s; transition: 0.2s; }

#header .rwd_button .burg:before { top: -8px; left: 0; }
#header .rwd_button .burg:after { top: 8px; right: 0; }

body.rwd_menu__opened #header .rwd_button .burg { background: transparent; }
body.rwd_menu__opened #header .rwd_button .burg:before { top: 0; -webkit-transform: rotate(45deg); }
body.rwd_menu__opened #header .rwd_button .burg:after { top: 0; -webkit-transform: rotate(-45deg); }


/*
-------------
	SLIDE
-------------
*/
#slide { max-height: 580px; min-height: 250px; background-repeat: no-repeat; background-position: right center; background-size: auto 110%; position: relative; }
#slide:after { padding-top: 35%; display: block; content: ''; }
#slide .slide_item { width: 100%; height: 100%; left: 0; top: 0; background: url(images/bgr_slide__1.png) no-repeat center top; background-size: auto 100%; position: absolute; }
#slide .slide_item .inner { height: 100%; padding-bottom: 80px; }
#slide .slide_item .subtitle { margin-bottom: 20px; padding-left: 50px; font-size: 14px; color: #fe8214; line-height: 1; letter-spacing: 5px; position: relative; }
#slide .slide_item .subtitle:before { width: 30px; height: 2px; left: 0; top: 50%; background: #fe8214; position: absolute; content: ''; }
#slide .slide_item .title { max-width: 600px; font-size: 50px; color: white; line-height: 1.2; }
#slide .slide_item .text { max-width: 600px; margin-top: 20px; font-size: 18px; color: white; line-height: 1.4; }


/*
----------------
	ABOUT US
----------------
*/
#aboutus { padding: 70px 0; position: relative; }
#aboutus:after { width: 30px; height: 2px; left: 50%; bottom: 0; margin-left: -15px; background: #fb8014; position: absolute; content: ''; }
#aboutus .row .col { height: 136px; margin-top: 70px; padding-left: 170px; padding-right: 30px; position: relative; }
#aboutus .row .col:nth-child(-n+2) { margin-top: 0; }
#aboutus .row .col .icon { width: 136px; height: 136px; left: 0; top: 0; background: url(images/dot.png) repeat left top; position: absolute; }
#aboutus .row .col .icon .icon_inside { width: 74px; height: 74px; left: 50%; top: 50%; background: #fb8014; position: relative; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
#aboutus .row .col .icon .icon_inside img { width: 32px; height: auto; left: 50%; top: 50%; display: block; position: relative; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
#aboutus .row .col .entry h3 { font-size: 24px; font-weight: 700; color: #032a58; line-height: 1; }
#aboutus .row .col .entry .text { margin-top: 10px; }


/*
----------------
	SERVICES
----------------
*/
#services { padding: 70px 0; }
#services .title { margin-bottom: 30px; font-size: 40px; font-weight: 700; color: #032a58; line-height: 1; }
#services .services_wrapper { margin-left: -15px; margin-right: -15px; font-size: 0; }
#services .services_wrapper .service { width: 33.3333333333%; margin-top: 30px; padding-left: 15px; padding-right: 15px; vertical-align: top; display: inline-block; }
#services .services_wrapper .service:nth-child(-n+3) { margin-top: 0; }
#services .services_wrapper .service a.wrapper { height: 300px; padding: 0 20px; background-color: #032a58; background-repeat: no-repeat; background-position: center; background-size: cover; border-bottom: 5px solid #fb8014; display: block; position: relative; }
#services .services_wrapper .service a.wrapper .cover { width: 100%; height: 100%; left: 0; top: 0; background: rgba(3,42,88,0.8); position: absolute; }
#services .services_wrapper .service a.wrapper .title { padding-bottom: 30px; font-size: 26px; color: white; line-height: 30px; position: relative; }
#services .services_wrapper .service a.wrapper .title:before { width: 30px; height: 3px; left: 50%; bottom: 0; margin-left: -15px; background: white; position: absolute; content: ''; }
#services .services_wrapper .service a.wrapper .title:after { width: 30px; height: 3px; left: 50%; bottom: 0; margin-left: -15px; background: white; position: absolute; content: ''; }
#services .services_wrapper .service a.wrapper:hover .title:after { -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); }


/*
----------------------
	BEFORE CONTENT
----------------------
*/
#before_content { height: 250px; font-size: 17px; font-weight: 700; color: white; line-height: 20px; background-color: #032a58; background-repeat: no-repeat; background-position: center; background-size: cover; }
#before_content .cover { width: 100%; height: 100%; left: 0; top: 0; background: url(images/bgr_before_content.png) no-repeat center; }
#before_content .inner { height: 100%; }
#before_content a { font-weight: normal; text-decoration: underline; color: #dde0e4; }
#before_content a:hover { color: white; }
#before_content h1 { margin-bottom: 20px; font-size: 60px; line-height: 1; }


/*
----------------
	CONTENT
----------------
*/
#content { padding-top: 30px; padding-bottom: 30px; }

#content h3 { margin-bottom: 10px; font-size: 26px; font-weight: 700; color: #fb8014; line-height: 1; }

#content p { margin-bottom: 20px; }
#content strong { color: #032a58; }
#content a { text-decoration: underline; color: #fb8014; }
#content a:hover { color: #032a58; }

/* List */
#content ul { margin-bottom: 20px; margin-left: 20px; }

/* Contact */
#content.contact .contact_form_wrapper { margin-top: 50px; padding: 50px 150px; background: #ebf4ff; }
#content.contact .contact_form_wrapper h3 { margin-bottom: 30px; font-size: 30px; font-weight: 700; color: #032a58; }

/* Blog */
#content .blog_wrapper { margin-left: -15px; margin-right: -15px; font-size: 0; }
#content .blog_wrapper article { width: 33.3333333333%; margin-top: 30px; padding-left: 15px; padding-right: 15px; vertical-align: top; display: inline-block; }
#content .blog_wrapper article:nth-child(-n+3) { margin-top: 0; }
#content .blog_wrapper article a.thumbnail { background-color: #032a58; background-repeat: no-repeat; background-position: center; background-size: cover; border-bottom: 5px solid #fb8014; display: block; overflow: hidden; }
#content .blog_wrapper article a.thumbnail img { width: 100%; height: auto; display: block; position: relative; transform: scale(1) translateZ(0); transition: all 1s cubic-bezier(0.19, 1, 0.22, 1); }
#content .blog_wrapper article a.thumbnail:hover img { -ms-transform: scale(1.05) translateZ(0); -webkit-transform: scale(1.05) translateZ(0); transform: scale(1.05) translateZ(0); }

#content .blog_wrapper article .entry { padding-top: 10px; }
#content .blog_wrapper article .entry h3 a { font-size: 24px; font-weight: 700; color: #032a58; line-height: 1; display: block; }
#content .blog_wrapper article .entry .datetime { margin-bottom: 10px; font-size: 14px; font-weight: 700; color: #38a8ea; }

/* Iframe wrapper */
#content .iframe_wrapper { height: 0; margin-bottom: 30px; padding-bottom: 56.25%; padding-top: 25px; position: relative; }
#content .iframe_wrapper iframe { width: 100%; height: 100%; left: 0; top: 0; position: absolute; }


/*
---------------
	CONTACT
---------------
*/
#contact { padding: 70px 0; background: #ebf4ff; }
#contact .contact_wrapper { width: 100%; max-width: 900px; margin: auto; font-size: 0; }
#contact .contact_wrapper .panel { width: 33.3333333333%; font-size: 18px; color: #555; line-height: 30px; vertical-align: top; display: inline-block; }
#contact .contact_wrapper .panel img { width: 190px; height: auto; display: block; }
#contact .contact_wrapper .panel h3 { margin-bottom: 5px; font-size: 20px; font-weight: 700; color: #032a58; }
#contact .contact_wrapper .panel p { margin-bottom: 20px; }
#contact .contact_wrapper .panel a { color: #555; }
#contact .contact_wrapper .panel a:hover { text-decoration: underline; }


/*
---------------
	FOOTER
---------------
*/
#footer { height: 70px; font-size: 17px; color: #dde0e4; line-height: 70px; background: #032a58; position: relative; }
#footer:before { width: 400px; height: 167px; left: 0; bottom: 0; background: url(images/img_footer.png) no-repeat left bottom; position: absolute; content: ''; }


/*
--------------
	FORM
--------------
*/
.form-row { margin-bottom: 10px !important; }
.form-row.form-row-first { width: calc(50% - 5px); float: left; }
.form-row.form-row-last { width: calc(50% - 5px); float: right; }
.form-row.form-row-wide { width: 100%; float: none; clear: both; }

.form-row a { text-decoration: underline; color: #333; }
.form-row a:hover { color: #000; }
.form-row br { display: none; }
.form-row label { font-size: 16px; font-weight: 700; text-align: left; color: #333; display: block; }
.form-row label.bold { margin-bottom: 20px; font-size: 18px; text-align: center; }

.form-row select,
.form-row textarea,
.form-row input[type=tel],
.form-row input[type=text],
.form-row input[type=email],
.form-row input[type=number],
.form-row input[type=password] { width: 100%; height: 50px; padding-left: 10px; font-size: 16px; background: white; border: 1px solid #bbd9ff; }

.form-row select:focus,
.form-row textarea:focus,
.form-row input[type=tel]:focus,
.form-row input[type=text]:focus,
.form-row input[type=email]:focus,
.form-row input[type=number]:focus,
.form-row input[type=password]:focus { border-color: #032a58; -moz-box-shadow: 0 0 10px rgba(3,42,88,0.5); -webkit-box-shadow: 0 0 10px rgba(3,42,88,0.5); box-shadow: 0 0 10px rgba(3,42,88,0.5); }

.form-row textarea { min-height: 150px; padding: 10px; resize: vertical; }

.wpcf7 h3 { margin-top: 30px; }
.wpcf7 .wpcf7-list-item { margin: 0 15px 0 0 !important; }

.wpcf7 .wpcf7-form-control-wrap { min-height: 50px; display: block; }
.wpcf7 .wpcf7-form-control-wrap.wpcf7-form-control-signature-input-wrap { min-height: inherit; }
.wpcf7 .wpcf7-form-control-wrap.vegzett-tevekenysegek .wpcf7-list-item { margin: 0 0 5px 0 !important; display: block; }

.wpcf7 .wpcf7-form-control-wrap.wpcf7-form-control-signature-input-wrap { min-height: inherit; }

.wpcf7 .wpcf7-form-control.wpcf7-radio { padding-top: 10px; display: block; }

/* Signature */
.wpcf7 .wpcf7-form-control-signature-global-wrap {}
.wpcf7 .wpcf7-form-control-signature-global-wrap .wpcf7-form-control-signature-wrap { width: 100% !important; margin-bottom: 20px; border: 3px solid #ddd; }
.wpcf7 .wpcf7-form-control-signature-global-wrap .wpcf7_signature_signature { width: 100% !important; }
.wpcf7 .wpcf7-form-control-signature-global-wrap input[type=button] { height: 40px; padding: 0 10px; font-size: 17px !important; font-weight: 700; text-transform: uppercase; text-decoration: none !important; color: white !important; line-height: 40px; background: #377ef2; display: inline-block; position: relative; cursor: pointer; -webkit-border-radius: 25px; -moz-border-radius: 25px; border-radius: 25px; -webkit-transition: all 0.2s ease-out; -moz-transition: all 0.2s ease-out; -o-transition: all 0.2s ease-out; transition: all 0.2s ease-out; }
.wpcf7 .wpcf7-form-control-signature-global-wrap input[type=button]:hover { background: #162d5a; }

/* Error */
.error { padding: 10px 20px; font-size: 16px; color: #242424; background: #fbcdcc; border-left: 5px solid #f1655c; position: relative; }



/*
-------------------
	RWD DESIGN
-------------------
*/
@media only screen and (max-width: 1440px) { 

	/* HEADER */
	#header { height: 100px; }
	
	/* SLIDE */
	#slide { max-height: 500px; }
	#slide .slide_item { background-image: url(images/bgr_slide__2.png); }
	#slide .slide_item .inner { padding-bottom: 0; }
}

@media only screen and (max-width: 1200px) { 

	/* DEFAULT */
	.p_l_30 { padding-left: 20px; }
	.p_r_30 { padding-right: 20px; }
	
	/* HEADER: Logo */
	#header .logo { left: 20px; }
	
	/* HEADER: Menü */
	#header ul.menu { left: 230px; padding-left: 0; border-left: none; }
	#header ul.menu li { margin-right: 20px; }
	
	/* HEADER: Phone */
	#header a.phone { right: 20px; }
	
	/* SLIDE */
	#slide .slide_item .title { font-size: 40px; }
	
	/* FOOTER */
	#footer:before { display: none; }
}

@media only screen and (max-width: 960px) { 

	/* DISPLAY: None */
	.hide_in_960 { display: none !important; }
	
	/* DISPLAY: Block */
	.show_in_960 { display: block !important; }
	
	/* HEADER */
	#header { height: 80px; }
	
	/* HEADER: Phone */
	#header a.phone { right: 100px; }
	
	/* SLIDE */
	#slide { background-position: center; background-size: cover; }
	#slide .slide_item { text-align: center; background-image: url(images/bgr_before_content.png); background-position: center; }
	#slide .slide_item .title, 
	#slide .slide_item .text { margin-left: auto; margin-right: auto; }

	/* ABOUT US */
	#aboutus { padding: 50px 0; }
	#aboutus .row { width: 100%; max-width: 600px; margin: auto; display: block; }
	#aboutus .row .col { width: 100%; height: auto; min-height: 136px; margin-top: 50px !important; padding-right: 0; display: block; }
	#aboutus .row .col:first-child { margin-top: 0 !important; }
	#aboutus .row .col .entry { top: auto; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
	
	/* SERVICES */
	#services { padding: 50px 0; }
	#services .services_wrapper .service { width: 50%; margin-top: 30px !important; }
	#services .services_wrapper .service:nth-child(-n+2) { margin-top: 0 !important; }
	
	/* CONTENT: Contact */
	#content.contact .contact_form_wrapper { padding: 50px 100px; }
	
	/* CONTENT: Blog */
	#content .blog_wrapper { margin-left: -10px; margin-right: -10px; }
	#content .blog_wrapper article { width: 50%; margin-top: 20px !important; padding-left: 10px; padding-right: 10px; }
	#content .blog_wrapper article:nth-child(1), 
	#content .blog_wrapper article:nth-child(2) { margin-top: 0 !important; }

	/* CONTACT */
	#contact { padding: 50px 0; }
}

@media only screen and (max-width: 768px) { 

	/* DISPLAY: None */
	.hide_in_768 { display: none !important; }
	
	/* SLIDE */
	#slide .slide_item .title { font-size: 5vw; }
	
	/* BEFORE CONTENT */
	#before_content { height: 200px; }
	#before_content h1 { font-size: 7vw; }
	
	/* CONTENT: Contact */
	#content.contact .contact_form_wrapper { margin-top: 30px; padding: 30px; }
	
	/* CONTACT */
	#contact { padding: 30px 0; }
	#contact .contact_wrapper .panel { width: 50%; }
}

@media only screen and (max-width: 640px) { 

	/* DISPLAY: None */
	.hide_in_640 { display: none !important; }
	
	/* SLIDE */
	#slide .slide_item .title { font-size: 6vw; }
	
	/* ABOUT US */
	#aboutus .row .col { padding-left: 0; text-align: center; }
	#aboutus .row .col .icon { width: 110px; height: 110px; left: auto; top: auto; margin: 0 auto 20px; position: relative; }
	
	/* SERVICES */
	#services .services_wrapper { width: 100%; max-width: 600px; margin-left: auto; margin-right: auto; }
	#services .services_wrapper .service { width: 100%; margin-top: 20px !important; padding-left: 0; padding-right: 0; display: block; }
	#services .services_wrapper .service:nth-child(2) { margin-top: 20px !important; }
	
	/* BEFORE CONTENT */
	#before_content { height: auto; }
	#before_content .cover { padding: 50px 0; }
	#before_content .vertical_middle { top: auto; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
	#before_content h1 { font-size: 8vw; }
	
	/* CONTACT */
	#contact .contact_wrapper { max-width: 600px; }
	#contact .contact_wrapper .panel { width: 100%; text-align: center; display: block; }
	#contact .contact_wrapper .panel.panel_contact { margin-bottom: 30px; }
	
	/* CONTENT: Blog */
	#content .blog_wrapper { width: 100%; max-width: 480px; margin-left: auto; margin-right: auto; }
	#content .blog_wrapper article { width: 100%; padding-left: 0; padding-right: 0; display: block; }
	#content .blog_wrapper article:nth-child(1) { margin-top: 0 !important; }

	/* FOOTER */
	#footer { height: auto; padding: 20px 0; line-height: 20px; }
	
	/* FORM */
	.form-row.form-row-first, 
	.form-row.form-row-last { width: 100%; float: none; }
	.form-row .button { width: 100%; }
}

@media only screen and (max-width: 480px) { 

	/* DISPLAY: None */
	.hide_in_640 { display: none !important; }
	
	/* NAVIGATION */
	#rwd_menu .rwd_menu_wrapper { padding: 30px 20px; }

	/* NAVIGATION: Menu */
	#rwd_menu .rwd_menu_wrapper ul li a { font-size: 30px; }
	
	/* SLIDE */
	#slide .slide_item .title { font-size: 7vw; }
	
	/* BEFORE CONTENT */
	#before_content .cover { padding: 30px 0; }
	#before_content h1 { font-size: 9vw; }
}

@media only screen and (max-width: 320px) { 

	/* CONTENT: Contact */
	#content.contact .contact_form_wrapper { padding: 20px; }
}
