/* 
  ------------------------------------------------
  Groupe VIGILIS - AACOCQ Stylesheet
  PVII Affinity - Boardroom framework
	Last revision - 2018-07-16
  ------------------------------------------------
*/
body {
	background-color: #FAFAFA;
	font-family: 'Open Sans', sans-serif;
	margin: 0px 0px 30px 0px;
	font-size: 16px;  /*<-- hack to force Opera to adjust font size */
}

/* Theme colors */
.red { color: #E1001C;}
.blue { color: #006E9C;}


#masthead {
	position: relative;
	z-index: 4000 !important; /* z-index: 9999991;  <== Changed this value to accommodate pop-up campaigns */
	/*z-index: 1001; */
}

img {	
	border: none; 
}

hr {
  border: none;
  height: 1px;
  /* Set the hr color */
  color: #999; 
  background-color: #999;
	margin: 10px 0px;
}

/*Drop Menu Magic Adjustments*/
.p7DMM03 {
	font-family: 'Open Sans Condensed', sans-serif;
	font-size: 1.2em;
}
.p7DMM03.p7DMM.p7dmm-left {
	padding-left: 20px;
}
.p7DMM03.p7DMM.p7dmm-right {
	padding-right: 20px;
}


/*Baseline Adjustment for images needed with strict DOCTYPE*/
img {vertical-align: bottom;}

/*General content links */
a:link, a:visited {
	color: #E1001C;
	text-decoration: none;
}

a:hover {
	color: #006E9C; 
	text-decoration: underline;
}

/*Logo, Top menu and Banner*/
#logo {
	max-width: 1100px; margin: 0 auto;
	padding: 10px 24px 0px 24px;
	background-color: #ffffff;
	color: #000;
}

/*Top menu*/
#logo .topmenu {
	margin: 10px 6px 0px 0px; 
	font-size: .85em;
	text-align: right;
	}
#logo .topmenu a:link, .topmenu a:visited, .topmenu .lastlink {
	color: #000;
	text-decoration:none; 
}
#logo .topmenu a:hover {
	color: #C13F45;
}
.nextlink {
	border-right: 2px solid #C13F45; 
	padding: 0px 4px;
}
.lastlink {
	padding: 0px 0px 0px 4px;
}
.phone {
	margin: 0px 6px 8px 0px; 
	color: #E1001C;
	font-size: 1.6em; 
	text-align:right;
	white-space:nowrap;
} 
/*End topmenu */

/* ====== BANNER STUFF ====== */

/*Full width image banner */
#banner {
	background-color: #FFF;
	background-image: url(../aacocq/images/banner.jpg);
	background-position: center 50%;
	background-repeat: no-repeat;
	height: 343px;
}
/*Text overlaping image banner*/
.textbox {
  float: right;
	width: auto;
	background-color: transparent;
	height: 343px;
}
.textbox p {
	margin-top: 240px;
	text-align:center;
	padding-right: 40px;
}

/*Replacement banner for mobiles (see mobile version below)*/
#banner-two {
	display: none;
	border-top: 2px solid #fff;
	border-bottom: 2px solid #fff;
	font-size: 1.1em;
	line-height: .9em;
}
.textbox-two {
  width: auto;
  color: #fff;
	text-align:center;
	background-color: rgba(255,255,255,1) !important;
}
p.textbox-print {
	display: none;
}
/*End replacement banner for mobiles (see mobile version below)*/
/* ====== END BANNER STUFF ====== */

/*Wrapper to make YouTube video responsive*/
.video-container { 
	position: relative; /* keeps the aspect ratio */ 
	padding-bottom: 56.25%; /* fine tunes the video positioning */ 
	overflow: hidden;
}
.video-container iframe, .video-container object, .video-container embed { 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100%; 
	height: 100%;
}
/*END YouTube wrapper*/

/*Entry buttons.*/
p.btn { margin: 30px 20px; }

a.btn-ared:link, a.btn-ared:visited { display: block; border-radius: 3px; background-color: #006E9F; padding: 10px !important; color: #fff; text-decoration: none; font-size: 1em; }
a.btn-ared:hover, a.btn-ared:active { background-color: #CE5423;}

a.btn-bleu:link, a.btn-bleu:visited { display: compact; border-radius: 3px; background-color: #006E9F; padding: 14px !important; color: #fff; text-decoration: none; font-size: 1.2em; }
a.btn-bleu:hover, a.btn-bleu:active { background-color: #CE5423;}

a.btn-orange:link, a.btn-orange:visited { display: compact; border-radius: 3px; background-color: #CE5423; padding: 14px !important; color: #fff; text-decoration: none; font-size: 1.2em; }
a.btn-orange:hover, a.btn-orange:active { background-color: #023047;}

/*Infolettre button*/
a.btn-white:link, a.btn-white:visited { display: block; border-radius: 3px; background-color: #fff; padding: 10px !important; color: #666; text-decoration: none; font-size: 1.4em; text-align:center; }
a.btn-white:hover, a.btn-white:active { background-color: #E1001C;}

/*cta button*/
a.btn-red:link, a.btn-red:visited { display: block; border-radius: 3px; background-color: #006E9F; padding: 10px !important; color: #fff; text-decoration: none; font-size: 1.2em; }
a.btn-red:hover, a.btn-red:active { background-color: #CE5423;}

/*color frames*/
div .frame-bleu { display: compact; border-radius: 3px; background-color:#fff; border: 1px solid #006E9C; color: #006E9C; text-decoration: none; font-size: 1.4em; }
.frame-bleu p { margin-top: 24px; }

/*small blue framed */
div .framed { border: 1px solid #006E9C; padding: 10px; font-size: .9em; }

/*special centered horizontal blue lines on home page */
.tophr { border-bottom: 2px solid #006E9C; margin-bottom: 20px; max-width: 800px; margin-left: auto; margin-right: auto; }
.btmhr { border-top: 2px solid #006E9C; margin-top: 20px; max-width: 800px; margin-left: auto; margin-right: auto; }

/*Utility Rules for images. Scalable class makes images scale with window size.*/
img.scalable {
	height: auto !important;
	width: auto !important;
	max-width: 100%;
	vertical-align: bottom;
}
/* 
Add the fancy class to the scalable class to add a drop shadow
<img class="scalable fancy"...>
*/
.fancy { 
	box-shadow: 0px 0px 10px rgba(0,0,0,.5);
  background-image:linear-gradient(white, #E7E7E7 100%);
}

/* 
Create button-looking boxes around links to add a drop shadow
and gradient effect
*/
.button-box { 
	box-shadow: 0px 0px 10px rgba(0,0,0,.5);
  background-image:linear-gradient(white, #E7E7E7 100%);
	padding: 30px;
	margin: 20px;
	text-align:center;
	font-size: 1.3em;
	font-variant:small-caps;
}
.button-box a:link, .button-box a:visited {
	color: #000000;
	text-decoration:none;
}
.button-box a:hover {
	color: #E1001C;
	text-decoration:none;
}
.vigilance { 
	font-size: x-large;
}

/*
Classes for the left-side boxes on Personal insurance page 
that host insurance product icons and text 
*/
.items 
{
	margin: 0px 0px;
	text-transform: uppercase;
}
.items .outerbox
{
	display: table;
	height: 80px;
	overflow: hidden;
	width: 100%;
	box-shadow: 0px 0px 10px rgba(0,0,0,.7);
	padding: 0px;
	margin-bottom: 12px;
	font-size: 1.2em;
	background-color: #FFF;
}
.items .outerbox:hover
{
	background-color: #f6f6f6;
	color: #000;
}
.items .outerbox .innerbox
{
	display: table-cell;
	vertical-align: middle;
	width: 100%;
	margin: 0 auto;
	text-align: left;
}
.items .outerbox .innerbox .element a
{
	color: #E1001C;
	text-decoration: none;
	padding: 0px 10px 0px 0px;
	margin-left: 90px;
	display: block;
}
.items .outerbox:hover .innerbox .element a
{
	color: #000;
	text-decoration: none;  	  
}

/*Classes for boxes at the right margin - Insurance pages */
.squares {
}
.squares-titles {
	padding: 0px 10px; 
	margin: 0px; 
	font-size: 1.3em; 
	text-transform: uppercase;
	color: #E1001C;
}
.squares-contents {
	box-shadow: 0px 0px 10px rgba(0,0,0,.5); 
  background-image:linear-gradient(white, #E7E7E7 100%);
	padding: 2px 10px; 
	margin: 14px 0px; 
	font-size: 1em;
	text-transform: uppercase;
	text-decoration: none;
	color: #000;
}
.squares-contents a, .squares-contents a:visited {
	color: #000;
}
.squares-contents a:hover{
	text-decoration: underline;
}

.squares-contents-markgrey {
    box-shadow: 0px 0px 10px rgba(0,0,0,.5);
    padding: 2px 12px;
    margin: 18px 0px;
    font-size: 1em;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff !important;
    background-color: grey !important;
}

.squares-contents-mark {
	box-shadow: 0px 0px 10px rgba(0,0,0,.5); 
	padding: 2px 12px; 
	margin: 18px 0px; 
	font-size: 1em;
	text-transform: uppercase;
	text-decoration: none;
	color: #fff !important;
	background-color: #006E9F !important;
}
.squares-contents-mark a, .squares-contents-mark a:visited {
	color: #fff;
}
.squares-comments {
	background-color: #E7E7E7;
	text-decoration: none;
	color: #333;
	padding: 2px 10px; 
	margin: 0px; 
	line-height: 1.7em;
	font-size: .85em;
}

/*Largeurs de champs des formulaires */
.max60 {
	width: 60%;
}
.max80 {
	width: 80%;
}
.max90 {
	width: 90%;
}

/* 
Add the accented class to the scalable class to add rounded corners and a border.
<img class="scalable accented"...>
*/
.accented {
	border-radius: 5px;
	border: 1px solid #222;
}

/*Clear floats to help view better in DW wysiwyg mode ==> Added NC */
.clearall {
clear:both;
}

/*Layout Wrapper*/
#layout {
	max-width: 1100px;
	margin: 0px auto;
	background-color: #FFF;
	box-shadow: 0px 0px 20px rgba(0,0,0,.5);
	border-radius: 0px 0px 7px 7px;
	border-top: none !important;
}

.contain800 {
	max-width: 800px;
	margin: 0px auto;
}

/*Default Row Structures*/
.affinity-row {
	padding: 0px;
}

/*Clear Fix to Clear Floats*/
.affinity-row:after {
	visibility: hidden;
	display: block;
	content: "\0020";
	clear: both;
	height: 0;
}

/*Strctural wrapper for 2-column row*/
.affinity-row .column-half {
	width: 50%;
	float: left;
}

/*Strctural wrapper for 3-column row*/
.affinity-row .column-third {
	width: 33.3333333%;
	float: left;
}
/*Strctural wrapper for 4-column row*/
.affinity-row .column-fourth {
	width: 25%;
	float: left;
}
/*Strctural wrapper for 5-column row*/
.affinity-row .column-fifth {
	width: 20%;
	float: left;
}

/*Strctural wrapper for 2-column sidebar-left row*/
.affinity-row.sidebar-left .column-1 {
	width: 40%;
	float: right;
}
.affinity-row.sidebar-left .column-2 {
	width: 60%;
	float: right;
}
.affinity-row.sidebar-left .column-content {
	line-height: 1.5;
}
.affinity-row.sidebar-left .column-2 .column-content {
	font-size: .9em;
}

/*Strctural wrapper for 2-column sidebar-right row*/
.affinity-row.sidebar-right .column-1 {
	width: 70%;
	float: left;
}
.affinity-row.sidebar-right .column-2 {
	width: 30%;
	float: left;
}
.affinity-row.sidebar-right .column-content {
	line-height: 1.5;
}
.affinity-row.sidebar-right .column-2 .column-content {
	font-size: .9em;
}
.left-border {
	border-left: 1px solid #999;
}
.right-border {
	border-right: 1px solid #999;
}
.left-right-border {
	border-left: 1px solid #999;
	border-right: 1px solid #999;
}

/*Column Content*/
.column-content {
	line-height: 1.35;
	padding: 8px 24px;
}

.affinity-row.sidebar-right .column-content,
.affinity-row.sidebar-left .column-content,
.affinity-row.thirds.full-height .column-content {
	padding: 8px 24px !important;
}


/*Padding Management for Nested Rows*/
.no-pad-left-top-bottom {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
	padding-left: 0px !important;
}
.no-pad-right-top-bottom {
	padding-top: 0px !important;
	padding-right: 0px !important;
	padding-bottom: 0px !important;
}
.no-pad-top-bottom {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}

/*Padding top for 1-column row  <== Added NL*/  
.pad-top{
	padding-top: 24px;
}

ul.center {
	text-align:center; list-style-position:inside;
}

li.center {
	text-align: center;
}



/*Headings*/
h1, h2, h3, h4 {
	font-family: 'Open Sans', sans-serif;
	line-height: normal;
}
.column-content h1:first-child,
.column-content h2:first-child,
.column-content h3:first-child {
	margin-top: 0px;
}

h1.entry {
	font-size: 1.4em;
	margin: 40px 0px 14px 0px !important;
	color: #006E9F;
	font-weight:normal;
}

h1 {
	font-size: 1.2em;
	margin: 10px 0px 14px 0px;
	color: #006E9F;
	font-weight:normal;
}

h2 {
	font-size: 1.2em;
	font-weight: normal;
	margin: 20px 0px;
	color:#006E9F;
}

h3 {
	font-size: 1.2em;
	font-weight: bold;
	margin: 10px 0px;
	color: #333;
}

h4 {
	font-size: 1em;
	font-weight: bold;
	margin: 30px 0px 0px 0px;
	color: #E1001C;
	
}

h1 a, a:visited {
	color:#006E9C;
}

h2 a, a:visited {
	color:#006E9C;
}

.no-margin-top {
	margin-top: 0px;
}

.no-margin-bottom {
	margin-bottom: 0px;
}

.no-margin-top-bottom {
	margin-top: 0px;
	margin-bottom: 0px;
}

.step1 {
	background-image:url(../aacocq/images/step1.png); background-position: center; background-repeat: no-repeat;
}

.step2 {
	background-image:url(../aacocq/images/step2.png); background-position: center; background-repeat: no-repeat;
}

.step3 {
	background-image:url(../aacocq/images/step3.png); background-position: center; background-repeat: no-repeat;
}

.step4 {
	background-image:url(../aacocq/images/step4.png); background-position: center; background-repeat: no-repeat;
}

/*Use this class when you add a heading inside a row that contains multiple columns.*/
.inner-row-heading {
	position: relative;
	top: 20px;
	margin: 0px 0px 0px 24px;
}

/*Styling for table in Assurance collective page*/
table {
  border-collapse: collapse;
	background-color: #F0F6F8;
}
caption {
	font-family: 'Open Sans', sans-serif;
	color: #006E9C;
	font-size: 1.4em;
	font-weight: normal;
}
th, td {
  border: 1px solid #006E9C;
	padding: 10px;
	text-align: left;
	font-size: .95em;
}
/*End styling for table in Assurance collective page*/

/*Footer and Copyright*/
.footer {
	background-color: #333 !important;
	font-family: 'Open Sans', sans-serif;
	color: #fff;
	font-size: 0.8em;
	padding: 2px 0px;
	line-height: 1.5em;
	text-align:center;
	border-radius: 0px 0px 5px 5px;
	border-top: 2px solid #CE5423;
}

.footer a {
	color: #fff;
	text-decoration:none;
}
.footer a:hover, .footer a:focus {
	color: #999;
	text-decoration:underline;
}
.copyright {
	font-family: 'Open Sans', sans-serif;
	text-align: center;
	font-size: 0.8em;
	clear: both;
	padding: 5px;
}
.copyright a {
	color: #000;
	text-decoration: underline;
}
.copyright a:hover, .copyright a:focus {
	color: #E1001C;
}

.small {
	font-size: smaller;
	}

/* Collapse 4-Columns at 1000px width*/
@media only screen and (min-width: 0px) and (max-width: 1000px) {

/*Strctural wrapper for 4-column row*/
.affinity-row .column-fourth {
	width: 100%;
	float: none;
}

.step1 {
	background-size: contain;
}

.step2 {
	background-size: contain;
}

.step3 {
	background-size: contain; 
}

.step4 {
	background-size: contain;
}

/*Conditional line breaks */
.cnd-break { display:none;}



/*1 Column for Narrow Browser Windows and Smartphones in both orientations*/
@media only screen and (min-width: 0px) and (max-width: 740px) {
body {
	margin: 0px;
}
.p7DMM03.p7DMM.p7dmm-left, .p7DMM03.p7DMM.p7dmm-right {
	padding: 0px !important;
}
#layout {
	max-width: none;
	padding: 0px;
}

/* ====== BANNER STUFF ====== */
#banner {
	display:none;
}
#banner-two {
	display: inline !important;
}
/* ====== END BANNER STUFF ====== */

h1.entry {
	font-size: 1em;
	margin-top: 0px !important;
	line-height: 1.4em;
}

ul.center {
	text-align: left;
	list-style-position: outside;
	padding-left: 26px;
}

/*special centered horizontal blue lines on home page */
.tophr { border-bottom: 2px solid #006E9C; margin-bottom: 0px; max-width: 800px; margin-left: auto; margin-right: auto; }
.btmhr { border-top: 2px solid #006E9C; margin-top: 10px; max-width: 800px; margin-left: auto; margin-right: auto; }

	
.column, .column-1, .column-2, .column-3,
.column-half, .column-third, .column-fourth,
.column-fifth {
	float: none !important;
	width: auto !important;
}
.column-content {
	height: auto !important;
	max-height: 888678px;
	border: none !important;
}

p.btn { margin: 10px 0px; }

a.btn-bleu:link, a.btn-bleu:visited { display: block; padding: 10px 10px !important; font-size: 1em; }


/*color frames*/
div .frame-bleu { border: none; }
.frame-bleu p { margin-top: 4px; }

/*Styling for table in Assurance collective page*/
caption {
	font-size: 1em;
}
th, td {
	font-size: .85em;
}
/*End styling for table in Assurance collective page*/

}
/*Medium windows - reduce padding content padding*/
@media only screen and (min-width: 740px) and (max-width: 1120px) {
#layout {max-width: none;}
}

	
.squares-contents-markgrey {
    box-shadow: 0px 0px 10px rgba(0,0,0,.5);
    padding: 2px 12px;
    margin: 18px 0px;
    font-size: 1em;
    text-transform: uppercase;
    text-decoration: none;
    color: #fff !important;
    background-color: grey !important;
}