@font-face {
	font-family: 'Lato';
	src: url('lato-regular-webfont.eot');
	src: local('Lato Regular'), local('Lato-Regular'),
		url('lato-regular-webfont.eot?#iefix') format('embedded-opentype'),
		url('lato-regular-webfont.woff2') format('woff2'),
		url('lato-regular-webfont.woff') format('woff'),
		url('lato-regular-webfont.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Lato';
	src: url('lato-italic-webfont.eot');
	src: local('Lato Italic'), local('Lato-Italic'),
		url('lato-regular-italic-webfont.eot?#iefix') format('embedded-opentype'),
		url('lato-regular-italic-webfont.woff2') format('woff2'),
		url('lato-regular-italic-webfont.woff') format('woff'),
		url('lato-regular-italic-webfont.ttf') format('truetype');
	font-weight: normal;
	font-style: italic;
}

@font-face {
	font-family: 'Lato';
	src: url('lato-bold-webfont.eot');
	src: local('Lato Bold'), local('Lato-Bold'),
		url('lato-bold-webfont.eot?#iefix') format('embedded-opentype'),
		url('lato-bold-webfont.woff2') format('woff2'),
		url('lato-bold-webfont.woff') format('woff'),
		url('lato-bold-webfont.ttf') format('truetype');
	font-weight: bold;
	font-style: normal;
}

@font-face {
	font-family: 'Lato';
	src: url('lato-bold-italic-webfont.eot');
	src: local('Lato Bold Italic'), local('Lato-BoldItalic'),
		url('lato-bold-italic-webfont.eot?#iefix') format('embedded-opentype'),
		url('lato-bold-italic-webfont.woff2') format('woff2'),
		url('lato-bold-italic-webfont.woff') format('woff'),
		url('lato-bold-italic-webfont.ttf') format('truetype');
	font-weight: bold;
	font-style: italic;
}

/*! normalize.css v1.1.3 | MIT License | git.io/normalize */

/* ==========================================================================
	HTML5 display definitions
	========================================================================== */

/**
 * Correct `block` display not defined in IE 6/7/8/9 and Firefox 3.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary
{
display: block;
}

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */

audio,
canvas,
video
{
display: inline-block;
*display: inline;
*zoom: 1;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls])
{
display: none;
height: 0;
}

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */

[hidden]
{
display: none;
}

/* ==========================================================================
	Base
	========================================================================== */

/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html
{
font-size: 100%; /* 1 */
-ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Address `font-family` inconsistency between `textarea` and other form
 * elements.
 */

html,
button,
input,
select,
textarea,
text
{
font-family: "Lato", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
color: #333;
}

/**
 * Address margins handled incorrectly in IE 6/7.
 */

body
{
margin: 0;
}

/* ==========================================================================
	Links
	========================================================================== */

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */

a:focus
{
outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover
{
outline: 0;
}

/* ==========================================================================
	Typography
	========================================================================== */

/**
 * Address font sizes and margins set differently in IE 6/7.
 * Address font sizes within `section` and `article` in Firefox 4+, Safari 5,
 * and Chrome.
 */

h1
{
font-size: 2em;
margin: 0.67em 0;
}

h2
{
font-size: 1.5em;
margin: 0.83em 0;
}

h3
{
font-size: 1.17em;
margin: 0.875em 0;
}

h4
{
font-size: 1em;
margin: 1.33em 0;
}

h5
{
font-size: 1em;
margin: 0.875em 0;
}

h6
{
font-size: 0.67em;
margin: 2.33em 0;
}

/**
 * Address styling not present in IE 7/8/9, Safari 5, and Chrome.
 */

abbr[title]
{
border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome.
 */

b,
strong
{
font-weight: bold;
}

blockquote
{
margin: 1em 40px;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */

dfn
{
font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 * Known issue: no IE 6/7 normalization.
 */

hr
{
-moz-box-sizing: content-box;
box-sizing: content-box;
height: 0;
}

/**
 * Address styling not present in IE 6/7/8/9.
 */

mark
{
background: #ff0;
color: #000;
}

/**
 * Address margins set differently in IE 6/7.
 */

p,
pre
{
margin: 1em 0;
}

/**
 * Correct font family set oddly in IE 6, Safari 4/5, and Chrome.
 */

code,
kbd,
pre,
samp
{
font-family: monospace, serif;
_font-family: 'courier new', monospace;
font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */

pre
{
white-space: pre;
white-space: pre-wrap;
word-wrap: break-word;
}

/**
 * Address CSS quotes not supported in IE 6/7.
 */

q
{
quotes: none;
}

/**
 * Address `quotes` property not supported in Safari 4.
 */

q:before,
q:after
{
content: '';
content: none;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small
{
font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup
{
font-size: 75%;
line-height: 0;
position: relative;
vertical-align: baseline;
}

sup
{
top: -0.5em;
}

sub
{
bottom: -0.25em;
}

/* ==========================================================================
	Lists
	========================================================================== */

/**
 * Address margins set differently in IE 6/7.
 */

dl,
menu,
ol,
ul
{
margin: 0 0 1em;
list-style: none;
}

ul ul
{
margin: 0;
}

dd
{
margin: 0 0 0 40px;
}

/**
 * Address paddings set differently in IE 6/7.
 */

menu,
ol,
ul
{
padding: 0 0 0 40px;
}

/**
 * Correct list images handled incorrectly in IE 7.
 */

nav ul,
nav ol
{
list-style: none;
list-style-image: none;
/* custom */
margin: 0;
padding: 0;
}

/* ==========================================================================
	Embedded content
	========================================================================== */

/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */

img
{
border: 0; /* 1 */
-ms-interpolation-mode: bicubic; /* 2 */
}

/**
 * Correct overflow displayed oddly in IE 9.
 */

svg:not(:root)
{
overflow: hidden;
}

/* ==========================================================================
	Figures
	========================================================================== */

/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */

figure
{
margin: 0;
}

/* ==========================================================================
	Forms
	========================================================================== */

/**
 * Correct margin displayed oddly in IE 6/7.
 */

form
{
margin: 0;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset
{
border: 0; /* custom 1px solid #c0c0c0; */
margin: 0; /* custom 0 2px; */
padding: 0; /* custom 0.35em 0.625em 0.75em; */
}

/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */

legend
{
border: 0; /* 1 */
padding: 0;
white-space: normal; /* 2 */
*margin-left: -7px; /* 3 */
}

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */

button,
input,
select,
textarea
{
font-size: 100%; /* 1 */
margin: 0; /* 2 */
vertical-align: baseline; /* 3 */
*vertical-align: middle; /* 3 */
}

/**
 * Address Firefox 3+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

button,
input
{
line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */

button,
select
{
text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"]
{
-webkit-appearance: button; /* 2 */
cursor: pointer; /* 3 */
*overflow: visible;  /* 4 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled]
{
cursor: default;
}

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */

input[type="checkbox"],
input[type="radio"]
{
box-sizing: border-box; /* 1 */
padding: 0; /* 2 */
*height: 13px; /* 3 */
*width: 13px; /* 3 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"]
{
-webkit-appearance: textfield; /* 1 */
-moz-box-sizing: content-box;
-webkit-box-sizing: content-box; /* 2 */
box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration
{
-webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 3+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner
{
border: 0;
padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */

textarea
{
overflow: auto; /* 1 */
vertical-align: top; /* 2 */
}

/* ==========================================================================
	Tables
	========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table
{
border-collapse: collapse;
border-spacing: 0;
}

td,
th
{
vertical-align: top;
}

/* ==|== primary styles =====================================================
	Author:
	========================================================================== */

*:focus
{
outline: none;
}

html,
body
{
margin: 0;
height: 100%;
font-size: 18px;
line-height: 1.43625em;
-webkit-font-smoothing: antialiased;
-webkit-tap-highlight-color: rgba(0,0,0,0);
color: #222;
}

body
{
overflow-x: hidden;
}

a,
a:hover
{
color: #00b4f1;
text-decoration: none;
-webkit-transition: color .5s;
transition: color .5s;
}

a:hover
{
color: #98E75C;
}

#app
{
width: 100%;
position: relative;
float: left;
}

#app>header,
#app>main,
#app>footer
{
width: 100%;
float: left;
clear: left;
position: relative;
}

#app:before,
#app:after,
#app>header:before,
#app>header:after,
#app>main:before,
#app>main:after,
#app>footer:before,
#app>footer:after,
.clearfix:before,
.clearfix:after
{
content: " ";
display: table;
}

#app:after,
#app>header:after,
#app>main:after,
#app>footer:after,
.clearfix:after
{
clear: both;
}

#app,
#app>header,
#app>main,
#app>footer,
.clearfix
{
*zoom: 1; /* For IE 6/7 (trigger hasLayout) */
}

#app>header>div,
#app>main>div>header>div,
#app>main>div>section>div,
#app>footer>div
{
clear: left;
max-width: 1000px;
margin-left: auto;
margin-right: auto;
}

#app>header>div,
#app>main>div>header>div,
#app>main>div>section>div,
#app>footer>div
{
clear: left;
max-width: 1000px;
margin-left: auto;
margin-right: auto;
}

#app>main>div>header>div:before,
#app>main>div>header>div:after,
#app>main>div>section>div:before,
#app>main>div>section>div:after
{
content: "";
display: table;
}

#app>main>div>header>div:after,
#app>main>div>section>div:after
{
clear: both;
}

#app>main>div>header>div,
#app>main>div>section>div
{
zoom: 1; /* For IE 6/7 (trigger hasLayout) */
}

#app>header
{
position: absolute;
z-index: 1;
background: #00a5c5;
}

#menu
{
display: inline-block;
text-align: right;
float: right;
}

#menu a
{
display: inline-block;
color: #FFF;
text-transform: uppercase;
font-size: 0.875em;
font-weight: bold;
letter-spacing: 0.0375em;
}

#menu a:hover
{
color: #98E75C;
}

#menu-button
{
-webkit-appearance: none;
background: transparent;
border: 0;
color: #FFF;
display: none;
overflow: hidden;
padding: 0;
text-indent: 100%;
white-space: nowrap;
}

/*
html.rai_20 #app>header nav a:hover
{
color: #FF6DF1;
}
*/

#app>footer
{
background: #2f3637;
color: #FFF;
padding: 2em 0;
}

#app>footer a.heti
{
width: 6em;
float: left;
margin-right: 1em;
}

#app>footer a.heti img
{
width: 100%;
}

#app>footer div.credits
{
font-size: 0.875em;
line-height: 1.3125em;
margin-top: -0.25em;
}

/* columns */

.c_1_3,
.c_2_3,
.c_1-2_3,
.c_1_4,
.c_2_4,
.c_3_4,
.c_1-2_4,
.c_1-3_4,
.c_1-4_4,
.c_2-3_4
{
float: left;
width: 100%;
}

[class^="c_"]
{
text-align: left;
}

.c_1_3,
.c_1-2_3,
.c_1-3_3,
.c_1_4,
.c_1-2_4,
.c_1-3_4,
.c_1-4_4
{
clear: both;
}

.c_3_3,
.c_2-3_3,
.c_4_4,
.c_2-4_4,
.c_3-4_4
{
float: right;
width: 100%;
}

.c_1-3_3,
.c_1-4_4
{
width: 100%;
}

/* add info for 3 columns */

.c_1-2_4 .c_1-2_4,
.c_1-2_4 .c_3-4_4,
.c_3-4_4 .c_1-2_4,
.c_3-4_4 .c_3-4_4
{
width: 45.75%;
}

#app>header .logo
{
font-size: 1em;
margin: 0;
background: #FFF;
float: left;
}

#app>header .logo a
{
display: block;
width: 6em;
padding: 1.125em;
}

#app>header .logo img
{
display: block;
width: 100%;
}

main>div>header
{
position: relative;
background: #00a5c5;
padding: 5em 0 2em;
color: #FFF;
font-size: 1.125em;
line-height: 1.25em;
}

h1
{
margin: 0;
padding: 0;
color: #98E75C;
font-weight: normal;
}

/* home page styles */

html.home,
html.home body,
html.home #app,
html.home main,
html.home main>div
{
background: #00a5c5;
height: 100%;
}

html.home main
{
color: #FFF;
}

html.home h1
{
font-size: 1.5em;
line-height: 1.125em;
color: #98E75C;
margin: 0 0 0.75em;
font-weight: normal;
}

html.home h1 span
{
color: #FFF;
}

h3
{
font-size: 1.5em;
padding: 0 0 2em;
}

html.product h3
{
text-transform: uppercase;
border-bottom: 1px dotted #222;
margin: 2em 0;
}

.filters a
{
display: inline-block;
margin: 0 0.25em 0.5em 0;
color: #888;
background-color: #EEE;
padding: 0.25em 0.75em;
border-radius: 0.5em;
font-size: 0.9125em;
vertical-align: middle;
-webkit-transition: none;
transition: none;
}

.filters a.current
{
color: #FFF;
background-color: #00a5c5;
}

.filters .count
{
margin-left: 0.5em;
display: inline-block;
padding: .25em .4em;
font-size: 0.75em;
font-weight: bold;
line-height: 1;
text-align: center;
white-space: nowrap;
border-radius: 1em;
position: relative;
top: -0.125em;
background-color: #CCC;
color: #FFF;
}

.filters a.current .count
{
background-color: #98E75C;
}

html.products main section.product
{
color: #FFF;
min-height: 95vh;
position: relative;
overflow: hidden;
}

html.products h3
{
font-weight: normal;
font-size: 1.75em;
padding: 0;
}

html.products main section.product a
{
border: 2px solid #FFF;
border-radius: 0.375em;
padding: 0.5em 0.75em;
color: #FFF;
display: inline-block;
margin: 0 1em 1em 0;
-webkit-transition: background .5s;
transition: background .5s;
text-transform: uppercase;
font-weight: bold;
font-size: 0.875em;
letter-spacing: 0.0375em;
}

html.products main section.product a:hover
{
background: rgba( 255, 255, 255, 0.25 );
}

html.products main .images img
{
-webkit-box-shadow: 0 15px 30px 0 rgba( 0,0,0,0.1 );
box-shadow: 0 15px 30px 0 rgba( 0,0,0,0.1 );
width: 100%;
margin: 1.5em 0;
}

html.product h4
{
text-transform: uppercase;
letter-spacing: 0.025em;
margin: 1em 0;
}

html.product *+h4
{
margin-top: 2em;
}

/* product page styles */

html.product #app>header
{
background: transparent;
}

html.product main>div>header
{
padding-bottom: 0;
}

html.product h1
{
font-size: 1.375em;
margin: 1em 0;
line-height: 1.125em;
letter-spacing: 0.0125em;
}

html.product h1 span
{
color: #FFF;
display: block;
}

main .interrai_hc,
html.product.interrai_hc main>div>header
{
background: #f7810c;
background: -webkit-gradient(linear, left top, left bottom, from(#ffa517), to(#ee5c00));
background:-webkit-linear-gradient(top, #ffa517, #ee5c00);
background:-moz-linear-gradient(top, #ffa517, #ee5c00);
background:-ms-linear-gradient(top, #ffa517, #ee5c00);
background:-o-linear-gradient(top, #ffa517, #ee5c00);
background:linear-gradient(top, #ffa517, #ee5c00);
}

html.product.interrai_hc h1,
html.product.interrai_hc #app>header a.current,
html.product.interrai_hc #app>header a:hover
{
color: #FCCC44;
}

html.product.interrai_hc h4
{
color: #f7810c;
}

main .interrai_ltcf,
html.product.interrai_ltcf main>div>header
{
background: #42ba19;
background: -webkit-gradient(linear, left top, left bottom, from(#70d432), to(#14a000));
background:-webkit-linear-gradient(top, #70d432, #14a000);
background:-moz-linear-gradient(top, #70d432, #14a000);
background:-ms-linear-gradient(top, #70d432, #14a000);
background:-o-linear-gradient(top, #70d432, #14a000);
background:linear-gradient(top, #70d432, #14a000);
}

html.product.interrai_ltcf h1,
html.product.interrai_ltcf #app>header a.current,
html.product.interrai_ltcf #app>header a:hover
{
color: #9afc71;
}

html.product.interrai_ltcf h4
{
color: #42ba19;
}

main .interrai_cha,
html.product.interrai_cha main>div>header
{
background:#0098b7;
background:-webkit-gradient(linear, left top, left bottom, from(#00c3d8), to(#006d95));
background:-webkit-linear-gradient(top, #00c3d8, #006d95);
background:-moz-linear-gradient(top, #00c3d8, #006d95);
background:-ms-linear-gradient(top, #00c3d8, #006d95);
background:-o-linear-gradient(top, #00c3d8, #006d95);
background:linear-gradient(top, #00c3d8, #006d95);
}

html.product.interrai_cha h1,
html.product.interrai_cha #app>header a.current,
html.product.interrai_cha #app>header a:hover
{
color: #33e5ef;
}

html.product.interrai_cha h4
{
color: #00c3d8;
}

main .interrai_hospital_suite,
html.product.interrai_hospital_suite main>div>header
{
background: #274fa9;
background: -webkit-gradient(linear,left top,left bottom,from(#274fa9), to(#063055));
background: -webkit-linear-gradient(top,#274fa9,#063055);
background: -moz-linear-gradient(top,#274fa9,#063055);
background: -ms-linear-gradient(top,#274fa9,#063055);
background: -o-linear-gradient(top,#274fa9,#063055);
background: linear-gradient(top,#274fa9,#063055);
}

html.product.interrai_hospital_suite h1,
html.product.interrai_hospital_suite #app>header a.current,
html.product.interrai_hospital_suite #app>header a:hover
{
color: #4fd6ff;
}

html.product.rai_20 h4
{
color: #274fa9;
}

main .rai_20,
html.product.rai_20 main>div>header
{
background: #af34df;
background: -webkit-gradient(linear, left top, left bottom, from(#af34df), to(#692474));
background:-webkit-linear-gradient(top, #af34df, #692474);
background:-moz-linear-gradient(top, #af34df, #692474);
background:-ms-linear-gradient(top, #af34df, #692474);
background:-o-linear-gradient(top, #af34df, #692474);
background:linear-gradient(top, #af34df, #692474);repair

}

html.product.rai_20 h1,
html.product.rai_20 #app>header a.current,
html.product.rai_20 #app>header a:hover
{
color: #FF6DF1;
}

html.product.rai_20 h4
{
color: #af34df;
}

main .rai_hc,
html.product.rai_hc main>div>header
{
background: #F7810C;
background: -webkit-gradient(linear, left top, left bottom, from(#ffa517), to(#ee5c00));
background:-webkit-linear-gradient(top, #FFA517, #ee5c00);
background:-moz-linear-gradient(top, #FFA517, #ee5c00);
background:-ms-linear-gradient(top, #FFA517, #ee5c00);
background:-o-linear-gradient(top, #FFA517, #ee5c00);
background:linear-gradient(top, #FFA517, #ee5c00);
}

html.product.rai_hc h1,
html.product.rai_hc #app>header a.current,
html.product.rai_hc #app>header a:hover
{
color: #FCCC44;
}

html.product.rai_hc h4
{
color: #FFA517;
}

html.product main .images
{
height: 0;
padding-bottom: 37.5%;
position: relative;
}

html.product main .images img
{
position: absolute;
display: block;
width: auto;
height: 100%;
left: 25%;
z-index: 2;
-webkit-box-shadow: 0 15px 30px 0 rgba( 0,0,0,0.1 );
box-shadow: 0 15px 30px 0 rgba( 0,0,0,0.1 );
}

html.product main .images img+img
{
left: 0;
z-index: 1;
height: 80%;
top: 10%;
}

html.product main .images img+img+img
{
left: auto;
right: 0;
z-index: 0;
}

html.product main ul
{
list-style-type: disc;
}

html.product main img.ais-logo
{
width: 5em;
}

html.about main img
{
width: 100%;
display: block;
}

html.about main h3
{
margin-bottom: 1em;
padding-bottom: 0;
color: #00b4f1;
line-height: 1.125em;
}

html.about main h3 span
{
color: #666;
}

html main>div>section
{
float: left;
width: 100%;
}

html main>div>section>div
{
padding: 1.5em 0;
}

#app main a.logo img
{
width: 100%;
height: auto;
}

#app>footer a.logo
{
display: inline-block;
}

#app>footer a.logo+a.logo
{
margin-left: 2em;
}

#app>footer .logo
{
height: 32px;
}

#app>footer .logo img
{
height: 100%;
}

.r
{
text-align: right;
}

.c
{
text-align: center;
}

main header h1
{
margin-top: 0.5em;
font-size: 1.5em;
}

main header .description p
{
font-size: 1.125em;
line-height: 1.125em;
line-height: 1.25em;
}

main header .description a
{
color: #98E75C;
text-decoration: underline;
}

/* ==========================================================================
	Responsive classes
	========================================================================== */

@media only screen and (min-width: 641px) {

	html.about main section>div+div
	{
	clear: both !important;
	border-top: 1px dotted #222;
	margin-top: 2em;
	padding-top: 2em;
	}

	html.about main img
	{
	float: left;
	width: 40%;
	margin: 0 2.25em 1.75em 0;
	}
}

@media only screen and (min-width: 801px) {

	#menu
	{
	display: inline-block !important;
	}

	#menu a
	{
	padding: 1.625em 0;
	}

	#menu a+a
	{
	margin-left: 1.5em;
	}

	[class^="c_"]
	{
	margin-left: 4%;
	}

	[class^="c_1"]
	{
	margin-left: 0;
	}

	.c_1_4,
	.c_2_4,
	.c_3_4,
	.c_4_4
	{
	width: 22%;
	}

	.c_1-2_4,
	.c_2-3_4,
	.c_3-4_4
	{
	width: 48%;
	}

	.c_1-3_4,
	.c_2-4_4
	{
	width: 74%;
	}

	.right,
	.c_4_4,
	.c_3-4_4,
	.c_2-4_4
	{
	float: right;
	}

	.c_1-4_4
	{
	width: 100%;
	}

	html.home main
	{
	font-size: 1.25em;
	line-height: 1.375em;
	}

	html.home main section
	{
	position: absolute;
	top: 40%;
	-ms-transform: translateY(-50%);
	-webkit-transform: translate(0,-50%);
	transform: translate(0,-50%);
	}

	html.home main section .description
	{
	margin-right: 13em;
	}

	html.home #app>footer
	{
	position: absolute;
	bottom: 0;
	}

	html.home main section>div
	{
	background: transparent url('../img/heti_e.png' ) no-repeat right center;
	background-size: 10em;
	height: 10em;
	padding: 1em 0;
	}

	section.product
	{
	display: flex;
	align-items: center;
	}

	html.products h3
	{
	margin: 0 0 1em;
	}

	html.products main .images
	{
	position: absolute;
	top: 10%;
	left: 57.5%;
	width: 50vw;
	height: 80%;
	}

	html.products main .images img
	{
	margin: 0;
	position: relative;
	top: 50%;
	min-width: 550px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	}

	.lg_r
	{
	text-align: right;
	}

}

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

	#menu-button
	{
	background: url('../img/menu.png') no-repeat center center;
	background-size: 50%;
	display: block;
	float: right;
	position: absolute;
	height: 2em;
	width: 2em;
	top: 50%;
	margin-top: -1em;
	right: 2%;
	z-index: 1;
	}

	#menu-button.close
	{
	background-image: url('../img/close.png');
	}

	#menu
	{
	display: none;
	position: fixed;
	text-align: center;
	width: 100%;
	height: 100%;
	}

	#menu.open
	{
	display: block;
	background: rgba( 0, 165, 197, 0.9 );
	}

	#menu a
	{
	display: block;
	padding: 0.5em;
	margin: 1em 0;
	}

	.pull-left-s
	{
	float: left;
	margin-right: 1em;
	}

	html.home main
	{
	padding: 6em 0;
	}

}

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

	#app>header>div,
	#app>main>div>header>div,
	#app>main>div>section>div,
	#app>footer>div
	{
	width: 95%;
	padding-left: 2.5%;
	padding-right: 2.5%;
	}

	.c_1_3+.c_2_3,
	.c_2_3+.c_3_3,
	.c_1-2_3+.c_3_3,
	.c_1_4+.c_2_4,
	.c_2_4+.c_3_4,
	.c_3_4+.c_4_4,
	.c_1-2_4+.c_3_4,
	.c_1-2_4+.c_3-4_4
	.c_2-3_4+.c_4_4
	{
	margin-top: 1em;
	}

}

/* ==========================================================================
	Helper classes
	========================================================================== */

/*
 * Image replacement
 */

.ir
{
background-color: transparent;
border: 0;
overflow: hidden;
/* IE 6/7 fallback */
*text-indent: -9999px;
}

.ir:before
{
content: "";
display: block;
width: 0;
height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden
{
display: none !important;
visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden
{
border: 0;
clip: rect(0 0 0 0);
height: 1px;
margin: -1px;
overflow: hidden;
padding: 0;
position: absolute;
width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus
{
clip: auto;
height: auto;
margin: 0;
overflow: visible;
position: static;
width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible
{
visibility: hidden;
}

/* ==========================================================================
	Print styles.
	Inlined to avoid required HTTP connection: h5bp.com/r
	========================================================================== */

@media print {
	* {
		background: transparent !important;
		color: #000 !important; /* Black prints faster: h5bp.com/s */
		box-shadow: none !important;
		text-shadow: none !important;
	}

	a,
	a:visited {
		text-decoration: underline;
	}

	a[href]:after {
		content: " (" attr(href) ")";
	}

	abbr[title]:after {
		content: " (" attr(title) ")";
	}

	/*
	 * Don't show links for images, or javascript/internal links
	 */

	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content: "";
	}

	pre,
	blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
	}

	thead {
		display: table-header-group; /* h5bp.com/t */
	}

	tr,
	img {
		page-break-inside: avoid;
	}

	img {
		max-width: 100% !important;
	}

	@page {
		margin: 0.5cm;
	}

	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}

	h2,
	h3 {
		page-break-after: avoid;
	}
}
