/* ==========================================================================
   HTML5 Boilerplate styles
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: rgb(107,139,155);
}

body {
    font-size: 1em;
    line-height: 1.4;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

img {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

body {
    font: 18px/26px 'Open Sans', Helvetica, Helvetica Neue, Arial;
}

.wrapper {
    width: 90%;
    margin: 0 5%;
}

.header-container {

}

.footer-container,
.main aside {

}

.header-container,
.footer-container,
.main aside {

}

.title {

}

/* ==============
    MOBILE: Menu
   ============== */

nav {
  clear: both;
	margin-top: 22px;
}

nav ul {
    margin: 0;
    padding: 0;
}

nav ul li {

}

nav a {
    display: block;
    margin-bottom: 10px;
    padding: 2px;
    
    text-align: left;
    text-transform: uppercase;
    text-decoration: none;
    letter-spacing: 0.15em;
    font-size: 18px;
    line-height: 18px;

    color: white;
    background: none;
    
    border: 1px solid rgb(175,199,211);
}

nav a span {
	display: inline-block;
	width: 100%;
	height: 100%;
	background: rgb(107,139,155) url(../img/butn-arrow.png) no-repeat right center;
	padding: 8px 0;
	text-indent: 20px;
	transition: all 300ms ease-in-out;
		-moz-transition: all 300ms ease-in-out;
			-webkit-transition: all 300ms ease-in-out;
				-o-transition: all 300ms ease-in-out;
}

nav a:hover,
nav a:visited {
    color: white;
}

nav a:hover {
    text-decoration: none;
}

nav a:hover span {
	background-color: rgb(62,102,122);
	transition: all 200ms ease-in-out;
		-moz-transition: all 200ms ease-in-out;
			-webkit-transition: all 200ms ease-in-out;
				-o-transition: all 200ms ease-in-out;
}

/* ==============
    MOBILE: Main
   ============== */

.main {
    padding: 0px 0;
}

.main .clear {
	width: 100%;
	height: 15px;
	clear: both;
}

/* ==============
    MOBILE: Offers
   ============== */

.main .offer {
	background: rgb(234,246,246);
}

.main .offer ul {
	margin: 0;
	padding: 31px 0 0 0;
	list-style-type: none;
	text-align: center;
}

.main .offer ul li {
	display: inline;
	width: 278px;
	padding: 0;
	margin: 0;
}

.main .offer ul li .theoffer {
	display: inline-block;
	width: 277px;
	color: #fff;
	margin: 0 auto 45px auto;
	text-decoration: none;
}

.main .offer ul li .theoffer span {
	display: block;
}

.main .offer .top {
	background: rgb(107,139,155);
	-webkit-box-shadow: inset 0 0px 70px rgba(0,0,0,0.1);
        -moz-box-shadow: inset 0 0px 70px rgba(0,0,0,0.1);
            box-shadow: inset 0 0px 70px rgba(0,0,0,0.1);
}

.main .offer .butn {
	margin-top: 1px;
}

.main .offer .butn a {
	display: inline-block;
	width: 100%;
	height: 36px;
	line-height: 34px;
	background: rgb(46,168,168);
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: #fff;
	-webkit-box-shadow: inset 0 0px 70px rgba(0,0,0,0.1);
        -moz-box-shadow: inset 0 0px 70px rgba(0,0,0,0.1);
            box-shadow: inset 0 0px 70px rgba(0,0,0,0.1);
}

.main .offer .butn a:nth-of-type(1) {
	margin-right: 1px;
}

.main .offer .butn a:hover {
	background: rgb(20,144,144);
}

.main .offer .conditions {
	width: 100%;
	margin-top: 1px;
	background: rgb(119,158,177);
	-webkit-box-shadow: inset 0 0px 70px rgba(0,0,0,0.1);
        -moz-box-shadow: inset 0 0px 70px rgba(0,0,0,0.1);
            box-shadow: inset 0 0px 70px rgba(0,0,0,0.1);
}

.main .offer .system,
.main .offer .terms {
	font-size: 0.9em;
	text-transform: uppercase;
	padding: 17px 0;
}

.main .offer .offername {
	font-size: 3.7em;
	font-weight: 700;
	padding: 12px 0 14px 0;
}

.main .offer .conditions h3 {
	padding: 12px 0 8px 0;
	margin: 0;
	font-size: 1.6em;
	font-weight: 600;
	text-transform: uppercase;
}

.main .offer .desc {
	padding: 0 0 10px 0;
	font-size: 0.9em;
}

/* =========================
    MOBILE: Content Article
   ========================= */

.main article {
 	margin: 37px 0;
    padding: 0;
}

.main article h1 {
    font-size: 1.5em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    line-height: 1.45em;
    margin: 0 0 20px 0;
}

.main article h1.page_title {
    font-size: 2em;
    color: rgb(45,163,163);
    line-height: 1.45em;
}

.main article h2 {
    font-size: 1.2em;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1.45em;
    margin: 0 0 20px 0;
}

.main article p {
 	margin: 0;
    padding: 0 0 36px 0;
    line-height: 1.7em;
}

.main article p img {
	float: left;
	margin: 9px 24px 9px 0;
}

.main article h1,
.main article h2,
.main article h3,
.main article h4,
.main article p,
.main article pre {
	padding-left: 10px;
	padding-right: 10px;
}

.main article hr {
	border-top: 1px solid rgb(204,215,220);
	margin: 5px 0 0 0;
	height: 40px;
}

.main article pre {
	text-align: left;
	white-space: pre-line;
	word-wrap: break-word;
	padding-top: 10px;
	padding-bottom: 36px;
}

.main article pre code {
	display: block;
	padding: 20px;
	background: rgb(234,246,246);
}

.footer-container footer {
    padding: 5px 0;
    margin-bottom: 56px;
    border-top: 1px solid rgb(190,229,229);
   	border-bottom: 1px solid rgb(190,229,229);
   	font-size: 0.9em;
}

.footer-container footer .footerin {
	width: 100%;
	padding: 0 0 15px 0;
	background: rgb(246,247,248);
}

footer .list {
	display: inline;
	float: left;
	width: 100%;
	text-align: center;
	margin-bottom: 12px;
}

footer ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	line-height: 1.8em;
}

footer ul a {
	text-decoration: none;
	color: rgb(107,139,155);
}

footer h4 {
	padding: 20px 0 4px 0;
	font-size: 1.1em;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: 600;
	margin: 0;
}

footer .clear {
	width: 100%;
	height: 15px;
	clear: both;
}

/* ===============
    ALL: IE Fixes
   =============== */

.ie7 .title {
    padding-top: 20px;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

.header-container {
	margin-top: 38px;
	margin-bottom: 33px;
}

.title.logo {
    display: block;
    
    height: 117px;
    background: url(../img/vifib-logo.png) no-repeat 0 0;
    margin: 0;
}

.title.logo a {
	display: block;
    width: 100px;
    height: 117px;
	float: left;
	text-indent: -999px;
}

span.claim {
	display: block;
	overflow: hidden;
	height: 19px;
	width: 180px;
	text-align: right;
	padding: 0;
	margin-right: 4px;
	float: right;
	font-size: 17px;
	text-transform: uppercase;
	line-height: 1em;
	font-weight: 100;
	letter-spacing: 0.27em;
	background: url(../img/claim.png) no-repeat right 2px;
	background-size: 180px auto;
	position: relative;
	top: 106px;
	text-indent: 999px;
}

.headteaser {
	border-top: 1px solid rgb(190,229,229);
	border-bottom: 1px solid rgb(190,229,229);
	padding: 5px 0;
}

.headteaser .teaserin {
	padding: 32px 20px;
	background: rgb(46,168,168);
	text-align: center;
	color: #fff;
	font-size: 28px;
	line-height: 36px;
	-webkit-box-shadow: inset 0 0px 70px rgba(0,0,0,0.15);
           -moz-box-shadow: inset 0 0px 70px rgba(0,0,0,0.15);
                box-shadow: inset 0 0px 70px rgba(0,0,0,0.15);
}

.breadcrumb {
	border-bottom: 1px solid rgb(190,229,229);
	padding: 2px 0;
}

.breadcrumb ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
	background: rgb(246,247,248);
	padding: 4px 12px;
}

.breadcrumb ul li {
	margin: 0;
	padding: 0;
	font-size: 15px;
	color: rgb(107,139,155);
}

.breadcrumb ul li a {
	margin: 0;
	padding: 0;
	float: left;
	padding-right: 14px;
	margin-right: 7px;
	text-decoration: none;
	color: rgb(45,163,163);
	background: url(../img/breadmarker.png) no-repeat right 10px;
	transition: all 300ms ease-in-out;
		-moz-transition: all 300ms ease-in-out;
			-webkit-transition: all 300ms ease-in-out;
				-o-transition: all 300ms ease-in-out;
}

.breadcrumb ul li a:hover {
	color: rgb(62,102,122);
	transition: all 200ms ease-in-out;
		-moz-transition: all 200ms ease-in-out;
			-webkit-transition: all 200ms ease-in-out;
				-o-transition: all 200ms ease-in-out;
}

a {
	color: rgb(45,163,163);
	transition: all 300ms ease-in-out;
		-moz-transition: all 300ms ease-in-out;
			-webkit-transition: all 300ms ease-in-out;
				-o-transition: all 300ms ease-in-out;
}

a:visited {
	color: rgb(107,139,155);
}

a:hover {
	color: rgb(62,102,122);
	transition: all 200ms ease-in-out;
		-moz-transition: all 200ms ease-in-out;
			-webkit-transition: all 200ms ease-in-out;
				-o-transition: all 200ms ease-in-out;
}


/* ==========================================================================
   Media Queries
   ========================================================================== */

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

/* ====================
    INTERMEDIATE: Menu
   ==================== */
   
	.title.logo {
    	width: 100%;
    }
   
	span.claim {
		width: 250px;
		text-align: right;
		padding: 0 0 0 50px;
		float: none;
		background-size: auto auto;
		top: 102px;
	}
	
	nav {
		clear: both;
		margin-top: 22px;
	}
   
    nav a {
        margin-bottom: 0;
    }

    nav li:first-child a {
        margin-left: 0;
    }

    nav li:last-child a {
        margin-right: 0;
    }
    
    footer .list {
		margin: 0 5%;
	}
	
	.main .offer ul li .theoffer {
		margin: 0 30px 45px 30px;
	}
	
	.footer-container footer {
  	 	font-size: 0.7em;
	}
	
	footer .list {
		display: inline;
		float: left;
		width: auto;
		margin: 0 5%;
		text-align: left;
	}

	footer .list.a,
	footer .list.c {
		width: 100px;
	}


    

/* ========================
    INTERMEDIATE: IE Fixes
   ======================== */

    nav ul li {
        display: inline;
    }

    .oldie nav a {
        margin: 0 0.7%;
    }
}

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

/* ============
    WIDE: Menu
   ============ */

    .title {
        float: left;
    }

    nav {
        float: right;
        width: 140px;
    }

/* ============
    WIDE: Main
   ============ */

	.title.logo {
    	width: 70%;
    }
    
    nav {
		clear: none;
		margin-top: 89px;
	}

}

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

/* ===============
    Maximal Width
   =============== */

    .wrapper {
        width: 960px; /* 1140px - 10% for margins */
        margin: 0 auto;
    }
	
}

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

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

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

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

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

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

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/* ==========================================================================
   Print styles
   ========================================================================== */

@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;
    }
}