/* =================================================================== * webfonts and iconfonts - (_document-setup) * * ------------------------------------------------------------------- */
 @import url("font-awesome/css/font-awesome.min.css");
 @import url("micons/micons.css");
 @import url("fonts.css");
/* =================================================================== * base style overrides - (_document-setup) * * ------------------------------------------------------------------- */
 html {
     font-size: 10px;
}
 @media only screen and (max-width: 1024px) {
     html {
         font-size: 9.375px;
    }
}
 @media only screen and (max-width: 768px) {
     html {
         font-size: 10px;
    }
}
 @media only screen and (max-width: 400px) {
     html {
         font-size: 9.375px;
    }
}
 html, body {
     height: 100%;
}
 body {
     background: #111111;
     font-family: montserrat-regular,sans-serif;
     font-size: 1.6rem;
     line-height: 3rem;
     color: #353535;
     margin: 0;
     padding: 0;
}
/* ------------------------------------------------------------------- * links - (_document-setup) * ------------------------------------------------------------------- */
 a, a:visited {
     color: #ffffff;
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
}
 a:hover, a:focus {
     color: #ffffff;
}
/* =================================================================== * typography & general theme styles - (_document-setup.scss) * * ------------------------------------------------------------------- */
 h1, h2, h3, h4, h5, h6, .h01, .h02, .h03, .h04, .h05, .h06 {
     font-family: "montserrat-bold", sans-serif;
     color: #151515;
     font-style: normal;
     text-rendering: optimizelegibility;
     margin-bottom: 2.1rem;
}
 h3, .h03, h4, .h04 {
     margin-bottom: 1.8rem;
}
 h5, .h05, h6, .h06 {
     margin-bottom: 1.2rem;
}
 h1, .h01 {
     font-size: 3.1rem;
     line-height: 1.35;
     letter-spacing: -.1rem;
}
 @media only screen and (max-width: 600px) {
     h1, .h01 {
         font-size: 2.6rem;
         letter-spacing: -.07rem;
    }
}
 h2, .h02 {
     font-size: 2.4rem;
     line-height: 1.25;
}
 h3, .h03 {
     font-size: 2rem;
     line-height: 1.5;
}
 h4, .h04 {
     font-size: 1.7rem;
     line-height: 1.76;
}
 h5, .h05 {
     font-size: 1.4rem;
     line-height: 1.7;
     text-transform: uppercase;
     letter-spacing: .2rem;
}
 h6, .h06 {
     font-size: 1.3rem;
     line-height: 1.85;
     text-transform: uppercase;
     letter-spacing: .2rem;
}
 p img {
     margin: 0;
}
 p.lead {
     font-family: "montserrat-regular", sans-serif;
     font-size: 1.8rem;
     line-height: 1.8;
     color: #4f4f4f;
     margin-bottom: 3.6rem;
}
 @media only screen and (max-width: 1024px) {
     p.lead {
         font-size: 1.7rem;
    }
}
 @media only screen and (max-width: 900px) {
     p.lead {
         font-size: 1.6rem;
    }
}
 @media only screen and (max-width: 768px) {
     p.lead {
         font-size: 1.5rem;
    }
}
 @media only screen and (max-width: 600px) {
     p.lead {
         font-size: 1.4rem;
    }
}
 @media only screen and (max-width: 500px) {
     p.lead {
         font-size: 1.3rem;
    }
}
 @media only screen and (max-width: 400px) {
     p.lead {
         font-size: 1.2rem;
    }
}
 em, i, strong, b {
     font-size: 1.6rem;
     line-height: 3rem;
     font-style: normal;
     font-weight: normal;
}
 em, i {
     font-family: "librebaskerville-italic", serif;
}
 strong, b {
     font-family: "librebaskerville-bold", serif;
}
 small {
     font-size: 1.2rem;
     line-height: inherit;
}
 blockquote {
     margin: 3rem 0;
     padding-left: 5rem;
     position: relative;
}
 blockquote:before {
     content: "\201c";
     font-size: 10rem;
     line-height: 0px;
     margin: 0;
     color: rgba(0, 0, 0, 0.3);
     font-family: arial, sans-serif;
     position: absolute;
     top: 3.6rem;
     left: 0;
}
 blockquote p {
     font-family: "librebaskerville-italic", georgia, serif;
     font-style: italic;
     padding: 0;
     font-size: 1.9rem;
     line-height: 1.895;
}
 blockquote cite {
     display: block;
     font-size: 1.3rem;
     font-style: normal;
     line-height: 1.615;
}
 blockquote cite:before {
     content: "\2014 \0020";
}
 blockquote cite a, blockquote cite a:visited {
     color: #4f4f4f;
     border: none;
}
 abbr {
     font-family: "librebaskerville-bold", serif;
     font-variant: small-caps;
     text-transform: lowercase;
     letter-spacing: .05rem;
     color: #4f4f4f;
}
 var, kbd, samp, code, pre {
     font-family: consolas, "andale mono", courier, "courier new", monospace;
}
 pre {
     padding: 2.4rem 3rem 3rem;
     background: #f1f1f1;
}
 code {
     font-size: 1.4rem;
     margin: 0 .2rem;
     padding: .3rem .6rem;
     white-space: nowrap;
     background: #f1f1f1;
     border: 1px solid #e1e1e1;
     border-radius: 3px;
}
 pre>code {
     display: block;
     white-space: pre;
     line-height: 2;
     padding: 0;
     margin: 0;
}
 pre.prettyprint>code {
     border: none;
}
 del {
     text-decoration: line-through;
}
 abbr[title], dfn[title] {
     border-bottom: 1px dotted;
     cursor: help;
}
 mark {
     background: #fff49b;
     color: #000;
}
 hr {
     border: solid #d2d2d2;
     border-width: 1px 0 0;
     clear: both;
     margin: 2.4rem 0 1.5rem;
     height: 0;
}
/* ------------------------------------------------------------------- * lists - (_document-setup.scss) * ------------------------------------------------------------------- */
 ol {
     list-style: decimal;
}
 ul {
     list-style: disc;
}
 li {
     display: list-item;
}
 ol, ul {
     margin-left: 1.7rem;
}
 ul li {
     padding-left: .4rem;
}
 ul ul, ul ol, ol ol, ol ul {
     margin: .6rem 0 .6rem 1.7rem;
}
 ul.disc li {
     display: list-item;
     list-style: none;
     padding: 0 0 0 .8rem;
     position: relative;
}
 ul.disc li::before {
     content: "";
     display: inline-block;
     width: 8px;
     height: 8px;
     border-radius: 50%;
     background: #ee2e24;
     position: absolute;
     left: -17px;
     top: 11px;
     vertical-align: middle;
}
 dt {
     margin: 0;
     color: #ee2e24;
}
 dd {
     margin: 0 0 0 2rem;
}
/* ------------------------------------------------------------------- * spacing - (_document-setup) * ------------------------------------------------------------------- */
 button, .button {
     margin-bottom: 1.2rem;
}
 fieldset {
     margin-bottom: 1.5rem;
}
 input, textarea, select, pre, blockquote, figure, table, p, ul, ol, dl, form, .fluid-video-wrapper, .ss-custom-select {
     margin-bottom: 3rem;
}
/* ------------------------------------------------------------------- * floated image - (_document-setup) * ------------------------------------------------------------------- */
 img.pull-right {
     margin: 1.5rem 0 0 3rem;
}
 img.pull-left {
     margin: 1.5rem 3rem 0 0;
}
/* ------------------------------------------------------------------- * block grids paddings * ------------------------------------------------------------------- */
 .bgrid {
     padding: 0 20px;
}
 @media only screen and (max-width: 1024px) {
     .bgrid {
         padding: 0 18px;
    }
}
 @media only screen and (max-width: 768px) {
     .bgrid {
         padding: 0 15px;
    }
}
 @media only screen and (max-width: 600px) {
     .bgrid {
         padding: 0 10px;
    }
}
 @media only screen and (max-width: 400px) {
     .bgrid {
         padding: 0;
    }
}
/* ------------------------------------------------------------------- * tables - (_document-setup.scss) * ------------------------------------------------------------------- */
 table {
     border-width: 0;
     width: 100%;
     max-width: 100%;
     font-family: "montserrat-regular", sans-serif;
}
 th, td {
     padding: 1.5rem 3rem;
     text-align: left;
     border-bottom: 1px solid #e8e8e8;
}
 th {
     font-family: "montserrat-regular", sans-serif;
}
 td {
     line-height: 1.5;
}
 th:first-child, td:first-child {
     padding-left: 0;
}
 th:last-child, td:last-child {
     padding-right: 0;
}
 .table-responsive {
     overflow-x: auto;
     -webkit-overflow-scrolling: touch;
}
/* ------------------------------------------------------------------- * pace.js styles - minimal - (_document-setup.scss) * ------------------------------------------------------------------- */
 .pace {
     -webkit-pointer-events: none;
     pointer-events: none;
     -webkit-user-select: none;
     -moz-user-select: none;
     user-select: none;
}
 .pace-inactive {
     display: none;
}
 .pace .pace-progress {
     background: #ee2e24;
     position: fixed;
     z-index: 900;
     top: 0;
     right: 100%;
     width: 100%;
     height: 6px;
}
/* =================================================================== * preloader * * ------------------------------------------------------------------- */
 #preloader {
     position: fixed;
     top: 0;
     left: 0;
     right: 0;
     bottom: 0;
     background: #0f1215;
     z-index: 800;
     height: 100%;
     width: 100%;
}
 .no-js #preloader, .oldie #preloader {
     display: none;
}
 #loader {
     position: absolute;
     left: 50%;
     top: 50%;
     width: 60px;
     height: 60px;
     margin-left: -30px;
     margin-top: -30px;
     padding: 0;
     background-color: #ee2e24;
     border-radius: 100%;
     -webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
     animation: sk-scaleout 1.0s infinite ease-in-out;
}
 @-webkit-keyframes sk-scaleout {
     0% {
         -webkit-transform: scale(0);
    }
     100% {
         -webkit-transform: scale(1);
         opacity: 0;
    }
}
 @keyframes sk-scaleout {
     0% {
         -webkit-transform: scale(0);
         transform: scale(0);
    }
     100% {
         -webkit-transform: scale(1);
         transform: scale(1);
         opacity: 0;
    }
}
/* =================================================================== * forms - (_forms.scss) * * ------------------------------------------------------------------- */
 fieldset {
     border: none;
}
 input[type="email"], input[type="number"], input[type="search"], input[type="text"], input[type="tel"], input[type="url"], input[type="password"], textarea, select {
     display: block;
     height: 6rem;
     padding: 1.5rem 2rem;
     border: 0;
     outline: none;
     vertical-align: middle;
     color: #444444;
     font-family: "montserrat-regular", sans-serif;
     font-size: 1.4rem;
     line-height: 3rem;
     max-width: 100%;
     background: rgba(0, 0, 0, 0.1);
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
}
 .ss-custom-select {
     position: relative;
     padding: 0;
}
 .ss-custom-select select {
     -webkit-appearance: none;
     -moz-appearance: none;
     -ms-appearance: none;
     -o-appearance: none;
     appearance: none;
     text-indent: 0.01px;
     text-overflow: '';
     margin: 0;
     line-height: 3rem;
     vertical-align: middle;
}
 .ss-custom-select select option {
     padding-left: 2rem;
     padding-right: 2rem;
}
 .ss-custom-select select::-ms-expand {
     display: none;
}
 .ss-custom-select::after {
     content: '\f0d7';
     font-family: 'fontawesome';
     position: absolute;
     top: 50%;
     right: 1.5rem;
     margin-top: -10px;
     bottom: auto;
     width: 20px;
     height: 20px;
     line-height: 20px;
     font-size: 18px;
     text-align: center;
     pointer-events: none;
     color: #252525;
}
/* ie9 and below */
 .oldie .ss-custom-select::after {
     display: none;
}
 textarea {
     min-height: 25rem;
}
 input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="text"]:focus, input[type="tel"]:focus, input[type="url"]:focus, input[type="password"]:focus, textarea:focus, select:focus {
     color: #000000;
}
 label, legend {
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.4rem;
     margin-bottom: .6rem;
     color: #020202;
     display: block;
}
 input[type="checkbox"], input[type="radio"] {
     display: inline;
}
 label>.label-text {
     display: inline-block;
     margin-left: 1rem;
     font-family: "montserrat-regular", sans-serif;
     line-height: inherit;
}
 label>input[type="checkbox"], label>input[type="radio"] {
     margin: 0;
     position: relative;
     top: .15rem;
}
/* ------------------------------------------------------------------- * style placeholder text - (_forms.scss) * ------------------------------------------------------------------- */
 ::-webkit-input-placeholder {
     color: #8e8e8e;
}
 :-moz-placeholder {
     color: #8e8e8e;
    /* firefox 18- */
}
 ::-moz-placeholder {
     color: #8e8e8e;
    /* firefox 19+ */
}
 :-ms-input-placeholder {
     color: #8e8e8e;
}
 .placeholder {
     color: #8e8e8e !important;
}
/* ------------------------------------------------------------------- * change autocomplete styles in chrome - (_forms.scss) * ------------------------------------------------------------------- */
 input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus input:-webkit-autofill, textarea:-webkit-autofill, textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus, select:-webkit-autofill, select:-webkit-autofill:hover, select:-webkit-autofill:focus {
     border: none;
     -webkit-text-fill-color: #f0453c;
     transition: background-color 5000s ease-in-out 0s;
}
/* =================================================================== * buttons - (_button-essentials.scss) * * ------------------------------------------------------------------- */
 .button, a.button, button, input[type="submit"], input[type="reset"], input[type="button"] {
     display: inline-block;
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.4rem;
     text-transform: uppercase;
     letter-spacing: .3rem;
     height: 5.4rem;
     line-height: 5.4rem;
     padding: 0 3rem;
     margin: 0 .3rem 1.2rem 0;
     background: #a5a5a5;
     color: #222222;
     text-decoration: none;
     cursor: pointer;
     text-align: center;
     white-space: nowrap;
     border: none;
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
}
 .button:hover, a.button:hover, button:hover, input[type="submit"]:hover, input[type="reset"]:hover, input[type="button"]:hover, .button:focus, button:focus, input[type="submit"]:focus, input[type="reset"]:focus, input[type="button"]:focus {
     background: #989898;
     color: #000000;
     outline: 0;
}
 .button.button-primary, a.button.button-primary, button.button-primary, input[type="submit"].button-primary, input[type="reset"].button-primary, input[type="button"].button-primary {
     background: #151515;
     color: #ffffff;
}
 .button.button-primary:hover, a.button.button-primary:hover, button.button-primary:hover, input[type="submit"].button-primary:hover, input[type="reset"].button-primary:hover, input[type="button"].button-primary:hover, .button.button-primary:focus, button.button-primary:focus, input[type="submit"].button-primary:focus, input[type="reset"].button-primary:focus, input[type="button"].button-primary:focus {
     background: #030303;
}
 button.full-width, .button.full-width {
     width: 100%;
     margin-right: 0;
}
 button.medium, .button.medium {
     height: 5.7rem !important;
     line-height: 5.7rem !important;
     padding: 0 1.8rem !important;
}
 button.large, .button.large {
     height: 6rem !important;
     line-height: 6rem !important;
     padding: 0rem 3rem !important;
}
 button.stroke, .button.stroke {
     background: transparent !important;
     border: 3px solid #313131;
     line-height: 4.8rem;
}
 button.stroke.medium, .button.stroke.medium {
     line-height: 5.1rem !important;
}
 button.stroke.large, .button.stroke.large {
     line-height: 5.4rem !important;
}
 button.stroke:hover, .button.stroke:hover {
     border: 3px solid #ee2e24;
     color: #ee2e24;
}
 button::-moz-focus-inner, input::-moz-focus-inner {
     border: 0;
     padding: 0;
}
/* =================================================================== * other components - (_others.scss) * * ------------------------------------------------------------------- */
/** * alert box - (_alert-box.scss) * ------------------------------------------------------------------- */
 .alert-box {
     padding: 2.1rem 4rem 2.1rem 3rem;
     position: relative;
     margin-bottom: 3rem;
     border-radius: 3px;
     font-family: "montserrat-regular", sans-serif;
     font-size: 1.5rem;
}
 .alert-box .close {
     position: absolute;
     right: 1.8rem;
     top: 1.8rem;
     cursor: pointer;
}
 .ss-error {
     background-color: #ffd1d2;
     color: #e65153;
}
 .ss-success {
     background-color: #c8e675;
     color: #758c36;
}
 .ss-info {
     background-color: #d7ecfb;
     color: #4a95cc;
}
 .ss-notice {
     background-color: #fff099;
     color: #bba31b;
}
/* ------------------------------------------------------------------- * additional typo styles - (_additional-typo.scss) * ------------------------------------------------------------------- */
/* drop cap * ----------------------------------------------- */
 .drop-cap:first-letter {
     float: left;
     margin: 0;
     padding: 1.5rem .6rem 0 0;
     font-size: 8.4rem;
     font-family: "montserrat-bold", sans-serif;
     line-height: 6rem;
     text-indent: 0;
     background: transparent;
     color: #151515;
}
/* line definition style * ----------------------------------------------- */
 .lining dt, .lining dd {
     display: inline;
     margin: 0;
}
 .lining dt+dt:before, .lining dd+dt:before {
     content: "\a";
     white-space: pre;
}
 .lining dd+dd:before {
     content: ", ";
}
 .lining dd+dd:before {
     content: ", ";
}
 .lining dd:before {
     content: ": ";
     margin-left: -0.2em;
}
/* dictionary definition style * ----------------------------------------------- */
 .dictionary-style dt {
     display: inline;
     counter-reset: definitions;
}
 .dictionary-style dt+dt:before {
     content: ", ";
     margin-left: -0.2em;
}
 .dictionary-style dd {
     display: block;
     counter-increment: definitions;
}
 .dictionary-style dd:before {
     content: counter(definitions, decimal) ". ";
}
 .pull-quote {
     position: relative;
     padding: 2.1rem 3rem 2.1rem 0px;
}
 .pull-quote:before, .pull-quote:after {
     height: 1em;
     position: absolute;
     font-size: 10rem;
     font-family: arial, sans-serif;
     color: rgba(0, 0, 0, 0.3);
}
 .pull-quote:before {
     content: "\201c";
     top: 33px;
     left: 0;
}
 .pull-quote:after {
     content: '\201d';
     bottom: -33px;
     right: 0;
}
 .pull-quote blockquote {
     margin: 0;
}
 .pull-quote blockquote:before {
     content: none;
}
 .stats-tabs {
     padding: 0;
     margin: 3rem 0;
}
 .stats-tabs li {
     display: inline-block;
     margin: 0 1.5rem 3rem 0;
     padding: 0 1.5rem 0 0;
     border-right: 1px solid #ccc;
}
 .stats-tabs li:last-child {
     margin: 0;
     padding: 0;
     border: none;
}
 .stats-tabs li a {
     display: inline-block;
     font-size: 2.5rem;
     font-family: "montserrat-bold", sans-serif;
     border: none;
     color: #252525;
}
 .stats-tabs li a:hover {
     color: #ee2e24;
}
 .stats-tabs li a em {
     display: block;
     margin: .6rem 0 0 0;
     font-size: 1.4rem;
     font-family: "montserrat-regular", sans-serif;
     color: #4f4f4f;
}
/** * skillbars - (_skillbars.scss) * ------------------------------------------------------------------- */
 .skill-bars {
     list-style: none;
     margin: 6rem 0 3rem;
}
 .skill-bars li {
     height: .6rem;
     background: #a1a1a1;
     width: 100%;
     margin-bottom: 6rem;
     padding: 0;
     position: relative;
}
 .skill-bars li strong {
     position: absolute;
     left: 0;
     top: -3rem;
     font-family: "montserrat-bold", sans-serif;
     color: #313131;
     text-transform: uppercase;
     letter-spacing: .2rem;
     font-size: 1.5rem;
     line-height: 2.4rem;
}
 .skill-bars li .progress {
     background: #313131;
     position: relative;
     height: 100%;
}
 .skill-bars li .progress span {
     position: absolute;
     right: 0;
     top: -3.6rem;
     display: block;
     font-family: "montserrat-regular", sans-serif;
     color: white;
     font-size: 1.1rem;
     line-height: 1;
     background: #313131;
     padding: .6rem .6rem;
     border-radius: 3px;
}
 .skill-bars li .progress span::after {
     position: absolute;
     left: 50%;
     bottom: -5px;
     margin-left: -5px;
     border-right: 5px solid transparent;
     border-left: 5px solid transparent;
     border-top: 5px solid #313131;
     content: "";
}
 .skill-bars li .percent5 {
     width: 5%;
}
 .skill-bars li .percent10 {
     width: 10%;
}
 .skill-bars li .percent15 {
     width: 15%;
}
 .skill-bars li .percent20 {
     width: 20%;
}
 .skill-bars li .percent25 {
     width: 25%;
}
 .skill-bars li .percent30 {
     width: 30%;
}
 .skill-bars li .percent35 {
     width: 35%;
}
 .skill-bars li .percent40 {
     width: 40%;
}
 .skill-bars li .percent45 {
     width: 45%;
}
 .skill-bars li .percent50 {
     width: 50%;
}
 .skill-bars li .percent55 {
     width: 55%;
}
 .skill-bars li .percent60 {
     width: 60%;
}
 .skill-bars li .percent65 {
     width: 65%;
}
 .skill-bars li .percent70 {
     width: 70%;
}
 .skill-bars li .percent75 {
     width: 75%;
}
 .skill-bars li .percent80 {
     width: 80%;
}
 .skill-bars li .percent85 {
     width: 85%;
}
 .skill-bars li .percent90 {
     width: 90%;
}
 .skill-bars li .percent95 {
     width: 95%;
}
 .skill-bars li .percent100 {
     width: 100%;
}
/* =================================================================== * common and reusable styles * * ------------------------------------------------------------------- */
 .section-intro {
     text-align: center;
     position: relative;
     margin-bottom: 1.5rem;
}
 .section-intro h1 {
     font-family: "librebaskerville-bold", serif;
     font-size: 4.8rem;
     line-height: 1.375;
     color: #151515;
}
 .section-intro h3 {
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.8 rem;
     line-height: 1.667;
     color: rgba(242, 242, 242, 0.5);
     text-transform: uppercase;
     letter-spacing: .3rem;
     margin-bottom: 1.2rem;
}
 .section-intro .lead {
     font-family: "montserrat-regular", sans-serif;
     font-size: 1.8;
     line-height: 1.833;
}
 .section-intro.with-bottom-sep {
     padding-bottom: 4.2rem;
     position: relative;
}
 .section-intro.with-bottom-sep::after {
     display: inline-block;
     height: 1px;
     width: 200px;
     background-color: rgba(242, 242, 242, 0.1);
     text-align: center;
}
/* ------------------------------------------------------------------- * responsive: * section-intro * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
     .section-intro h1 {
         font-size: 4.4rem;
    }
     .section-intro .lead {
         font-size: 1.7rem;
    }
}
 @media only screen and (max-width: 768px) {
     .section-intro h1 {
         font-size: 4rem;
    }
     .section-intro h3 {
         font-size: 1.7rem;
    }
     .section-intro .lead {
         font-size: 1.5rem;
    }
}
 @media only screen and (max-width: 600px) {
     .section-intro h1 {
         font-size: 3.4rem;
    }
     .section-intro h3 {
         font-size: 1.7rem;
    }
     .section-intro .lead {
         font-size: 1.4rem;
    }
}
 @media only screen and (max-width: 500px) {
     .section-intro h3 {
         font-size: 1.5rem;
    }
     .section-intro .lead {
         font-size: 1.3rem;
    }
}
 @media only screen and (max-width: 400px) {
     .section-intro h1 {
         font-size: 3.1rem;
    }
     .section-intro .lead {
         font-size: 1.2rem;
    }
}
 .wide {
     max-width: 1300px;
}
 .narrow {
     max-width: 800px;
}
 .js .animate-this, .js .animate-intro {
     opacity: 0;
}
 .oldie .animate-this, .oldie .animate-intro .no-cssanimations .animate-this, .no-cssanimations .animate-intro {
     opacity: 1;
}
/* =================================================================== * header styles - (_layout.scss) * * ------------------------------------------------------------------- */
 header {
     width: 100%;
     height: auto;
     position: absolute;
     left: 0;
     top: 0;
     z-index: 700;
}
 header .row {
     height: auto;
     max-width: 1300px;
     position: relative;
}
/* ------------------------------------------------------------------- * header logo - (_layout.css) * ------------------------------------------------------------------- */
 header .header-logo {
     position: absolute;
     left: 32px;
     top: 42px;
     -moz-transition: all 1s ease-in-out;
     -o-transition: all 1s ease-in-out;
     -webkit-transition: all 1s ease-in-out;
     -ms-transition: all 1s ease-in-out;
     transition: all 1s ease-in-out;
}
 header .header-logo a {
     display: block;
     margin: 0;
     padding: 0;
     outline: 0;
     border: none;
     width: 200px;
     height: 85px;
     background: url("../images/CIS-Logo.png") no-repeat center;
     background-size: 200px 85px;
     font: 0/0 a;
     text-shadow: none;
     color: transparent;
     -moz-transition: all 0.5s ease-in-out;
     -o-transition: all 0.5s ease-in-out;
     -webkit-transition: all 0.5s ease-in-out;
     -ms-transition: all 0.5s ease-in-out;
     transition: all 0.5s ease-in-out;
}
/* ------------------------------------------------------------------- * menu trigger - (_layout.css) * ------------------------------------------------------------------- */
 #header-menu-trigger {
     display: block;
     position: fixed;
     right: 32px;
     top: 50px;
     height: 42px;
     width: 42px;
     line-height: 42px;
     font-family: "montserrat-regular", sans-serif;
     font-size: 1.4rem;
     text-transform: uppercase;
     letter-spacing: .2rem;
     color: rgba(255, 255, 255, 0.5);
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
}
 #header-menu-trigger.opaque {
     background-color: #000000;
}
 #header-menu-trigger.opaque .header-menu-text {
     background-color: #000000;
}
 #header-menu-trigger:hover, #header-menu-trigger:focus {
     color: #ffffff;
}
 #header-menu-trigger .header-menu-text {
     display: block;
     position: absolute;
     top: 0;
     left: -75px;
     width: 75px;
     text-align: center;
     background-color: black;
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
}
 #header-menu-trigger .header-menu-icon {
     display: block;
     height: 3px;
     width: 24px;
     background-color: #ffffff;
     position: absolute;
     top: 50%;
     right: 9px;
     margin-top: -1.5px;
}
 #header-menu-trigger .header-menu-icon::before, #header-menu-trigger .header-menu-icon::after {
     content: '';
     width: 100%;
     height: 100%;
     background-color: inherit;
     position: absolute;
     left: 0;
}
 #header-menu-trigger .header-menu-icon::before {
     top: -9px;
}
 #header-menu-trigger .header-menu-icon::after {
     bottom: -9px;
}
/* ------------------------------------------------------------------- * off-canvas menu - (_layout.scss) * ------------------------------------------------------------------- */
 #menu-nav-wrap {
     background: #0c0c0c;
     color: rgba(255, 255, 255, 0.25);
     font-size: 1.5rem;
     line-height: 1.6;
     padding: 3.6rem 3rem;
     height: 100%;
     width: 240px;
     position: fixed;
     right: 0;
     top: 0;
     visibility: hidden;
     overflow-y: auto;
     z-index: 800;
     -webkit-transform: translatez(0);
     -webkit-backface-visibility: hidden;
     -webkit-transform: translatex(100%);
     -ms-transform: translatex(100%);
     transform: translatex(100%);
     -moz-transition: all 0.4s ease-in-out;
     -o-transition: all 0.4s ease-in-out;
     -webkit-transition: all 0.4s ease-in-out;
     -ms-transition: all 0.4s ease-in-out;
     transition: all 0.4s ease-in-out;
}
 #menu-nav-wrap a, #menu-nav-wrap a:visited {
     color: rgba(255, 255, 255, 0.5);
}
 #menu-nav-wrap a:hover, #menu-nav-wrap a:focus, #menu-nav-wrap a:active {
     color: white;
}
 #menu-nav-wrap h3 {
     color: white;
     font-family: "montserrat-regular", sans-serif;
     font-size: 2rem;
     line-height: 1.5;
     margin-bottom: 1.5rem;
}
 #menu-nav-wrap .nav-list {
     font-family: "montserrat-regular", sans-serif;
     margin: 3.6rem 0 1.5rem 0;
     padding: 0 0 1.8rem 0;
     list-style: none;
     line-height: 3.6rem;
}
 #menu-nav-wrap .nav-list li {
     padding-left: 0;
     border-bottom: 1px dotted rgba(255, 255, 255, 0.03);
     line-height: 4.2rem;
}
 #menu-nav-wrap .nav-list li:first-child {
     border-top: 1px dotted rgba(255, 255, 255, 0.03);
}
 #menu-nav-wrap .nav-list li a {
     display: block;
}
 #menu-nav-wrap .nav-list li a:hover, #menu-nav-wrap .nav-list li a:focus {
     color: white;
}
 #menu-nav-wrap .header-social-list {
     list-style: none;
     display: inline-block;
     margin: 0;
     font-size: 2.1rem;
}
 #menu-nav-wrap .header-social-list li {
     margin-right: 12px;
     padding-left: 0;
     display: inline-block;
}
 #menu-nav-wrap .header-social-list li a {
     color: rgba(255, 255, 255, 0.15);
}
 #menu-nav-wrap .header-social-list li a:hover, #menu-nav-wrap .header-social-list li a:focus {
     color: white;
}
 #menu-nav-wrap .header-social-list li:last-child {
     margin: 0;
}
 #menu-nav-wrap .close-button {
     display: block;
     height: 30px;
     width: 30px;
     border-radius: 3px;
     background-color: rgba(0, 0, 0, 0.3);
     position: absolute;
     top: 36px;
     right: 30px;
     font: 0/0 a;
     text-shadow: none;
     color: transparent;
}
 #menu-nav-wrap .close-button span::before, #menu-nav-wrap .close-button span::after {
     content: "";
     display: block;
     height: 2px;
     width: 12px;
     background-color: #fff;
     position: absolute;
     top: 50%;
     left: 9px;
     margin-top: -1px;
}
 #menu-nav-wrap .close-button span::before {
     -webkit-transform: rotate(-45deg);
     -ms-transform: rotate(-45deg);
     transform: rotate(-45deg);
}
 #menu-nav-wrap .close-button span::after {
     -webkit-transform: rotate(45deg);
     -ms-transform: rotate(45deg);
     transform: rotate(45deg);
}
 #menu-nav-wrap .sponsor-text {
     font-family: "librebaskerville-regular", serif;
     font-size: 1.4rem;
     line-height: 3rem;
}
 #menu-nav-wrap .sponsor-text span {
     color: rgba(255, 255, 255, 0.5);
}
/* menu is open */
 .menu-is-open #menu-nav-wrap {
     -webkit-transform: translatex(0);
     -ms-transform: translatex(0);
     transform: translatex(0);
     visibility: visible;
     -webkit-overflow-scrolling: touch;
}
/* ------------------------------------------------------------------- * responsive: * header section * ------------------------------------------------------------------- */
 @media only screen and (max-width: 768px) {
     header .header-logo a {
         width: 140px;
         height: 59.5px;
         background-size: 140px 59.5px;
    }
}
 @media only screen and (max-width: 400px) {
     #header-menu-trigger .header-menu-text {
         display: none;
    }
}
/* =================================================================== * home - (_layout.scss) * * ------------------------------------------------------------------- */
 #home {
     width: 100%;
     height: 100%;
     background-color: #151515;
     background-image: url(../images/CIS-BG.jpg);
     background-repeat: no-repeat;
     background-position: center 30%;
     -webkit-background-size: cover;
     -moz-background-size: cover;
     background-size: cover;
     background-attachment: fixed;
     min-height: 804px;
     position: relative;
}
 #home .overlay {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     opacity: .1;
     background-color: #19191b;
}
 .home-content-table {
     width: 100%;
     height: 100%;
     display: table;
     position: relative;
     text-align: center;
}
 .home-content-tablecell {
     display: table-cell;
     vertical-align: middle;
     z-index: 500;
}
 .home-content-tablecell .row {
     position: relative;
     padding-top: 16.2rem;
     padding-bottom: 15rem;
}
 .home-content-tablecell h3 {
     font-family: "montserrat-bold", sans-serif;
     font-size: 2.5rem;
     color: white;
     text-transform: uppercase;
     margin: 0 0 .9rem 0;
}
 .home-content-tablecell h1 {
     font-family: "montserrat-bold", serif;
     font-size: 3.0rem;
     line-height: 1.133;
     color: #ffffff;
}
 .home-content-tablecell .more {
     margin: 4.8rem 0 0 0;
}
 .home-content-tablecell .more .button {
     border-color: #ffffff;
     color: #ffffff;
}
/* home social-list */
 .home-social-list {
     position: absolute;
     left: 48px;
     bottom: 54px;
     margin: 0;
     padding: 0;
     list-style: none;
     font-size: 2.4rem;
     line-height: 1.75;
     text-align: center;
}
 .home-social-list::before {
     display: block;
     content: "";
     width: 2px;
     height: 42px;
     background-color: rgba(255, 255, 255, 0.3);
     margin-left: auto;
     margin-right: auto;
     margin-bottom: 12px;
}
 .home-social-list li {
     padding-left: 0;
}
 .home-social-list li a, .home-social-list li a:visited {
     color: #ffffff;
}
 .home-social-list li a:hover, .home-social-list li a:focus, .home-social-list li a:active {
     color: #151515;
}
/* scroll down */
 .scrolldown {
     position: absolute;
     bottom: 0;
     right: 0;
     -webkit-transform: rotate(90deg);
     -ms-transform: rotate(90deg);
     transform: rotate(90deg);
     -webkit-transform-origin: right top 0;
     -ms-transform-origin: right top 0;
     transform-origin: right top 0;
     float: right;
}
 .scrolldown i {
     padding-left: 9px;
}
 .scrolldown a:hover, .scrolldown a:focus, .scrolldown a:active {
     color: #151515 !important;
}
 html[data-useragent*='msie 10.0'] .scrolldown, .oldie .scrolldown {
     display: none;
}
 .scroll-icon {
     display: inline-block;
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.4rem;
     text-transform: uppercase;
     letter-spacing: .3rem;
     color: #ffffff !important;
     background: transparent;
     position: relative;
     top: 36px;
     right: 42px;
     -webkit-animation: animate-it 3s ease infinite;
     animation: animate-it 3s ease infinite;
}
/* vertical animation */
 @-webkit-keyframes animate-it {
     0%, 60%, 80%, 100% {
         -webkit-transform: translatex(0);
    }
     20% {
         -webkit-transform: translatex(-5px);
    }
     40% {
         -webkit-transform: translatex(20px);
    }
}
 @keyframes animate-it {
     0%, 60%, 80%, 100% {
         -webkit-transform: translatex(0);
    }
     20% {
         -webkit-transform: translatex(-5px);
    }
     40% {
         -webkit-transform: translatex(20px);
    }
}
/* ------------------------------------------------------------------- * responsive: * home section * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1200px) {
     .home-content-tablecell h3 {
         font-size: 2.5rem;
    }
     .home-content-tablecell h1 {
         font-size: 3.0rem;
    }
}
 @media only screen and (max-width: 1024px) {
     .home-content-tablecell h3 {
         font-size: 2.3rem;
    }
     .home-content-tablecell h1 {
         font-size: 2.8rem;
    }
}
 @media only screen and (max-width: 768px) {
     .home-content-tablecell .row {
         max-width: 600px;
    }
     .home-content-tablecell h3 {
         font-size: 2.1rem;
    }
     .home-content-tablecell h1 {
         font-size: 2.6rem;
    }
     .home-content-tablecell h1 br {
         display: none;
    }
     .home-social-list {
         left: 36px;
         bottom: 30px;
         font-size: 2.1rem;
    }
     .home-social-list::before {
         height: 30px;
    }
     .scrolldown .scroll-icon {
         font-size: 1.2rem;
         top: 24px;
         right: 10px;
    }
}
 @media only screen and (max-width: 600px) {
     #home {
         min-height: 702px;
    }
     .home-content-tablecell .row {
         max-width: 480px;
         padding-top: 12rem;
         padding-bottom: 12rem;
    }
     .home-content-tablecell h3 {
         font-size: 1.9rem;
    }
     .home-content-tablecell h1 {
         font-size: 2.4rem;
    }
}
 @media only screen and (max-width: 500px) {
     .home-content-tablecell .row {
         max-width: 420px;
    }
     .home-content-tablecell h3 {
         font-size: 1.7rem;
    }
     .home-content-tablecell h1 {
         font-size: 2.2rem;
    }
     .home-social-list {
         left: 30px;
         bottom: 30px;
         font-size: 1.8rem;
    }
     .home-social-list::before {
         height: 24px;
    }
}
 @media only screen and (max-width: 400px) {
     #home {
         min-height: 654px;
    }
     .home-content-tablecell .row {
         padding-top: 4.8rem;
         padding-bottom: 10.8rem;
    }
     .home-content-tablecell h3 {
         font-size: 1.5rem;
    }
     .home-content-tablecell h1 {
         font-size: 2.0rem;
    }
}
/* =================================================================== * about - (_layout.scss) * * ------------------------------------------------------------------- */
 #about {
     position: relative;
     padding: 4.2rem 0 12rem;
     background-color: #ffffff;
     min-height: 696px;
     text-align: center;
}
 #about .about-wrap {
     max-width: 850px;
}
 #about span {
     color: #000000;
}
 #about h3 {
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.8rem;
     line-height: 1.667;
     color: #ee2e24;
     text-transform: uppercase;
     letter-spacing: .3rem;
     position: relative;
}
 #about h3::before {
     display: block;
     content: "";
     width: 3px;
     height: 9.6rem;
     background-color: rgba(149, 149, 149, 0.7);
     margin: 0 auto 2.4rem;
}
 #about .lead {
     font-family: "librebaskerville-bold", serif;
     font-size: 1.9rem;
     line-height: 1.9;
     color: #000000;
     margin-top: 6rem;
     text-align: justify;
     text-justify: inter-word;
}
 #about .about-content {
     margin-top: 5rem;
}
 #about .about-content img {
     max-width: 80%;
     height: auto;
}
/* ------------------------------------------------------------------- * responsive: * about * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
     #about {
         min-height: 636px;
    }
     #about .about-wrap {
         max-width: 800px;
    }
     #about .lead {
         font-size: 1.8rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 900px) {
     #about .about-wrap {
         max-width: 720px;
    }
     #about .lead {
         font-size: 1.7rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 768px) {
     #about h3 {
         font-size: 1.7rem;
    }
     #about .about-wrap {
         max-width: 600px;
    }
     #about .lead {
         font-size: 1.6rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 600px) {
     #about {
         min-height: auto;
    }
     #about .about-wrap {
         max-width: 500px;
    }
     #about .lead {
         margin-top: 4.8rem;
         font-size: 1.5rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 500px) {
     #about h3 {
         font-size: 1.5rem;
    }
     #about .lead {
         font-size: 1.4rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 400px) {
     #about {
         padding: 4.2rem 0 9.6rem;
    }
     #about .about-wrap {
         max-width: 380px;
    }
     #about .lead {
         font-size: 1.3rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
/* =================================================================== * accommodation - (_layout.scss) * * ------------------------------------------------------------------- */
 #accommodation {
     background-color: #000000;
     min-height: 800px;
     position: relative;
     padding: 15rem 0 15rem;
     color: #ffffff;
     font-size: 1.3rem;
     line-height: 3rem;
}
 #accommodation .overlay {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}
 #accommodation .gradient-overlay {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     opacity: .4;
     background: -moz-linear-gradient(top, rgba(0, 0, 0, 0.85) 0%, transparent 100%);
     background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.85) 0%, transparent 100%);
     background: linear-gradient(to bottom, rgba(0, 0, 0, 0.85) 0%, transparent 100%);
     filter: progid:dximagetransform.microsoft.gradient( startcolorstr='#d9000000', endcolorstr='#00000000', gradienttype=0);
}
 #accommodation .section-intro h3 {
     color: rgba(242, 242, 242, 0.5);
}
 #accommodation .section-intro h1 {
     color: #ffffff;
}
 #accommodation .section-intro .lead {
     color: rgba(242, 242, 242, 0.6);
     text-align: justify;
     text-justify: inter-word;
}
 #accommodation .accommodation-content {
     text-align: center;
     max-width: 1040px;
}
 #accommodation .accommodation-list {
     margin-top: 1.2rem;
}
 #accommodation .accommodation-list .accommodation-item {
     margin-bottom: 3rem;
     padding: 0 50px;
}
 #accommodation .accommodation-list .accommodation-item p {
     color: rgba(242, 242, 242, 0.5);
     text-align: justify;
     text-justify: inter-word;
}
 #accommodation .accommodation-list .icon {
     display: inline-block;
     margin-bottom: 1.5rem;
}
 #accommodation .accommodation-list .icon i {
     font-size: 5.4rem;
     color: #ee2e24;
}
 #accommodation .accommodation-list .h05 {
     font-size: 1.7rem;
     line-height: 1.765;
     color: #ffffff;
     margin-bottom: 3rem;
}
/* ------------------------------------------------------------------- * responsive: * accommodation * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
     #accommodation .accommodation-list .accommodation-item {
         padding: 0 40px;
    }
}
 @media only screen and (max-width: 900px) {
     #accommodation .accommodation-list .accommodation-item {
         padding: 0 30px;
    }
}
 @media only screen and (max-width: 768px) {
     #accommodation {
         padding: 12rem 0 12rem;
    }
     #accommodation .accommodation-content {
         max-width: 500px;
    }
     #accommodation .accommodation-list .accommodation-item {
         padding: 0 15px;
    }
     #accommodation .accommodation-list .icon i {
         font-size: 5.1rem;
    }
}
 @media only screen and (max-width: 600px) {
     #accommodation .accommodation-list .accommodation-item {
         padding: 0 10px;
    }
     #accommodation .accommodation-list .icon i {
         font-size: 5rem;
    }
}
 @media only screen and (max-width: 400px) {
     #accommodation .accommodation-list .accommodation-item {
         padding: 0;
    }
}
/* =================================================================== * gallery - (_layout.scss) * * ------------------------------------------------------------------- */
 #gallery {
     background: #ffffff;
     min-height: 800px;
     position: relative;
     padding: 0 0 200px 0;
}
 #gallery .intro-wrap {
     padding: 15rem 0 21rem;
     background: #111111;
}
 #gallery .section-intro h3 {
     color: rgba(242, 242, 242, 0.5);
}
 #gallery .section-intro h1 {
     color: #ffffff;
}
 #gallery .section-intro .lead {
     color: rgba(242, 242, 242, 0.6);
     text-align: justify;
}
 #gallery .gallery-content {
     margin-top: -22.2rem;
}
 #gallery .bricks-wrapper:before, #gallery .bricks-wrapper:after {
     content: "";
     display: table;
}
 #gallery .bricks-wrapper:after {
     clear: both;
}
 #gallery .bricks-wrapper .brick {
     float: left;
     width: 50%;
     padding: 0;
     margin: 0;
}
 #gallery .bricks-wrapper .brick:nth-child(2n+1) {
     clear: both;
}
/* ------------------------------------------------------------------- * masonry entries - (_layout.css) * ------------------------------------------------------------------- */
 .bricks-wrapper .item-wrap {
     position: relative;
     overflow: hidden;
}
 .bricks-wrapper .item-wrap .overlay {
     cursor: zoom-in;
}
 .bricks-wrapper .item-wrap .overlay img {
     vertical-align: bottom;
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
}
 .bricks-wrapper .item-wrap .overlay::before {
     content: "";
     display: block;
     background: rgba(0, 0, 0, 0.8);
     opacity: 0;
     visibility: hidden;
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     -moz-transition: all 0.5s ease-in-out;
     -o-transition: all 0.5s ease-in-out;
     -webkit-transition: all 0.5s ease-in-out;
     -ms-transition: all 0.5s ease-in-out;
     transition: all 0.5s ease-in-out;
     z-index: 1;
}
 .bricks-wrapper .item-wrap .overlay::after {
     content: "...";
     font-family: georgia, serif;
     font-size: 3rem;
     z-index: 1;
     display: block;
     height: 30px;
     width: 30px;
     line-height: 30px;
     margin-left: -15px;
     margin-top: -15px;
     position: absolute;
     left: 50%;
     top: 50%;
     text-align: center;
     color: #ffffff;
     opacity: 0;
     visibility: hidden;
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
     -webkit-transform: scale(0.5);
     -ms-transform: scale(0.5);
     transform: scale(0.5);
}
 .bricks-wrapper .item-wrap .item-text {
     position: absolute;
     top: 0;
     left: 0;
     padding: 3.6rem 0 0 3rem;
     margin-right: 6rem;
     z-index: 3;
}
 .bricks-wrapper .item-wrap .item-text .folio-title {
     color: #ffffff;
     font-size: 2.2rem;
     line-height: 1.364;
}
 .bricks-wrapper .item-wrap .item-text .folio-types {
     font-family: "montserrat-regular", sans-serif;
     font-size: 1.1rem;
     line-height: 1.5rem;
     text-transform: uppercase;
     letter-spacing: .1rem;
     color: rgba(255, 255, 255, 0.7);
     display: block;
}
 .bricks-wrapper .item-wrap .details-link {
     display: block;
     background-color: transparent;
     border: 1px solid rgba(255, 255, 255, 0.3);
     height: 4.6rem;
     width: 4.6rem;
     line-height: 4.6rem;
     color: white;
     text-align: center;
     z-index: 2;
     border-radius: 3px;
     position: absolute;
     top: 3.6rem;
     right: 3rem;
}
 .bricks-wrapper .item-wrap .details-link i {
     font-size: 2rem;
     line-height: 4.2rem;
}
 .bricks-wrapper .item-wrap .details-link:hover, .bricks-wrapper .item-wrap .details-link:focus {
     background-color: #ffffff;
     color: #000000;
}
 .bricks-wrapper .item-wrap .item-text, .bricks-wrapper .item-wrap .details-link {
     opacity: 0;
     visibility: hidden;
     -webkit-transform: translatey(100%);
     -ms-transform: translatey(100%);
     transform: translatey(100%);
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
}
 .bricks-wrapper .item-wrap:hover .overlay::before {
     opacity: 1;
     visibility: visible;
}
 .bricks-wrapper .item-wrap:hover .overlay::after {
     opacity: 1;
     visibility: visible;
     -webkit-transform: scale(1);
     -ms-transform: scale(1);
     transform: scale(1);
}
 .bricks-wrapper .item-wrap:hover .overlay img {
     -webkit-transform: scale(1.05);
     -ms-transform: scale(1.05);
     transform: scale(1.05);
}
 .bricks-wrapper .item-wrap:hover .item-text, .bricks-wrapper .item-wrap:hover .details-link {
     opacity: 1;
     visibility: visible;
     -webkit-transform: translatex(0);
     -ms-transform: translatex(0);
     transform: translatex(0);
}
/* ------------------------------------------------------------------- * light gallery overrides - (_layout.css) * ------------------------------------------------------------------- */
 .lg-sub-html {
     padding: 12px 20% 15px;
}
 .lg-sub-html a, .lg-sub-html a:visited {
     color: #ee2e24;
}
 .lg-sub-html a:hover, .lg-sub-html a:focus {
     color: #ffffff;
}
 @media only screen and (max-width: 1024px) {
     .lg-sub-html {
         padding: 12px 15% 15px;
    }
}
 @media only screen and (max-width: 768px) {
     .lg-sub-html {
         padding: 12px 40px 15px;
    }
}
 .lg-sub-html h4 {
     color: #ffffff;
     font-family: "montserrat-regular", sans-serif;
     font-size: 1.8rem;
     line-height: 1.333;
}
 .lg-sub-html p {
     font-family: "montserrat-regular", sans-serif;
     font-size: 1.3rem;
     line-height: 2.4rem;
     margin: .6rem 0 0;
     color: rgba(255, 255, 255, 0.6);
}
 .lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover {
     border-color: #ee2e24;
}
 .lg-progress-bar .lg-progress {
     background-color: #ffffff;
}
 #lg-counter {
     font-family: "montserrat-regular", sans-serif;
}
/* ------------------------------------------------------------------- * responsive: * gallery * ------------------------------------------------------------------- */
 @media only screen and (max-width: 768px) {
     #gallery .intro-wrap {
         padding: 12rem 0 21rem;
    }
}
 @media only screen and (max-width: 600px) {
     #gallery .bricks-wrapper .brick {
         float: none;
         width: 100%;
    }
     .bricks-wrapper .item-wrap .item-text .folio-title {
         font-size: 2rem;
         line-height: 1.5;
    }
}
/* =================================================================== * contact - (_layout.scss) * * ------------------------------------------------------------------- */
 #contact {
     background-color: #111111;
     background-image: url(../images/CIS-Contact.jpg);
     background-repeat: no-repeat;
     background-position: center;
     -webkit-background-size: cover;
     -moz-background-size: cover;
     background-size: cover;
     padding: 12rem 0 12rem;
     position: relative;
}
 #contact .overlay {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     opacity: .75;
     background-color: #000000;
}
 #contact .section-intro h1 {
     color: white;
}
 #contact .section-intro h3 {
     color: rgba(242, 242, 242, 0.5);
}
 #contact .section-intro p.lead {
     color: rgba(242, 242, 242, 0.6);
     text-align: justify;
     text-justify: inter-word;
}
 .contact-content {
     max-width: 1024px;
     margin-top: 3rem;
     color: #ffffff;
     z-index: 600;
     position: relative;
}
 .contact-content h5 {
     color: #ffffff;
     margin-bottom: 5.4rem;
}
 .contact-content h6 {
     color: #555555;
     font-size: 1.4rem;
}
/* contact info */
 .contact-info .cinfo {
     margin-bottom: 4.2rem;
}
/* contact form */
 #contact form {
     margin-top: 0;
     margin-bottom: 3rem;
}
 #contact form .form-field {
     position: relative;
}
 #contact form .form-field:before, #contact form .form-field:after {
     content: "";
     display: table;
}
 #contact form .form-field:after {
     clear: both;
}
 #contact form .form-field label {
     font-family: "montserrat-bold", sans-serif;
     font-size: 1rem;
     line-height: 1.4;
     position: absolute;
     bottom: 1.5rem;
     right: 0;
     text-transform: uppercase;
     letter-spacing: .05rem;
     padding: .6rem 2rem .6rem 2rem;
     margin: 0;
     color: #000000;
     background: #ee2e24;
     border-radius: 3px;
}
 #contact form .form-field label::after {
     position: absolute;
     right: 15px;
     top: 1px;
     margin-top: -6px;
     border-left: 5px solid transparent;
     border-right: 5px solid transparent;
     border-bottom: 5px solid #ee2e24;
     content: "";
}
 #contact form ::-webkit-input-placeholder {
     color: rgba(255, 255, 255, 0.3);
}
 #contact form :-moz-placeholder {
     color: rgba(255, 255, 255, 0.3);
    /* firefox 18- */
}
 #contact form ::-moz-placeholder {
     color: rgba(255, 255, 255, 0.3);
    /* firefox 19+ */
}
 #contact form :-ms-input-placeholder {
     color: rgba(255, 255, 255, 0.3);
}
 #contact form .placeholder {
     color: rgba(255, 255, 255, 0.3) !important;
}
 #contact input[type="text"], #contact input[type="password"], #contact input[type="email"], #contact textarea {
     width: 100%;
     color: rgba(255, 255, 255, 0.6);
     margin-bottom: 3.6rem;
     background: rgba(255, 255, 255, 0.1);
}
 #contact input[type="text"]:focus, #contact input[type="password"]:focus, #contact input[type="email"]:focus {
     color: #ffffff;
}
 #contact textarea {
     min-height: 21rem;
     padding: 1.8rem 2rem;
}
 #contact textarea:focus {
     color: #ffffff;
}
 #contact button.submitform {
     font-size: 1.5rem;
     display: block;
     letter-spacing: .2rem;
     height: 6rem;
     line-height: 6rem;
     padding: 0 3rem;
     width: 100%;
     background: #ee2e24;
     color: #000000;
     margin-top: .6rem;
}
 #contact button.submitform:hover, #contact button.submitform:focus {
     background: #f0453c;
}
 #message-warning, #message-success {
     display: none;
     background: #000000;
     padding: 3rem;
     margin-bottom: 3.6rem;
     width: 100%;
}
 #message-warning {
     color: #d32b2e;
}
 #message-success {
     color: #ee2e24;
}
 #message-warning i, #message-success i {
     margin-right: 10px;
}
/* form loader */
 #submit-loader {
     display: none;
     position: relative;
     left: 0;
     top: 1.8rem;
     width: 100%;
     text-align: center;
     margin-bottom: 4.2rem;
}
 #submit-loader .text-loader {
     display: none;
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.4rem;
     color: #ffffff;
     letter-spacing: .2rem;
     text-transform: uppercase;
}
 .oldie #submit-loader .s-loader {
     display: none;
}
 .oldie #submit-loader .text-loader {
     display: block;
}
/* --------------------------------------------------------------- * loader animation - (_layout.scss) * --------------------------------------------------------------- */
 .s-loader {
     margin: 1.2rem auto 3rem;
     width: 70px;
     text-align: center;
     -webkit-transform: translatex(0.45rem);
     -ms-transform: translatex(0.45rem);
     transform: translatex(0.45rem);
}
 .s-loader>div {
     width: 9px;
     height: 9px;
     background-color: #ffffff;
     border-radius: 100%;
     display: inline-block;
     margin-right: .9rem;
     -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
     animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}
 .s-loader .bounce1 {
     -webkit-animation-delay: -0.32s;
     animation-delay: -0.32s;
}
 .s-loader .bounce2 {
     -webkit-animation-delay: -0.16s;
     animation-delay: -0.16s;
}
 @-webkit-keyframes sk-bouncedelay {
     0%, 80%, 100% {
         -webkit-transform: scale(0);
         -ms-transform: scale(0);
         transform: scale(0);
    }
     40% {
         -webkit-transform: scale(1);
         -ms-transform: scale(1);
         transform: scale(1);
    }
}
 @keyframes sk-bouncedelay {
     0%, 80%, 100% {
         -webkit-transform: scale(0);
         -ms-transform: scale(0);
         transform: scale(0);
    }
     40% {
         -webkit-transform: scale(1);
         -ms-transform: scale(1);
         transform: scale(1);
    }
}
/* ------------------------------------------------------------------- * responsive: * contact * ------------------------------------------------------------------- */
 @media only screen and (max-width: 900px) {
     .contact-info {
         width: 38%;
    }
}
 @media only screen and (max-width: 768px) {
     .contact-content {
         max-width: 600px;
         text-align: center;
    }
     .contact-info {
         width: 100%;
         margin-top: 3.6rem;
    }
}
 @media only screen and (max-width: 600px) {
     .contact-content {
         max-width: 480px;
    }
}
 @media only screen and (max-width: 400px) {
     .contact-info {
         width: 100% !important;
         float: none !important;
         clear: both !important;
         margin-left: 0;
         margin-right: 0;
         padding: 0;
    }
}
/* =================================================================== * footer - (_layout.scss) * * ------------------------------------------------------------------- */
 footer {
     margin: 0 0 5.4rem 0;
     padding: 0;
     font-size: 1.5rem;
     color: rgba(255, 255, 255, 0.4);
}
 footer a, footer a:visited {
     color: #ffffff;
}
 footer a:hover, footer a:focus {
     color: #ee2e24;
}
 footer .row {
     max-width: 1024px;
}
 footer h4.h05 {
     color: #ffffff;
     position: relative;
     padding-bottom: 4.2rem;
     margin-bottom: 3.6rem;
}
 footer h4.h05::after {
     display: block;
     content: "";
     width: 100px;
     height: 1px;
     background-color: rgba(255, 255, 255, 0.1);
     position: absolute;
     bottom: 0;
     left: 0;
}
/* footer main * --------------------------------- */
 .footer-main {
     padding-top: 9.6rem;
     padding-bottom: 3rem;
}
 .footer-main ul {
     font-size: 1.5rem;
     margin-left: 0;
}
 .footer-main ul li {
     list-style: none;
     padding-left: 0;
}
 .footer-main ul a, .footer-main ul a:visited {
     color: rgba(255, 255, 255, 0.4);
}
 .footer-main ul a:hover, .footer-main ul a:focus {
     color: #ffffff;
}
 .footer-main .subscribe-form {
     position: relative;
}
 .footer-main #mc-form {
     margin: 0;
     padding: 0;
}
 .footer-main #mc-form input[type="email"] {
     height: 6rem;
     padding: 1.5rem 8rem 1.5rem 2rem;
     margin-bottom: 1.5rem;
     width: 100%;
     color: rgba(255, 255, 255, 0.6);
     background-color: rgba(0, 0, 0, 0.9);
}
 .footer-main #mc-form button {
     background-color: #ee2e24;
     color: #000000;
     width: 6rem;
     height: 6rem;
     line-height: 6rem;
     margin: 0;
     padding: 0;
     position: absolute;
     right: 0;
     top: 0;
}
 .footer-main #mc-form button:hover {
     background-color: #f0453c;
}
 .footer-main #mc-form button i {
     font-size: 2.6rem;
     line-height: 6rem;
     margin: 0;
     position: relative;
     left: .2rem;
}
 .footer-main #mc-form label {
     color: #ee2e24;
     font-family: "montserrat-regular", sans-serif;
}
/* footer bottom * --------------------------------- */
 .footer-bottom {
     margin-top: 3rem;
     text-align: center;
     font-family: "montserrat-regular", sans-serif;
     font-size: 1.4rem;
}
 .footer-bottom .copyright span {
     display: inline-block;
}
 .footer-bottom .copyright span::after {
     content: "|";
     display: inline-block;
     padding: 0 1rem 0 1.2rem;
     color: rgba(255, 255, 255, 0.1);
}
 .footer-bottom .copyright span:last-child::after {
     display: none;
}
 #go-top {
     position: fixed;
     bottom: 42px;
     right: 30px;
     z-index: 700;
     display: none;
}
 #go-top a {
     text-decoration: none;
     border: 0 none;
     display: block;
     height: 63px;
     width: 60px;
     line-height: 63px;
     text-align: center;
     background-color: #000000;
     color: #888;
     text-align: center;
     text-transform: uppercase;
     -moz-transition: all 0.3s ease-in-out;
     -o-transition: all 0.3s ease-in-out;
     -webkit-transition: all 0.3s ease-in-out;
     -ms-transition: all 0.3s ease-in-out;
     transition: all 0.3s ease-in-out;
}
 #go-top a i {
     font-size: 1.7rem;
     line-height: inherit;
}
 #go-top a:visited {
     background: #000000;
     color: #888;
}
 #go-top a:hover, #go-top a:focus {
     background: #000000;
     color: #ffffff;
}
/* ------------------------------------------------------------------- * responsive: * footer * ------------------------------------------------------------------- */
 @media only screen and (max-width: 768px) {
     #go-top {
         bottom: 0;
         right: 0;
    }
     .footer-main {
         text-align: center;
    }
     .footer-main .row {
         max-width: 480px;
    }
     .footer-main [class*="col-"] {
         margin-bottom: 3.6rem;
    }
     footer h4.h05 {
         padding-bottom: 3rem;
         margin-bottom: 3rem;
    }
     footer h4.h05::after {
         left: 50%;
         margin-left: -50px;
    }
}
 @media only screen and (max-width: 600px) {
     .footer-bottom {
         padding-bottom: .6rem;
    }
     .footer-bottom .copyright span {
         display: block;
    }
     .footer-bottom .copyright span::after {
         display: none;
    }
}
/* =================================================================== * terms and conditions - (_layout.scss) * * ------------------------------------------------------------------- */
 #terms-and-conditions {
     position: relative;
     padding: 4.2rem 0 12rem;
     background-color: #ffffff;
     min-height: 696px;
     text-align: center;
}
 #terms-and-conditions .terms-and-conditions-wrap {
     max-width: 850px;
}
 #terms-and-conditions span {
     color: #ee2e24;
}
 #terms-and-conditions h3 {
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.8rem;
     line-height: 1.667;
     color: #ee2e24;
     text-transform: uppercase;
     letter-spacing: .3rem;
     position: relative;
}
 #terms-and-conditions .lead {
     font-family: "librebaskerville-bold", serif;
     font-size: 1.9rem;
     line-height: 1.9;
     color: #000000;
     margin-top: 6rem;
     text-align: justify;
     text-justify: inter-word;
}
/* ------------------------------------------------------------------- * responsive: * terms and conditions * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
     #terms-and-conditions {
         min-height: 636px;
    }
     #terms-and-conditions .terms-and-conditions-wrap {
         max-width: 800px;
    }
     #terms-and-conditions .lead {
         font-size: 1.8rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 900px) {
     #terms-and-conditions .terms-and-conditions-wrap {
         max-width: 720px;
    }
     #terms-and-conditions .lead {
         font-size: 1.7rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 768px) {
     #terms-and-conditions h3 {
         font-size: 1.7rem;
    }
     #terms-and-conditions .terms-and-conditions-wrap {
         max-width: 600px;
    }
     #terms-and-conditions .lead {
         font-size: 1.6rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 600px) {
     #terms-and-conditions {
         min-height: auto;
    }
     #terms-and-conditions .terms-and-conditions-wrap {
         max-width: 500px;
    }
     #terms-and-conditions .lead {
         margin-top: 4.8rem;
         font-size: 1.5rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 500px) {
     #terms-and-conditions h3 {
         font-size: 1.5rem;
    }
     #terms-and-conditions .lead {
         font-size: 1.4rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 400px) {
     #terms-and-conditions {
         padding: 4.2rem 0 9.6rem;
    }
     #terms-and-conditions .terms-and-conditions-wrap {
         max-width: 380px;
    }
     #terms-and-conditions .lead {
         font-size: 1.3rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
/* =================================================================== * privacy policy - (_layout.scss) * * ------------------------------------------------------------------- */
 #privacy-policy {
     position: relative;
     padding: 4.2rem 0 12rem;
     background-color: #ffffff;
     min-height: 696px;
     text-align: center;
}
 #privacy-policy .privacy-policy-wrap {
     max-width: 850px;
}
 #privacy-policy span {
     color: #ee2e24;
}
 #privacy-policy h3 {
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.8rem;
     line-height: 1.667;
     color: #ee2e24;
     text-transform: uppercase;
     letter-spacing: .3rem;
     position: relative;
}
 #privacy-policy .lead {
     font-family: "librebaskerville-bold", serif;
     font-size: 1.9rem;
     line-height: 1.9;
     color: #000000;
     margin-top: 6rem;
     text-align: justify;
     text-justify: inter-word;
}
/* ------------------------------------------------------------------- * responsive: * privacy policy * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
     #privacy-policy {
         min-height: 636px;
    }
     #privacy-policy .privacy-policy-wrap {
         max-width: 800px;
    }
     #privacy-policy .lead {
         font-size: 1.8rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 900px) {
     #privacy-policy .privacy-policy-wrap {
         max-width: 720px;
    }
     #privacy-policy .lead {
         font-size: 1.7rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 768px) {
     #privacy-policy h3 {
         font-size: 1.7rem;
    }
     #privacy-policy .privacy-policy-wrap {
         max-width: 600px;
    }
     #privacy-policy .lead {
         font-size: 1.6rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 600px) {
     #privacy-policy {
         min-height: auto;
    }
     #privacy-policy .privacy-policy-wrap {
         max-width: 500px;
    }
     #privacy-policy .lead {
         margin-top: 4.8rem;
         font-size: 1.5rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 500px) {
     #privacy-policy h3 {
         font-size: 1.5rem;
    }
     #privacy-policy .lead {
         font-size: 1.4rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 400px) {
     #privacy-policy {
         padding: 4.2rem 0 9.6rem;
    }
     #privacy-policy .privacy-policy-wrap {
         max-width: 380px;
    }
     #privacy-policy .lead {
         font-size: 1.3rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
/* =================================================================== * reservation and cancellation policy - (_layout.scss) * * ------------------------------------------------------------------- */
 #reservation-and-cancellation-policy {
     position: relative;
     padding: 4.2rem 0 12rem;
     background-color: #ffffff;
     min-height: 696px;
     text-align: center;
}
 #reservation-and-cancellation-policy .reservation-and-cancellation-policy-wrap {
     max-width: 850px;
}
 #reservation-and-cancellation-policy span {
     color: #ee2e24;
}
 #reservation-and-cancellation-policy h3 {
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.8rem;
     line-height: 1.667;
     color: #ee2e24;
     text-transform: uppercase;
     letter-spacing: .3rem;
     position: relative;
}
 #reservation-and-cancellation-policy .lead {
     font-family: "librebaskerville-bold", serif;
     font-size: 1.9rem;
     line-height: 1.9;
     color: #000000;
     margin-top: 6rem;
     text-align: justify;
     text-justify: inter-word;
}
/* ------------------------------------------------------------------- * responsive: * reservation and cancellation policy * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
     #reservation-and-cancellation-policy {
         min-height: 636px;
    }
     #reservation-and-cancellation-policy .reservation-and-cancellation-policy-wrap {
         max-width: 800px;
    }
     #reservation-and-cancellation-policy .lead {
         font-size: 1.8rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 900px) {
     #reservation-and-cancellation-policy .reservation-and-cancellation-policy-wrap {
         max-width: 720px;
    }
     #reservation-and-cancellation-policy .lead {
         font-size: 1.7rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 768px) {
     #reservation-and-cancellation-policy h3 {
         font-size: 1.7rem;
    }
     #reservation-and-cancellation-policy .reservation-and-cancellation-policy-wrap {
         max-width: 600px;
    }
     #reservation-and-cancellation-policy .lead {
         font-size: 1.6rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 600px) {
     #reservation-and-cancellation-policy {
         min-height: auto;
    }
     #reservation-and-cancellation-policy .reservation-and-cancellation-policy-wrap {
         max-width: 500px;
    }
     #reservation-and-cancellation-policy .lead {
         margin-top: 4.8rem;
         font-size: 1.5rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 500px) {
     #reservation-and-cancellation-policy h3 {
         font-size: 1.5rem;
    }
     #reservation-and-cancellation-policy .lead {
         font-size: 1.4rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 400px) {
     #reservation-and-cancellation-policy {
         padding: 4.2rem 0 9.6rem;
    }
     #reservation-and-cancellation-policy .reservation-and-cancellation-policy-wrap {
         max-width: 380px;
    }
     #reservation-and-cancellation-policy .lead {
         font-size: 1.3rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
/* =================================================================== * online reservation - (_layout.scss) * * ------------------------------------------------------------------- */
 #online-reservation {
     position: relative;
     padding: 4.2rem 0 12rem;
     background-color: #faf7f3;
     min-height: 696px;
     text-align: center;
}
 #online-reservation .online-reservation-wrap {
     max-width: 850px;
}
 #online-reservation span {
     color: #ee2e24;
}
 #online-reservation h3 {
     font-family: "montserrat-bold", sans-serif;
     font-size: 1.8rem;
     line-height: 1.667;
     color: #ee2e24;
     text-transform: uppercase;
     letter-spacing: .3rem;
     position: relative;
}
 #online-reservation .lead {
     font-family: "librebaskerville-bold", serif;
     font-size: 1.9rem;
     line-height: 1.9;
     color: #000000;
     margin-top: 6rem;
     text-align: justify;
     text-justify: inter-word;
}
/* ------------------------------------------------------------------- * responsive: * online reservation * ------------------------------------------------------------------- */
 @media only screen and (max-width: 1024px) {
     #online-reservation {
         min-height: 636px;
    }
     #online-reservation .online-reservation-wrap {
         max-width: 800px;
    }
     #online-reservation .lead {
         font-size: 1.8rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 900px) {
     #online-reservation .online-reservation-wrap {
         max-width: 720px;
    }
     #online-reservation .lead {
         font-size: 1.7rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 768px) {
     #online-reservation h3 {
         font-size: 1.7rem;
    }
     #online-reservation .online-reservation-wrap {
         max-width: 600px;
    }
     #online-reservation .lead {
         font-size: 1.6rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 600px) {
     #online-reservation {
         min-height: auto;
    }
     #online-reservation .online-reservation-wrap {
         max-width: 500px;
    }
     #online-reservation .lead {
         margin-top: 4.8rem;
         font-size: 1.5rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 500px) {
     #online-reservation h3 {
         font-size: 1.5rem;
    }
     #online-reservation .lead {
         font-size: 1.4rem;
         text-align: justify;
         text-justify: inter-word;
    }
}
 @media only screen and (max-width: 400px) {
     #online-reservation {
         padding: 4.2rem 0 9.6rem;
    }
     #online-reservation .online-reservation-wrap {
         max-width: 380px;
    }
     #online-reservation .lead {
         font-size: 1.3rem;
         text-align: justify;
         text-justify: inter-word;
    }
}