/*
Theme Name: Phil Stefani Signature Restaurants
Theme URI: http://www.ideamktg.com
Author: Ideamktg.com
Author URI: http://www.ideamktg.com
Description: Phil Stefani Signature Restaurants
Version: 1.0
*/

@import url(http://fonts.googleapis.com/css?family=BenchNine:300,400,700);
@import url(http://fonts.googleapis.com/css?family=Lato:300,400,700);

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;  
    font: inherit;  
    vertical-align: baseline;
    line-height: 1;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
    
html, body { height: 100%; }

body {
    max-width: 1920px;
    line-height: 1;
    color: #555;
    background: #252525;
    margin: 0 auto; padding: 0;
    font-family: 'Lato', Verdana, sans-serif;
    font-size: 15px;
    -webkit-font-smoothing: antialiased;
}
    
a {
    color: #dd4400;
    font-size: inherit;
    font-family: inherit;
    text-decoration: none;
}
a:hover {
    color: #ff6600;
    text-decoration: underline;
}
    
ol, ul {
    list-style: disc;
    margin: 0 0 20px 10px;
    padding-left: 10px;
}
ol li, ul li, dl dt, dl dd {      
    font-size: inherit;
    line-height: 1.5;
}
    
dl {
    overflow: hidden;
}
dt {
    float: left;
    clear: left;
    padding: 5px 0;
    width: 100px;
    text-align: left;
    font-weight: bold;
    color: #333;
}
dt:after {
    content: ":";
}
dd {
    margin: 0 0 5px 120px;
    padding: 5px 0 5px 0;
}

dd:after {
    content: ' ';
    display: block;
    clear: both;
}

blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
blockquote {
    margin: 0 0 20px;
    padding: 20px;
    background: #fff;
    border-left: 5px solid #ddd;
}
blockquote,
blockquote p {
    font-style: italic;
}
blockquote p {
    margin: 0;
}
    
p, address {    
    margin-bottom: 20px;
    font-size: inherit;
    line-height: 1.5;
    color: inherit;
}
    
h1, h2, h3, h4, h5, h6 {
    margin-bottom: 20px;
    color: #333;    
    font-family: 'BenchNine', sans-serif;
    font-weight: bold;
    text-decoration: none;
    text-transform: uppercase;
}
#cnt h4,
#cnt h5,
#cnt h6 {
    border-top: 1px solid #ddd;
    padding-top: 20px;
    margin-bottom: 5px;
}
h1 { font-size: 2.825em; }
h2 { font-size: 2.500em; }
h3 { font-size: 2.125em; }
h4 { font-size: 1.875em; }
h5 { font-size: 1.675em; }
h6 { font-size: 1.375em; }

h1 *, h2 *, h3 *, h4 * { text-decoration: none; }
    
table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    margin: 0 0 20px;
}
table tr th,
table tr td {
    padding: 10px;
    text-align: left;    
}
table tr th {
    background: #555;
    color: #fff;
    border-top: 1px solid #444;
    border-left: 1px solid #444;
    border-right: 1px solid #444;
}
table tr td {
    background: #fff;
    color: #333;
    border: 1px solid #eee;
}
    
hr {
    clear: both;
    margin: 2% 0; padding: 0; 
    height: 4px;
    background: #bbb;
    border: 1px solid #fff; 
    border-radius: 10px; 
    box-shadow: inset 0 2px 2px rgba(0,0,0,.3);
}
    
strong, em {    
    font-family: inherit;
    font-size: inherit;
}
strong { font-weight: bold; }
em { font-style: italic }

/* Elements with border-box box-sizing model */
input, textarea, select, img {
    max-width: 100%; height: auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* Input & Button styles */
form {
    display: block;
    margin: 0 0 20px;
}

input,
textarea,
select {
    font-family: inherit;
    font-size: inherit;
    font-weight: normal;
    line-height: 1.4;
}
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="date"],
input[type="time"],
input[type="datetime"],
input[type="number"],
input[type="range"],
input[type="tel"],
input[type="range"],
input[type="file"],
textarea, select {
    padding: 5px;
    margin: 0 0 .25em;
    color: #333;
    background: #e6e6e6;
    border: 1px solid #fff;   
    box-shadow: inset 0 0 2px rgba(0,0,0,.2);
}
input[type="radio"],
input[type="checkbox"] {    
    vertical-align: middle;
    position: relative;
    bottom: 2px;
}
input[type=radio] {
    bottom: 3px;
}
input[type="submit"],
button,
a.btn,
a.button {
    display: inline-block;
    height: 40px;
    padding: 0 15px;
    margin: .2em .2em .2em 0;
    color: #fff;
    background: #dd4400 url(../img/th.png) repeat-x 0 100%;
    border: none;
    font-size: 22px;
    font-family: 'BenchNine';
    font-weight: normal;
    line-height: 1;
    vertical-align: middle;
    text-transform: uppercase;
    border-radius: 1px;
    box-shadow: inset 0 -5px 0 -2px rgba(255,255,255,.25);    
    transition: all .2s;
}
a.btn,
a.button {
    line-height: 40px;
}
input[type="submit"].small,
button.small,
a.btn.small,
a.button.small {
    padding: 0 10px;
    font-size: 13px;
    height: 30px;
}
a.btn.small,
a.button.small {
    line-height: 30px;
}
input[type="submit"].big,
button.big,
a.btn.big,
a.button.big{
    padding: 0 25px;
    font-size: 17px;
    height: 55px;
}
a.btn.big,
a.button.big{
    line-height: 55px;
}
input[type="submit"]:hover,
button:hover,
a.btn:hover,
a.button:hover {
    background-color: #ff6600;
    cursor: pointer;
}

::-webkit-input-placeholder { color: #888; }
::-moz-placeholder { color: #888; }
:-ms-input-placeholder { color: #888; }
input:-moz-placeholder { color: #888; }

a.btn {
    display: -moz-inline-stack;
    display: inline-block;
    zoom: 1;
    *display: inline;
}

/* Main theme styles */
#hdr {
    position: fixed;
    z-index: 999;  
    top: 0; right: 0; left: 0;
    height: 100px; width: 100%;
    background: #555;
    background: rgba(0,0,0,.5);    
}
#hdr #logo {
    float: left;
    margin: 0 20px 0 50px;    
}
#hdr #logo > img {
    height: 100px; width: 212px;
}

#cnt {
    margin: 0; padding: 140px 0 30px;
    background: #f6f6f6 url(../img/bkg.jpg);
    min-height: 300px;
}

#left {
    float: left;
    width: 67%;
}
#latest-post {
    float: left;
    width: 62%;
    padding: 2%;
    margin: 0 0 2%;
}

#latest-post .meta,
.post .meta {    
    border-bottom: 2px solid #eee;
    font-family: 'BenchNine';
    font-size: 1.2em;
    color: #aaa;
}
#latest-post .title,
.post .title {  
    margin-bottom: 10px;
}

#widgets {
    float: right;
    width: 31.33%;
    margin: 0 0 20px;
    padding: 0;
    list-style: none;
}
#widgets li.widget {
    margin: 0 0 20px;
    padding: 20px;
    background: #f0f0f0;
    border: 1px solid #fff;
    box-shadow: inset 0 0 1px rgba(0,0,0,.3);
}
#widgets li.widget .widgettitle {
    margin: 0 0 10px;
    padding: 0 0 10px;
    font-size: 26px;
    border-bottom: 2px solid #ddd;
}
#widgets li.widget ul {
    list-style: none;
    margin: 0; padding: 0;    
}
#widgets li.widget ul li {
    padding: 0; margin: 0; 
    line-height: 1.5;   
}

#widgets li.widget_search form {
    display: block;
    position: relative;
    margin: 0; padding: 0;
}
#widgets li.widget_search label {
    display: none;
}
#widgets li.widget_search input {
    height: 40px;
    margin: 0;
}
#widgets li.widget_search input#s {
    width: 69.666%;
    margin: 0;
    background: #ddd;
    
}
#widgets li.widget_search input#searchsubmit {
    position: absolute;
    top: 0; right: 0;
    margin: 0;
    width: 30%;
    cursor: pointer;
}

#posts {
    overflow: hidden;    
    margin: 0 -1% 20px -1%;
    clear: both;
}
#posts .post {
    float: left;
    width: 31.33%;
    padding: 0;
    margin: 0 1% 2%;
    background: #fff;
    box-shadow: 0 2px 3px -2px rgba(0,0,0,.25);
}
#posts .post-inner {
    padding: 20px 20px 0;
}
#posts .post h2.title {
    font-size: 1.6em;
}
#posts .post p.content {
    font-size: .875em;
}
#left #posts .post {
    width: 45%
}
#latest-post .attachment-post-thumb,
#posts .post .attachment-post-thumb {
    display: block;
    margin: 0;
}

#post .post,
#latest-post,
#single-post {
    background: #fff;
    box-shadow: 0 2px 3px -2px rgba(0,0,0,.25);
}

#single-post {
    padding: 20px;
}

#nav {
    float: right;
    height: 50px;
    margin: 25px 0;
    padding: 0;
}
#nav ul {    
    float: right;
    height: 50px !important;
    overflow: hidden;
    list-style: none;
    margin: 0; padding: 0;
    background: #222;
    background: rgba(0,0,0,.3);
}
#nav ul li {
    float: left;
    margin: 0; padding: 0;
}
#nav ul li a,
#nav a#navi-expand {
    float: left;
    height: 24px;
    padding: 13px 15px;
    text-decoration: none;
    font-family: 'BenchNine', sans-serif;
    font-size: 24px;
    font-weight: lighter;
    font-weight: 300;
    text-transform: lowercase;
    text-shadow: -1px 1px 1px rgba(0,0,0,.375);
    border-right: 1px solid rgba(255,255,255,.1);
    color: #fff;
}
#nav ul li a:hover {
    background: #aaa;
    background: rgba(0,0,0,.25);
}

#nav a#navi-expand {
    padding-left: 20px;
    padding-right: 30px;
    background-color: #777;
    background-color: rgba(255,255,255,.2);
    background-image: url(../img/navi.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
}
                        
#ftr {
    padding: 30px 0;
    background: #252525 url(../img/ftr.png) repeat-y 0 0;
    color: #fff;
}

#ftr-l, #ftr-r {
    float: left;
}
#ftr-l {
    width: 55%;
    margin: 0 3% 0 0;
}
#ftr-r {
    width: 42%;
}

#ftr-l h4 {
    margin: 0 0 10px;
    color: #fff;
    font-size: 42px;
}

#ftr-social {
    overflow: hidden;
    margin: 0 0 10px;
}

#ftr-nav {
    overflow: hidden;
    margin: 0 0 10px;
}
#ftr-nav a {
    float: left;
    padding: 0 10px 0 0;
    margin: 0 10px 0 0;
    border-right: 1px solid #555;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    font-weight: lighter;
    line-height: 1.4;
}
#ftr-nav a:hover {
    color: #ff8800;
}
#ftr-nav a:last-child {
    margin: 0; padding: 0;
    border: none;
}
#ftr-copy,
#ftr-credits {
    font-size: 12px;
    font-weight: 200;
    text-transform: uppercase;
    line-height: 1.4;
}
#ftr-copy { 
    margin: 0;
    font-size: 14px;
    color: #777;
}
#ftr-credits a {
    color: #ff6600;
}

#mail-list {    
    position: relative;
    display: block;
    margin: 20px 0; padding: 0 80px 0 120px;
}
#mail-list br {  
    clear: both;
}
#mail-list h4 {
    color: #fff;
    font-size: 26px;
    margin-left: -120px;
}
#mail-list label {
    float: left;
    width: 100px;
    margin: 10px 0 0 -120px;
}
#mail-list input.input {
    width: 100%;
    margin: 0 0 3px;
    padding: 8px;
    background: #fff;
    border: none;
    border-radius: 5px;
}
#mail-list input.submit {
    position: absolute;
    bottom: 10px; right: 0;
    height: 60px; width: 60px;
    background: #777;
    color: #262626;
    border-radius: 60px;
    font-size: 20px;
}
#mail-list input.submit:hover {
    cursor: pointer;
    background: #999;
}

#bc {
    margin: -40px 0 30px;
    padding: 0;    
    background: #ccc;
    background: rgba(0,0,0,.2);
}
#bc ul {
    list-style: none;
}
#bc ul li,
#bc ul li a {
    float: left;
    line-height: 1;
    font-family: 'BenchNine';
    font-size: 26px;
    text-transform: uppercase;
}
#bc ul li a,
#bc ul li.current_item {
    float: left;
    padding: 14px 26px 12px 0;
    margin: 0 2px 0 0;
    color: #555;    
}
#bc ul li a {
    margin-right: 18px;
    background-image: url(../img/bc.png);
    background-repeat: no-repeat;
    background-position: 100% 50%;
}
#bc ul li a:hover {    
    color: #111;
    text-decoration: none;
}
#bc ul li.current_item {    
    color: #777;
}
    
/* Form list styles */
.formbox {
    padding: 20px !important;
    margin: 0 0 2% !important;
    background: #e8e8e8;
    border: 1px solid #fff;
    box-shadow: inset 0 0 0 2px rgba(0,0,0,.2);
    border-radius: 2px;
}
ul.form {    
    list-style: none;
    margin: 0; padding: 0;
}
ul.form li {
    padding-left: 120px;
    overflow: hidden;
    margin-bottom: 5px;
}
ul.form li label {
    float: left;
    width: 120px;
    margin: 8px 0 0 -120px;
    line-height: 100%;
    text-transform: uppercase;
    font-family: 'BenchNine';
    font-weight: bold;
    font-size: 1.3em;
}
ul.form li.full {
    padding-left: 0;
    margin-top: 15px;
}
ul.form li.full br {
    display: none;
}
ul.form li.full label {
    display: block;
    margin: 0 0 10px;
    float: none;
    width: auto;
    clear: both;
}
ul.form li label.full,
ul.form li input.full,
ul.form li select.full,
ul.form li textarea.full {
    display: block;
    float: none;
    width: 100%;
    margin: 15px 0 0;
    display: block;
}
ul.form li input.full,
ul.form li select.full,
ul.form li textarea.full {
    margin: 5px 0 0;
}
ul.form li label.req:after {
    content: " *";
    color: #f00000;
}
ul.form input[type='text'],
ul.form input[type='email'],
ul.form input[type='password'],
ul.form select,
ul.form textarea {
    width: 100%;
    border: 1px solid #ccc;
    box-shadow: none;
    background-color: #fff;
}
ul.form input[type='checkbox'] {
    position: relative;
    top: 0;
}

ul.form li.full input[type='text'],
ul.form li.full input[type='email'],
ul.form li.full input[type='password'],
ul.form li.full select,
ul.form li.full textarea {
    width: 100%;
}

ul.form .wpcf7-checkbox {
    display: block; 
    margin: 0;   
}
ul.form .wpcf7-checkbox .wpcf7-list-item {
    display: block;
    padding: 5px;
    margin: 0 0 1px;
    background: #f6f6f6;
    font-size: 13px;
}
ul.form .wpcf7-checkbox .wpcf7-list-item * {
    vertical-align: middle;
    line-height: 1.3;
    color: #333;
}

ul.form li.checkbox .wpcf7-checkbox .wpcf7-list-item {
    padding: 10px 10px 10px 30px;
}
ul.form li.checkbox .wpcf7-checkbox .wpcf7-list-item input[type='checkbox'] {
    float: left;
    margin: 1px 0 0 -20px;
}
ul.form p {
    color: #999;
}

#contact-form br {
    
}
#contact-form textarea {
    margin-bottom: 10px;
    height: 246px;
}
    
/* Center content on page */
.ctr {
    position: relative;
    max-width: 1100px;
    padding: 0 2%;
    margin: 0 auto;
}
    
/* clearfix */
.clr, .ctr, .row { zoom: 1; }

.ctr:before, .ctr:after,
.clr:before, .clr:after,
.row:before, .row:after { content: " "; display: table; }

.ctr:after,
.clr:after,
.row:after { clear: both; }

.clear { clear: both; }

/* --- Column Styles --- */
.row {
    margin: 0 -2% 2%;
    padding: 0;
    clear: both;
}
.row:before,
.row:after {
    content: ' ';
    display: table;
}
.row:after { clear: both; }
.row > [class^='col-'] {
    float: left;
    margin: 0 2% 2%;
    padding: 0;
    list-style: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.col-12 { width: 46%; }
.col-13 { width: 29.333%; }
.col-23 { width: 62.666%; }
.col-14 { width: 21%; }
.col-34 { width: 71%; }
.col-15 { width: 16%; }
.col-25 { width: 36%; }
.col-35 { width: 56%; }
.col-45 { width: 76%; }

.bg { padding: 30px 0; background-color: #fcfcfc; }
    
/* Misc styles */
.block {
    display: block;
    margin-bottom: 20px;
}    
.border {
    border: 1px solid #fff;
    box-shadow: inset 0 0 2px rgba(0,0,0,.2);
}
img.border {
    background-color: #f2f2f2;
    padding: 6px;
}
        
.underline {
    border-bottom: 1px solid #bbb;
    padding-bottom: 10px;
}

.aligncenter {
    text-align: center;
}
img.aligncenter {
    display: block;
    margin: 0 auto 20px auto;
}
.alignleft {
    float: left;
    margin: 0 20px 20px 0;
}
.alignright {
    float: right;
    margin: 0 0 20px 20px;
}
.note {
    padding: 1em 1em;
    font-family: Tahoma;
    font-size: .875em;
    font-weight: lighter;
    line-height: 1.2;
    color: #777;
    background: #fdfdfd;
    border: 2px solid #ddd;
}
    
.hidden { display: none; }

#slider {
    position: relative;
}
#slider #slider-nav {
    position: absolute;
    z-index: 1000;
    bottom: 15px; right: 20px;
}
#slider #slider-nav a {
    float: left;
    background: url(../img/slider-nav.png) no-repeat 0 0;
    height: 54px; width: 54px;
    margin: 0 0 0 10px;
    font-size: 0;
    text-decoration: none;
    transition: all .3s;
    border-radius: 54px;
}
#slider #slider-nav a:hover {
    background-color: rgba(255,255,255,.3);
}
#slider #slider-nav a#slider-nav-prev { background-position: 0 0; }
#slider #slider-nav a#slider-nav-next { background-position: -54px 0; }

.slide {
    width: 100%;
    position: relative;
    z-index: 99;
}
.slide img.slide-bg {
    display: block;
    margin: 0; padding: 0;
    border: none;
}
.slide .slide-info {    
    position: absolute;
    bottom: 0; left: 0; right: 0;
    overflow: hidden;
    width: 100%;    
    background: rgba(232,214,192,.2);
}
.slide .slide-info h2,
.slide .slide-info h3 {
    float: left;
    margin: 15px 0;
    font-family: 'Lato', sans-serif;
    font-weight: normal;    
    line-height: 1;
}
.slide .slide-info h2 {
    padding: 10px 20px 10px 50px;
    background: rgba(233,227,220,.75);    
}
.slide .slide-info h2,
.slide .slide-info h2 > a {
    font-size: 36px;
    font-weight: 300;
    color: #000;
}
.slide .slide-info h3 {
    padding: 19px 20px;
    background: rgba(0,0,0,.5);
    font-size: 18px;
    color: #fff;
}

ul#links {
    overflow: hidden;
    margin: 0; padding: 0;
    list-style: none;
}
ul#links li {
    position: relative;
    float: left;
    width: 33.333%;
}
ul#links li img {
    display: block;
    border: none;
}
ul#links li a {
    display: block;
    position: absolute;
    height: 0; width: 150px;
    top: 60%; left: 50%;
    margin: -75px 0 0 -75px;
    padding: 55px 0 95px;
    background: rgba(0,0,0,.75);
    color: #fff;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    font-size: 24px;
    font-weight: lighter;
    line-height: 1;
    border-radius: 200px;
    transition: all .5s;
}
ul#links li a:hover {
    border-radius: 10px;
    background: #000;
    box-shadow: 0 0 5px rgba(0,0,0,.3);
    color: #ff6600;
    
}
#latest-posts {
    position: relative;
    overflow: hidden;
    margin: 0 -1%;
}
#latest-posts .single-post {
    float: left;
    margin: 0 1%;
    width: 31.333%;
    text-align: center;
}
#latest-posts .single-post img.thumbnail {
    display: block;
    margin: 0 auto 20px;
    box-shadow: 0 2px 3px -2px rgba(0,0,0,.75);
    filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale");
    filter: gray;
    -webkit-filter: grayscale(100%);
    transition: all .5s;
}
#latest-posts .single-post a:hover img.thumbnail {
    filter: none;
    -webkit-filter: none;
}
#latest-posts .single-post h4 {
    font-size: 1.3em;
    font-weight: lighter;
    font-family: 'Lato';
}
#latest-posts .single-post a:hover,
#latest-posts .single-post a:hover h4 {
    text-decoration: none;
    color: #999;
}
#latest-posts .single-post .excerpt {    
    font-size: 1em;
    color: #555;
    font-weight: lighter;
}
#latest-posts .single-post a.more {    
    display: block;
    margin: 0 auto;
    padding: 17px 0;
    height: 26px; width: 60px;
    background: #a6a6a6;
    border-radius: 60px;
    color: #fff;
    text-transform: lowercase;
    text-decoration: none;
    font-family: 'BenchNine';
    font-size: 26px;
    font-weight: lighter;
    line-height: 1;
}
#latest-posts .single-post a.more:hover {
    background-color: #555;
}

.restaurant {
    position: relative;    
}
.restaurant a.anchor {
    position: absolute;
    top: -140px;
}
.restaurant .res-title {
    text-align: center;
}
.restaurant .res-title h2 {
    display: inline-block;
    padding: 10px 20px;
    border: 1px solid #ddd; 
    font-size: 3em; 
    line-height: 1;  
}
.restaurant .res-title h2 a {
    color: #333;
    transition: all .3s;
}
.restaurant .res-title h2 a:hover {
    color: #9e2211;    
    text-decoration: none;
}
.restaurant ul.personnel {
    margin: 0 0 20px; padding: 0;
    list-style: none;
}
.restaurant ul.personnel li {
    margin: 0; padding: 0;
    text-transform: uppercase;
    font-size: 1em;
    color: #9e2211;
    font-weight: lighter;
}
.restaurant ul.personnel li > strong {
    font-weight: lighter;
    color: #666;
}
.restaurant .res-details {
    padding-bottom: 50px;
    margin-bottom: 50px;
    border-bottom: 1px solid #ddd;
    text-align: center;    
}

.restaurant .executive-chef {
    margin: 20px 0;
}
.restaurant .executive-chef-photo {
    position: relative;
    height: 120px; width: 120px;
    margin: 0 auto;
}
.restaurant .executive-chef-photo img {
    display: block;
    margin: 0 auto;
    height: 100%; width: 100%;
    padding: 5px;
    background: #f0f0f0;
    border: 1px solid #fff;
    box-shadow: inset 0 0 2px rgba(0,0,0,.2);
    border-radius: 140px;
}
.restaurant .executive-chef-photo a {
    position: absolute;
    top: 0; right: 0;    
    height: 32px; width: 32px;
    background: #eee;
    font-size: 18px;
    font-weight: bold;
    line-height: 32px;
    border-radius: 26px;
    box-shadow: 0 2px 2px -2px rgba(0,0,0,.5);
}
.restaurant .executive-chef-photo a:hover {
    text-decoration: none;
}

.restaurant .res-social {
    margin: 0 0 20px;
}

.restaurant a.res-link {
    display: block;
    overflow: visible;
    margin: 0 auto;
    padding: 30px 0;
    width: 80px; height: 20px;
    background: #ccc;
    line-height: 1;
    text-transform: lowercase;
    text-decoration: none;
    font-weight: lighter;
    font-size: 18px;
    color: #333;
    border-radius: 40px;
}
.restaurant a.res-link:hover {
    background: #333;
    color: #bbb;
}

.executive-chef-bio {
    display: none;
    position: fixed;
    z-index: 999998;
    top: 0; bottom: 0; left: 0; right: 0;
    height: 100%; width: 100%;
    background: #333;
    background: rgba(0,0,0,.8);
}
.executive-chef-bio .inner {
    position: absolute;
    z-index: 999999;
    top: 50%; left: 50%;
    min-height: 200px;
    max-height: 80%;
    overflow-y: auto;
    margin: 20px 0 20px -400px;    
    width: 580px;    
    padding: 30px 20px 10px 220px;
    background: #f6f6f6;
    box-shadow: 0 5px 10px -3px #000;
    border-left: 5px solid #ddd;
    border-right: 5px solid #ddd;
}
.executive-chef-bio a.close {
    position: absolute;
    top: 0; right: 10px;
    height: 28px; width: 32px;
    background: #ff4400;
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    line-height: 22px;
    color: #fff;
}
.executive-chef-bio a.close:hover {
    background: #ff8800;
    text-decoration: none;
}
.executive-chef-bio h4 {
    padding-top: 0px !important;
    margin-bottom: 0px !important;
    border: none !important;
    font-weight: lighter;
    color: #ff8800;
}
.executive-chef-bio h3 {
    margin-bottom: 10px !important;
    font-size: 40px;
}
.executive-chef-bio .inner img {
    position: absolute;
    top: 30px; left: 20px;
    margin: 0 20px 20px 0;
    max-width: 180px; height: auto;
}
.executive-chef-bio * {
    text-align: left;
}

ul.locations {
    margin: 0 0 20px; padding: 0;
    list-style: none;
}
ul.locations > li {
    margin-bottom: 20px;
}
ul.locations span.addr,
ul.locations span.phone {
    display: block;
    line-height: 1.2;
}

ul.locations span.addr {
    text-transform: uppercase;
    font-size: 1.4em;
    font-weight: lighter;
    color: #666;
}
ul.locations span.phone {
    font-family: 'BenchNine';
    font-size: 3em;
}

.res-gallery {
    overflow: hidden;
    max-width: 1920px;
    margin: 0 auto 20px;
}
.res-gallery img {
    float: left;
    margin: 0; padding: 0;
    width: 33.33%;
    height: auto;
}

#page-gallery {
    margin-top: -30px;
    margin-bottom: 30px;
}

#photo-gallery {
    margin-left: -1%;
    margin-right: -1%;
}
#photo-gallery > figure { 
    position: relative;   
    float: left;
    width: 23%;
    margin: 0 1% 2%;
    background: #fff;
    border-radius: 3px;
    box-shadow: 0 2px 3px -2px rgba(0,0,0,.5);
}
#photo-gallery > figure h4 {
    padding: 10px 15px;
    margin: 0;
    border-bottom: 1px solid #eee;
    font-size: 1.375em;
    text-transform: none;
}
#photo-gallery > figure a.photo-link:hover {
    cursor: zoom-in;
}
#photo-gallery > figure a.photo-link img {
    display: block;
    width: 100%;
    height: auto;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px;
}
#photo-gallery > figure figcaption {
    padding: 15px;
    font-size: .875em;
    line-height: 1.3;
}
#photo-gallery > figure .share {
    visibility: hidden;
    opacity: 0;
    position: absolute;    
    left: 5px; right: 5px;
    margin: -42px 0 0;
    text-align: center;
    transition: all .3s;
}
#photo-gallery > figure:hover .share {
    visibility: visible;
    opacity: 1;
}
    
.pager {
    overflow: hidden;
    padding: 5px 5px 0;
    margin: 0 0 20px;
    background: #eee;
}
.pager a,
.pager span {
    float: left;    
    margin: 0 5px 5px 0;
    padding: 9px 12px;
    border: 1px solid #fff;
    background: #fff;
    line-height: 1;    
    text-decoration: none;
    font-family: 'Lato', sans-serif;
    font-size: .875em;
    color: #777;
}
.pager a:hover {
    color: #1066af;
    opacity: 0.6;
}
.pager span.current {
    background: #999;
    border-color: #999;
    color: #fff;
}

#gmap {
    margin: 0 0 20px;
    height: 600px;
    padding: 5px 0;
    background: #ddd;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    box-shadow: inset 0 0 3px rgba(0,0,0,.25);
}

#order-gift-card select,
#order-gift-card input[type="submit"] {
    vertical-align: bottom;    
}
#order-gift-card select {
    width: 200px;
    padding: 10px;
    height: 42px;
}

#check-gift-card {
    padding: 30px 0;
    background: #fff;
    text-align: center;
    box-shadow: 0 0 5px rgba(0,0,0,.2);
}
#check-gift-card iframe {
    height: 330px;
}

#scroll-to-top,
#scroll-to-top:hover {
    display: none;
    margin: 0; padding: 0;
    position: fixed;
    bottom: 10px; right: 10px;
    height: 40px; width: 40px;
    background: #000 url(../img/scroll-top.png) no-repeat 50% 50%;
    background-color: rgba(0,0,0,.5);
    font-size: 0;
    text-decoration: none;
    border-radius: 3px;
    transition: all .3s;
}
#scroll-to-top:hover {
    background-color: rgba(0,0,0,.75);
}

#employment-link {
    position: absolute;
    top: 0; right: 2%;
}

#res-select {
    margin: -40px 0 30px;
    padding: 10px 0;    
    background: #ccc;
    background: rgba(0,0,0,.2);
    text-align: center;
}
#res-select label,
#res-select select {
    vertical-align: middle;
}
#res-select label {
    font-family: 'BenchNine', sans-serif;
    font-size: 1.5em;
    line-height: 1;
    text-transform: uppercase;
    color: #555;    
}
#res-select select {
    margin: 0 0 0 10px;
    padding: 10px;
    border: none;
    box-shadow: none;
    height: 40px;
}

#employment-app {
    height: 3800px;
}

.wpcf7-response-output {
    padding: 15px 20px !important;
    margin: 0 !important;
    border: none !important;
    background: #4ea5cd !important;
    line-height: 1.3 !important;
    color: #fff !important;
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    font-weight: bold;
    font-weight: 500;
}
.wpcf7-validation-errors {
    background-color: #de4343 !important;
}
.wpcf7-mail-sent-ok {
    background-color: #61b832 !important;
}
.wpcf7-not-valid-tip {

}