
body {
  margin:0 auto; padding:0; color:#222; background-color:#FFF; font-family:'Roboto', sans-serif;
  min-width:300px; max-width:1366px; position:relative; min-width:300px;
}

input, select, textarea, a { color:inherit; font-size:inherit; font-family:inherit; }
a { text-decoration:none; }
h1,h2,h3,h4 { font-family:'Montserrat', sans-serif; }
h1 {
	margin:0 0 .4em 0; position:relative; padding-bottom:.6em;
	font-size:2.4em; font-weight:700;
}
h2,h3,h4 {
	margin:0 0 .2em 0; padding:0 5px;
	letter-spacing:.2em; font-weight:500;
}
p { line-height:1.5em; margin:0 0 .5em 0; padding:0 5px; }
p a { text-decoration:underline; }

* { transition:all .5s ease; box-sizing:border-box; }
body.resize * { transition:none !important; }
a * { transition:none; }

a:hover, a:focus { color:#00a083; }

iframe,svg,img { max-width:100%; margin:0 auto; display:block; }
.wp-post-image { height:auto !important; }

ul, li { margin:0; padding:0; list-style:none; }

.text-center { text-align:center; }

ul.menu > li { display:inline-block; }
ul.sub-menu { transition:none; display:none; padding-left:8px; position:relative; font-size:.9em; }
ul.sub-menu:before {
	content:''; position:absolute; display:block; left:6px; top:1px; bottom:1px; width: 2px;
	background-color:#00a083; z-index: 1;
}
li.current-menu-ancestor ul.sub-menu { display:block; }

.content-area li { list-style:inherit; text-align:left; padding:.5em 0 0 0; }
.content-area ul { list-style:inherit; max-width:600px; margin:0 auto .5em auto; padding-left:1em; }
.content-area img { object-fit:contain; }

.slider-wrap { position:relative; margin:0; padding:0; }
ul.slider { list-style:none; max-width:none; position:relative; }
ul.slider li {
  position:absolute; top:0; left:0; width:100%; z-index:-1; opacity:0; transition:all 1.5s ease;
  min-height:100%; display:block; padding:0;
}
.slider li.active { z-index:0; opacity:1; }
.slider > li > img { min-height:0; width:100%; height:100%; object-fit:cover; object-position:top center; }
.slide-pager { position:absolute; bottom:0; left:0; right:0; text-align:center; z-index:2; }
.slide-pager a {
  display:inline-block; width:.8em; height:.8em; border-radius:100%; border:1px solid #00a083; margin:.2em;
}
.slide-pager a.active { background-color:#00a083; }
.fa.slide-left, .fa.slide-right {
  font-size:3em; color:rgba(0,160,131,.6); position:absolute; left:0; top:calc(50% - .5em); line-height:1em;
}
.fa.slide-right { left:auto; right:0; }

.slider.fullscreen { margin:-1em -1em 0 -1em; width:calc(100% + 2em); height:calc(100vh - 120px); }
.slider img.full-height { height:calc(100vh - 120px); }

.hidden { display:none; }

.alignleft { float:left; margin:5px 20px 20px 0; }
.alignright { float:right; margin:5px 0 20px 20px; }
.alignnone { }

.row:before, .row:after { content:''; display:table; clear:both; }
.row .half { width:calc(50% - 2em); float:left; margin:1em; }
.row > h2 { padding:2em 0; }

.buttons a, .btn {
  border-radius:1.5em; line-height:2.6em; padding:0 1em; text-transform:uppercase; display:inline-block;
  font-family:'Montserrat', sans-serif; border:1px solid transparent;
}
.buttons a > span, .btn > span { vertical-align:middle; line-height:1em; display:inline-block; text-align:center; }

#body { box-shadow: 0 0 5px rgba(0,0,0,0.8); position:relative; overflow:hidden; }

#page { display:flex; }
#page:before, #page:after { content:''; display:table; clear:both; }

.sidebar { border-right:1px solid #ddd; width:260px; }

.topbar { background-color:#333; color:#FFF; text-align:center; }
.topbar:after { content:''; clear:both; display:block; }
.topbar .title { font-size:1.8em; font-weight:bold; }
.topbar .title small { font-size:.6em; display:block; font-weight:normal; line-height:.9em; padding-bottom:.2em; }
@media (max-width:1000px) {
	.topbar .title { display:none; }
}
.fa.sidebar-toggle { font-size:2em; float:left; padding:.5em; display:none; }

#menu-top-buttons { float:right; font-size:1em; margin:.5em; }
#menu-top-buttons a { background-color:#00a083; border-color:#00a083; color:#FFF; margin-right:1em; }
#menu-top-buttons li > a:hover, #menu-top-buttons li > a:focus { color:#00a083; background-color:#FFF; }

.sidebar .title { font-family:'Avro', sans-serif; font-size:2em; padding:.2em; text-align:center; text-transform:uppercase; }
#menu-main li { display:block; }
#menu-main li > a { display:block; padding:1em; margin:-1px 0; text-transform:uppercase; border:1px solid #ddd; border-width:1px 0 1px 0;}
#menu-main li > a:hover, #menu-main li > a:focus,
#menu-main li.current-menu-item > a, #menu-main li.current-menu-ancestor > a { color:#FFF; background-color:#00a083; }
#menu-main li li li > a { padding-left:3em; }

footer { position:absolute; bottom:0; left:0; right:0; background-color:#333; color:#FFF; }
footer .social { text-align:center; padding:1em .5em .5em .5em; }
footer .social a { display:inline-block; font-size:1.5em; padding:0 .3em; }

#content { min-height:100vh; flex-grow:1; position:relative; overflow:hidden; }
#main { padding:1em; }

.footer-menu { text-align:center; font-size:.8em; padding-bottom:.5em; }
.menu-footer-container { display:inline-block; }
#menu-footer li:before { content:' • '; display:inline; padding:.2em; }

.entry-content, article.post {
	max-width:800px; margin:50px auto 0 auto; font-size:.9em;
}

.post-image { text-align:center; }
.post-image .wp-post-image {
	max-width:100%; max-height:320px; width:auto; height:auto; margin-top:3px;
	vertical-align:bottom;
}
h1 + .post-image { margin-bottom:1em; }

.form { width:400px; }
.form label { width:80px; text-align:right; float:left; clear:left; margin:.4em; line-height:1.8em; border:1px solid transparent; }
.form input, .form textarea { border:1px solid #00a083; margin:.4em; padding:0 .5em; line-height:1.6em; border-radius:.8em; }
.form textarea  { height:8em; }
.form [name] { float:right; width:280px; }
.form input[type=submit] { clear:both; float:right; background-color:#fff; color:#00a083; }
.form .invalid { border:1px solid red !important; }
.form .error, .form .success { margin:.4em; color:red; float:right; clear:both;}
.form .success { color:green; }
.form input[type=submit].progress { opacity:.2; }

.contact-form {
	position:fixed; top:0; left:0; right:0; bottom:0; z-index:200; display:none;
	background-color:rgba(255,255,255,.8); text-align:center; line-height:100vh;
}
.contact-form.open { display:block; }
.contact-form .form { display:inline-block; line-height:1.2em; vertical-align:middle; }
.contact-form .close { float:right; margin:-1em -1em 0 0; font-size:1.5em; }

@media (max-width:750px) {
	.sidebar { position:absolute; top:60px; left:0; width:100%; background-color:#fff; z-index:100; }
	.sidebar:not(.open) { display:none; }
	.sidebar .logo, .sidebar .title { display:none; }
	.fa.sidebar-toggle { display:block; }
}

.category h1 { text-align:center; margin:1em 0; }

.item { max-width:800px; margin:1em auto; }
.item:after { content:''; clear:both; display:block; }
.item > .image { position:relative; height:320px; text-align:center; }
.item > .image > img { max-width:100%; max-height:320px; }
.item > h2, .item > .desc { margin-top:20px; }
.item > .more {
	float:right; background-color:#00a083; color:#fff; display:inline-block; padding:.5em 1em;
	border-width:1px; border-style:solid;
}
.item > .more:hover, .item > .more:focus {
	background-color:#fff; color:#00a083;
}

.home .front-item { padding:8em 0; max-width:800px; margin:0 auto; }
.home .front-item:after { content:''; display:block; clear:both; }
.home .front-item img { float:left; width:300px; margin-right:1em; }

.home .highlights { display:flex; list-style:none; max-width:none; margin:0 -1em; padding:0; }
.home .highlights li { flex-grow:1; padding:0; }
.home .highlights li:not(:last-child) { margin-right:1px; }
.home .highlights a { 
	position:relative; display:block; color:#fff; text-transform:uppercase; font-size:1.2em; text-align:center;
	padding:1em; background-color:#19AA8D; border:1px solid #19AA8D; height:350px;
	background-position:center center; background-size:200px; background-repeat:no-repeat;
}
.home .highlights a span { position:absolute; left:0; right:0; display:block; transition:inherit; }
.home .highlights a span:first-child { top:1em; margin-top:1em; }
.home .highlights a span:last-child { bottom:1em; margin-bottom:1em; }
.home .highlights a:hover span, .home .highlights a:focus span {
	margin:0;
}
.home .highlights .mouth { background-image:url(img/icon-mouth.png); }
.home .highlights .chair { background-image:url(img/icon-chair.png); }
.home .highlights .tooth { background-image:url(img/icon-tooth.png); }

.home .products { list-style:none; max-width:1000px; margin:0 auto; padding:0 0 4em 0; }
.home .products:after { content:''; display:block; clear:both; }
.home .products li { padding:1em; width:25%; float:left; }
.home .products li img { margin-bottom:1em; }

@media (max-width:1000px) {
	.home .products li { font-size:1.5vw; }
}

@media (max-width:600px) {
	.home .highlights a { background-size:33vw; height:55vw; font-size:3vw; }
	.home .front-item img { float:none; display:block; margin:0 0 1em 0; }
	.home .products li { width:50%; font-size:2.5vw; }
	.home .products li:nth-child(2n+1) { clear:left; }
}

h2.read-more { text-align:center; margin-top:4em; }
ul.read-more { margin:0 auto 6em auto; padding:0; list-style:none; width:850px; max-width:100%; text-align:center; }
ul.read-more li { display:inline-block; width:400px; padding:1em; vertical-align:top; }
ul.read-more h3 { min-height:80px }
ul.read-more img { margin-bottom:1em; }

/* Text meant only for screen readers */
.says,
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
}

/* dev */
.post-edit-link {
	position:absolute; z-index:5; right:1em; background-color:#FFF; border:1px solid #10293D;
	padding:.2em .5em; margin-top:.5em;
}

/* customization */
