/*
Theme Name: twcc
*/

/* Reset */

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,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;

}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

html {
  box-sizing: border-box;
}
*, *:before, *:after {
  box-sizing: inherit;
}

/* Styles */

/*font reference

font-family: 'Cardo', serif;
font-family: 'Karla', sans-serif;
font-family: 'Playfair Display', serif;

*/

html {height: 100%; margin:0 !important;}
body {height:100%; margin:0;}

a,
.morelink,
.imghelper {
	 -webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s  ease-in-out;
	-o-transition: all 0.3s  ease-in-out;
	transition: all 0.3s  ease-in-out;
}

.site {
	background:#f1f1f1;
	padding-top:158px;
}

.mobile-menu {
	position: absolute;
	display: none;
}

.site-header {
	background:#fff;
	box-shadow: 0 0px 6px rgba(0,0,0,0.2);
	width:100%;
	position: fixed;
	top:0;
	height:158px;
	z-index:20;
}

	.header-wrap,
	.site-info {
		max-width:1170px;
		margin:0 auto;
		position: relative;
	}

.site-content {
	max-width:1170px;
	margin:0 auto 0;
	min-height:75vh;
	padding: 20px 0;
	position: relative;
}

.site-footer {
	background:#000;
	padding:20px;
}

.f1 {
	font-family: 'Cardo', serif;
	font-weight: 400;
	font-style:normal;
}

.f2 {
	font-family: 'Karla', sans-serif;
	font-weight:400;
	text-transform: uppercase;
	font-style:normal;
    letter-spacing: 0.7px;
}

.f3 {
	font-family: 'Playfair Display', serif;
	font-weight:400;
	font-style: italic;
}

.nav-left,
.nav-right,
.site-branding {
	display: inline-block;
	vertical-align: middle;
	width:30%;
	text-align: center;
}

.site-branding {
	width:39%;
}

.nav-left ul,
.nav-right ul {
	list-style: none;
	display: block;
}

.nav-left ul > li,
.nav-right ul > li {
	display: inline-block;
}


.nav-left ul > li a,
.nav-right ul > li a  {
    display: block;
    text-decoration: none;
    color: #000;
    font-size: 13px;
    border: 1px solid #fff;
    margin: 15px;
    padding: 10px;
}

.nav-right ul > li a:hover,
.nav-left ul li:hover > a  {
	border: 1px solid #000;
}

.menu-item-has-children {
	position: relative;
}

.nav-left ul ul,
.nav-right ul ul {
	position: absolute;
	display: block;
	z-index:-1;
	opacity:0;
	background: #fff;
    padding: 0 0 10px;
        height: 1px;
    overflow: hidden;
	-webkit-transition: all 0.3s ease-in-out;
	-moz-transition: all 0.3s  ease-in-out;
	-o-transition: all 0.3s  ease-in-out;
	transition: all 0.3s  ease-in-out;
}

.nav-left ul li:hover > ul,
.nav-right ul li:hover > ul {
	z-index:0;
	opacity:1;
	height: auto;
    overflow: auto;
}

.nav-left ul ul li,
.nav-right ul ul li {
	width: 100%;
}

.nav-left ul ul li a,
.nav-right ul ul li a  {
    display: block;
    text-decoration: none;
    color: #000;
    font-size: 13px;
    border: 0;
    background: #fff;
    margin: 0;
    padding: 15px;
}

.nav-left ul ul li a:hover,
.nav-right ul ul li a:hover   {
	background: #000;
	color: #fff;
	border:0;
	}


.site-branding a {
    display: block;
    text-align: center;
    padding: 15px;
}
.site-branding a img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
    max-width: 373px;
}

.socials {
	position: absolute;
	margin:auto;
	right:10px;
	top:10px;
}

.socials a {
    color: #000;
    margin-left: 2px;
    display: inline-block;
    width: 25px;
    height: 25px;
    text-align: center;
    line-height: 25px;
}

.socials a:hover {
	color: #888;
}

.entry-content {
    padding: 20px;
    background: #fff;
    position: relative;
}

.text .entry-content {
    -moz-column-count:2;
	-webkit-column-count:2;
	column-count:2;
	-moz-column-gap:20px;
	-webkit-column-gap:20px;
	column-gap:20px;
}

.img-base {
	position: relative;
}

.img-base .entry-title {
	position: absolute;
	padding:15px;
	background: rgba(255,255,255,0.7);
	margin:auto;
	left:0;
	right:0;
	max-width:375px;
	top: 37%;
}

.img-base .entry-title h1 {
	font-size:34px;
	display: block;
	border:1px solid;
	padding:30px;
	background: #fff;
	text-align: center;
}

.entry-content .entry-title {
	position: relative;
	padding:15px;
	background: rgba(255,255,255,0.7);
	margin:0 auto 15px;
	max-width:375px;
}

.entry-content  .entry-title h1 {
	font-size:26px;
	display: block;
	border:1px solid;
	padding:30px;
	background: #fff;
	text-align: center;
	line-height:1.3em;
}

.entry-content p {
    margin: 0 0 0.75em;
    font-size: 16px;
    line-height: 1.3em;

}

.entry-content p a {
	color:#000;
	font-weight: 700;
	text-decoration: none;
}

.entry-content p a:hover {
	color:#8a7a70;
}

.site-content img {
	display: block;
	width:100%;
	height:auto;
	max-width:100%;
	

}

.site-content .img-base img {
border:10px solid #fff;
}

.img-base .entry-title {
	z-index: 1;
}

.site-info {
    color: #fff;
    text-align: center;
    font-size: 13px;
    letter-spacing: 1px;
    line-height: 1.85em;
}

.site-info h2 {
    font-size: 18px;
    letter-spacing: 3px;
    margin: 8px 0;
}

.site-info li {
    display: inline-block;
    padding: 0 15px;
}
.site-info li a,
.site-info .copyright a {
	text-decoration: none;
	color:#fff;
	padding-bottom: 3px;
	border-bottom:1px dotted #000;
}

.site-info li a:hover {
	border-bottom:1px dotted rgba(255,255,255,0.6);
}

.site-info li a i {
	margin-right:3px;
}

.site-info .copyright {
	font-size: 12px;
	margin-top:20px;
}

.site-info .copyright a {
	margin-left:30px;
}

.productpage .entry-content,
.homepage .entry-content,
.contactpage .entry-content  {
	background: none;
	padding:0;
}

.hero-wrapper {
    background: #fff;
    padding: 10px;
    margin-bottom: 20px;
}

.hero-content {
    text-align: center;
    height: 525px;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center top;
}
.prop {
	display: inline-block;
	vertical-align: middle;
	width:1px;
	height:525px;
}
.hero-content:after {
	content:"";
	margin:auto;
	position: absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	background:rgba(255,255,255,0.35);
}

.hero-content .entry-title h1 {
    font-size: 38px;
     padding: 25px;
}

.hero-content .entry-title {
	z-index: 1;
	display: inline-block;
	vertical-align: middle;
}


.grid-content {
	margin:0 -15px;
}

.grid-content.centered {
	text-align: center;
}

.grid-content.centered.noimg {
	margin-top: 15px;
}

.grid-content.centered.noimg h2 {
	font-size: 22px;
	margin-bottom:5px;
}

.grid-content.centered.noimg li {
    text-transform: capitalize;
    line-height: 1.4em;
    font-size: 18px;
    margin: 0 0 5px;
}

.grid-content.centered.noimg .morelink {
	text-decoration: none;
	background:none;
	margin-top: 10px !important;
}

.grid-content.centered.noimg .morelink:hover {
	background: #000;
}

.grid-item > img {
	    image-rendering: -moz-crisp-edges;
    image-rendering: -o-crisp-edges;
    image-rendering: -webkit-optimize-contrast;
    -ms-interpolation-mode: nearest-neighbor;
}

.grid-item {
	text-align: center;
	background: #fff;
	display:inline-block;
	vertical-align: top;
	margin:15px;
    width: calc(33.3% - 30px);
}

.homepage .grid-item {
	width:calc(33% - 30px);
}

.grid-item a {
	color:#000;
	text-decoration: none;
}

.grid-text {
    background: #fff;
    padding: 15px;
    margin: -30px 40px 0;
    position: relative;
}

.grid-text {
    min-height: 155px;
}

.grid-text h2 {
	
}

.grid-text h2.homepad {
    padding-top: 16px;
    padding-bottom: 16px;
}

.grid-text p {
	
}

.homepage .grid-text p {
    font-size: 15px;
    margin: 10px 20px 0;
}

.morelink,
.enqlink a,
.gform_button  {
    display: inline-block;
    font-size: 14px !important;
    margin: 20px 0 15px !important;
    padding: 7px;
    border: 1px solid #000;
    background: #fff;
    color:#000;
    text-transform: uppercase;
    cursor: pointer;
}


.gform_button  {
font-family: 'Karla', sans-serif;
	font-weight:400;
	text-transform: uppercase;
	font-style:normal;
    letter-spacing: 0.7px;
    outline:0;
    margin-top:0 !important;
    font-size:18px !important;
    }

.homepage .morelink {
	margin: 10px 0 !important;
}

.enqlink {
	text-align: center;
	display: inline-block;
	border: 2px solid #000;
    background: #fff;
    margin:30px auto 0;
}

.enqlink a {
    text-decoration: none;
    margin: 2px !important;
    padding: 10px 15px;
    font-size: 16px !important;
}

.morelink:hover,
.enqlink:hover a,
.gform_button:hover  {
	background: #000;
	color:#fff;
}

.product-content,
.product-image {
	display: block;
	margin:20px 0;
}

.product-content {
	width:370px;
	margin-left:30px;
	float:right;
}

.product-details {
	padding:20px;
	background: #fff;
	margin-bottom:30px;
	text-align: center;
}

.product-image {
	width:calc(100% - 440px);
	border:15px solid #fff;
	cursor: crosshair;
	float:left;
}

.product-title {
    font-size: 28px;
    padding: 10px;
    margin-bottom: 15px;
}

.product-text {
    text-align: left;
    padding: 0 20px;
    line-height: 1.4em;
}

.product-text p,
.product-text ul {
margin-bottom:0.6em;
font-size:16px;
}

.product-text p {
	text-align: center;
}

.product-text ul {
    list-style: initial;
    margin-left: 5px;
    padding-left: 20px;
}
#product-thumbs {
    display: block;
    padding: 0;
    margin: 0 -10px;
}

#product-thumbs li {
    display: inline-block;
    width: calc(33% - 20px);
    margin: 10px;
    cursor: pointer;
}

.thumb-header {
	    text-align: center;
}

#product-thumbs li img {
    border: 5px solid #fff;
}

span.zoomthis {
	display: block;
	position: relative;
}

.imghelper {
    position: absolute;
    z-index: 10;
    padding: 10px;
    background: #fff;
    opacity:0;
}

.image-main:hover .imghelper {
	opacity:1;
}

.null-instagram-feed {
	overflow: hidden
}

.instagram-pics {
	margin-right:-10px;
}

.instagram-pics li {
	  box-sizing: border-box;
	display: inline-block;
    vertical-align: top;
    width: 33%;
    padding: 0 10px 10px 0;
}

.instagram-pics li a {
    display: block;
    width: 100%;
    height: auto;
}

.instagram-pics li a img {
	display: block;
}

.grid-text .soc {
    font-size: 26px;
    padding: 5px 20px 20px;
    display: inline-block;
}

.grid-text .soc:hover,
.grid-item .f2 a:hover {
	color:#8a7a70;
}


.contact-content {
    background: #fff;
    padding: 30px;
    line-height:1.4em;
}

.contact-content ul {
	font-family: 'Karla', sans-serif;
	font-weight:400;
	text-transform: uppercase;
	font-style:normal;
    letter-spacing: 0.7px;
    margin-bottom:30px;
    font-size: 15px;
}

.contact-content ul li a {
	display: block;
	text-decoration: none;
	color:#000;
}

.contact-content ul li a i {
	display: inline-block;
	width:25px;
}

.contact-content ul li a:hover {
color:#8a7a70;
}

.contact-content p {
	font-size:18px;
}




.contact-content:before,
.contact-content:after,
.single-products #primary:before,
.single-products #primary:after  {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.contact-content:after,
.single-products #primary:after {
    clear: both;
}

.contact-content .contacttext {
    width: calc(35% - 26px);
    float: left;
}


.contact-content .gform_wrapper {
    width: 65%;
    float: right;
    margin-left:25px;
    margin-top:0;
}

.contact-content .gform_wrapper textarea,
.contact-content .gform_wrapper input {
	padding:7px;
}

.contact-content .gform_heading {
	display: none;
}

.contact-content .gform_wrapper form textarea {
	
}

.contact-content .gform_wrapper form input {
	
}

.contact-content .gform_wrapper form .gfield_label {
	font-weight: inherit;
    margin: 0 !important;
}

.contact-content .gform_wrapper form .gfield_description {
	font-family: 'Cardo', serif;
	font-weight: 400;
	font-style:normal;
	text-transform: none;
}

.contact-content .gform_wrapper ul li.gfield {
    clear: both;
    margin-bottom: 20px;
}

html .tiled-gallery-caption {
    top: initial !important;
    bottom: initial !important;
    display: block !important;
    position: relative !important;
    margin-bottom: 10px !important;
    padding: 6px 0 !important;
    height: auto!important;
    text-overflow: initial !important;
    white-space: initial !important;
    text-indent: 0 !important;
    line-height: 1.4em !important;
    font-size: 15px !important;
    font-style: italic !important;
}

.tiled-gallery .tiled-gallery-item {
    padding: 10px;
}
.tiled-gallery {
    overflow: visible !important;
height:100% !important;
}

.tiled-gallery .gallery-group {
    height:auto!important;
}

.tiled-gallery .gallery-row {
    overflow: visible !important;
}

.tiled-gallery .gallery-row:before,
.tiled-gallery .gallery-group:before,
.tiled-gallery .tiled-gallery-item:before,
.tiled-gallery .gallery-row:after,
.tiled-gallery .gallery-group:after,
.tiled-gallery .tiled-gallery-item:after{
    content: " ";
    display: table;
}

.clicker {
    display: block;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
    height: 100%;
    z-index: 300;
}