/* EURO STYLES START */

/* CSS Reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
u, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

/* set up basic tag styles */

body {
  line-height: 1.5em;
}

html {
  margin: 0;
  padding: 0;
  height: 100%; }

body {
  color: black;
  font: 12pt Lato;
  margin: 0;
  overflow-x: hidden;
  min-height: 100%;
  display: flex;
  flex-direction: column; }

ul {
  margin-left: 30px;
  margin-bottom: 30px; }
  ul li {
    list-style-type: disc;
    line-height: 1.2em;
    margin-bottom: 15px;
    padding-left: 3px; }

a {
  color: #2C7AE1;
}
a:visited {
  color: #2C7AE1;
}

h1 {
  color: #1d1d1d;
  font-size: 150%;
  font-weight: 900;
  line-height: 1.2em;
  margin-bottom: 15px; }


h2 {
    font-size: 150%;
    margin-bottom: 15px;
}

h3 {
  font-size: 125%;
  margin-bottom: 10px;
}


.content {
  padding: 30px; }
  @media (max-width: 360px) {
    .content {
      padding: 20px 30px; } }

.action-link {
    font-weight: bold;
    text-decoration: underline;
}

/*------------------------- */
/*                          */
/* Euro App specific styles */
/*                          */
/*------------------------- */

/*                */
/* General Styles */
/*                */

@media (max-width: 480px) {
  .mobile-break {
    display: block; } }

@media (max-width: 480px) {
  .medium-or-smaller-size-screen-break {
    display: block; } }

.grey-text {
    color: darkgrey;
}

.no-wrap {
  white-space: nowrap; }

.last-edited {
    background-color: lightgoldenrodyellow;
}

/* heading styles */

.header-container {
  max-width: 1300px;
  display: flex;
}

.purdue-logo-img {
    width: 190px;
    height: 33.8833px;
    padding: 20px 20px 0px 30px;
    margin-bottom: 10px;
}


/*                 */
/* Page Nav Styles */
/*                 */

.breadcrumb-nav-container {
  display: flex;
  font-size: 14pt;
  color: #333;
  text-decoration: none;
  font-weight: 900;
  margin-bottom: 20px;
  flex-wrap: wrap;
  /* vertically align objects to the top of the container */;
  justify-content: start;
}

.breadcrumb-nav-container a {
  text-decoration: none;
}

.breadcrumb-nav-link-separator {
    padding-right: 10px;
    padding-left: 10px;
}

/*             */
/* Form Styles */
/*             */


.form-button {
    background-color: #E0D4B8;
    border: 2pt solid #CFB992;
    border-radius: 5px;
    padding: 5px 10px;
    font-size: 10pt;
    font-weight: bold;
    color: #333;
    text-decoration: none;
    min-width: 80px;
}
.form-button:hover {
    background-color: #E0D4B8;
    border: 2pt solid #816d6d;
}
.form-button:active {
    background-color: #c4b498;
    color: black;
}

.form-outer-container {
  max-width: 800px;

  border: 2pt solid #675c4b;
  padding: 1px;
  background-color: white;
  font-size: 10pt;
}
.form-inner-container {
  display: grid;
  grid-template-columns:  1fr 1fr;
  background-color: #ececec;
}

select {   /* style for selected dropdown list item */
  height: 22px;
  margin: 3px 4px 0 0;
}

.element-text-container {
  align-self: stretch;
  padding: 6px 5px 5px 12px;
  font-size: 10pt;
  border-bottom: 1pt solid white;
  text-align: left;
}

.section-note {
  padding: 7px 5px 7px 12px;
  font-size: 10pt;
  border-bottom: 1pt solid white;
  text-align: left;
  grid-column: span 2;
}

.form-checkbox {
    width: 15px;
    height: 15px;
    margin-right: 5px;
    transform: translateY(2px);
}

.input-field-hint {
    font-size: 9pt;
    padding: 2px 0 0 5px;
    color: #000000;
}

.input-container {
    align-self: stretch;
    border-bottom: 1pt solid white;
    padding: 5px 5px 5px 12px;
    font-size: 10pt;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.read-only-form .input-container,
.read-only-form .element-text-container,
.read-only-form .section-note {
    background-color: #fafafa;
}

.read-only-form .input-container,
.read-only-form .element-text-container {
    padding: 0px 5px 0px 12px;
}

.read-only-form .subsection-title {
    font-weight: normal;
    padding-left: 8px;
}

.form-input {
    height: 22px;
}

.form-title {
    padding: 5px 0 5px 12px;
    font-size: 16pt;
    grid-column: span 2;
    font-weight: 700;
    color: black;
    background-color: #CFB991;
}

.section-form-title {
    padding: 4px 0 4px 12px;
    font-size: 13pt;
    font-weight: bold;
    grid-column: span 2;
    color: black;
    background-color: #CFB991;
}

.subsection-title {
    padding: 5px 0 5px 7px;
    font-size: 10pt;
    font-weight: 900;
    grid-column: span 2;
    color: black;
    border-bottom: 1pt solid white;
    font-family: "Segoe UI", system-ui, sans-serif;
}

.form-setup-error {
    color: red;
}

.form-edit-left-bar {
    background-color: white;
    padding: 3px 5px 0 5px;
    min-width: 110px;
}
.form-edit-right-bar {
    background-color: white;
    padding: 3px 5px 0 5px;
}


/* responsive layout - when the screen is less than 600px wide, make the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 550px) {
  .form-container {
    grid-template-columns: 1fr;
  }
  .element-text-container {
      text-align: left;
      border-bottom: none;
      padding-bottom: 0;
  }
  .input-container {
      grid-column: span 2;
  }
}

.web-form-name {
    font-weight: bold;
}

.pdf-view-div {
  	height: 900px;
	width: 100%;
    min-width: 500px;
	resize: both;
	overflow-x: auto;
	overflow-y: hidden;
	margin-bottom: 30px;
}

.pdf-view-iframe {
	width: 100%;
	height: 100%;

}
.read-only {
  background-color: #CFB991;
  background-color: rgba(207, 187, 145, 0.45);
}

/*                    */
/* File Upload Styles */
/*                    */

.dropzone-upload-container {
  padding: 10px;
  border: 1pt dashed black;
  margin: 1px 4px 0 0;
  background-color: white;
  border-radius: 6px;
}

/*                   */
/* My Account Styles */
/*                   */

.awaiting-data-entry {
   color: #B20000;
}
.awaiting-submission {
   color: #B20000;
}
.awaiting-euro-review {
   color: green;
}
.complete {
   color: green;
}

/*                      */
/* Review Screen Styles */
/*                      */

.euro-review-form-list {
    font-size: 11pt;
    border: 1pt solid grey;
    border-radius: 6px;
    border-spacing: 0;
}

.euro-review-form-list th {
    background-color: #e3e3e3;
    padding: 2px 20px 0px 5px;
    font-weight: bold;
    font-size: 10pt;
    color: #333333;
    vertical-align: bottom;
    line-height: 14pt;
}

.euro-review-form-list .even-row {
    background-color: #fafafa;
}

.euro-review-form-list  td {
    border-top: 1pt solid #dcdcdc;
}

.euro-review-grid-cell {
    font-size: 10pt;
    line-height: 14pt;
    padding: 2px 20px 2px 5px;
}

.euro-review-form-block-title {
    margin-bottom: 5px;
    font-weight: bold;
    padding: 5px 0 3px 5px;
    background-color: #e3e3e3;
}

.euro-review-grid-comment {
    padding: 0px 0 0 5px;
    border-top: none !important;
    font-size: 9pt;
    color: #646464;
}



/*                     */
/* Admin Screen Styles */
/*                     */

.admin-form-list {
    display: grid;
    grid-template-columns: fit-content(100%) fit-content(100%);
    flex-direction: row;
    font-size: 11pt;
}
.admin-form-list-form-name {
  padding: 0px 12px 0 5px;
  font-weight: bold;
  text-decoration: none;
}
.admin-form-list-form-count {
  text-align: right;
  padding-right: 10px;
}

.mobile-wrap {
  white-space: nowrap; }
  @media (max-width: 480px) {
    .mobile-wrap {
      white-space: normal; } }


/*           */
/*   Fonts   */
/*           */


/* lato-300 - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/lato-v11-latin-300.100dadd6d763.eot");
  /* IE9 Compat Modes */
  src: local("Lato Light"), local("Lato-Light"), url("../fonts/lato-v11-latin-300.100dadd6d763.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-v11-latin-300.3e86c4948704.woff2") format("woff2"), url("../fonts/lato-v11-latin-300.6f934cd8100d.woff") format("woff"), url("../fonts/lato-v11-latin-300.ad9795e9e558.ttf") format("truetype"), url("../fonts/lato-v11-latin-300.1aed0c80f99d.svg#Lato") format("svg");
  /* Legacy iOS */ }
/* lato-regular - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/lato-v11-latin-regular.dc7b7052df5c.eot");
  /* IE9 Compat Modes */
  src: local("Lato Regular"), local("Lato-Regular"), url("../fonts/lato-v11-latin-regular.dc7b7052df5c.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-v11-latin-regular.6748e0e1c0be.woff2") format("woff2"), url("../fonts/lato-v11-latin-regular.f137ee486278.woff") format("woff"), url("../fonts/lato-v11-latin-regular.c45152a20fca.ttf") format("truetype"), url("../fonts/lato-v11-latin-regular.ee3a1c8ce9d9.svg#Lato") format("svg");
  /* Legacy iOS */ }
/* lato-700 - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/lato-v11-latin-700.43a8fa5531f2.eot");
  /* IE9 Compat Modes */
  src: local("Lato Bold"), local("Lato-Bold"), url("../fonts/lato-v11-latin-700.43a8fa5531f2.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-v11-latin-700.649e18eb6a85.woff2") format("woff2"), url("../fonts/lato-v11-latin-700.fd373951a3af.woff") format("woff"), url("../fonts/lato-v11-latin-700.a30435e0c5ed.ttf") format("truetype"), url("../fonts/lato-v11-latin-700.cfdfec6d275f.svg#Lato") format("svg");
  /* Legacy iOS */ }
/* lato-900 - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/lato-v11-latin-900.4f7ab788ecdf.eot");
  /* IE9 Compat Modes */
  src: local("Lato Black"), local("Lato-Black"), url("../fonts/lato-v11-latin-900.4f7ab788ecdf.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-v11-latin-900.f377f4433f32.woff2") format("woff2"), url("../fonts/lato-v11-latin-900.c208c9784584.woff") format("woff"), url("../fonts/lato-v11-latin-900.01f5fcc5ad6e.ttf") format("truetype"), url("../fonts/lato-v11-latin-900.030643bf98d2.svg#Lato") format("svg");
  /* Legacy iOS */ }


/*                          */
/*   User Messages Styles   */
/*                          */

.user-messages {
  box-sizing: border-box;
  color: #d03b35;
  font-size: 1.2em;
  line-height: 1.2em;
  width: 100%;
  margin-bottom: 10px; }

/*                          */
/*      Dialog Styles       */
/*                          */
  .modal-mask {
    position: fixed;
    z-index: 999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    display: table;
    transition: opacity 0.3s ease;
  }

  .modal-wrapper {
    display: table-cell;
    vertical-align: middle;
  }

  .modal-container {
    width: 400px;
    margin: 0px auto;
    color:#2d2d2d;
    background-color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    border:2px solid rgba(153,153,153,1);
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
    transition: all 0.3s ease;
    font-family: Verdana;
    font-size:0.8em;
    line-height: 1.4em;
    box-sizing:border-box;
  }
  .modal-title-container {
   /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#eeeeee+0,cccccc+100;Gren+3D */
background: rgb(238,238,238); /* Old browsers */
background: -moz-linear-gradient(top,  rgba(238,238,238,1) 0%, rgba(204,204,204,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(238,238,238,1) 0%,rgba(204,204,204,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(238,238,238,1) 0%,rgba(204,204,204,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#eeeeee', endColorstr='#cccccc',GradientType=0 ); /* IE6-9 */
    -webkit-border-top-left-radius: 5px;
    -webkit-border-top-right-radius: 5px;
    -moz-border-radius-topleft: 5px;
    -moz-border-radius-topright: 5px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
      box-sizing:border-box;
      width:100%;
      padding:10px 20px;

  }

  .modal-header h3 {
    margin-top: 0;
    color: #42b983;
  }

  .modal-body {
    box-sizing: border-box;
    padding: 20px 20px 5px 20px;
  }

  .modal-body textarea::placeholder {
    line-height: 19px;
  }

.modal-footer {
    -webkit-border-bottom-left-radius: 5px;
    -webkit-border-bottom-right-radius: 5px;
    -moz-border-radius-bottomleft: 5px;
    -moz-border-radius-bottomright: 5px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    box-sizing:border-box;
    display:flex;
    justify-content: flex-end;
    align-items:center;
    padding:10px 20px 20px;
    width:100%;
}

  /*
   * The following styles are auto-applied to elements with
   * transition="modal" when their visibility is toggled
   * by Vue.js.
   *
   * You can easily play with the modal transition by editing
   * these styles.
   */

  .modal-enter {
    opacity: 0;
  }

  .modal-leave-active {
    opacity: 0;
  }

  .modal-enter .modal-container,
  .modal-leave-active .modal-container {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

    .modal-container .btn-dialog {
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#499bea+0,207ce5+100;Blue+3d+%237 */
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,f6f6f6+47,ededed+100;White+3D+%231 */
background: rgb(255,255,255); /* Old browsers */
background: -moz-linear-gradient(top,  rgba(255,255,255,1) 0%, rgba(246,246,246,1) 47%, rgba(237,237,237,1) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top,  rgba(255,255,255,1) 0%,rgba(246,246,246,1) 47%,rgba(237,237,237,1) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(246,246,246,1) 47%,rgba(237,237,237,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=0 ); /* IE6-9 */

-webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
      box-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
      color:#2d2d2d;
      min-width:80px;
      padding:8px 10px;
      box-sizing:border-box;
      outline:none;
      border:0px solid rgba(237,237,237,1);
      margin-left:15px;
      font-size:0.9em;
      cursor:pointer;
      font-family: Verdana;
  }
  .modal-container .btn-dialog:focus,
  .modal-container .btn-dialog:active,
  .modal-container .btn-dialog:hover {
      background: rgba(250,250,250,1);
      border:0px solid rgba(237,237,237,1);
  }

  .modal-container .btn-default {
   /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#499bea+0,207ce5+100;Blue+3d+%237 */
      background: rgb(73,155,234); /* Old browsers */
      background: -moz-linear-gradient(top,  rgba(73,155,234,1) 0%, rgba(32,124,229,1) 100%); /* FF3.6-15 */
      background: -webkit-linear-gradient(top,  rgba(73,155,234,1) 0%,rgba(32,124,229,1) 100%); /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to bottom,  rgba(73,155,234,1) 0%,rgba(32,124,229,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#499bea', endColorstr='#207ce5',GradientType=0 ); /* IE6-9 */
      border:0px solid rgba(32,124,229,1);
      color:#ffffff;
      font-weight: bold;
      padding:8px 13px;
  }
  .modal-container .btn-default:focus,
  .modal-container .btn-default:active,
  .modal-container .btn-default:hover {
      background: rgb(32,124,229);
      border:0px solid rgba(32,124,229,1);
  }
  .modal-container .btn-danger {
    /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#d14d4d+0,ae2c2c+100 */
      background: rgb(209,77,77); /* Old browsers */
      background: -moz-linear-gradient(top,  rgba(209,77,77,1) 0%, rgba(174,44,44,1) 100%); /* FF3.6-15 */
      background: -webkit-linear-gradient(top,  rgba(209,77,77,1) 0%,rgba(174,44,44,1) 100%); /* Chrome10-25,Safari5.1-6 */
      background: linear-gradient(to bottom,  rgba(209,77,77,1) 0%,rgba(174,44,44,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d14d4d', endColorstr='#ae2c2c',GradientType=0 ); /* IE6-9 */

      border:0px solid rgba(174,44,44,1);
      color:#ffffff;
      padding:8px 13px;
  }
  .modal-container .btn-danger:focus,
  .modal-container .btn-danger:active,
  .modal-container .btn-danger:hover {
    background: rgba(174,44,44,1);
    border:0px solid rgba(174,44,44,1);
  }

/*                          */
/*      Menu  Nav Styles    */
/*                          */

.page-content-container {
    display: flex;
    justify-content: flex-start;
    line-height: 1.5em;
}

#menu-container {
    max-width: 170px;
}
#menu-container.show {
     display: block;
    min-width: 160px;
}
#menu-container > a {
    font-size: 14pt;
    font-weight: 900;
    text-decoration: none;
    display: block;
}
#menu-container > a:hover {
    text-decoration: underline;
}
.active-path {
    color: darkgrey;
}
.active-path:hover {
    color: darkgrey;
    text-decoration: none !important;
}
.active-path:visited {
    color: darkgrey;
}

.nav-section-title {
	border-top: 1px solid #ababab;
	color: #8c8c8c;
	margin: 14px 0 9px -3px;
	padding: 5px 0 0 3px;
	font-size: 8pt;
    line-height: 12pt;
    width: calc(100% - 15px);
}

.shrinking-menu-container {
	display: none;
}

@media (max-width: 768px) {
    .purdue-logo-img {
        padding-left: 15px;
    }
    .active-path, .active-path:visited {
        color: #000000 !important;
        text-decoration: underline !important;
        font-weight: 900 !important;
        text-decoration-thickness: 2px !important;
    }

    .nav-link-dashboard {
        display: none !important;
    }
    .nav-link-euro-review {
        display: none !important;
    }
    .page-content-container {
        flex-wrap: wrap;
    }
    .shrinking-menu-container {
		height:50px;
        background: #d3b88d;
		display: flex;
		padding: 0 0 0 0px;
		box-sizing: border-box;
		width: 100%;
        min-width: 700px;
        z-index:1;
	}
	.shrinking-menu-container > a {
		font-size: 13pt;
		font-weight: 700;
		text-decoration: none;
		padding: 12px;
		box-sizing: border-box;
		color: #212121;
	}
    #menu-container > a {
        display: inline-block;
        font-weight: 700;
        padding: 0 12px;
        font-size: 13pt;
        color: #212121;
    }
	.shrinking-menu-container > a:hover,
    #menu-container > a:hover {
		color: red;
        text-decoration: underline;
        text-decoration-thickness: 2px;
        text-decoration-position: from-font;
	}
	.shrink-sign-in, .shrink-create-account {
		display: none;
	}
    .nav-section-title {
        border-top: 1px solid #000000;
        color: #000000;
        margin: 15px 0 10px 9px;
        padding: 5px 0 0 3px;
        font-size: 8pt;
        width: calc(100% - 45px);
    }
    #menu-container {
        display: none;
        overflow: hidden;
        padding: 0 0 0 20px;
        margin:-10px auto 0 auto;
        background: #d3b88d;
    }
    #menu-container.hidden {
        background: #d3b88d;
        display: block;
        height:0;
        margin:-10px auto 0 auto;
		overflow: hidden;
        padding-left: 20px;
        transition: all .9s ease;
		width: 100%;
        z-index: 10;
        -webkit-transition: all .9s ease;
	}
    #menu-container.shown {
        background: #d3b88d;
        display: block;
        height: 177px;
        margin:-10px auto 0 auto;
        overflow: hidden;
        padding-left: 20px;
        transition: all .9s ease;
        width: 100%;
        z-index: 10;
        -webkit-transition: all .9s ease;
    }
    a#nav-shrink-link-menu-toggle-label {
        display: flex;
    }
    a#nav-shrink-link-menu-toggle {
        display: block;
        margin: 15px 0 0 -5px;
        padding: 0;
        height: 20px;
        line-height: 14px;
        font-size: 24px;
        transform: rotate(90deg);
        text-decoration:none !important;
        transition: all 0.2s;
    }
    #nav-shrink-link-menu-toggle.rotate {
        margin: 15px 0 0 -5px;
        font-size:24px;
        transform: rotate(270deg);
        text-decoration:none !important;
        transition: all 0.2s;
    }
    a#nav-shrink-link-menu-toggle:hover {
      text-decoration: none !important;
    }
    .nav-link-staff-sign-out {
        display: none !important;
    }
    .nav-link-web-forms {
        display: none !important;
    }
}
@media (max-width: 600px) {
	.nav-shrink-link-staff-sign-out {
		display: none;
	}
    .nav-link-staff-sign-out {
        display: inline-block !important;
    }
}

#nav-link-menu-toggle,
#nav-link-menu-toggle-label {
    display: none !important;
}

@media (max-width: 480px) {
	.nav-shrink-link-web-forms {
		display: none;
	}
    .nav-link-web-forms {
        display: inline-block !important;
    }
}

/* EURO STYLES END */

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
u, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2016 Daniel Eden
 */
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite; }

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s; }

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: .75s;
  animation-duration: .75s; }

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }
@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0); } }
.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom; }

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }
@keyframes flash {
  from, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }
.flash {
  -webkit-animation-name: flash;
  animation-name: flash; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse; }

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand; }

@-webkit-keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }
@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); } }
.shake {
  -webkit-animation-name: shake;
  animation-name: shake; }

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0); } }
@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
    transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
    transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
    transform: translateX(0); } }
.headShake {
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
  animation-name: headShake; }

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }
@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg); } }
.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing; }

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
.tada {
  -webkit-animation-name: tada;
  animation-name: tada; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: none;
    transform: none; } }
@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: none;
    transform: none; } }
.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble; }

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39063deg) skewY(0.39063deg);
    transform: skewX(0.39063deg) skewY(0.39063deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }
@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
    transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39063deg) skewY(0.39063deg);
    transform: skewX(0.39063deg) skewY(0.39063deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
    transform: skewX(-0.19531deg) skewY(-0.19531deg); } }
.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center; }

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1); } }
.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn; }

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown; }

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft; }

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
    transform: none; } }
.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight; }

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp; }

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }
@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); } }
.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut; }

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }
@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }
.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown; }

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }
@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }
.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft; }

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }
@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }
.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight; }

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }
@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }
.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp; }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn; }

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown; }

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig; }

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft; }

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig; }

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight; }

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig; }

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp; }

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig; }

@-webkit-keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }
@keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }
.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut; }

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }
@keyframes fadeOutDown {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown; }

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }
@keyframes fadeOutDownBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0); } }
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig; }

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }
@keyframes fadeOutLeft {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft; }

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }
@keyframes fadeOutLeftBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0); } }
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig; }

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }
@keyframes fadeOutRight {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight; }

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }
@keyframes fadeOutRightBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0); } }
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig; }

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }
@keyframes fadeOutUp {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp; }

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }
@keyframes fadeOutUpBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0); } }
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig; }

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }
@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; } }
.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip; }

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }
@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }
.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX; }

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }
@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); } }
.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY; }

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }
@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }
.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important; }

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }
@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }
.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY; }

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1; }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out; }

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }
@keyframes lightSpeedOut {
  from {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }
.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in; }

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn; }

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft; }

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight; }

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft; }

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1; } }
.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight; }

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }
@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1; }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }
.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut; }

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }
@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }
.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft; }

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }
@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }
.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight; }

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }
@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }
.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft; }

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }
@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }
.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight; }

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }
@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out; }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }
.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none; } }
.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }
@keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }
.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut; }

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }
@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }
.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn; }

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown; }

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft; }

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight; }

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp; }

@-webkit-keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }
@keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }
.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut; }

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown; }

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center; } }
.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft; }

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center; } }
.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight; }

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }
.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp; }

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown; }

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft; }

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight; }

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); } }
.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp; }

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }
@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0); } }
.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown; }

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }
@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0); } }
.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft; }

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }
@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0); } }
.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight; }

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }
@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0); } }
.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp; }

html {
  margin: 0;
  padding: 0;
  height: 100%; }

body {
  color: #1d1d1d;
  font: 18px Lato;
  margin: 0;
  overflow-x: hidden;
  min-height: 100%;
  display: flex;
  flex-direction: column; }

#wrapper {
  flex: 1; }

.no-scroll {
  display: none;
  position: fixed; }

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

h1 {
  color: #1d1d1d;
  font-size: 240%;
  font-weight: 900;
  margin-bottom: 15px; }
  @media (max-width: 768px) {
    h1 {
      font-size: 200%; } }
  @media (max-width: 560px) {
    h1 {
      font-size: 175%; } }
  @media (max-width: 360px) {
    h1 {
      font-size: 150%; } }
  @media (max-width: 335px) {
    h1 {
      font-size: 140%; } }

h2 {
  font-size: 150%;
  margin-bottom: 15px; }
  @media (max-width: 360px) {
    h2 {
      font-size: 125%; } }

h3 {
  font-size: 125%;
  margin-bottom: 10px; }
  @media (max-width: 768px) {
    h3 {
      font-size: 115%; } }
  @media (max-width: 640px) {
    h3 {
      font-size: 105%; } }

.content {
  padding: 30px; }
  @media (max-width: 360px) {
    .content {
      padding: 20px 30px; } }

div.vert-center {
  position: relative;
  top: 50%;
  transform: perspective(1px) translateY(-50%); }

a.cas-btn {
  flex-grow: 1;
  background: #a23735;
  background-image: -webkit-linear-gradient(top, #d82929, #a23735);
  background-image: -moz-linear-gradient(top, #d82929, #a23735);
  background-image: -ms-linear-gradient(top, #d82929, #a23735);
  background-image: -o-linear-gradient(top, #d82929, #a23735);
  background-image: linear-gradient(to bottom, #d82929, #a23735);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  box-sizing: border-box;
  color: #ffffff;
  font-size: 130%;
  font-weight: 700;
  height: 75px;
  line-height: 115%;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  max-width: 285px;
  width: 100%; }
  @media (max-width: 868px) {
    a.cas-btn {
      font-size: 115%; } }
  @media (max-width: 768px) {
    a.cas-btn {
      font-size: 100%;
      height: 60px; } }
  @media (max-width: 640px) {
    a.cas-btn {
      display: block;
      height: 65px;
      margin: 0 auto 12px;
      font-size: 115%; } }
  a.cas-btn:hover {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffb76b+0,ff7f04+60 */
    background: #03567e;
    /* Old browsers */
    background: -moz-radial-gradient(center, ellipse cover, #03567e 0%, #033e5f 80%);
    /* FF3.6-15 */
    background: -webkit-radial-gradient(center, ellipse cover, #03567e 0%, #033e5f 80%);
    /* Chrome10-25,Safari5.1-6 */
    background: radial-gradient(ellipse at center, #03567e 0%, #033e5f 80%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffb76b', endColorstr='#ff7f04',GradientType=1 );
    /* IE6-9 fallback on horizontal gradient */
    text-decoration: none; }

.cas-btn-middle {
  margin: 0 20px; }
  @media (max-width: 640px) {
    .cas-btn-middle {
      margin: 0; } }


.bold {
  font-weight: 700; }

@media (max-width: 480px) {
  .mobile-break {
    display: block; } }

@media (max-width: 480px) {
  .medium-or-smaller-size-screen-break {
    display: block; } }

a.mad-general-link {
  color: #0099cc;
  cursor: pointer;
  display: block;
  margin-bottom: 20px;
  text-decoration: none; }
  a.mad-general-link:after {
    background: url("../img/link-arrow.8054c20f2a31.png") no-repeat center center;
    content: "";
    display: inline-block;
    background-size: contain;
    height: 10px;
    width: 10px;
    margin: 0 0 0 5px; }
  a.mad-general-link:hover {
    text-decoration: underline; }

a.mad-general-link-bg {
  color: #ffffff;
  cursor: pointer;
  display: block;
  margin-bottom: 20px;
  text-decoration: none; }
  a.mad-general-link-bg:after {
    background: url("../img/link-arrow-hover.e4244a1b4930.png") no-repeat center center;
    content: "";
    display: inline-block;
    background-size: contain;
    height: 10px;
    width: 10px;
    margin: 0 0 0 5px; }
  a.mad-general-link-bg:hover {
    text-decoration: underline; }

p.mad-link {
  color: #0099cc;
  position: absolute;
  text-decoration: none;
  bottom: 18px;
  margin-bottom: 2px; }
  p.mad-link:after {
    background: url("../img/link-arrow.8054c20f2a31.png") no-repeat center center;
    content: "";
    display: inline-block;
    background-size: contain;
    height: 10px;
    width: 10px;
    margin: 0 0 0 5px; }
  p.mad-link a {
    color: #0099cc;
    text-decoration: none; }
    p.mad-link a:hover {
      text-decoration: underline; }

ul {
  margin-left: 30px;
  margin-bottom: 30px; }
  ul li {
    list-style-type: disc;
    line-height: 1.2em;
    margin-bottom: 15px;
    padding-left: 3px; }

.error-graphic-container {
  width: 100%;
  margin: 0 auto 10px;
  max-width: 400px; }
  @media (max-width: 560px) {
    .error-graphic-container {
      max-width: 250px; } }

.big-error-text {
  color: #888;
  font-size: 100px;
  font-weight: 700;
  line-height: 1.4em; }
  @media (max-width: 560px) {
    .big-error-text {
      font-size: 60px; } }

div.mighty-ant-404 {
  background: url("../img/mighty-ant-four-oh-four.399b92030251.jpg") no-repeat center;
  background-size: 100%;
  display: block;
  height: 0;
  padding-bottom: 96.64751%; }

.error-graphic-container ~ h1 {
  max-width: 450px;
  width: 100%;
  margin: 0 auto 30px; }
  @media (max-width: 768px) {
    .error-graphic-container ~ h1 {
      max-width: 350px; } }
  @media (max-width: 640px) {
    .error-graphic-container ~ h1 {
      max-width: 350px; } }
  @media (max-width: 560px) {
    .error-graphic-container ~ h1 {
      max-width: 330px; } }
  @media (max-width: 360px) {
    .error-graphic-container ~ h1 {
      max-width: 280px; } }

.navigation-cms {
  margin-top: 46px; }
  @media (max-width: 560px) {
    .navigation-cms {
      margin-top: 0; } }

div.topic_page_container {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%; }
  @media (max-width: 560px) {
    div.topic_page_container h1 {
      line-height: 1em;
      text-align: center; } }

.famous-quote {
  box-sizing: border-box;
  color: #1d1d1d;
  float: right;
  margin-left: 30px;
  margin-bottom: 30px;
  text-align: center;
  width: 250px; }
  .famous-quote h3 {
    font-weight: 700;
    margin: 0 auto;
    width: 200px; }
    @media (max-width: 640px) {
      .famous-quote h3 {
        width: 175px; } }
    @media (max-width: 480px) {
      .famous-quote h3 {
        font-size: 125%;
        width: 100%;
        max-width: 240px; } }
  .famous-quote p {
    margin: 10px 0 0 0;
    font-style: italic; }
    @media (max-width: 480px) {
      .famous-quote p {
        margin: 5px 0 20px 0; } }
  @media (max-width: 640px) {
    .famous-quote {
      width: 175px;
      margin-bottom: 10px; } }
  @media (max-width: 480px) {
    .famous-quote {
      float: none;
      margin-left: 0;
      width: 100%; } }

.famous-quote-img {
  height: auto;
  margin: 0 auto 5px;
  width: 250px; }
  @media (max-width: 640px) {
    .famous-quote-img {
      width: 175px; } }

.famous-quote-bio {
  float: left;
  height: auto;
  margin: -12px 10px 0 0;
  width: 70px; }
  @media (max-width: 480px) {
    .famous-quote-bio {
      margin: -8px 5px 0 0;
      width: 60px; } }

.bill-gates {
  max-width: 280px; }
  @media (max-width: 480px) {
    .bill-gates {
      max-width: 265px; } }

.steve-mcconnell {
  max-width: 245px; }
  @media (max-width: 480px) {
    .steve-mcconnell {
      max-width: 230px; } }

.randall-stross {
  max-width: 235px; }
  @media (max-width: 480px) {
    .randall-stross {
      max-width: 220px; } }

.famous-quote-id {
  font-size: 14px;
  line-height: 1.1em;
  margin: 25px 0 0 0;
  text-align: left;
  width: auto; }
  @media (max-width: 640px) {
    .famous-quote-id {
      margin: 25px auto 0; } }

.call-out, .call-out-left, .call-out-right {
  box-sizing: border-box;
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  color: #1d1d1d;
  padding: 30px 15px;
  width: 350px;
  font-size: 1.1em; }
  .call-out h3, .call-out-left h3, .call-out-right h3 {
    font-weight: 700;
    line-height: 1.5em;
    text-align: center; }
  @media (max-width: 640px) {
    .call-out, .call-out-left, .call-out-right {
      float: none;
      display: block;
      margin: 0 0 20px 0;
      padding: 30px 15px;
      width: 100%;
      text-align: center; } }

.call-out-left {
  margin: 10px 30px 20px 0;
  float: left; }

.call-out-right {
  float: right;
  margin: 10px 0 20px 30px; }

.call-out-right-img {
  border-top: 0 solid #ccc;
  border-bottom: 0 solid #ccc;
  color: #555;
  font-size: 16px;
  font-style: italic;
  float: right;
  margin: 10px 0 20px 30px;
  padding: 0;
  text-align: center; }
  .call-out-right-img img {
    width: 100%;
    max-width: 350px; }
    @media (max-width: 560px) {
      .call-out-right-img img {
        max-width: none; } }
  .call-out-right-img div {
    display: block; }
  @media (max-width: 640px) {
    .call-out-right-img {
      display: block;
      float: none;
      margin: 10px 0 20px 0; } }
  @media (max-width: 560px) {
    .call-out-right-img {
      width: 100vw;
      position: relative;
      left: 50%;
      right: 50%;
      margin-left: -50vw;
      margin-right: -50vw; } }

@media (max-width: 640px) {
  .graphic-desktop {
    display: none; } }

.graphic-mobile {
  display: none; }
  @media (max-width: 640px) {
    .graphic-mobile {
      display: inherit; } }

@media (max-width: 868px) {
  .mobile-title {
    max-width: 600px; } }
@media (max-width: 768px) {
  .mobile-title {
    max-width: 400px; } }

.mad-edge-block {
  background-color: #f8f8f8;
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin: 50px -50vw -30px;
  padding: 0 0 15px; }

.no-wrap {
  white-space: nowrap; }

.no-wrap-header {
  white-space: nowrap; }
  @media (max-width: 480px) {
    .no-wrap-header {
      white-space: normal; } }

.hero-text-only {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#33ccff+1,0099cc+29 */
  background: #33ccff;
  /* Old browsers */
  background: -moz-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#33ccff', endColorstr='#0099cc', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  height: 150px; }
  @media (max-width: 640px) {
    .hero-text-only {
      height: 185px; } }
  .hero-text-only div {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    max-width: 640px;
    margin: 0 auto; }
    @media (max-width: 640px) {
      .hero-text-only div {
        max-width: 400px; } }
  .hero-text-only h1 {
    color: #ffffff;
    font-size: 200%;
    text-align: center;
    margin-bottom: 10px;
    padding: 0 20px;
    font-weight: 900; }
  .hero-text-only h3 {
    color: #ffffff;
    font-size: 135%;
    text-align: center;
    padding: 0 20px;
    font-weight: 900; }
  .hero-text-only .no-wrap-hero-text {
    white-space: nowrap; }

h3.page-intro {
  border-bottom: 1px solid #dedede;
  line-height: 150%;
  padding-bottom: 30px; }

.we-build-img-block {
  box-sizing: border-box;
  color: #1d1d1d;
  float: right;
  margin-left: 30px;
  margin-bottom: 30px;
  margin-top: 8px;
  text-align: center;
  max-width: 450px;
  width: 100%; }
  .we-build-img-block p {
    color: #777;
    font-size: 85%;
    line-height: 135%;
    max-width: 270px;
    margin: 0 auto;
    text-align: center; }
    @media (max-width: 560px) {
      .we-build-img-block p {
        margin-bottom: 20px; } }
  @media (max-width: 868px) {
    .we-build-img-block {
      width: 300px;
      margin-bottom: 10px; } }
  @media (max-width: 640px) {
    .we-build-img-block {
      width: 200px;
      margin-bottom: 10px; } }
  @media (max-width: 560px) {
    .we-build-img-block {
      display: none; } }

.we-build-img {
  margin: 0 auto 5px;
  width: 100%; }

.we-build-img-block-mobile {
  display: none; }
  .we-build-img-block-mobile p {
    color: #777;
    font-size: 85%;
    line-height: 135%;
    max-width: 270px;
    margin: 0 auto;
    text-align: center; }
    @media (max-width: 560px) {
      .we-build-img-block-mobile p {
        margin-bottom: 30px; } }
  @media (max-width: 560px) {
    .we-build-img-block-mobile {
      display: block;
      margin: 10px auto;
      width: 100%; }
      .we-build-img-block-mobile .we-build-img {
        margin: 0 auto 5px; } }

.img-full-width-container {
  margin: 0 auto;
  padding: 0;
  box-sizing: border-box;
  width: 100%; }
  .img-full-width-container p {
    color: #777;
    font-size: 85%;
    line-height: 135%;
    max-width: 800px;
    margin: 8px auto 30px;
    text-align: center; }
    @media (max-width: 640px) {
      .img-full-width-container p {
        max-width: 270px; } }

.img-full-width {
  height: auto;
  width: 100%; }
  @media (max-width: 640px) {
    .img-full-width {
      display: none; } }

.img-full-width-mobile {
  display: none; }
  @media (max-width: 640px) {
    .img-full-width-mobile {
      display: block;
      height: auto;
      width: 100%; } }

.message-bar {
  width: 100%;
  padding: 20px 0;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center; }
  @media (max-width: 480px) {
    .message-bar {
      padding: 10px 0; } }

.cta {
  color: #ffffff;
  font-size: 150%;
  font-weight: 700;
  line-height: 50px; }
  @media (max-width: 480px) {
    .cta {
      font-size: 110%;
      line-height: 35px; } }
  @media (max-width: 360px) {
    .cta {
      font-size: 100%; } }

.yelp-logo {
  height: 50px;
  margin-left: 15px; }
  @media (max-width: 480px) {
    .yelp-logo {
      height: 35px;
      margin-left: 7px; } }

.full-width-container {
  padding: 30px;
  padding-top: 0;}
  @media (max-width: 480px) {
    .full-width-container {
      padding: 0; } }

.column-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between; }
  @media (max-width: 640px) {
    .column-container {
      display: block; } }

.one-half-column {
  width: 47%; }
  @media (max-width: 560px) {
    .one-half-column .home-text {
      padding: 0 30px;
      box-sizing: border-box; } }
  .one-half-column ul li {
    color: #a23735;
    margin-bottom: 10px;
    line-height: 27px; }
    .one-half-column ul li span {
      color: #1d1d1d; }
  @media (max-width: 640px) {
    .one-half-column {
      width: 100%;
      margin: 0 auto; } }

.one-fourth-column {
  width: 25%; }

.three-fourth-column {
  width: 75%; }

.mobile-wrap {
  white-space: nowrap; }
  @media (max-width: 480px) {
    .mobile-wrap {
      white-space: normal; } }

div.button-container {
  text-align: center; }
  div.button-container button {
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    -khtml-border-radius: 5px;
    border-radius: 5px;
    background: #a23735;
    background-image: -webkit-linear-gradient(top, #d82929, #a23735);
    background-image: -moz-linear-gradient(top, #d82929, #a23735);
    background-image: -ms-linear-gradient(top, #d82929, #a23735);
    background-image: -o-linear-gradient(top, #d82929, #a23735);
    background-image: linear-gradient(to bottom, #d82929, #a23735);
    border: 0;
    color: #ffffff;
    cursor: pointer;
    font-size: 18px;
    margin: 15px auto 0 auto;
    padding: 10px 30px;
    text-decoration: none; }
    div.button-container button:hover {
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffb76b+0,ff7f04+60 */
      background: #03567e;
      /* Old browsers */
      background: -moz-radial-gradient(center, ellipse cover, #03567e 0%, #033e5f 80%);
      /* FF3.6-15 */
      background: -webkit-radial-gradient(center, ellipse cover, #03567e 0%, #033e5f 80%);
      /* Chrome10-25,Safari5.1-6 */
      background: radial-gradient(ellipse at center, #03567e 0%, #033e5f 80%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffb76b', endColorstr='#ff7f04',GradientType=1 );
      /* IE6-9 fallback on horizontal gradient */
      text-decoration: none; }

div.button-container-flex {
  display: flex;
  justify-content: space-between;
  max-width: 500px;
  margin: 0 auto 30px; }
  @media (max-width: 560px) {
    div.button-container-flex {
      justify-content: center;
      flex-direction: column; } }

/* lato-300 - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/lato-v11-latin-300.100dadd6d763.eot");
  /* IE9 Compat Modes */
  src: local("Lato Light"), local("Lato-Light"), url("../fonts/lato-v11-latin-300.100dadd6d763.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-v11-latin-300.3e86c4948704.woff2") format("woff2"), url("../fonts/lato-v11-latin-300.6f934cd8100d.woff") format("woff"), url("../fonts/lato-v11-latin-300.ad9795e9e558.ttf") format("truetype"), url("../fonts/lato-v11-latin-300.1aed0c80f99d.svg#Lato") format("svg");
  /* Legacy iOS */ }
/* lato-regular - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/lato-v11-latin-regular.dc7b7052df5c.eot");
  /* IE9 Compat Modes */
  src: local("Lato Regular"), local("Lato-Regular"), url("../fonts/lato-v11-latin-regular.dc7b7052df5c.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-v11-latin-regular.6748e0e1c0be.woff2") format("woff2"), url("../fonts/lato-v11-latin-regular.f137ee486278.woff") format("woff"), url("../fonts/lato-v11-latin-regular.c45152a20fca.ttf") format("truetype"), url("../fonts/lato-v11-latin-regular.ee3a1c8ce9d9.svg#Lato") format("svg");
  /* Legacy iOS */ }
/* lato-700 - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/lato-v11-latin-700.43a8fa5531f2.eot");
  /* IE9 Compat Modes */
  src: local("Lato Bold"), local("Lato-Bold"), url("../fonts/lato-v11-latin-700.43a8fa5531f2.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-v11-latin-700.649e18eb6a85.woff2") format("woff2"), url("../fonts/lato-v11-latin-700.fd373951a3af.woff") format("woff"), url("../fonts/lato-v11-latin-700.a30435e0c5ed.ttf") format("truetype"), url("../fonts/lato-v11-latin-700.cfdfec6d275f.svg#Lato") format("svg");
  /* Legacy iOS */ }
/* lato-900 - latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/lato-v11-latin-900.4f7ab788ecdf.eot");
  /* IE9 Compat Modes */
  src: local("Lato Black"), local("Lato-Black"), url("../fonts/lato-v11-latin-900.4f7ab788ecdf.eot?#iefix") format("embedded-opentype"), url("../fonts/lato-v11-latin-900.f377f4433f32.woff2") format("woff2"), url("../fonts/lato-v11-latin-900.c208c9784584.woff") format("woff"), url("../fonts/lato-v11-latin-900.01f5fcc5ad6e.ttf") format("truetype"), url("../fonts/lato-v11-latin-900.030643bf98d2.svg#Lato") format("svg");
  /* Legacy iOS */ }

header {
  width: 100%;
  height: 70px;
    flex-wrap: nowrap;
  background: #254151;
  -webkit-transition: margin-bottom .5s ease;
  padding-top: 3px; }
  @media (max-width: 768px) {
    header {
      /*height: $nav-height +29px;*/ } }

.site-logo {
    height: 35px;
    width: auto;
    float: right;
    margin: 16px 20px 0 0;
}

.site-title-container {
    margin: 7px 0 0 20px;
}

.site-title {
    font-family: "Lora", serif;
    font-size: 1.7em;
    font-weight: normal;
    color: #8dc63f;
}

.site-subtitle {
    font-size: 10pt;
    font-weight: 400;
    color: #bdc6af;
}

.mobile-menu-margin {
  margin-bottom: 315px; }

label.mobile-more {
  display: none;
  background-color: transparent;
  font-size: 18px; }
  @media (max-width: 560px) {
    label.mobile-more {
      cursor: pointer;
      display: inline-block;
      padding: 8px 10px 20px;
      margin-left: 10px;
      margin-top: -5px;
      margin-right: -10px;
      box-sizing: content-box; }
      label.mobile-more:hover {
        color: #a23735; } }

label.mobile-more.mobile-menu-tab {
  background-color: #1d1d1d;
  -moz-border-radius: 5px 5px 0 0;
  -webkit-border-radius: 5px 5px 0 0;
  -ms-border-radius: 5px 5px 0 0;
  -o-border-radius: 5px 5px 0 0;
  -khtml-border-radius: 5px 5px 0 0;
  border-radius: 5px 5px 0 0;
  color: #fff; }

.header-right {
  position: relative;
  float: right;
  text-align: right; }
  @media (max-width: 768px) {
    .header-right {
      float: none;
      text-align: center;
      width: 100%;
      z-index: 999999;
      margin-top: 5px; } }

#open {
  display: none; }

@media (max-width: 768px) {
  nav {
    display: block;
    background-color: #1d1d1d;
    height: 0;
    overflow: hidden;
    -webkit-transition: height .5s ease;
    margin-bottom: 30px;
    width: 100%; } }
  @media (max-width: 768px) and (max-width: 560px) {
    nav {
      margin-top: -9px; } }

nav > a {
  color: #92b800;
  font-size: 20px;
  position: relative;
  display: inline-block;
  line-height: 1em;
  margin: 65px 0 0 30px;
  text-decoration: none; }
  @media (max-width: 868px) {
    nav > a {
      font-size: 18px;
      margin: 65px 0 0 18px; } }
  @media (max-width: 640px) {
    nav > a {
      background-color: #1d1d1d;
      color: #ffffff;
      display: block;
      font-size: 20px;
      padding: 5px 30px;
      text-align: left;
      line-height: 1em; }
      nav > a:first-child {
        margin-top: 15px; } }
  @media (max-width: 640px) {
    nav > a {
      margin: 25px 0 0 30px; } }

nav > a:hover {
  color: #a23735; }

@media (max-width: 640px) {
  input[type="checkbox"]:checked + nav {
    height: 315px; } }

.hidden-desktop {
  display: none; }

.home-nav {
  display: none; }
  @media (max-width: 768px) {
    .home-nav {
      display: inherit; } }

@media (max-width: 640px) {
  .mobile-hide-lg {
    display: inherit; } }

@media (max-width: 768px) {
  .mobile-hide-sm {
    display: block; } }

/* Hamburger / X animation */
div#cas-menu-icon {
  width: 8px;
  height: 8px;
  display: inline-block;
  position: relative;
  margin: 0 5px 0 1px;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg); }

#cas-menu-icon span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: #262626;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  opacity: 1; }

#cas-menu-icon span:nth-child(1) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 3px;
  left: 5px; }

#cas-menu-icon span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 3px; }

#cas-menu-icon.open span {
  background: #fff; }

#cas-menu-icon.open span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }

#cas-menu-icon.open span:nth-child(2) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg); }

a:hover > #cas-menu-icon span {
  background: #0099cc; }

.shrinking-nav {
  display: none; }
  @media (max-width: 768px) {
    .shrinking-nav {
      display: inline-block;
      margin-top: 5px;
      text-align: center; }
      .shrinking-nav a {
        color: #92b800;
        font-size: 20px;
        margin: 0 0 0 20px;
        text-decoration: none; }
        .shrinking-nav a:hover {
          color: #a23735; } }
    @media (max-width: 768px) and (max-width: 640px) {
      .shrinking-nav a {
        font-size: 18px; } }
  @media (max-width: 768px) {
        .shrinking-nav a:first-of-type {
          margin: 0; } }

.standard-why {
  display: inherit; }
  @media (max-width: 992px) {
    .standard-why {
      display: none; } }
  @media (max-width: 560px) {
    .standard-why {
      display: inherit; } }

.mobile-why {
  display: none; }
  @media (max-width: 992px) {
    .mobile-why {
      display: inherit; } }
  @media (max-width: 560px) {
    .mobile-why {
      display: none; } }

@media (max-width: 560px) {
  .shrink-volunteer, .shrink-donate {
    display: none; } }

@media (max-width: 480px) {
  .shrink-get-equipment {
    display: none; } }

div.top-menu {
  background-color: #03567e;
  -moz-border-radius: 0 0 5px 5px;
  -webkit-border-radius: 0 0 5px 5px;
  -ms-border-radius: 0 0 5px 5px;
  -o-border-radius: 0 0 5px 5px;
  -khtml-border-radius: 0 0 5px 5px;
  border-radius: 0 0 5px 5px;
  color: #fff;
  font-size: 14px;
  margin-top: -7px;
  padding: 5px 15px 7px;
  position: absolute;
  top: 0;
  right: 0; }
  div.top-menu a {
    color: #fff;
    text-decoration: none; }
  div.top-menu a:hover {
    color: #ffff33; }
  @media (max-width: 768px) {
    div.top-menu {
      display: none; } }

div.top-menu-mobile {
  display: none; }
  @media (max-width: 768px) {
    div.top-menu-mobile {
      background-color: #03567e;
      color: #fff;
      display: block;
      font-size: 14px;
      padding: 5px 25px 7px;
      text-align: right; }
      div.top-menu-mobile a {
        color: #fff;
        text-decoration: none; }
      div.top-menu-mobile a:hover {
        color: #ffff33; } }
  @media (max-width: 768px) and (max-width: 560px) {
    div.top-menu-mobile {
      padding: 5px 10px;
      text-align: center; } }

.top-menu-mobile-spacer {
  margin: 0 15px; }
  @media (max-width: 560px) {
    .top-menu-mobile-spacer {
      margin: 0 20px; } }
  @media (max-width: 480px) {
    .top-menu-mobile-spacer {
      margin: 0 10px; } }

a.active {
  color: #a23735;
  font-weight: 700; }
  a.active:hover {
    color: #a23735; }

a.mobile-active {
  color: #a23735; }
  a.mobile-active:hover {
    color: #a23735; }

.footer {
  color: #fff;
  /*background: #f1f1f1;*/
  background-size: 100% 100%;
  margin-top: 30px;
  padding: 30px;
  box-sizing: border-box;
  width: 100%; }
  @media (max-width: 640px) {
    .footer {
      padding: 30px 30px 0 30px; } }

.footer-container-nav {
  color: #fff;
  background: #254151;
  flex: 0 0 auto;
  border-top: 1px solid #ffffff; }

.footer-brand {
  display: block;
  height: 100px;
  margin: 0 auto;
  width: 176px; }
  @media (max-width: 768px) {
    .footer-brand {
      margin-top: -55px; } }

footer {
  font-size: 15px;
  font-weight: 100;
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0; }

.copyright {
  color: #ffffff;
  float: none;
  text-align: center;
  max-width: 100%;
  width: 100%;
  font-size: 18px;
  padding: 10px 30px 15px 30px;
  box-sizing: border-box; }
  @media (max-width: 768px) {
    .copyright {
      float: none;
      text-align: center; } }

.federal-tax-id {
  color: #ffffff;
  float: none;
  text-align: center;
  max-width: 100%;
  width: 100%;
  font-size: 18px;
  font-weight: 900;
  padding: 20px 30px;
  box-sizing: border-box; }
  @media (max-width: 768px) {
    .federal-tax-id {
      float: none;
      text-align: center; } }

.footer-contact p {
  line-height: 100%;
  margin: 0 0 5px 0;
  text-align: center; }
  .footer-contact p a {
    color: #ffffff;
    text-decoration: none; }

.footer-info {
  padding-left: 30px; }
  .footer-info p {
    margin: 0 0 5px 0; }
  .footer-info h2 {
    margin: 0 0 5px 0;
    text-transform: uppercase; }
  @media (max-width: 768px) {
    .footer-info {
      max-width: 400px;
      margin: 20px auto 0;
      padding-left: 0;
      text-align: center; } }

.cas-alert {
  color: #ffff33;
  font-size: 90%;
  font-weight: 700;
  text-transform: uppercase;
  margin: 15px 0 15px; }

@media (max-width: 768px) {
  .footer > .home > .column-container {
    display: block; } }

@media (max-width: 868px) {
  .footer > .home > .column-container > .one-fourth-column {
    width: 35%; } }
@media (max-width: 768px) {
  .footer > .home > .column-container > .one-fourth-column {
    width: 100%; } }

@media (max-width: 868px) {
  .footer > .home > .column-container > .three-fourth-column {
    width: 65%; } }
@media (max-width: 768px) {
  .footer > .home > .column-container > .three-fourth-column {
    width: 100%; } }

@media (max-width: 480px) {
  .footer-mobile-break {
    white-space: nowrap; } }

.donations {
  display: inline-block;
  font-weight: 700; }
  @media (max-width: 768px) {
    .donations {
      display: block; } }

.guidestar {
  display: block;
  position: absolute;
  width: 90px;
  bottom: -10px;
  right: 0; }
  @media (max-width: 768px) {
    .guidestar {
      position: relative;
      width: 90px;
      margin: 0 auto; } }

.caltechy-footer-container {
  display: flex;
  justify-content: flex-start; }
  @media (max-width: 640px) {
    .caltechy-footer-container {
      display: block; } }

.footer-column {
  width: 100%;
  max-width: 300px;
  margin-right: 30px; }
  @media (max-width: 640px) {
    .footer-column {
      margin-bottom: 30px; } }

.lets-talk-content {
  padding: 50px 30px;
  position: relative; }
  @media (max-width: 768px) {
    .lets-talk-content {
      padding: 30px; } }
  @media (max-width: 480px) {
    .lets-talk-content {
      padding: 30px 0 0 0; } }

div#lets-talk {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  line-height: 1.4em; }
  div#lets-talk h1, div#lets-talk h2, div#lets-talk p {
    color: #1d1d1d; }
  div#lets-talk h4 {
    color: #03567e;
    text-transform: uppercase;
    margin-top: 15px; }

.lets-talk-intro {
  display: inline-block;
  width: 45%; }
  .lets-talk-intro h4 {
    font-weight: 700; }
  @media (max-width: 768px) {
    .lets-talk-intro {
      margin-bottom: 10px;
      width: 100%; }
      .lets-talk-intro h2 {
        max-width: 400px; }
      .lets-talk-intro p {
        max-width: 600px; } }
  @media (max-width: 480px) {
    .lets-talk-intro {
      box-sizing: border-box;
      padding: 0 30px; } }

.lets-talk-container {
  background-color: #efefef;
  box-sizing: border-box;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  -khtml-border-radius: 5px;
  border-radius: 5px;
  display: inline-block;
  padding: 30px;
  width: 50%; }
  @media (max-width: 768px) {
    .lets-talk-container {
      width: 100%;
      margin-bottom: 15px; } }
  @media (max-width: 480px) {
    .lets-talk-container {
      border-radius: 0;
      padding-bottom: 60px;
      margin-bottom: -30px; } }

#lets-talk-form > label {
  color: #333;
  display: block;
  font-size: 14px;
  margin-bottom: 15px; }
  #lets-talk-form > label input, #lets-talk-form > label textarea {
    background-color: #ffffff;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    -khtml-border-radius: 5px;
    border-radius: 5px;
    border-style: none;
    box-sizing: border-box;
    display: block;
    font-family: Lato;
    font-size: 100%;
    line-height: 27px;
    margin-top: 5px;
    outline: none;
    padding: 8px;
    width: 100%; }
  #lets-talk-form > label textarea {
    min-height: 150px; }

#lets-talk-form > label > input.error-box,
#lets-talk-form > label > textarea.error-box {
  border: 2px dashed #e9322d;
  box-sizing: border-box;
  -moz-box-sizing: border-box; }

.error-message {
  color: #e9322d;
  font-size: 14px;
  font-weight: 700;
  float: right;
  margin-right: 5px;
  margin-top: -3px;
  padding: 3px 0; }
  @media (max-width: 360px) {
    .error-message {
      float: none;
      display: block;
      padding: 5px 0 0; } }

.error-capture-message {
  background-color: #e9322d;
  color: #ffffff;
  display: block;
  font-size: 14px;
  font-weight: 700;
  margin: 10px auto;
  padding: 3px 0;
  max-width: 400px;
  width: 100%; }

.error-icon {
  display: inline-block;
  width: 18px;
  height: auto;
  margin: 0 2px -2px 2px; }

#lets-talk-form > div.submit-container {
  text-align: center; }
  #lets-talk-form > div.submit-container button {
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    -khtml-border-radius: 5px;
    border-radius: 5px;
    background: #a23735;
    background-image: -webkit-linear-gradient(top, #d82929, #a23735);
    background-image: -moz-linear-gradient(top, #d82929, #a23735);
    background-image: -ms-linear-gradient(top, #d82929, #a23735);
    background-image: -o-linear-gradient(top, #d82929, #a23735);
    background-image: linear-gradient(to bottom, #d82929, #a23735);
    border: 0;
    color: #ffffff;
    cursor: pointer;
    font-size: 18px;
    margin: 15px auto 0 auto;
    padding: 10px 30px;
    text-decoration: none; }
    #lets-talk-form > div.submit-container button:hover {
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffb76b+0,ff7f04+60 */
      background: #03567e;
      /* Old browsers */
      background: -moz-radial-gradient(center, ellipse cover, #03567e 0%, #033e5f 80%);
      /* FF3.6-15 */
      background: -webkit-radial-gradient(center, ellipse cover, #03567e 0%, #033e5f 80%);
      /* Chrome10-25,Safari5.1-6 */
      background: radial-gradient(ellipse at center, #03567e 0%, #033e5f 80%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffb76b', endColorstr='#ff7f04',GradientType=1 );
      /* IE6-9 fallback on horizontal gradient */
      text-decoration: none; }

.quote-block-content {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#33ccff+1,0099cc+29 */
  background: #33ccff;
  /* Old browsers */
  background: -moz-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33ccff', endColorstr='#0099cc',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  margin: 0 auto;
  padding: 40px 30px 30px; }

.client-quote-block-content {
  background: linear-gradient(rgba(102, 153, 51, 0.9), rgba(102, 153, 51, 0.9)), url("../img/client-quote-bg-forensisgroup.73edd01285bd.jpg") no-repeat center center;
  background-size: cover;
  margin: 0 auto;
  padding: 40px 30px 30px; }
  .client-quote-block-content .quote-block-container p, .client-quote-block-content .quote-block-container h2 {
    color: #ffffff; }

.client-quote-block-placeholder-content {
  background: linear-gradient(rgba(102, 153, 51, 0.9), rgba(102, 153, 51, 0.9)), url("../img/client-quote-bg-placeholder.e9c0eca80c7b.jpg") no-repeat center center;
  background-size: cover;
  margin: 0 auto;
  padding: 40px 30px 30px; }
  .client-quote-block-placeholder-content .quote-block-container p, .client-quote-block-placeholder-content .quote-block-container h2 {
    color: #ffffff; }

.quote-block-container {
  margin: 0 auto;
  max-width: 700px;
  padding: 0;
  width: 100%;
  position: relative; }
  @media (max-width: 992px) {
    .quote-block-container {
      margin: 0 auto;
      max-width: 600px;
      padding: 0;
      width: 100%; } }
  @media (max-width: 868px) {
    .quote-block-container {
      margin: 0 auto;
      max-width: 400px;
      padding: 0;
      width: 100%; } }
  @media (max-width: 640px) {
    .quote-block-container {
      margin: 0 auto;
      max-width: 360px;
      padding: 0;
      width: 100%; } }
  @media (max-width: 560px) {
    .quote-block-container {
      padding: 40px 0 50px; } }

.quote-block-container h2, .quote-block-container p {
  color: #ffffff; }

.quote-block-container > div {
  font-size: 125%;
  line-height: 170%;
  margin: 0 0 20px 0; }
  @media (max-width: 560px) {
    .quote-block-container > div {
      font-size: 115%;
      margin: 0 auto 20px; } }

.quote-block-container > p a {
  color: #ffffff;
  text-decoration: none; }

.quotation, .quotation-left, .quotation-right, .quotation-left-white, .quotation-right-white {
  height: 50px;
  width: 50px;
  margin: 0 0 0 0;
  position: absolute; }
  @media (max-width: 768px) {
    .quotation, .quotation-left, .quotation-right, .quotation-left-white, .quotation-right-white {
      height: 40px;
      width: 40px; } }

.quotation-left {
  background: url("../img/big-quote-left.c1e2cb9da8e5.png") no-repeat center center;
  background-size: contain;
  left: -100px;
  top: -10px; }
  @media (max-width: 640px) {
    .quotation-left {
      left: -60px; } }
  @media (max-width: 560px) {
    .quotation-left {
      left: 0;
      right: 0;
      margin: 0; } }

.quotation-right {
  background: url("../img/big-quote-right.418228ae6c99.png") no-repeat center center;
  background-size: contain;
  right: -75px;
  bottom: -10px; }
  @media (max-width: 640px) {
    .quotation-right {
      right: -50px; } }
  @media (max-width: 560px) {
    .quotation-right {
      right: 0;
      left: 0;
      margin: auto; } }

.quotation-left-white {
  background: url("../img/big-quote-left-white.e08425c49b62.png") no-repeat center center;
  background-size: contain;
  left: -90px;
  top: -10px; }
  @media (max-width: 768px) {
    .quotation-left-white {
      left: -70px; } }
  @media (max-width: 640px) {
    .quotation-left-white {
      left: -60px; } }
  @media (max-width: 560px) {
    .quotation-left-white {
      left: 0;
      right: 0;
      margin: 0; } }

.quotation-right-white {
  background: url("../img/big-quote-right-white.6e9abbdcfabb.png") no-repeat center center;
  background-size: contain;
  right: -75px;
  bottom: -10px; }
  @media (max-width: 768px) {
    .quotation-right-white {
      right: -60px; } }
  @media (max-width: 640px) {
    .quotation-right-white {
      right: -50px; } }
  @media (max-width: 560px) {
    .quotation-right-white {
      right: 0;
      left: 0;
      margin: auto; } }

.client-bio-placeholder {
  background: url("../img/client-bio-placeholder.1307af828583.jpg") no-repeat center center;
  background-size: contain;
  border: 2px #fff solid;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: -8px;
  height: 75px;
  width: 75px; }

.client-bio-forensisgroup {
  background: url("../img/forensisgroup-mercy-steenwyk.35bf6e6623d0.jpg") no-repeat center center;
  background-size: contain;
  border: 2px #fff solid;
  display: inline-block;
  margin-right: 10px;
  margin-bottom: -8px;
  height: 75px;
  width: 75px; }

.client-logo-placeholder {
  background: url("../img/placeholder-logo.b7944a320196.png") no-repeat center center;
  background-size: contain;
  display: block;
  margin: 0 auto 20px;
  height: 75px;
  width: 100%; }

.client-logo-forensisgroup {
  background: url("../img/forensisgroup-logo.843ee0950435.png") no-repeat center center;
  background-size: contain;
  display: block;
  margin: 0 auto 20px;
  height: 75px;
  width: 100%; }

.quote-intro {
  color: #ffffff;
  margin-bottom: 40px;
  text-align: center; }

div.login {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%;
  text-align: center; }

div.login > form > input {
  background-color: #efefef;
  border: none;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  -ms-border-radius: 3px;
  -o-border-radius: 3px;
  -khtml-border-radius: 3px;
  border-radius: 3px;
  box-shadow: -1px -1px 3px #888888 inset;
  font-size: 1em;
  padding: 12px 8px;
  text-align: center;
  width: 200px; }

div.login > form > button {
  position: relative;
  top: -2px;
  width: 100px;
  height: 42px;
  padding: 12px 8px;
  margin: 0;
  border-radius: 3px; }

.client-stories-container-candace-rypisis {
  background: url("../img/client-stories-bg-candace-rypisi.562b7dddf842.jpg") no-repeat center center;
  background-size: cover;
  margin: 0 auto;
  padding: 0 0 40px 0; }
  @media (max-width: 560px) {
    .client-stories-container-candace-rypisis {
      padding: 0; } }
  @media (max-width: 480px) {
    .client-stories-container-candace-rypisis {
      background: none; } }

.client-stories-container-forensis {
  background: url("../img/client-stories-bg-forensis.620e093c2380.jpg") no-repeat center center;
  background-size: cover;
  margin: 0 auto;
  width: 100%;
  padding: 0 0 40px 0; }
  @media (max-width: 560px) {
    .client-stories-container-forensis {
      padding: 0; } }
  @media (max-width: 480px) {
    .client-stories-container-forensis {
      background: none; } }

.client-stories-container-highland {
  background: url("../img/client-stories-bg-highland.6933dbac0f21.jpg") no-repeat center center;
  background-size: cover;
  margin: 0 auto;
  width: 100%;
  padding: 0 0 40px 0; }
  @media (max-width: 560px) {
    .client-stories-container-highland {
      padding: 0; } }
  @media (max-width: 480px) {
    .client-stories-container-highland {
      background: none; } }

.client-story-logo-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-align: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  align-items: center;
  height: 120px;
  margin-top: -30px;
  width: 100%; }

.client-story-logo {
  height: 70px;
  width: auto;
  margin: 0 auto; }

.client-stories-container-nobg {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#788384+0,70797f+36,28343b+100 */
  background: #788384;
  /* Old browsers */
  background: -moz-radial-gradient(center, ellipse cover, #788384 0%, #70797f 36%, #28343b 100%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(center, ellipse cover, #788384 0%, #70797f 36%, #28343b 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(ellipse at center, #788384 0%, #70797f 36%, #28343b 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#788384', endColorstr='#28343b',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  margin: 0 auto;
  padding: 0 0 0 0; }
  @media (max-width: 560px) {
    .client-stories-container-nobg {
      padding: 0; } }

.client-stories-title-bar {
  background-color: #1d1d1d;
  color: #ffffff;
  margin-bottom: 40px;
  padding: 10px;
  text-align: center; }
  @media (max-width: 560px) {
    .client-stories-title-bar {
      margin-bottom: 0; } }

.client-stories-content {
  margin: 0 auto;
  max-width: 700px;
  padding: 0;
  width: 100%;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#788384+0,70797f+36,28343b+100 */
  background: #788384;
  /* Old browsers */
  background: -moz-radial-gradient(center, ellipse cover, #788384 0%, #70797f 36%, #28343b 100%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(center, ellipse cover, #788384 0%, #70797f 36%, #28343b 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(ellipse at center, #788384 0%, #70797f 36%, #28343b 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#788384', endColorstr='#28343b',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  box-sizing: border-box;
  -moz-border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
  -khtml-border-radius: 10px 10px 0 0;
  border-radius: 10px 10px 0 0;
  opacity: .97;
  padding: 30px 30px 50px 30px;
  position: relative; }
  .client-stories-content p {
    color: #ffffff;
    font-size: 18px;
    line-height: 28px;
    margin: 0 auto 15px auto;
    max-width: 500px; }
    .client-stories-content p:last-of-type {
      margin: 0 auto; }
  @media (max-width: 768px) {
    .client-stories-content {
      margin: 0 auto;
      max-width: 500px;
      padding: 0;
      width: 100%;
      padding: 30px 30px 50px 30px; }
      .client-stories-content p {
        max-width: 350px; } }
  @media (max-width: 768px) and (max-width: 560px) {
    .client-stories-content {
      -moz-border-radius: 0 0 0 0;
      -webkit-border-radius: 0 0 0 0;
      -ms-border-radius: 0 0 0 0;
      -o-border-radius: 0 0 0 0;
      -khtml-border-radius: 0 0 0 0;
      border-radius: 0 0 0 0;
      margin: 0 auto;
      max-width: 100%;
      padding: 0;
      width: 100%;
      max-width: 100%;
      padding: 30px 30px 50px 30px; } }

.client-stories-content-nobg {
  margin: 0 auto;
  max-width: 700px;
  padding: 0;
  width: 100%;
  box-sizing: border-box;
  -moz-border-radius: 10px 10px 0 0;
  -webkit-border-radius: 10px 10px 0 0;
  -ms-border-radius: 10px 10px 0 0;
  -o-border-radius: 10px 10px 0 0;
  -khtml-border-radius: 10px 10px 0 0;
  border-radius: 10px 10px 0 0;
  opacity: 0.9;
  padding: 0 30px 50px 30px;
  position: relative; }
  .client-stories-content-nobg p {
    color: #ffffff;
    font-size: 18px;
    line-height: 28px;
    margin: 0 auto 15px auto;
    max-width: 500px; }
    .client-stories-content-nobg p:last-of-type {
      margin: 0 auto; }
  @media (max-width: 768px) {
    .client-stories-content-nobg {
      margin: 0 auto;
      max-width: 500px;
      padding: 0;
      width: 100%;
      padding: 0 30px 50px 30px; }
      .client-stories-content-nobg p {
        max-width: 350px; } }
  @media (max-width: 768px) and (max-width: 560px) {
    .client-stories-content-nobg {
      -moz-border-radius: 0 0 0 0;
      -webkit-border-radius: 0 0 0 0;
      -ms-border-radius: 0 0 0 0;
      -o-border-radius: 0 0 0 0;
      -khtml-border-radius: 0 0 0 0;
      border-radius: 0 0 0 0;
      margin: 0 auto;
      max-width: 100%;
      padding: 0;
      width: 100%;
      max-width: 100%;
      padding: 30px 30px 50px 30px; } }

.client-stories-highlight {
  font-weight: 700;
  font-size: 20px; }

.client-stories-bio {
  margin: 0 auto;
  max-width: 700px;
  padding: 0;
  width: 100%;
  background-color: #1d1d1d;
  box-sizing: border-box;
  -moz-border-radius: 0 0 10px 10px;
  -webkit-border-radius: 0 0 10px 10px;
  -ms-border-radius: 0 0 10px 10px;
  -o-border-radius: 0 0 10px 10px;
  -khtml-border-radius: 0 0 10px 10px;
  border-radius: 0 0 10px 10px;
  padding: 20px 30px;
  display: flex;
  justify-content: center; }
  @media (max-width: 768px) {
    .client-stories-bio {
      margin: 0 auto;
      max-width: 500px;
      padding: 0;
      width: 100%;
      padding: 20px 30px; } }
  @media (max-width: 560px) {
    .client-stories-bio {
      margin: 0 auto;
      max-width: 100%;
      padding: 0;
      width: 100%;
      -moz-border-radius: 0 0 0 0;
      -webkit-border-radius: 0 0 0 0;
      -ms-border-radius: 0 0 0 0;
      -o-border-radius: 0 0 0 0;
      -khtml-border-radius: 0 0 0 0;
      border-radius: 0 0 0 0;
      padding: 20px 30px; } }
  @media (max-width: 480px) {
    .client-stories-bio {
      display: block; } }

.client-stories-bio-nobg {
  background-color: #1d1d1d;
  box-sizing: border-box;
  padding: 20px 30px;
  display: flex;
  justify-content: center;
  width: 100%; }
  @media (max-width: 768px) {
    .client-stories-bio-nobg {
      padding: 20px 30px; } }
  @media (max-width: 560px) {
    .client-stories-bio-nobg {
      margin: 0 auto;
      max-width: 100%;
      padding: 0;
      width: 100%;
      -moz-border-radius: 0 0 0 0;
      -webkit-border-radius: 0 0 0 0;
      -ms-border-radius: 0 0 0 0;
      -o-border-radius: 0 0 0 0;
      -khtml-border-radius: 0 0 0 0;
      border-radius: 0 0 0 0;
      padding: 20px 30px; } }
  @media (max-width: 480px) {
    .client-stories-bio-nobg {
      display: block; } }

.client-bio-img {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  -khtml-border-radius: 5px;
  border-radius: 5px;
  display: inline-block;
  margin-right: 20px;
  height: 100px;
  width: 100px;
  z-index: 1; }
  @media (max-width: 768px) {
    .client-bio-img {
      height: 75px;
      width: 75px; } }
  @media (max-width: 480px) {
    .client-bio-img {
      display: block;
      height: 125px;
      width: 125px;
      margin: 0 auto -20px; } }

@media (max-width: 480px) {
  .no-linkedin {
    margin: 0 auto 10px; } }

.client-logo-placeholder {
  background: url("../img/placeholder-logo.b7944a320196.png") no-repeat center center;
  background-size: contain;
  display: block;
  margin: 0 auto 20px;
  height: 75px;
  width: 100%; }

.client-logo-forensisgroup {
  background: url("../img/forensisgroup-logo.843ee0950435.png") no-repeat center center;
  background-size: contain;
  display: block;
  margin: 0 auto 20px;
  height: 75px;
  width: 100%; }

.client-stories-linkedin {
  float: left;
  margin: 1px 10px 0 0;
  height: 30px;
  width: 30px; }
  @media (max-width: 480px) {
    .client-stories-linkedin {
      float: none;
      margin: 0 auto; } }

.client-bio-details {
  position: relative;
  display: inline-block;
  margin-top: 5px; }
  @media (max-width: 768px) {
    .client-bio-details {
      margin-top: 0; } }
  @media (max-width: 480px) {
    .client-bio-details {
      display: block;
      margin: 0 auto;
      text-align: center; } }

.client-bio-name {
  color: #fff;
  font-size: 20px;
  text-transform: uppercase; }
  @media (max-width: 768px) {
    .client-bio-name {
      font-size: 16px; } }
  @media (max-width: 480px) {
    .client-bio-name {
      margin-top: 5px; } }

.bio-mercy-steenwyk {
  min-width: 230px; }
  @media (max-width: 768px) {
    .bio-mercy-steenwyk {
      min-width: 190px; } }

.client-bio-title {
  color: #ffffff;
  font-style: italic;
  margin-bottom: 8px; }
  @media (max-width: 768px) {
    .client-bio-title {
      font-size: 14px; } }

.client-bio-organization {
  color: #fff;
  line-height: 1.3em;
  max-width: 390px; }
  .client-bio-organization a {
    color: #fff; }
    .client-bio-organization a:hover {
      color: #f4da3d;
      text-decoration: none; }
  @media (max-width: 768px) {
    .client-bio-organization {
      font-size: 14px;
      max-width: 335px; } }
  @media (max-width: 560px) {
    .client-bio-organization {
      max-width: 280px; } }
  @media (max-width: 480px) {
    .client-bio-organization {
      margin: 0 auto; } }

.client-stories-quotation, .client-stories-quotation-left-mobile, .client-stories-quotation-left, .client-stories-quotation-left-logo-nobg, .client-stories-quotation-left-logo, .client-stories-quotation-right, .client-stories-quotation-right-logo, .client-stories-quotation-right-logo-nobg {
  height: 30px;
  width: 30px;
  margin: 0 0 0 0;
  position: absolute; }
  @media (max-width: 768px) {
    .client-stories-quotation, .client-stories-quotation-left-mobile, .client-stories-quotation-left, .client-stories-quotation-left-logo-nobg, .client-stories-quotation-left-logo, .client-stories-quotation-right, .client-stories-quotation-right-logo, .client-stories-quotation-right-logo-nobg {
      height: 30px;
      width: 30px; } }
  @media (max-width: 480px) {
    .client-stories-quotation, .client-stories-quotation-left-mobile, .client-stories-quotation-left, .client-stories-quotation-left-logo-nobg, .client-stories-quotation-left-logo, .client-stories-quotation-right, .client-stories-quotation-right-logo, .client-stories-quotation-right-logo-nobg {
      position: relative;
      display: block; } }

.client-stories-quotation-left-mobile {
  display: none; }
  @media (max-width: 480px) {
    .client-stories-quotation-left-mobile {
      display: block;
      background: url("../img/big-quote-left-white.e08425c49b62.png") no-repeat center center;
      background-size: contain;
      margin: 0 auto 20px; } }

.client-stories-quotation-left {
  background: url("../img/big-quote-left-white.e08425c49b62.png") no-repeat center center;
  background-size: contain;
  left: 40px;
  top: 25px; }
  @media (max-width: 768px) {
    .client-stories-quotation-left {
      left: 25px; } }
  @media (max-width: 560px) {
    .client-stories-quotation-left {
      left: 20px; } }
  @media (max-width: 480px) {
    .client-stories-quotation-left {
      display: none; } }

.client-stories-quotation-left-logo-nobg {
  background: url("../img/big-quote-left-white.e08425c49b62.png") no-repeat center center;
  background-size: contain;
  left: 40px;
  top: 110px; }
  @media (max-width: 768px) {
    .client-stories-quotation-left-logo-nobg {
      left: 25px; } }
  @media (max-width: 560px) {
    .client-stories-quotation-left-logo-nobg {
      left: 20px; } }
  @media (max-width: 480px) {
    .client-stories-quotation-left-logo-nobg {
      display: none; } }

.client-stories-quotation-left-logo {
  background: url("../img/big-quote-left-white.e08425c49b62.png") no-repeat center center;
  background-size: contain;
  left: 40px;
  top: 110px; }
  @media (max-width: 768px) {
    .client-stories-quotation-left-logo {
      left: 25px; } }
  @media (max-width: 560px) {
    .client-stories-quotation-left-logo {
      left: 20px; } }
  @media (max-width: 480px) {
    .client-stories-quotation-left-logo {
      display: none; } }

.client-stories-quotation-right {
  background: url("../img/big-quote-right-white.6e9abbdcfabb.png") no-repeat center center;
  background-size: contain;
  right: 40px;
  bottom: 45px; }
  @media (max-width: 768px) {
    .client-stories-quotation-right {
      right: 25px; } }
  @media (max-width: 560px) {
    .client-stories-quotation-right {
      right: 20px; } }
  @media (max-width: 480px) {
    .client-stories-quotation-right {
      bottom: 0;
      margin: 20px auto 0;
      right: 0;
      left: 0; } }

.client-stories-quotation-right-logo {
  background: url("../img/big-quote-right-white.6e9abbdcfabb.png") no-repeat center center;
  background-size: contain;
  right: 40px;
  bottom: 45px; }
  @media (max-width: 768px) {
    .client-stories-quotation-right-logo {
      right: 25px; } }
  @media (max-width: 560px) {
    .client-stories-quotation-right-logo {
      right: 20px; } }
  @media (max-width: 480px) {
    .client-stories-quotation-right-logo {
      bottom: 0;
      margin: 20px auto 0;
      right: 0;
      left: 0; } }

.client-stories-quotation-right-logo-nobg {
  background: url("../img/big-quote-right-white.6e9abbdcfabb.png") no-repeat center center;
  background-size: contain;
  right: 40px;
  bottom: 45px; }
  @media (max-width: 768px) {
    .client-stories-quotation-right-logo-nobg {
      right: 25px; } }
  @media (max-width: 560px) {
    .client-stories-quotation-right-logo-nobg {
      right: 20px; } }
  @media (max-width: 480px) {
    .client-stories-quotation-right-logo-nobg {
      bottom: 0;
      margin: 20px auto 0;
      right: 0;
      left: 0; } }

.client-work-header-container {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+0,ededed+100 */
  background: #ffffff;
  /* Old browsers */
  background: -moz-radial-gradient(center, ellipse cover, #ffffff 0%, #ededed 100%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(center, ellipse cover, #ffffff 0%, #ededed 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(ellipse at center, #ffffff 0%, #ededed 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  width: 100%;
  margin: 0 auto; }

.client-work-header-img {
  max-width: 1200px;
  margin: 0 auto; }

.client-work-content {
  padding: 20px 30px 0 30px;
  box-sizing: border-box; }

.client-work-title-bg {
  margin: 0 auto;
  width: 100%;
  max-height: 800px; }
  @media (max-width: 560px) {
    .client-work-title-bg {
      padding: 0; } }
  @media (max-width: 480px) {
    .client-work-title-bg {
      background: none; } }

.client-work-title-bar {
  background-color: #00a8ab;
  color: #ffffff;
  font-size: 150%;
  font-weight: 700;
  padding: 10px;
  text-align: center; }
  @media (max-width: 560px) {
    .client-work-title-bar {
      margin-bottom: 0; } }

.client-work-title {
  text-align: center;
  width: 100%;
  color: #1a1a1a;
  margin: 10px auto 50px; }
  @media (max-width: 640px) {
    .client-work-title {
      width: 100%;
      margin: 0 auto 65px; } }

.client-work-title-single {
  text-align: center;
  width: 100%;
  color: #1a1a1a;
  margin: 10px auto 0; }
  @media (max-width: 640px) {
    .client-work-title-single {
      width: 100%;
      margin: 0 auto; } }

.client-work-single-column {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%;
  box-sizing: border-box;
  color: #262626;
  padding: 5px 30px;
  position: relative;
  text-align: right; }
  .client-work-single-column h3 {
    float: right;
    max-width: 640px;
    margin: 0 0 30px 0; }
    @media (max-width: 768px) {
      .client-work-single-column h3 {
        max-width: 600px; } }
    @media (max-width: 640px) {
      .client-work-single-column h3 {
        margin-bottom: 15px; } }
  @media (max-width: 640px) {
    .client-work-single-column {
      text-align: center; } }

.client-work-container {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  box-sizing: border-box;
  -ms-flex-align: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  align-items: center;
  position: relative;
  padding: 30px 0; }
  @media (max-width: 640px) {
    .client-work-container {
      display: block; } }

.client-work-intro {
  padding-bottom: 0;
  padding-top: 0; }

.client-work-block {
  background-color: #00b6ba;
  color: #ffffff;
  margin: 80px 0 0; }

.client-work-top-block {
  margin: 40px 0 0; }

.client-work-clear-block {
  background-color: #ffffff;
  color: #222222;
  margin: 40px 0 0; }

h1.client-work-long-title {
  display: block;
  font-size: 200%;
  font-weight: 900;
  margin: 0 auto 5px;
  text-align: right;
  width: 100%; }
  @media (max-width: 640px) {
    h1.client-work-long-title {
      text-align: center;
      font-size: 150%; } }

.client-work-description {
  width: 45%;
  max-width: 350px;
  margin-right: 30px; }
  .client-work-description h1 {
    font-size: 200%;
    font-weight: 900;
    line-height: 1em;
    margin-bottom: 10px; }
  @media (max-width: 640px) {
    .client-work-description {
      display: none; } }

.client-work-description-mobile {
  display: none; }
  .client-work-description-mobile h1 {
    font-size: 150%;
    font-weight: 900;
    line-height: 1em;
    margin-bottom: 10px; }
  @media (max-width: 640px) {
    .client-work-description-mobile {
      display: block;
      margin: 10px auto 0;
      max-width: 300px;
      text-align: center;
      width: 100%; } }

.client-work-hero-img {
  margin: 20px auto 0;
  padding: 0;
  box-sizing: border-box;
  width: 100%;
  max-height: 1600px; }
  @media (max-width: 360px) {
    .client-work-hero-img {
      max-height: 400px; } }

.client-work-img {
  max-height: 400px;
  width: 45%; }
  @media (max-width: 640px) {
    .client-work-img {
      max-height: 300px;
      position: relative;
      width: auto; } }
  @media (max-width: 560px) {
    .client-work-img {
      max-height: 250px; } }
  @media (max-width: 360px) {
    .client-work-img {
      max-height: 200px; } }

.client-work-mobile-app {
  display: inline-block;
  margin-top: -97px; }
  @media (max-width: 640px) {
    .client-work-mobile-app {
      display: block;
      margin: -80px auto 0; } }

.client-work-caliburger-order-queue, .client-work-highland-desktop {
  margin-top: -97px; }
  @media (max-width: 640px) {
    .client-work-caliburger-order-queue, .client-work-highland-desktop {
      display: block;
      margin: -80px auto 0; } }

.client-work-family-infoshare-admin {
  margin-top: -97px;
  max-height: 300px; }
  @media (max-width: 640px) {
    .client-work-family-infoshare-admin {
      display: block;
      margin: -80px auto 0;
      max-height: 200px; } }
  @media (max-width: 480px) {
    .client-work-family-infoshare-admin {
      max-height: 150px; } }
  @media (max-width: 360px) {
    .client-work-family-infoshare-admin {
      max-height: 130px; } }

ul#client-work-built {
  padding: 0;
  margin: 0 20px;
  width: 50%; }
  ul#client-work-built li {
    color: #ffffff;
    list-style-type: square;
    line-height: 1.2em;
    margin-bottom: 15px;
    padding: 0; }
    ul#client-work-built li:last-of-type {
      margin-bottom: 0; }

.hero-case-study {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#33ccff+1,0099cc+29 */
  background: #33ccff;
  /* Old browsers */
  background: -moz-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#33ccff', endColorstr='#0099cc', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  height: 100px; }
  .hero-case-study h1 {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #ffffff;
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
    padding: 0 20px;
    font-weight: 900; }

.case-study-container {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%; }

.case-study-columns {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  flex-wrap: nowrap;
  margin: 50px 0 0 0;
  position: relative; }
  .case-study-columns:after {
    content: "";
    flex: auto; }
  @media (max-width: 768px) {
    .case-study-columns {
      display: block;
      max-width: 100%;
      margin: 50px auto 0; } }
  @media (max-width: 480px) {
    .case-study-columns {
      margin: 30px auto 0; } }

.case-study-image {
  width: 480px; }
  @media (max-width: 992px) {
    .case-study-image {
      width: 400px; } }
  @media (max-width: 868px) {
    .case-study-image {
      width: 300px; } }
  @media (max-width: 768px) {
    .case-study-image {
      display: block;
      margin: 0 auto 30px;
      width: 70%; } }
  @media (max-width: 480px) {
    .case-study-image {
      width: 100%;
      margin: 0 auto 15px; } }

.image-right {
  padding: 0 0 0 40px; }
  @media (max-width: 768px) {
    .image-right {
      padding: 0; } }

.image-left {
  padding: 0 40px 0 0; }
  @media (max-width: 768px) {
    .image-left {
      padding: 0; } }

.case-study-fullwidth {
  margin: 50px 0 0 0; }
  @media (max-width: 480px) {
    .case-study-fullwidth {
      margin: 30px -40px 0; } }

.case-study-image-fullwidth {
  margin-bottom: 20px;
  max-width: 960px;
  width: 100%; }

.image-desktop-view {
  display: inherit; }
  @media (max-width: 768px) {
    .image-desktop-view {
      display: none; } }

.image-mobile-view {
  display: none; }
  @media (max-width: 768px) {
    .image-mobile-view {
      display: block; } }
  @media (max-width: 360px) {
    .image-mobile-view {
      display: none; } }

.image-mobile-xs-view {
  display: none; }
  @media (max-width: 360px) {
    .image-mobile-xs-view {
      display: block; } }

.staff-praise-container {
  box-sizing: border-box;
  width: 100%;
  max-width: 200px;
  position: relative; }
  @media (max-width: 868px) {
    .staff-praise-container {
      max-width: 100%; } }

.staff-praise-img {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  -khtml-border-radius: 5px;
  border-radius: 5px;
  display: inline-block;
  margin-right: 10px;
  height: 70px;
  width: 70px;
  z-index: 1; }
  @media (max-width: 868px) {
    .staff-praise-img {
      display: inherit;
      float: left; } }
  @media (max-width: 560px) {
    .staff-praise-img {
      display: block;
      float: none;
      margin-bottom: 8px; } }

.staff-praise-details {
  position: relative;
  display: block;
  margin-top: 5px; }
  @media (max-width: 868px) {
    .staff-praise-details {
      display: inherit;
      float: left;
      margin-left: 20px;
      max-width: 300px; } }
  @media (max-width: 560px) {
    .staff-praise-details {
      display: block;
      float: none;
      margin-left: 0; } }
  @media (max-width: 480px) {
    .staff-praise-details {
      max-width: 200px; } }

.staff-praise-name {
  font-size: 16px;
  line-height: 18px;
  text-transform: uppercase; }

.staff-praise-title {
  font-size: 14px;
  font-style: italic;
  margin-bottom: 5px; }

.staff-praise-organization {
  font-size: 14px;
  line-height: 1.3em; }
  .staff-praise-organization a {
    color: #0099cc;
    text-decoration: none; }
    .staff-praise-organization a:hover {
      text-decoration: underline; }

.staff-praise-linkedin {
  height: 30px;
  width: 30px; }
  @media (max-width: 868px) {
    .staff-praise-linkedin {
      position: absolute;
      top: 20px;
      left: 60px; } }
  @media (max-width: 560px) {
    .staff-praise-linkedin {
      top: 40px;
      left: 80px; } }

.row:after {
  display: block;
  clear: both;
  content: ''; }

.row + .row {
  margin-top: 5%; }

[class^="col-"] {
  float: left;
  margin-right: 5%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }
  [class^="col-"]:last-child {
    margin-right: 0%; }
  @media (max-width: 868px) {
    [class^="col-"] {
      margin-right: 0; } }

/*
.col-1  { width:5.583333333333333%; }
.col-2  { width:14.16666666666667%; }
.col-3  { width:22.75%; }
.col-4  { width:31.33333333333333%; }
.col-5  { width:39.91666666666667%; }
.col-6  { width:48.5%; }
.col-7  { width:57.08333333333333%; }
.col-8  { width:65.66666666666666%; }
.col-9  { width:74.25%; }
.col-10 { width:82.83333333333333%; }
.col-11 { width:91.41666666666666%; }
.col-12 { width:100%; }
*/
.col-1 {
  width: 3.75%; }

.col-2 {
  width: 12.5%; }

.col-3 {
  width: 21.25%; }

.col-4 {
  width: 30%; }
  @media (max-width: 868px) {
    .col-4 {
      width: 100%; } }

.col-5 {
  width: 38.75%; }

.col-6 {
  width: 47.5%; }

.col-7 {
  width: 56.25%; }

.col-8 {
  width: 65%; }
  @media (max-width: 868px) {
    .col-8 {
      width: 100%; } }

.col-9 {
  width: 73.75%; }

.col-10 {
  width: 82.5%; }

.col-11 {
  width: 91.25%; }

.col-12 {
  width: 100%; }

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0; }

/* Firefox */
input[type=number] {
  -moz-appearance: textfield; }

div.home {
  position: relative;
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%; }
  div.home h1 {
    margin-bottom: 20px; }
  @media (max-width: 640px) {
    div.home h1 {
      line-height: 1.2em;
      margin-bottom: 10px; } }

.header-underline {
  border-top: 3px solid #ededed;
  padding-top: 10px;
  width: 100%; }

.hero-home {
  background: -moz-radial-gradient(80% bottom, #033e5f 15%, #03567e 35%);
  background: -webkit-radial-gradient(80% bottom, #033e5f 15%, #03567e 35%);
  background: radial-gradient(80% bottom, #033e5f 15%, #03567e 35%);
  background-size: 200% 200%;
  -webkit-animation: mad-gradient-bg 5s ease 1 forwards;
  -moz-animation: mad-gradient-bg 5s ease 1 forwards;
  animation: mad-gradient-bg 5s ease 1 forwards;
  -webkit-animation-delay: 1.0s;
  -moz-animation-delay: 1.0s;
  animation-delay: 1.0s;
  -webkit-animation-direction: reverse;
  -moz-animation-direction: reverse;
  animation-direction: reverse;
  padding: 20px 0; }
@-webkit-keyframes mad-gradient-bg {
  0% {
    background-position: 80% bottom; }
  50% {
    background-position: 40% bottom; } }
@-moz-keyframes mad-gradient-bg {
  0% {
    background-position: 80% bottom; }
  50% {
    background-position: 40% bottom; } }
@keyframes mad-gradient-bg {
  0% {
    background-position: 80% bottom; }
  50% {
    background-position: 40% bottom; } }
  .hero-home h1 {
    color: #fff;
    font-weight: 900; }
    @media (max-width: 560px) {
      .hero-home h1 {
        margin-bottom: 10px; } }
  .hero-home h2 {
    color: #fff; }
  .hero-home .content {
    padding-top: 10px;
    padding-bottom: 10px; }

.hero-text {
  position: relative;
  width: 80%;
  z-index: 1; }
  @media (max-width: 640px) {
    .hero-text {
      width: 100%;
      padding-bottom: 15px; } }
  .hero-text h1 {
    max-width: 350px; }
    @media (max-width: 768px) {
      .hero-text h1 {
        max-width: 320px; } }
    @media (max-width: 640px) {
      .hero-text h1 {
        margin: 0 auto; } }
    @media (max-width: 360px) {
      .hero-text h1 {
        max-width: 240px; } }
  .hero-text h2 {
    line-height: 1.5em;
    max-width: 375px; }
    @media (max-width: 768px) {
      .hero-text h2 {
        font-size: 125%;
        max-width: 320px; } }
    @media (max-width: 640px) {
      .hero-text h2 {
        margin: 0 auto; } }
    @media (max-width: 360px) {
      .hero-text h2 {
        max-width: 240px; } }

div.home > h1.rental-section-title {
  color: #1d1d1d;
  margin: 20px auto 25px;
  text-align: center;
}

  @media (max-width: 768px) {
    div.home > h1.rental-section-title {
      width: 100%;
      max-width: 360px;
      margin: 0 auto 20px; } }

.cas-hero {
  height: 323px;
  width: 400px;
  position: absolute;
  bottom: -65px;
  right: 100px;
  z-index: 0; }
  @media (max-width: 868px) {
    .cas-hero {
      right: 0; } }
  @media (max-width: 768px) {
    .cas-hero {
      height: 253px;
      width: auto; } }
  @media (max-width: 640px) {
    .cas-hero {
      display: block;
      height: 217px;
      width: auto;
      position: relative;
      bottom: 0;
      right: 0;
      left: 0;
      margin: 0 auto -50px; } }

.cas-garden-party-btn {
  height: 180px;
  width: 180px;
  position: absolute;
  bottom: 0;
  right: 35px;
  z-index: 0; }
  @media (max-width: 868px) {
    .cas-garden-party-btn {
      height: 150px;
      width: 150px;
      right: -15px;
      bottom: -30px; } }
  @media (max-width: 768px) {
    .cas-garden-party-btn {
      height: 130px;
      width: 130px;
      right: -10px;
      bottom: -40px; } }
  @media (max-width: 640px) {
    .cas-garden-party-btn {
      display: block;
      height: 130px;
      width: 130px;
      position: relative;
      bottom: 0;
      right: 0;
      left: 0;
      margin: 0 auto -25px; } }

.cas-garden-party-btn:hover {
  transform: scale(1.05); }

.intro-container {
  display: inline-block;
  position: relative;
  width: 100%; }
  .intro-container h2 {
    font-size: 125%;
    line-height: 150%; }
    @media (max-width: 360px) {
      .intro-container h2 {
        font-size: 110%; } }

.reasons-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  margin: 0 0 30px 0;
  position: relative; }

.reasons-block {
  box-sizing: border-box;
  color: #222;
  margin: 0;
  padding: 0;
  position: relative;
  text-decoration: none;
  width: 30%; }
  @media (max-width: 868px) {
    .reasons-block {
      width: 100%; } }
  .reasons-block h3 {
    font-weight: 700;
    margin-top: 30px; }

.mad-client-logos {
  margin-bottom: 30px;
  width: 100%;
  max-width: 960px; }
  @media (max-width: 640px) {
    .mad-client-logos {
      display: none; } }
  @media (max-width: 480px) {
    .mad-client-logos {
      display: none; } }

.mad-client-logos-mid {
  display: none; }
  @media (max-width: 640px) {
    .mad-client-logos-mid {
      display: inherit;
      margin-bottom: 30px;
      width: 100%;
      max-width: 960px; } }
  @media (max-width: 480px) {
    .mad-client-logos-mid {
      display: none; } }

.mad-client-logos-mobile {
  display: none; }
  @media (max-width: 640px) {
    .mad-client-logos-mobile {
      display: none; } }
  @media (max-width: 480px) {
    .mad-client-logos-mobile {
      display: block;
      margin-bottom: 30px;
      width: 100%;
      max-width: 960px; } }

.home > h1.how-can-we-help-title {
  margin: 15px auto 25px;
  text-align: center; }
  @media (max-width: 640px) {
    .home > h1.how-can-we-help-title {
      margin: 5px auto 25px; } }
  @media (max-width: 360px) {
    .home > h1.how-can-we-help-title {
      margin: 15px auto 25px; } }

.how-we-can-help-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between; }
  @media (max-width: 768px) {
    .how-we-can-help-container {
      display: block; } }

.cas-testimonial-img {
  width: 100%;
  max-width: 500px; }
  @media (max-width: 640px) {
    .cas-testimonial-img {
      margin: 0 auto 20px;
      box-sizing: border-box; } }

.cas-mission-img {
  width: 100%;
  max-width: 500px;
  margin-top: 10px; }
  @media (max-width: 640px) {
    .cas-mission-img {
      margin: 10px auto 30px; } }

p.testimonial-name {
  color: #a23735;
  font-weight: 700; }
  @media (max-width: 480px) {
    p.testimonial-name {
      margin-bottom: 0; } }

a.services-block {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+1,f6f6f6+47,efefef+100 */
  background: white;
  /* Old browsers */
  background: -moz-radial-gradient(center, ellipse cover, white 1%, #f6f6f6 47%, #efefef 100%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(center, ellipse cover, white 1%, #f6f6f6 47%, #efefef 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(ellipse at center, white 1%, #f6f6f6 47%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#efefef',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  -khtml-border-radius: 5px;
  border-radius: 5px;
  -webkit-box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
  -moz-box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
  box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.3);
  box-sizing: border-box;
  color: #222;
  margin: 0 0 15px 0;
  padding: 18px 18px 25px 18px;
  position: relative;
  text-decoration: none;
  width: 32.5%; }
  @media (max-width: 560px) {
    a.services-block {
      padding-bottom: 36px; } }
  a.services-block:hover {
    cursor: pointer;
    background: #33ccff;
    /* Old browsers */
    background: -moz-radial-gradient(circle at top left, #33ccff 5%, #0099cc 75%);
    /* FF3.6-15 */
    background: -webkit-radial-gradient(circle at top left, #33ccff 5%, #0099cc 75%);
    /* Chrome10-25,Safari5.1-6 */
    background: radial-gradient(circle at top left, #33ccff 5%, #0099cc 75%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33ccff', endColorstr='#0099cc',GradientType=1 );
    /* IE6-9 fallback on horizontal gradient */
    color: #fff; }
  a.services-block h2 {
    display: table-cell;
    font-weight: 700;
    font-size: 120%;
    height: 60px;
    padding-left: 70px;
    vertical-align: middle; }
  a.services-block .service-title-margin {
    margin-top: 10px; }
  @media (max-width: 930px) {
    a.services-block {
      width: 49%; } }
  @media (max-width: 560px) {
    a.services-block {
      width: 100%; } }
  @media (max-width: 360px) {
    a.services-block {
      font-size: 14px; } }

@media (max-width: 560px) {
  a.services-block.services-block-not-active {
    padding-bottom: 10px; } }
a.services-block.services-block-not-active:hover {
  color: #222;
  cursor: default;
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffffff+1,f6f6f6+47,efefef+100 */
  background: white;
  /* Old browsers */
  background: -moz-radial-gradient(center, ellipse cover, white 1%, #f6f6f6 47%, #efefef 100%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(center, ellipse cover, white 1%, #f6f6f6 47%, #efefef 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(ellipse at center, white 1%, #f6f6f6 47%, #efefef 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#efefef', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */ }

a.flex-end-block {
  margin-left: 12px; }
  @media (max-width: 930px) {
    a.flex-end-block {
      margin-left: 2%; } }
  @media (max-width: 560px) {
    a.flex-end-block {
      margin-left: 0; } }

a.services-block:hover > p.mad-link, a.blog-block:hover > .blog-text > p.mad-link {
  color: #fff;
  text-decoration: underline; }
  a.services-block:hover > p.mad-link:after, a.blog-block:hover > .blog-text > p.mad-link:after {
    background: url("../img/link-arrow-hover.e4244a1b4930.png") no-repeat center center;
    content: "";
    display: inline-block;
    background-size: contain;
    height: 10px;
    width: 10px;
    margin: 0 0 0 5px; }

.img-icons {
  float: left;
  height: 60px;
  margin-right: 10px;
  width: auto; }

.icon-sprites {
  height: 60px;
  position: absolute;
  top: 20px;
  left: 15px;
  clip: rect(0 60px 60px 0); }

a.services-block:hover > .icon-sprites {
  clip: rect(0 120px 60px 60px);
  left: -45px; }

a.services-block.services-block-not-active:hover > .icon-sprites {
  left: 15px;
  clip: rect(0 60px 60px 0); }

.advantage-home {
  background-color: #0099cc;
  margin-top: 3px;
  padding-top: 20px; }
  .advantage-home h1 {
    color: #fff;
    font-weight: 900;
    max-width: 700px;
    margin: 0 auto; }
  .advantage-home h2 {
    color: #fff;
    max-width: 550px;
    margin: 0 auto; }
  .advantage-home p {
    color: #fff; }

.featured-blog-title-bar {
  background-color: #1d1d1d;
  color: #ffffff;
  margin-bottom: 40px;
  padding: 10px;
  text-align: center; }

.blog-container {
  margin: 0 0 30px 0; }
  @media (max-width: 560px) {
    .blog-container {
      margin: 30px 0 30px 0; } }

.blog-block {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-align: center;
  -webkit-align-items: center;
  -webkit-box-align: center;
  align-items: center;
  color: #222;
  text-decoration: none;
  position: relative; }
  @media (max-width: 640px) {
    .blog-block {
      display: block; } }
  .blog-block h2 a {
    color: #222;
    text-decoration: none; }
    .blog-block h2 a:hover {
      text-decoration: underline; }

.blog-text {
  width: 100%;
  white-space: normal;
  margin-bottom: 20px;
  margin-left: 320px;
  min-height: 200px; }
  .blog-text h2 {
    margin: 15px 0 8px 0;
    padding: 0; }
  .blog-text p {
    margin: 0 0 10px 0;
    padding: 0; }
  @media (max-width: 768px) {
    .blog-text {
      margin-left: 220px; }
      .blog-text h2 {
        margin: 10px 0 8px 0; } }
  @media (max-width: 640px) {
    .blog-text {
      display: block;
      margin: 0 auto 40px;
      min-height: auto;
      max-width: 300px; }
      .blog-text h2 {
        font-size: 135%; } }

.feature-blog-img {
  height: 200px;
  width: 300px;
  position: absolute;
  top: 0;
  left: 0; }
  .feature-blog-img:hover {
    opacity: 0.8; }
  @media (max-width: 768px) {
    .feature-blog-img {
      clip: rect(0 250px 200px 50px);
      left: -50px; } }
  @media (max-width: 640px) {
    .feature-blog-img {
      display: block;
      position: relative;
      clip: auto;
      top: auto;
      left: auto;
      margin: 0 auto; } }
  @media (max-width: 360px) {
    .feature-blog-img {
      width: 100%;
      height: 100%;
      max-width: 300px; } }

.lets-talk-home {
  background-color: #6c6c6c;
  margin-top: 3px;
  text-align: center;
  padding-top: 20px; }
  .lets-talk-home h2 {
    color: #fff;
    margin: 0 auto 20px; }
  .lets-talk-home p {
    color: #fff;
    margin: 0 auto 20px;
    text-align: left; }

.headline-italic {
  font-style: italic;
  margin: 0 5px 0 -3px; }

.madFadeBounce {
  -webkit-animation-name: madFadeBounce;
  animation-name: madFadeBounce;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

@-webkit-keyframes madFadeBounce {
  0%, 16%, 32%, 48%, 64%, 80%,100% {
    -webkit-transition-timing-function: cubic-bezier(0.3, 0.6, 0.9, 1.2, 1.5, 1.8);
    transition-timing-function: cubic-bezier(0.3, 0.6, 0.9, 1.2, 1.5, 1.8); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 300px, 0);
    transform: translate3d(0, 300px, 0); }
  16% {
    opacity: 1;
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  32% {
    -webkit-transform: translate3d(0, 15px, 0);
    transform: translate3d(0, 15px, 0); }
  48% {
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  64% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  80% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, -10px, 0); }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }
@keyframes madFadeBounce {
  0%, 16%, 32%, 48%, 64%, 80%,100% {
    -webkit-transition-timing-function: cubic-bezier(0.3, 0.6, 0.9, 1.2, 1.5, 1.8);
    transition-timing-function: cubic-bezier(0.3, 0.6, 0.9, 1.2, 1.5, 1.8); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, 300px, 0);
    transform: translate3d(0, 300px, 0); }
  16% {
    opacity: 1;
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0); }
  32% {
    -webkit-transform: translate3d(0, 15px, 0);
    transform: translate3d(0, 15px, 0); }
  48% {
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0); }
  64% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0); }
  80% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, -10px, 0); }
  100% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    opacity: 1; } }
.our-mission-title {
  text-align: center; }
  @media (max-width: 480px) {
    .our-mission-title {
      margin-top: 20px; } }

@media (max-width: 560px) {
  .one-half-column-home {
    padding: 0 30px;
    box-sizing: border-box; } }

.ctct-inline-form {
  max-width: 600px; }

.home-hero-btn {
  margin: 0 7px;
  font-size: 20px !important;
  padding: 0 12px;
  box-sizing: border-box;
  height: 85px !important; }
  @media (max-width: 768px) {
    .home-hero-btn {
      max-width: 100%;
      display: block;
      margin: 0 auto 12px;
      height: 60px !important; } }

.video-content {
  padding: 30px;
  background: -moz-radial-gradient(80% bottom, #033e5f 15%, #03567e 35%);
  background: -webkit-radial-gradient(80% bottom, #033e5f 15%, #03567e 35%);
  background-size: auto;
  background: radial-gradient(80% bottom, #033e5f 15%, #03567e 35%); }
  @media (max-width: 480px) {
    .video-content {
      padding: 30px 0;
      margin: 0 0 30px 0; } }

div.about-us {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%; }
  @media (max-width: 560px) {
    div.about-us h1 {
      line-height: 1em;
      text-align: center; } }

.hero-about {
  background: url("../img/hero-about-mighty-ant-bg.6a306b8962dd.jpg") no-repeat center center;
  background-size: cover;
  margin: 0 auto;
  height: 150px; }
  @media (max-width: 640px) {
    .hero-about {
      height: 100px; } }
  .hero-about h1 {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #ffffff;
    text-align: center;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 30px;
    font-weight: 900; }
    @media (max-width: 480px) {
      .hero-about h1 {
        max-width: 300px; } }

.bio-containers {
  height: 100%;
  position: relative; }

.container-detail-text {
  display: flex;
  justify-content: space-between;
  background-color: #f8f8f8;
  box-sizing: border-box;
  border: 1px solid #c9c9c9;
  padding: 30px;
  margin: 0;
  width: 100%; }
  @media (max-width: 640px) {
    .container-detail-text {
      display: block; }
      .container-detail-text h1, .container-detail-text h2 {
        text-align: center; } }
  .container-detail-text .img-container {
    display: block;
    width: 200px; }
    @media (max-width: 640px) {
      .container-detail-text .img-container {
        margin: 0 auto; } }
    .container-detail-text .img-container .leadership-detail-img {
      width: 100%; }
  .container-detail-text .text-container {
    display: block;
    width: 100%;
    max-width: 650px;
    padding-left: 40px; }
    @media (max-width: 640px) {
      .container-detail-text .text-container {
        padding-left: 0; } }
  @media (max-width: 768px) {
    .container-detail-text {
      padding: 30px; } }
  @media (max-width: 560px) {
    .container-detail-text {
      border-bottom: 1px solid #c9c9c9;
      border-top: 1px solid #c9c9c9;
      border-left: 0 solid #c9c9c9;
      border-right: 0 solid #c9c9c9; } }

.bio-summary-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: wrap;
  -ms-flex-pack: wrap;
  justify-content: wrap;
  margin: 0 0 30px 0;
  position: relative;
  top: 0;
  left: 0;
  z-index: 100; }
  @media (max-width: 992px) {
    .bio-summary-container {
      display: -ms-flexbox;
      display: -webkit-flex;
      display: -moz-flex;
      display: flex;
      flex-wrap: wrap;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center; } }
  @media (max-width: 480px) {
    .bio-summary-container {
      display: inherit; } }

.bio-block-container {
  padding: 15px 15px 30px 15px;
  width: 30%;
  margin-bottom: 15px;
  position: relative; }
  @media (max-width: 768px) {
    .bio-block-container {
      width: 40%; } }
  .bio-block-container:hover {
    background-color: #f9f9f9;
    padding: 14px 14px 29px 14px;
    border: 1px solid #e8e8e8;
    cursor: pointer; }
    .bio-block-container:hover .open-bio {
      bottom: 9px;
      left: 23px; }
      @media (max-width: 480px) {
        .bio-block-container:hover .open-bio {
          bottom: 9px;
          left: 38px; } }
    @media (max-width: 480px) {
      .bio-block-container:hover {
        padding: 0 0 29px 0;
        border: 0;
        border-bottom: 1px solid #e8e8e8; } }
  @media (max-width: 480px) {
    .bio-block-container {
      border: 0;
      padding: 0 0 30px 0;
      width: 100vw;
      position: relative;
      left: 50%;
      right: 50%;
      margin-left: -50vw;
      margin-right: -50vw; } }

div.subpage > .bio-detail-container {
  box-sizing: border-box;
  padding: 10px 0 0; }
  @media (max-width: 560px) {
    div.subpage > .bio-detail-container {
      margin: 0 -30px 0; } }
  div.subpage > .bio-detail-container h1 {
    font-weight: 900;
    margin: 0; }
  div.subpage > .bio-detail-container h2 {
    text-transform: uppercase;
    font-size: 140%; }
    @media (max-width: 560px) {
      div.subpage > .bio-detail-container h2 {
        font-size: 120%;
        margin-top: 5px; } }
    @media (max-width: 360px) {
      div.subpage > .bio-detail-container h2 {
        font-size: 100%; } }
  div.subpage > .bio-detail-container h3 {
    line-height: 1.5em; }

.bio-detail-container > .close-bio:last-child {
  margin-top: 20px; }

.bio-text {
  box-sizing: border-box;
  padding: 5px 15px; }
  @media (max-width: 480px) {
    .bio-text {
      padding: 5px 30px; } }
  @media (max-width: 480px) {
    .bio-text h2, .bio-text h3 {
      text-align: center; } }

.bio-detail-bar {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#33ccff+1,0099cc+29 */
  background: #33ccff;
  /* Old browsers */
  background: -moz-radial-gradient(20% top, #33ccff 15%, #0099cc 55%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(20% top, #33ccff 15%, #0099cc 55%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(20% top, #33ccff 15%, #0099cc 55%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33ccff', endColorstr='#0099cc',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  cursor: pointer;
  height: 34px; }
  @media (max-width: 560px) {
    .bio-detail-bar {
      width: 100vw;
      position: relative;
      left: 50%;
      right: 50%;
      margin-left: -50vw;
      margin-right: -50vw; } }

.bio-detail-bar:hover > .close-icon {
  transition: transform 0.5s;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  -o-transform: rotate(135deg);
  transform: rotate(135deg); }

.bio-text-expanded {
  color: #ffffff;
  height: auto;
  margin-bottom: 2px;
  padding: 10px 15px 5px; }
  .bio-text-expanded:hover {
    cursor: pointer; }

.bio-text > h2 {
  font-size: 150%;
  line-height: 1em;
  margin-bottom: 5px;
  font-weight: 900; }

.bio-text > h3 {
  font-weight: 700;
  font-size: 110%;
  line-height: 1.1em;
  margin-bottom: 5px;
  margin-top: 3px; }

.bio-text > p {
  line-height: 1.3em;
  margin-bottom: 10px; }

.open-bio {
  position: absolute;
  bottom: 10px;
  left: 24px;
  margin-bottom: 0; }
  @media (max-width: 480px) {
    .open-bio {
      left: 38px; } }

.open-bio > a.mad-general-link {
  margin-bottom: 5px; }

.leadership-glenn-smith {
  background: url("../img/glenn-smith.25fb9a7f3144.jpg") no-repeat center center;
  background-size: cover;
  height: 300px;
  margin-bottom: 5px; }

.leadership-eric-powers {
  background: url("../img/eric-powers.27481e13ff41.jpg") no-repeat center center;
  background-size: cover;
  height: 300px;
  margin-bottom: 5px; }

.leadership-jaymie-smith {
  background: url("../img/jaymie-smith.8584c7283e34.jpg") no-repeat center center;
  background-size: cover;
  height: 300px;
  margin-bottom: 5px; }

.leadership-cindy-suderberg {
  background: url("../img/cindy-suderberg.506071744f83.jpg") no-repeat center center;
  background-size: cover;
  height: 300px;
  margin-bottom: 5px; }

.leadership-thomas-dale {
  background: url("../img/thomas-dale.a4bc5b12bb01.jpg") no-repeat center center;
  background-size: cover;
  height: 300px;
  margin-bottom: 5px; }

.leadership-cco {
  background: url("../img/cco-02.7fc3620d48c4.jpg") no-repeat center center;
  background-size: cover;
  height: 300px;
  margin-bottom: 5px; }

.leadership-img {
  max-height: 300px;
  margin-bottom: 5px;
  width: 100%; }
  @media (max-width: 480px) {
    .leadership-img {
      width: 50%;
      max-height: 480px;
      position: relative;
      display: block;
      margin: 0 auto 5px;
      padding-top: 15px; } }

.bio-block-container:hover > .bio-block > .leadership-img {
  opacity: 0.8; }

.leadership-glenn-smith-featured {
  background: url("../img/glenn-smith-featured.a479c505a879.jpg") no-repeat center top;
  background-size: cover;
  height: 400px;
  margin-bottom: 5px; }

#glenn-detail, #eric-detail, #jaymie-detail, #cindy-detail, #thomas-detail, #cco-detail {
  display: none; }

.close-bio a {
  text-align: center; }
  .close-bio a:hover {
    text-decoration: underline; }

.close-icon {
  background: url("../img/expand-bio-icon.770175cac578.png") no-repeat center center;
  background-size: contain;
  cursor: pointer;
  float: right;
  height: 24px;
  margin: 5px 5px 0 0;
  width: 24px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }
  @media (max-width: 560px) {
    .close-icon {
      margin: 5px 15px 0 0; } }

#david-jones-detail,
#frank-cunningham-detail,
#john-calderone-detail,
#renee-concialdi-detail,
#patricia-chin-detail,
#mark-gamble-detail,
#jouslynn-griffin-detail,
#denise-jackson-detail,
#lori-judson-detail,
#carol-kirby-detail,
#eileen-koons-detail,
#kimberly-moss-detail,
#irene-paredes-detail,
#stanley-pine-detail,
#mark-rice-detail,
#marilyn-smith-detail,
#wenjay-sung-detail,
#philip-swan-detail,
#anne-peterson-detail,
#mark-waterson-detail {
  display: none; }

.mad-linkedin {
  height: 30px;
  width: 30px;
  margin: 0 0 -2px 5px; }
  @media (max-width: 360px) {
    .mad-linkedin {
      height: 24px;
      width: 24px;
      margin: 0 0 -3px 5px; } }

#why-mighty-ant-block h1 {
  font-weight: 900;
  text-align: center; }
#why-mighty-ant-block h2 {
  font-weight: 700;
  margin-top: 30px;
  margin-bottom: 10px; }

.why-choose-mighty-ant-img img {
  width: 100%; }

.hero-why-us {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#33ccff+1,0099cc+29 */
  background: #33ccff;
  /* Old browsers */
  background: -moz-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#33ccff', endColorstr='#0099cc', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  height: 150px; }
  .hero-why-us h1 {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #ffffff;
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
    padding: 0 20px;
    font-weight: 900; }

.hero-why-not-us {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#b5bdc8+0,828c95+36,28343b+100;Grey+Black+3D */
  background: #b5bdc8;
  /* Old browsers */
  background: -moz-radial-gradient(80% bottom, #b5bdc8 0%, #828c95 36%, #28343b 100%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(80% bottom, #b5bdc8 0%, #828c95 36%, #28343b 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(80% bottom, #b5bdc8 0%, #828c95 36%, #28343b 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b5bdc8', endColorstr='#28343b',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  height: 150px;
  margin: 30px 0; }
  @media (max-width: 480px) {
    .hero-why-not-us {
      height: 100px;
      margin: 30px -30px; } }
  .hero-why-not-us h1 {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    color: #ffffff;
    text-align: center;
    max-width: 640px;
    margin: 0 auto;
    font-weight: 900; }

div.services {
  position: relative;
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%; }
  @media (max-width: 560px) {
    div.services h1 {
      line-height: 1.25em;
      text-align: center; } }

h1.step-headline {
  font-size: 160%;
  margin: 35px 0 20px; }

.hero-services {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#33ccff+1,0099cc+29 */
  background: #33ccff;
  /* Old browsers */
  background: -moz-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33ccff', endColorstr='#0099cc',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  padding: 40px 0 30px; }
  .hero-services h1 {
    color: #fff;
    font-weight: 900; }
  .hero-services h2 {
    color: #fff; }

.hero-text-services {
  margin: 0 auto;
  max-width: 800px;
  text-align: center; }

.hero-text-why-mighty-ant {
  margin: 0 auto;
  max-width: 900px;
  text-align: center; }

.small-medium-sized-business-owners-bg {
  background: linear-gradient(rgba(102, 153, 51, 0.7), rgba(102, 153, 51, 0.7)), url("../img/small-medium-sized-business-owners-bg.831e9f091955.jpg") no-repeat center center;
  background-size: cover; }

.common-projects-container {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  -khtml-border-radius: 5px;
  border-radius: 5px;
  background-color: #efefef;
  padding: 5px 20px 20px;
  margin-bottom: 0; }
  @media (max-width: 560px) {
    .common-projects-container {
      -moz-border-radius: 0;
      -webkit-border-radius: 0;
      -ms-border-radius: 0;
      -o-border-radius: 0;
      -khtml-border-radius: 0;
      border-radius: 0;
      margin-left: -30px;
      margin-right: -30px; } }

.common-projects-titles-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  border-bottom: 1px solid #ccc;
  font-weight: 700;
  margin: 0 0 10px;
  padding: 10px 0 0;
  text-transform: none;
  display: table; }
  .common-projects-titles-container div {
    width: 30%;
    display: table-cell;
    vertical-align: bottom;
    padding: 10px 0; }
    @media (max-width: 640px) {
      .common-projects-titles-container div {
        display: block;
        padding: 0 10px;
        text-transform: none;
        width: 100%; } }
  @media (max-width: 640px) {
    .common-projects-titles-container {
      display: block;
      width: 100%;
      margin: 0 0 20px;
      padding: 10px 0; } }

.title-dash {
  display: none; }
  @media (max-width: 640px) {
    .title-dash {
      display: inline-block;
      margin-left: 5px; } }

.common-projects-details-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  border-bottom: 1px solid #ccc;
  margin: 0 0 10px;
  padding: 0 0 10px;
  position: relative;
  display: table; }
  @media (max-width: 640px) {
    .common-projects-details-container {
      padding: 0 10px 10px;
      margin: 0 0 20px; } }
  .common-projects-details-container div {
    display: table-cell;
    padding: 10px 0;
    width: 30%; }
    @media (max-width: 640px) {
      .common-projects-details-container div {
        display: block;
        margin-bottom: 15px;
        padding: 0;
        width: 100%; } }
  .common-projects-details-container:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0; }

.common-projects-titles-container div.ballpark {
  text-align: center;
  width: 14%; }
  @media (max-width: 640px) {
    .common-projects-titles-container div.ballpark {
      padding: 0 10px;
      text-align: left;
      width: 100%; } }

.common-projects-details-container div.ballpark {
  text-align: center;
  width: 14%; }
  @media (max-width: 640px) {
    .common-projects-details-container div.ballpark {
      padding: 0;
      text-align: left;
      width: 100%; } }

.common-projects-titles-container div.spacer {
  text-align: center;
  width: 4%;
  box-sizing: border-box; }
  @media (max-width: 640px) {
    .common-projects-titles-container div.spacer {
      padding: 0;
      text-align: left;
      width: 100%; } }

.common-projects-details-container div.spacer {
  text-align: center;
  width: 4%;
  box-sizing: border-box; }
  @media (max-width: 640px) {
    .common-projects-details-container div.spacer {
      padding: 0;
      text-align: left;
      width: 100%; } }

.casestudy-hero-caliburger {
  background: url("../img/casestudy-hero-caliburger.c23c7d575e64.jpg") no-repeat center;
  background-size: 100%;
  display: block;
  height: 0;
  padding-bottom: 60%; }
  @media (max-width: 560px) {
    .casestudy-hero-caliburger {
      background: url("../img/casestudy-hero-caliburger-mobile.dd7b4e156c06.jpg") no-repeat center;
      background-size: 100%;
      display: block;
      height: 0;
      padding-bottom: 112.375%; } }

.hero-casetudy-caliburger {
  display: block;
  width: 100%; }
  @media (max-width: 560px) {
    .hero-casetudy-caliburger {
      display: none; } }

.hero-casetudy-caliburger-mobile {
  display: none;
  width: 100%; }
  @media (max-width: 560px) {
    .hero-casetudy-caliburger-mobile {
      display: block; } }

.hero-filemaker-consulting {
  background: url("../img/hero-bg-filemaker-consulting-xl.a50abc4b1ef3.jpg") no-repeat center top;
  background-size: cover;
  height: 350px; }
  @media (max-width: 768px) {
    .hero-filemaker-consulting {
      height: 250px; } }
  @media (max-width: 480px) {
    .hero-filemaker-consulting {
      height: 150px;
      margin-bottom: 70px; } }
  @media (max-width: 992px) {
    .hero-filemaker-consulting {
      background: url("../img/hero-bg-filemaker-consulting-v02.dc0aec6a9bb2.jpg") no-repeat center top;
      background-size: cover;
      height: 350px; } }
  @media (max-width: 992px) and (max-width: 768px) {
    .hero-filemaker-consulting {
      height: 250px; } }
  @media (max-width: 992px) and (max-width: 480px) {
    .hero-filemaker-consulting {
      height: 150px;
      margin-bottom: 70px; } }

.hero-small-medium-size-business-solutions {
  background: url("../img/hero-bg-small-medium-sized-business-solutions-v02.9e4857df8e74.jpg") no-repeat center top;
  background-size: cover;
  height: 350px; }
  @media (max-width: 768px) {
    .hero-small-medium-size-business-solutions {
      height: 250px; } }
  @media (max-width: 480px) {
    .hero-small-medium-size-business-solutions {
      height: 150px;
      margin-bottom: 70px; } }

.hero-enterprise-work-group-solutions {
  background: url("../img/hero-bg-enterprise-work-group-solutions-v02.d55253b91643.jpg") no-repeat center top;
  background-size: cover;
  height: 350px; }
  @media (max-width: 768px) {
    .hero-enterprise-work-group-solutions {
      height: 250px; } }
  @media (max-width: 480px) {
    .hero-enterprise-work-group-solutions {
      height: 150px;
      margin-bottom: 70px; } }

.hero-launch-startup {
  background: url("../img/hero-bg-launch-startup-v02.666e1c25a053.jpg") no-repeat center top;
  background-size: cover;
  height: 350px; }
  @media (max-width: 768px) {
    .hero-launch-startup {
      height: 250px; } }
  @media (max-width: 480px) {
    .hero-launch-startup {
      height: 150px;
      margin-bottom: 70px; } }

.hero-title-bar {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: rgba(24, 154, 202, 0.8);
  height: 100px; }
  @media (max-width: 768px) {
    .hero-title-bar {
      height: 80px; } }
  @media (max-width: 560px) {
    .hero-title-bar {
      top: 215px; } }
  @media (max-width: 480px) {
    .hero-title-bar {
      background-color: rgba(24, 154, 202, 0.95);
      top: 186px; } }
  .hero-title-bar .hero-title-text {
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    display: flex;
    justify-content: center;
    align-content: center;
    margin: auto;
    padding: 0 30px; }
    @media (max-width: 360px) {
      .hero-title-bar .hero-title-text {
        padding: 0 20px; } }
    .hero-title-bar .hero-title-text h1 {
      align-self: center;
      color: #ffffff;
      font-weight: 900;
      line-height: 1em;
      margin: 0;
      padding: 0; }
      @media (max-width: 480px) {
        .hero-title-bar .hero-title-text h1 {
          font-size: 150%; } }
    .hero-title-bar .hero-title-text .hero-icon {
      align-self: center;
      margin-right: 15px;
      width: 80px; }
      @media (max-width: 768px) {
        .hero-title-bar .hero-title-text .hero-icon {
          width: 60px; } }
      @media (max-width: 360px) {
        .hero-title-bar .hero-title-text .hero-icon {
          width: 50px;
          margin-right: 10px; } }

@media (max-width: 480px) {
  h1#hero-filemaker-consulting {
    max-width: 125px; } }

@media (max-width: 868px) {
  h1#hero-small-medium-size-business-solutions {
    max-width: 345px; } }
@media (max-width: 768px) {
  h1#hero-small-medium-size-business-solutions {
    max-width: 285px; } }
@media (max-width: 560px) {
  h1#hero-small-medium-size-business-solutions {
    max-width: 250px; } }
@media (max-width: 480px) {
  h1#hero-small-medium-size-business-solutions {
    max-width: 215px; } }

@media (max-width: 640px) {
  h1#hero-enterprise-work-group-solutions {
    max-width: 250px; } }
@media (max-width: 560px) {
  h1#hero-enterprise-work-group-solutions {
    max-width: 220px; } }
@media (max-width: 480px) {
  h1#hero-enterprise-work-group-solutions {
    max-width: 190px; } }

div.contact {
  position: relative;
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%; }

.hero-contact {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#33ccff+1,0099cc+29 */
  background: #33ccff;
  /* Old browsers */
  background: -moz-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#33ccff', endColorstr='#0099cc', GradientType=1);
  /* IE6-9 fallback on horizontal gradient */
  padding: 0 0 10px; }
  .hero-contact h1 {
    color: #fff;
    font-weight: 900; }
    @media (max-width: 640px) {
      .hero-contact h1 {
        text-align: center; } }
  .hero-contact h3 {
    color: #fff;
    max-width: 700px; }
    @media (max-width: 768px) {
      .hero-contact h3 {
        max-width: 450px; } }
    @media (max-width: 640px) {
      .hero-contact h3 {
        max-width: 100%;
        margin: 0 auto; } }

@media (max-width: 480px) {
  .title-break {
    display: block; } }

div.contact {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%; }
  div.contact h4 {
    color: #0099cc;
    text-transform: uppercase; }

.contact-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between; }

.contact-block-half {
  width: 45%;
  position: relative; }
  @media (max-width: 768px) {
    .contact-block-half {
      width: 100%; } }

.contact-block-two-thirds {
  width: 60%;
  position: relative; }
  @media (max-width: 768px) {
    .contact-block-two-thirds {
      width: 100%; } }

.contact-block-one-third {
  width: 28%;
  position: relative;
  float: right; }
  @media (max-width: 930px) {
    .contact-block-one-third {
      width: 30%; } }
  @media (max-width: 868px) {
    .contact-block-one-third {
      width: 35%; } }
  @media (max-width: 768px) {
    .contact-block-one-third {
      float: none;
      width: 100%; } }

.contact-block-img {
  width: 50%;
  position: relative; }
  @media (max-width: 768px) {
    .contact-block-img {
      text-align: right;
      width: 100%; } }
  @media (max-width: 480px) {
    .contact-block-img {
      text-align: center; } }

.contact-feature-img {
  box-sizing: border-box;
  width: auto;
  height: 220px;
  margin: 0 auto -5px;
  padding: 0 30px;
  z-index: -1000; }
  @media (max-width: 480px) {
    .contact-feature-img {
      height: 150px; } }
  @media (max-width: 360px) {
    .contact-feature-img {
      height: 120px; } }

h4.locations {
  margin-top: 47px; }
  @media (max-width: 768px) {
    h4.locations {
      margin-top: 5px; } }

div.contact {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%; }

div.blog {
  position: relative;
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%; }
  div.blog h1 {
    font-size: 200%;
    font-weight: 700;
    margin-bottom: 20px; }
  @media (max-width: 560px) {
    div.blog h1 {
      font-size: 140%;
      line-height: 1.2em; } }

.hero-blog {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#33ccff+1,0099cc+29 */
  background: #33ccff;
  /* Old browsers */
  background: -moz-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33ccff', endColorstr='#0099cc',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  padding: 50px 0 30px; }
  .hero-blog h1 {
    color: #fff;
    font-weight: 900; }
  .hero-blog h2 {
    color: #fff; }
  @media (max-width: 480px) {
    .hero-blog {
      padding: 20px 0 0; } }

.hero-text-blog {
  margin: 0 auto;
  max-width: 800px;
  text-align: center; }

.hero-blog-bg {
  background: url("../img/hero-blog-bg.dbaca2feade4.jpg") no-repeat center center;
  background-size: cover; }

section.blog-list {
  box-sizing: border-box;
  position: relative;
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%;
  margin-bottom: 30px;
  padding: 20px 30px; }
  section.blog-list article {
    border-top: 1px solid #dedede;
    margin-top: 30px;
    padding-top: 25px; }
    section.blog-list article:first-of-type {
      border-top: 0;
      margin-top: 0;
      padding-top: 0; }
  section.blog-list article > header > h3 a {
    color: #1d1d1d;
    text-align: left;
    text-decoration: none; }
  section.blog-list article > header > h3:hover {
    color: #6c8c23; }
  section.blog-list ul.post-detail {
    margin-left: 0; }
    section.blog-list ul.post-detail li {
      line-height: 1.2em;
      list-style-type: none;
      margin: 0 30px 0 0;
      padding: 0; }
      section.blog-list ul.post-detail li a {
        color: #1d1d1d;
        font-weight: 700;
        text-decoration: none; }
  section.blog-list ul.post-detail.tags {
    margin-left: 0; }
    section.blog-list ul.post-detail.tags li {
      line-height: 1.2em;
      list-style-type: none;
      margin: 5px 30px 15px 0;
      padding: 0; }
      section.blog-list ul.post-detail.tags li a {
        color: #555;
        font-size: 14px;
        font-weight: 100;
        text-decoration: none; }

article > footer {
  text-align: left; }

article > footer.read-more a {
  color: #0099cc;
  font-weight: 400;
  text-decoration: none; }

.mad-sidebar {
  background-color: #fafafa;
  color: #5e5e5e;
  margin-top: 50px;
  padding: 30px;
  position: relative; }
  @media (max-width: 868px) {
    .mad-sidebar {
      margin: 0 -30px -30px;
      padding: 20px 30px 0;
      width: 100%;
      box-sizing: content-box; } }
  .mad-sidebar img {
    margin: 12px auto; }

.sidebar-quote {
  font-size: 100%;
  line-height: 1.5em; }

.sidebar-quote-bio {
  display: block;
  font-size: 80%;
  line-height: 1.2em;
  margin-top: 15px; }

.sidebar-block {
  border-bottom: 2px dotted #c9c9c9;
  padding-bottom: 30px;
  margin-bottom: 30px; }
  .sidebar-block p {
    margin: 0; }
  .sidebar-block:last-of-type {
    border-bottom: 0; }
  @media (max-width: 868px) {
    .sidebar-block {
      width: 80%;
      margin: 0 auto 30px; } }
  @media (max-width: 560px) {
    .sidebar-block {
      width: 100%; } }

.sidebar-book h3 {
  font-size: 110%;
  text-align: center; }
  @media (max-width: 868px) {
    .sidebar-book h3 {
      margin: 0 auto;
      max-width: 300px; } }
.sidebar-book img {
  max-width: 150px; }

.blog-block-feature {
  border-bottom: 2px dotted #c9c9c9;
  margin-bottom: 30px;
  padding-bottom: 20px; }
  .blog-block-feature h1 {
    font-weight: 900;
    color: #1d1d1d; }
    .blog-block-feature h1 a {
      text-decoration: none;
      color: #222; }
      .blog-block-feature h1 a:hover {
        text-decoration: underline; }
  .blog-block-feature:last-of-type {
    border-bottom: 0 solid #c9c9c9;
    margin-bottom: 0; }

.blog-block-article {
  color: #222; }
  .blog-block-article a {
    text-decoration: underline;
    color: blue; }
    .blog-block-article a:hover {
      text-decoration: none; }
  .blog-block-article h1 {
    font-weight: 900;
    color: #1d1d1d; }
  .blog-block-article:last-of-type {
    margin-bottom: 0; }

.blog-text-feature {
  width: 100%;
  margin: 15px 0 0 0; }

.blog-img-feature {
  display: block;
  height: auto;
  width: 100%; }

a .blog-img-feature:hover {
  opacity: 0.8; }

.blog-list-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  flex-wrap: nowrap;
  margin: 30px 0 0 0;
  position: relative; }
  .blog-list-container:after {
    content: "";
    flex: auto; }
  @media (max-width: 768px) {
    .blog-list-container {
      display: block;
      max-width: 600px;
      margin: 30px auto 0; } }

.blog-img-list {
  border: 1px solid #d8d8d8;
  height: 200px;
  width: 300px; }
  @media (max-width: 768px) {
    .blog-img-list {
      width: 100%;
      height: auto; } }

.blog-text-list {
  padding: 15px 0 5px 30px; }
  .blog-text-list a {
    color: #0099cc; }
  @media (max-width: 768px) {
    .blog-text-list {
      padding: 15px 0 5px 0; } }

.mad-breadcrumbs {
  color: #c9c9c9;
  font-weight: 700;
  margin-bottom: 30px; }

.active-breadcrumb {
  color: #6c8c23; }

a.active-breadcrumb {
  color: #6c8c23;
  text-decoration: none; }
  a.active-breadcrumb:hover {
    text-decoration: underline; }

.sidebar-quotation, .sidebar-quotation-top, .sidebar-quotation-bottom {
  height: 25px;
  width: 25px;
  margin: 0 auto; }

.sidebar-quotation-top {
  background: url("../img/big-quote-left-grey.8c814270eff4.png") no-repeat center center;
  background-size: contain;
  margin-bottom: 10px; }

.sidebar-quotation-bottom {
  background: url("../img/big-quote-right-grey.dabd54f9e2e3.png") no-repeat center center;
  background-size: contain;
  margin-top: 15px; }

.email-message-style {
  padding: 30px 30px 20px 30px;
  background-color: #fafafa;
  border: solid 1pt #ccc;
  max-width: 700px;
  margin: 20px auto 40px auto; }
  @media (max-width: 480px) {
    .email-message-style {
      margin: 5px -30px 40px -30px;
      width: 100%;
      box-sizing: content-box; } }

.suggested-blog-container {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  margin: 0 0 30px 0; }
  @media (max-width: 560px) {
    .suggested-blog-container {
      margin: 30px 0 30px 0; } }

.suggested-blog-block {
  color: #222;
  text-decoration: none;
  position: relative;
  width: 30%; }
  @media (max-width: 868px) {
    .suggested-blog-block {
      border-bottom: 2px dotted #c9c9c9;
      width: 80%;
      margin: 0 auto 40px;
      padding-bottom: 10px; }
      .suggested-blog-block:last-of-type {
        border-bottom: 0;
        margin: 0 auto; } }
  .suggested-blog-block a {
    color: #222;
    text-decoration: underline; }
    .suggested-blog-block a:hover {
      text-decoration: none; }
  @media (max-width: 560px) {
    .suggested-blog-block {
      width: 100%; } }

.suggested-blog-img {
  display: block;
  width: 100%; }

a .suggested-blog-img:hover {
  opacity: 0.8; }

.suggested-blog-text {
  display: block;
  width: 100%;
  white-space: normal;
  margin-bottom: 20px; }
  .suggested-blog-text h2 {
    margin: 15px 0 8px 0;
    padding: 0; }
  .suggested-blog-text p {
    margin: 0 0 10px 0;
    padding: 0; }

.video-trt {
  color: #555555;
  font-size: 80%; }

.youtube-player {
  position: relative;
  padding-bottom: 56.23%;
  /* Use 75% for 4:3 videos */
  height: 0;
  overflow: hidden;
  max-width: 100%;
  background: #fff;
  margin: 0; }

.youtube-player iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  background: transparent; }

.youtube-player img {
  bottom: 0;
  display: block;
  left: 0;
  margin: auto;
  max-width: 100%;
  width: 100%;
  position: absolute;
  right: 0;
  top: 0;
  border: none;
  height: auto;
  cursor: pointer;
  -webkit-transition: .4s all;
  -moz-transition: .4s all;
  transition: .4s all; }
  .youtube-player img:hover {
    opacity: 0.9; }

.youtube-player .play {
  height: 72px;
  width: 72px;
  left: 50%;
  top: 50%;
  margin-left: -36px;
  margin-top: -36px;
  position: absolute;
  background: url("../img/video-blog-play-btn.fd24de68e406.png") no-repeat;
  cursor: pointer; }

.lightning-quiz-container {
  width: 100%;
  max-width: 700px;
  margin: 0 auto 30px auto;
  padding: 0 20px;
  box-sizing: border-box; }
  @media (max-width: 480px) {
    .lightning-quiz-container {
      padding: 0; } }

.lightning-quiz {
  padding: 15px;
  border: 2px solid #9ab7cc;
  /*border-radius: 3px;
  -moz-border-radius:3px;
  -webkit-border-radius:3px;*/
  width: 100%;
  margin: 0 auto 25px;
  box-sizing: border-box;
  background-color: #f8f8f8; }

.mailing-list-container {
  background-color: #efefef;
  margin-top: 3px;
  text-align: center;
  padding-top: 10px; }
  .mailing-list-container h2 {
    color: #6c6c6c;
    margin: 0 auto 20px; }
  .mailing-list-container p {
    color: #6c6c6c;
    margin: 0 auto 20px;
    text-align: left; }

#newsletter-form > label {
  color: #333;
  display: block;
  font-size: 16px;
  margin: 0 auto 15px;
  max-width: 300px;
  width: 100%; }
  #newsletter-form > label input {
    background-color: #ffffff;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    -khtml-border-radius: 5px;
    border-radius: 5px;
    border-style: none;
    box-sizing: border-box;
    display: block;
    font-family: Lato;
    font-size: 100%;
    line-height: 27px;
    outline: none;
    padding: 8px;
    width: 100%;
    margin: 0 auto 15px;
    max-width: 300px;
    text-align: center; }
  #newsletter-form > label input::-webkit-input-placeholder {
    /* Chrome/Opera/Safari */
    color: #b5b5b5;
    text-align: center; }
  #newsletter-form > label input::-moz-placeholder {
    /* Firefox 19+ */
    color: #b5b5b5;
    text-align: center; }
  #newsletter-form > label input:-ms-input-placeholder {
    /* IE 10+ */
    color: #b5b5b5;
    text-align: center; }
  #newsletter-form > label input:-moz-placeholder {
    /* Firefox 18- */
    color: #b5b5b5;
    text-align: center; }

#newsletter-form > label > input.error-box,
#newsletter-form > label > textarea.error-box {
  border: 2px dashed #e9322d;
  box-sizing: border-box;
  -moz-box-sizing: border-box; }

#newsletter-form > div.submit-container {
  text-align: center; }
  #newsletter-form > div.submit-container button {
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    -khtml-border-radius: 5px;
    border-radius: 5px;
    background-color: #0099cc;
    border: 0 solid #0099cc;
    color: #ffffff;
    cursor: pointer;
    display: block;
    font-size: 18px;
    margin: 0 auto;
    padding: 10px 30px;
    text-decoration: none; }
    #newsletter-form > div.submit-container button:hover {
      /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#ffb76b+0,ff7f04+60 */
      background: #ffb76b;
      /* Old browsers */
      background: -moz-radial-gradient(center, ellipse cover, #ffb76b 0%, #ff7f04 60%);
      /* FF3.6-15 */
      background: -webkit-radial-gradient(center, ellipse cover, #ffb76b 0%, #ff7f04 60%);
      /* Chrome10-25,Safari5.1-6 */
      background: radial-gradient(ellipse at center, #ffb76b 0%, #ff7f04 60%);
      /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
      filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffb76b', endColorstr='#ff7f04',GradientType=1 );
      /* IE6-9 fallback on horizontal gradient */
      text-decoration: none; }

.mailing-list-block {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: -moz-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-justify-content: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  margin: 0 0 30px 0;
  position: relative; }

#newsletter-form .error-message {
  color: #e9322d;
  display: block;
  font-size: 14px;
  font-weight: 700;
  margin: 0 auto 5px;
  padding: 3px 0;
  max-width: 300px;
  width: 100%; }
#newsletter-form .error-capture-message {
  background-color: #e9322d;
  color: #ffffff;
  display: block;
  font-size: 14px;
  font-weight: 700;
  margin: 10px auto;
  padding: 3px 0;
  max-width: 400px;
  width: 100%; }
#newsletter-form .error-icon {
  display: inline-block;
  width: 18px;
  height: auto;
  margin: 0 2px -2px 2px; }

div#newsletter-result {
  padding: 20px;
  border: 2px solid #c9c9c9; }

.mad-video-container-block {
  max-height: 540px;
  margin-bottom: 20px; }
  @media (max-width: 868px) {
    .mad-video-container-block {
      margin-bottom: 10px; } }

.mad-video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%; }

.mad-video-container iframe, .mad-video-container object, .mad-video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 540px; }

.blog-post-sidebar-content {
  box-sizing: border-box;
  float: right;
  margin: 10px 0 0 40px;
  max-width: 50%; }
  @media (max-width: 768px) {
    .blog-post-sidebar-content {
      display: block;
      float: none;
      margin: 20px -30px;
      max-width: 868px;
      padding: 0; } }

div.blog-post-sidebar {
  /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#33ccff+1,0099cc+29 */
  background: #33ccff;
  /* Old browsers */
  background: -moz-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* FF3.6-15 */
  background: -webkit-radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* Chrome10-25,Safari5.1-6 */
  background: radial-gradient(80% bottom, #33ccff 15%, #0099cc 55%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#33ccff', endColorstr='#0099cc',GradientType=1 );
  /* IE6-9 fallback on horizontal gradient */
  box-sizing: border-box;
  color: #ffffff;
  padding: 30px;
  margin-bottom: 30px;
  width: 100%; }
  div.blog-post-sidebar .subtitle {
    font-size: 80%;
    margin: 15px auto;
    text-align: center; }
    @media (max-width: 768px) {
      div.blog-post-sidebar .subtitle {
        font-size: 100%; } }
  div.blog-post-sidebar h1 {
    color: #ffffff;
    font-size: 115%;
    margin-bottom: 15px; }
  div.blog-post-sidebar h2 {
    font-size: 100%;
    font-weight: 700;
    margin-bottom: 5px;
    margin-top: 15px; }
  div.blog-post-sidebar ul li {
    font-size: 90%;
    line-height: 150%;
    margin-bottom: 8px; }
    @media (max-width: 768px) {
      div.blog-post-sidebar ul li {
        font-size: 100%; } }
  div.blog-post-sidebar a {
    color: #FFFFFF; }

#approach h1 {
  font-weight: 900; }

.custom-software-dev-box {
  max-width: 600px; }
  @media (max-width: 768px) {
    .custom-software-dev-box {
      max-width: 450px; } }

.custom-software-development-steps {
  float: right;
  margin: 0 0 20px 40px;
  max-width: 300px;
  width: 100%; }
  @media (max-width: 640px) {
    .custom-software-development-steps {
      float: none;
      margin: 0 auto 20px auto;
      text-align: center; } }

.approach-text {
  background-color: #f8f8f8;
  color: #6c8c23;
  margin-bottom: 20px;
  overflow: hidden;
  padding: 20px; }
  .approach-text p {
    margin-bottom: 5px; }
    .approach-text p:last-of-type {
      margin-bottom: 0; }

.approach-step-headline {
  font-size: 160%;
  margin: 25px 0 20px; }
  @media (max-width: 768px) {
    .approach-step-headline {
      max-width: 340px;
      margin: 25px auto 20px;
      text-align: center; } }

.inputs-outputs-mobile {
  max-width: 300px;
  margin: 0 auto; }

div.subpage {
  margin: 0 auto;
  max-width: 960px;
  padding: 0;
  width: 100%;
  position: relative; }
  div.subpage h1 {
    margin-bottom: 0; }
  @media (max-width: 640px) {
    div.subpage h1 {
      line-height: 1em; } }
  @media (max-width: 480px) {
    div.subpage {
      padding: 30px;
      width: 100%;
      box-sizing: border-box; } }

.hero-subpage {
  background: -moz-radial-gradient(80% bottom, #033e5f 15%, #03567e 35%);
  background: -webkit-radial-gradient(80% bottom, #033e5f 15%, #03567e 35%);
  background: radial-gradient(80% bottom, #033e5f 15%, #03567e 35%);
  background-size: 200% 200%;
  -webkit-animation: mad-gradient-bg 5s ease 1 forwards;
  -moz-animation: mad-gradient-bg 5s ease 1 forwards;
  animation: mad-gradient-bg 5s ease 1 forwards;
  -webkit-animation-delay: 1.0s;
  -moz-animation-delay: 1.0s;
  animation-delay: 1.0s;
  -webkit-animation-direction: reverse;
  -moz-animation-direction: reverse;
  animation-direction: reverse;
  padding: 10px 0; }
@-webkit-keyframes mad-gradient-bg {
  0% {
    background-position: 80% bottom; }
  50% {
    background-position: 40% bottom; } }
@-moz-keyframes mad-gradient-bg {
  0% {
    background-position: 80% bottom; }
  50% {
    background-position: 40% bottom; } }
@keyframes mad-gradient-bg {
  0% {
    background-position: 80% bottom; }
  50% {
    background-position: 40% bottom; } }
  .hero-subpage h1 {
    color: #fff;
    font-weight: 900; }
  .hero-subpage h2 {
    color: #fff; }
  .hero-subpage .content {
    padding-top: 10px;
    padding-bottom: 10px; }
    @media (max-width: 560px) {
      .hero-subpage .content .subpage {
        padding: 2px 0; } }


div.subpage > h1.rental-section-title {
  margin: 0px auto 25px;
  /*text-align: center;*/

  color: #1d1d1d; }

@media (min-width: 1030px) {
    div.subpage > h1.rental-section-title {
        text-align: center;
    }
  }

  @media (max-width: 768px) {
    div.subpage > h1.rental-section-title {
      width: 100%;
        text-align: center;
     /* max-width: 360px;*/
      margin: 0 auto 20px; } }

@media (max-width: 640px) {
  .column-container {
    width: 100%;
    margin: 0 auto; } }

.subpages-text {
  /*line-height: 27px;*/
}

@media (min-width: 1030px) {
  .center-on-wide-screens {
    margin: 0 auto 30px;
    text-align: center; } }

h2.donation-sections {
  border-bottom: 1px solid #c4c4c4;
  font-size: 180%;
  padding-bottom: 15px;
  margin-bottom: 15px;
  margin-top: 30px; }

.donation-list {
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  padding: 10px;
  width: 100%;
  max-width: 767px;
  margin: 0 auto; }
  @media (max-width: 560px) {
    .donation-list {
      flex-direction: column;
      justify-content: start; } }

.donation-list.alt {
  background-color: #eeeeee; }

.donation-amount {
  display: inline-block; }

.donation-description {
  display: inline-block; }

ul {
  margin-bottom: 15px; }

ul li {
  color: #a23735;
  margin-bottom: 10px; }
  ul li span {
    color: #1d1d1d; }

.subpage-nav {
  margin-bottom: 30px;
  text-align: center; }
  @media (max-width: 640px) {
    .subpage-nav {
      font-size: 0.8em; } }
  @media (max-width: 480px) {
    .subpage-nav {
      font-size: 1em;
      line-height: 1.75em;
      text-align: left;
      border-bottom: 1px solid #d1d1d1;
      padding-bottom: 30px; } }
  .subpage-nav div {
    display: inline-block;
    padding: 0 15px; }
    @media (max-width: 640px) {
      .subpage-nav div {
        padding: 0 8px; } }
    .subpage-nav div a {
      color: #92b800; }
    @media (max-width: 480px) {
      .subpage-nav div {
        display: block;
        padding: 0; } }

.subpage-nav > div a.subpage-active {
  color: #a23735;
  font-weight: 700;
  text-decoration: none; }

.featured-bio-container {
  display: flex;
  justify-content: space-between;
  margin-bottom: 50px;
  margin-top: 50px;
  max-width: 960px;
  width: 100%; }
  @media (max-width: 930px) {
    .featured-bio-container {
      display: block;
      max-width: 600px;
      margin: 0 auto 50px; } }
  .featured-bio-container .bio-img-container {
    width: 100%;
    max-width: 250px; }
    @media (max-width: 930px) {
      .featured-bio-container .bio-img-container {
        max-width: 200px;
        margin: 0 auto; } }
    .featured-bio-container .bio-img-container .bio-img {
      box-sizing: border-box;
      width: 100%;
      border: 8px solid #ffffff;
      -webkit-box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35);
      -moz-box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35);
      box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35); }
  .featured-bio-container .mark-waterson-img-container {
    width: 100%;
    max-width: 300px;
    padding: 10px;
    box-sizing: border-box; }
    @media (max-width: 930px) {
      .featured-bio-container .mark-waterson-img-container {
        max-width: 250px;
        margin: 0 auto; } }
    @media (max-width: 640px) {
      .featured-bio-container .mark-waterson-img-container {
        max-width: 300px;
        margin: 0 auto; } }
    .featured-bio-container .mark-waterson-img-container .mark-waterson-img {
      box-sizing: border-box;
      width: 100%;
      border: 8px solid #ffffff;
      -webkit-box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35);
      -moz-box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35);
      box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35); }
  .featured-bio-container .featured-bio-description {
    box-sizing: border-box;
    width: 100%;
    padding-left: 40px; }
    @media (max-width: 930px) {
      .featured-bio-container .featured-bio-description {
        padding-left: 0; } }
    .featured-bio-container .featured-bio-description .bio-name {
      font-size: 1.5em;
      font-weight: 700; }
      @media (max-width: 930px) {
        .featured-bio-container .featured-bio-description .bio-name {
          text-align: center; } }
    .featured-bio-container .featured-bio-description .bio-title {
      font-size: 1.2em;
      margin-bottom: 15px; }
      @media (max-width: 930px) {
        .featured-bio-container .featured-bio-description .bio-title {
          text-align: center; } }
    .featured-bio-container .featured-bio-description .cas-btn {
      margin: 20px 0 0 0; }
      @media (max-width: 930px) {
        .featured-bio-container .featured-bio-description .cas-btn {
          text-align: center; } }
    .featured-bio-container .featured-bio-description .bio-description {
      line-height: 24px; }

.bios-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 960px;
  width: 100%; }
  @media (max-width: 930px) {
    .bios-container {
      justify-content: center; } }
  .bios-container .bio-content {
    display: block;
    max-width: 250px;
    margin-bottom: 30px;
    text-align: center;
    width: 100%; }
    @media (max-width: 930px) {
      .bios-container .bio-content {
        max-width: 200px;
        padding: 0 20px; } }
    @media (max-width: 360px) {
      .bios-container .bio-content {
        padding: 0;
        max-width: 100%; } }
    .bios-container .bio-content .bio-img {
      width: 100%;
      box-sizing: border-box;
      border: 8px solid #ffffff;
      -webkit-box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35);
      -moz-box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35);
      box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35); }
    .bios-container .bio-content .bio-name {
      font-weight: 700; }
    .bios-container .bio-content .bio-title {
      font-size: 0.9em; }

.img-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 960px;
  width: 100%; }
  @media (max-width: 768px) {
    .img-row {
      justify-content: center;
      margin: 0 auto;
      max-width: 300px; } }
  .img-row .img-container {
    display: block;
    max-width: 250px;
    margin-bottom: 30px;
    text-align: center;
    width: 100%; }
    @media (max-width: 930px) {
      .img-row .img-container {
        max-width: 200px; } }
    @media (max-width: 768px) {
      .img-row .img-container {
        max-width: 300px; } }
    .img-row .img-container img {
      box-sizing: border-box;
      border: 8px solid #ffffff;
      -webkit-box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35);
      -moz-box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35);
      box-shadow: 1px 0px 5px 1px rgba(0, 0, 0, 0.35);
      width: 100%; }
    .img-row .img-container .img-caption {
      height: 50px;
      line-height: 50px; }

.resource-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 960px;
  width: 100%; }
  .resource-container h2 {
    border-bottom: 1px solid #d2d2d2;
    margin: 30px 0 10px 0;
    padding-bottom: 8px; }
  .resource-container .resource-column {
    width: 100%;
    max-width: 400px; }
    @media (max-width: 930px) {
      .resource-container .resource-column {
        max-width: 320px; } }
    @media (max-width: 768px) {
      .resource-container .resource-column {
        max-width: 100%; } }

.resources-name {
  font-weight: 700; }

.resources-web {
  margin-bottom: 15px; }

.button-container button.donate-btn {
  padding: 15px 0;
  width: 235px;
  background-color: #1b6d85;
  font-size: 1em; }
  @media (max-width: 560px) {
    .button-container button.donate-btn {
      padding: 20px 0;
      width: 100%; } }

.mobile-container {
  width: 100%;
  max-width: 640px;
  box-sizing: border-box;
  padding: 20px 30px;
  margin: 0 auto; }
  .mobile-container p {
    margin: 0 0 10px 0;
    line-height: 1.5em; }

.shipping-flex {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 560px) {
    .shipping-flex {
      display: block;
      text-align: center; } }

div.cas-sublist {
  margin-top: 10px;
  margin-left: 30px; }

div.cas-sublist > div {
  color: #1d1d1d;
  margin-bottom: 10px; }

div.cas-sublist > div:before {
  content: '\2014';
  position: absolute;
  margin-left: -24px; }

h3.faq-list {
  margin-top: 30px; }

div.faq-index {
  border-bottom: #c4c4c4 1px solid;
  margin-bottom: 30px;
  padding-bottom: 20px; }

div.faq-index > ul li {
  margin-bottom: 15px; }

.faq-jump {
  padding-top: 50px; }

ol.cas-ordered-list {
  margin-bottom: 15px;
  margin-left: 30px;
  list-style: numeric; }

ol.cas-ordered-list li {
  color: #a23735;
  margin-bottom: 10px;
  padding-left: 5px; }
  ol.cas-ordered-list li span {
    color: #1d1d1d; }

.cas-container {
  box-sizing: border-box;
  width: 100%;
  max-width: 767px;
  /*margin: 0 auto;*/
  padding: 30px;
  padding-top: 0;
}

.cas-container-form {
    box-sizing: border-box;
    width: 100%;
    max-width: 400px;
    /*margin: 0 auto;*/
    padding: 30px;
    padding-top: 0;
}

.cas-page-header {
 /* color: #9c2620;*/
  font-size: 24px;
  font-weight: 700; }

.cas-section-header {
  color: #013e61;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 8px;
  padding-bottom: 8px; }

.cas-section-instructions {
  color: #013e61;
  font-size: 18px;
  font-weight: 700; }

.cas-questions {
  display: flex;
  justify-content: space-between;
  padding: 5px;
  align-items: center;
  width: 100%;
  box-sizing: border-box; }

.cas-edit-btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004c73+0,013e61+100 */
  background: #004c73;
  /* Old browsers */
  background: -moz-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #004c73 0%, #013e61 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#004c73', endColorstr='#013e61',GradientType=0 );
  /* IE6-9 */
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 10px 20px;
  color: #ffffff;
  font-size: 14px;
  cursor: pointer;
  float: right;
  width: 116px; }

.cas-edit-btn:hover {
  background: #9c2620; }

.cas-back-btn {
  color: #004c73;
  font-size: 14px;
  font-weight: 700;
  line-height: 14px;
  cursor: pointer;
  border: none;
  background: transparent;
  margin-bottom: 20px; }

.cas-back-btn:hover {
  text-decoration: underline; }

.cas-submit-btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004c73+0,013e61+100 */
  background: #004c73;
  /* Old browsers */
  background: -moz-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #004c73 0%, #013e61 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#004c73', endColorstr='#013e61', GradientType=0);
  /* IE6-9 */
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 10px 0;
  color: #ffffff;
  font-size: 14px;
  cursor: pointer;
  width: 200px; }

.cas-submit-btn:hover {
  background: #9c2620; }

.cas-icon {
  max-height: 18px;
  margin-right: 10px; }

.cas-not-complete {
  color: #8f0707;
  font-size: 14px;
  margin-right: 10px;
  text-align: right; }
  @media (max-width: 480px) {
    .cas-not-complete {
      font-size: 12px; } }

.cas-back-icon {
  margin-right: 5px;
  margin-left: -8px;
  max-height: 10px;
  max-width: 10px; }

.cas-back-btn .cas-back-icon:hover {
  text-decoration: underline; }

ul.cas-bulleted-list li {
  color: #1d1d1d; }

.cas-question-description {
  box-sizing: border-box;
  width: 55%; }

.edit-btn-container {
  width: 265px;
  display: flex;
  justify-content: flex-end;
  align-items: center; }

@media (max-width: 480px) {
  .cas-edit-btn.mobile-center {
    float: none;
    margin: 0 auto;
    display: block; } }

.cas-form {
  width: 100%;
  max-width: 400px;
  margin: 0 auto;
  text-align: center; }

.cas-input {
  background: #fefefe !important;
  border: 1px solid #cccccc;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  box-sizing: border-box;
  color: #838383;
  font-size: 1em;
  padding: 10px;
  width: 100%;
  margin: 5px auto 15px; }

.input-label {
  display: block;
  padding-bottom: 5px; }

#cas-form > label > select, #cas-form > label > input {
  background: #efefef;
  border: 1px solid #cccccc;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  box-sizing: border-box;
  color: #838383;
  font-size: 1em;
  padding: 10px;
  width: 100%;
  margin: 0 auto 15px; }

.cas-form-container {
  padding-top: 20px;
  width: 100%;
  text-align: center; }

.cas-submit-app-btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004c73+0,013e61+100 */
  background: #004c73;
  /* Old browsers */
  background: -moz-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #004c73 0%, #013e61 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#004c73', endColorstr='#013e61', GradientType=0);
  /* IE6-9 */
  color: #ffffff;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 15px 0;
  font-size: 14px;
  cursor: pointer;
  width: 240px; }
  .cas-submit-app-btn:hover {
    background: #9c2620; }

.cas-abandon-app-btn {
  background: none;
  color: #888888;
  border: none;
  text-decoration: underline;
  font-size: 14px;
  cursor: pointer;
  margin-top: 30px; }
  .cas-abandon-app-btn:hover {
    color: #333333; }

.loan-summary-header {
  box-sizing: border-box;
  border-bottom: 3px #03567e solid;
  font-size: 90%;
  font-weight: 700;
  margin-bottom: 15px;
  padding-bottom: 8px;
  text-transform: uppercase; }

.loan-summary-content {
  align-items: start;
  display: flex;
  justify-content: space-between;
  margin-bottom: 15px; }
  @media (max-width: 640px) {
    .loan-summary-content {
      margin-bottom: 8px;
      font-size: 16px; } }
  .loan-summary-content .loan-summary-item {
    width: 250px;
    padding-right: 15px;
    margin-left: 10px;
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .loan-summary-content .loan-summary-item {
        width: 170px; } }
    @media (max-width: 640px) {
      .loan-summary-content .loan-summary-item {
        font-size: 14px; } }
  .loan-summary-content .loan-status-requested {
    color: #888888;
    font-size: 0.9em; }
  .loan-summary-content .loan-summary-status {
    width: 200px;
    padding-right: 15px;
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .loan-summary-content .loan-summary-status {
        padding-right: 10px;
        width: 150px; } }
  .loan-summary-content .loan-summary-price {
    width: 100px;
    padding-right: 15px;
    box-sizing: border-box;
    text-align: right; }
    @media (max-width: 640px) {
      .loan-summary-content .loan-summary-price {
        font-size: 14px; } }
  .loan-summary-content .loan-summary-blank {
    width: 140px;
    text-align: right; }

.cas-loan-summary-btn {
  background-color: transparent;
  border: none;
  color: #888888;
  font-size: 14px;
  cursor: pointer;
  text-decoration: underline;
  text-align: right;
  margin-right: 5px; }
  @media (max-width: 640px) {
    .cas-loan-summary-btn {
      font-size: 12px; } }

.cas-loan-summary-btn:hover {
  color: #1d1d1d; }

@media (max-width: 640px) {
  .mobile-remove {
    display: none; } }

.service-area-cities > div {
  margin-bottom: 8px; }

.schedule-appt-notification {
  color: #9c2620;
  border: 2px solid #9c2620;
  border-radius: 5px;
  font-size: 1em;
  padding: 20px;
  box-sizing: border-box;
  margin-bottom: 20px;
  text-align: center; }

@media (max-width: 640px) {
  .loan-summary-content.reserved-slot {
    font-size: 14px; } }

#cas-form > input.error-box,
#cas-form > textarea.error-box,
#donation-form > input.error-box,
label.error-box > input {
  border: 2px dashed #cd3129;
  box-sizing: border-box;
  -moz-box-sizing: border-box; }

.error-message {
  color: #cd3129;
  font-size: 14px;
  font-weight: 700;
  float: right;
  margin-right: 5px;
  margin-top: -3px;
  padding: 3px 0; }
  @media (max-width: 360px) {
    .error-message {
      float: none;
      display: block;
      padding: 5px 0 0; } }

.error-capture-message {
  background-color: #cd3129;
  color: #ffffff;
  display: block;
  font-size: 14px;
  font-weight: 700;
  margin: 10px auto;
  padding: 3px 0;
  max-width: 400px;
  width: 100%; }

.error-icon {
  display: inline-block;
  width: 18px;
  height: auto;
  margin: 0 2px -2px 2px; }

ul#error-page-list li {
  color: #1d1d1d;
  line-height: 1.5em; }

.error-page-notes-container {
  width: 100%;
  max-width: 450px;
  margin: 0 auto; }

.error-page-notes {
  background: #f8f8f8;
  border: 1px solid #e8e8e8;
  box-sizing: border-box;
  margin: 0 auto 30px;
  padding: 20px; }

.product_pod_container {
  display: flex;
  box-sizing: border-box;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0 0 30px;
  width: 100%; }
  .product_pod_container .product_category_title {
    color: #333333;
    font-size: 2em;
    margin-bottom: 20px;
    margin-top: 30px;
    text-align: left; }

.product_title {
  background: #b8b8b8;
  box-sizing: border-box;
  color: #555555;
  font-size: 24px;
  font-weight: 400;
  padding: 9px 30px;
  text-align: left;
  width: 100%; }
  @media (max-width: 560px) {
    .product_title {
      padding: 5px 10px;
      font-size: 18px; } }

.product_pod {
  box-sizing: border-box;
  display: flex;
  font-size: 16px;
  justify-content: space-between;
  width: 100%;
  margin: 15px 0 35px 0; }
  @media (max-width: 560px) {
    .product_pod {
      display: block;
      position: relative; } }
  .product_pod .image_container {
    width: 30%; }
    @media (max-width: 768px) {
      .product_pod .image_container {
        width: 40%; } }
    @media (max-width: 560px) {
      .product_pod .image_container {
        width: 100%;
        margin: 10px auto 20px;
        text-align: center; } }
    .product_pod .image_container .thumbnail {
      width: 100%;
      border: 1px solid #e8e8e8;
      -webkit-border-radius: 8px;
      -moz-border-radius: 8px;
      border-radius: 8px; }
      @media (max-width: 560px) {
        .product_pod .image_container .thumbnail {
          max-width: 240px; } }
  .product_pod .product_desc_spec_block {
    width: 65%;
    display: flex;
    justify-content: space-between; }
    @media (max-width: 768px) {
      .product_pod .product_desc_spec_block {
        width: 55%;
        display: block; } }
    @media (max-width: 560px) {
      .product_pod .product_desc_spec_block {
        width: 100%; } }
    .product_pod .product_desc_spec_block .product_desc {
      width: 47%; }
      @media (max-width: 768px) {
        .product_pod .product_desc_spec_block .product_desc {
          width: 100%; } }
      .product_pod .product_desc_spec_block .product_desc p > span {
        font-size: 16px !important; }
      .product_pod .product_desc_spec_block .product_desc ul {
        margin-left: 15px; }
        .product_pod .product_desc_spec_block .product_desc ul li {
          background: transparent !important;
          color: #333333; }
          .product_pod .product_desc_spec_block .product_desc ul li span {
            font-size: 16px !important;
            line-height: 1.25em !important; }
    .product_pod .product_desc_spec_block .product_spec {
      width: 47%; }
      @media (max-width: 768px) {
        .product_pod .product_desc_spec_block .product_spec {
          width: 100%; } }
      .product_pod .product_desc_spec_block .product_spec table {
        width: 100%; }
        .product_pod .product_desc_spec_block .product_spec table tr:nth-child(even) {
          background-color: #f2f2f2; }
        .product_pod .product_desc_spec_block .product_spec table tbody > tr td {
          padding: 5px 10px; }
        .product_pod .product_desc_spec_block .product_spec table tbody > tr td:nth-child(2) {
          text-align: right; }

.accordion {
  background: #254151;
  border: none;
  border-bottom: 1px solid #c8c8c8;
  color: #ffffff;
  cursor: pointer;
  font-size: 1.5em;
  text-align: left;
  outline: none;
  padding: 14px 20px;
  transition: 0.4s;
  width: 100%; }
  @media (max-width: 560px) {
    .accordion {
      font-size: 1.4em;
      padding: 5px 10px; } }
  .accordion .category-title {
    width: 60%;
    display: inline-block;
    text-transform: uppercase;
    font-weight: 900;
    font-size: 0.8em; }
    @media (max-width: 560px) {
      .accordion .category-title {
        margin-bottom: 3px;
        width: 100%;
        max-width: 300px; } }

.accordion:hover {
  background-color: #92b800;
  color: #ffffff; }

.active-product {
  background-color: #92b800;
  color: #ffffff; }

.panel {
  padding: 0;
  background-color: white;
  border-bottom: 2px solid #f1f1f1;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease-in-out;
  width: 100%; }

.accordion:after {
  color: #ffffff;
  content: 'View Items';
  /* Unicode character for "plus" sign (+) */
  background: url("../img/cas-arrow-white-right.405250b8f73a.png") no-repeat center right;
  background-size: contain;
  height: 14px;
  font-size: 0.5em;
  font-weight: 400;
  float: right;
  line-height: 12px;
  padding-right: 16px;
  margin-top: 6px; }
  @media (max-width: 560px) {
    .accordion:after {
      font-size: 0.6em;
      height: 10px;
      line-height: 10px;
      float: right;
      padding-right: 12px;
      margin-top: 10px; } }

.accordion:hover:after {
  color: #ffffff;
  background: url("../img/cas-arrow-white-right.405250b8f73a.png") no-repeat center right;
  background-size: contain;
  height: 14px;
  font-size: 0.5em;
  font-weight: 400;
  float: right;
  line-height: 12px;
  padding-right: 16px;
  margin-top: 6px; }
  @media (max-width: 560px) {
    .accordion:hover:after {
      font-size: 0.6em;
      height: 10px;
      line-height: 10px;
      float: right;
      padding-right: 12px;
      margin-top: 10px; } }

.active-product:hover:after {
  content: 'Hide Items';
  /* Unicode character for "minus" sign (-) */
  color: #ffffff;
  background: url("../img/cas-arrow-white-down.ecbb1952d05f.png") no-repeat center right;
  background-size: contain;
  height: 14px;
  font-size: 0.5em;
  font-weight: 400;
  float: right;
  line-height: 12px;
  padding-right: 18px;
  margin-top: 6px; }
  @media (max-width: 560px) {
    .active-product:hover:after {
      font-size: 0.6em;
      height: 10px;
      line-height: 10px;
      float: right;
      padding-right: 14px;
      margin-top: 10px; } }

.active-product:after {
  content: 'Hide Items';
  /* Unicode character for "minus" sign (-) */
  color: #ffffff;
  background: url("../img/cas-arrow-white-down.ecbb1952d05f.png") no-repeat center right;
  background-size: contain;
  height: 14px;
  font-size: 0.5em;
  font-weight: 400;
  float: right;
  line-height: 12px;
  padding-right: 18px;
  margin-top: 6px; }
  @media (max-width: 560px) {
    .active-product:after {
      font-size: 0.6em;
      height: 10px;
      line-height: 10px;
      float: right;
      padding-right: 14px;
      margin-top: 10px; } }

.add-to-cart-btn {
  background-color: #254151;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 10px 0;
  color: #ffffff;
  font-size: 14px;
  cursor: pointer;
  width: 100px;
  box-sizing: border-box; }
  @media (max-width: 640px) {
    .add-to-cart-btn {
      font-size: 12px;
      padding: 5px 0;
      width: 80px;
      margin: 0; } }
  @media (max-width: 560px) {
    .add-to-cart-btn {
      width: 70px; } }

.add-to-cart-btn:hover {
  background: #92b800; }

.product_price_container {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  box-sizing: border-box; }
  .product_price_container .product_price {
    margin: 2px 0 0 0;
    line-height: 1em;
    text-align: right; }
    .product_price_container .product_price .price_color {
      display: block;
      color: #9c2620;
      font-size: 1.2em;
      font-weight: 400; }
    .product_price_container .product_price .availability {
      margin-top: 2px; }

a#cart-info {
  text-decoration: none; }

.cas-cart-container {
  display: flex;
  justify-content: space-between;
  align-content: center;
  width: 85px; }
  .cas-cart-container .cas-cart-icon {
    background: url("../img/shopping-cart-icon.3100ad176983.png") no-repeat center center;
    background-size: contain;
    color: #ffff33;
    height: 30px;
    width: 50px;
    text-align: center;
    line-height: 30px; }
    .cas-cart-container .cas-cart-icon .cas-cart-qty {
      font-size: 14px;
      line-height: 14px;
      width: 24px;
      float: right;
      margin-right: 7px; }
  .cas-cart-container .cas-cart-description {
    line-height: 30px;
    text-align: center;
    color: #ffffff;
    text-decoration: none; }

.basket-messaging-container {
  background-color: #46b8da;
  padding: 20px; }

/*.user-messages-container {*/
/*  box-sizing: border-box;*/
/*  display: flex;*/
/*  flex-direction: column;*/
/*  align-items: center;*/
/*  justify-content: center;*/
/*  margin: 2px auto 10px;*/
/*  width: 100%;*/
/*  padding: 30px;*/
/*  padding-bottom: 0px;}*/

/*.user-messages {*/
/*  box-sizing: border-box;*/
/*  color: #a23735;*/
/*  font-size: 1.0em;*/
/*  line-height: 1.0em;*/
/*  width: 100%;*/
/*  margin-bottom: 10px; }*/

/*
.user-messages:last-of-type {
      box-sizing:border-box;
      padding:0 20px 30px;
    }
*/
.empty-basket-container {
  background-color: #eeeeee;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  box-sizing: border-box;
  color: #03567e;
  padding: 30px;
  text-align: center;
  margin: 30px auto;
  max-width: 350px;
  width: 100%; }

.basket_summary {
  box-sizing: border-box;
  margin: 0 auto;
  max-width: 640px;
  padding: 0 30px;
  width: 100%; }

@media (max-width: 560px) {
  .basket-title > h2 {
    text-align: center; } }

#product-titles-container {
  display: flex;
  padding-bottom: 8px; }
  @media (max-width: 560px) {
    #product-titles-container {
      display: none; } }

.basket-items {
  border-bottom: 1px solid #c4c4c4;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row;
  margin-bottom: 0;
  padding-bottom: 7px;
  padding-top: 7px;
  width: 100%; }

.highlight-most-recently-edited-item {
  background-color: #f8f8f8;
  animation-name: highlight-most-recently-edited-item;
  animation-duration: 5s;
  animation-iteration-count: 1; }

@keyframes highlight-most-recently-edited-item {
  10% {
    background-color: #92b800; }
  20% {
    background-color: #bfe335; }
  30% {
    background-color: #92b800; }
  40% {
    background-color: #bfe335; }
  50% {
    background-color: #92b800; }
  80% {
    background-color: #92b800; }
  100% {
    background-color: #f8f8f8; } }
.product-img-description-container {
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  width: 100%;
  max-width: 200px;
  padding-left: 10px;
  box-sizing: border-box; }
  @media (max-width: 560px) {
    .product-img-description-container {
      max-width: 150px; } }

.basket_item_product_img {
  text-align: center;
  margin: 0 auto;
  width: 100px; }
  @media (max-width: 560px) {
    .basket_item_product_img {
      text-align: center;
      width: 150px; }
      .basket_item_product_img img.thumbnail {
        margin-top: 20px;
        width: 150px; } }

.basket_item_product_description {
  width: 270px; }
  @media (max-width: 560px) {
    .basket_item_product_description {
      width: 150px; } }
  .basket_item_product_description .product_title {
    background: transparent;
    font-size: 18px;
    padding: 0;
    line-height: 18px; }
    @media (max-width: 560px) {
      .basket_item_product_description .product_title {
        text-align: left;
        margin-bottom: 5px;
        font-size: 16px;
        line-height: 16px; } }

.cart-mobile-title {
  display: none; }
  @media (max-width: 560px) {
    .cart-mobile-title {
      /*box-sizing: border-box;
      display:block;
      padding:5px 5px 5px 10px;
      text-align:left;
      width:100px;*/ } }

.basket_item_product_qty {
  box-sizing: border-box;
  font-size: 14px;
  text-align: center;
  width: 60px; }
  .basket_item_product_qty .checkout-quantity {
    margin: 0 auto;
    width: 40px; }
    @media (max-width: 560px) {
      .basket_item_product_qty .checkout-quantity {
        width: 100px; } }

.basket_item_product_tax {
  font-size: 14px;
  text-align: center;
  width: 75px; }
  .basket_item_product_tax .basket_item_product_tax_value {
    width: 100%; }

.basket_item_product_price {
  font-size: 14px;
  text-align: right;
  width: 40px; }
  .basket_item_product_price .basket_item_product_price_value {
    width: 100%; }

.basket_item_remove_product {
  font-size: 14px;
  text-align: center;
  width: 80px; }
  @media (max-width: 560px) {
    .basket_item_remove_product {
      width: 70px; } }

.checkout-btn-container {
  display: flex;
  justify-content: center;
  width: 100%; }

.checkout-btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004c73+0,013e61+100 */
  background: #004c73;
  /* Old browsers */
  background: -moz-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #004c73 0%, #013e61 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#004c73', endColorstr='#013e61', GradientType=0);
  /* IE6-9 */
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 10px 20px;
  color: #ffffff;
  font-size: 14px;
  cursor: pointer;
  box-sizing: border-box;
  text-decoration: none;
  text-align: center; }

.checkout-btn:hover {
  background: #9c2620; }

.checkout-secondary-btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004c73+0,013e61+100 */
  background: #d8d8d8;
  /* Old browsers */
  background: -moz-linear-gradient(top, #d8d8d8 0%, #cccccc 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #d8d8d8 0%, #cccccc 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #d8d8d8 0%, #cccccc 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d8d8d8', endColorstr='#cccccc', GradientType=0);
  /* IE6-9 */
  color: #888888;
  margin-right: 15px; }

.checkout-secondary-btn:hover {
  color: #ffffff; }

.place-order-btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004c73+0,013e61+100 */
  background: #004c73;
  /* Old browsers */
  background: -moz-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #004c73 0%, #013e61 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#004c73', endColorstr='#013e61', GradientType=0);
  /* IE6-9 */
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 15px 40px;
  color: #ffffff;
  font-size: 16px;
  cursor: pointer;
  box-sizing: border-box;
  text-decoration: none;
  text-align: center;
  margin-top: 20px;
  width: 200px; }

.place-order-btn:hover {
  background: #9c2620; }

.edit-order-btn-container {
  display: flex;
  justify-content: flex-end;
  width: 100%; }
  @media (max-width: 560px) {
    .edit-order-btn-container {
      justify-content: center; } }

.edit-order-btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004c73+0,013e61+100 */
  background: #d8d8d8;
  /* Old browsers */
  background: -moz-linear-gradient(top, #d8d8d8 0%, #cccccc 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #d8d8d8 0%, #cccccc 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #d8d8d8 0%, #cccccc 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d8d8d8', endColorstr='#cccccc', GradientType=0);
  /* IE6-9 */
  color: #888888;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 10px 15px;
  font-size: 16px;
  cursor: pointer;
  box-sizing: border-box;
  text-decoration: none;
  text-align: center;
  margin-top: 10px;
  width: 200px; }

.edit-order-btn:hover {
  background: #9c2620;
  color: #ffffff; }

.remove-btn {
  padding: 3px 5px;
  margin: 0 10px 0 0;
  box-sizing: border-box;
  display: block; }
  @media (max-width: 560px) {
    .remove-btn {
      padding: 4px 5px;
      font-size: 12px;
      line-height: 12px; } }

#basket_totals > .table {
  margin: 0 auto;
  max-width: 560px;
  width: 100%;
  box-sizing: border-box;
  border-top: 1px solid #cccccc;
  border-spacing: unset;
  border-collapse: unset;
  padding-top: 5px; }
  @media (max-width: 560px) {
    #basket_totals > .table {
      padding: 5px 10px 0; } }

#order_content_totals > .table {
  margin: 0 20px 0 auto;
  width: 200px; }
  @media (max-width: 560px) {
    #order_content_totals > .table {
      width: 200px;
      margin: 0 auto; } }

.place-order-form-container {
  text-align: right;
  margin-right: 20px; }
  @media (max-width: 560px) {
    .place-order-form-container {
      text-align: center;
      margin-right: auto; } }

.payment-container {
  width: 100%;
  max-width: 480px;
  margin: 0px 30px 40px 30px;
  padding: 0 30px;
  box-sizing: border-box; }
  .payment-container .payment-line-item {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
    width: 100%; }
  .payment-container .total {
    border-top: 1px solid #c4c4c4;
    padding-top: 20px;
    font-weight: 700; }

#payment-form {
  text-align: center;
    margin: 30px 30px 10px 30px;
  width: 100%;
  max-width: 480px;
  padding: 0 30px;
  box-sizing: border-box; }

#card-element {
  background-color: #f8f8f8;
  border: 1px solid #c4c4c4;
  padding: 15px; }

input.__PrivateStripeElement-input {
  color: #1d1d1d; }

.submit-payment-btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004c73+0,013e61+100 */
  background: #004c73;
  /* Old browsers */
  background: -moz-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #004c73 0%, #013e61 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#004c73', endColorstr='#013e61', GradientType=0);
  /* IE6-9 */
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 15px 40px;
  color: #ffffff;
  font-size: 16px;
  cursor: pointer;
  box-sizing: border-box;
  text-decoration: none;
  text-align: center;
  margin: 40px auto 20px;
  width: 200px; }

.submit-payment-btn:hover {
  background: #9c2620; }

.total > h3 {
  font-size: 18px;
  font-weight: 700; }

.cart-bg {
  background: #f8f8f8;
  padding-top: 30px;
  border: 2px solid #e2e2e2;
  max-width: 640px;
  margin: 0 auto;
  border-radius: 5px;
  box-sizing: border-box; }
  @media (max-width: 640px) {
    .cart-bg {
      max-width: 100%;
      border-top: 2px solid #e2e2e2;
      border-bottom: 2px solid #e2e2e2;
      border-left: none;
      border-right: none; } }

 /*
    .mobile-price-qty-remove-container {
     width:50%;
      display: flex;
        justify-content: flex-end;
        align-items: center;
      @include screen-sm {
        width:100%;
        display: flex;
        justify-content: space-between;
        align-items: center;

      }
    }
    .mobile-price-qty-container {
      width: 145px;
        display: flex;
        justify-content: space-between;
        align-items:center;
        margin-right:20px;
      @include screen-sm {
        width: 110px;
        display: flex;
        justify-content: space-between;
        align-items:center;
        margin-left:10px;
        margin-right:0;

      }
    }
    .price_color.align-right.mobile-align-left {
      @include screen-sm {
        text-align:left!important;
      }
    }
    .desktop-cart-titles {
       width: 100%;
      max-width:180px;
        display: flex;
        justify-content: space-between;
        align-items:center;
      padding:0;
      margin-right:60px;
      .basket_item_product_price {
        width:100%;
      }
    }
  */
.input-group > select.form-control.cart-pulldown {
  min-width: 44px;
  max-width: 60px; }
  @media (max-width: 560px) {
    .input-group > select.form-control.cart-pulldown {
      max-width: 44px;
      padding: 0; } }

.subpage.mobile-padding {
  padding-top: 0; }

.basket_messages_container {
  background-color: #92b800;
  color: #ffffff;
  padding: 15px;
  box-sizing: border-box;
  width: 100%; }
  @media (max-width: 560px) {
    .basket_messages_container {
      margin-bottom: 10px; } }

.quantity-label-select {
  font-size: 16px;
  display: inline-block;
  margin-left: 15px;
  text-align: left;
  width: 33px; }
  @media (max-width: 640px) {
    .quantity-label-select {
      font-size: 12px;
      margin-left: 0;
      width: 25px; } }

.quantity-select {
  font: 16px Lato;
  margin-right: 10px;
  min-width: 50px; }
  @media (max-width: 640px) {
    .quantity-select {
      font: 12px Lato;
      min-width: 40px;
      margin-right: 5px; } }

.quantity-label {
  font-size: 16px;
  display: inline-block;
  text-align: left;
  width: 88px;
  margin-right: 10px; }
  @media (max-width: 640px) {
    .quantity-label {
      font-size: 12px;
      margin-right: 5px;
      width: 69px; } }

.quantity-number {
  box-sizing: border-box;
  display: inline-block;
  padding-left: 14px;
  width: 44px; }
  @media (max-width: 640px) {
    .quantity-number {
      width: 30px;
      padding-left: 12px; } }

.availability {
  font-size: 18px;
  line-height: 1em;
  margin-bottom: 4px; }
  @media (max-width: 640px) {
    .availability {
      font-size: 14px; } }

.account-overview-container {
  box-sizing: border-box;
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
  padding: 30px; }
  @media (max-width: 768px) {
    .account-overview-container {
      max-width: 400px; } }

.loan-status-subheader {
  font-size: 125%;
  font-weight: 700;
  padding-bottom: 8px;
  border-bottom: 1px #c4c4c4 solid;
  margin-bottom: 15px; }

.loan-status-header {
  box-sizing: border-box;
  border-bottom: 3px #03567e solid;
  font-size: 90%;
  font-weight: 700;
  margin-bottom: 15px;
  padding-bottom: 8px;
  text-transform: uppercase; }

@media (max-width: 768px) {
  .loan-status-content.loan-status-header {
    display: none; } }

.loan-status-content {
  align-items: start;
  display: flex;
  justify-content: space-between;
  margin-bottom: 15px; }
  @media (max-width: 768px) {
    .loan-status-content {
      display: block;
      align-items: normal;
      margin-bottom: 20px;
      border: 1px solid #c4c4c4;
      padding: 20px;
      box-sizing: border-box;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      border-radius: 5px; } }
  .loan-status-content .loan-status-item {
    width: 250px;
    padding-right: 15px;
    box-sizing: border-box; }
    .loan-status-content .loan-status-item .loan-status-requested {
      color: #888888;
      font-size: 0.9em; }
    @media (max-width: 768px) {
      .loan-status-content .loan-status-item {
        display: flex;
        justify-content: start;
        align-items: start;
        width: 100%;
        padding-right: 0; } }
  .loan-status-content .loan-status-status {
    width: 175px;
    padding-right: 15px;
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .loan-status-content .loan-status-status {
        display: flex;
        justify-content: start;
        align-items: start;
        width: 100%;
        padding-right: 0;
        padding-left: 0; } }
  .loan-status-content .loan-status-amount {
    width: 90px;
    padding-right: 15px;
    box-sizing: border-box;
    text-align: right; }
    @media (max-width: 768px) {
      .loan-status-content .loan-status-amount {
        display: flex;
        justify-content: start;
        align-items: start;
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        text-align: left; } }
  .loan-status-content .loan-status-blank {
    width: 140px; }
    @media (max-width: 768px) {
      .loan-status-content .loan-status-blank {
        width: 100%;
        padding-right: 0; } }

.loan-status-mobile-header {
  display: none; }
  @media (max-width: 768px) {
    .loan-status-mobile-header {
      display: block;
      font-size: 80%;
      font-weight: 700;
      text-transform: uppercase;
      width: 45%;
      align-items: start;
      margin-bottom: 8px;
      margin-top: 2px; } }

@media (max-width: 768px) {
  .loan-status-mobile-description {
    width: 100%;
    margin-bottom: 8px; } }

.cas-loan-status-btn {
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#004c73+0,013e61+100 */
  background: #004c73;
  /* Old browsers */
  background: -moz-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #004c73 0%, #013e61 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, #004c73 0%, #013e61 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#004c73', endColorstr='#013e61', GradientType=0);
  /* IE6-9 */
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  padding: 10px;
  color: #ffffff;
  font-size: 14px;
  cursor: pointer;
  width: 140px;
  box-sizing: border-box; }
  @media (max-width: 768px) {
    .cas-loan-status-btn {
      padding: 20px 10px;
      margin-top: 15px;
      width: 100%; } }

.cas-loan-status-btn:hover {
  background: #9c2620; }

.account-history-header {
  box-sizing: border-box;
  border-bottom: 3px #03567e solid;
  font-size: 90%;
  font-weight: 700;
  margin-bottom: 15px;
  padding-bottom: 8px;
  text-transform: uppercase; }

@media (max-width: 768px) {
  .account-history-content.account-history-header {
    display: none; } }

.account-history-content {
  align-items: start;
  display: flex;
  justify-content: space-between;
  margin-bottom: 15px; }
  @media (max-width: 768px) {
    .account-history-content {
      display: block;
      align-items: normal;
      margin-bottom: 20px;
      border: 1px solid #c4c4c4;
      padding: 20px;
      box-sizing: border-box;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      border-radius: 5px; } }
  .account-history-content .account-history-date {
    width: 100px;
    padding-right: 15px;
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .account-history-content .account-history-date {
        width: 100%;
        padding-right: 0;
        margin-bottom: 8px; } }
  .account-history-content .account-history-items {
    width: 400px; }
    @media (max-width: 768px) {
      .account-history-content .account-history-items {
        width: 100%;
        padding-right: 0;
        margin-bottom: 8px; } }
  .account-history-content .account-history-order-number {
    width: 80px;
    box-sizing: border-box; }
    @media (max-width: 768px) {
      .account-history-content .account-history-order-number {
        display: flex;
        justify-content: start;
        width: 100%;
        padding-right: 0; } }
  .account-history-content .account-history-client, .account-history-content .account-history-status {
    color: #888888;
    display: inline-block;
    margin-right: 8px; }
    @media (max-width: 768px) {
      .account-history-content .account-history-client, .account-history-content .account-history-status {
        display: block;
        margin-right: 0; } }

.account-history-mobile-header {
  display: none; }
  @media (max-width: 768px) {
    .account-history-mobile-header {
      display: block;
      text-transform: uppercase;
      align-items: start;
      margin-right: 5px; } }

h2.section-header {
  color: #1D1F20;
  font-weight: 900;
  margin-top: 30px;
  margin-bottom: 20px;
  text-transform: uppercase;
  text-align: center; }

h2.caltechy-footer-title {
  text-transform: uppercase;
  font-weight: 900;
  font-size: 1.3em;
  color: #254151; }

section.footer.caltechy-footer {
  background: #e8e8e8;
  color: #1d1d1d; }
  section.footer.caltechy-footer p {
    text-align: left;
    padding-bottom: 8px;
    font-weight: 300;
    font-size: 14px;
    letter-spacing: 0.05em; }
    section.footer.caltechy-footer p a {
      color: #1d1d1d;
      text-decoration: underline; }

.caltechy-date-range-container {
  display: flex;
  justify-content: center;
  width: 100%; }
  @media (max-width: 640px) {
    .caltechy-date-range-container {
      flex-direction: column;
      align-items: center; } }

.caltechy-date-range {
  padding: 0 20px;
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 0px;
  text-align: center; }
  @media (max-width: 640px) {
    .caltechy-date-range {
      display: flex; } }

div.caltechy-date-range > label {
  font-weight: 700;
  font-size: 120%; }
  @media (max-width: 640px) {
    div.caltechy-date-range > label {
      width: 65px;
      text-align: right;
      align-items: center;
      justify-content: center;
      margin-top: 17px; } }

div.caltechy-date-range > input {
  margin: 10px auto 20px;
  width: 100%;
  max-width: 400px;
  box-sizing: border-box;
  padding: 15px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: none;
  box-shadow: 0 3px 3px #dcdcdc;
  text-align: center;
  font-size: 18px;
  color: #8f0707; }

#caltechy-product-headers {
  border-bottom: 2px solid #1d1d1d;
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  font-weight: 700;
  justify-content: space-between;
  margin: 0 auto;
  padding: 10px;
  width: 94%;
  align-items: flex-end; }
  @media (max-width: 640px) {
    #caltechy-product-headers {
      font-size: 14px; } }
  @media (max-width: 560px) {
    #caltechy-product-headers {
      width: 96%; } }
  #caltechy-product-headers .col-title-01 {
    width: 100%;
    max-width: 200px; }
    @media (max-width: 640px) {
      #caltechy-product-headers .col-title-01 {
        max-width: 140px; } }
    @media (max-width: 560px) {
      #caltechy-product-headers .col-title-01 {
        max-width: 120px; } }
  #caltechy-product-headers .col-title-02 {
    width: 80px;
    text-align: right; }
    @media (max-width: 640px) {
      #caltechy-product-headers .col-title-02 {
        width: 60px; } }
  #caltechy-product-headers .col-title-03 {
    width: 220px;
    text-align: left;
    padding-left: 30px; }
    @media (max-width: 640px) {
      #caltechy-product-headers .col-title-03 {
        width: 170px; } }
    @media (max-width: 560px) {
      #caltechy-product-headers .col-title-03 {
        width: 160px; } }

#caltechy-product-container {
  box-sizing: border-box;
  display: grid;
  grid-template-columns: 2fr 1fr 1fr;
  font-weight: 400;
  justify-content: space-between;
  margin: 0 auto 2px;
  padding: 5px 10px;
  width: 94%; }
  @media (max-width: 560px) {
    #caltechy-product-container {
      width: 96%; } }
  #caltechy-product-container .product-pdf-div {
    font-size: 14px;
    margin: 6px 0 5px 15px;
    display: block;
    grid-column: span 3; }
  #caltechy-product-container .more-info-link {
    text-decoration: none;
    white-space: nowrap;
    display: inline-block; }
  #caltechy-product-container .more-info-arrow {
    color: #494949;
    display: inline-block;
    transform: translateX(2px) translateY(1px); }
  #caltechy-product-container .product-more-info {
    font-size: 14px;
    margin: 8px 0 0px -6px;
    border: 1pt solid grey;
    padding: 6px;
    display: none;
    grid-column: span 3;
    border-radius: 4px;
    background-color: #ffffe2; }
  #caltechy-product-container .col-description-01 {
    width: 100%;
    max-width: 400px; }
    @media (max-width: 640px) {
      #caltechy-product-container .col-description-01 {
        font-size: 14px;
        max-width: 140px; } }
    @media (max-width: 560px) {
      #caltechy-product-container .col-description-01 {
        max-width: 120px; } }
  #caltechy-product-container .col-description-02 {
    width: 80px;
    text-align: right;
    padding-right: 5px; }
    @media (max-width: 640px) {
      #caltechy-product-container .col-description-02 {
        font-size: 14px;
        width: 60px; } }
    @media (max-width: 560px) {
      #caltechy-product-container .col-description-02 {
        font-size: 12px; } }
  #caltechy-product-container .col-description-03 {
    width: 220px; }
    @media (max-width: 640px) {
      #caltechy-product-container .col-description-03 {
        width: 170px; } }
    @media (max-width: 560px) {
      #caltechy-product-container .col-description-03 {
        width: 160px; } }

.col-description-02-mobile {
  display: none; }

@media (max-width: 1300px) {
  .qty-mobile-margins {
    margin-bottom: 5px; } }

#caltechy-product-container:nth-child(odd) {
  background-color: #f2f2f2; }

#caltechy-product-container:last-child {
  margin-bottom: 20px; }

/* Waiver Forms */
#caltechy-waiver-container {
  box-sizing: border-box;
  padding: 0 30px 15px;
  width: 100%;
  max-width: 900px;
  margin: 0 auto; }
  #caltechy-waiver-container h2 {
    font-size: 1.2em;
    font-weight: 700; }

#caltechy-waiver-container ul li {
  color: #1d1d1d; }

#caltechy-waiver-container ol {
  list-style: decimal;
  padding-left: 20px; }

#caltechy-waiver-container ol li {
  margin-bottom: 15px !important; }

#caltechy-waiver-container ol li ol {
  margin-top: 5px !important;
  list-style: lower-alpha;
  padding-left: 30px; }

#caltechy-waiver-container ol li ol li {
  margin-bottom: 5px !important; }

#caltechy-waiver-container > ol li .replacement-cost-container {
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 5px; }
  @media (max-width: 768px) {
    #caltechy-waiver-container > ol li .replacement-cost-container {
      display: block; } }

#caltechy-waiver-container > ol li .replacement-cost-container div {
  width: 45%;
  margin-top: 5px; }
  @media (max-width: 768px) {
    #caltechy-waiver-container > ol li .replacement-cost-container div #caltechy-waiver-container > ol li .replacement-cost-container div {
      width: 100%;
      margin-top: 5px; } }

.sign-doc-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 640px;
  padding: 30px;
  box-sizing: border-box;
  margin: 0 auto;
  border: 2px solid #dddddd;
  background-color: #f8f8f8; }
  @media (max-width: 768px) {
    .sign-doc-container {
      display: block; } }

.read-agreed-container {
  display: flex; }
  @media (max-width: 768px) {
    .read-agreed-container {
      max-width: 250px;
      margin: 0 auto 20px; } }

.initials {
  text-align: left; }
  @media (max-width: 768px) {
    .initials {
      max-width: 155px;
      margin: 0 auto 20px; } }

.reserved-slot {
  width: 100%;
  color: #1d1d1d;
  font-size: 16px;
  font-weight: 700;
  background-color: #e8e8e8;
  text-align: left;
  display: block;
  padding: 10px;
  box-sizing: border-box;
  margin-bottom: 5px; }

.available-equipment {
  padding: 15px 30px;
  text-align: center;
  color: #1d1d1d;
  background: #e8e8e8;
  font-size: 20px; }
  @media (max-width: 640px) {
    .available-equipment {
      font-size: 18px; } }
  @media (max-width: 560px) {
    .available-equipment {
      font-size: 14px; } }

.equipment-accordion-container {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 0 30px;
  box-sizing: border-box; }
  @media (max-width: 640px) {
    .equipment-accordion-container {
      padding: 0; } }

.product-catalog-link:hover {
  filter: brightness(50%); }

/*# sourceMappingURL=caltechy-main.css.map  */
