		body { margin: 0; padding: 0; text-align: left; background-color: #fcfaf4; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 70%; }
		#pgcontainer { width: 70em; margin: 5px auto; background: #fff no-repeat top left; }
		#masthead { padding: 0em 0 2.5em 0; text-align: left; }

		#ctcontainer { margin: 0 auto 0 auto; width: 70em; background: #fff url("/images/graygradient.gif") repeat-x top; border: 1px solid #203436; border-top: 0; border-bottom: 10px solid #203436; text-align: left; }
		div.mainmenu { border-bottom: 3px solid #203436; }
		div.mainmenu .active { border-bottom: 3px solid #AEC5E6; }

		

table {
	padding: 0px !important;
}

img#trustme{
	float: right;

}

div#content {
	width: 85% !important;
	max-width: none !important;
	margin: auto !important;
}

input {
	width: auto;
	max-width: 300px;
	padding: 1px;
	background-color: #ffffff;
	height: 30px;
	border-color: black !important;
	border-width: 1px;
	margin: 0px;

	-moz-box-shadow:    inset 0 0 0px #000000;
  -webkit-box-shadow: inset 0 0 0px #000000;
  box-shadow:         inset 0 0 0px #000000;

}
input#zipcode {
	width: 100%;
	max-width: 175px !important;
	padding: 1px;
	background-color: #ffffff;
	height: 30px;
	border-color: black !important;
	border-width: 1px;
	margin: 0px;

}

input#nextPage {
	width: auto;
    max-width: 300px;
		margin-top: 0px;
    padding-right: 30px;
    margin-bottom: 14px;
    background-color: #fcfaf5;
    height: 34px;
    border-color: black !important;
    border-width: 0px;
    -moz-box-shadow: inset 0 0 0px #000000;
    -webkit-box-shadow: inset 0 0 0px #000000;
    box-shadow: inset 0 0 0px #000000;

}

select {
	width: auto;
	max-width: 300px;
	padding: 1px;
	background-color: #ffffff;
	height: 35px;
	border-color: black !important;
	border-width: 1px;
	margin: 0px;

}

select#picompany {
	width: auto;
	max-width: 300px;
	padding: 1px;
	background-color: #ffffff;
	height: 35px;
	border-color: black !important;
	border-width: 1px;
	margin: 0px;

}

select#picoverage {
	width: auto;
	max-width: 300px;
	padding: 1px;
	background-color: #ffffff;
	height: 35px;
	border-color: black !important;
	border-width: 1px;
	margin: 0px;

}

select#pimonths {
	width: auto;
	max-width: 300px;
	padding: 1px;
	background-color: #ffffff;
	height: 35px;
	border-color: black !important;
	border-width: 1px;
	margin: 0px;

}

table {
	padding: 20px;
}

#helpdiv, .helptitle {

    width: 100%;
    font-size: 100%;
    border: 1px;
    background: transparent;
        background-color: transparent !important;

}



/* A modified version of A List Apart - http://alistapart.com/articles/slidingdoors2/ */
    #nav {
	float:left;
	width:100%;
	background: black;
	margin-bottom: 20px;
}
/*#nav.nobg {
	background:#AEC5E6 url("/images/uai-bg.gif") repeat-x bottom;
}  */
#nav ul {
	margin:0;
	padding:0;
	list-style:none;
	border: 0px solid #000000;
}
#nav li {
	float:left;
	display:inline;
	margin:0px;
	padding: 20px;
	white-space: nowrap;
}
#nav a {
	float:left;
	display:block;
	position:relative;
	left:-9px;
	margin-right:-9px;
	width:.1em;
	padding:5px 10px;
	text-decoration:none;
	font-weight:bold;
	color:#ccc;
}
#nav > ul a {
	width:auto;
}
#nav a {
	float:none;
}
#nav li:hover a {
	background-position:0 -150px;
	color:#ffffff;
}
#nav li:hover {
	background-position:100% -150px;
	color:#ffffff;
}
#nav li.active {
	background-position:0;
	background-color: #ed1b22;
}
#nav li.active a {
	background-position:0 -150px;
	padding-bottom:6px;
	color:#333;
}
#nav #percent {
	padding-left: 0px;
	padding-top: 5px;
	margin-right: 2em;
	background: none;
	font-weight: bold;
	color: #333;
}
.clear {
	clear:both;
}
	#aqphone { color: #203436; font-size: 150%; font-weight: bold; }

		/* bottom menu (continue/go back nav) styles */
		ul.endnav {
			list-style-type: none;
			margin: 0;
			padding: 0;
		}
		ul.endnav li {
			display: inline;
			cursor: pointer;
		}
		ul.endnav li a:link, ul.endnav a:visited, ul.endnav span {
			display: block;
			width: 5em;
			text-decoration: none;
			padding: 5px;
			color: #2d2f91;
			font-weight: bold;
			font-size: 100%;
			background-color: transparent;
			border: 1px solid #2d2f91;
			text-align:center;
			margin-left: 10px;
		}
		ul.endnav li a:hover {
			color: #ffffff;
			background-color: #2d2f91;
			border: 1px solid #2d2f91;
		}
		#footer {
			clear: both;
			margin: 1em 0 .5em 0;
			padding: 0;
			text-align: center;
			display: none;
		 }
		#footer p { margin: 0; padding: 3px; font-size: 90%; color: #666; }

		h1 {
			color:#ed1b22 !important;
			font-weight:bold;
	       		margin: 10; padding: 0;
		       	font-size: 170%; }
		p { margin: 10; padding: 0 0 1em 0; }

		.left { float: left; }
		.right { float: right; }

		.formbtn { padding:5px; margin: 1px; color: #fff; font-size: 100%; font-weight: bold; background-color: #203436; border-top: 1px solid #369; border-left: 1px solid #369; border-bottom: 1px solid #000; border-right: 1px solid #000; }
		.formtext { margin: 1px; width: 8em; height: 1em; }

		ul.endnav li span:hover { color: #F58220; }
		.info { color: #630; font-weight: bold; }
		.error { color: #f03; font-weight: bold; }
		div.error { color: #fff; font-weight: bold; background: red; }
		.required { border: solid 2px #f03; }
		div.debug { font-weight: bold; background: #eee; text-align:left; }

		div.box { float: left; width: 250px; height: 200px; border: 1px solid #203436; padding: 0; text-align: left;}
		div.box table, div.box p { padding-left: 5px; }

		div.bb2box { float: left; width: 25em; height: 36em; padding: 0; border: 2px solid #203436; text-align: left;}
		div.content { padding: 1em 1em 1em 1em; border: none; text-align: left;}
	    div.spacer { float: left; width: 40px; height: 200px; vertical-align: middle; }
	    #loginbox {position: relative; top: 80px; left: 150px; width: 24em; background: #AEC5E6; border: 1px solid #203436; }
		.title {
			padding: 2px 2px 2px 2px;
			color: #000000;
			font-size: 120%;
			font-weight: bold;
			margin-bottom: 20px;
		}

		.close {
			padding: 4px;
			color: #fff; font-size: 100%;
			font-weight: bold;
			background-color: #000000;
			cursor: pointer;
		}
	    .dialog {
				background: #f5f2ea;
				border: 1px solid #000000;
				padding: 20px;
			 }

		div#piclose {
			position: absolute;
    	top: 1px;
    	right: 0px;
			left:auto !important;
		}

		div#emailbox {
			left: 0em !important;
		}
		span#emailclose .close {

		}
	    .fsbb { text-align: left; border: 1px solid #203436;}
        li.question, li.question:hover
        {
            float: right;
            white-space: nowrap; width: auto;
            color: black; background-color: #AEC5E6;
            border: 0;
            padding: 3px 5px 3px 1px;
            font-weight: bold; font-size: 120%;
            cursor: auto;
        }
	.coverage { font-weight: bold; }
	.ziplanding { color: #fff; font-weight: bold; }
	form th { font-weight: bold; }
	form td { font-weight: normal; }
    #help, .help {
			vertical-align: top;
			margin-top: 50px;
		 }
	#helpdiv, .helptitle { width: 100%; font-size: 100%; border: 0px solid #999; background:#203436; }
	.helptitle h1 { text-align: center; color: #fff;
		height: 1.5em;
		filter: Shadow(Color=#333333,
			Direction=135,
			Strength=3);
 	}
	#helptext, .helptext {
		width: 100%;
		float: none;
		background: transparent;
		margin: .3em;
		padding: 2px;
		border: 0px solid #fff;
		    border-top-color: rgb(255, 255, 255);
		    border-top-style: solid;
		    border-top-width: 0px;
		    border-left-color: rgb(255, 255, 255);
		    border-left-style: solid;
		    border-left-width: 0px;
		border-left: 0px solid #999;
		border-top: 0px solid #999;
	}

    #help h1 { margin: 5px 0 10px 5px; font-size: 110%; color: #fff;
		height: 1.5em;
		filter: Shadow(Color=#333333,
			Direction=135,
			Strength=3);
 	}

	fieldset { border: 1px solid #203436; margin: 5px 0 5px 5px; padding: 10px; }
	legend { font-weight: bold; padding: 0 5px 0 5px;}


/* BUTTONS */

button a, button{
    display:block;
    float:left;
    margin:0 7px 0 0;
    border:1px solid #ed1b22;
		border-radius: 3px;
    font-family:"Lucida Grande", Tahoma, Arial, Verdana, sans-serif;
    font-size:100%;
    line-height:130%;
    text-decoration:none;
    font-weight:bold;
    color:#ffffff;
    cursor:pointer;
    padding:10px 20px 10px 20px; /* Links */
    margin:2px;
		background-color: #ed1b22 !important;

}

button{
    width:auto;
    overflow:visible;
    padding:10px 20px 10px 20px; /* IE6 */
}
button[type]{
    padding:10px 20px 10px 20px; /* Firefox */
    line-height:17px; /* Safari */
}
*:first-child+html button[type]{
    padding:10px 20px 10px 20px; /* IE7 */
}
button img, button a img{
    margin:0 3px -3px 0 !important;
    padding:0;
    border:none;
    width:16px;
    height:16px;
		display: none;
}
debug table td { border: 1px solid brown; }
/* STANDARD */

button:hover, button a:hover {
    background-position:0 -151px;
    color:#333;
}
button a:active {
    background-color:#ed1b22;
    border:1px solid #ed1b22;
    color:#fff;
}

/* POSITIVE */

button.positive, button a.positive {
    color:#ffffff;
}
button a.positive:hover, button.positive:hover {
    background-color:#ed1b22;
    border:1px solid #ed1b22;
    border-top: none;
    color:#ffffff;
}
button a.positive:active {
    background-color:#ed1b22;
    border:1px solid #ed1b22;
    border-top: none;
    color:#fff;
}

/* NEGATIVE */

button a.negative, button.negative {
    color:#ffffff;
}
button a.negative:hover, button.negative:hover {
    background:#ed1b22;
    border:1px solid #ed1b22;
    border-top: none;
    color:#ffffff;
}
button a.negative:active {
    background-color:#ed1b22;
    border:1px solid #ed1b22;
    border-top: none;
    color:#fff;
}

.nowrap { white-space: nowrap; }
#rscroll {
	font-family:Arial, Helvetica, sans-serif;
	font-size:9pt;
	background-color:#fff;
	overflow-x:hidden;
	overflow:hidden;
    white-space: nowrap;
	margin:10px 10px 0 0;
	border:1px solid #000000;
}

#recent {
    display: table-cell;
    padding: 5px 0 0 10px;
    float: left;
    width: 170px;
    font-weight: bold;
    height: 210px;
    overflow: none;
}
#carquote { float: none;
 margin: 0 0 0 5px;
 width: auto;
 height: auto;
 background: url(NONE) no-repeat 0 8px;
 display: flex;
 flex-direction: row;
 flex-wrap: wrap;
 justify-content: start !important;
 align-items: flex-start;
 }

#savemoney { display: none; color:#ff0;
 text-align: right;
 font-weight: bold;
 font-size: 170%;
 padding: 130px 1em 1em 1em;
 width: 320px;
 }
#zipform { text-align: left;
 color: #000000;
 width: auto;
 font-weight: bold;
 font-size: 130%;
 margin: 0%;
 }
#go { text-align: center;
 color: #000000;
 width: 85px !important;
 font-weight: bold;
 font-size: 110%;
 padding-top: 32px;
 margin: 0%;
 }

#go p {
	display: none;
}

 .lang { height: 20px; border: none; }


/* BestRate responsive overrides
   Keep AQ2's internal form tables intact. Only the outer page table
   (the one containing the main content and #help) changes on phones. */
*, *::before, *::after { box-sizing: border-box; }
html { width: 100%; }
body { width: 100%; min-width: 0; font-size: 13px; line-height: 1.4; }
#pgcontainer, #ctcontainer {
    width: min(100%, 1120px);
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}
div#content {
    width: 100% !important;
    max-width: 1120px !important;
    padding: 10px 14px;
    margin: 0 auto !important;
}
img { max-width: 100%; height: auto; }
input, select, textarea { max-width: 100%; font: inherit; }
input[type="radio"], input[type="checkbox"] {
    width: auto;
    height: auto;
    max-width: none;
}
#help, #helpdiv, #helptext { overflow-wrap: anywhere; }
#help { padding-left: 16px; min-width: 180px; width: 26%; }
#helpdiv, #helptext, .helptitle { max-width: 100%; }
fieldset { min-width: 0; }
#nav ul { display: flex; flex-wrap: wrap; }
#nav li { float: none; padding: 8px 10px; }
ul.endnav { display: flex; flex-wrap: wrap; gap: 6px; }
ul.endnav li { display: block; }
ul.endnav li a:link, ul.endnav li a:visited, ul.endnav li span {
    margin: 0; min-width: 80px; width: auto;
}
@media (max-width: 800px) {
    div#content { padding: 8px; }
    #help { width: 30%; min-width: 145px; padding-left: 10px; }
    #nav li { padding: 6px 8px; }
}
@media (max-width: 600px) {
    body { font-size: 14px; }
    div#content { padding: 6px; }
    /* Only the immediate outer layout table, not nested form tables. */
    div#content > table, div#content > table > tbody,
    div#content > table > tbody > tr,
    div#content > table > tbody > tr > td {
        display: block;
        width: 100% !important;
        min-width: 0;
    }
    div#content > table > tbody > tr > td#help {
        display: block !important;
        padding: 12px 0 0;
        margin-top: 12px;
        border-top: 1px solid #ccc;
    }
    #nav { margin-bottom: 10px; }
    #nav li { padding: 5px 7px; white-space: normal; }
    fieldset { margin: 5px 0; padding: 8px; }
    input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]),
    select, textarea { max-width: 100%; }
    button { max-width: 100%; white-space: normal; }
    .nowrap { white-space: normal; }
}

/* Form polish: appended after legacy declarations. */
:root { --br-accent: #174f72; --br-border: #bdcbd3; --br-focus: #287ba5; }
form { line-height: 1.5; }
form th, #content th { font-size: 13px; font-weight: 700; color: #243e50; text-align: left; vertical-align: middle; padding: 9px 12px !important; background: #eef3f6; border-bottom: 1px solid #d9e3e8; }
form td, #content td { vertical-align: middle; padding: 6px 9px; }
form label, #content label { font-weight: 600; color: #243e50; line-height: 1.4; }
form input:not([type=radio]):not([type=checkbox]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=image]),
form select, form textarea {
  font: inherit; color: #172e3b; background: #fff;
  border: 1px solid var(--br-border) !important; border-radius: 5px;
  padding: 7px 10px; min-height: 36px; height: auto;
  box-shadow: none; vertical-align: middle;
}
form input:not([type=radio]):not([type=checkbox]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=image]):focus,
form select:focus, form textarea:focus {
  outline: 2px solid var(--br-focus); outline-offset: 1px;
  border-color: var(--br-focus) !important;
}
form input[type=radio], form input[type=checkbox] { width: 16px; height: 16px; accent-color: var(--br-accent); vertical-align: middle; margin: 0 5px 0 0; }
form input[type=button], form input[type=submit], form button {
  font: inherit; font-weight: 700; border-radius: 5px; min-height: 36px;
  padding: 7px 14px; cursor: pointer;
}
form fieldset { border: 1px solid #d3dee5; border-radius: 7px; padding: 12px 14px; margin: 12px 0; }
form legend { font-weight: 700; color: #244b64; padding: 0 7px; }
form textarea { height: auto; min-height: 70px; }
form input:disabled, form select:disabled, form textarea:disabled { background: #f0f2f4; color: #657783; cursor: not-allowed; }
@media (max-width: 600px) {
  form th, #content th { padding: 7px 8px !important; }
  form td, #content td { padding: 5px 6px; }
  form fieldset { padding: 9px; }
  form input:not([type=radio]):not([type=checkbox]):not([type=hidden]):not([type=submit]):not([type=button]):not([type=image]), form select, form textarea { min-height: 40px; }
}

/* Quote review: scoped to retrieve.vml, not other AQ2 forms. */
.br-quote-page { width:100%; max-width:100%; min-width:0; }
.br-quote-options { display:flex; flex-wrap:wrap; align-items:stretch; justify-content:center; gap:20px; max-width:920px; margin:22px auto; }
.br-quote-options .br-quote-card { float:none !important; display:flex; flex-direction:column; width: min(100%, 390px) !important; max-width:100%; min-width:0; margin:0 !important; border:1px solid #cbd8dd !important; border-radius:10px; overflow:hidden; background:#fff; box-shadow:0 4px 16px rgba(22,47,55,.09); box-sizing:border-box; }
.br-quote-card .br-quote-title { float:none !important; width:auto !important; background:#20383c !important; color:#fff !important; text-align:left; padding:15px 17px !important; font-size:17px !important; font-weight:700; line-height:1.35; }
.br-quote-card .br-quote-content { float:none !important; width:auto !important; padding:20px !important; text-align:center; flex:1; box-sizing:border-box; }
.br-quote-content p { margin:0 0 17px; line-height:1.65; }
.br-quote-content big { font-size:15px; }
.br-quote-content .br-quote-price { display:inline-block; font-size:34px !important; font-weight:750; line-height:1.3; letter-spacing:-.5px; color:#20383c; margin:5px 0; }
.br-quote-content i { color:#5c6b72; font-size:13px; }
.br-quote-limits { display:block; width:100%; min-width:0; box-sizing:border-box; text-align:left; border:1px solid #cbd8dd !important; border-radius:8px; padding:15px !important; margin:22px 0 16px !important; }
.br-quote-limits legend { color:#244b64; font-size:14px; font-weight:700; padding:0 8px; }
.br-quote-limits table { width:100%; max-width:100%; border-collapse:collapse; }
.br-quote-limits th, .br-quote-limits td { background:transparent !important; border:0 !important; padding:8px 5px !important; font-size:13px; line-height:1.4; vertical-align:middle; }
.br-quote-limits td:last-child { text-align:right; font-weight:600; white-space:normal; }
.br-quote-card .br-quote-buy { float:none !important; display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:42px; padding:10px 20px; border-radius:6px; cursor:pointer; }
.br-quote-buy img { max-height:16px; width:auto; }
.br-quote-or { display:flex; align-items:center; justify-content:center; align-self:center; font-size:15px; font-weight:800; color:#667980; padding:4px; }
@media(max-width:850px) { .br-quote-options { gap:14px; } }
@media(max-width:600px) {
 .br-quote-options { display:flex; flex-direction:column; align-items:center; margin:14px auto; gap:12px; }
 .br-quote-options .br-quote-card { width:100% !important; }
 .br-quote-card .br-quote-content { padding:15px !important; }
 .br-quote-limits { padding:10px !important; }
 .br-quote-or { padding:2px; }
}


/* Quote card selection fix: legacy .bb2box has height:36em.
   The taller modern card must grow to fit its Buy Me button. */
.br-quote-options .br-quote-card {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible;
}
.br-quote-card .br-quote-content {
    height: auto !important;
    overflow: visible !important;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}
.br-quote-card .br-quote-buy {
    align-self: stretch;
    width: 100%;
    margin-top: auto;
    background: #ed171f;
    border: 1px solid #ed171f;
    color: white;
    font-weight: 700;
}
.br-quote-card .br-quote-buy:hover,
.br-quote-card .br-quote-buy:focus-visible {
    background: #c91019;
    border-color: #c91019;
}
.br-quote-card .br-quote-limits {
    margin-bottom: 18px !important;
}

/* Quote-only: reclaim the empty helper cell and use the available width. */
#content.br-quote-wide { max-width: 1120px !important; width: 100% !important; }
#content.br-quote-wide > table { width: 100% !important; table-layout: auto; }
#content.br-quote-wide > table > tbody > tr > td:first-child { width: 100% !important; min-width: 0; padding-left: 0; padding-right: 0; }
#content.br-quote-wide form#quote { width: 100% !important; max-width: none !important; margin: 0 !important; }
#content.br-quote-wide .br-quote-page { width: 100%; }
#content.br-quote-wide .br-quote-options { max-width: 100%; gap: 12px; margin: 22px auto; }
#content.br-quote-wide .br-quote-options .br-quote-card { flex: 0 1 390px; }
@media (max-width: 600px) {
  #content.br-quote-wide .br-quote-options { gap: 12px; }
  #content.br-quote-wide .br-quote-options .br-quote-card { flex: 0 1 auto; }
}


/* BestRate payment page: content-driven panel height, not legacy 36em. */
#premiumTab.bb2box, #paymentTab.bb2box {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    box-sizing: border-box;
    float: none;
    max-width: 100%;
}
#premiumTab .content, #paymentTab .content {
    height: auto !important;
    overflow: visible !important;
    box-sizing: border-box;
    padding-bottom: 18px;
}
#paymentTab { width: 25em; }
#paymentTab #ccentry, #paymentTab #ccentry td { max-width: 100%; }
#paymentTab #agreetrue, #paymentTab #agreepol { vertical-align: top; margin: 3px 7px 0 0; }
#paymentTab label[for="agreetrue"], #paymentTab label[for="agreepol"] {
    display: inline;
    line-height: 1.5;
    white-space: normal;
    overflow-wrap: break-word;
}
#paymentTab .content > table:last-child { width: 100%; }
#paymentTab .content > table:last-child td { padding-top: 6px; padding-bottom: 6px; }
@media (max-width: 760px) {
    #premiumTab.bb2box, #paymentTab.bb2box { width: 100% !important; }
}


/* Premium acceptance remains inside the premium summary card. */
#premiumTab .br-premium-agreement {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 18px 4px 8px;
    line-height: 1.45;
}
#premiumTab .br-premium-agreement input[type="checkbox"] {
    flex: 0 0 auto;
    margin: 3px 0 0;
}
#premiumTab .br-premium-agreement label {
    flex: 1;
    cursor: pointer;
    font-weight: 600;
}

/* Payment card controls: prevent credit-card number overflowing the panel. */
#paymentTab { box-sizing: border-box; max-width: 100%; }
#paymentTab .content { box-sizing: border-box; min-width: 0; }
#paymentTab table { width: 100%; max-width: 100%; table-layout: fixed; }
#paymentTab #ccentry th { width: 34%; box-sizing: border-box; }
#paymentTab #ccentry td { width: 66%; box-sizing: border-box; min-width: 0; }
#paymentTab #ccno {
    display: block;
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0;
    max-width: 100% !important;
}
#paymentTab #ccentry input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]) {
    box-sizing: border-box;
    max-width: 100%;
}
#paymentTab #ccentry td { overflow-wrap: anywhere; }
