/* /////////////////////////////////////////////////////////////////////
//  Navigation
/////////////////////////////////////////////////////////////////////*/

#primary-navigation .panel-wrapper.right {
  padding: 9rem 3rem 3rem 3rem;
  overflow: auto;
}

#primary-header #header-right-links .location.header-right-label {
  padding-left: 0;
}

#primary-header #header-right-links .login [class^="icon-"], #primary-header #header-right-links .location [class^="icon-"] {
  padding-left: 1rem;
}

#header-right-links .login.small.open {
  background: #3773ca;
}

div[data-side-panel="mobile-menu"] .location {
  background-color: #EFEFEF;
  padding: 2rem 6%;
}

div[data-side-panel="mobile-menu"] .location .icon-geolocation {
  position: relative;
  top: 3px;
  color: #7F7E7E;
  font-size: 2rem;
  margin-right: .5rem;
}

div[data-side-panel="mobile-menu"] .location form {
  display: none;
  position: relative;
}

div[data-side-panel="mobile-menu"] .location form .icon-geolocation {
  position: absolute;
  top: 22px;
  right: 10px;
  background-color: transparent;
}

div[data-side-panel="mobile-menu"] .location .change-location {
  float: right;
}

div[data-side-panel="mobile-menu"] .location input {
  margin-top: 1rem;
  width: 100%;
}

.geo-box .geo-alert {
  display: none;
  clear: both;
}

.geo-box .geo-alert span {
  float: left;
  color: #b6091a;
  margin-right: 10px;
}

#primary-navigation .panel-wrapper.search {
  height: 35rem;
}

#primary-navigation .panel-wrapper.search .search-box .btn {
  margin-bottom: 30px;
}

.panel-wrapper.right.search hr {
  clear: both;
}

.panel-wrapper.right.search a {
  display: block;
}


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

  #primary-navigation .panel-wrapper.right {
    padding-top: 3rem;
  }

  .panel-wrapper.right.search .btn {
    float: right;
  }

  #primary-header #header-right-links .icon-geolocation {
    border-right: 1px solid #4d79bc;
  }

  #primary-navigation .panel-wrapper.location {
      height: 22rem;
      border-bottom-left-radius: 0.5rem;
  }

  #primary-navigation .panel-wrapper.location input {
      width: 100%;
  }

  #primary-navigation .panel-wrapper.location .btn {
      float: right;
  }
}

/* /////////////////////////////////////////////////////////////////////
//  Nav Login Menu
/////////////////////////////////////////////////////////////////////*/

#primary-navigation .panel-wrapper.right ul {
  overflow: visible;
}

.policy-form .select-box,
.policy-form select,
.policy-form input[type="text"],
.policy-form input[type="password"] {
  width: 100%;
  margin-bottom: 1rem;
}

.login-links.claims h3 {
  color: #ef7014;
}

#primary-navigation .panel-wrapper.right .login-links ul,
#primary-navigation .panel-wrapper.right .express_links ul {
  display: inline; /* kit override */
}

.login-links ul li,
.express_links ul li {
  margin-bottom: 0.5rem;
}

.login-links ul li:last-child,
.express_links ul li:last-child,
#service-links .ers ul li:last-child {
  margin-bottom: 3rem;
}

.hide {
  display: none;
}

html[data-isMobilePhone="1"] #primary-header .logInWithMenu,
html[data-isMobilePhone="0"] #primary-header .logInWithMobileApp,
#logInWithMobileApp {
  display: none;
}

html[data-isMobilePhone="0"] #primary-header .logInWithMenu,
html[data-isMobilePhone="1"] #primary-header .logInWithMobileApp,
html[data-isMobilePhone="1"] #logInWithMobileApp {
  display: block;
}

#primary-header #header-right-links li.logInWithMobileApp [class^="icon-"] {
  padding: 0 1rem;
  padding-left: 0.25rem;
}

#manageForm .actions #manageSubmit {
  width: 100%;
}

/* /////////////////////////////////////////////////////////////////////
//  Unsupported IE Notice
/////////////////////////////////////////////////////////////////////*/

#ie-notice .container {
  position: fixed;
  left: 0;
  right: 0;
  bottom: 20px;
  margin: 0px auto;
  color: #FFFFFF;
  text-align: center;
  z-index: 50;
}

#ie-notice p {
  background-color: #FF8800;
  padding: 6px 8px;
  display: inline-block;
}

/* /////////////////////////////////////////////////////////////////////
//  Modals
/////////////////////////////////////////////////////////////////////*/

.modal.external_disclaimer.non-form .modal--call-to-action-bar button,
#external_disclaimer_quote_modal .modal-continue {
  display: none !important;
}

#external_disclaimer_quote_modal.non-form .modal-continue {
  display: inline-block !important;
}

/* /////////////////////////////////////////////////////////////////////
//  Custom Typography
/////////////////////////////////////////////////////////////////////*/
html h1,
html h2,
html h3,
html h4,
html h5,
html h6 {
  margin-bottom: 1.2rem;
  font-weight: normal;
  line-height: normal;
}

html h1 {
  line-height: normal;
  margin-bottom: 3rem;
}

.product h1,
.policy-form h1,
.panel-wrapper h1 {
  font-size: 3.2rem;
}

.product h2,
.policy-form h2,
.panel-wrapper h2 {
  font-size: 24px;
}

.product h3,
.policy-form h3,
.panel-wrapper h3 {
  font-size: 22px;
}

.product h4,
.policy-form h4,
.panel-wrapper h4 {
  font-size: 20px;
}

.product h5,
.policy-form h5,
.panel-wrapper h5 {
  font-size: 18px;
  font-weight: bold;
}

.product h6,
.policy-form h6,
.panel-wrapper h6 {
  font-size: 18px;
  font-weight: normal;
}

table {
  margin-bottom: 2rem;
  padding: .4rem;
  border-collapse: inherit;
  border-spacing: 0;
  border-radius: 4px;
  border: 2px solid rgba(0, 0, 0, 0.1);
}

h1+p,
*+h1,
*+h2,
*+h3,
*+h4,
*+h5,
*+h6 {
  margin-top: 1.2rem;
}

h2+p,
h3+p {
  margin-top: 1rem;
}

h4+p,
h5+p,
h2+h3 {
  margin-top: 0.5rem;
}

h2+h4,
h3+h5 {
  margin-top: 0.2rem;
}

/* /////////////////////////////////////////////////////////////////////
//  Breadcrumbs
/////////////////////////////////////////////////////////////////////*/

#breadcrumbs p {
  margin: 0;
  padding: 1.5rem 2rem;
  font-size: 1.3rem;
}

@media all and ( min-width:768px ) {
  #breadcrumbs p {
  margin: 0;
  padding: 1.5rem 3rem;
  }
}

/* /////////////////////////////////////////////////////////////////////
//  Headline
//////////////////////////////////////////////////////////////////////*/

#title-bar {
  background-color: #3773CA;
  margin: 0;
}

#title-bar.save-money {
  background-color: #4ba449;
}

#title-bar.save-worry {
  background-color: #ff5f4e;
}

#title-bar .h1,
#title-bar h1 {
  font-size: 20px;
  font-weight: bold;
  line-height: 125%;
  color: #ffffff;
  text-align: center;
  margin: 0;
  padding: 2rem;
}

#headline {
  margin-top: 2rem;
}

#headline.form {
  margin-top: 0;
}

#headline-wrapper {
  background-image: none;
  background-repeat: no-repeat;
  border-bottom: 1px solid #e6e3dd;
  margin-bottom: 3rem;
}

#headline-wrapper > .container {
  padding: 3rem 2rem;
}

#headline-wrapper h1,
#headline-wrapper h2,
#headline-wrapper h3,
#headline-wrapper .h3,
#headline-wrapper p,
#headline-wrapper ul li,
#headline-wrapper label,
#headline-wrapper [class*="icon-"] {
  font-weight: normal;
  color: #222222;
}

#headline-wrapper .h2 {
  line-height: 150%;
}

#headline-wrapper p {
  margin: 0 0 1rem 0;
}

#headline-wrapper .inline {
  display: inline;
}

.headline-banner {
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.headline-banner img {
  width: 100%;
  max-width: 100%;
}

.headline-banner.small {
  display: block;
}

.headline-banner.medium {
  display: none;
}

@media all and (min-width: 480px) {
  #headline-wrapper.product {
  text-align: center;
  margin: 0 auto;
  border-bottom: none;
  }

  #title-bar[class*="save-"] + #headline-wrapper {
  text-align: left;
  }

  .headline-banner.small {
  display: none;
  }

  .headline-banner.medium {
  display: block;
  }
}

@media all and (min-width: 768px) {
  #headline-wrapper {
  background-size: cover;
  background-position: center top;
  }

  #title-bar[class*="save-"] + #headline-wrapper #headline {
  height: 30rem;
  padding: 0 3rem;
  }

  /* helper classes */
  #headline .float-left {
  float: left;
  }

  #headline .icon.float-left {
  margin-right: 2rem;
  }

  #headline .no-margin {
  margin: 0;
  }

  #headline-wrapper h1,
  #headline-wrapper h2,
  #headline-wrapper h3,
  #headline-wrapper .h3,
  #headline-wrapper p,
  #headline-wrapper a,
  #headline-wrapper ul li,
  #headline-wrapper label,
  #headline-wrapper [class*="icon-"] {
  color: #ffffff;
  }

  .headline-banner,
  .headline-banner.medium {
  display: none;
  }
}

#headline.form.product {
  padding-bottom: 3rem;
  overflow: auto;
}

#headline.form.product.toggle {
  padding-bottom: 0;
}

#headline.form h1 {
  margin-top: 0;
  font-size: 30px;
}

#headline.form h2 {
  font-size: 22px;
}

#headline.form input[type="text"],
#headline.form input[type="password"] {
  margin: 0
}

#headline.form input[type="text"]:-ms-input-placeholder,
#headline.form input[type="password"]:-ms-input-placeholder {
  font-size: 13px;
}

#headline.form .tooltip-trigger {
  color: #ffffff;
  margin: 1rem;
}

@media all and (min-width: 768px) {
  #headline-wrapper > .container {
  padding: 1.5rem 3rem;
  }

  #headline-wrapper.product > .container {
  padding: 0 0 3rem 0;
  }

  #headline-wrapper.product > .container.toggle {
  padding: 0;
  }

  #headline.form {
  display: table;
  width: 100%;
  }

  #form-contents {
  display: table-cell;
  vertical-align: middle;
  padding: 0;
  height: 44rem;
  }

  #headline.form.product #form-contents {
  height: auto;
  }

  #headline.form.product .container {
  padding: 3rem 3rem 0 3rem;
  }
}

#headline.form .icon {
  display: none;
}

#headline.form .quote h2 {
  display: inline;
  line-height: 150%;
}

#headline.form .quote .zip-elements {
  display: inline;
  white-space: nowrap;
}

#headline.form .quote .zip-elements #zip {
  margin-bottom: 2rem;
}

#headline.form .quote .zip-elements #geolocation {
  cursor: pointer;
  padding: 5px;
  vertical-align: middle;
}

#headline.form #payment input[type="text"],
#headline.form #payment input[type="password"] {
  width: 25rem;
  font-size: 1.5rem;
}

@media all and (min-width: 480px) {
  #headline.form .quote .zip-elements #zip {
  margin-bottom: 1rem;
  }

  #headline.form .quote #submit {
  display: block;
  margin: 0 auto;
  }
}

@media all and (min-width: 768px) {
  #headline.form .quote,
  #headline.form .manage {
  padding-top: 3rem;
  }

  #headline.form .quote.padding-5 {
  padding-bottom: 5rem;
  }

  #headline.form .manage.padding-5 {
  padding-top: 5rem;
  padding-bottom: 5rem;
  }

  #headline.form .quote.padding-10 {
  padding-bottom: 10rem;
  }

  #headline.form .manage.padding-10 {
  padding-top: 10rem;
  padding-bottom: 10rem;
  }

  #headline.form .icon {
  display: inline-block;
  padding: 1.5rem;
  border: 2px solid #ffffff;
  border-radius: 50%;
  margin-bottom: 2rem;
  font-size: 24px;
  }

  .line-break {
  display: block;
  }
}

#headline.form .manage {
  display: none;
}

#headline-wrapper.login #headline.form .manage {
  display: block;
}

#headline-wrapper.login #headline.form .quote {
  display: none;
}

#headline.form .manage input[type="text"],
#headline.form .manage input[type="password"] {
  width: 100%;
  max-width: 31.5rem;
  margin: 0;
}

#headline.form .manage #remember-me label {
  padding: 0.5rem 0 0 4rem;
}

#headline.form .manage #remember-me button {
  margin: 0;
}

#headline.form .manage .form-or, #headline.form #payment .form-or {
  background-image: url("/public/layout_images/homepage/design6/or-h.gif");
  background-position: center center;
  background-repeat: no-repeat;
  height: 2.5rem;
  margin: 1.5rem 0;
  text-align: center;
}

#headline.form .manage .form-or span, #headline.form #payment .form-or span {
  background-color: #ffffff;
  padding: 0 2rem;
  text-align: center;
}

@media all and (min-width: 480px) {
  #headline.form .manage {
  text-align: left;
  }
}

@media all and (min-width: 590px) {
  #headline.form .manage .form-left,
  #headline.form .manage .form-or,
  #headline.form .manage .form-right,
  #headline.form #payment .form-left,
  #headline.form #payment .form-or,
  #headline.form #payment .form-right {
    float: left;
  }

  #headline.form .manage .form-left,
  #headline.form .manage .form-right,
  #headline.form #payment .form-left,
  #headline.form #payment .form-right {
  width: 40%;
  }

  #headline.form .manage .form-or, #headline.form #payment .form-or {
    background-image: url("/public/layout_images/homepage/design6/or-v-black.gif");
    background-position: center center;
    background-repeat: no-repeat;
    height: 27rem;
    padding: 12rem 7%;
  }

  #headline.form .manage .form-or span, #headline.form #payment .form-or span{
  padding: 1.5rem 0 0 0;
  }
}

@media all and (min-width: 768px) {
  #headline.form .manage, #headline.form #payment {
  font-size: 13px;
  width: 72rem;
  margin: 0 auto;
  }

  #headline.form .manage h3, #headline.form #payment h3 {
  font-size: 22px;
  }

  #headline.form .manage .form-left,
  #headline.form .manage .form-right,
  #headline.form #payment .form-left,
  #headline.form #payment .form-right {
  width: 32.5rem;
  }

  #headline.form .manage .form-or, #headline.form #payment .form-or {
    background-image: url("/public/layout_images/homepage/design6/or-v-white.gif");
    padding: 12rem 2rem;
  }

  #headline.form .manage .form-or span, #headline.form #payment .form-or span {
    background: none;
  }
}

#headline-wrapper .task-toggle {
  padding: 3rem 1rem;
}

#headline-wrapper .task-toggle h3 {
  margin-top: 0;
}

#headline-wrapper .task-toggle .quote {
  display: none;
}

#headline-wrapper.login .task-toggle .quote {
  display: block;
}

#headline-wrapper.login .task-toggle .manage {
  display: none;
}

@media all and (min-width: 768px) {
  #headline-wrapper .task-toggle {
    background: rgba(0, 0, 0, 0.5);
    padding: 0;
  }

  #headline-wrapper .task-toggle .container {
    padding: 2rem 0;
  }

  #headline-wrapper .task-toggle .btn--secondary {
    box-shadow: inset 0px 0px 0px 2px #ffffff;
    color: #ffffff;
  }

  #headline-wrapper .task-toggle .btn--secondary:hover,
  #headline-wrapper .task-toggle .btn--secondary:focus {
    background-color: rgba(255, 255, 255, 0.2);
  }

  #headline-wrapper .task-toggle .btn--secondary:active {
    background-color: rgba(255, 255, 255, 0.4)
  }
}

/* /////////////////////////////////////////////////////////////////////
//  Middle Content
//////////////////////////////////////////////////////////////////////*/

#content {
  margin-bottom: 3rem;
}

#content p+p,
#content p+div:not([class*="modal"]),
#content p+form,
#content ul+*,
#content ol+*,
#content p+table {
  margin-top: 1rem;
}

#content ul,
#content ol {
  padding-left: 2rem;
  margin-bottom: 2rem;
}

#content ul li,
#content ol li {
  margin-left: 2rem;
}

#content ol li {
  list-style: decimal outside none;
}

@media all and (min-width: 768px) {
  #content .content-section p + div {
    margin-top: 0;
  }
}

.pdfSpan {
  background: url('/public/images/icons/pdf.gif') no-repeat top left;
  padding-left: 2rem;
}

.noteText,
.note_text,
.note-text {
  display: block;
  background-color: #f7f7f7;
  font-size: 1.2rem;
  line-height: 1.8rem;
  overflow-y: auto;
  color: #222222;
}

.noteText p,
.note_text p,
.note-text p {
  font-size: 1.2rem;
  line-height: 1.8rem;
  margin-bottom: 1rem;
}

.noteText a,
.note_text a,
.note-text a {
  color: rgba(112, 112, 112, 0.5);
}

.disclaimer {
  max-width: 101.7rem;
  max-height: 100%;
  margin: 3rem auto;
}

span.disclaimer {
  display: block;
  padding: 3rem;
}

.toggleLink{
  margin: 0;
  color: #154995;
  text-decoration: underline;
  cursor: pointer;
}

.toggleLink:hover{
  text-decoration: none;
}

.toggleContent {
  display: none;
}

.toggleContent p {
  margin: 0 0 .5em 0;
}

@media (max-width: 767px) {
  .noteText,
  .note_text,
  .note-text {
  padding: 1.5rem;
  }
}
@media (min-width: 768px) {
  .noteText,
  .note_text,
  .note-text {
  padding: 3rem;
  }

  .noteText div,
  .note_text div,
  .note-text div {
  margin-bottom: 30px;
  }
}


/* /////////////////////////////////////////////////////////////////////
//  Margin Boxes
/////////////////////////////////////////////////////////////////////*/

#margin .box {
  padding-right: 1.5rem;
  padding-left: 1.5rem;
}

#margin .box {
  margin-bottom:4rem;
}
.margin-headline {
  display: flex;
  align-items: center;
  border-bottom:.1rem solid #CDCDCD;
  padding-bottom:1rem;
  margin-bottom:1rem;
  width:100%;
  min-height:4.5rem;
  height:auto;
}

.margin-title {
  font-size:2.4rem;
  width:75%;
  vertical-align: text-bottom;
  line-height:2rem;
  float:left;
}

.margin-headline h3 {
  flex-grow: 1;
  margin: 0;
}

.margin-headline .geico-icon {
  margin-right: 10px;
  min-width: 30px;
}

#contact_icons {
  overflow: hidden;
  width: 100%;
  margin: 0 auto;
  padding: 0;
}

#contact_icons li {
  float: left;
  width: 33.3333%;
  margin: 0;
  padding: 0;
  color:#154995;
  text-align: center;
}

#contact_icons li a p {
  width: 38px;
  margin: 0 auto;
}

#contact_icons li a p:hover {
  text-decoration: none;
}

.gfr_margin p {
  margin:0;
}

#margin #quoteForm #zip,
#margin #quoteForm .select-box {
  width: 100%;
  margin-bottom: .5em;
}

#margin #quoteForm .marginQuoteSelect {
  width: 100%;
}

#margin #quoteForm .margin-quote-submit {
  display: block;
  clear: both;
  width: auto;
  text-align:center;
  margin:0;
}

#margin .quick_claims a {
  width: 100%;
  display: block;
  margin-bottom: 1rem;
  text-align: center;
}

#margin .quick_claims img {
  display: none;
}

#margin .learnmore p {
  line-height:auto;
  margin:.25rem;
}

#margin .insights p {
  margin-bottom:0;
}

#margin .box.insurance_products ul ul {
  margin-bottom: 0;
}

#margin .box.insurance_products li {
  padding: 0;
  margin-top: 0.5rem;
}

#readLink {
  margin-bottom:.5rem;
}

@media (min-width: 481px) {
  #margin #boxes {
  display: table;
  width: 100%;
  }

  #margin .box {
  width: 49%;
  float: left;
  min-height: 1rem;
  }

  #margin .box:nth-child(even) {
  clear: right;
  }

  #margin .box:nth-child(odd){
  margin-right: 2%;
  }

  #margin .box.contactus,
  #margin .box.quotebox,
  #margin .box.learnmore {
  min-height: 20rem;
  }
}

@media (min-width: 768px) {
  #margin .box {
  width: 100%;
  display: block;
  margin-right: 0;
  }

  #margin .box .card-content {
  padding-right: 3rem;
  padding-left: 3rem;
  }

  #margin .box.contactus,
  #margin .box.quotebox,
  #margin .box.learnmore {
  min-height: 0;
  }

  #margin .box img {
  max-width: 100%;
  }

  .margin-title {
  font-size:2.4rem;
  }

  #margin #quoteForm .margin-quote-submit {
  display: block;
  clear: both;
  width: auto;
  float: right;
  }
}

/* Bazzarvoice Reviews */
#margin .bazaarvoice-review {
  margin-top: 15px;
}
#margin .bazaarvoice-review span {
  float: left;
  margin-right: 5px;
}
#margin .bazaarvoice-review img {
  margin-bottom: 2px;
}
#margin .bazaarvoice-review .bazaarvoice-review-author {
  font-weight: bold;
}


/* /////////////////////////////////////////////////////////////////////
//  Helper Classes
/////////////////////////////////////////////////////////////////////*/
#geolocation {
  display: none;
}
a.icon-geolocation{
  text-decoration: none;
}
.scaled {
  display: block;
  float: none;
  max-width: 100%;
  height: auto;
  padding:1.25em 0;
}

.large_only {
  display: none;
}

.small_only {
  display: inline;
}

table.scroll_table {
  display: inline-block;
  overflow: auto;
  max-width: 36.25rem;
}

.subpageImage {
  display: block;
  width: auto;
  max-width: 60%;
  height: auto;
  margin: 10px auto;
  margin: 1rem auto;
}

.no-circle {
  border-style: none;
}

@media all and ( min-width:768px ) {
  .large_only {
  display: inline;
  }

  .small_only {
  display: none;
  }
}

@media (min-width: 768px) {

  .subpageImage {
  float: right;
  max-width: 40%;
  margin: 10px;
  margin: 1rem;
  }
}

#content table {
  width: 100%;
}

#content table tbody tr:nth-child(odd) {
  background-color: #EDEDED;
}

#content table tr {
  vertical-align: top;
}

#content table tr th,
#content table tr td {
  padding-top: 15px;
  padding-top: 1.5rem;
  padding-bottom: 15px;
  padding-bottom: 1.5rem;
  padding-left: 10px;
  padding-left: 1rem;
  padding-right: 10px;
  padding-right: 1rem;
  text-align: left;
}

#content table tr th {
  font-size: 13px;
  font-size: 1.3rem;
  font-weight: 400;
}

#content table tr td {
  font-size: 12px;
  font-size: 1.2rem;
}

@media (min-width: 481px) {
  #content table tr th,
  #content table tr td {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 20px;
  line-height: 2rem;
  }
}

#external_disclaimer {
  max-width: 300px; 
  margin: 0 auto; 
  padding-bottom:1rem; 
  clear:both; 
  color:#154995; 
  font-weight:bold;
}
@media all and ( min-width:768px ) {
  #external_disclaimer {
    max-width: 200px; 
  }
}
/* /////////////////////////////////////////////////////////////////////
//  Lists
/////////////////////////////////////////////////////////////////////*/

#content ul li {
  list-style: disc outside;
  overflow: visible;
}

/* if design kit list modifiers are used, fix our list display */
#content ul[class*="list--"] li {
  list-style: none;
  margin-left: 0;
}

/* /////////////////////////////////////////////////////////////////////
//  Input Fields
/////////////////////////////////////////////////////////////////////*/

input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
input[type="tel"] {
  background-color: #ffffff;
}

::-webkit-input-placeholder {
  color: rgba(0,0,0,0.5);
}

:-moz-placeholder {
  color: rgba(0,0,0,0.5);
}

::-moz-placeholder {
  color: rgba(0,0,0,0.5);
}


/* /////////////////////////////////////////////////////////////////////
//  Cookie Policy Notice
/////////////////////////////////////////////////////////////////////*/

#cookie-notice {
  position: fixed;
  bottom: 1rem;
  left: 1rem;
  width: calc(100% - 2rem);
  padding: 1rem;
  min-width: 30rem;
  max-width: 38rem;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1rem;
  border: 2px solid rgba(0, 0, 0, 0.15);
  box-shadow: 0 1.5rem 1.5rem -1.5rem rgba(0, 0, 0, 0.05), 0 2.5rem 2.5rem 0 rgba(34, 34, 34, 0.05);
  z-index: 38;
  transition: max-width 0.4s;
}

#cookie-notice.hide {
  display: none;
}

#cookie-notice .cookie-notice-content {
  margin-right: 1rem;
}

#cookie-notice p,
#cookie-notice .btn {
  margin-bottom: 0;
}

#cookie-notice p {
  font-size: 12px;
  line-height: 18px;
}

#cookie-notice .btn {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
  width: auto;
}

@media (min-width: 340px) {
  #cookie-notice {
    left: 50%;
    transform: translateX(-50%);
  }
}

@media (min-width: 480px) {
  #cookie-notice .btn {
    padding-left: 3rem;
    padding-right: 3rem;
  }
}

@media (min-width: 768px) {
  #cookie-notice {
    max-width: 75rem;
  }

  #cookie-notice p {
    font-size: 16px;
    line-height: 150%;
  }
}

/* /////////////////////////////////////////////////////////////////////
//  Mobile App Banner & Text Banner
/////////////////////////////////////////////////////////////////////*/

#app_banner::before,
#text_banner::before {
  background: #3773ca;
  box-shadow: 0px 0px 10px #888;
}

#app_banner,
#text_banner {
  display: none;
  background: #fafafa;
  overflow: hidden;
  box-shadow: none;
}

#app_banner.show,
#text_banner.show {
  display: block;
}

#app_banner .banner_content,
#text_banner .banner_content {
  max-width: 38em;
}

#app_banner .geico-icon,
#text_banner .geico-icon {
  width: 10px;
  height: 10px;
  line-height: 6rem;
  font-size: 2.5rem;
  box-shadow: 0px 2px 5px #dbdbdb;
}

#app_banner .geico-icon::before,
#text_banner .geico-icon::before {
  color: #fff;
}

#app_banner .section--geico-blue .geico-icon,
#text_banner .section--geico-blue .geico-icon {
  background: #154995;
}

#app_banner .section--marigold .geico-icon,
#text_banner .section--marigold .geico-icon {
  background: #ef7014;
}

#app_banner .section--gecko .geico-icon,
#text_banner .section--gecko .geico-icon {
  background: #4ba449;
}

#text_banner .banner_icons {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

#app_banner .banner_icons {
  display: inline-grid;
    justify-content: right;
    width: 20%;
}

#app_banner .section,
#text_banner .section {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 65.2px;
}

#app_banner .banner_icons .section {
  height: 55px;
}

#text_banner .font--center {
  font-size: 14px;
  width: 100%;
}

#app_banner .font--center {
text-align: left;
width: 80%;
padding-left: 16px;
font-size: 14px;
}

#app_banner .buttons,
#text_banner .buttons {
  display: flex;
  justify-content: center;
  max-width: 450px;
}

#app_banner .buttons {
  padding: 0;
}

#app_banner .buttons a.btn {
  flex-grow: 1;
  flex-basis: 0;
  padding: 0;
  transition: all 0.15s ease-in,
    flex-grow 1ms, flex-basis 1ms, margin-left 1ms, margin-right 1ms, padding 1ms;
}

#app_banner .buttons .banner_close,
#text_banner .buttons .banner_close {
  margin-left: 10px;
  margin-right: 8px;
}

#app_banner .buttons .app_link {
  /* margin-left: 8px; */
  margin-right: 10px;
  margin-left: 0;
  margin-top: 1.5rem;
}

/*
#text_banner::before {
  background: -webkit-linear-gradient(left, #ef7014 4%, #4789b6 4%, #4789b6 16%, #4ba449 16%, #4ba449 54%, #3773ca 54%, #3773ca 70%, #154995 70%);
  background: -o-linear-gradient(right, #ef7014 4%, #4789b6 4%, #4789b6 16%, #4ba449 16%, #4ba449 54%, #3773ca 54%, #3773ca 70%, #154995 70%);
  background: -moz-linear-gradient(to right, #ef7014 4%, #4789b6 4%, #4789b6 16%, #4ba449 16%, #4ba449 54%, #3773ca 54%, #3773ca 70%, #154995 70%);
  background: linear-gradient(to right, #ef7014 4%, #4789b6 4%, #4789b6 16%, #4ba449 16%, #4ba449 54%, #3773ca 54%, #3773ca 70%, #154995 70%); 
}


#text_banner {
  background: #ffffff;
}
*/

#text_banner #form-message-text_banner_phone_number {
  display: none;
}

#text_banner .banner_icon {
  overflow: hidden;
}

#text_banner .buttons {
  height: 60px;
}

#text_banner .app_link {
  /* margin-top: 5px; */
  margin-left: 5px;
}

#text_banner .banner_close {
  position: absolute;
  background: transparent;
  top: 0;
  right: 0;
  margin-top: 10px;
  padding: 10px;
}

#app_banner .banner_close.btn-close.icon-close {
  position: absolute; 
  background: transparent; 
  top: 0; 
  right: 0; 
  margin-top: 1px; 
  padding: 10px; 
  font-size: 9px;
}

/* /////////////////////////////////////////////////////////////////////
//  Geolocation ZIP Code Fields
/////////////////////////////////////////////////////////////////////*/
.geozip.form-field {
  display: inline-block;
}

.geozip.form-field .zip-code-form {
  width: 15.6rem;
}

.geozip.form-field .zip-code-input {
  margin-bottom: 1rem;
}

#headline-wrapper .geozip.form-field .zip-code-input,
.hero-form .geozip.form-field .zip-code-input,
.review-product-description .geozip.form-field .zip-code-input {
  vertical-align: middle;
}

#headline-wrapper .icon-geolocation,
.geozip.form-field .zip-code-geo-icon {
  color: #9B9B9B;
}

#headline-wrapper .icon-geolocation.active,
.zip-code-form .zip-code-geo-icon.active {
  color: #3773ca;
}

/* /////////////////////////////////////////////////////////////////////
//  Unsupported Browser banner
/////////////////////////////////////////////////////////////////////*/

#unsupported_banner {
  background-color: #f7f7f7;
}

#unsupported_banner .banner_icon {
  color: #B6091A;
}

/* /////////////////////////////////////////////////////////////////////
//  Reviews Stars
/////////////////////////////////////////////////////////////////////*/

@font-face {
  font-family: "geico-extras";
  src:    url("/public/fonts/design6/geico-extras.eot?s6e7ib");
  src:    url("/public/fonts/design6/geico-extras.eot?s6e7ib#iefix") format("embedded-opentype"),
          url("/public/fonts/design6/geico-extras.ttf?s6e7ib") format("truetype"),
          url("/public/fonts/design6/geico-extras.woff?s6e7ib") format("woff"),
          url("/public/fonts/design6/geico-extras.svg?s6e7ib#geico-extras") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-extras-"], [class*=" icon-extras-"] {
  font-family: "geico-extras" !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-extras-star-empty:before{ content: "\e9d7"; }
.icon-extras-star-half:before{ content: "\e9d8"; }
.icon-extras-star-full:before{ content: "\e9d9"; }

/* /////////////////////////////////////////////////////////////////////
//  GDK TEMP CSS FIXES 2019-07-25
/////////////////////////////////////////////////////////////////////*/
#primary-navigation.open .panel-wrapper.open.right {
  padding-top: 9rem;
}

@media all and ( min-width:768px ) {
  #primary-navigation.open .panel-wrapper.open .right,
  .banner.top.show ~ #primary-navigation .panel-wrapper.right {
    padding-top: 9rem;
  }
}

@media all and ( min-width:1000px ) {
  #primary-navigation.open .panel-wrapper.open.right,
  .banner.top.show ~ #primary-navigation .panel-wrapper.right {
    padding-top: 3rem;
  }
}