@font-face { font-family: 'jfa-icons'; src: url("../fonts/jfa-icons.eot") format("embedded-opentype"); src: url("../fonts/jfa-icons.eot?#iefix") format("embedded-opentype"), url("../fonts/jfa-icons.woff") format("woff"), url("../fonts/jfa-icons.ttf") format("truetype"), url("../fonts/jfa-icons.svg#jfa-icons") format("svg"); font-weight: normal; font-style: normal; }

/*==========  Site default styles - _defaults.scss  ==========*/
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }

html { min-height: 100%; }

body { font-family: "Lato", "Oxygen", "Avenir", "Tahoma", sans-serif; font-weight: 400; font-size: 14px; letter-spacing: 0.065em; line-height: 1.6; margin: 0; padding: 0; -webkit-font-smoothing: subpixel-antialiased !important; background: url("../img/WineMarkFooter.jpg") no-repeat center bottom scroll white; background-size: 35%; }
body.home { background: none; }
@media (min-width: 43.75em) { body { line-height: 1.75; background-size: auto; } }

a { text-decoration: none; -webkit-transition: all 0.3s ease; -webkit-transition-delay: 0s; -moz-transition: all 0.3s ease 0s; -o-transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; }
a, a:visited { color: #bc226d; font-weight: 400; }
a:hover { color: #850746; }
p a:not([href$='.jpg']) { border-bottom: 1px solid white; }
p a:hover:not([href$='.jpg']) { border-bottom: 1px solid rgba(133, 7, 70, 0.2); }
a[rel="download"]:before { content: "\2b07"; font-family: 'jfa-icons'; padding-right: 0.5em; display: inline-block; vertical-align: baseline; }

dt, h1, h2, h3 { font-weight: 700; font-family: "Lato", "Oxygen", "Avenir", sans-serif; }

h1 { text-transform: uppercase; letter-spacing: 0.13em; }

p { margin: 0 0 1.75em; }

img { max-width: 100%; }

::selection { background: #bc226d; color: white; }

::-moz-selection { background: #bc226d; color: white; }

.jfa-button { color: #fff; -webkit-font-smoothing: antialiased; width: 8.824em; height: 1.765em; background: #850746; font-size: 1.214em; border: none; display: block; padding: 0 1em; margin-bottom: 2em; }
.jfa-button:visited { color: white; }
.jfa-button:hover { background: #bc226d; color: white; }
.jfa-button:active { background: #72063c; color: rgba(255, 255, 255, 0.5); }

.widget-area ul, .main-navigation ul { list-style: none; padding-left: 0; }

/*==========  Header  ==========*/
.site-header { top: 0; width: 100%; float: none; background: white; text-align: center; font-weight: 700; font-family: "Lato", "Oxygen", "Avenir", sans-serif; height: 5.714em; z-index: 100; position: fixed; }
.admin-bar .site-header { top: 23px; }
.site-header + div { margin-top: 5.714em; }
.site-header h1 { /* Logotype */ font-size: 1.143em; padding: 2.143em 0 1.429em; line-height: 1; margin: 0 auto; }
.site-header a { font-weight: 700; letter-spacing: 0.26em; color: #222 !important; text-transform: uppercase; }

/* Menu button for small-screen view */
.menu-toggle { -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 0; border: none; box-shadow: none; background: none; cursor: pointer; position: absolute; right: 2em; top: 2em; font-size: 11px; -webkit-tap-highlight-color: none !important; outline: none !important; padding: 0; display: block; }
.menu-toggle span { display: block; overflow: hidden; width: 22px; font-family: 'jfa-icons'; font-size: 2.5em; }
.menu-toggle span:before { line-height: .75em; font-family: 'jfa-icons'; content: "+"; }

/* Site navigation */
.site-header nav { clear: both; display: block; float: left; }

.menu { display: none; position: absolute; list-style: none; margin: auto; border: 1px solid #ccc; border-style: solid none; left: 0; right: 0; background: white; overflow: visible; }
.toggled .menu { text-align: left; display: block; }
.menu li > a { background: white; display: block; letter-spacing: 0.13em; text-align: center; font-family: "Lato", "Oxygen", "Avenir", sans-serif; }
.toggled .menu li > a { -webkit-transition: all 0.3s ease-in; -moz-transition: all 0.3s ease-in; -o-transition: all 0.3s ease-in; transition: all 0.3s ease-in; background-color: white; width: 100%; }
.toggled .menu li > a:hover, .toggled .menu li > a:active, .toggled .menu li > a:focus { background-color: #bc226d; color: white !important; }
@media (min-width: 43.75em) { .toggled .menu li > a:hover, .toggled .menu li > a:active, .toggled .menu li > a:focus { background-color: transparent; color: #bc226d !important; } }
.menu li { display: block; position: relative; margin-left: 0; line-height: 3.889; border-top: 1px solid #ccc; font-size: 1em; }
.menu li:first-child { border-top: none; }
.menu li.current_page_item a { color: #bc226d; }

/* Sliding line under active item */
.highlight { position: absolute; bottom: 0; left: 0; text-align: center; height: 2px; }
.highlight:after { position: absolute; width: 65px; margin: auto; left: 0; right: 0; height: 2px; content: ""; }

/* Social icons (mobile view only) */
.toggled .social-bar { text-align: center; letter-spacing: normal; }
.toggled .social-bar a { float: none; font-family: 'jfa-icons'; display: inline-block; margin: 0.571em 0.429em 0em; font-weight: 400; padding: 0; line-height: 1; color: #222; -webkit-font-smoothing: antialiased !important; background: white !important; }
.toggled .social-bar a:hover { color: #bc226d !important; }

/* Desktop/large screen layout */
@media (min-width: 43.75em) { .site-header { left: 0; right: 0; margin: auto; max-width: none !important; width: auto; height: 12.857em; }
  .site-header + div { margin-top: 12.857em; }
  .site-header h1 { padding: 3.929em 0 2.5em; }
  .site-header nav, .toggled nav { float: none; clear: both; margin: 0 6.383% 1.786em; }
  .toggled .menu, .menu { position: relative; display: table; margin: auto; }
  .toggled .menu li, .menu li { display: table-cell; border-top: none; font-size: 0.643em; }
  .toggled .menu a, .menu a { padding: 0 2.15em; white-space: nowrap; background: none; }
  .toggled .menu .current_page_item a, .menu .current_page_item a { color: #222; }
  .highlight:after { background: #bc226d; width: 65px; margin: auto; left: 0; right: 0; }
  .menu-toggle, .social-bar { display: none !important; } }
/*==========  Main content areas  ==========*/
.content-area { clear: both; }
.content-area h1.entry-title { line-height: 1.2; font-size: 1.4em; letter-spacing: 0.13em; position: relative; padding-top: 0; font-weight: 700; }
@media (min-width: 43.75em) { .content-area h1.entry-title {  font-size: 1.8em; margin-top: 0; } }
.content-area h2 { font-size: 1.214em; }
.content-area h3 { font-size: 1.143em; }
.content-area img { height: auto !important; }
.content-area img.size-full { width: 100%; }
.content-area .entry-content h2 + p { margin-top: .5em; }

/* Back-to-root link in footer area */
.go-home { display: block; bottom: 0; left: 0; right: 0; width: 25%; height: 0; margin: -10% auto 0; padding-bottom: 10%; }

/*==========  Homepage styling - _home2.scss  ==========*/
.page-home { text-align: center; }
.page-home #masthead { display: none; }
.page-home #page { *zoom: 1; max-width: 44.0em; _width: 44.0em; padding-left: 1.333em; padding-right: 1.333em; margin-left: auto; margin-right: auto; }
.page-home #page:after { content: ""; display: table; clear: both; }
.page-home .home-content { position: absolute; top: 0; bottom: 0; height:100%; margin: auto; left: 0; right: 0; }
.page-home a { position: relative; opacity: 1; z-index: 10; white-space: nowrap; }
.page-home span { height: 280px; width: 280px; display: block; position: relative; right: 100px; top: -10px; opacity: 0.001; z-index: 0; }

#home-name { font-size: 2em; display: block; top: 50%; left: 0; right: 0; margin: -3em auto 0; height: 6em; line-height: 6em; -webkit-transform: scale(0.65); -moz-transform: scale(0.65); -ms-transform: scale(0.65); -o-transform: scale(0.65); transform: scale(0.65); width: 28.571em; max-width:100%; position: relative; }
#home-name a { position: relative; font-family: "Lato", "Oxygen", "Avenir", sans-serif; -webkit-font-smoothing: subpixel-antialiased !important; font-weight: 700; letter-spacing: 0.39em; color: #222; opacity: 1; }
#home-name span { position: absolute; z-index:-1; background: url("../img/WineStain.jpg") 0 0 no-repeat; display: block; opacity: 0.001; max-width:70%; background-size:contain; }

/* Wine drops */
#drop1, #drop2 { display: block; position: fixed; opacity: 0.001; background-size: cover; -webkit-transform: scale(0.65); -moz-transform: scale(0.65); -ms-transform: scale(0.65); -o-transform: scale(0.65); transform: scale(0.65); -webkit-transform: translate(0, 50px); -moz-transform: translate(0, 50px); -ms-transform: translate(0, 50px); -o-transform: translate(0, 50px); transform: translate(0, 50px); }

#drop1 { width: 60px; height: 66px; bottom: 5em; left: 25%; background: url("../img/WineDrop1.jpg") center no-repeat; }

#drop2 { width: 220px; height: 70px; left: 35%; bottom: 0; background: url("../img/WineDrop2.jpg") center no-repeat; }

/* Desktop size view */
@media only screen and (min-width: 43.75em) { .home-content { max-width: 65.333em; padding-left: 1.333em; padding-right: 1.333em; margin-left: auto; margin-right: auto; width: 82.979%; float: left; margin-right: 2.128%; }
  .home-content:after { content: ""; display: table; clear: both; }
  #home-name { -webkit-transform: none; -moz-transform: none; -ms-transform: none; -o-transform: none; transform: none; font-size: 2.571em; }
  #drop1, #drop2 { -webkit-transform: none; -moz-transform: none; -ms-transform: none; -o-transform: none; transform: none; }
  #home-name span { max-width:none; } }
.widget-area { font-size: 13px; }
.widget-area .blurb-image { text-align: center; position: relative; width: 100%; height: 13.846em; vertical-align: middle; }
.widget-area .blurb-image img { position: absolute; top: auto; bottom: 25px; left: 0; right: 0; margin: auto; width: 100px; }

.blog-widgets .widget { position: relative; }

.widgettitle, .widget-title { font-size: 0.808em; line-height: 2; letter-spacing: 0.3em; text-transform: uppercase; margin-top: 4.615em; border-top: 1px solid #ccc; padding-top: 7px; }

.widget_krate_social_widget { text-align: center; }
.widget_krate_social_widget h2 { font-size: 1em; letter-spacing: 0.35em; text-transform: uppercase; font-weight: 700; }
.blog-widgets .widget_krate_social_widget { width: 80%; margin: auto; }
@media (min-width: 43.75em) { .blog-widgets .widget_krate_social_widget { width: 30%; } }
.blog-widgets .widget_krate_social_widget .widgettitle { border-top: none; }

.social-icon { color: #222222; font-size: 2em; margin: .2em .2em 0; display: inline-block; float: none; -webkit-transition: all 0.2s ease-out; -webkit-transition-delay: 0.1s; -moz-transition: all 0.2s ease-out 0.1s; -o-transition: all 0.2s ease-out 0.1s; transition: all 0.2s ease-out 0.1s; }
.social-icon:visited { color: inherit; }
.social-icon:hover { color: #bc226d; -webkit-transform: scale(1.1); -moz-transform: scale(1.1); -ms-transform: scale(1.1); -o-transform: scale(1.1); transform: scale(1.1); }

@media (min-width: 43.75em) { .page-contact .widget-area { padding-top: 140px; } }

.pantry-facts { margin-top: 4.286em; clear: both; }
.pantry-facts ul, .pantry-facts li { padding: 0; list-style: none; }
.pantry-facts li { display: block; clear: both; float: none; overflow: hidden; padding: 1em 0; }
.pantry-facts img { float: left; margin: 0 1em 0 0; max-width: 28%; position: relative; top: -.5em; }
@media (min-width: 43.75em) { .pantry-facts img { max-width: 40%; top: 0; } }
.pantry-facts figcaption { clear: none; line-height: 1.4; }
.pantry-facts figure { width: 100%; }
.pantry-facts figure, .pantry-facts figcaption { margin: 0; padding: 0; }
.pantry-facts em { font-style: normal; font-variant: normal; font-weight: 400; font-size: 2.5em; line-height: 1; color: #bc226d; display: block; }
@media (min-width: 43.75em) { .pantry-facts em { font-size: 3em; } }

.wpcf7-form .wpcf7-submit, input.submit, input[type="submit"] { color: #fff; -webkit-font-smoothing: antialiased; width: 9.412em; height: 1.765em; background: #850746; font-size: 1.214em; border: none; display: block; -webkit-appearance: none !important; -webkit-border-radius: 0; position: relative; top: 0em; cursor: pointer; }
.wpcf7-form .wpcf7-submit:visited, input.submit:visited, input[type="submit"]:visited { color: white; }
.wpcf7-form .wpcf7-submit:hover, input.submit:hover, input[type="submit"]:hover { background: #bc226d; color: white; }
.wpcf7-form .wpcf7-submit:active, input.submit:active, input[type="submit"]:active { background: #72063c; color: rgba(255, 255, 255, 0.5); }

.contact .entry-content input[type="submit"] { top: -4em !important; }

form p { clear: both; }
form label { float: left; clear: both; width: 11.071em; margin-top: 1.071em; }

input[type="email"], input[type="text"], textarea { width: 20em; height: 2.143em; clear: both; border: 1px solid #ccc; position: relative; -webkit-appearance: none !important; -webkit-border-radius: 0; }

input[type="submit"], .jfa-button { clear: both; margin-left: 0; width: 9.643em !important; -webkit-transition: all 0.2s ease-in-out; -webkit-transition-delay: 0s; -moz-transition: all 0.2s ease-in-out 0s; -o-transition: all 0.2s ease-in-out 0s; transition: all 0.2s ease-in-out 0s; }
@media (min-width: 43.75em) { input[type="submit"], .jfa-button { margin-left: 15em; } }

.jfa-button { margin-left: 0; text-align: center; width: 11.529em; padding: 0; cursor: pointer; }

.wpcf7-form-control-wrap { float: left; width: auto; }
@media (min-width: 480px) { .wpcf7-form-control-wrap { width: 30em; } }
.wpcf7-form-control-wrap textarea { height: 11.429em; margin-bottom: 1.75em; }

span.wpcf7-not-valid-tip, form p.error, .wpcf7-validation-errors { padding: 2px 8px; color: #bc226d; border: 1px solid #bc226d; font-weight: 400; background: #FFE0E5; width: auto; }
span.wpcf7-not-valid-tip:before, form p.error:before, .wpcf7-validation-errors:before { content: "!"; background: #bc226d; width: 1.5em; height: 1.5em; position: absolute; left: -1.6em; padding: 2px; top: -1px; bottom: -1px; text-align: center; font-weight: 700; color: white; }
@media (min-width: 43.75em) { span.wpcf7-not-valid-tip, form p.error, .wpcf7-validation-errors { white-space: nowrap; } }

span.wpcf7-not-valid-tip { padding: 0; overflow: hidden; width: 1.75em; height: 1.75em; left: 16em; top: 0; border: none; }
span.wpcf7-not-valid-tip:before { left: 0; right: 0; border: none; }
@media (min-width: 43.75em) { span.wpcf7-not-valid-tip { width: auto; border: 1px solid #bc226d; padding: 0px 8px; top: -25%; left: 50%; overflow: visible; right: auto; }
  span.wpcf7-not-valid-tip:before { left: -1.6em; right: auto; width: 1.5em; border-bottom: none; } }

form p.error, .wpcf7-validation-errors { position: relative; border: none !important; width: auto; background: none; }
@media (min-width: 43.75em) { form p.error, .wpcf7-validation-errors { top: -4em; } }

form p.error, form p.success { padding-left: 10px; margin-left: 1.75em; max-width: 16em; white-space: normal; line-height: 1; padding-top: 0; }
form p.error:before, form p.success:before { font-size: 1.143em; height: 1.75em; width: 1.75em; line-height: 1.75; padding: 0; vertical-align: middle; }

form p.success { color: #75c9da; position: relative; left: 0; margin-left: 0; font-weight: 400; font-size: 1.1em; }
form p.success:before { border-radius: 50%; content: "\2713"; background: #75c9da; font-size: 1.429em; height: 1.75em; width: 1.75em; line-height: 1.75; text-align: center; vertical-align: middle; color: white; margin-right: 1em; }

@media (min-width: 43.75em) { form label { width: 15%; margin-top: 5px; margin-bottom: 1.429em; }
  input[type="email"], input[type="text"] { clear: none; font-size: 12px; max-width: 28em; width: 30em; width: 80%; }
  .wpcf7-form-control-wrap textarea, #your_message { width: 80%; max-width: none; } }
.ui-datepicker { display: none; }

.wpcf7-validates-as-date { width: 130px !important; }

#how_heard, #menu_guests, #menu_agent { width: 150px; }

#solitary { margin: 0 6.383% 1.667em; z-index: 10; }

.posted-on { font-size: 0.714em; text-transform: uppercase; letter-spacing: 0.065em; margin-bottom: 2em; }

.type-post { border-bottom: 1px solid #ccc; margin-bottom: 1.429em; padding-bottom: 1.429em; }
.type-post h1.entry-title { margin: 0 auto 0.714em 0; color: #222; font-size: 1.5em; font-weight: 700; line-height: 1.75; text-transform: none; padding-top: 3em; text-transform: none; letter-spacing: 0.065em; }
@media (min-width: 43.75em) { .type-post h1.entry-title { padding-top: 0; } }
.type-post h1.entry-title a { font-weight: 700; color: #222; text-transform: none; letter-spacing: 0.065em; }
.type-post h1.entry-title a:hover { color: #bc226d; border-bottom: 1px solid rgba(133, 7, 70, 0.2); }

#nav-below { display: table; width: 100%; }
#nav-below .nav-previous, #nav-below .nav-next { display: table-cell; min-width: 49%; }
#nav-below .nav-next { text-align: right; }

.hentry { position: relative; }

.blog .drop { z-index: -1; background-image: url("../img/wine-drops.jpg"); background-repeat: no-repeat; position: absolute; left: -15%; top: 90%; opacity: 0; -webkit-transition: all 0.5s ease-out; -moz-transition: all 0.5s ease-out; -ms-transition: all 0.5s ease-out; -o-transition: all 0.5s ease-out; transition: all 0.5s ease-out; }
@media (min-width: 43.75em) { .blog .drop { display: block; } }

@media only screen and (max-width: 699px) { .blog #content, .single-post #content { padding-top: 5em; }
  .blog h1.entry-title, .single-post h1.entry-title { padding-top: 0; } }
.site-content, .site-footer { *zoom: 1; max-width: 44.0em; _width: 44.0em; padding-left: 1.333em; padding-right: 1.333em; margin-left: auto; margin-right: auto; }
.site-content:after, .site-footer:after { content: ""; display: table; clear: both; }

#primary, #secondary { margin: auto; }

.site-content { margin-bottom: 12.857em; }
.site-content:after { content: ""; display: table; width: 100%; clear: both; float: none; }

@media (min-width: 43.75em) { .site-header { max-width: 65.333em; padding-left: 1.333em; padding-right: 1.333em; margin-left: auto; margin-right: auto; }
  .site-header:after { content: ""; display: table; clear: both; }
  .site-content, .site-header, .site-footer { max-width: 65.333em; }
  #primary { width: 65.957%; float: left; margin-right: 2.128%; margin-top: 7.857em; }
  #secondary { width: 23.404%; float: right; margin-right: 0; } }
[class*="icon-"] { font-family: 'jfa-icons'; letter-spacing: 0px; font-weight: normal; text-transform: none; line-height: 1; -webkit-font-smoothing: antialiased; }

.icon-menu:before { content: "+"; }

.icon-previous:before { content: "\2190"; }

.icon-twitter:before { content: "\54"; }

.icon-linkedin:before { content: "\4c"; }

.icon-instagram:before { content: "\49"; }

.icon-googleplus:before { content: "\47"; }

.icon-download:before { content: "\2b07"; }

.icon-next:before { content: "\2192"; }

#carousel-wrapper { background-color: #fff; overflow: hidden; left: 0; }
#carousel-wrapper #carousel img { display: block; float: left; left: 0; }
#carousel-wrapper #prev, #carousel-wrapper #next { display: block; height: 100%; width: 495px; top: 0; position: absolute; }
#carousel-wrapper #prev { left: 0; }
#carousel-wrapper #next { right: 0; }

#pager { bottom: 0; padding: 10px 0; left: 0; right: 0; position: relative; width: 100%; text-align: center; background: white; }
#pager a { border-radius: 10px; display: inline-block; float: none; width: 10px; height: 10px; margin: 0 5px 0 0; background-color: #ccc; }
#pager a:hover { background-color: #bc226d; }
#pager span { display: none; }
#pager .selected { background-color: #bc226d; }

.loader, .loader span { display: block; z-index: 100; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: white; color: #aaa; text-align: center; vertical-align: middle; }

.loader span { top: 50%; margin-top: -0.5em; }
