/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */

html {
    font-family: sans-serif; /* 1 */
    -ms-text-size-adjust: 100%; /* 2 */
    -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove default margin.
 */

body {
    margin: 0;
    /*background-color: red;*/
}

.location-div {
    color: #fff;
    font-weight: bold;
    text-align: center;
    background: #ED8336;
    padding: 10px;
}

#select-states {
    border: solid 2px;
    border-radius: 8px;
    font-weight: normal;
    position: relative;
    width: 230px;
    margin: 10px auto;
    text-align: center;
    padding: 2px;
}

.no-location {
    cursor: pointer;
    padding: 5px;
    border-radius: 10px;
}

.state-list {
    /*height: 50vh;
        overflow-y:scroll;*/
    margin: 0;
    padding: 0;
    width: 224px;
    background: #F8F8F8;
    color: #2A2424;
    display: none;
    position: absolute;
    top: 48px;
    left: 0px;
    z-index: 200;
    border-radius: 8px;
}

.state-list li {
    cursor: pointer;
    margin: 0;
    padding: 5px 0;
    list-style: none;
}

.state-list li:hover {
    background: #e0e0e0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
    display: inline-block; /* 1 */
    vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
    display: none;
    height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */

[hidden],
template {
    display: none;
}

/* Links
   ========================================================================== */

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

a {
    background-color: transparent;
}

/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */

a:active,
a:hover {
    outline: 0;
}

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

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
    border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
    font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
    font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */

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

/**
 * Address styling not present in IE 8/9.
 */

mark {
    background: #ff0;
    color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

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

sup {
    top: -.5em;
}

sub {
    bottom: -.25em;
}

/* Embedded content
   ========================================================================== */
a.blue {
    color: #005ABB;
    opacity: 1;
}

a.blue:hover {
    color: #ed8336;
    opacity: 1;
}

.center-block {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0px;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    display: flex;
}

.view-details {
    font-size: 1rem;
    position: absolute;
    left: 120px;
    top: 50px;
    font-weight: bold;
    letter-spacing: 1px;
    color: #ff6a00;
    display: none;
}

#result {
    text-align: center;
    margin-top: 40px !important;
}

.errorMsg {
    padding: 10px;
    text-align: center;
    font-weight: bold;
    display: none;
}

.ArrowHours {
    display: inline-block !important;
}

.field-validation-error {
    display: block;
    color: red;
    margin-top: 5px;
}

.btnWarn {
    background-color: #ED8336 !important;
    border-color: #ED8336 !important;
}

.button-links button {
    background: #fff;
    color: #2d2d2d;
    margin: 25px 10px 0;
    padding: 10px 25px;
}

.button-links button:hover {
    background: #2d2d2d;
    color: #fff;
}

.print-div .info-row {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    background: #fff !important;
}

.insurance-div .info-row {
    padding-bottom: 20px !important;
}

.field_error, .field_success {
    color: #fff;
    margin-top: 10px;
}

.submit-wrap input {
    margin: 0 10px !important;
}

.place-card, .place-card-large {
    display: none;
}

.our-story .container {
    padding: 0px 50px 0px 50px;
}

.our-story strong {
    font-size: 1rem;
}

.our-story p {
    font-size: 1rem;
    font-weight: 300;
}

.our-story li {
    font-size: 1rem;
    font-weight: 300;
}

.our-story h4 {
    font-size: 1.5rem;
    font-weight: 700;
    color: rgba(34, 34, 34, 8);
    display: block;
}

.vision-plans-body .pdf-links span {
    font-weight: 500;
}

.vision-plans-body .pdf-links span {
    display: block;
    font-weight: 500;
}

.vision-plans-body .pdf-links {
    margin-bottom: 1em;
}

.vision-plans-body .i-info {
    margin-bottom: 1em;
}

.vision-plans-body .i-info span {
    font-size: .875rem;
    font-style: italic;
    display: block;
}

.vision-plans-body a, .vision-plans-intro a {
    font-weight: 500;
}

.vision-plans-intro span {
    font-weight: 500;
}

.privacy-notice-body .privacy-notice-title {
    margin-bottom: 0.1em;
    font-weight: 400;
}

@media print {
    .print-div {
        display: block !important;
    }
}

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
    border: 0;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
    overflow: hidden;
}

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

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
    margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
    box-sizing: content-box;
    height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
    overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

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

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
    color: inherit; /* 1 */
    font: inherit; /* 2 */
    margin: 0; /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
    overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
    text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button; /* 2 */
    cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
    cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
    line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

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

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

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

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */

input[type="search"] {
    -webkit-appearance: textfield; /* 1 */
    box-sizing: content-box; /* 2 */
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: .35em .625em .75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
    border: 0; /* 1 */
    padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
    overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
    font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

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

td,
th {
    padding: 0;
}

#nav > ul,
.drop .drop-wrap .row .category ul,
.drop .drop-wrap .list,
.log-res-block,
#footer .footer-nav ul,
#footer .social-networks,
.slick-dots,
.tabset,
.list-info-block .list-block ul,
.aside-list,
.select-appointment-block .radiolist-holder .radiolist,
.account-list-accordion,
.account-list,
.store-result-block .list-result {
    margin: 0;
    padding: 0;
    list-style: none;
}

.clearfix:after,
.container:after,
.banner:after,
.drop .drop-wrap:after,
.drop .drop-wrap .row .col:after,
#footer .footer-t:after,
#footer .footer-r:after,
#footer .footer-link:after,
.schedule-block .two-cols:after,
.schedule-block .schedule-container .btm-row:after,
.two-columns:after,
.two-columns .giveaway-block .img-wrap:after,
.two-columns .giveaway-block .text-box:after,
.offers-discount-block .top-block:after,
.select-appointment-block .row:after,
.confirm-block .info-row:after,
.account-list-accordion .content-holder:after,
.store-result-block:after,
.store-result-block .list-result:after,
.store-result-block .list-result li:after {
    content: "";
    display: block;
    clear: both;
}

a,
a:before,
a:after,
button,
input[type="button"],
input[type="reset"],
input[type="file"],
input[type="submit"],
.slick-dots button,
.collection-carousel .slick-arrow.slick-prev:before,
.collection-carousel .slick-arrow.slick-next:before {
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.ellipsis {
    white-space: nowrap; /* 1 */
    text-overflow: ellipsis; /* 2 */
    overflow: hidden;
}

html {
    box-sizing: border-box;
}

*,
*:before,
*:after {
    box-sizing: inherit;
}

* {
    max-height: 1000000px;
}

body {
    color: #000;
    background: #fff;
    font: 1.125rem/1.389 "gillsans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
    font-family: Arial, sans-serif;
    /*min-width: 320px;*/
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: top;
}

.gm-style img {
    max-width: none;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6,
.h {
    font-family: inherit;
    font-weight: 400;
    margin: 0 0 .5em;
    color: inherit;
    letter-spacing: 0;
}

h1,
.h1 {
    font-size: 3.75rem;
    line-height: 1.0333;
    margin-bottom: 16px;
}

h2,
.h2 {
    font-size: 3.125rem;
    letter-spacing: 1.04px;
    letter-spacing: 0;
    margin-bottom: 8px;
}

h3,
.h3 {
    font-size: 2.625rem;
}

h4,
.h4 {
    font-size: 1.3125rem;
}

h5,
.h5 {
    font-size: 1.125rem;
}

h6,
.h6 {
    font-size: 1rem;
}

p {
    margin: 2em 0 0 0;
}

a {
    color: #ed8336;
    opacity: 1;
    /*text-decoration: none;*/
}

a:hover,
a:focus {
    /*text-decoration: none;*/
    color: #dc6814;
    opacity: 1;
}

form,
fieldset {
    margin: 0;
    padding: 0;
    border-style: none;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="search"],
input[type="password"],
textarea {
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    box-sizing: border-box;
    border: none;
    padding: .4em .7em;
    outline: none;
}

input[type="text"]:focus,
input[type="tel"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
textarea:focus {
    border-color: #000;
}

input[type="text"] ::-webkit-input-placeholder,
input[type="tel"] ::-webkit-input-placeholder,
input[type="email"] ::-webkit-input-placeholder,
input[type="search"] ::-webkit-input-placeholder,
input[type="password"] ::-webkit-input-placeholder,
textarea ::-webkit-input-placeholder {
    color: #999;
    opacity: 1;
}

input[type="text"] ::-moz-placeholder,
input[type="tel"] ::-moz-placeholder,
input[type="email"] ::-moz-placeholder,
input[type="search"] ::-moz-placeholder,
input[type="password"] ::-moz-placeholder,
textarea ::-moz-placeholder {
    opacity: 1;
    color: #999;
}

input[type="text"] :-moz-placeholder,
input[type="tel"] :-moz-placeholder,
input[type="email"] :-moz-placeholder,
input[type="search"] :-moz-placeholder,
input[type="password"] :-moz-placeholder,
textarea :-moz-placeholder {
    color: #999;
    opacity: 1;

}

input[type="text"] :-ms-input-placeholder,
input[type="tel"] :-ms-input-placeholder,
input[type="email"] :-ms-input-placeholder,
input[type="search"] :-ms-input-placeholder,
input[type="password"] :-ms-input-placeholder,
textarea :-ms-input-placeholder {
    color: #999;
    opacity: 1;

}

input[type="text"] .placeholder,
input[type="tel"] .placeholder,
input[type="email"] .placeholder,
input[type="search"] .placeholder,
input[type="password"] .placeholder,
textarea .placeholder {
    color: #999;
    opacity: 1;

}

select {
    -webkit-border-radius: 0;
}

textarea {
    resize: vertical;
    vertical-align: top;
}

button,
input[type="button"],
input[type="reset"],
input[type="file"],
input[type="submit"] {
    background-color: #005ABB;
    padding: 1rem 2rem;
    border-radius: 7px;
    color: #fff;
    border: 2px solid #005ABB;
    font-size: .875rem;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="file"]:hover,
input[type="file"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
    background-color: #fff;
    color: #005ABB;
    border-color: #005ABB;
}

input[type="submit"] {
    min-width: 301px;
}

/* custom select styles */

.jcf-select {
    display: inline-block;
    vertical-align: top;
    position: relative;
    background: #fff;
    width: 100%;
    letter-spacing: 0;
}

.jcf-select select {
    z-index: 1;
    left: 0;
    top: 0;
}

.jcf-select .jcf-select-text {
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
    cursor: default;
    display: block;
    font-size: .75rem;
    line-height: 14px;
    padding: 15px 20px;
    cursor: pointer;
}

.jcf-select .jcf-select-opener {
    position: absolute;
    text-align: center;
    background: #aaa;
    width: 26px;
    bottom: 0;
    right: 0;
    top: 0;
}

body > .jcf-select-drop {
    position: absolute;
    margin: -1px 0 0;
    z-index: 9990;
}

body > .jcf-select-drop.jcf-drop-flipped {
    margin: 1px 0 0;
}

.jcf-select .jcf-select-drop {
    position: absolute;
    margin-top: 0;
    z-index: 9999;
    top: 100%;
    left: -1px;
    right: -1px;
}

.jcf-select .jcf-drop-flipped {
    bottom: 100%;
    top: auto;
}

/* multiple select styles */

.jcf-list-box {
    overflow: hidden;
    display: inline-block;
    border: 1px solid #b8c3c9;
    min-width: 200px;
    margin: 0 15px;
}

/* select options styles */

.jcf-list {
    display: inline-block;
    vertical-align: top;
    position: relative;
    background: #fff;
    line-height: 14px;
    font-size: .75rem;
    width: 100%;
}

.jcf-list .jcf-list-content {
    vertical-align: top;
    display: inline-block;
    overflow: auto;
    width: 100%;
}

.jcf-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.jcf-list ul li {
    overflow: hidden;
    display: block;
}

.jcf-list .jcf-overflow {
    overflow: auto;
}

.jcf-list .jcf-option {
    overflow: hidden;
    cursor: default;
    display: block;
    padding: 5px 9px;
    color: #656565;
    height: 1%;
}

.jcf-list .jcf-disabled {
    background: #fff !important;
    color: #aaa !important;
}

.jcf-select-drop .jcf-hover,
.jcf-list-box .jcf-selected {
    background: #e6e6e6;
    color: #000;
}

.jcf-list .jcf-optgroup-caption {
    white-space: nowrap;
    font-weight: bold;
    display: block;
    padding: 5px 9px;
    cursor: default;
    color: #000;
}

.jcf-list .jcf-optgroup .jcf-option {
    padding-left: 30px;
}

.icon-close:before {
    content: "\e905";
}

.icon-search:before {
    content: "\e90b";
}

/* Slider */
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: "";
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}

[dir="rtl"] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

/*! jQuery UI - v1.11.4 - 2015-11-30
* http://jqueryui.com
* Includes: core.css, autocomplete.css, datepicker.css, menu.css, theme.css
* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Arial%2CHelvetica%2Csans-serif&fsDefault=1em&fwDefault=normal&cornerRadius=3px&bgColorHeader=e9e9e9&bgTextureHeader=flat&borderColorHeader=dddddd&fcHeader=333333&iconColorHeader=444444&bgColorContent=ffffff&bgTextureContent=flat&borderColorContent=dddddd&fcContent=333333&iconColorContent=444444&bgColorDefault=f6f6f6&bgTextureDefault=flat&borderColorDefault=c5c5c5&fcDefault=454545&iconColorDefault=777777&bgColorHover=ededed&bgTextureHover=flat&borderColorHover=cccccc&fcHover=2b2b2b&iconColorHover=555555&bgColorActive=007fff&bgTextureActive=flat&borderColorActive=003eff&fcActive=ffffff&iconColorActive=ffffff&bgColorHighlight=fffa90&bgTextureHighlight=flat&borderColorHighlight=dad55e&fcHighlight=777620&iconColorHighlight=777620&bgColorError=fddfdf&bgTextureError=flat&borderColorError=f1a899&fcError=5f3f3f&iconColorError=cc0000&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=666666&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=5px&offsetTopShadow=0px&offsetLeftShadow=0px&cornerRadiusShadow=8px
* Copyright jQuery Foundation and other contributors; Licensed MIT */

.ui-helper-hidden {
    display: none;
}

.ui-helper-hidden-accessible {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.ui-helper-reset {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    line-height: 1.3;
    /*text-decoration: none;*/
    font-size: 100%;
    list-style: none;
}

.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
    content: "";
    display: table;
    border-collapse: collapse;
}

.ui-helper-clearfix:after {
    clear: both;
}

.ui-helper-clearfix {
    min-height: 0;
}

.ui-helper-zfix {
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    position: absolute;
    opacity: 0;
    /*filter: Alpha(Opacity=0);*/
}

.ui-front {
    z-index: 100;
}

.ui-state-disabled {
    cursor: default !important;
}

.ui-icon {
    display: block;
    text-indent: -99999px;
    overflow: hidden;
    background-repeat: no-repeat;
}

.ui-widget-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.ui-autocomplete {
    position: absolute;
    top: 0;
    left: 0;
    cursor: default;
}

.ui-datepicker {
    width: 17em;
    padding: .2em .2em 0;
    display: none;
}

.ui-datepicker .ui-datepicker-header {
    position: relative;
    padding: .2em 0;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
    position: absolute;
    top: 2px;
    width: 1.8em;
    height: 1.8em;
}

.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
    top: 1px;
}

.ui-datepicker .ui-datepicker-prev {
    left: 2px;
}

.ui-datepicker .ui-datepicker-next {
    right: 2px;
}

.ui-datepicker .ui-datepicker-prev-hover {
    left: 1px;
}

.ui-datepicker .ui-datepicker-next-hover {
    right: 1px;
}

.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
    display: block;
    position: absolute;
    left: 50%;
    margin-left: -8px;
    top: 50%;
    margin-top: -8px;
}

.ui-datepicker .ui-datepicker-title {
    margin: 0 2.3em;
    line-height: 1.8em;
    text-align: center;
}

.ui-datepicker .ui-datepicker-title select {
    font-size: 1em;
    margin: 1px 0;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    width: 45%;
}

.ui-datepicker table {
    width: 100%;
    font-size: .9em;
    border-collapse: collapse;
    margin: 0 0 .4em;
}

.ui-datepicker th {
    padding: .7em .3em;
    text-align: center;
    font-weight: bold;
    border: 0;
}

.ui-datepicker td {
    border: 0;
    padding: 1px;
}

.ui-datepicker td span,
.ui-datepicker td a {
    display: block;
    padding: .2em;
    text-align: right;
    /*text-decoration: none;*/
}

.ui-datepicker .ui-datepicker-buttonpane {
    background-image: none;
    margin: .7em 0 0 0;
    padding: 0 .2em;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
}

.ui-datepicker .ui-datepicker-buttonpane button {
    float: right;
    margin: .5em .2em .4em;
    cursor: pointer;
    padding: .2em .6em .3em .6em;
    width: auto;
    overflow: visible;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
    float: left;
}

.ui-datepicker.ui-datepicker-multi {
    width: auto;
}

.ui-datepicker-multi .ui-datepicker-group {
    float: left;
}

.ui-datepicker-multi .ui-datepicker-group table {
    width: 95%;
    margin: 0 auto .4em;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
    width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
    width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
    width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
    border-left-width: 0;
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
    clear: left;
}

.ui-datepicker-row-break {
    clear: both;
    width: 100%;
    font-size: 0;
}

.ui-datepicker-rtl {
    direction: rtl;
}

.ui-datepicker-rtl .ui-datepicker-prev {
    right: 2px;
    left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next {
    left: 2px;
    right: auto;
}

.ui-datepicker-rtl .ui-datepicker-prev:hover {
    right: 1px;
    left: auto;
}

.ui-datepicker-rtl .ui-datepicker-next:hover {
    left: 1px;
    right: auto;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane {
    clear: right;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button {
    float: left;
}

.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
    float: right;
}

.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
    border-right-width: 0;
    border-left-width: 1px;
}

.ui-menu {
    list-style: none;
    padding: 0;
    margin: 0;
    display: block;
    outline: none;
}

.ui-menu .ui-menu {
    position: absolute;
}

.ui-menu .ui-menu-item {
    position: relative;
    margin: 0;
    padding: 3px 1em 3px .4em;
    cursor: pointer;
    min-height: 0;
    list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}

.ui-menu .ui-menu-divider {
    margin: 5px 0;
    height: 0;
    font-size: 0;
    line-height: 0;
    border-width: 1px 0 0 0;
}

.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
    margin: -1px;
}

.ui-menu-icons {
    position: relative;
}

.ui-menu-icons .ui-menu-item {
    padding-left: 2em;
}

.ui-menu .ui-icon {
    position: absolute;
    top: 0;
    bottom: 0;
    left: .2em;
    margin: auto 0;
}

.ui-menu .ui-menu-icon {
    left: auto;
    right: 0;
}

.ui-widget {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1em;
}

.ui-widget .ui-widget {
    font-size: 1em;
}

.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 1em;
}

.ui-widget-content {
    border: 1px solid #ddd;
    background: #fff;
    color: #333;
}

.ui-widget-content a {
    color: #333;
}

.ui-widget-header {
    border: 1px solid #ddd;
    background: #e9e9e9;
    color: #333;
    font-weight: bold;
}

.ui-widget-header a {
    color: #333;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
    border: 1px solid #c5c5c5;
    background: #f6f6f6;
    font-weight: normal;
    color: #454545;
}

.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited {
    color: #454545;
    opacity: 1;
    /*text-decoration: none;*/
}

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus {
    border: 1px solid #ccc;
    background: #ededed;
    font-weight: normal;
    color: #2b2b2b;
}

.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited {
    color: #2b2b2b;
    opacity: 1;
    /*text-decoration: none;*/
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active {
    border: 1px solid #003eff;
    background: #007fff;
    font-weight: normal;
    color: #fff;
}

.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
    color: #fff;
    opacity: 1;
    /*text-decoration: none;*/
}

.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
    border: 1px solid #dad55e;
    background: #fffa90;
    color: #777620;
}

.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
    color: #777620;
}

.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
    border: 1px solid #f1a899;
    background: #fddfdf;
    color: #5f3f3f;
}

.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
    color: #5f3f3f;
    opacity: 1;
}

.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
    color: #5f3f3f;
    opacity: 1;
}

.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
    font-weight: bold;
}

.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
    opacity: .7;
    filter: Alpha(Opacity=70);
    font-weight: normal;
}

.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
    opacity: .35;
    filter: Alpha(Opacity=35);
    background-image: none;
}

.ui-state-disabled .ui-icon {
    filter: Alpha(Opacity=35);
}

.ui-icon {
    width: 16px;
    height: 16px;
}

.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
    border-top-left-radius: 3px;
}

.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
    border-top-right-radius: 3px;
}

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
    border-bottom-left-radius: 3px;
}

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
    border-bottom-right-radius: 3px;
}

.ui-widget-overlay {
    background: #aaa;
    opacity: .3;
    filter: Alpha(Opacity=30);
}

.ui-widget-shadow {
    margin: 0 0 0 0;
    padding: 5px;
    background: #666;
    opacity: .3;
    filter: Alpha(Opacity=30);
    border-radius: 8px;
}

body {
    min-width: 320px;
    letter-spacing: 1px;
    font-weight: 300;
}

body.modal-open,
body.confirm-active,
body.nav-active,
body.search-active {
    overflow: hidden;
}

#wrapper {
    overflow: hidden;
    padding-top: 164px;
}

.container {
    max-width: 1260px;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
    position: relative;
}

.container .button-caption {
    text-align: center !important;
    padding-top: 50px !important;
}

.btn {
    display: inline-block;
    vertical-align: top;
    background: #2d2d2d;
    border-radius: 5px;
    font-size: 1rem;
    line-height: 19px;
    letter-spacing: 1px;
    padding: 20px 48px;
    color: #fff;
    text-align: center;
    font-weight: 400;
    margin-bottom: 20px;
}

.btn:hover,
.btn:focus {
    background: #fff;
    color: #2d2d2d;
}

.btn.white {
    background: #fff;
    color: #2d2d2d;
}

.btn.white:hover,
.btn.white:focus {
    background: #2d2d2d;
    color: #fff;
}

.btn.style-1 {
    border: 2px solid #2d2d2d;
    padding-top: 18px;
    padding-bottom: 18px;
}

.btn.small {
    font-size: .75rem;
    line-height: 15px;
    letter-spacing: .43px;
    padding: 9px 18px;
    margin-bottom: 10px;
}

.orange-btn {
    background-color: #FE5000;
}

.orange-btn:hover {
    background-color: #2d2d2d;
    color: #fff;
}

.banner {
    position: relative;
}

.banner .img-wrap {
    position: relative;
    float: left;
    left: 50%;
    min-width: 1440px;
    width: 100%;
}

.banner .img-wrap img {
    float: left;
    width: 100%;
    position: relative;
    left: -50%;
}

.banner .text-container .container {
    width: 100%;
}

#main {
    padding-top: 26px;
}

#sidebar {
    float: left;
    width: 25.21%;
    padding-right: 20px;
}

#content {
    float: right;
    width: 74.59%;
}

.for-sr {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.js-tab-hidden {
    display: none !important;
    left: -9999px !important;
    position: absolute !important;
    top: -9999px !important;
}

.resize-active * {
    -webkit-transition-duration: 0s !important;
    transition-duration: 0s !important;
}

#header {
    padding: 24px 0 0;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: #fff;
    z-index: 9998;
    box-shadow: 0 0 4px rgba(0, 0, 0, .2);
    font-weight: 400;
}

#header > .container {
    max-width: 1200px;
}

#header .centered-block {
    text-align: center;
}
.fixed-button {
    background-color: #fe5000 !important;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    color: #fff;
    font-size: 0.875rem;
    padding: 0.5rem;
    z-index: 5;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
}
.logo {
    width: 212px;
    margin: 0 auto;
}

.logo a {
    display: block;
    height: 100%;
}

.opener {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    width: 24px;
    height: 19px;
    border: solid #000;
    border-width: 3px 0;
    left: 15px;
    margin-top: -3px;
}

.opener:hover {
    border-color: #ed8336;
}

.opener:hover:before {
    background: #ed8336;
}

.opener:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    content: "";
    width: 100%;
    height: 3px;
    background: #000;
    left: 0;
}

#nav {
    position: relative;
    padding-top: 20px;
}

#nav .close {
    position: absolute;
    right: 17px;
    top: 18px;
    color: #000;
    font-size: 1.3125rem;
}

#nav .close:hover {
    color: #ed8336;
}

#nav > ul {
    letter-spacing: -5px;
    text-align: center;
}

#nav > ul > li {
    display: inline-block;
    vertical-align: top;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin: 0 10px;
    font-size: 1.3125rem;
    line-height: 16px;
    position: relative;
}

#nav > ul > li:hover > a {
    color: #ed8336;
}

#nav > ul > li:hover .drop {
    opacity: 1;
    visibility: visible;
}

#nav > ul > li.has-drop-down > a {
    padding-right: 18px;
}

/*#nav > ul > li.has-drop-down > a:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    right: 0;
    content: "\e908";
    color: #ed8336;
    font: 10px/1 "icomoon";
}

#nav > ul > li > a {
    color: #2d2d2d;
    position: relative;
}

#nav > ul > li > a:hover,
#nav > ul > li > a:focus {
    color: #ed8336;
}

#nav > ul > li > #exam {
    color: #ed8336 !important;
}

.eyewear-nav li{
    border:none !important;
    margin-bottom:20px !important;
    width:100px;
}*/

/*
Mobile Utility nav
 */
#mobile-utility-nav {
    display: flex;
    font-size: .75rem;
    justify-content: center;
    list-style: none;
    margin: 0 0 .25rem;
    text-transform: uppercase;
}

#mobile-utility-nav > li:not(.mobile-utility) {
    display: none;
}

#mobile-utility-nav > li:first-of-type:after {
    content: '|';
    padding: 0 .5rem;
    color: #ccc;
}

/*
Mobile Utility Nav end
 */

/*
Mobile Header Top (California Residents Link)
 */
#header .header-top {
    background: #004B86;
    display: none;
    margin: -1.5rem 0 1.5rem;
    padding: .5rem;
    font-size: .75rem;
}

#header .header-top a {
    color: #fff;
}
#header .header-top a:hover {
    text-decoration: underline;
}
/*
Mobile Header Top end
 */
.right-block {
    position: absolute;
    right: 10px;
    top: 0;
}

#header .log-wrap a {
    display: inline-block;
    color: #9f9f9f;
    font-size: 1rem;
}

.log-wrap a:hover,
.log-wrap a:focus {
    color: #ed8336;
}

.log-res-block {
    float: right;
    letter-spacing: -4px;
    position: relative;
    padding-left: 23px;
    margin-bottom: 5px;
    margin-left: 180px;
}

.log-res-block:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: 0;
    content: "\e903";
    font: 14px/1 "icomoon";
    color: #9b9b9b;
}

.search-icon:before {
    content: none;
}

.search-icon {
    background: url("/images/marker.png") no-repeat left 3px;
    background-size: 18px;
}

.directory-icon:before {
    content: none;
}

.directory-icon {
    background: url("/images/directory.png") no-repeat left 3px;
    background-size: 18px;
}

.log-res-block li {
    display: inline-block;
    vertical-align: middle;
    letter-spacing: 0;
    font-size: .875rem;
    line-height: 16px;
    position: relative;
}

.log-res-block li + li {
    padding-left: 8px;
    margin-left: 2px;
}

.log-res-block li + li:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    content: "|";
    left: 0;
    color: #9b9b9b;
}

.log-res-block li a {
    color: #9b9b9b;
}

.log-res-block li a:hover,
.log-res-block li a:focus {
    color: #ed8336;
}

.search-holder {
    text-align: right;
}

.search-holder a {
    color: #9b9b9b;
    display: inline-block;
    vertical-align: middle;
}

.search-holder a:hover,
.search-holder a:focus {
    color: #ed8336;
}

.search-block {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    z-index: 9999;
    padding: 62px 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .3s linear, visibility .3s linear;
    transition: opacity .3s linear, visibility .3s linear;
}

.search-active .search-block {
    opacity: 1;
    visibility: visible;
}

.search-block .container {
    max-width: 1260px;
}

.search-block .close-wrap {
    text-align: right;
    margin-bottom: 38px;
}

.search-block .close-wrap .close {
    font-size: .75rem;
    line-height: 14px;
    letter-spacing: 1.71px;
    color: #000;
    padding: 5px 36px 5px 0;
    text-transform: uppercase;
    position: relative;
    font-weight: 400;
}

.search-block .close-wrap .close:after {
    content: "\e905";
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    right: 0;
    font: 22px/1 "icomoon";
}

.search-block .close-wrap .close:hover,
.search-block .close-wrap .close:focus {
    color: #ed8336;
}

.search-block input[type="search"] {
    width: 100%;
    padding: 0 0 30px;
    margin-bottom: 34px;
    font-size: 3.75rem;
    line-height: 1.0333;
    color: #2d2d2d;
    border-bottom: 1px solid #e9e9e9;
}

.search-block input[type="submit"] {
    border: 2px solid #2d2d2d;
    padding: 18px 53px;
}

.search-block ::-webkit-input-placeholder {
    color: rgba(45, 45, 45, .22);
}

.search-block ::-moz-placeholder {
    opacity: 1;
    color: rgba(45, 45, 45, .22);
}

.search-block :-moz-placeholder {
    color: rgba(45, 45, 45, .22);
}

.search-block :-ms-input-placeholder {
    color: rgba(45, 45, 45, .22);
}

.search-block .placeholder {
    color: rgba(45, 45, 45, .22);
}

#footer {
    background: #2d2d2d;
    font-size: 0.8125rem;
    line-height: 15px;
    color: #9b9b9b;
    font-weight: 400;
    position: relative;
}

#footer > .container {
    max-width: 1188px;
}

#footer .footer-t {
    padding-top: 61px;
    padding-bottom: 23px;
    border-bottom: 1px solid #323232;
}

#footer .footer-l {
    float: left;
    width: 20.21%;
    padding: 3px 15px 0 0;
}

#footer .footer-l .txt {
    display: block;
    font-size: 0.8125rem;
    line-height: 15px;
    letter-spacing: 1px;
    clear: both;
}

#footer .footer-r {
    float: right;
    width: 79.79%;
}

#footer .footer-logo {
    float: left;
    width: 180px;
    margin-bottom: 23px;
}

#footer .footer-nav {
    float: left;
    width: 37.568%;
    padding-right: 20px;
}

#footer .footer-nav ul {
    text-transform: uppercase;
}

#footer .footer-nav ul li {
    margin-bottom: 15px;
}

#footer .footer-nav ul li a {
    color: #9b9b9b;
}

#footer .footer-nav ul li a:hover,
#footer .footer-nav ul li a:focus {
    color: #fff;
}

#footer .footer-link {
    float: left;
    width: 59.8%;
}

#footer .social-network-holder {
    float: left;
    width: 40.88%;
}

#footer .social-networks {
    text-transform: uppercase;
}

#footer .social-networks li {
    margin-bottom: 20px;
}

#footer .social-networks li a {
    display: inline-block;
    vertical-align: top;
    color: #9b9b9b;
    padding-left: 38px;
    position: relative;
}

#footer .social-networks .menu li a,
#footer .social-networks li a .icon {
    font-family: Arial, sans-serif;
    font-weight: 300;
}

#footer .social-networks li a:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: 0;
    font-size: 1.5rem;
}

#footer .social-networks li a:hover,
#footer .social-networks li a:focus {
    color: #fff;
}

.social-networks a:hover:before {
    color: #e4e4e4;
}

#footer .signup-block {
    width: 40.2%;
    float: right;
    font-size: 0.875rem;
    line-height: 20px;
    letter-spacing: 0;
}

#footer .signup-block .title {
    display: block;
    font-weight: 400;
    font-size: 1rem;
    line-height: 18px;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 1.78px;
    margin-bottom: 16px;
}

#footer .signup-block p {
    margin-bottom: 33px;
    padding-right: 13px;
}

#footer .subscribe-form {
    background: #fff;
    overflow: hidden;
    position: relative;
    padding-right: 84px;
}

#footer .subscribe-form input[type="email"] {
    background: none;
    border: none;
    outline: none;
    width: 100%;
    font-size: 0.9375rem;
    line-height: 17px;
    height: 47px;
    padding: 10px 15px;
    box-shadow: none;
    color: #000;
}

#footer .subscribe-form input[type="email"] ::-webkit-input-placeholder {
    color: #9b9b9b;
}

#footer .subscribe-form input[type="email"] ::-moz-placeholder {
    opacity: 1;
    color: #9b9b9b;
}

#footer .subscribe-form input[type="email"] :-moz-placeholder {
    color: #9b9b9b;
}

#footer .subscribe-form input[type="email"] :-ms-input-placeholder {
    color: #9b9b9b;
}

#footer .subscribe-form input[type="email"] .placeholder {
    color: #9b9b9b;
}

#footer .subscribe-form button[type="submit"] {
    width: 80px;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    border: none;
    outline: none;
    padding: 0;
    background: #fe5000;
    border-radius: 0;
    cursor: pointer;
}

#footer .subscribe-form button[type="submit"]:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    content: "\27F6";
    font-size: 1.5rem;
    text-align: center;
    left: 0;
    right: 0;
    color: #2d2d2d;
}
#footer .subscribe-form button[type="submit"]:focus:before,
#footer .subscribe-form button[type="submit"]:hover:before {
    color: #fff;
}

#footer .footer-b {
    padding-top: 25px;
    padding-bottom: 25px;
    font-size: 11px;
    line-height: 24px;
    letter-spacing: 0;
}

#footer .footer-b p {
    margin-bottom: 0;
}

#footer .footer-b a {
    color: #9b9b9b;
}

#footer .footer-b a:hover,
#footer .footer-b a:focus {
    color: #fff;
}

.hero-section {
    background: #2495d1;
}

.hero-section .slick-track {
    height: calc(100vh - 126px);
    min-height: 643px;
}

.slick-dots {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    bottom: 28px;
    z-index: 999;
    letter-spacing: -5px;
}

.slick-dots li {
    display: inline-block;
    vertical-align: middle;
    letter-spacing: 0;
    margin: 0 4px;
    cursor: pointer;
}

.slick-dots li.slick-active button {
    background: #000;
}

.slick-dots button {
    font-size: 0;
    line-height: 0;
    background: #fff;
    border: none;
    width: 8px;
    height: 8px;
    border-radius: 100%;
    padding: 0;
    outline: none;
}

.slick-dots button:hover {
    background: #000;
}

.tabset {
    letter-spacing: -5px;
    text-align: center;
}

.tabset li {
    letter-spacing: 0;
    display: inline-block;
    vertical-align: top;
    font-size: 15px;
    line-height: 17px;
    margin: 0 1px;
}

.tabset li a {
    display: block;
    min-width: 142px;
    background: #f6f6f6;
    border-radius: 3px;
    color: #a6a6a6;
    padding: 12px;
}

.tabset li a:hover,
.tabset li a.active {
    color: #000;
}

.two-columns {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.two-columns .column {
    width: 50%;
}

.two-columns .giveaway-block {
    background: #f3f3f3;
    padding-bottom: 82px;
}

.two-columns .giveaway-block .img-wrap {
    padding: 36px 0 47px 62px;
}

.two-columns .giveaway-block .img-wrap .img-frame {
    float: right;
    max-width: 568px;
}

.two-columns .giveaway-block .text-box {
    text-align: left;
    font-weight: 300;
}

.two-columns .giveaway-block .text-box .text-frame {
    width: 655px;
    float: right;
    padding-left: 35px;
}

.two-columns .giveaway-block .text-box h1 {
    margin-bottom: 16px;
}

.two-columns .giveaway-block .text-box p {
    margin-bottom: 32px;
}

.two-columns .follow-block {
    padding: 82px 135px;
}

.two-columns .follow-block .img-holder {
    margin-bottom: 20px;
}

.two-columns .follow-block .img-holder img {
    width: 100%;
}

.two-columns .follow-block .instagram {
    font-size: 16px;
    line-height: 18px;
    letter-spacing: .32px;
    color: #2d2d2d;
    padding-left: 24px;
    position: relative;
}

.two-columns .follow-block .instagram:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: 0;
    content: "\e90c";
    font: 16px/1 "icomoon";
}

.two-columns .follow-block .instagram:hover,
.two-columns .follow-block .instagram:focus {
    color: #ed8336;
}

.intro-block {
    font-size: 18px;
    line-height: 25px;
    font-weight: 300;
}

.intro-block .holder {
    display: table;
    height: 689px;
    width: 100%;
    text-align: center;
    color: #fff;
}

.intro-block .holder .frame {
    display: table-cell;
    vertical-align: middle;
    padding-top: 50px;
    padding-bottom: 50px;
}

.intro-block h1 {
    margin-bottom: 13px;
}

.intro-block p {
    margin-bottom: 33px;
}

.intro-block .btn {
    padding: 20px 56px;
}

.jcf-select-drop.jcf-select-time .jcf-select-drop-content,
.jcf-select-drop.jcf-select-glass .jcf-select-drop-content {
    margin: -67px -15px;
    background: #fff;
    border-radius: 3px;
    box-shadow: 0 0 8px rgba(0, 0, 0, .2);
    overflow: hidden;
    padding: 21px 25px;
}

.jcf-select-drop.jcf-select-time .jcf-list .jcf-option,
.jcf-select-drop.jcf-select-glass .jcf-list .jcf-option {
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 2.1px;
    padding: 0;
    background: none !important;
    text-transform: uppercase;
    color: #000;
    cursor: pointer;
    display: inline-block;
    vertical-align: top;
    position: relative;
}

.jcf-select-drop.jcf-select-time .jcf-list .jcf-option.jcf-option-hideme,
.jcf-select-drop.jcf-select-glass .jcf-list .jcf-option.jcf-option-hideme {
    display: none;
}

.jcf-select-drop.jcf-select-time .jcf-list .jcf-option:hover,
.jcf-select-drop.jcf-select-glass .jcf-list .jcf-option:hover {
    color: #ed8336;
}

.jcf-select-drop.jcf-select-time .jcf-list .jcf-option.jcf-option-new,
.jcf-select-drop.jcf-select-glass .jcf-list .jcf-option.jcf-option-new {
    overflow: visible;
}

.jcf-select-drop.jcf-select-time .jcf-list .jcf-option.jcf-option-new:before,
.jcf-select-drop.jcf-select-glass .jcf-list .jcf-option.jcf-option-new:before {
    content: "New";
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    font-size: 9px;
    line-height: 11px;
    left: 100%;
    margin-left: 14px;
    color: #50e3c2;
    border: 1px solid #50e3c2;
    border-radius: 3px;
    padding: 4px 5px;
}

.jcf-select-drop.jcf-select-time .jcf-list-content li,
.jcf-select-drop.jcf-select-glass .jcf-list-content li {
    padding: 7px 0;
}

.jcf-select-drop.jcf-select-time .jcf-list-content li:first-child,
.jcf-select-drop.jcf-select-glass .jcf-list-content li:first-child {
    padding: 0;
}

.page-intro-block {
    padding: 61px 0;
    text-align: center;
    font-weight: 300;
    border-bottom: 2px solid #f0f0f0;
}

.page-intro-block .container {
    max-width: 790px;
}

.page-intro-block h2 {
    font-size: 40px;
    line-height: 1.15;
    margin-bottom: 34px;
    padding: 0 108px;
}

.detail-info-block {
    padding: 120px 0 116px;
    border-bottom: 2px solid #f0f0f0;
}

.detail-info-block h3 {
    font-size: 28px;
    line-height: 1.071;
    margin-bottom: 31px;
    letter-spacing: .9px;
}

.detail-info-block .text-container {
    margin-bottom: 41px;
}

.detail-info-block .detail {
    float: left;
    width: 57.15%;
    padding: 3px 168px 0 0;
}

.detail-info-block .detail p {
    margin-bottom: 25px;
}

.detail-info-block .img-wrap {
    float: right;
    width: 42.85%;
}

.list-info-block {
    padding: 118px 0 116px;
    border-bottom: 2px solid #f0f0f0;
}

.list-info-block h3 {
    font-size: 28px;
    line-height: 1.071;
    margin-bottom: 29px;
    letter-spacing: .9px;
}

.list-info-block .list-block {
    float: right;
    width: 42.85%;
}

.list-info-block .list-block ul {
    margin-bottom: 42px;
}

.list-info-block .list-block ul li {
    padding-left: 24px;
    position: relative;
}

.list-info-block .list-block ul li:before {
    content: "";
    background: #000;
    width: 5px;
    height: 5px;
    position: absolute;
    left: 0;
    top: 9px;
    border-radius: 50%;
}

.list-info-block .img-wrap {
    overflow: hidden;
    padding: 31px 50px 0 0;
}

.offers-discount-block {
    padding-top: 32px;
    color: #2a2424;
    margin-bottom: 66px;
}

.offers-discount-block .top-block {
    margin-bottom: 48px;
}

.offers-discount-block .top-block .content-left {
    width: 50%;
    float: left;
}

.offers-discount-block .top-block .content-left .txt {
    display: block;
    font-size: 14px;
    line-height: 16px;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 0;
}

.offers-discount-block .top-block .content-left h1 {
    font-size: 80px;
    line-height: 1.0625;
    margin-bottom: 15px;
    letter-spacing: 2px;
}

.offers-discount-block .row {
    letter-spacing: -6px;
    margin: 0 -10px;
}

.offers-discount-block .col {
    letter-spacing: 1px;
    display: inline-block;
    vertical-align: top;
    width: 50%;
    padding: 0 10px 20px;
}

.offers-discount-block .col.full {
    width: 100%;
}

.offers-discount-block .discount-info-block {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 50px 42px 62px;
    overflow: hidden;
}

.offers-discount-block .discount-info-block.standard-size {
    height: 290px;
}

.offers-discount-block h3 {
    padding-top: 30px;
    clear: right;

}

.offers-discount-block .discount-info-block.highlight .titles {
    font-size: 60px;
    line-height: 1.167;
    margin-bottom: 8px;
}

.offers-discount-block .discount-info-block .info-text {
    width: 60%;
    padding-right: 20px;
    max-width: 260px;
}

.offers-discount-block .discount-info-block .info-text p {
    margin-bottom: 0;
}

.offers-discount-block .discount-info-block .info-text a:hover:before,
.offers-discount-block .discount-info-block .info-text a:hover:after,
.offers-discount-block .discount-info-block .info-text a:focus:before,
.offers-discount-block .discount-info-block .info-text a:focus:after {
    background: #1d76a5;
}

.offers-discount-block .discount-info-block .info-text span {
    color: #2495d1;
    font-size: 18px;
    font-weight: 400;
    letter-spacing: 0;
    padding-left: 24px;
    position: relative;
    margin-left: 4px;
}

.offers-discount-block .discount-info-block .info-text span:before,
.offers-discount-block .discount-info-block .info-text span:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: 0;
    content: "";
    background: #2495d1;
    height: 2px;
    width: 14px;
}

.offers-discount-block .discount-info-block .info-text span:after {
    width: 2px;
    height: 14px;
    left: 6px;
}

.offers-discount-block .discount-info-block .info-text span:hover,
.offers-discount-block .discount-info-block .info-text span:focus {
    color: #1d76a5;
    cursor: pointer;

}

.offers-discount-block .discount-info-block .info-text span:hover:before,
.offers-discount-block .discount-info-block .info-text span:hover:after,
.offers-discount-block .discount-info-block .info-text span:focus:before,
.offers-discount-block .discount-info-block .info-text span:focus:after {
    background: #1d76a5;
}

.offers-discount-block .discount-info-block .titles {
    display: block;
    font-size: 50px;
    line-height: 52px;
    margin-bottom: 11px;
    letter-spacing: 0;
}

.offers-discount-block .discount-info-block .img-wrap {
    margin-right: -42px;
}

.sunglasses-lenses-block .row {
    letter-spacing: -6px;
    margin: 0 -10px;
}

.sunglasses-lenses-block .row .col {
    letter-spacing: 1px;
    display: inline-block;
    vertical-align: top;
    width: 40%;
    padding: 10px 10px;
}

.sunglasses-lenses-block .row .col-large {
    letter-spacing: 1px;
    display: inline-block;
    vertical-align: top;
    width: 60%;
    padding: 10px 6.5px;

}

.sunglasses-lenses-content-block {
    padding: 25px 0px;
}

.sunglasses-lenses-block .top-block p {
    font-size: 20px;
}

.sunglasses-lenses-block .top-block h1 {
    font-size: 80px;
}

.sunglasses-lenses-block {
    padding: 25px 0px;
}

.select-appointment-block {
    max-width: 824px;
    padding-top: 63px;
    padding-bottom: 124px;
}

.select-appointment-block h1 {
    font-size: 40px;
    line-height: 1.1;
    text-align: center;
    margin-bottom: 45px;
}

.select-appointment-block .row {
    margin: 0 -18px 11px;
}

.select-appointment-block .row .col {
    float: left;
    width: 50%;
    padding: 0 18px;
}

.select-appointment-block .row .col2 {
    float: left;
    width: 46%;
    padding-left: 20px;
}

.select-appointment-block .row .divider {
    width: 8%;
    padding: 180px 0 0 30px;
    font-weight: 500
}

.select-appointment-block .row .title {
    display: block;
    padding: 0 18px;
    margin-bottom: 12px;
    letter-spacing: 0;
}

.select-appointment-block .field-holder {
    margin-bottom: 20px;
    position: relative;
}

.select-appointment-block .field-holder.date-picker input[type="text"] {
    background: none;
}

.select-appointment-block .field-holder.date-picker input[type="text"]:focus + .field-txt em:after {
    -webkit-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
}

.select-appointment-block .field-holder:focus .field-txt,
.select-appointment-block .field-holder.date-filled .field-txt {
    display: none;
}

.select-appointment-block .field-holder .field-txt {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.select-appointment-block .field-holder .field-txt em {
    position: relative;
    padding-left: 60px;
    position: relative;
    display: block;
    font-style: normal;
    font-weight: 400;
    width: 100%;
}

.select-appointment-block .field-holder .field-txt em:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: 23px;
    content: "\e90d";
    font: 24px/1 "icomoon";
}

.select-appointment-block .field-holder .field-txt em:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    content: "\e90e";
    font: 18px/1 "icomoon";
    right: 26px;
}

.select-appointment-block input[type="password"],
.select-appointment-block input[type="text"],
.select-appointment-block input[type="email"],
.select-appointment-block input[type="tel"],
.select-appointment-block textarea {
    border: 1px solid #000;
    border-radius: 3px;
    height: 55px;
    padding: 12px 19px;
    font-size: 18px;
    line-height: 22px;
    color: #2a2424;
    width: 100%;
    font-weight: 400;
    outline: none;
    box-shadow: none;
}

.select-appointment-block ::-webkit-input-placeholder {
    color: #2a2424;
}

.select-appointment-block ::-moz-placeholder {
    opacity: 1;
    color: #2a2424;
}

.select-appointment-block :-moz-placeholder {
    color: #2a2424;
}

.select-appointment-block :-ms-input-placeholder {
    color: #2a2424;
}

.select-appointment-block .placeholder {
    color: #2a2424;
}

.select-appointment-block .radiolist-holder {
    background: #f6f6f6;
    border-radius: 3px;
    overflow: hidden;
    padding: 14px 20px;
    margin-bottom: 20px;
    min-height: 55px;
}

.select-appointment-block .radiolist-holder .radiolist {
    letter-spacing: -5px;
    margin: 0 -19px;
    font-weight: 400;
}

.select-appointment-block .radiolist-holder .radiolist li {
    display: inline-block;
    vertical-align: middle;
    letter-spacing: 0;
    padding: 0 19px;
    font-size: 14px;
    letter-spacing: .6px;
    text-transform: uppercase;
}

.select-appointment-block .btn-wrap {
    text-align: center;
    padding-top: 33px;
}

.appointment-form input[type="checkbox"] {
    position: fixed;
    left: 0;
    top: 0;
    opacity: 0;
    z-index: -1;
}

.appointment-form input[type="checkbox"]:checked + .fake-input:before {
    opacity: 1;
}

.appointment-form input[type="checkbox"] + .fake-input:before {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "\e90f";
    font: 8px/1 "icomoon";
    opacity: 0;
}

.appointment-form .fake-input {
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 1px solid #000;
    vertical-align: middle;
    position: relative;
    margin-right: 9px;
    border-radius: 3px;
}

.appointment-form .fake-label {
    display: inline-block;
    vertical-align: middle;
}

.jcf-select.jcf-select-style-1 {
    border: 1px solid #000;
    border-radius: 3px;
    height: 55px;
}

.jcf-select.jcf-select-style-1 .jcf-select-text {
    font-size: 1rem;
    line-height: 22px;
    font-weight: 400;
    padding: 16px 20px;
}

.jcf-select.jcf-select-style-1.jcf-drop-active .jcf-select-opener:after {
    -webkit-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
    transform: translateY(-50%) rotate(90deg);
}

.jcf-select.jcf-select-style-1 .jcf-select-opener {
    background: none;
    cursor: pointer;
}

.jcf-select.jcf-select-style-1 .jcf-select-opener:after {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    right: 20px;
    content: "\f105";
    font-size: 1.75rem;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.jcf-select.jcf-select-style-1.jcf-select-clock .jcf-option-clock {
    display: block;
    position: relative;
    padding-left: 32px;
}

.jcf-select.jcf-select-style-1.jcf-select-clock .jcf-option-clock:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: 0;
    content: "\e904";
    font: 22px/1 "icomoon";
}

.jcf-select-drop.jcf-select-style-1 {
    border: 1px solid #000;
    border-radius: 0 0 3px 3px;
    overflow: hidden;
    margin-top: -2px;
}

.jcf-select-drop.jcf-select-style-1 .jcf-list {
    font-size: 18px;
    line-height: 22px;
    font-weight: 400;
}

.jcf-select-drop.jcf-select-style-1 .jcf-list .jcf-option {
    padding: 12px 20px;
}

.jcf-select-drop.jcf-select-style-1 .jcf-list .jcf-option.jcf-option-hideme {
    display: none;
}

.confirm-block {
    /*position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #fff;
	z-index: 9999;
	padding: 62px 0;
	opacity: 0;
	visibility: hidden;
	-webkit-transition: opacity .3s linear, visibility .3s linear;
	transition: opacity .3s linear, visibility .3s linear;
	overflow: auto;*/
}

.confirm-active .confirm-block {
    opacity: 1;
    visibility: visible;
}

.confirm-block .container {
    max-width: 732px;
}

.confirm-block .close-wrap {
    text-align: right;
    margin: 0 127px 32px 0;
    font-weight: 400;
}

.confirm-block .close-wrap .close {
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 1.71px;
    color: #000;
    padding: 5px 36px 5px 0;
    text-transform: uppercase;
    position: relative;
}

.confirm-block .close-wrap .close:after {
    content: "\e905";
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    right: 0;
    font: 22px/1 "icomoon";
}

.confirm-block .close-wrap .close:hover,
.confirm-block .close-wrap .close:focus {
    color: #ed8336;
}

.confirm-block .top-content {
    padding: 0 50px;
    text-align: center;
    margin-bottom: 36px;
}

.confirm-block .top-content h2 {
    font-size: 40px;
    line-height: 1.05;
    margin-bottom: 20px;
}

.confirm-block .info-row {
    background: #f8f8f8;
    padding: 28px 20px 41px 54px;
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 16px;
}

.confirm-block .info-row .info-col-l {
    float: left;
    width: 54%;
    padding-right: 20px;
}

.confirm-block .info-row .info-col-r {
    width: 38.9%;
    float: right;
    text-align: left;
}

.confirm-block .info-row .txt {
    display: block;
    color: #494949;
    margin-bottom: 2px;
}

.confirm-block .info-row .title {
    display: block;
    font-weight: 400;
    margin-bottom: 9px;
}

.confirm-block .info-row address {
    font-style: normal;
    color: #494949;
}

.confirm-block .info-row a {
    color: #494949;
}

.confirm-block .info-row a:hover,
.confirm-block .info-row a:focus {
    color: #000;
}

.confirm-block .submit-wrap {
    text-align: center;
    padding-top: 24px;
    padding-bottom: 60px;
}

.ui-datepicker table {
    margin: 0;
}

.ui-widget {
    font-family: "gillsans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
}

.ui-datepicker {
    width: 359px;
    border: 1px solid #000;
    margin-top: -1px;
    text-align: center;
    padding: 20px;
}

.ui-datepicker th {
    font-weight: 400;
    text-transform: uppercase;
    font-size: 15px;
    color: #8c8f93;
}

.ui-datepicker td {
    padding: 0;
}

.ui-datepicker td span,
.ui-datepicker td a {
    text-align: center;
    padding: 0;
    border: none;
    background: none;
    padding: 10px 14px;
    border-radius: 6px;
}

.ui-datepicker td.ui-state-disabled {
    opacity: 1;
}

.ui-datepicker td.ui-state-disabled span {
    background: #000;
    color: #fff;
}

.ui-datepicker td.ui-datepicker-current-day a,
.ui-datepicker td.ui-datepicker-today a {
    background: #f6f6f6;
    color: #000;
    border: 1px solid #c5c5c5;
}

.ui-datepicker td:hover span,
.ui-datepicker td:hover a {
    background: #ed8336;
    color: #fff;
}

.ui-datepicker .ui-widget-header {
    background: none;
    border: none;
    padding: 0;
    text-align: center;
    display: inline-block;
    vertical-align: middle;
}

.ui-datepicker .ui-widget-header .ui-datepicker-prev {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    left: -18px;
    width: 12px;
    height: 18px;
    cursor: pointer;
}

.ui-datepicker .ui-widget-header .ui-datepicker-prev:hover,
.ui-datepicker .ui-widget-header .ui-datepicker-prev:focus {
    background: none;
    border: none;
}

.ui-datepicker .ui-widget-header .ui-datepicker-prev:hover:before,
.ui-datepicker .ui-widget-header .ui-datepicker-prev:focus:before {
    color: #ed8336;
}

.ui-datepicker .ui-widget-header .ui-datepicker-prev:before {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "\e90e";
    font: 18px/1 "icomoon";
    color: #ebebeb;
    -webkit-transform: translateY(-50%) rotate(180deg);
    -ms-transform: translateY(-50%) rotate(180deg);
    transform: translateY(-50%) rotate(180deg);
}

.ui-datepicker .ui-widget-header .ui-datepicker-prev span {
    margin: 0;
    display: none;
}

.ui-datepicker .ui-widget-header .ui-datepicker-next {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    left: 100%;
    width: 12px;
    height: 18px;
    cursor: pointer;
}

.ui-datepicker .ui-widget-header .ui-datepicker-next:hover,
.ui-datepicker .ui-widget-header .ui-datepicker-next:focus {
    background: none;
    border: none;
}

.ui-datepicker .ui-widget-header .ui-datepicker-next:hover:before,
.ui-datepicker .ui-widget-header .ui-datepicker-next:focus:before {
    color: #ed8336;
}

.ui-datepicker .ui-widget-header .ui-datepicker-next:before {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "\e90e";
    font: 18px/1 "icomoon";
    color: #ebebeb;
}

.ui-datepicker .ui-widget-header .ui-datepicker-next span {
    margin: 0;
    display: none;
}

.ui-datepicker .ui-widget-header .ui-datepicker-title {
    margin: 0 -5px 0 0;
    display: inline-block;
    vertical-align: middle;
    padding: 0 34px;
}

.ui-datepicker .ui-datepicker-year {
    display: none;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
    border: none;
    background: none;
}

.product-wall {
    position: relative;
}

.product-wall .top-row {
    padding: 30px 0;
    border-bottom: 1px solid #eaeaea;
    margin-bottom: 32px;
}

.product-wall .select-info-block {
    background: #2495d1;
    padding: 44px 44px 57px 60px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 40px;
    line-height: 1;
    color: #fff;
    font-weight: 400;
}

.product-wall .select-info-block p {
    margin-bottom: 0;
}

.product-wall .top-text-block {
    font-weight: 400;
    position: absolute;
    left: 35px;
    top: 28px;
}

.product-wall .top-text-block .num {
    display: block;
    font-size: 19px;
    line-height: 1.316;
    letter-spacing: 1.06px;
}

.product-wall .top-text-block a {
    color: #2495d1;
    font-size: 14px;
    line-height: 1.785;
}

.product-wall .top-text-block a:hover,
.product-wall .top-text-block a:focus {
    color: #1d76a5;
}

.edit-frame-block {
    padding: 116px 0;
}

.edit-frame-block .top-intro {
    text-align: center;
}

.edit-frame-block .top-row {
    border: none;
    padding-bottom: 0;
    margin-bottom: 70px;
}

.edit-frame-block .selection-area {
    padding-top: 0;
    padding-bottom: 0;
}

.edit-frame-block .selection-area .sel-col {
    width: 25%;
    font-size: 11px;
    line-height: 14px;
}

.edit-frame-block .btn-wrap {
    text-align: center;
}

.edit-frame-block .close {
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 1.71px;
    color: #000;
    padding: 5px 36px 5px 0;
    text-transform: uppercase;
    position: absolute;
    right: 20px;
    top: -30px;
    font-weight: 400;
}

.edit-frame-block .close:after {
    content: "\e905";
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    right: 0;
    font: 22px/1 "icomoon";
}

.edit-frame-block .close:hover,
.edit-frame-block .close:focus {
    color: #ed8336;
}

.selection-area {
    padding: 0px 25px;
}

.selection-area .sel-row {
    letter-spacing: -5px;
    margin: 0 -29px;
    font-size: 0;
    line-height: 0;
}

.selection-area .sel-col {
    display: inline-block;
    vertical-align: top;
    width: 33.33%;
    padding: 0 29px 30px;
    letter-spacing: 0;
    font-size: 11px;
    line-height: 15px;
}

.selection-area .sel-col-insurance {
    display: inline-block;
    vertical-align: top;
    width: 20%;
    padding: 0 29px 30px;
    letter-spacing: 0;
    font-size: 11px;
    line-height: 15px;
    padding: 35px;
}

.selection-area .sel-col-shoppingxp .info-block { /* 4 columns */
    display: inline-block;
    vertical-align: top;
    width: 25%;
    padding: 0 29px 30px;
    letter-spacing: 0;
    font-size: 11px;
    line-height: 15px;
    padding: 35px;
}

.selection-area .sel-col-shoppingxp .info-block p {
    font-size: 14px;
    line-height: 1.6em;
    font-weight: 400;
    color: #201d1d;
}

.sel-col-shoppingxp .info-block .content-block {
    padding-top: 45px;
}

.selection-area .video-content {
    text-align: center;
}

.selection-area .sel-col-shoppingxp .content-section .info-block { /* 2 columns */
    display: inline-block;
    vertical-align: top;
    width: 70%;
    padding: 0 29px 30px;
    letter-spacing: 0;
    font-size: 11px;
    line-height: 15px;
    padding: 35px;
}

.selection-area .sel-col-shoppingxp .content-section { /* 2 columns */
    text-align: center;
}

.row .contact-left {
    display: inline-block;
    vertical-align: top;
    width: 45%;
    padding: 15px;
}

.row .contact-right {
    display: inline-block;
    vertical-align: top;
    width: 45%;
    padding: 15px;
}

.selection-area .sel-content {
    position: relative;
    cursor: pointer;
    border: 1px solid transparent;
    border-radius: 3px;
    -webkit-transition: border-color .3s linear, box-shadow .3s linear;
    transition: border-color .3s linear, box-shadow .3s linear;
}

.selection-area .sel-content .tick {
    width: 34px;
    height: 34px;
    position: absolute;
    top: 10px;
    left: 13px;
    overflow: hidden;
    border-radius: 50%;
    background: #2495d1;
    z-index: 1;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .3s linear, visibility .03s linear;
    transition: opacity .3s linear, visibility .03s linear;
}

.selection-area .sel-content .tick:before {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "\e90f";
    font: 11px/1 "icomoon";
    color: #fff;
    z-index: 2;
}

.selection-area .sel-content.added {
    border-color: #ececec;
}

.selection-area .sel-content.added .tick {
    opacity: 1;
    visibility: visible;
}

.selection-area .sel-content.added .footer-bar .txt .check-box:before {
    opacity: 1;
    visibility: visible;
}

.selection-area .sel-content.added .footer-bar em.remove {
    display: inline-block;
}

.selection-area .sel-content.added .footer-bar em.add {
    display: none;
}

.selection-area .sel-content .footer-bar {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 22px 20px;
    font-size: 11px;
    letter-spacing: .92px;
    font-weight: 600;
    text-transform: uppercase;
    background: #f6f6f6;
    text-align: left;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: all .3s linear;
    transition: all .3s linear;
}

.selection-area .sel-content .footer-bar .txt {
    display: block;
    padding-left: 32px;
    position: relative;
}

.selection-area .sel-content .footer-bar .txt .check-box {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
    left: 0;
    content: "";
    width: 20px;
    height: 20px;
    border-radius: 3px;
    border: 1px solid #000;
}

.selection-area .sel-content .footer-bar .txt .check-box:before {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    content: "\e90f";
    font: 9px/1 "icomoon";
    color: #000;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .3s linear, visibility .3s linear;
    transition: opacity .3s linear, visibility .3s linear;
}

.selection-area .sel-content .footer-bar em {
    font-style: normal;
}

.selection-area .sel-content .footer-bar em.remove {
    display: none;
}

.selection-area .tbl {
    display: table;
    width: 100%;
    height: 314px;
    padding: 52px 20px;
    text-align: center;
}

.selection-area .tbl .tc {
    display: table-cell;
    vertical-align: middle;
}

.selection-area .glass-wrap {
    margin-bottom: 25px;
    margin-top: 25px;
}

.selection-area .product-name {
    font-size: 22px;
    font-weight: 400;
    display: block;
    margin-bottom: 28px;
    line-height: 1;
}

.selection-area .product-price {
    font-size: 20px;
    margin-bottom: 2em;
}

.slide-info-block {
    background: #2495d1;
    position: fixed;
    z-index: 9999;
    bottom: 0;
    left: 0;
    right: 0;
    text-align: center;
    padding: 20px 0;
    font-size: 40px;
    line-height: 1.1;
    color: #fff;
    font-weight: 400;
    -webkit-transform: translateY(100%);
    -ms-transform: translateY(100%);
    transform: translateY(100%);
    -webkit-transition: -webkit-transform .3s linear;
    transition: transform .3s linear;
}

.selection-made .slide-info-block {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.slide-info-block p {
    margin-bottom: 5px;
}

.slide-info-block .create {
    font-size: 18px;
    line-height: 1.389;
    color: #fff;
    font-weight: 300;
}

.slide-info-block .create:hover,
.slide-info-block .create:focus {
    color: #000;
}

.slide-info-block .slide-close {
    position: absolute;
    right: 35px;
    top: -30px;
    color: #000;
    font-size: 24px;
}

.slide-info-block .slide-close:hover,
.slide-info-block .slide-close:focus {
    color: #fff;
}

.account-block {
    padding-top: 69px;
    padding-bottom: 79px;
    max-width: 1156px;
}

.account-list-accordion li {
    margin-bottom: 10px;
}

.account-list-accordion li.active .slide-opener {
    background: #2495d1;
    color: #fff;
}

.account-list-accordion .slide-opener {
    display: block;
    text-align: center;
    width: 100%;
    padding: 16px;
    font-size: 17px;
    font-weight: 400;
    color: #2495d1;
    border-radius: 5px;
    border: 2px solid #2495d1;
}

.account-list-accordion .slide-opener:hover {
    background: #2495d1;
    color: #fff;
}

.account-list-accordion .content-holder {
    margin-bottom: 64px;
}

.account-list-accordion .content-holder:last-child {
    margin-bottom: 0;
}

.account-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    border: 2px solid #2495d1;
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 70px;
}

.account-list > li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
}

.account-list > li + li {
    border-left: 2px solid #2495d1;
}

.account-list > li > a {
    display: block;
    text-align: center;
    width: 100%;
    padding: 16px;
    font-size: 17px;
    font-weight: 400;
    color: #2495d1;
}

.account-list > li > a:hover,
.account-list > li > a.active {
    background: #2495d1;
    color: #fff;
}

.table-header {
    padding-bottom: 27px;
    margin-bottom: 14px;
    border-bottom: 1px solid #e8e8e8;
}

.tab-content {
    padding: 0 18px;
}

.tab-content .table-header h2 {
    font-size: 30px;
}

.tab-content .table {
    width: 100%;
}

.tab-content .table .center {
    text-align: center;
}

.tab-content .table tbody tr {
    background: #f6f6f6;
}

.tab-content .table tbody tr:nth-child(even) {
    background: #fff;
}

.tab-content .table th,
.tab-content .table td {
    padding: 16px;
    font-size: 16px;
}

.tab-content .table td {
    color: #494949;
}

.tab-content .table td span {
    display: block;
}

.modal {
    display: block !important;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity .3s linear, visibility .3s linear;
    transition: opacity .3s linear, visibility .3s linear;
    overflow: auto;
}

.modal-open .modal {
    opacity: 1;
    visibility: visible;
}

.datepicker {
    width: 360px;
    padding: 20px !important;
    background: #fff;
    border: 1px solid #000;
}

.datepicker.datepicker-dropdown:after,
.datepicker.datepicker-dropdown:before {
    content: none;
}

.datepicker table {
    width: 100%;
    text-align: center;
}

.datepicker th,
.datepicker td {
    height: 40px;
}

.datepicker th {
    font-size: 15px;
    color: #8c8f93;
    font-weight: 400;
    text-transform: uppercase;
}

.datepicker td {
    height: 38px;
}

.datepicker .datepicker-switch {
    width: auto !important;
}

.store-result-block {
    height: calc(100vh - 126px);
}

.store-result-block .aside-block {
    float: left;
    width: 407px;
    height: 100%;
}

.store-result-block .search-store-block {
    height: 100%;
    background: #f9f9f9;
    overflow: hidden;
}

.store-result-block .search-store-block .holder {
    padding: 30px;
}

.store-result-block .top-block {
    margin-bottom: 35px;
    padding-bottom: 12px;
    /*border-bottom: 1px solid #e6e6e6;*/
}

.store-result-block .top-block .title {
    display: block;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 30px;
}

.store-result-block .top-block .search-form {
    border-radius: 3px;
    width: 100%;
    border: 1px solid #e5e5e5;
    height: 55px;
    background: #fff;
    overflow: hidden;
    padding-right: 65px;
    position: relative;
    margin-bottom: 5px;
}

.gm-info-window {
    border: 1px solid #eee;
}

.store-result-block .top-block .search-form #loaderImage {
    width: 65px;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 65px;
    min-width: 1px;
    background: none;
    padding: 10px;
}

.store-result-block .top-block .search-form input[type="search"] {
    width: 100%;
    height: 100%;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 1px;
    padding: 10px 19px;
}

.store-result-block .top-block .search-form input[type="submit"] {
    width: 65px;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 65px;
    min-width: 1px;
    background: none;
    border-radius: 0;
    border-left: 1px solid #e5e5e5;
    color: #000;
    padding: 10px;
    font-size: 18px;
    line-height: 1;
    font-weight: 600;
}

.store-result-block .top-block .search-form input[type="submit"]:hover,
.store-result-block .top-block .search-form input[type="submit"]:focus {
    background: #000;
    color: #fff;
}

.store-result-block .top-block .result-txt {
    display: block;
    font-size: 12px;
    line-height: 14px;
    font-weight: 300;
    color: #9b9b9b;
}

.store-result-block .top-block .result-txt em {
    font-style: normal;
}

.store-result-block .list-result {
    margin: 0;
    counter-reset: item;
}

.store-result-block .list-result li {
    position: relative;
    margin: 0 0 30px;
    padding: 0 0 19px 39px;
    border-bottom: 1px solid #e8e8e8;
}

.store-result-block .list-result li .num {
    position: absolute;
    left: 0;
    top: 0;
    width: 28px;
    height: 28px;
    background: #000;
    border-radius: 50%;
    overflow: hidden;
    text-align: center;
    color: #fff;
    text-align: center;
    font-size: 12px;
    line-height: 14px;
    padding: 6px;
}

.store-result-block .list-result li .num:before {
    content: counters(item, ".") " ";
    counter-increment: item;
}

.store-result-block .list-result li .result-content {
    float: left;
    width: calc(100% - 124px);
    padding-right: 20px;
    font-size: 14px;
    line-height: 21px;
    font-weight: 300;
    letter-spacing: .47px;
}

.store-result-block .list-result li .result-content .title {
    display: block;
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
    margin-bottom: 3px;
}

.store-result-block .list-result li .result-content .distance {
    display: block;
    font-size: 13px;
    line-height: 15px;
    color: #909090;
    margin-bottom: 10px;
}

.store-result-block .list-result li .result-content address {
    font-style: normal;
    font-weight: 300;
}

.store-result-block .list-result li .result-content .tel {
    color: #000;
}

.store-result-block .list-result li .result-content .tel:hover {
    color: #909090;
}

.store-result-block .list-result li .content-r {
    float: right;
    width: 124px;
    text-align: center;
}

.store-result-block .list-result li .content-r .direction {
    font-size: 13px;
    line-height: 21px;
    color: #2495d1;
}

.store-result-block .list-result li .content-r .direction:focus,
.store-result-block .list-result li .content-r .direction:hover {
    color: #1d76a5;
}

.map-holder {
    height: 100%;
    width: calc(100% - 407px);
    float: right;
    position: relative;
}

.map-holder #map {
    width: 100%;
    height: 100%;
}

.map-holder iframe {
    width: 100%;
    height: 100%;
    display: block;
}

.store-marker {
    font-family: "gillsans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
    position: absolute;
    cursor: pointer;
    width: 35px;
    height: 35px;
    background: #2a2424;
    border-radius: 50%;
    text-align: center;
    font-size: 16px;
    line-height: 20px;
    color: #fff;
    padding: 7px 5px;
}

.popup-block {
    /*position: absolute;
	z-index: 10001;*/
    text-align: left;
    font-family: "gillsans", "Arial", "Helvetica Neue", "Helvetica", sans-serif;
    /*margin-left: 15px;*/
}

.gm-style-iw + div {
    display: none !important;
    /*right: 30px !important;
    top: 30px !important;
    padding:10px !important;
    border:solid;
    background-repeat:no-repeat !important;
    background-size:40px !important;*/
}

.popup-block .title {
    color: #000;
}

.popup-block a.btn {
    font-size: 15px;
}

.popup-block .txt {
    color: #000;
}

.popup-block address {
    color: #000;
}

.popup-block.first-location {
    top: 400px;
    left: 300px;
}

.popup-block.popup-active .popup {
    opacity: 1;
    visibility: visible;
}

.popup-block .popup-opener.open {
    display: block;
    width: 36px;
    height: 36px;
    background: #2a2424;
    border-radius: 50%;
    overflow: hidden;
    text-align: center;
    font-size: 16px;
    line-height: 20px;
    color: #fff;
    padding: 7px 5px;
}

.popup-block .popup-opener.close {
    position: absolute;
    right: 16px;
    top: 18px;
    color: #000;
    font-size: 18px;
    z-index: 1000;
}

.popup-block .popup-opener.close:hover {
    color: #2495d1;
}

.popup-block .popup {
    font-size: 15px;
    line-height: 21px;
    font-weight: 300;
    display: block !important;
    /*position: absolute;
	left: 50%;*/
    /*-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);*/
    /*bottom: 0;*/

    /*width: 363px;*/
    background: #fff;
    box-shadow: 0 0 30px rgba(0, 0, 0, .1);
    padding: 15px;
    /*position: absolute;*/
    border-radius: 3px;
    /*bottom: 140px;*/
    /*opacity: 0;
	visibility: hidden;*/
    -webkit-transition: opacity .3s linear, visibility .3s linear;
    transition: opacity .3s linear, visibility .3s linear;
}

.popup-block .popup:after {
    content: "";
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    height: 0;
    width: 0;
    border-left: 9px solid transparent;
    border-right: 9px solid transparent;
    border-top: 9px solid #fff;
    bottom: -9px;
    margin-left: -3px;
}

.popup-block .title {
    display: block;
    font-size: 16px;
    line-height: 20px;
}

.popup-block .distance {
    display: block;
    font-size: 13px;
    line-height: 21px;
    margin-bottom: 11px;
    color: #909090;
}

.popup-block .info-wrap {
    margin-bottom: 18px;
}

.popup-block address {
    font-weight: 300;
    font-style: normal;
}

.popup-block .txt {
    display: block;
}

.popup-block .txt .tel {
    color: #000;
}

.popup-block .txt .tel:hover {
    color: #2495d1;
}

.popup-block .link {
    display: block;
    text-align: center;
    margin-top: 6px;
}

.popup-block .link a {
    font-size: 13px;
    line-height: 21px;
    color: #2495d1;
}

.popup-block .link a:hover,
.popup-block .link a:focus {
    color: #1d76a5;
}

.carousel .slick-prev {
    left: 20px !important;
}

.carousel .slick-next {
    right: 20px !important;
}

.carousel .slick-arrow {
    position: absolute;
    top: 46% !important;
    z-index: 200;
    padding: 30px 20px;
    font-size: 40px;
    color: #eee;
    font-weight: bold;
    background-color: rgba(128, 128, 128, 0.5);
    cursor: pointer;
    border-radius: 5px;
}

.carousel .slick-arrow:hover {
    background-color: rgba(128, 128, 128, 0.3);
}

@media (min-width: 768px) {
    .nav-opener {
        display: none;
    }

    .log-wrap {
        display: none;
    }

    .account-list-accordion .slide-opener {
        display: none;
    }

    .account-list-accordion .slide {
        display: block !important;
        position: static !important;
        width: 100% !important;
    }
}

@media only screen and (min-width: 1025px) {
    /*custom css*/
    .container {
        padding-left: 35px;
        padding-right: 35px;
    }

    .sInput input {
        width: 350px !important;
    }
}

@media (max-width: 1499px) {
    .schedule-block .two-cols {
        margin: 0 -20px;
    }

    .schedule-block .two-cols .col {
        padding: 0 20px;
    }
}

@media (max-width: 1319px) {
    .two-columns .giveaway-block .text-box .text-frame {
        width: 100%;
    }
}

@media (max-width: 1199px) {
    .location-div {
        padding-top: 40px;
        font-weight: normal;
    }

    .selection-area .sel-col-insurance {
        width: 25%;
    }

    .jcf-select .jcf-select-text {
        padding: 15px;
    }

    #nav > ul > li {
        margin: 0 16px;
    }

    .carousel .content-block .content-holder {
        font-size: 50px;
    }

    .carousel .content-block .content-frame {
        padding-right: 0;
    }

    .carousel .content-block .content-frame p {
        margin-bottom: 50px;
    }

    .carousel .content-block .highlight {
        font-size: 40px;
    }

    .schedule-block .img-wrap {
        width: 50%;
    }

    .schedule-block .schedule-form label {
        margin: 0 0 10px -65px;
        padding-top: 15px;
    }

    .two-columns .follow-block {
        padding: 50px;
    }

    .jcf-select-drop.jcf-select-time .jcf-select-drop-content,
    .jcf-select-drop.jcf-select-glass .jcf-select-drop-content {
        padding: 20px;
    }

    .detail-info-block .detail {
        padding-right: 50px;
    }

    .offers-discount-block .discount-info-block {
        padding: 30px;
    }

    .offers-discount-block .discount-info-block .info-text {
        width: auto;
    }

    .offers-discount-block .discount-info-block .img-wrap {
        margin-right: -30px;
    }

    .product-wall .select-info-block {
        padding: 25px;
        font-size: 32px;
    }

    .edit-frame-block .selection-area .sel-col {
        width: 33.33%;
    }

    .selection-area {
        padding: 80px 0;
    }

    .tab-content {
        padding: 0;
    }

    .tab-content .table th,
    .tab-content .table td {
        font-size: 14px;
        padding: 14px;
    }

    .store-result-block .aside-block {
        width: 280px;
    }

    .store-result-block .search-store-block .holder {
        padding: 30px 20px;
    }

    .store-result-block .top-block .search-form {
        height: 40px;
    }

    .store-result-block .top-block .search-form input[type="search"] {
        padding: 10px;
    }

    .store-result-block .list-result li .result-content {
        float: none;
        width: 100%;
        padding: 0;
        margin-bottom: 20px;
    }

    .store-result-block .list-result li .content-r {
        float: none;
        width: 100%;
    }

    .store-result-block .list-result li .content-r .btn {
        display: block;
    }

    .map-holder {
        width: calc(100% - 280px);
    }
}

@media (max-width: 1023px) {
    #nav > ul > li {
        margin: 0 7px;
        font-size: 13px;
    }

    #nav > ul > li:first-child .drop {
        left: 0;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }

    #nav > ul > li:first-child .drop .drop-wrap:before {
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        left: 28px;
    }

    .search-block input[type="search"] {
        font-size: 40px;
        padding-bottom: 14px;
    }

    #footer .footer-l {
        width: 27.21%;
    }

    #footer .footer-r {
        width: 72.79%;
    }

    #footer .footer-nav {
        width: 50.468%;
    }

    #footer .social-network-holder {
        width: 45.78%;
    }

    #footer .subscribe-form {
        padding-right: 46px;
    }

    #footer .subscribe-form button[type="submit"] {
        width: 46px;
    }

    .hero-section .slick-track {
        height: 500px;
        min-height: 1px;
    }

    .carousel {
        max-height: 100%;
        min-height: 1px;
    }

    .carousel .content-block .content-holder {
        font-size: 47px;
    }

    .carousel .content-block .content-frame p {
        margin-bottom: 35px;
    }

    .appointment-block .top-block {
        font-size: 40px;
        padding: 47px 0 25px;
    }

    .schedule-block {
        padding-top: 80px;
        padding-bottom: 20px;
    }

    .schedule-block .img-wrap {
        float: none;
        width: 100%;
        margin: 0;
    }

    .schedule-block .img-wrap img {
        width: 100%;
    }

    .schedule-block .schedule-form label {
        margin: -30px 0 20px 16px;
        padding: 0;
    }

    .collection-area .top-row {
        margin-bottom: 71px;
    }

    .two-columns .giveaway-block {
        padding-bottom: 30px;
    }

    .two-columns .giveaway-block .img-wrap {
        padding: 24px 0 24px 62px;
    }

    .intro-block .holder {
        height: 500px;
    }

    .collection-carousel {
        padding-bottom: 60px;
    }

    .collection-carousel .img-wrap {
        min-height: 160px;
    }

    .jcf-select-drop.jcf-select-time .jcf-select-drop-content,
    .jcf-select-drop.jcf-select-glass .jcf-select-drop-content {
        margin-left: -10px;
        margin-right: -10px;
    }

    .detail-info-block {
        padding: 80px 0;
    }

    .list-info-block {
        padding: 80px 0;
    }

    .offers-discount-block {
        margin-bottom: 30px;
    }

    .offers-discount-block .top-block .content-left {
        width: 65%;
    }

    .offers-discount-block .top-block .content-left h1 {
        font-size: 65px;
    }

    .offers-discount-block .row .col {
        width: 100%;
    }

    .offers-discount-block .discount-info-block .info-text {
        max-width: 245px;
    }

    .select-appointment-block {
        max-width: 768px;
    }

    .confirm-block .close-wrap {
        margin-right: 40px;
    }

    .ui-datepicker {
        width: 331px;
        padding: 10px 2px;
    }

    .product-wall .select-info-block {
        font-size: 22px;
    }

    .edit-frame-block {
        padding: 80px 0;
    }

    .edit-frame-block .selection-area .sel-col {
        width: 50%;
    }

    .selection-area .sel-col {
        width: 50%;
    }

    .selection-area .sel-content .footer-bar .txt .check-box {
        margin-top: -2px;
    }

    .account-list {
        margin-bottom: 30px;
    }

    .account-list > li > a {
        font-size: 14px;
        padding: 16px 4px;
    }

    .table-header {
        padding-bottom: 20px;
        margin-bottom: 30px;
    }

    #banner3 {
        font-size: 70px;
    }
}

@media (max-width: 767px) {
    .logo {
        margin-top: -15px;
    }

    .Product-Filter .jcf-select, .Product-Filter .prod-search {
        width: 100% !important;
    }

    .Product-Filter .select-appointment-block {
        padding: 0px !important;
    }

    /*.search .fa-search { top: 2px!important; }*/
    table.mobile td, #tbl-eyeglasses td {
        float: left;
        text-align: center !important;
        width: 100% !important;
    }

    #tbl-eyeglasses ul ~ td {
        width: 50% !important;
    }

    .entry-price {
        background-position: right -70px center !important;
    }

    .schedule-buttons .btn {
        /*left: 30px !important;
        bottom: -10px !important;*/
        margin-top: 15px !important;
    }

    .schedule-buttons a {
        padding: 10px 10px !important;
        margin-right: 20px !important;
        font-size: 14px;
    }

    .slick-arrow {
        padding: 10px 10px;
        font-size: 25px;
        border-radius: 3px;
    }

    h2,
    .h2 {
        font-size: 35px;
        margin-bottom: 3px;
    }

    .selection-area .sel-col-shoppingxp .info-block { /* 2 columns */
        width: 50%;
    }

    .selection-area .sel-col-shoppingxp .content-section .info-block { /* 2 columns */
        width: 100%;
    }

    input[type="submit"] {
        min-width: 1px;
    }

    #wrapper {
        padding-top: 80px;
    }

    .btn {
        padding: 18px;
    }

    .banner .img-wrap {
        min-width: 850px;
    }

    /*.banner .text-container h1 {*/
    /*font-size: 40px;*/
    /*}*/
    .banner .banner-content {
        width: 100%;
    }

    .banner .banner-content .content-frame {
        margin-bottom: 0;
    }

    #sidebar {
        float: none;
        width: 100%;
        padding-right: 0;
        margin-bottom: 20px;
    }

    #content {
        float: none;
        width: 100%;
    }

    #header > .container {
        padding-left: 15px;
        padding-right: 15px;
    }

    .logo {
        width: 180px;
    }

    #nav {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        margin: 0;
        z-index: 9999;
        overflow-y: auto;
        overflow-x: hidden;
        padding: 65px 8px;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: background .3s linear, opacity .3s linear, visibility .3s linear;
        transition: background .3s linear, opacity .3s linear, visibility .3s linear;
    }

    .nav-active #nav {
        opacity: 1;
        visibility: visible;
        background: #fff;
    }

    #nav > ul {
        text-align: left;
        padding-bottom: 60px;
    }

    #nav > ul > li {
        display: block;
        margin-left: 0;
        margin-right: 0;
    }

    #nav > ul > li + li {
        margin-top: 25px;
    }

    #nav > ul > li:hover .drop {
        display: block;
    }

    #nav > ul > li.has-drop-down > a:before {
        content: none;
    }

    #nav > ul > li > a {
        display: block;
        padding: 0 24px !important;
    }

    .drop {
        display: none;
        position: static;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        opacity: 1;
        visibility: visible;
        padding-top: 6px;
    }

    .drop .drop-wrap {
        box-shadow: none;
        width: 100% !important;
    }

    .drop .drop-wrap:before {
        content: none;
    }

    .drop .drop-wrap.style-1 {
        padding: 0 24px;
    }

    .drop .drop-wrap .row .col {
        padding: 26px 0 28px;
    }

    .drop .drop-wrap .row .category {
        padding: 3px 15px;
    }

    .drop .drop-wrap .list {
        float: none;
        width: 100%;
        padding-left: 0;
        margin-bottom: 30px;
        font-size: 16px;
    }

    .drop .drop-wrap .list li {
        padding: 0;
    }

    .drop .drop-wrap .list li a {
        display: block;
        padding: 13px 0;
    }

    .right-block {
        right: 15px;
    }

    .log-wrap {
        float: none;
        display: inline-block;
        vertical-align: middle;
        padding: 0 3px;
    }

    .log-res-block {
        display: none;
    }

    .search-holder {
        display: inline-block;
        vertical-align: middle;
        padding: 0 3px;
    }

    .search-block {
        padding: 18px 0;
    }

    .search-block .container {
        padding: 0 15px;
    }

    .search-block input[type="search"] {
        font-size: 24px;
    }

    #footer .footer-t {
        padding-top: 39px;
        padding-bottom: 20px;
    }

    #footer .footer-l {
        float: none;
        width: 100%;
        padding: 0;
        margin-bottom: 37px;
    }

    #footer .footer-r {
        float: none;
        width: 100%;
    }

    #footer .footer-nav {
        float: left;
        width: 62.5%;
    }

    #footer .footer-link {
        float: none;
        width: 100%;
    }

    #footer .social-network-holder {
        float: left;
        width: 37.5%;
    }

    #footer .social-networks li a {
        padding-left: 32px;
    }

    #footer .signup-block {
        float: none;
        width: 100%;
        margin-bottom: 47px;
    }

    #footer .signup-block p {
        padding-right: 0;
    }

    .hero-section .slick-track {
        height: auto;
    }

    .carousel .slide {
        display: block;
    }

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

    .carousel .img-block .img-wrap {
        min-height: 335px;
        display: block;
    }

    .carousel .content-block {
        display: block;
        width: 100%;
    }

    .carousel .content-block .content-holder {
        padding: 37px 35px 69px;
    }

    .carousel .content-block .content-frame {
        float: none;
        letter-spacing: 0;
    }

    .carousel .content-block .content-frame .btn {
        width: 100%;
        padding: 20px 15px;
    }

    .slick-dots {
        bottom: 21px;
    }

    .home-hero .slick-dots {
        height: 20px;
    }

    .appointment-block .top-block > .container {
        padding: 0 30px;
    }

    .appointment-block .top-block p {
        margin-bottom: 27px;
    }

    .schedule-block {
        padding: 0 !important;
    }

    .schedule-block .two-cols {
        margin: 0;
    }

    .schedule-block .two-cols .col {
        padding: 0;
        margin-bottom: 0;
    }

    .schedule-block .img-wrap {
        margin-bottom: 37px;
    }

    .schedule-block .schedule-entry-block {
        padding: 15px 35px 49px;
        margin-left: -100%;
        display: none;
    }

    /* fixes for mobile home page gender selection*/
    .appointment-block {
        padding-bottom: 300px !important;
    }

    .women-mobile {
        position: absolute;
        left: 0 !important;
        margin-left: 0 !important;
    }

    .men-mobile {
        position: absolute;
        left: 0 !important;
        margin-right: 0 !important;
    }

    .schedule-block .schedule-entry-block p {
        margin-bottom: 25px;
    }

    .schedule-block .schedule-form [type="radio"] + .fake-input:before {
        content: "";
        position: absolute;
        top: 6px;
        right: 6px;
        bottom: 6px;
        left: 6px;
        background: #777;
        border-radius: 100%;
        opacity: 0;
    }

    .schedule-block .schedule-form [type="radio"]:checked + .fake-input:before {
        opacity: 1;
    }

    .schedule-block .schedule-form label {
        margin: 0;
        font-size: 30px;
    }

    .schedule-block .schedule-form label.male {
        margin-left: 35px;
    }

    .schedule-block .schedule-form label.male ~ .schedule-entry-block {
        margin: 0 -100% 0 0;
    }

    .schedule-block .schedule-form .fake-input {
        display: inline-block;
        width: 25px;
        height: 25px;
        border: 1px solid #d0d0d0;
        background: #f6f6f6;
        vertical-align: middle;
        position: relative;
        margin: -7px 7px 0 0;
        border-radius: 50%;
    }

    .schedule-block .schedule-container .btm-row .btm-col.go {
        width: 88px;
    }

    .schedule-block .schedule-container .btm-row .btm-col.time {
        width: calc(100% - 88px);
    }

    .collection-area {
        padding: 31px 0 2px;
    }

    .collection-area .top-block {
        margin-bottom: 25px;
    }

    .tabset li a {
        min-width: 154px;
    }

    .two-columns {
        display: block;
    }

    .two-columns .column {
        width: 100%;
    }

    .two-columns .giveaway-block {
        padding-bottom: 52px;
    }

    .two-columns .giveaway-block .img-wrap {
        padding: 37px 0 33px 80px;
    }

    .two-columns .giveaway-block .text-box h1 {
        font-size: 35px;
        margin-bottom: 10px;
    }

    .two-columns .giveaway-block .text-box p {
        padding-right: 43px;
        margin-bottom: 26px;
    }

    .two-columns .follow-block {
        padding: 37px 35px 61px;
    }

    .two-columns .follow-block .img-holder {
        margin-bottom: 7px;
    }

    .intro-block .holder {
        height: 383px;
    }

    .intro-block .holder .frame {
        padding-top: 25px;
        padding-bottom: 25px;
    }

    .intro-block h1 {
        font-size: 35px;
        line-height: 42px;
        margin-bottom: 1px;
    }

    .intro-block p {
        margin-bottom: 37px;
    }

    .collection-carousel {
        padding-bottom: 0;
    }

    .collection-carousel .slide {
        padding: 0 10px;
        margin: 0 -14px;
    }

    .collection-carousel .slide-content {
        padding: 0;
        padding: 0 10px;
        margin-bottom: 64px;
    }

    .collection-carousel .img-wrap {
        min-height: 72px;
    }

    .collection-carousel .glass-name {
        font-size: 14px;
    }

    .collection-carousel .slick-arrow {
        display: none;
    }

    .page-intro-block h2 {
        padding: 0;
        font-size: 35px;
    }

    .detail-info-block {
        padding: 50px 0;
    }

    .detail-info-block h3 {
        font-size: 24px;
        text-align: center;
    }

    .detail-info-block .detail {
        padding: 0;
        float: none;
        width: 100%;
        margin-bottom: 40px;
    }

    .detail-info-block .detail .btn {
        display: block;
    }

    .detail-info-block .img-wrap {
        float: none;
        width: 100%;
        text-align: center;
    }

    .list-info-block {
        padding: 50px 0;
    }

    .list-info-block h3 {
        font-size: 24px;
    }

    .list-info-block .list-block {
        float: none;
        width: 100%;
        margin-bottom: 40px;
    }

    .list-info-block .img-wrap {
        padding: 0;
        text-align: center;
    }

    .list-info-block .btn {
        display: block;
    }

    .offers-discount-block .top-block .content-left {
        width: 100%;
    }

    .offers-discount-block .top-block .content-left h1 {
        font-size: 50px;
    }

    .offers-discount-block .discount-info-block {
        display: block;
        padding: 20px;
    }

    .offers-discount-block .discount-info-block .info-text {
        max-width: none;
        padding-right: 0;
        margin-bottom: 40px;
    }

    .offers-discount-block .discount-info-block .img-wrap {
        margin-right: -20px;
        text-align: right;
    }

    .select-appointment-block {
        padding: 50px 20px;
    }

    .select-appointment-block h1 {
        font-size: 32px;
    }

    .select-appointment-block .row .col {
        float: none;
        width: 100%;
    }

    .select-appointment-block .row .col2 {
        float: none;
        width: 100%;
    }

    .select-appointment-block .row .divider {
        display: none;
    }

    .confirm-block {
        padding: 18px 0;
    }

    .confirm-block .container {
        padding: 0 15px;
    }

    .confirm-block .close-wrap {
        margin-right: 20px;
    }

    .confirm-block .top-content {
        padding: 0;
    }

    .confirm-block .info-row {
        padding: 20px;
    }

    .confirm-block .info-row .info-col-l {
        float: none;
        width: 100%;
        padding: 0;
        margin-bottom: 20px;
    }

    .confirm-block .info-row .info-col-r {
        float: none;
        width: 100%;
    }

    .ui-datepicker {
        width: auto;
        left: 20px !important;
        right: 20px !important;
        padding: 10px;
    }

    .product-wall .select-info-block {
        display: block;
    }

    .product-wall .select-info-block p {
        margin-bottom: 20px;
    }

    .product-wall .select-info-block .btn {
        display: block;
    }

    .product-wall .top-text-block {
        position: static;
        margin-bottom: 20px;
    }

    .edit-frame-block .selection-area .sel-col {
        width: 100%;
    }

    .edit-frame-block .close {
        top: -50px;
    }

    .selection-area .sel-col {
        width: 100%;
    }

    .slide-info-block {
        font-size: 24px;
        padding: 54px 0 30px;
    }

    .slide-info-block .create {
        font-size: 16px;
    }

    .slide-info-block .slide-close {
        right: 20px;
        top: -35px;
    }

    .account-block {
        padding: 30px 15px;
    }

    .account-list-accordion .slide-opener {
        padding: 10px;
    }

    .account-list-accordion .js-tab-hidden {
        position: static !important;
        display: block !important;
    }

    .account-list-accordion .slide-content {
        padding: 30px 0;
    }

    .account-list {
        display: none;
    }

    .tab-content .table-header h2 {
        font-size: 24px;
    }

    .tab-content .table tbody,
    .tab-content .table td,
    .tab-content .table tr {
        display: block;
    }

    .tab-content .table {
        display: block;
    }

    .tab-content .table .center {
        text-align: left;
    }

    .tab-content .table thead {
        display: none;
    }

    .tab-content .table tbody {
        display: block;
        border-left: 130px solid #333;
        float: left;
        width: 100%;
    }

    .tab-content .table td {
        padding: 0 0 0 126px;
        margin: 0 0 0 -126px;
        white-space: nowrap;
        border-top: 0;
    }

    .tab-content .table td:before {
        content: attr(data-label);
        padding: 15px 10px;
        display: inline-block;
        color: #fff !important;
        font-weight: bold;
        width: 126px;
        vertical-align: middle;
        margin: 0 0 0 -126px;
        position: relative;
        white-space: normal;
    }

    .tab-content .table td span {
        white-space: normal;
        display: inline-block;
        vertical-align: middle;
        padding: 20px;
    }

    .tab-content .table .btn.small {
        padding: 9px 15px;
    }

    .store-result-block {
        height: auto;
    }

    .store-result-block .aside-block {
        float: none;
        width: 100%;
    }

    .store-result-block .aside-block .jcf-scrollable-wrapper {
        height: auto !important;
    }

    .store-result-block .search-store-block {
        height: auto !important;
    }

    .map-holder {
        float: none;
        width: 100%;
        height: 400px;
    }

    .popup-block.first-location {
        left: 136px;
        top: 200px;
    }

    .popup-block .popup {
        width: 280px;
    }

    .color-image .img-wrap {
        margin-top: -30px;
        float: left !important;
    }

    .color-image .standard-size {
        width: 100% !important;

        margin-bottom: 10px;
    }

    .selection-area .sel-col-insurance {
        width: 33%;
    }
}

@media (max-width: 374px) {
    .selection-area .sel-col-insurance {
        width: 50%;
    }

    .logo {
        width: 150px;
    }

    .drop .drop-wrap .row .img-wrap {
        padding-left: 15px;
        width: 42.78%;
    }

    .drop .drop-wrap .row .category {
        width: 56.22%;
    }

    #footer .footer-nav {
        width: 55.5%;
    }

    #footer .social-network-holder {
        width: 44.5%;
    }

    .carousel .content-block .content-holder {
        font-size: 42px;
    }

    .appointment-block .top-block {
        font-size: 34px;
    }

    .tabset li a {
        min-width: 120px;
    }

    .ui-datepicker {
        padding: 10px 4px;
    }

    .ui-datepicker th {
        font-size: 12px;
    }

    .ui-datepicker td span,
    .ui-datepicker td a {
        padding: 5px;
    }

    .color-image .img-wrap {
        display: none !important;
    }
}