/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}
/*! HTML5 Boilerplate v7.3.0 | MIT License | https://html5boilerplate.com/ */

/* main.css 2.0.0 | MIT License | https://github.com/h5bp/main.css#readme */
/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html {
  color: #222;
  font-size: 1em;
  line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight:
 * https://twitter.com/miketaylr/status/12228805301
 *
 * Vendor-prefixed and regular ::selection selectors cannot be combined:
 * https://stackoverflow.com/a/16982510/7133471
 *
 * Customize the background color to match your design.
 */

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

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

/*
 * A better looking default horizontal rule
 */

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

/*
 * Remove the gap between audio, canvas, iframes,
 * images, videos and the bottom of their containers:
 * https://github.com/h5bp/html5-boilerplate/issues/440
 */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

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

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
  resize: vertical;
}

/* ==========================================================================
   Browser Upgrade Prompt
   ========================================================================== */

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

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

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

/*
 * Hide visually and from screen readers
 */

.hidden {
  display: none !important;
}

/*
* Hide only visually, but have it available for screen readers:
* https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
*
* 1. For long content, line feeds are not interpreted as spaces and small width
*    causes content to wrap 1 word per line:
*    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
*/

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
  /* 1 */
}

/*
* Extends the .sr-only class to allow the element
* to be focusable when navigated to via the keyboard:
* https://www.drupal.org/node/897638
*/

.sr-only.focusable:active,
.sr-only.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  white-space: inherit;
  width: auto;
}

/*
* Hide visually and from screen readers, but maintain layout
*/

.invisible {
  visibility: hidden;
}

/*
* Clearfix: contain floats
*
* For modern browsers
* 1. The space content is one way to avoid an Opera bug when the
*    `contenteditable` attribute is included anywhere else in the document.
*    Otherwise it causes space to appear at the top and bottom of elements
*    that receive the `clearfix` class.
* 2. The use of `table` rather than `block` is only necessary if using
*    `:before` to contain the top-margins of child elements.
*/

.clearfix:before,
.clearfix:after {
  content: " ";
  /* 1 */
  display: table;
  /* 2 */
}

.clearfix:after {
  clear: both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media print,
  (-webkit-min-device-pixel-ratio: 1.25),
  (min-resolution: 1.25dppx),
  (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid the additional HTTP request:
   https://www.phpied.com/delay-loading-your-print-css/
   ========================================================================== */

@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important;
    /* Black prints faster */
    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 that are fragment identifiers,
     * or use the `javascript:` pseudo protocol
     */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  /*
     * Printing Tables:
     * https://web.archive.org/web/20180815150934/http://css-discuss.incutio.com/wiki/Printing_Tables
     */
  thead {
    display: table-header-group;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}

/* User Added */

body {
  overflow-x: hidden;
}

h1,h2,h3,h4,h5 {
  margin: 0;
  padding: 0;
}

a {
	color: red;
}

.sticky {
	position: fixed;
	top: 0;
	box-shadow: 0px 0px 5px #333;
	z-index: 99;
}

#sapper {
  display: flex;
  flex-direction: column;
  height: 100vh;
}


main {
  font-family: 'Noto Sans', sans-serif;
	padding-top: 95px;
  flex: 1 0 auto;
}


#main-info {
	width: 100%;
}

.content-wrap {
  padding: 40px;
  width: 50%;
  margin: 0 auto;
  font-size: 1.2em;
  overflow: auto;
}

.content-wrap h1,.content-wrap h2, .content-wrap h3, .content-wrap h4 {
  color: #444;
} 

.content-wrap p {
  color: #555;
}

.padding-reset {
	padding: 0;
}

.vehicle-info {
	padding: 5px;
}

.vehicle-info .vehicle-box {
	flex: 1;
	background-color: #f5f5f5;
	text-align: center;
  margin: 25px 10px 0 10px;
	padding: 20px;
}

.vehicle-info .vehicle-box h4 {
	color: #333;
}

.vehicle-info .vehicle-box img {
	width: 50%;
	min-height: 200px;
	min-width: 200px;
}

.vehicle-info .vehicle-guide-link {
	text-align: center;
}

.vehicle-info .vehicle-guide-link button {
	background: none;
	border: 1px solid #333;
	padding: 20px;
	outline: none;
	transition: background-color 0.5s, color 0.5s;
}

.vehicle-info .vehicle-guide-link button:hover {
	cursor: pointer;
	background-color: yellow;
	color: #333;
}

.fact-content {
	flex: 1 auto;
	text-align: center;
	padding: 5px;
	position: relative;
}

.fact-content:not(:last-child) {
/*	border-right: 1px solid #f2f2f2;*/
}

.fact-content h4:after {
	content: "✓";
	margin-left: 5px;
	font-size: 50px;
	color: green;
}

.fact-content .fact-fold-down {
	border-left: 1px solid #999;
	border-bottom: 1px solid #999;
	border-right: 1px solid #999;
	background-color: #fff;
	visibility: hidden;
	position: absolute;
	max-height: 0;
	transition: max-height 0.5s;
	overflow: hidden;
  padding: 10px;
	left: -20px;
  z-index: 1;
}

.fact-content:hover {
	cursor: help;
}

.fact-content:hover .fact-fold-down {
	visibility: visible;
	max-height: 200px;
}

.extra-info {
	width: 100%;
	background-color: #f5f5f5;
}

.extra-info .img-text-wrap {
	margin: 0px 0px 0px 20px;
}

.extra-info .tips {
	padding: 0px 0px;
}
.extra-info .tips li {
	list-style: none;
	padding: 5px 0px;
}

.extra-info .tips li::before {
	content: "»";
	margin-right: 10px;
  color: red;
}

.bg-1 {
}

.image-wrap-left {
  position: relative; 
  flex: 1 0 60%; 
  min-height: 200px;
}


.feature-info-left {
	flex: 0 0 45%; 
	padding: 20px;
}

.image-wrap-right {
  flex: 1 0 45%; 
  position: relative;
}

.feature-image-right {
	position: absolute; 
  height: 100%; 
  width: 100%;
  object-fit: cover;
}

.ready-to-book {
  text-align: center;
}

.ready-to-book a {
  outline: none;
}

h2:target { 
  margin-top: -115px; 
  padding-top: 115px;
}
  
@media screen and (max-width: 450px) {
  #quote-section {
    padding: 0;
  }
  #quote-form-background {
    border-radius: unset !important;
    background-color: rgba(83, 126, 255, 0.6) !important;
  }
  #quote-form .time-dropdown {
    margin: 5px 0;
  }
  .fact-content {
    margin-top: -14px;
    padding: 0;
  }
  .vehicle-info .vehicle-box img {
    width: 50%;
    min-height: 150px;
    min-width: 200px;
  }

}

@media screen and (max-width: 700px) {
  .flex-wrap-sm {
    flex-wrap: wrap !important;
  }
}

@media screen and (max-width: 900px) {

  .content-wrap {
    font-size: 95%;
    width: auto;
    padding: 20px;
  }
  .feature-info-left {
    flex: 1 auto; 
    padding: 20px;
  }

  .feature-image-right {
    flex: 1 auto;
    height: 100%;
    position: relative;
  }

  .width-mobile-reset {
    width: auto !important;
  }
  .extra-info .img-text-wrap {
    margin: 0;
  }
}

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

	#quote-section::before {
		display: block; 
		content: " "; 
		margin-top: -115px; 
		height: 115px; 
		visibility: hidden; 
		pointer-events: none;
	}
}

@media screen and (max-width: 1200px) {
    .width-mobile-reset {
      flex-wrap: wrap !important;
    }
}

@media screen and (max-width: 1500px) {

  .feature-image-right {
  }
}

.fa-1x {
	width: 1em;
	height: 1em;
}
  .browserupgrade {
  	position: fixed;
	top: 0px;
	left: 0px;
	right: 0px;
	background-color: red;
	color: #fff;
	z-index: 9999;
  }

  .browserupgrade a {
  	color: #fff;
   }

  .website-notice {
  	position: fixed;
	text-align: center;
	top: 0px;
	left: 0px;
	right: 0px;
	background-color: yellow;
	color: #000;
	font-weight:bold;
	z-index: 9999;
  }
  
  .website-notice:hover {
  	cursor: pointer;
  }

  #main-header {
    background-color: #fff;
    width: 100%;
    color: #537eff;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    font-family: 'Noto Sans', sans-serif;
    min-height: 70px;
    position: fixed;
    z-index: 99;
    transition: box-shadow 0.5s;
  }


  #main-header h1 {
    color: transparent;
    margin: 0;
    padding: 20px;
    margin-left: 5%;
    flex: 1 20%;
    font-style: italic;
    font-family: sans-serif;
    background-image: url("img/tcr-logo.jpg");
    background-repeat: no-repeat;
    background-position-y: 12px;
    background-size: 400px;
    font-size: 10px;
    width: 100%;
  }

  #main-header h1 a {
    text-decoration: none;
    color: transparent;
    display: block;
    width: 400px;
    height: 50px;
  }

  #main-header h2 {
    color: transparent;
    display: none;
  }

  #main-header nav {
    flex: 1 40%;
  }

  #main-header nav #contact-info-mobile {
    display: none;
    color: #f5f5f5;
  }
  
  #main-header nav #contact-info-mobile a {
    color: #f5f5f5;
  }

  #main-header nav ul li {
    display: inline;
    padding: 10px;
    position: relative;
  }

  #main-header nav ul li a {
    color: #537eff;
    text-decoration: none;
  }
    
  #main-header nav ul .mobile-only {
    display: none;
  }

  #main-header nav ul li .submenu {
    display: none;
    position: absolute;
    background-color: #fff;
    z-index: 1;
    margin: 0;
    padding: 0 0;
    left: 1px;
    top: 40px;
  }

  #main-header nav ul .has-submenu .submenu-arrow {
    position: absolute;
    display: block;
    top: 10px;
    right: -5px;
    transform: rotate(90deg);
    transition: transform 0.5s;
  }

  #main-header nav ul li .submenu li {
    display: block;
    padding: 15px 10px;
    margin: 0;
    white-space: nowrap;
  }

  #main-header nav ul li:not(.has-submenu) a:hover {
    text-shadow: 0px 0px 5px #537eff;
  }


  #main-header nav ul .has-submenu:hover .submenu-arrow {
    transform: rotate(-90deg);
  }


  #main-header #contact-info {
    flex: 1 10%;
  }

  #main-header #contact-info .symbol {
    display: inline-block;
    text-align: center;
    width: 20px;
  }

  #main-header #contact-info a {
    text-decoration: none;
    color: #537eff;
  }
  .selected {
    border-bottom: 2px solid red;
   }
    
  #sidebar-toggle {
    display: none;
  }

  #sidebar-toggle .bar {
    display: block;
    border-bottom: 5px solid #444;
    width: 40px;
    margin-top: 10px;
  }
  
  #sidebar-toggle .bar-alternate {
    border-bottom: 5px solid #fff;
  }

  @media screen and (max-width: 700px) {
    #main-header h1 {
      background-size: 290px !important;
      background-position-y: 10px !important;
      padding: 5px;
    }

    #main-header h1 a {
      width: 290px !important;
    }
    #main-header nav #contact-info-mobile {
      display: block;
      text-align: center;
    }
    #main-header nav ul .mobile-only {
      display: block;
    }
    #contact-info {
      text-align: center;
      display: none;
    }
    #contact-info div {
      display: inline-block;
    }
    #contact-info .symbol {
      font-size: 30px !important;
      margin-right: 15px;
    }
    #contact-info .text {
      display: none;
    }
  }
  
  @media screen and (max-width: 1200px) {
    #main-header nav {
      position: absolute;
      top: 0;
      transition: all ease-in-out 0.2s;
      left: -100%;
      background-color: #333;
      padding: 10px 0;
      z-index: 99;
      width: 100%;

    }

    #main-header nav ul {
      padding: 0;
    }

    #main-header nav ul .has-submenu a {
      cursor: pointer;
    }

    #main-header nav .has-submenu .submenu {
      position: relative;
      background-color: #333;
      width: 100%;
      margin: 0;
      top: 10px;
    }

    #main-header nav .drop-down-menu-active .submenu {
      display: block;
    }

    #sidebar-toggle {
      z-index: 100;
      display: block;
      position: absolute;
      top: 0;
      right: 0px;
      padding: 10px;
      color: #fff;
      cursor: pointer;
      font-weight: bold;
      font-size: 20px;
    }

    #main-header nav ul li {
      display: block;
    }

  }
  
  @media screen and (max-width: 1400px) {
    nav ul li {
      display: inline-block;
      text-align: center;
    }
  }

  @media screen and (max-width: 1670px) {
      #main-header h1 {
        margin-left: 10px;
        flex: 1 12%;
        background-size: 320px;
        background-position-y: 20px;
      }

      #main-header h1 a {
        width: 320px;
      }

      #contact-info {
        flex: 1 5%;
        white-space: nowrap;
       }
  }

  @media screen and (min-width: 1201px) {
    #main-header nav ul .has-submenu:hover .submenu {
      display: block;
    }
  }

  .mobile-menu-visible {
    left: 0 !important;
  }
