/* POLICES */
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,300italic,400italic,600,600italic,700,700italic,800,800italic);
.opensans-light{font-family: 'Open Sans', Arial, sans-serif;font-weight: 300;}
.opensans-lightitalic{font-family: 'Open Sans', Arial, sans-serif;font-weight: 300;font-style: italic;}
.opensans-normal{font-family: 'Open Sans', Arial, sans-serif;font-weight: 400;}
.opensans-normalitalic{font-family: 'Open Sans', Arial, sans-serif;font-weight: 400;font-style: italic;}
.opensans-semibold{font-family: 'Open Sans', Arial, sans-serif;font-weight: 600;}
.opensans-semibolditalic{font-family: 'Open Sans', Arial, sans-serif;font-weight: 600;font-style: italic;}
.opensans-bold{font-family: 'Open Sans', Arial, sans-serif;font-weight: 700;}
.opensans-bolditalic{font-family: 'Open Sans', Arial, sans-serif;font-weight: 700;font-style: italic;}
.opensans-extrabold{font-family: 'Open Sans', Arial, sans-serif;font-weight: 800;}
.opensans-extrabolditalic{font-family: 'Open Sans', Arial, sans-serif;font-weight: 800;font-style: italic;}

/* GENERAL */
body { height:100%; font: 14px/19px 'Open Sans', Arial,sans-serif; font-weight: 400; color: #54585a; background:#eeefee; margin:0; padding:0; }
ul, ol { margin: 0; padding: 0; list-style:none; }
h1, h2, h3, h4, h5, h6 { font-weight:normal; margin:0; padding:0; vertical-align: baseline; outline: none; }
p { margin: 0; }
a, a:hover { text-decoration:none; }
a { color: #54585a; text-decoration: none; }
a img { border: 0; }
a:hover img, a:focus img, a:active img { opacity: 1; }
.btn:hover, .btn:focus{color: #fff;outline: none;}
*:focus {outline: none;}

/* nwo */
.blocs-hp ul {margin-left: 15px;}
.blocs-hp li {list-style-type: disc;}

.container {position:relative; max-width: 1280px; width: 100%;}
.container-l {max-width: 1440px; width: 100%; margin: 0 auto;}
.mleft-20 {margin-left: 20px;}
.orange,.orange:visited, .orange:hover {color:#ff8200;}
a.orange:hover {text-decoration: underline;}

/************ HEADER **************/
#header {position:relative; background: #fff;}

#header #topheader {position: relative; z-index: 10000;}
#header #topheader #logo {margin-top: 20px; /* max-width:320px; width: 100%; */}
#header #topheader #logo img {max-width: 100%; height:auto;} 

	/************ LANGUAGE SWITCHER **************/
	.lang {position: absolute; top:0; right:15px; height: 25px; background:#fff; overflow: hidden; text-align: center; transition: all 0.3s ease 0s; z-index: 20000; cursor: pointer;}
	.lang:hover {height:auto;} /* adjust height for 4 languages */
	
	.lang ul {display:inline-block;}
	.lang i {display:inline-block; width:10px; font-size: 6px; vertical-align: top; padding-top: 3px;}
	.lang li, .lang a {display:block; width:100%; height:25px; line-height:25px; font-size: 12px; font-weight: 600; text-transform: uppercase; color: #54585a; text-align: left;}
	.lang a:hover {background: rgba(255,255,255,0.2);}
	
	#lang-mobile {display: none;}
	#lang-desktop {padding: 0 5px;}

	/************ MENU **************/
	#header #menu {text-align: right;}
	#header #menu #allianz {display: inline-block; vertical-align: top;}
	#header #menu nav {display: inline-block; margin-bottom:0px; vertical-align: middle;}
	#header #menu .navbar > .container {padding-right: 150px;}
	#header #menu .navbar {min-height: 40px;}

	#header #menu .navbar-toggle .icon-bar {background: #54585a;}
	#header #menu .navbar-nav > li {line-height: 20px; vertical-align: middle; margin-top: -3px;}
	/*#header #menu .navbar-nav > li:nth-child(3) a {border-right: none;}*/
	#header #menu .navbar-nav > li.last a {border-right: none;}
	#header #menu .navbar-nav > li > a {border-right: 1px solid #c7c9c7; padding-top: 0px; padding-bottom: 0px; font-size: 14px; font-weight:600; text-transform: uppercase;}
	
	#header #menu .navbar-nav > li > a:hover, .navbar-nav > li > a.active {color: #ff8200; background: none;}
	#header #menu #allianz {position:absolute; right:0; bottom:-25px; text-align: center; z-index: 8000;}
	#header #menu #allianz a {display: block;}
	#header #menu #allianz p {color: #a0a1a2; font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5em}


/************ HOME **************/
#section-home {background: #eeefee;}
/* #section-home > .container-l {background: url(../bg_home.jpg) no-repeat top center; margin-top: -25px;} */

#section-home .col-lg-3 {padding-top: 80px;}
#section-home .col-lg-9 {text-align: center; padding-top: 80px;}
#section-home .col-lg-9 .row {padding-left: 10px;}
#section-home .col-lg-9 h2 {padding-top: 110px; padding-bottom:103px; font-size: 60px; line-height:60px; color: #fff; text-transform: uppercase;}
#section-home .col-lg-9 h2 b {display: block;}
#section-home .col-lg-9 h3 {color: #fff; font-size: 30px; padding-bottom: 20px;}
#section-home .col-lg-9 h3.cover-title {position:absolute; top:430px; z-index:1;}

#section-home .col-lg-9 .row .blocs-hp {position: absolute; top: 478px; width: 100%;}
#section-home .col-lg-9 .row .blocs-hp > article {padding-right: 0px; padding-left: 0px; text-align: left; margin-bottom: 10px;}
#section-home .col-lg-9 .row .blocs-hp > article:nth-of-type(2) {padding: 0px 10px;}
#section-home .col-lg-9 .row .blocs-hp > article header { line-height: 30px; background: #ff8200; font-size:16px; font-weight: 600; color: #fff; text-transform: uppercase; padding: 15px 20px;}

#section-home .col-lg-9 .row .blocs-hp > article header i {font-size: 32px; vertical-align: middle; margin-right: 15px; padding-top: 3px;}
#section-home .col-lg-9 .row .blocs-hp > article div {background: #fff; padding: 10px 20px; min-height: 173px;}
#section-home .bloc-quote form {height:570px;}

	/************ BLOC QUOTE **************/
	.bloc-quote {position:relative; width: 320px; margin:0 auto;}
	.bloc-quote header {display:block; width: 260px; height:80px; background: #fff; padding: 20px; font-size: 30px; text-transform: uppercase; font-weight: 600;}
	.bloc-quote header span {font-size: 20px; font-weight: 400; display: block; line-height: 25px;}
	.bloc-quote .triangle-top {position: absolute; top:0; right:0; width: 0; height: 0; border-style: solid; border-width: 0 61px 61px 0; border-color: transparent transparent #fff transparent;}

	#view-quote {display: none;}
	#quote-error-message { margin-bottom: 0px;}
	#quote-error-message p {font-size: 14px; font-weight: 400;}

	.bloc-quote form {background: #fff; padding: 25px 20px 20px 20px; margin-top: -20px;}
	.bloc-quote form label { font-size: 16px; font-weight: 600; padding-top: 15px;}
	.bloc-quote form p {font-size: 16px; font-weight: 600;}
	.bloc-quote form input, .bloc-quote form select {border-radius: 0px; height: 40px; color: #a1a3a4;}
	.bloc-quote form input[type="radio"] {height:auto;} /* override height for radio */
	.bloc-quote form .form-group > .form-50 {display: inline-block; width: 130px; margin-left: 15px;}
	.bloc-quote form .form-group > div:first-child {margin-left: 0px;}
	.bloc-quote form .form-group > div > input.calendar {background: url(../calendar.png) no-repeat 90% center;}
	.bloc-quote form .form-group > .form-33 {display: inline-block; width: 80px; margin-left: 15px;}
	.bloc-quote form .form-group > .form-33 > label {font-size: 14px; font-weight: 400; padding-top: 10px;}
	.bloc-quote form .form-group > .form-44 {display: inline-block; width: 21%;}
	.bloc-quote form .form-group > .form-44:not(:first-child) {margin-left: 10px;}
	.bloc-quote form .form-group > .form-44 > label {font-size: 14px; font-weight: 400; padding-top: 10px;}
	.bloc-quote form .checkbox {margin-top:20px;}
	.bloc-quote form .checkbox  > label {padding-top:0px;}
	.bloc-quote form button {position:relative; width:100%; height:60px; background: #0077c8; text-align: left; font-size: 20px; font-weight: 600; text-transform: uppercase; color: #fff; padding-left: 20px; margin-top: 5px;}
	
	.bloc-quote form button i {position: absolute; right: 20px; margin-top: 3px;}	
	.bloc-quote form input[type="checkbox"] {height: 15px; margin-top: 0px;}	
	.datepicker table tr td,.datepicker table tr th{font-weight: 600;}
	
	#traveller-type {padding-top:0px;}
	#arrival-country-div .popover-btn {display:inline-block; width: 20px; height: 20px; cursor: pointer; border-radius: 50%; background: #CBCDCD; font-size: 14px; line-height:16px; color: white; border: 0; padding: 0; margin: 0; padding-left: 7px; vertical-align: middle;}

	#traveller-type-div .popover-btn {display:inline-block; width: 20px; height: 20px; cursor: pointer; border-radius: 50%; background: #CBCDCD; font-size: 14px; line-height:16px; color: white; border: 0; padding: 0; margin: 0; padding-left: 7px; vertical-align: middle;}

	#number-of-adult {width: 100%; font-weight: 600;}
	#number-of-child {width: 100%; font-weight: 600;}
	#number-of-infant {width: 100%; font-weight: 600;}
	#number-of-senior {font-weight: 600;}
	#number-of-senior1 {font-weight: 600;}
	#age-of-adult {padding-top:0; font-size: 14px;}
	#age-of-child {padding-top:0; font-size: 14px;}
	#age-of-infant {padding-top:0; font-size: 14px;}
	#age-of-senior {padding-top:0;}
	#age-of-senior1 {padding-top:0;}
	

input, select, textarea {font-size: 14px !important;}

.form-control.error {border: 2px solid #ff0000;}
.bloc-error {display:block; background: #ffd6d6; text-align: center; margin: 0px 15px 30px 15px;}
.bloc-error p {color: #ff0000; padding: 25px 10px;}

/************ PAGE RESULTS **************/

#section-result {padding-top: 40px; margin-bottom: 20px;}
#section-result .col-lg-9 > .row {padding-bottom: 35px;}

	/************ STEPS NAVIGATION **************/
	.bloc-steps {padding-top: 60px;}
	.bloc-steps > .row {background: #fff; margin-left: 0px; border-top: 4px solid #54585a; padding-left: 0px;}

	.steps {margin-top: -22px; padding-bottom: 50px;}
	.steps > ul > li {float: left; width: 33.33%; text-align: center;}
	.steps > ul > li:first-child {text-align: right;}
	.steps > ul > li:last-child {text-align: left;}
	.steps > ul > li > div {display:inline-block; width: 80px; text-align: center;}
	.steps > ul > li > div span {position:relative; display:block; width:40px; height:40px; border: 4px solid #54585a; border-radius:5px; background: #fff; font-size: 25px; font-weight: 700; line-height: 32px; margin: 0 auto;}
	
	.steps > ul > li > div span i {display:none; position: absolute; top:0; left:0; right:0; bottom: 0; padding-top: 3px; color: #fff; font-size: 20px;}

	.steps > ul > li.current > div > span {background: #76797b; border: 4px solid #76797b; color: #fff;}
	.steps > ul > li.valid > div > span {background: #54585a;}
	.steps > ul > li.valid > div > span i {display:block; margin-top: 3px;}
	.steps > ul > li > div p {font-size: 14px; font-weight: 600; padding-top: 10px;}

	
/************ TABLE **************/
	/********** TABLE COLOR **********/
		/**** GREEN ****/
		.table-color-01 > header, .table-color-01 .view-details::before, .table-color-01.table ul > li:nth-child(even)::before {background: #5bc2e7;}
		.table-color-01 .view-details, .table-color-01 .popover-btn {color: #5bc2e7;} /*** Remove important ***/

		/**** BLUE ****/
		.table-color-02 > header, .table-color-02 .view-details::before, .table-color-02.table ul > li:nth-child(even)::before  {background: #6eceb2;}
		.table-color-02 .view-details, .table-color-02 .popover-btn {color: #6eceb2;} /*** Remove important ***/


	.table {padding: 0px 40px; margin: 0px; margin-bottom: 10px; overflow: visible;}
	.table ul {height: 0px; overflow: hidden; transition: all 0.5s ease;}
	.table.open ul {height: auto;}

	.table ul > li {position:relative; line-height: 30px; padding: 0px 20px;}
	.table ul > li i {font-size: 12px;}
	.table ul > li:nth-child(even)::before, .view-details::before {content: ""; display: block; position: absolute; left:0px; z-index: -1; width: 100%; height: 100%; opacity: .35;}
	.table ul > li, .view-details {z-index: 10;}

	.table .left {float: left; max-width: 670px;}
	.table .right {float: right;text-align: right; max-width: 150px;}

	.table .view-details {position:relative; padding: 0px 20px; cursor: pointer;}
	.table .view-details i {display:inline-block; font-size: 20px; vertical-align: middle; margin-right: 10px; margin-top: -2px;}
	.table .view-details p {display: inline-block; line-height: 30px;}

	.table.open .view-details i.icon-plus, .table.open .view-details p.text-plus {display: none;}
	.table.open .view-details i.icon-moins, .table.open .view-details p.text-moins {display: inline-block;}
	.table .view-details i.icon-moins, .table .view-details p.text-moins {display: none;}

	.table header {line-height: 60px; border-top-left-radius: 5px; border-top-right-radius: 5px; padding: 0px 10px; color: #fff;}
	.table header h3, .table header i, .table header p, .table header a {display: inline-block; vertical-align: middle;}	
	.table header .left i {font-size: 30px; margin-left: 15px; margin-top: 3px; line-height: 40px;}
	.table header h3 {font-size: 20px; font-weight: 600;}
	.table header p {font-size: 30px; margin-right: 23px;}
	.table header a {position:relative; padding-right: 30px; line-height: 40px; background: #fdfdfd; border-radius: 3px; padding-left: 15px; color:#54585a; font-size: 20px; text-transform: uppercase; font-weight: 600; cursor: pointer; white-space:nowrap;}
	.table header a i {position: absolute; right: 10px; padding-top: 3px;}


/************ PAGE DECLARATION **************/
#declaration p {line-height: 30px;}
#declaration ul {margin-left: 7%; line-height: 30px; padding: 15px 0 15px 0;}


/************ PAGE DETAILS **************/
#section-details {margin-bottom: 20px;}
#section-details .bloc-quote { float:right; margin-top: 60px;}
#section-details .bloc-quote header { padding-top: 30px; }
#section-details .col-lg-3 { float: right; }
#section-details .col-lg-9 { float:left; padding-left: 0px; }
#section-details .col-lg-9 > .row { margin-right: 5px;}
#section-details .popover-btn {display:inline-block; width: 20px; height: 20px; cursor: pointer; border-radius: 50%; background: #CBCDCD; font-size: 14px; line-height:16px; color: white; border: 0; padding: 0; margin: 0; margin-left: 5px; vertical-align: middle;}

.bloc-quote-content {background: #fff; padding: 15px 20px 20px 20px; margin-top: -20px;}
.bloc-quote-content > p:nth-of-type(1) {border-top: 1px solid #eeefee; padding-top: 10px; z-index: 10; position: relative;}

.bloc-quote-footer { height:80px; background: #6eceb2; color: #fff; padding: 10px; text-align: right;}
.bloc-quote-footer span {display: block; font-size: 30px; text-transform: uppercase; line-height: 35px;}

.bloc-form {padding: 0px 40px;}
.bloc-form header {font-size: 20px; font-weight: 600; padding-bottom:10px; border-bottom: 1px solid #eeefee; margin-bottom: 20px;}
.bloc-form #form-details {padding-top: 20px;}

.bloc-form form input, .bloc-form form select {border-radius: 0px; height: 40px; color: #a1a3a4;}
.bloc-form form .form-group {position:relative;}
.bloc-form form .form-group.col-id-number {display: inline-block; width: 28%;}
.bloc-form form .form-group.col-info {line-height: 40px; margin-left: -15px;}
.bloc-form form .form-group.no-grid-pad[class*='col-']:last-of-type {padding-right: 0; width: auto;}
.bloc-form form .form-footer { margin: 20px 0px 40px 0px; padding-top: 40px; border-top: 1px solid #eeefee;}
.bloc-form form .form-footer button {position:relative; height: 60px; font-size: 20px; font-weight: 600; color: #fff;}
.bloc-form form .form-footer a.back-btn {position:relative; display:block; line-height: 60px; height: 60px; font-size: 20px; font-weight: 600; color: #fff; background: #a1a3a4; text-align:right; padding-right: 20px; text-transform: uppercase; border-radius: 5px;}

.bloc-form form .form-footer a.back-btn:hover {text-decoration: none;}
.bloc-form form .form-footer a.back-btn i {padding-left: 20px; margin-top: 3px;}
.bloc-form form .form-footer .restart-btn {position:relative; display:block; width: 180px; line-height: 60px; font-size: 18px; font-weight: 600; color: #fff; background: #0077c8; text-align:center; text-transform: uppercase; border-radius: 5px;}

.bloc-form form .form-footer .restart-btn i {position: relative; right: 0; margin-top: 3px; font-size: 18px; vertical-align: middle;}
.bloc-form form .form-footer button.pull-right { background: #0077c8; text-align:left; padding-left: 20px;}
.bloc-form form .form-footer button i {font-size: 18px; vertical-align: middle;}
.bloc-form form .form-footer button.pull-right  i {padding-right: 10px; margin-top: 3px;}

.insured {background: #eeefee; padding: 20px 10px; margin-bottom: 10px;}
.insured header {padding: 0px; border: none;}

.birth p {float: left; font-size: 14px; color: #a1a3a4; padding-top: 10px; height: 40px;}
.popover {color: #54585a; width:300px; max-width:300px;}

/************ PAGE PAYMENT **************/
#section-payment {margin-bottom: 20px;}
#section-payment .bloc-quote { float:right; margin-top: 60px;}
#section-payment .bloc-quote header { padding-top: 30px; }
#section-payment .col-lg-3 {float: right;}
#section-payment .col-lg-9 {float:left; padding-left: 0px;}
#section-payment .col-lg-9 .row { margin-right: 5px;}
#section-payment .form-group .pull-left {line-height: 60px; vertical-align: middle;}
#section-payment .form-group .pull-left p {display: inline-block; line-height: 16px;}

#visa-card {background: url(../visa.png) center center no-repeat;}
#visa-card.active {background: url(../visa-active.png) center center no-repeat;}
#master-card {background: url(../mastercard.png) center center no-repeat;}
#master-card.active {background: url(../mastercard-active.png) center center no-repeat;}
#amex-card {background: url(../amex.png) center center no-repeat;}
#amex-card.active {background: url(../amex-active.png) center center no-repeat;}
#diners-card {background: url(../dinner.png) center center no-repeat;}
#diners-card.active {background: url(../dinner-active.png) center center no-repeat;}
#elo-card {background: url(../elo.png) center center no-repeat;}
#elo-card.active {background: url(../elo-active.png) center center no-repeat;}
#upop-card {background: url(../cup.png) center center no-repeat;}
#upop-card.active {background: url(../cup-active.png) center center no-repeat;}

#validate-mess p {font-size: 40px; line-height:40px; font-weight: 600; color: #6eceb2; text-transform: uppercase; text-align: center; padding: 20px 0px 40px 0px;}

#policy {border-top: 1px solid #eeefee; padding: 30px 0px;}
#policy i {font-size: 60px; color: #a1a3a4; margin-right: 15px;}
#policy div {display: inline-block;}
#policy p {font-size: 16px;}
#policy span {font-size: 40px; font-weight: 600; text-transform: uppercase; line-height: 50px}

#confirm-text {border-top: 1px solid #eeefee; padding: 30px 0px 10px 0px;}
#confirm-text p {padding-bottom: 10px;}

.bloc-form form input[type="checkbox"] {height: 15px; margin-top: 0px;}
.payment-btn {width: 80px; height: 50px; border: none; margin-right: 10px;}
.cvv img {margin: 10px 10px 0px 0px;}
.form-footer a i {font-size: 16px; vertical-align: middle;}
.print { display:block; margin-top: 20px; max-width: 650px;}
.paymentWait {position: absolute; left: 50%; top: 50%; width: 100%; transform: translate(-50%, -50%); text-align: center; font-size: 20px; text-transform: uppercase; line-height: 20px;}

.vertical-align {display: flex; align-items: center;}
.nopadding-right {padding-right: 0;}

/************ STATIC PAGE **************/
.bloc-white {padding-top: 60px;}
.bloc-white > .row {background: #fff; margin-left: 0px; padding-left: 0px; min-height: 600px;}
.bloc-white > .row > .content {padding: 40px;}
.bloc-white > .row > .content  h3 {font-size: 20px; font-weight: 600; padding-bottom:15px;}
.content > span > p { margin: 0 0 10px; }
.faq_header {font-weight:bold; margin: 0 0 10px;}
.embed-responsive {position: relative; display: block; height: 0; padding: 0; overflow: hidden;}

#errorPage .bloc-white {padding-top: 0;} /** customize error page **/

/************ FOOTER **************/
footer {text-align: center;}

footer #footer-top {background: #54585a; margin-top: 13px;}
footer #footer-top li a {font-size:14px; text-transform: uppercase; color: #fff;}
footer #footer-top li a:hover {text-decoration:underline;}

footer #footer-bot {padding: 10px 0px 20px 0px;}
footer #footer-bot span {display: block;}
footer #footer-bot p, footer #footer-bot a {display: inline-block; color: #76797b;}
footer #footer-bot a:hover {text-decoration:underline;}