/* ! normalize.css v1.0.0 | MIT License | git.io/normalize */
 
/* ==========================================================================
HTML5 display definitions
========================================================================== */
 
/* * Corrects `block` display not defined in IE 6/7/8/9 and Firefox 3. */
 
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary { display: block; }
/* * Corrects `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. */
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
/* * Prevents modern browsers from displaying `audio` without controls.
* Remove excess height in iOS 5 devices. */
audio:not([controls]) { display: none; height: 0; }
/* * Addresses styling for `hidden` attribute not present in IE 7/8/9, Firefox 3, * and Safari 4.
* Known issue:no IE 6 support. */
[hidden] { display: none; }
/* ==========================================================================
Base
========================================================================== */
/* * 1. Corrects text resizing oddly in IE 6/7 when body `font-size` is set using
*    `em` units.
* 2. Prevents iOS text size adjust after orientation change, without disabling
*    user zoom. */
 
html { font-size: 100%; /* 1 */
	-webkit-text-size-adjust: 100%; /* 2 */
-ms-text-size-adjust: 100%; /* 2 */ }
/* * Addresses `font-family` inconsistency between `textarea` and other form
* elements. */
html, button, input, select, textarea { font-family: sans-serif; }
/* * Addresses margins handled incorrectly in IE 6/7. */
body { margin: 0; font-family: 'Lato', sans-serif; overflow-x: hidden; }
html, body { width: auto !important; overflow-x: hidden !important; }
/* ==========================================================================
Links
========================================================================== */
/* * Addresses `outline` inconsistency between Chrome and other browsers. */
 
a:focus { outline: thin dotted; }
/* * Improves readability when focused and also mouse hovered in all browsers. */
a:active, a:hover { outline: 0; }
/* ==========================================================================
Typography
========================================================================== */
/* * Addresses font sizes and margins set differently in IE 6/7.
* Addresses font sizes within `section` and `article` in Firefox 4+, Safari 5, * and Chrome. */
 
h1 { font-size: 2em; margin: 0.67em 0; }
h2 { font-size: 1.5em; margin: 0.83em 0; }
h3 { font-size: 1.17em; margin: 1em 0; }
h4 { font-size: 1em; margin: 1.33em 0; }
h5 { font-size: 0.83em; margin: 1.67em 0; }
h6 { font-size: 0.75em; margin: 2.33em 0; }
/* * Addresses styling not present in IE 7/8/9, Safari 5, and Chrome. */
abbr[title] { border-bottom: 1px dotted; }
/* * Addresses style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. */
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
/* * Addresses styling not present in Safari 5 and Chrome. */
dfn { font-style: italic; }
/* * Addresses styling not present in IE 6/7/8/9. */
mark { background: #ff0; color: #000; }
/* * Addresses margins set differently in IE 6/7. */
p, pre { margin: 1em 0; }
/* * Corrects font family set oddly in IE 6, Safari 4/5, and Chrome. */
code, kbd, pre, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }
/* * Improves readability of pre-formatted text in all browsers. */
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
/* * Addresses CSS quotes not supported in IE 6/7. */
q { quotes: none; }
/* * Addresses `quotes` property not supported in Safari 4. */
q:before, q:after { content: ''; content: none; }
small { font-size: 75%; }
/* * Prevents `sub` and `sup` affecting `line-height` in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
/* ==========================================================================
Lists
========================================================================== */
/* * Addresses margins set differently in IE 6/7. */
 
dl, menu, ol, ul { margin: 1em 0; }
dd { margin: 0 0 0 40px; }
/* * Addresses paddings set differently in IE 6/7. */
menu, ol, ul { padding: 0 0 0 40px; }
/* * Corrects list images handled incorrectly in IE 7. */
nav ul, nav ol { list-style: none; list-style-image: none; }
/* ==========================================================================
Embedded content
========================================================================== */
/* * 1. Removes border when inside `a` element in IE 6/7/8/9 and Firefox 3.
* 2. Improves image quality when scaled in IE 7. */
 
img { border: 0; /* 1 */
-ms-interpolation-mode: bicubic; /* 2 */ }
/* * Corrects overflow displayed oddly in IE 9. */
svg:not(:root) { overflow: hidden; }
/* ==========================================================================
Figures
========================================================================== */
/* * Addresses margin not present in IE 6/7/8/9, Safari 5, and Opera 11. */
 
figure { margin: 0; }
/* ==========================================================================
Forms
========================================================================== */
/* * Corrects margin displayed oddly in IE 6/7. */
 
form { margin: 0; }
/* * Define consistent border, margin, and padding. */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
/* * 1. Corrects color not being inherited in IE 6/7/8/9.
* 2. Corrects text not wrapping in Firefox 3.
* 3. Corrects alignment displayed oddly in IE 6/7. */
legend { border: 0; /* 1 */
	padding: 0; white-space: normal; /* 2 */
*margin-left: -7px; /* 3 */ }
/* * 1. Corrects font size not being inherited in all browsers.
* 2. Addresses margins set differently in IE 6/7, Firefox 3+, Safari 5, *    and Chrome.
* 3. Improves appearance and consistency in all browsers. */
button, input, select, textarea { font-size: 100%; /* 1 */
	margin: 0; /* 2 */
	vertical-align: baseline; /* 3 */
*vertical-align: middle; /* 3 */ }
/* * Addresses Firefox 3+ setting `line-height` on `input` using ` !important` in
* the UA stylesheet. */
button, input { line-height: normal; }
/* * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
*    and `video` controls.
* 2. Corrects inability to style clickable `input` types in iOS.
* 3. Improves usability and consistency of cursor style between image-type
*    `input` and others.
* 4. Removes inner spacing in IE 7 without affecting normal text inputs.
*    Known issue:inner spacing remains in IE 6. */
button, html input[type="button"], /* 1 */
input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */
	cursor: pointer; /* 3 */
*overflow: visible; /* 4 */ }
/* * Re-set default cursor for disabled elements. */
button[disabled], input[disabled] { cursor: default; }
/* * 1. Addresses box sizing set to content-box in IE 8/9.
* 2. Removes excess padding in IE 8/9.
* 3. Removes excess padding in IE 7.
*    Known issue:excess padding remains in IE 6. */
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
	*height: 13px; /* 3 */
*width: 13px; /* 3 */ }
/* * 1. Addresses `appearance` set to `searchfield` in Safari 5 and Chrome.
* 2. Addresses `box-sizing` set to `border-box` in Safari 5 and Chrome
*    (include `-moz` to future-proof). */
input[type="search"] { -webkit-appearance: textfield; /* 1 */
	-moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */
box-sizing: content-box; }
/* * Removes inner padding and search cancel button in Safari 5 and Chrome
* on OS X. */
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
/* * Removes inner padding and border in Firefox 3+. */
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
/* * 1. Removes default vertical scrollbar in IE 6/7/8/9.
* 2. Improves readability and alignment in all browsers. */
textarea { overflow: auto; /* 1 */
vertical-align: top; /* 2 */ }
/* ==========================================================================
Tables
========================================================================== */
/* * Remove most spacing between table cells. */
 
table { border-collapse: collapse; border-spacing: 0; }
/* * Remove most spacing between table cells. */
/* ==========================================================================
Headings
========================================================================== */
h1.chain { text-align: center; text-transform: uppercase; color: #6f7889; letter-spacing: 2px; font-size: 18px; font-weight: 600; background: url(../img/cog-icon.png) no-repeat top center; padding-top: 95px; }
h1.cowrk { text-align: center; text-transform: uppercase; color: #6f7889; letter-spacing: 2px; font-size: 18px; font-weight: 600; background: url(../img/cog-icon1.png) no-repeat top center; }
h1.calendar { text-align: center; text-transform: uppercase; color: #6f7889; letter-spacing: 2px; font-size: 18px; font-weight: 600; background: url(../img/calendar1-icon.png) no-repeat top center; /* padding-top: 95px; */ }
h2.frame { text-align: center; text-transform: uppercase; color: #6f7889; letter-spacing: 2px; font-size: 18px; font-weight: 600; background: url(../img/frame-icon.png) no-repeat top center; padding-top: 95px; margin-top: 70px; }
h2.meet { text-align: center; text-transform: uppercase; color: #6f7889; letter-spacing: 2px; font-size: 18px; font-weight: 600; background: url(../img/meet-icon.png) no-repeat top center; padding-top: 95px; margin-top: 70px; }
h2.mech { text-align: center; text-transform: uppercase; color: #6f7889; letter-spacing: 2px; font-size: 18px; font-weight: 600; background: url(../img/mech-icon.png) no-repeat top center; padding-top: 95px; margin-top: 70px; }
h2.front-frame { text-align: center; text-transform: uppercase; color: #6f7889; letter-spacing: 2px; font-size: 18px; font-weight: 600; background: url(../img/front-icon.png) no-repeat top center; padding-top: 95px; margin-top: 70px; }
h2.calendar { text-align: center; text-transform: uppercase; color: #6f7889; letter-spacing: 2px; font-size: 18px; font-weight: 600; background: url(../img/front-icon.png) no-repeat top center; padding-top: 65px;  }
h2.twitter-post-username { color: #6f7889; letter-spacing: 2px; font-size: 18px; font-weight: 600; margin-top: 30px; }
h2.twitter-post-username span { color: #848789; font-weight: 300; }
h2.logo-header { text-align: center; color: #848789; letter-spacing: 1px; font-size: 24px; font-weight: 300; background: url(../img/main-logo1.png) no-repeat top center; /* padding-top: 120px; */ margin: 70px 0 40px 0; font-style: italic; }
/* ==========================================================================
User Styles
========================================================================== */
@import url(http://fonts.googleapis.com/css?family=Lato:300,400,700);
/* ==========================================================================
User Styles
========================================================================== */
.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }
.pullcontainer a#pull { display: none; }
a { color: #282f35; -webkit-transition: all .25s ease; -moz-transition: all .25s ease; -ms-transition: all .25s ease; -o-transition: all .25s ease; transition: all .25s ease; }
a:hover { color: #64c29e; text-decoration: none; }
p { text-align: center; font-size: 16px; color: #848789; font-weight: 300; word-spacing: 2px; line-height: 1.4em; margin-top: 25px; }
p.text-intro { font-size: 18px; }
.hero { background: url(../img/hero-bg.jpg) no-repeat top center #f4f5fc; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; height: 685px; }
nav { height: 85px; margin-top: 30px;margin-bottom: 10px; position: relative; }
.logo-holder { background: url(../img/main-logo.png) no-repeat center center; width: 94px; height: 185px; position: absolute; top: 0; left: 343px; }
.responsive-logo { display: hidden; }
header { background-color: #f4f5fc; }
header ul { padding-top: 35px; }
header ul li { list-style: none; float: left; text-transform: uppercase; letter-spacing: 1.5px; }
header ul li a { display: block; margin: 0 25px; color: #4d4959; }
.r_spacer { margin-right: 180px; }
.intro { padding: 115px 0; background-color: #fbfbfb; }
.section-1 { background: url(../img/left-box-1.jpg) no-repeat center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; height: 600px; position: relative; }
.section-2 { background: url(../img/left-box-2.jpg) no-repeat center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; height: 600px; position: relative; }
.section-3 { background: url(../img/red-frame.jpg) no-repeat center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; height: 600px; position: relative; }
.section-4 { background: url(../img/red-bike.jpg) no-repeat center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; height: 600px; }
.section-5 { background: url(../img/left-box-3.jpg) no-repeat center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; height: 600px; position: relative; }
.section-text { position: relative; height: 600px; }
.nopadding { padding: 0 !important; margin: 0 !important; }
.thin-sep { height: 1px; background-color: #d7d7d7; width: 50px; margin: 8% auto 0 auto; }
.small-featured-img { height: 200px; width: 100%; position: absolute; bottom: 0; }
.seat-red { background: url(../img/meet1.jpg) no-repeat center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
.seat-black { background: url(../img/seat-black.jpg) no-repeat center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
.frame-red { background: url(../img/chrome-wheels.jpg) no-repeat center center; -webkit-background-size: cover; -moz-background-size: cover; -o-background-size: cover; background-size: cover; }
.section-text p { padding: 0 60px; text-align: justify; }
.arrow { background: url(../img/arrow.png) no-repeat center center; width: 21px; height: 10px; margin: -1px auto 0 auto; }
.logo-1 { width: 113px; height: 118px; background: url(../img/bicycle-logo.png); position: absolute; left: 50%; top: 50%; margin-left: -56px; margin-top: -59px; }
.logo-2 { width: 177px; height: 152px; background: url(../img/vintage-logo.png); position: absolute; left: 50%; top: 50%; margin-top: -70px; margin-left: -90px; }
.logo-3 { width: 208px; height: 67px; background: url(../img/bicycles-sml-logo.png); position: absolute; left: 50%; top: 50%; margin-left: -110px; margin-top: -10px; }
.flex-container { background-color: #f7f7f7; padding: 60px 0 0px; text-align: center; }
.flex-container1 { background-color: #fff; padding: 35px 0 35px; text-align: center; }
.flex-container2 { background-color: #f7f7f7; padding: 35px 0 35px; text-align: center; }
.flex-twitter-icon { width: 32px; height: 27px; background: url(../img/twitter-bird.png) no-repeat center center; margin: 0 auto; }
p.twitter-post { color: #848789; font-size: 20px; font-style: italic; font-weight: 300; margin-bottom: 100px; }
.left-box-1 { width: 50%; float: left; }
.left-box-2 { width: 50%; float: right; }
.left-box-btm { width: 100%; }
.left-box-1 img, .left-box-2 img, .left-box-btm img { width: 100%; }
.mid-box-1 { width: 50%; float: left; }
.mid-box-2 { width: 50%; float: right; }
.mid-box-1 img { width: 100%; height: 100%; }
.mid-box-2 img { width: 100%; height: 100%; }
.right-box-1 { width: 100%; }
.right-box-2 { width: 50%; float: left; }
.right-box-3 { width: 50%; float: right; }
.right-box-3 img, .right-box-2 img, .right-box-1 img { width: 100%; }
.effects { background-color: #282f35; }
.effects .img { position: relative; }
.effects .img img { display: block; margin: 0; padding: 0; max-width: 100%; height: auto; }
.overlay { z-index: 10 }
a.close-overlay { display: block; position: absolute; top: 0; right: 0; z-index: 20; width: 45px; height: 45px; font-size: 20px; font-weight: 700; color: #fff; line-height: 45px; text-align: center; background-color: #000; cursor: pointer; }
a.close-overlay.hidden { display: none }
#effect .overlay { position: absolute; display: block; top: 0; bottom: 0; left: 0; right: 0; background: rgba(40, 47, 53, 0.5); opacity: 0; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -ms-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; }
#effect .overlay a.expand { position: absolute; left: 0; right: 0; top: 0; content: ""; margin: 0 auto; border-radius: 30px; text-align: center; color: #fff; line-height: 50px; font-weight: 600; font-size: 14px; opacity: 0; text-transform: uppercase; letter-spacing: 3px; background: url(../img/lieu-insolite.png) no-repeat top center; padding-top: 25px; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -ms-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; display: block; }
#effect .overlay a.expand1 { position: absolute; left: 0; right: 0; top: 0; content: ""; margin: 0 auto; border-radius: 30px; text-align: center; color: #fff; line-height: 50px; font-weight: 600; font-size: 14px; opacity: 0; text-transform: uppercase; letter-spacing: 3px; background: url(../img/lieu-taille.png) no-repeat top center; padding-top: 25px; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -ms-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; display: block; }
#effect .overlay a.expand2 { position: absolute; left: 0; right: 0; top: 0; content: ""; margin: 0 auto; border-radius: 30px; text-align: center; color: #fff; line-height: 50px; font-weight: 600; font-size: 14px; opacity: 0; text-transform: uppercase; letter-spacing: 3px; background: url(../img/lieu-place.png) no-repeat top center; padding-top: 25px; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -ms-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; display: block; }
#effect .overlay a.expand3 { position: absolute; left: 0; right: 0; top: 0; content: ""; margin: 0 auto; border-radius: 30px; text-align: center; color: #fff; line-height: 50px; font-weight: 600; font-size: 14px; opacity: 0; text-transform: uppercase; letter-spacing: 3px; background: url(../img/lieu-equipement.png) no-repeat top center; padding-top: 25px; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -ms-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; display: block; }
#effect .overlay a.expand4 { position: absolute; left: 0; right: 0; top: 0; content: ""; margin: 0 auto; border-radius: 30px; text-align: center; color: #fff; line-height: 50px; font-weight: 600; font-size: 14px; opacity: 0; text-transform: uppercase; letter-spacing: 3px; background: url(../img/lieu-prix.png) no-repeat top center; padding-top: 25px; -webkit-transition: all 0.5s; -moz-transition: all 0.5s; -ms-transition: all 0.5s; -o-transition: all 0.5s; transition: all 0.5s; display: block; }
#effect .img { overflow: hidden }
#effect .img.hover .overlay { opacity: 1 }
#effect .img.hover .overlay a.expand { top: 50%; margin-top: -30px; opacity: 1; }
#effect .img.hover .overlay a.expand1 { top: 50%; margin-top: -30px; opacity: 1; }
#effect .img.hover .overlay a.expand2 { top: 50%; margin-top: -30px; opacity: 1; }
#effect .img.hover .overlay a.expand3 { top: 50%; margin-top: -30px; opacity: 1; }
#effect .img.hover .overlay a.expand4 { top: 50%; margin-top: -30px; opacity: 1; }
.discover { background-color: #282f35; padding: 70px 0; text-align: center; }
.shop-btn { border: solid 1px #bbb; padding: 15px 50px; color: #fff; text-transform: uppercase; letter-spacing: 3px; font-weight: 400; }
.shop-btn:hover, .shop-btn:focus { border: solid 1px #64c29e; }
.sign-up { text-align: center; }
.signup-input { border: solid 1px #d3d7d9; padding: 25px; width: 65%; color: #929292; font-style: italic; letter-spacing: 1px; }
.submit-btn { background-color: #6f7889; color: #fff; border: solid 1px #6f7889; font-weight: 300; padding: 25px 50px; }
section.sign_up { padding: 40px 0 110px 0; }
footer { background-color: #282f35; padding: 100px 0; }
footer p { font-size: 13px; margin: 0; }
.footer-leftcol p { text-align: left; }
.footer-rightcol p { text-align: right; font-style: italic; margin-top: 20px; }
.bold-16p { font-size: 15px; font-weight: 600; }
.footer-midcol { margin-left: auto; margin-right: auto; }
.footer-midcol ul { text-align: center; padding: 0; }
.footer-midcol li { list-style: none; display: inline-block; margin-right: 15px; }
.footer-midcol li a { opacity: 1; }
.footer-midcol li a:hover { opacity: 0.5; }
.twitter-icon { background: url(../img/twitter-icon.png); height: 51px; width: 50px; display: block; text-indent: -9999px; }
.facebook-icon { background: url(../img/facebook-logo.svg); height: 51px; width: 50px; display: block; text-indent: -9999px; }
.pintrest-icon { background: url(../img/instagram-logo.svg); height: 51px; width: 50px; display: block; text-indent: -9999px; }
.wp1, .wp2, .wp3, .wp4, .wp5, .wp6 { visibility: hidden; }
.bounceInLeft, .bounceInRight, .fadeInUp { visibility: visible; }


.cd-section {
  padding: 2em 5%;
  text-align: center;
  background-color: #f7f7f7; 
}
.cd-section p {
  margin: 2em 0;
  line-height: 1.6;
  color: #ffffff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media only screen and (min-width: 768px) {
  .cd-section {
    padding: 4em 10%;
  }
  .cd-section p {
    font-size: 1.8rem;
    line-height: 2; 
  }
}
@media only screen and (min-width: 1170px) {
  .cd-section {
    padding: 4em 20%;
  }
}

.discover.cd-section{
background-color:#282f35;
}


 .discover.cd-section .cd-modal-action .btn,  .discover.cd-section.cd-modal-action .cd-modal-bg  {
  display: inline-block;
  height: 4em;
  background-color: #282f35;
}
 .discover.cd-section .cd-modal-action .btn  {
    border: solid 1px #bbb;
    padding: 15px 50px;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 400;

}

.cd-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  -webkit-transition: visibility 0s 0.3s, opacity 0.3s 0s, z-index 0s 0.3s;
  -moz-transition: visibility 0s 0.3s, opacity 0.3s 0s, z-index 0s 0.3s;
  transition: visibility 0s 0.3s, opacity 0.3s 0s, z-index 0s 0.3s;
}
.cd-modal::after {
  /* gradient overlay at bottom of modal window */
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 60px;
  pointer-events: none;
  background: transparent;
  background: -webkit-linear-gradient( bottom , #6f7889, rgba(52, 56, 60, 0));
  background: linear-gradient(to top, #6f7889, rgba(52, 56, 60, 0));
}
.cd-modal .cd-modal-content {
  height: 100%;
  width: 100%;
  padding: 3em 5%;
  text-align: left;
  overflow-y: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.cd-modal p {
  color: #ffffff;
  line-height: 1.6;
  margin: 2em 0;
}
.modal-is-visible .cd-modal {
  z-index: 100;
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  -webkit-transition: visibility 0s 0s, opacity 0.3s 0s, z-index 0s 0s;
  -moz-transition: visibility 0s 0s, opacity 0.3s 0s, z-index 0s 0s;
  transition: visibility 0s 0s, opacity 0.3s 0s, z-index 0s 0s;
}
.modal-is-visible .cd-modal .cd-modal-content {
  -webkit-overflow-scrolling: touch;
}
@media only screen and (min-width: 768px) {
  .cd-modal .cd-modal-content {
    padding: 2em 10%;
  }
}
@media only screen and (min-width: 1170px) {
  .cd-modal .cd-modal-content {
    padding: 6em 20%;
  }
  .cd-modal p {
    font-size: 2rem;
    line-height: 2;
  }
}

.cd-modal-action {
  position: relative;
}
.cd-modal-action .btn, .cd-modal-action .cd-modal-bg {
  display: inline-block;
  height: 4em;
  background-color: #6f7889;
}
.cd-modal-action .btn {
    border: solid 1px #bbb;
    padding: 15px 50px;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-weight: 400;

}
.cd-modal-action .btn.to-circle {
  width: 4em;
  color: transparent;
  -webkit-transition: color 0.2s 0s, width 0.3s 0.2s;
  -moz-transition: color 0.2s 0s, width 0.3s 0.2s;
  transition: color 0.2s 0s, width 0.3s 0.2s;
}
.cd-modal-action .cd-modal-bg {
  position: absolute;
  z-index: 1;
  left: 50%;
  top: 0;
  width: 4em;
  border-radius: 50%;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transform: translateX(-2em);
  -moz-transform: translateX(-2em);
  -ms-transform: translateX(-2em);
  -o-transform: translateX(-2em);
  transform: translateX(-2em);
  -webkit-transition: visibility 0s 0.5s;
  -moz-transition: visibility 0s 0.5s;
  transition: visibility 0s 0.5s;
}
.cd-modal-action .cd-modal-bg.is-visible {
  opacity: 1;
  visibility: visible;
}

.cd-modal-close {
  position: fixed;
  z-index: 101;
  top: 20px;
  right: 5%;
  height: 50px;
  width: 50px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.3) url(../img/cd-icon-close.svg) no-repeat center center;
  /* image replacement */
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transform: scale(0);
  -moz-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-transition: -webkit-transform 0.3s 0s, visibility 0s 0.3s, opacity 0.3s 0s;
  -moz-transition: -moz-transform 0.3s 0s, visibility 0s 0.3s, opacity 0.3s 0s;
  transition: transform 0.3s 0s, visibility 0s 0.3s, opacity 0.3s 0s;
}
.no-touch .cd-modal-close:hover {
  background-color: rgba(0, 0, 0, 0.5);
}
.modal-is-visible .cd-modal-close {
  visibility: visible;
  opacity: 1;
  -webkit-transition: -webkit-transform 0.3s 0s, visibility 0s 0s, opacity 0.3s 0s;
  -moz-transition: -moz-transform 0.3s 0s, visibility 0s 0s, opacity 0.3s 0s;
  transition: transform 0.3s 0s, visibility 0s 0s, opacity 0.3s 0s;
  -webkit-transform: scale(1);
  -moz-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
@media only screen and (min-width: 768px) {
  .cd-modal-close {
    top: 70px;
  }
}

#google-container {
  position: relative;
  width: 100%;
  height: 200px;
  background-color: #e7eaf0;
}
@media only screen and (min-width: 768px) {
  #google-container {
    height: 300px;
  }
}
@media only screen and (min-width: 1170px) {
  #google-container {
    height: 600px;
  }
}

#cd-google-map {
  position: relative;
}
#cd-google-map address {
position: absolute;
width: 50%;
bottom: 11%;
left: 25%;
padding: 1em 1em;
background-color: rgba(0, 0, 0, 0.5);
color: white;
font-size: 13px;
font-size: 0.8125rem;
}
@media only screen and (min-width: 768px) {
  #cd-google-map address {
    font-size: 15px;
    font-size: 1.5rem;
    text-align: center;
  }
}

#cd-zoom-in, #cd-zoom-out {
  height: 32px;
  width: 32px;
  cursor: pointer;
  margin-left: 10px;
background-color: rgba(0, 0, 0, 0.5);
  background-repeat: no-repeat;
  background-size: 32px 64px;
  background-image: url("../img/cd-icon-controller.svg");
}
.no-touch #cd-zoom-in:hover, .no-touch #cd-zoom-out:hover {
  background-color: #d36868;
}
@media only screen and (min-width: 768px) {
  #cd-zoom-in, #cd-zoom-out {
    margin-left: 50px;
  }
}

#cd-zoom-in {
  background-position: 50% 0;
  margin-top: 10px;
  margin-bottom: 1px;
}
@media only screen and (min-width: 768px) {
  #cd-zoom-in {
    margin-top: 50px;
  }
}

#cd-zoom-out {
  background-position: 50% -32px;
}




.cd-top {
  display: inline-block;
  height: 40px;
  width: 40px;
  position: fixed;
  bottom: 40px;
  right: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  /* image replacement properties */
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  background: rgba(111, 120, 137, 0.8) url(../img/cd-top-arrow.svg) no-repeat center 50%;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: opacity .3s 0s, visibility 0s .3s;
  -moz-transition: opacity .3s 0s, visibility 0s .3s;
  transition: opacity .3s 0s, visibility 0s .3s;
}
.cd-top.cd-is-visible, .cd-top.cd-fade-out, .no-touch .cd-top:hover {
  -webkit-transition: opacity .3s 0s, visibility 0s 0s;
  -moz-transition: opacity .3s 0s, visibility 0s 0s;
  transition: opacity .3s 0s, visibility 0s 0s;
}
.cd-top.cd-is-visible {
  /* the button becomes visible */
  visibility: visible;
  opacity: 1;
}
.cd-top.cd-fade-out {
  /* if the user keeps scrolling down, the button is out of focus and becomes less visible */
  opacity: .5;
}
.no-touch .cd-top:hover {
  background-color: #6f7889;
  opacity: 1;
}
@media only screen and (min-width: 768px) {
  .cd-top {
    right: 20px;
    bottom: 20px;
  }
}
@media only screen and (min-width: 1024px) {
  .cd-top {
    height: 60px;
    width: 60px;
    right: 30px;
    bottom: 30px;
  }
}


/* -------------------------------- 

Form

-------------------------------- */
.cd-form {
  width: 90%;
  max-width: 600px;
  margin: 4em auto;
}
.cd-form::after {
  clear: both;
  content: "";
  display: table;
}
.cd-form fieldset {
  margin: 24px 0;
}
.cd-form legend {
  padding-bottom: 10px;
  margin-bottom: 20px;
  font-size: 2rem;
  border-bottom: 1px solid #ecf0f1;
}
.cd-form div {
  /* form element wrapper */
  position: relative;
  margin: 20px 0;
}
.cd-form h4, .cd-form .cd-label {
  font-size: 1.3rem;
  color: #94aab0;
  margin-bottom: 10px;
}
.cd-form .cd-label {
  display: block;
}
.cd-form input, .cd-form textarea, .cd-form select, .cd-form label {
  font-family: "Open Sans", sans-serif;
  font-size: 1.6rem;
  color: #2b3e51;
}
.cd-form input[type="text"],
.cd-form input[type="email"],
.cd-form textarea,
.cd-form select,
.cd-form legend {
  display: block;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
}
.cd-form input[type="text"],
.cd-form input[type="email"],
.cd-form textarea,
.cd-form select {
  /* general style for input elements */
  padding: 12px;
  border: 1px solid #cfd9db;
  background-color: #ffffff;
  border-radius: .25em;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.08);
}
.cd-form input[type="text"]:focus,
.cd-form input[type="email"]:focus,
.cd-form textarea:focus,
.cd-form select:focus {
  outline: none;
  border-color: #2c97de;
  box-shadow: 0 0 5px rgba(44, 151, 222, 0.2);
}
.cd-form .cd-select {
  /* select element wapper */
  position: relative;
}
.cd-form .cd-select::after {
  /* arrow icon for select element */
  content: '';
  position: absolute;
  z-index: 1;
  right: 16px;
  top: 50%;
  margin-top: -8px;
  display: block;
  width: 16px;
  height: 16px;
  background: url("../img/cd-icon-arrow.svg") no-repeat center center;
  pointer-events: none;
}
.cd-form select {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
  cursor: pointer;
}
.cd-form select::-ms-expand {
  display: none;
}
.cd-form .cd-form-list {
  margin-top: 16px;
}
.cd-form .cd-form-list::after {
  clear: both;
  content: "";
  display: table;
}
.cd-form .cd-form-list li {
  /* wrapper for radio and checkbox input types */
  display: inline-block;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  margin: 0 26px 16px 0;
  float: left;
}
.cd-form input[type=radio],
.cd-form input[type=checkbox] {
  /* hide original check and radio buttons */
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  margin: 0;
  padding: 0;
  opacity: 0;
  z-index: 2;
}
.cd-form input[type="radio"] + label,
.cd-form input[type="checkbox"] + label {
  padding-left: 24px;
}
.cd-form input[type="radio"] + label::before,
.cd-form input[type="radio"] + label::after,
.cd-form input[type="checkbox"] + label::before,
.cd-form input[type="checkbox"] + label::after {
  /* custom radio and check boxes */
  content: '';
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -8px;
  width: 16px;
  height: 16px;
}
.cd-form input[type="radio"] + label::before,
.cd-form input[type="checkbox"] + label::before {
  border: 1px solid #cfd9db;
  background: #ffffff;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.08);
}
.cd-form input[type="radio"] + label::before,
.cd-form input[type="radio"] + label::after {
  border-radius: 50%;
}
.cd-form input[type="checkbox"] + label::before,
.cd-form input[type="checkbox"] + label::after {
  border-radius: .25em;
}
.cd-form input[type="radio"] + label::after,
.cd-form input[type="checkbox"] + label::after {
  background-color: #2c97de;
  background-position: center center;
  background-repeat: no-repeat;
  box-shadow: 0 0 5px rgba(44, 151, 222, 0.4);
  display: none;
}
.cd-form input[type="radio"] + label::after {
  /* custom image for radio button */
  background-image: url("../img/cd-icon-radio.svg");
}
.cd-form input[type="checkbox"] + label::after {
  /* custom image for checkbox */
  background-image: url("../img/cd-icon-check.svg");
}
.cd-form input[type="radio"]:focus + label::before,
.cd-form input[type="checkbox"]:focus + label::before {
  /* add focus effect for radio and check buttons */
  box-shadow: 0 0 5px rgba(44, 151, 222, 0.6);
}
.cd-form input[type="radio"]:checked + label::after,
.cd-form input[type="checkbox"]:checked + label::after {
  display: block;
}
.cd-form input[type="radio"]:checked + label::before,
.cd-form input[type="radio"]:checked + label::after,
.cd-form input[type="checkbox"]:checked + label::before,
.cd-form input[type="checkbox"]:checked + label::after {
  -webkit-animation: cd-bounce 0.3s;
  -moz-animation: cd-bounce 0.3s;
  animation: cd-bounce 0.3s;
}
.cd-form textarea {
  min-height: 200px;
  resize: vertical;
  overflow: auto;
}
.cd-form input[type="submit"] {
  /* button style */
  border: none;
  background: #2c97de;
  border-radius: .25em;
  padding: 16px 20px;
  color: #ffffff;
  font-weight: bold;
  float: right;
  cursor: pointer;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
}
.no-touch .cd-form input[type="submit"]:hover {
  background: #42a2e1;
}
.cd-form input[type="submit"]:focus {
  outline: none;
  background: #2b3e51;
}
.cd-form input[type="submit"]:active {
  -webkit-transform: scale(0.9);
  -moz-transform: scale(0.9);
  -ms-transform: scale(0.9);
  -o-transform: scale(0.9);
  transform: scale(0.9);
}
.cd-form [required] {
  background: url("../img/cd-required.svg") no-repeat top right;
}
.cd-form .error-message p {
  background: #e94b35;
  color: #ffffff;
  font-size: 1.4rem;
  text-align: center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  border-radius: .25em;
  padding: 16px;
}
.cd-form .error {
  border-color: #e94b35 !important;
}
@media only screen and (min-width: 600px) {
  .cd-form div {
    /* form element wrapper */
    margin: 32px 0;
  }
  .cd-form legend + div {
    /* reduce margin-top for first form element after the legend */
    margin-top: 20px;
  }
  .cd-form h4, .cd-form .cd-label {
    font-size: 1.4rem;
    margin-bottom: 10px;
  }
  .cd-form input[type="text"],
  .cd-form input[type="email"],
  .cd-form textarea,
  .cd-form select {
    padding: 16px;
  }
}

@-webkit-keyframes cd-bounce {
  0%, 100% {
    -webkit-transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.8);
  }
}
@-moz-keyframes cd-bounce {
  0%, 100% {
    -moz-transform: scale(1);
  }
  50% {
    -moz-transform: scale(0.8);
  }
}
@keyframes cd-bounce {
  0%, 100% {
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  50% {
    -webkit-transform: scale(0.8);
    -moz-transform: scale(0.8);
    -ms-transform: scale(0.8);
    -o-transform: scale(0.8);
    transform: scale(0.8);
  }
}
/* -------------------------------- 

Custom icons

-------------------------------- */
.cd-form .icon input, .cd-form .icon select, .cd-form .icon textarea {
  padding-left: 54px !important;
}
.cd-form .user {
  background: url("../img/cd-icon-user.svg") no-repeat 16px center;
}
.cd-form [required].user {
  background: url("../img/cd-icon-user.svg") no-repeat 16px center, url("../img/cd-required.svg") no-repeat top right;
}
.cd-form .company {
  background: url("../img/cd-icon-company.svg") no-repeat 16px center;
}
.cd-form [required].company {
  background: url("../img/cd-icon-company.svg") no-repeat 16px center, url("../img/cd-required.svg") no-repeat top right;
}
.cd-form .email {
  background: url("../img/cd-icon-email.svg") no-repeat 16px center;
}
.cd-form [required].email {
  background: url("../img/cd-icon-email.svg") no-repeat 16px center, url("../img/cd-required.svg") no-repeat top right;
}
.cd-form .budget {
  background: url("../img/cd-icon-budget.svg") no-repeat 16px center;
}
.cd-form .message {
  background: url("../img/cd-icon-message.svg") no-repeat 16px 16px;
}
.cd-form [required].message {
  background: url("../img/cd-icon-message.svg") no-repeat 16px 16px, url("../img/cd-required.svg") no-repeat top right;
}

/* -------------------------------- 

FLoating labels 

-------------------------------- */
.js .floating-labels div {
  margin: 28px 0;
}
.js .floating-labels .cd-label {
  position: absolute;
  top: 16px;
  left: 16px;
  font-size: 1.6rem;
  cursor: text;
  -webkit-transition: top 0.2s, left 0.2s, font-size 0.2s;
  -moz-transition: top 0.2s, left 0.2s, font-size 0.2s;
  transition: top 0.2s, left 0.2s, font-size 0.2s;
}
.js .floating-labels .icon .cd-label {
  left: 56px;
}
.js .floating-labels .cd-label.float {
  /* move label out the input field */
  font-size: 1.2rem;
  top: -16px;
  left: 0 !important;
}
@media only screen and (min-width: 600px) {
  .js .floating-labels legend + div {
    /* reduce margin-top for first form element after the legend */
    margin-top: 16px;
  }
  .js .floating-labels .cd-label {
    top: 20px;
  }
}

