/*
Theme Name: ØNE
Author: Considered Creative
Author URI: https://consideredcreative.com/
*/

@font-face {
    font-family: 'oneaeregular';
    src: url('fonts/oneae-webfont.woff2') format('woff2'),
         url('fonts/oneae-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

/* resets
--------------------------------------------------------------------------
*/

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }

html { font-size: 100%; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; overflow-y: scroll; box-sizing: border-box; }
*, *:before, *:after { box-sizing: inherit; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template { display: none; }

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

img, iframe { border: 0; vertical-align: middle; }

strong { font-weight: bold; }
em { font-style: italic; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }

button, input, optgroup, select, textarea { margin: 0; font: inherit; line-height: normal; vertical-align: baseline; color: inherit; outline: 0; border-radius: 0; -webkit-font-smoothing: inherit; }
button, input, textarea { padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
legend { color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { vertical-align: bottom; }
input[type="checkbox"], input[type="radio"] { padding: 0; }
label, button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; }
button[disabled], input[disabled] { cursor: default; }
button { width: auto; overflow: visible; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
input[type="search"] { -webkit-appearance: none; border-radius: 0; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

table { border-collapse: collapse; border-spacing: 0; }
th, td { vertical-align: top; }
th { font-weight: normal; text-align: left; }

h1, h2, h3, h4, h5, h6 { font-weight: normal; }

ul, ol { list-style: none; }
li { display: list-item; }

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

a { color: #000; background: transparent; text-decoration: none; cursor: pointer; -webkit-text-decoration-skip: objects; }
a:focus { outline: thin dotted; }
a:active, a:hover { outline: 0; }

.hide { border: 0; clip: rect(0 0 0 0); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }

a, span, button, .wpcf7-submit { -webkit-transition: color 0.4s ease, background-color 0.4s ease, border-color 0.4s ease, opacity 0.4s ease; transition: color 0.4s ease, background-color 0.4s ease, border-color 0.4s ease, opacity 0.4s ease; }

/* global
--------------------------------------------------------------------------
*/

body { font: 62.5%/1 'Avenir Next W01', 'Helvetica Neue', Arial, Helvetica, sans-serif; padding: 60px 0 0; background: #fff; color: #000; text-align: center; position: relative; overflow: hidden; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

@media only screen and (min-width: 960px) {
	body { padding-top: 120px; }
}

a.gen-button { padding: 1.429em 1.286em 1.143em 1.429em; font-size: 1.4em; line-height: 100%; text-transform: uppercase; display: inline-block; border: 0 !important; -webkit-transition: -webkit-transform 0.1s ease; transition: -webkit-transform 0.1s ease; transition: transform 0.1s ease; transition: transform 0.1s ease, -webkit-transform 0.1s ease; }
a.gen-button:hover { -webkit-transform: scale(1.1, 1.1); -ms-transform: scale(1.1, 1.1); transform: scale(1.1, 1.1); }
a.gen-button.navy,
a.gen-button.navy:hover { background: #9cdcd9; color: #00747a; }
a.gen-button.pink,
a.gen-button.pink:hover { background: #000; color: #fff; }
a.gen-button.teal,
a.gen-button.teal:hover { background: #00747a; color: #fff; }

body > nav { width: 100%; height: 100%; position: fixed; top: 0; right: -100%; background: #006368; color: #fff; text-align: left; z-index: 989; -webkit-transition: right 0.4s ease; transition: right 0.4s ease; }
html.menu-open body > nav { right: 0; }
body > nav > ul { padding: 70px 0 0; }
body > nav > ul li { display: block; position: relative; }
body > nav > ul li a { padding: 0.444em 20px; font-size: 1.8em; text-transform: uppercase; color: #fff; display: block; }
body > nav > ul li ul li a { padding-left: 30px; }
body > nav > ul li ul li ul li a { padding-left: 40px; font-size: 16px; }
body > nav > ul li a:hover { color: #9cdcd9; }
body > nav > ul li.current-menu-item > a,
body > nav > ul li.current-menu-parent > a,
body.single-treatments > nav > ul > li.menu-item-object-treatments > a,
body.single-stories > nav > ul li.menu-item-object-stories > a,
body.single-events > nav > ul li.menu-item-object-events > a,
body.single-news_and_media > nav > ul li.menu-item-object-news_and_media > a { color: #006368; background: #fff; }
body > nav > ul li.current-menu-item > a:hover,
body > nav > ul li.current-menu-parent > a:hover,
body.single-treatments > nav > ul li.menu-item-object-treatments > a:hover,
body.single-stories > nav > ul li.menu-item-object-stories > a:hover,
body.single-events > nav > ul li.menu-item-object-events > a:hover,
body.single-news_and_media > nav > ul li.menu-item-object-news_and_media > a:hover { color: #fff; background: #00747a; }
body > nav > ul ul { display: none; }
body > nav > ul li span.toggle { padding: 10px; position: absolute; top: 0; right: 0; font-size: 14px; color: #fff; cursor: pointer; z-index: 2; -webkit-transition: -webkit-transform 0.4s ease; transition: -webkit-transform 0.4s ease; transition: transform 0.4s ease; transition: transform 0.4s ease, -webkit-transform 0.4s ease; }
body > nav > ul li.current-menu-item span.toggle,
body > nav > ul li.current-menu-parent span.toggle,
body.single-treatments > nav > ul li.menu-item-object-treatments span.toggle,
body.single-stories > nav > ul li.menu-item-object-stories span.toggle,
body.single-events > nav > ul li.menu-item-object-events span.toggle,
body.single-news_and_media > nav > ul li.menu-item-object-news_and_media span.toggle { color: #9cdcd9; }
body > nav > ul li span.toggle.open { -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }
body > nav > .opening-times { margin: 1em 20px 0; padding: 1.9em 0 1.7em; border: 1px solid #fff; border-width: 1px 0; display: none; }
body > nav > .opening-times ul { font-size: 1.2em; line-height: 120%; letter-spacing: 0.18em; text-transform: uppercase; }
body > nav > .opening-times ul span { width: 18px; display: inline-block; }
body > nav > .opening-times strong { font-weight: 900; }
body > nav > .opening-times a { font-weight: 900; color: #fff; border-bottom: 1px solid #fff; }
body > nav > .opening-times a:hover { border-bottom-color: #006368; }
body > nav > .contact { margin: 1em 20px 0; padding: 1.9em 0; border-top: 1px solid #fff; }
body > nav > .contact a { color: #fff; }
body > nav > .contact a:hover { color: #9cdcd9; }
body > nav > .contact ul { /*font-family: 'oneaeregular', sans-serif;*/ /*font-weight: 700; letter-spacing: 0.1em;*/ font-size: 1.8em; line-height: 120%; text-transform: uppercase; }
body > nav > .contact ul li { margin: 0 0 0.222em; }
body > nav > .contact ul + ul { font-size: inherit; line-height: inherit; }
body > nav > .contact ul + ul li { margin: 1.2em 9px 0 0; float: left; }
body > nav > .contact ul + ul li a { font-size: 38px; border: 0; color: #fff; float: left; }

@media only screen and (min-width: 960px) {
	body > nav { display: none; }
}

body > header { width: 100%; position: fixed; top: 0; left: 0; background: #00747a; text-align: left; z-index: 999; }
body.home > header { background: #fff; }
body > header > button { width: 30px; height: 30px; background: transparent; border: 0; position: fixed; top: 15px; right: 5px; display: block; }
body > header > button span,
body > header > button span:before,
body > header > button span:after { width: 20px; height: 2px; margin: 0 5px; position: relative; display: block; background: #fff; -webkit-transition: all 0.4s; transition: all 0.4s; -webkit-backface-visibility: hidden; backface-visibility: hidden; }
body.home > header > button span,
body.home > header > button span:before,
body.home > header > button span:after { background: #00747a; }
body > header > button span:before,
body > header > button span:after { margin: 0; position: absolute; content: ' '; }
body > header > button span:before { top: -6px; }
body > header > button span:after { bottom: -6px; }
html.menu-open body > header > button span { background: transparent; }
html.menu-open body > header > button span:before { top: 0; -webkit-transform: translate(0px, 0px) rotate(45deg); -ms-transform: translate(0px, 0px) rotate(45deg); transform: translate(0px, 0px) rotate(45deg); }
html.menu-open body > header > button span:after { top: 0; -webkit-transform: translate(0px, 0px) rotate(-45deg); -ms-transform: translate(0px, 0px) rotate(-45deg); transform: translate(0px, 0px) rotate(-45deg); }
body > header > p { position: absolute; top: 22px; right: 40px; }
body > header > p a { color: #fff; font-size: 16px; }
body.home > header > p a { color: #00747a; }
body > header h1 { padding: 10px; float: left; }
body > header h1 a { float: left; }
body > header h1 img { width: auto; height: 40px; }
body > header > nav,
body > header > .opening-times,
body > header > .treatments { display: none; }

@media only screen and (min-width: 960px) {
	body > header > button,
	body > header > p { display: none; }
	body > header h1 { padding: 20px; }
	body > header h1 img { width: auto; height: 80px; }
	body > header > nav { padding: 54px 0 0 34px; float: left; display: block; }
	body > header > nav > ul { float: left; }
	body > header > nav > ul > li { font-weight: 250; font-size: 1.6em; text-transform: uppercase; position: relative; float: left; }
	body > header > nav > ul > li ~ li:before { padding: 0 0.65em; content: '|'; color: #fff; float: left; }
	body > header > nav > ul > li > a { color: #9cdcd9; position: relative; z-index: 2; float: left; }
	body.home > header > nav > ul > li > a { color: #121b23; }
	body.home > header > nav > ul > li ~ li:before { color: #9cdcd9; }
	body > header > nav > ul > li > a:hover,
	body > header > nav > ul > li.current-menu-item > a,
	body > header > nav > ul > li.current-menu-parent > a,
	body.single-treatments > header > nav > ul > li.menu-item-object-treatments > a,
	body.single-stories > header > nav > ul > li.menu-item-object-stories > a,
	body.single-events > header > nav > ul > li.menu-item-object-events > a,
	body.single-news_and_media > header > nav > ul > li.menu-item-object-news_and_media > a { color: #fff; }
	body.home > header > nav > ul > li > a:hover { color: #006368; }
	body > header > nav > ul > li > ul { position: absolute; top: 0; padding: 32px 0 0; left: 0; z-index: 1; display: none; }
	body > header > nav > ul > li > ul li { background: #9cdcd9; }
	body > header > nav > ul > li > ul li ~ li { border-top: 1px solid #7db0ae; }
	body > header > nav > ul > li ~ li > ul { left: 25px; }
	body > header > nav > ul > li > ul > li a { color: #000; padding: 15px 18px 10px 18px; white-space: nowrap; display: block; }
	body > header > nav > ul > li > ul > li a:hover,
	body > header > nav > ul > li > ul > li.current-menu-item a { background: #00747a; color: #fff; }
  body > header > nav > ul > li.menu-item-has-children:hover > ul { display: block; }
  body > header > nav > ul > li.menu-item-has-children .menu-item-has-children { position: relative; }
  body > header > nav > ul > li.menu-item-has-children .menu-item-has-children > .sub-menu  { display: none; position: absolute; left: 100%; top: 0; }
  body > header > nav > ul > li.menu-item-has-children .menu-item-has-children > .sub-menu a { font-size: 14px; padding: 8px 12px; }
  body > header > nav > ul > li.menu-item-has-children .menu-item-has-children:hover > .sub-menu  { display: block; }
}

@media only screen and (min-width: 1140px) {
	body > header > .opening-times { padding: 25px 30px 0 0; display: block; text-align: right; float: right; }
	body > header > .opening-times ul { font-size: 0; vertical-align: middle; }
	body > header > .opening-times ul li { font-weight: 250; font-size: 14px; color: #fff; display: block; vertical-align: middle; }
	body > header > .opening-times ul li ul li { font-weight: 400; font-size: 24px; padding: 0 0 0 5px; display: inline-block; }
	body.home > header > .opening-times ul li { color: #00747a; }
	body > header > .opening-times ul li strong { text-transform: uppercase; font-weight: 700; }
	body > header > .opening-times ul li span { width: 18px; color: #fff; text-align: left; display: inline-block; }
	body.home > header > .opening-times ul li span { color: #00747a; }
	body > header > .opening-times ul li a { color: #fff; border-bottom: 1px solid #fff; }
	body.home > header > .opening-times ul li a { color: #00747a; font-weight: 900; border-bottom: 1px solid #00747a; }
	body > header > .opening-times ul li ul li a,
	body.home > header > .opening-times ul li ul li a { border-bottom: 0; }
	body > header > .opening-times ul li a:hover { border-bottom-color: #00747a; }
	body.home > header > .opening-times ul li a:hover { border-bottom-color: #fff; }
	body > header > .opening-times ul li ul li a:hover { color: #9cdcd9; }
	body > header > .opening-times form { margin: 1em 0 0; float: right; }
	body > header > .opening-times form label { width: 170px; float: left; }
	body > header > .opening-times form label span { border: 0; clip: rect(0 0 0 0); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }
	body > header > .opening-times form label input { width: 100%; padding: 0 10px; height: 30px; line-height: 30px; font-size: 14px; background: #9cdcd9; color: #000; border: 0; }
	body > header > .opening-times form button { width: 30px; height: 30px; line-height: 30px; padding: 0; border: 0; font-size: 14px; background: #7dc7c6; color: #fff; float: left; }
	body > header > .opening-times form button:hover { background: #9cdcd9; }
	body > header > .opening-times form button span { border: 0; clip: rect(0 0 0 0); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }
}

@media only screen and (min-width: 1250px) {
	body > header > .opening-times { padding-top: 25px; }
	body > header > .opening-times ul li { display: inline-block; }
	body > header > .opening-times > ul > li ~ li:before { padding: 0 0.833em; content: '|'; color: #fff; display: inline-block; }
	body.home > header > .opening-times > ul > li ~ li:before { color: #000; }
}

body > .breadcrumb { padding: 1.9em 20px 1.6em; position: relative; background: #fff; border-bottom: 1px solid #e5e5e5; }
body > .breadcrumb ul { max-width: 940px; margin: 0 auto; text-align: left; }
body > .breadcrumb ul li { font-weight: 300; font-size: 1.4em; text-transform: uppercase; color: #51646c; display: inline-block; }
body > .breadcrumb ul li + li:before { margin: 0 0.357em; content: "/"; display: inline-block; }
body > .breadcrumb ul li a { color: #00747a; }
body > .breadcrumb ul li a:hover { color: #51646c; }

body > .gen { max-width: 980px; margin: 1.5em auto 0; padding: 0 20px; position: relative; text-align: left; }
body > .gen > header { padding: 1.7em 0 0; text-align: center; }
body > .gen > header h1 { font-weight: 250; /*font-family: 'oneaeregular', sans-serif; font-weight: 700; letter-spacing: 0.1em;*/ font-size: 2em; line-height: 120%; text-transform: uppercase; color: #51646c; text-align: center; }
body > .gen > header nav { display: none; }
body.single-news_and_media > .gen > header { text-align: left; }
body.single-news_and_media > .gen > header h1 { color: #00747a; }
body > .gen a { color: #00747a; border-bottom: 1px solid #00747a; display: inline-block; }
body > .gen a:hover { border-bottom-color: #fff; }
body > .gen figure img { width: 100%; height: auto; }
body > .gen h2 { margin: 1.267em 0 1.067em; font-weight: 250; /*font-family: 'oneaeregular', sans-serif; font-weight: 700; letter-spacing: 0.1em;*/ font-size: 2em; line-height: 120%; text-transform: uppercase; color: #00747a; }
body > .gen p { margin: 1.143em 0 0; font-size: 1.2em; line-height: 130%; /*letter-spacing: 0.08em;*/ }
body > .gen p:first-of-type::first-letter { font-family: 'oneaeregular', sans-serif; font-size: 2em; opacity:.5; }
body > .gen ul { margin: 1.143em 0 0 35px; font-size: 1.2em; line-height: 130%; /*letter-spacing: 0.08em;*/ }
body > .gen ul li { padding: 0 0 0 20px; position: relative; }
body > .gen ul li:after { position: absolute; top: 0; left: 0; content: '•'; display: block; }
body > .gen ol { margin: 1.143em 0 0 35px; font-size: 1.2em; line-height: 130%; counter-reset: ol; }
body > .gen ol li { padding: 0 0 0 20px; position: relative; counter-increment: ol; }
body > .gen ol li:after { position: absolute; top: 0; left: 0; content: counter(ol) '.'; display: block; }
body > .gen ul.cta { margin: 0; /*font-family: 'oneaeregular', sans-serif;*/ /*font-weight: 700; letter-spacing: 0.1em;*/ font-size: 2em; line-height: 120%; letter-spacing: 0; text-transform: uppercase; }
body > .gen ul.cta li { margin: 0.9em 0.9em 0 0; padding: 0; display: inline-block; }
body > .gen ul.cta li:after { display: none; }
body > .gen ul.cta li a { color: #00747a; border: 0; }
body > .gen ul.cta li a:hover { color: #000; }
body > .gen ul.buttons { margin: 0; font-size: 0; line-height: inherit; letter-spacing: 0; text-align: center; }
body > .gen hr + ul.buttons { margin-top: -20px; position: relative; }
body > .gen ul.buttons li { margin: 20px 10px 0; font-size: 10px; padding: 0; display: inline-block; vertical-align: middle; }
body > .gen ul.buttons li:after { display: none; }
body > .gen .gallery ul { margin: 1.5em 0 0; font-size: inherit; line-height: inherit; text-transform: none; letter-spacing: 0; overflow: hidden; }
body > .gen .gallery ul li { width: calc(50% - 10px); margin: 20px 0 0 20px; padding: 0; float: left; }
body > .gen .gallery ul li:nth-of-type(2n-1) { margin-left: 0; }
body > .gen .gallery ul li:after { display: none; }
body > .gen .gallery ul li a { position: relative; display: block; overflow: hidden; border: 0; }
body > .gen .gallery ul li a img { width: 100%; height: auto; -webkit-transition: -webkit-transform 0.1s ease; transition: -webkit-transform 0.1s ease; transition: transform 0.1s ease; transition: transform 0.1s ease, -webkit-transform 0.1s ease; }
body > .gen .gallery ul li a:hover img { -webkit-transform: scale(1.1, 1.1); -ms-transform: scale(1.1, 1.1); transform: scale(1.1, 1.1); }
body > .gen .gallery ul li a span.video { width: 100%; font-size: 40px; line-height: 40px; position: absolute; top: calc(50% - 20px); left: 0; text-align: center; }
body > .gen .gallery p { margin: 0; font-size: 1.2em; line-height: 120%; text-transform: uppercase; text-align: center; color: #51646c; }
body > .gen .gallery p:before { width: 70px; height: 1px; margin: 40px auto 34px; background: #a8b1b5; content: ' '; display: block; }
body > .gen .logos { margin: 3.5em 0 0; }
body > .gen .logos h2 { margin: 0; font-size: 1.2em; line-height: 120%; text-transform: uppercase; text-align: center; color: #51646c; }
body > .gen .logos h2:after { width: 70px; height: 1px; margin: 28px auto 0; background: #a8b1b5; content: ' '; display: block; }
body > .gen .logos ul { max-width: 740px; margin: 0 auto; font-size: 0; line-height: inherit; letter-spacing: 0; text-align: center; }
body > .gen .logos ul li { margin: 0; font-size: 10px; padding: 30px 15px 0; display: inline-block; }
body > .gen .logos ul li:after { display: none; }
body > .gen .logos ul li a { display: inline-block; }
body > .gen .logos ul:before,
body > .gen .logos ul:after { width: 60px; height: 100%; position: absolute; top: 0; content: ' '; display: block; z-index: 99; }
body > .gen .logos ul:before { left: 0; background: -webkit-linear-gradient(left, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%); background: linear-gradient(to right, rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%); }
body > .gen .logos ul:after { right: 0; background: -webkit-linear-gradient(left, rgba(255,255,255,0) 0%,rgba(255,255,255,0) 1%,rgba(255,255,255,1) 100%); background: linear-gradient(to right, rgba(255,255,255,0) 0%,rgba(255,255,255,0) 1%,rgba(255,255,255,1) 100%); }
body > .gen hr { width: 100%; height: 1px; margin: 4em 0; background: #e5e5e5; border: 0; display: block; clear: both; }
body > .gen hr + h2 { margin-top: -10px; }
body > .gen .map { margin: 4em 0 0; position: relative; height: 350px; }
body > .gen time { margin: 1.5em 0 0; font-weight: 200; font-size: 2em; line-height: 120%; text-transform: uppercase; display: block; }
body > .gen address { margin: 0.667em 0 0; font-size: 1.2em; line-height: 120%; text-transform: uppercase; display: block; }
body > .gen time + p,
body > .gen address + p { margin-top: 2.375em; padding-top: 1.875em; border-top: 1px solid #e5e5e5; }

@media only screen and (max-width: 960px) {
	body > .gen .logos ul li img { width: auto; height: 30px; }
}

body.search-results > .gen h2 { margin-bottom: 0; }
body.search-results > .gen h2 + h3 { margin: 1em 0 0; font-size: 1.2em; font-weight: 700; text-transform: uppercase; opacity: 0.5; }

body > .gen .wpcf7 { max-width: 460px; margin: 3em auto 0; }
body > .gen .wpcf7 .screen-reader-response { display: none; }
body > .gen .wpcf7 ul { margin: 0; font-size: 1em; line-height: inherit; }
body > .gen .wpcf7 ul li { margin: 0 0 2em; padding: 0; }
body > .gen .wpcf7 ul li:after { display: none; }
body > .gen .wpcf7 ul li.text label { display: block; }
body > .gen .wpcf7 ul li.text label span.dummy { border: 0; clip: rect(0 0 0 0); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }
body > .gen .wpcf7 ul li.text label input,
body > .gen .wpcf7 ul li.text label textarea { width: 100%; padding: 0.857em 10px 0.643em; font-size: 1.4em; line-height: 120%; background: #f5f5f5; color: #000; border: 0; }
body > .gen .wpcf7 ul li.text label input.wpcf7-not-valid,
body > .gen .wpcf7 ul li.text label textarea.wpcf7-not-valid { background: #f3e1e5; color: #9f1b3a; }
body > .gen .wpcf7 ul li.text label input::-webkit-input-placeholder,
body > .gen .wpcf7 ul li.text label textarea::-webkit-input-placeholder { text-transform: uppercase; }
body > .gen .wpcf7 ul li.text label input::-moz-placeholder,
body > .gen .wpcf7 ul li.text label textarea::-moz-placeholder { text-transform: uppercase; }
body > .gen .wpcf7 ul li.text label input:-ms-input-placeholder,
body > .gen .wpcf7 ul li.text label textarea:-ms-input-placeholder { text-transform: uppercase; }
body > .gen .wpcf7 ul li.text label input:-moz-placeholder,
body > .gen .wpcf7 ul li.text label textarea:-moz-placeholder { text-transform: uppercase; }
body > .gen .wpcf7 ul li.text label textarea { height: 120px; }
body > .gen .wpcf7 ul li.text label .wpcf7-not-valid-tip { padding: 0.75em 0 0; font-size: 1.2em; font-weight: 900; text-transform: uppercase; color: #9f1b3a; display: block; }
body > .gen .wpcf7 ul li.checkbox label { position: relative; display: block; }
body > .gen .wpcf7 ul li.checkbox label input { border: 0; clip: rect(0 0 0 0); -webkit-clip-path: inset(50%); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; white-space: nowrap; }
body > .gen .wpcf7 ul li.checkbox label span { font-size: 1.4em; line-height: 120%; padding: 0 0 0 50px; position: relative; display: block; }
body > .gen .wpcf7 ul li.checkbox label span:before { width: 30px; height: 30px; line-height: 30px; font-size: 14px; position: absolute; top: 0; left: 0; background: #f5f5f5; color: #f5f5f5; content: "\f00c"; display: inline-block; text-align: center;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased; font-family: "Font Awesome 5 Free"; font-weight: 900; display: block; }
body > .gen .wpcf7 ul li.checkbox label input:checked + span:before { color: #000; }
body > .gen .wpcf7 ul li.notice { padding: 2em 0 0; border-top: 1px solid #e5e5e5; }
body > .gen .wpcf7 ul li.notice p { margin: 0; font-size: 1.2em; }
body > .gen .wpcf7 ul li.submit { margin: 0; overflow: hidden; }
body > .gen .wpcf7 ul li.submit input { width: auto; padding: 0.857em 10px 0.643em; font-size: 1.4em; line-height: 120%; background: #00747a; color: #fff; border: 0; text-transform: uppercase; float: left; }
body > .gen .wpcf7 ul li.submit input:hover { background: #000; }
body > .gen .wpcf7  .wpcf7-response-output { font-weight: 300; padding: 1em 0 0; font-size: 1.6em; line-height: 120%; text-transform: uppercase; text-align: center; }

body > .gen .promo { margin: 5em 10px 0; position: relative; border: 1px solid #fff; }
body > .gen .promo + *:not(.promo) { border-top: 10px solid rgba(255,255,255,0); }
body > .gen .promo.navy { background: #006368; outline: 10px solid #00747a; }
body > .gen .promo.pink { background: #bae7e4; outline: 10px solid #9cdcd9; }
body > .gen .promo figure { width: 100%; max-width: 100%; }
body > .gen .promo figure img { width: 100%; height: auto; }
body > .gen .promo h2 { margin: 1.733em 0 0; padding: 0 20px; text-align: center; }
body > .gen .promo h2 a { border: 0; display: inline; }
body > .gen .promo.navy h2,
body > .gen .promo.navy h2 a { color: #9cdcd9; }
body > .gen .promo.navy h2 a:hover { color: #fff; }
body > .gen .promo.pink h2,
body > .gen .promo.pink h2 a { color: #00747a; }
body > .gen .promo.pink h2 a:hover { color: #000; }
body > .gen .promo p { max-width: 760px; margin: 0.929em auto 0; padding: 0 20px; text-align: center; }
body > .gen .promo.navy p { color: #fff; }
body > .gen .promo ul.cta { padding-bottom: 34px; text-align: center; }
body > .gen .promo ul.cta li { margin-left: 0; margin-right: 0; }
body > .gen .promo.navy ul.cta li a { color: #9cdcd9; }
body > .gen .promo.navy ul.cta li a:hover { color: #fff; }

@media only screen and (min-width: 500px) {
	body > .gen figure { width: calc(50% - 20px); max-width: 460px; }
	body > .gen figure.aligncentre { margin: 4em auto; }
	body > .gen figure.alignleft { margin: 4em 20px 4em 0; float: left; }
	body > .gen figure.alignright { margin: 4em 0 4em 20px; float: right; }
	body > .gen figure.alignleft ~ ul { overflow: hidden; padding-left: 20px; }
	body > .gen figure.alignright { margin-left: 0; max-width: 480px; border-left: 20px solid #fff; }
	body > .gen figure.aligncentre.widthfull { width: 100%; max-width: 100%; }
	body > .gen .gallery ul li { width: calc(25% - 15px); }
	body > .gen .gallery ul li:nth-of-type(2n-1) { margin-left: 20px; }
	body > .gen .gallery ul li:nth-of-type(4n-3) { margin-left: 0; }
}

@media only screen and (min-width: 540px) {
	body > .gen .promo figure { width: 250px; margin: 0 0 0 20px; float: right; }
	body > .gen .promo figure ~ h2 { margin-top: 1em; }
	body > .gen .promo figure ~ h2,
	body > .gen .promo figure ~ p,
	body > .gen .promo figure ~ ul.cta { margin-left: 0; text-align: left; }
	body > .gen .promo figure ~ ul.cta { padding-left: 20px; padding-bottom: 0; }
}

@media only screen and (min-width: 960px) {
	body > .gen > header h1 { font-size: 3em; }
	body > .gen > header nav { margin: 2.5em 0 0; display: block; }
	body > .gen > header nav ul { margin: 0; font-size: 0; line-height: inherit; letter-spacing: 0; }
	body > .gen > header nav ul li { padding: 0; font-size: 10px; display: inline-block; vertical-align: middle; }
	body > .gen > header nav ul li ~ li:before { width: 1px; height: 30px; margin: 0 18px 0 16px; background: #ccc; display: inline-block; vertical-align: middle; content: ' '; }
	body > .gen > header nav ul li:after { display: none; }
	body > .gen > header nav ul li a { font-weight: 250; font-size: 1.4em; text-transform: uppercase; color: #00747a; border: 0; display: inline-block; vertical-align: middle; }
	body > .gen > header form { max-width: 460px; margin: 1.2em auto 0; text-align: left; }
	body > .gen > header form ul { margin: 0; font-size: 0; line-height: inherit; letter-spacing: 0; }
	body > .gen > header form ul li { padding: 8px; }
	body > .gen > header form ul li:after { display: none; }
	body > .gen > header nav ul li a:hover,
	body > .gen > header nav ul li.current-menu-item a { color: #000; }
	body > .gen h2 { font-size: 3em; }
	body > .gen p,
	body > .gen ul,
	body > .gen ol { font-size: 1.6em; line-height: 125%; }
	body > .gen ul.cta { font-size: 2em; }
	body > .gen figure.alignright + p,
	body > .gen figure.alignleft + p { margin-top: 2.857em; }
	body > .gen .gallery p { font-size: 1.6em; }
	body > .gen .logos h2 { font-size: 1.6em; }
	body > .gen .promo figure { width: 300px; }
	body > .gen .promo figure img { width: 300px; height: 300px; }
	body > .gen .promo ul.cta { padding-bottom: 54px; }
	body > .gen .promo figure ~ h2 { margin-top: 1.667em; }
	body > .gen .promo figure ~ p { max-width: 450px; }
	body > .gen .promo figure ~ h2,
	body > .gen .promo figure ~ p,
	body > .gen .promo figure ~ ul.cta { margin-left: 40px; }
}

@media only screen and (min-width: 980px) {
	body > .gen .gallery ul li { width: 220px; }
	body > .gen .gallery ul li a img { width: 220px; height: 220px; }
}

body > figure { width: 100%; max-width: 1400px; margin: 3em auto 0; }
body > figure .video { position: relative; padding-bottom: 56.25%; height: 0; }
body > figure .video iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

body > .landing-video { background: #000; position: relative; }
body > .landing-video .contact { display: none; }
body > .landing-video > div.video { width: 100%; max-width: 1400px; margin: 0 auto; }
body > .landing-video > div.video figure { height: 0; padding: 0 0 56.25%; position: relative; }
body > .landing-video > div.video figure video { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }

@media only screen and (min-width: 960px) {
	body > .landing-video .contact { position: absolute; top: 1.6em; right: 20px; text-align: right; color: #fff; display: block; z-index: 2; }
	body > .landing-video .contact ul { vertical-align: middle; }
	body > .landing-video .contact ul li { font-weight: 250; font-size: 2em; line-height: 120%; vertical-align: middle; opacity: 0.8; }
	body > .landing-video .contact ul li a { color: #9cdcd9; }
	body > .landing-video .contact ul li a:hover { color: #fff; }
	body > .landing-video .contact ul + ul { margin: 20px 0 0; font-size: 0; }
	body > .landing-video .contact ul + ul li { font-size: 10px; line-height: 100%; display: inline-block; }
	body > .landing-video .contact ul + ul li ~ li { margin: 0 0 0 7px; }
	body > .landing-video .contact ul + ul li a { font-size: 2em; }
}

body > .landing { position: relative; height: calc(100vh - 40px); background-position: 50% 50%; background-size: cover; background-repeat: no-repeat; background-color: #000; }
body > .landing .contact { display: none; }
body > .landing h1 { padding: 40px 20px 0; }
body > .landing h1 img { width: 305px; max-width: 100%; height: auto; }
body > .landing h1 span { padding: 20px 0 0; font-weight: 250; font-size: 1.6em; line-height: 120%; display: block; text-transform: lowercase; color: #fff; opacity: 0.8; }
body > .landing .logos { width: 100%; position: absolute; bottom: 20px; left: 0; }
body > .landing .logos h2 { padding: 0 0 20px; font-size: 1em; line-height: 120%; text-transform: uppercase; text-align: center; color: #fff; }
body > .landing .logos ul { max-width: 740px; margin: 0 auto; font-size: 0; position: relative; text-align: center; }
body > .landing .logos ul li { margin: 0; font-size: 10px; padding: 0 8px; display: inline-block; outline: 0; }
body > .landing .logos ul li img { width: auto; height: 20px; opacity: 0.5; }

@media only screen and (min-width: 960px) {
	body > .landing { height: calc(100vh - 120px); }
	body > .landing .contact { position: absolute; top: 1.6em; right: 20px; text-align: right; color: #fff; display: block; }
	body > .landing .contact ul { display: inline-block; vertical-align: middle; }
	body > .landing .contact ul li { font-weight: 250; font-size: 2em; line-height: 120%; display: inline-block; vertical-align: middle; opacity: 0.8; }
	body > .landing .contact ul:first-child li ~ li { display: none; }
	body > .landing .contact ul li a { color: #9cdcd9; }
	body > .landing .contact ul li a:hover { color: #fff; }
	body > .landing .contact ul + ul { margin: 0 0 0 20px; padding: 0 0 0 20px; border-left: 1px solid #fff; font-size: 0; }
	body > .landing .contact ul + ul li { font-size: 10px; line-height: 100%; }
	body > .landing .contact ul + ul li ~ li { margin: 0 0 0 7px; }
	body > .landing .contact ul + ul li a { font-size: 2em; }
	body > .landing h1 { padding-top: 150px; }
	body > .landing h1 img { width: auto; height: 185px; }
	body > .landing h1 span { padding-top: 40px; font-size: 2em; }
	body > .landing .logos { bottom: 60px; }
	body > .landing .logos h2 { font-size: 1.2em; line-height: 120%; }
	body > .landing .logos ul li { padding: 0 15px; }
	body > .landing .logos ul li img { height: 40px; }
}

body > .landing-video + .landing { display: none; }
.no-video body > .landing-video { display: none; }
.no-video body > .landing-video + .landing { display: block; }

body > .intro { max-width: 1300px; margin: 0 auto; position: relative; }
body > .intro figure { position: relative; display: block; overflow: hidden; }
body > .intro figure a { display: block; }
body > .intro figure img { width: 100%; height: auto; -webkit-transition: -webkit-transform 0.1s ease; transition: -webkit-transform 0.1s ease; transition: transform 0.1s ease; transition: transform 0.1s ease, -webkit-transform 0.1s ease; }
body > .intro figure a:hover img { -webkit-transform: scale(1.1, 1.1); -ms-transform: scale(1.1, 1.1); transform: scale(1.1, 1.1); }
body > .intro .text { padding: 2em 20px 1.6em; text-align: left; }
body > .intro .text h1 img { width: auto; height: 48px; }
body > .intro .text p { margin: 1.5em 0 0; font-size: 1.2em; line-height: 120%; /*letter-spacing: 0.08em;*/ }
body > .intro .text p:first-of-type::first-letter { font-family: 'oneaeregular', sans-serif; font-size: 2em; opacity:.5; }
body > .intro .text p.link { margin-top: 1.25em; /*font-family: 'oneaeregular', sans-serif;*/ /*font-weight: 700; letter-spacing: 0.1em;*/ text-transform: uppercase; font-size: 1.6em; letter-spacing: 0; }
body > .intro .text p.link a { color: #00747a; }
body > .intro .text p.link a:hover { color: #000; }

@media only screen and (min-width: 650px) {
	body > .intro { margin: 50px auto 0; font-size: 0; display: flex; align-items: center; }
	body > .intro figure { width: 50%; font-size: 10px; display: inline-block; vertical-align: middle; order: 2; }
	body > .intro .text { width: 50%; padding: 0 20px 0 110px; font-size: 10px; display: inline-block; vertical-align: middle; order: 1; }
	body > .intro .text p { max-width: 390px; }
}

@media only screen and (min-width: 960px) {
	body > .intro .text h1 img { height: 94px; }
	body > .intro .text p { margin-top: 1.857em; font-size: 1.6em; line-height: 125%; }
	body > .intro .text p.link { margin-top: 1.2em; font-size: 2em; }
}

@media only screen and (min-width: 1400px) {
	body > .intro figure img { width: 650px; height: 420px; }
}

body > .listing { width: 100%; max-width: 1400px; margin: 50px auto 0; position: relative; font-size: 0; }
body > .listing + .listing { margin-top: 0; }
body > .listing li { padding: 2px 0 0; font-size: 10px; display: inline-block; vertical-align: top; }
body > .listing li a { position: relative; display: block; overflow: hidden; }
body > .listing li a figure { position: relative; display: block; overflow: hidden; }
body > .listing li a figure img { width: 100%; height: auto; -webkit-transition: -webkit-transform 0.1s ease; transition: -webkit-transform 0.1s ease; transition: transform 0.1s ease; transition: transform 0.1s ease, -webkit-transform 0.1s ease; }
body > .listing li a:hover figure img { -webkit-transform: scale(1.1, 1.1); -ms-transform: scale(1.1, 1.1); transform: scale(1.1, 1.1); }
body > .listing li a > span { width: 100%; height: 100%; position: absolute; top: 0; left: 0; opacity: 0; background: rgba(0,0,0,0.7); display: block; -webkit-transition: opacity 0.2s ease; transition: opacity 0.2s ease; }
body > .listing li a:hover > span { opacity: 1; }
body > .listing li a > span > span { width: 100%; position: absolute; top: 50%; left: 0; text-align: center; opacity: 0.8; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); display: block; }
body > .listing li a > span h2 { width: 100%; padding: 0 20px; font-weight: 250; font-size: 2.6em; line-height: 120%; text-transform: uppercase; color: #fff; }
body > .listing li a > span h2 span { font-family: 'oneaeregular', sans-serif; padding-top: 0.5em; opacity: 0.5; font-size: 0.85em; line-height: 120%; display: block; }
body > .listing li a > span p { display: none; }

@media (hover: none) {
	body > .listing li a:hover figure img { -webkit-transform: none; transform: none; }
	body > .listing li a > span { opacity: 1; }
}

@media only screen and (min-width: 960px) {
	/*body > .listing li a > span h2 { padding: 0 60px; font-size: 4em; }*/
	body > .listing li a > span p { max-width: 560px; margin: 0 auto; padding: 47px 20px 0; font-size: 1.6em; line-height: 120%; color: #fff; text-align: left; display: block; position: relative; }
	body > .listing li a > span p::first-letter { font-family: 'oneaeregular', sans-serif; font-size: 2em; opacity: 0.5; }
	body > .listing li a > span p:after { width: 70px; height: 1px; position: absolute; top: 25px; left: calc(50% - 35px); background: rgba(255,255,255,0.5); content: " "; display: block; }
}

@media only screen and (min-width: 279px) {
	body > .listing li.five { width: calc(50% - 1px); }
	body > .listing li.five:nth-of-type(even) { margin-left: 2px; }
}

@media only screen and (min-width: 349px) {
	body > .listing li.four { width: calc(50% - 1px); }
	body > .listing li.four:nth-of-type(even) { margin-left: 2px; }
}

@media only screen and (min-width: 465px) {
	body > .listing li.three { width: calc( ( 100% / 3 ) - 1.5px ); }
	body > .listing li.three + li.three { margin-left: 2px; }
	body > .listing li.four { width: calc(25% - 1.5px); }
	body > .listing li.four:nth-of-type(even) { margin-left: 0; }
	body > .listing li.four + li.four { margin-left: 2px; }
}

@media only screen and (min-width: 558px) {
	body > .listing li.five { width: calc(20% - 1.6px); }
	body > .listing li.five:nth-of-type(even) { margin-left: 0; }
	body > .listing li.five + li.five { margin-left: 2px; }
}

@media only screen and (min-width: 700px) {
	body > .listing li.two { width: calc(50% - 1px); margin-left: 2px; }
	body > .listing li.two:nth-of-type(2n-1) { margin-left: 0; }
}

@media only screen and (min-width: 1400px) {
	body > .listing li.two { width: 699px; }
	body > .listing li.two a figure img { width: 699px; height: 420px; }
	body > .listing li.three { width: 465px; }
	body > .listing li.three a figure img { width: 465px; height: 420px; }
}

body > .events { width: 100%; max-width: 1400px; margin: 50px auto 0; position: relative; font-size: 0; }
body > .events article { padding: 2px 0 0; font-size: 10px; display: inline-block; position: relative; vertical-align: top; }
body > .events article a { position: relative; display: block; overflow: hidden; }
body > .events article a figure { position: relative; display: block; overflow: hidden; }
body > .events article a figure img { width: 100%; height: auto; -webkit-transition: -webkit-transform 0.1s ease; transition: -webkit-transform 0.1s ease; transition: transform 0.1s ease; transition: transform 0.1s ease, -webkit-transform 0.1s ease; }
body > .events article a:hover figure img { -webkit-transform: scale(1.1, 1.1); -ms-transform: scale(1.1, 1.1); transform: scale(1.1, 1.1); }
body > .events article a > span { width: 100%; padding: 4em 20px; position: absolute; bottom: 0; left: 0; background: rgba(0,116,122,0.9); color: #fff; display: block; }
body > .events article a > span h2 { max-width: 320px; margin: 0 auto; font-weight: 200; font-size: 2em; line-height: 120%; text-transform: uppercase; }
body > .events article a > span > span { max-height: 0; padding: 0; overflow: hidden; position: relative; display: block; -webkit-transition: padding 0.4s ease, max-height 0.4s ease; transition: padding 0.4s ease, max-height 0.4s ease; }
body > .events article a > span > span:before { width: 70px; height: 1px; margin: 0 auto 18px; background: #fff; opacity: 0.5; content: " "; display: block; }
body > .events article a > span > span time { font-weight: 200; font-size: 2em; line-height: 120%; text-transform: uppercase; display: block; }
body > .events article a > span > span address { margin: 8px auto 0; max-width: 320px; font-size: 1.2em; letter-spacing: 0.01em; text-transform: uppercase; display: block; }
body > .events article a:hover > span > span { max-height: 250px; padding: 40px 0 0; }
body > .events article .map { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }
body > .events article .map + a figure { opacity: 0; }

@media (hover: none) {
	body > .events article a:hover figure img { -webkit-transform: none; transform: none; }
	body > .events article a > span { opacity: 1; }
}

@media only screen and (min-width: 700px) {
	body > .events article { width: calc( 50% - 1px ); margin-left: 2px; }
	body > .events article:nth-of-type(2n-1) { margin-left: 0; }
}

@media only screen and (min-width: 1400px) {
	body > .events article { width: 465px; margin-left: 2px; }
	body > .events article:nth-of-type(2n-1) { margin-left: 2px; }
	body > .events article:nth-of-type(3n-2) { margin-left: 0; }
	body > .events article a figure img { width: 465px; height: 420px; }
}

body > .stories { width: 100%; max-width: 1400px; margin: 5em auto 0; position: relative; }
body > .stories article { background: #9cdcd9; position: relative; display: block; text-align: left; }
body > .stories article > a { position: relative; display: block; }
body > .stories article > a > figure { position: relative; display: block; overflow: hidden; }
body > .stories article > a > figure img { width: 100%; height: auto; -webkit-transition: -webkit-transform 0.1s ease; transition: -webkit-transform 0.1s ease; transition: transform 0.1s ease; transition: transform 0.1s ease, -webkit-transform 0.1s ease; }
body > .stories article > a:hover > figure img { -webkit-transform: scale(1.1, 1.1); -ms-transform: scale(1.1, 1.1); transform: scale(1.1, 1.1); }
body > .stories article > a > span { padding: 1.6em 20px; position: relative; display: block; }
body > .stories article > a > span h2 { margin: 0 auto; font-weight: 250; /*font-family: 'oneaeregular', sans-serif; font-weight: 700; letter-spacing: 0.1em;*/ font-size: 2em; line-height: 120%; text-transform: uppercase; color: #00747a; }
body > .stories article > a > span p { margin: 1em auto 0; font-size: 1.2em; line-height: 130%; /*letter-spacing: 0.08em;*/ color: #00747a; }
body > .stories article > a > span span { margin: 1.25em auto 0; /*font-family: 'oneaeregular', sans-serif;*/ /*font-weight: 700; letter-spacing: 0.1em;*/ text-transform: uppercase; font-size: 1.6em; line-height: 120%; color: #00747a; display: block; }
body > .stories article.news_and_media_categories-in-the-press { background: #006368; }
body > .stories article.news_and_media_categories-in-the-press > a > span h2,
body > .stories article.news_and_media_categories-in-the-press > a > span p,
body > .stories article.news_and_media_categories-in-the-press > a > span span { color: #fff; }
body > .stories > .gen-button { margin-top: 20px; }

@media only screen and (min-width: 700px) {
	body > .stories article > a { font-size: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
	body > .stories article > a > figure { width: 50%; font-size: 10px; display: inline-block; vertical-align: middle; -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
	body > .stories article > a > span { width: 50%; font-size: 10px; display: inline-block; vertical-align: middle; -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
	body > .stories article:nth-of-type(odd) > a > figure { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
	body > .stories article:nth-of-type(odd) > a > span { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
}

@media only screen and (min-width: 960px) {
	body > .stories article > a > span h2 { max-width: 340px; font-size: 3em; }
	body > .stories article > a > span p { max-width: 340px; font-size: 1.6em; line-height: 125%; }
	body > .stories article > a > span span { max-width: 340px; font-size: 1.6em; }
	body > .stories > .gen-button { margin-top: 50px; }
}

@media only screen and (min-width: 1400px) {
	body > .stories article > a > figure img { width: 700px; height: 430px; }
}

body > .wp-pagenavi { width: 940px; max-width: calc(100% - 40px); margin: 3.5em auto 0; position: relative; text-align: center; }
body > .wp-pagenavi a,
body > .wp-pagenavi span { font-weight: 250; font-size: 1.6em; display: inline-block; }
body > .wp-pagenavi a { color: #00747a; }
body > .wp-pagenavi a:hover { color: #000; }
body > .wp-pagenavi a.page ~ a.page:before,
body > .wp-pagenavi a.page ~ span.current:before,
body > .wp-pagenavi span.current ~ a.page:before { padding: 0 0.5em; content: "|"; color: #ccc; display: inline-block; }
body > .wp-pagenavi span.extend { padding: 0 0.5em; color: #ccc; }
body > .wp-pagenavi a.previouspostslink,
body > .wp-pagenavi a.nextpostslink { font-size: 1.6em; position: absolute; top: 0.25em; }
body > .wp-pagenavi a.previouspostslink { left: 0; }
body > .wp-pagenavi a.nextpostslink { right: 0; }

@media only screen and (min-width: 960px) {
	body > .wp-pagenavi a.previouspostslink { left: 40px; }
	body > .wp-pagenavi a.nextpostslink { right: 40px; }
}

body > .share { width: 940px; max-width: calc(100% - 40px); margin: 3.5em auto 0; padding: 4em 0 0; border-top: 1px solid #e5e5e5; }
body > .share table { margin: 0 auto; }

body > .map { margin: 4em 0 0; position: relative; height: 350px; }

body > footer { margin: 100px 0 0; padding: 1.4em 20px 2em; background: #00747a; color: #fff; text-align: left; }
body > .map + footer { margin-top: 0; }
body > footer a { color: #9cdcd9; border-bottom: 1px solid #9cdcd9; display: inline-block; }
body > footer a:hover { color: #fff; border-bottom-color: #00747a; }
body > footer div ~ div { margin-top: 1.2em; padding-top: 1.2em; border-top: 1px solid #fff; }
body > footer h2 { font-weight: 250; font-size: 1.6em; line-height: 120%; text-transform: uppercase; color: #9cdcd9; }
body > footer p,
body > footer ul { margin: 1.167em 0 0; font-size: 1.2em; line-height: 120%; }
body > footer p.tel { margin-top: 0.5em; font-weight: 250; font-size: 2em; line-height: 120%; color: #9cdcd9; }
body > footer p.tel a { border: 0; }
body > footer ul.social { font-size: inherit; line-height: inherit; }
body > footer ul.social li { margin: 0 6px 0 0; float: left; }
body > footer ul.social li a { font-size: 30px; border: 0; float: left; }
body > footer h1 { margin-top: 1.6em; }
body > footer h1 a { border: 0; }
body > footer h1 img { width: auto; height: 80px; }

@media only screen and (min-width: 760px) {
	body > footer { padding: 0 10px; font-size: 0; text-align: center; }
	body > footer div { width: 25%; padding: 7.2em 10px; max-width: 240px; font-size: 10px; display: inline-block; vertical-align: top; text-align: left; }
	body > footer div ~ div { margin-top: 0; padding-top: 7.2em; border-top: 0; }
}

@media only screen and (min-width: 960px) {
	body > footer h2 { font-size: 1.6em; }
	body > footer p,
	body > footer ul { margin-top: 1em; font-size: 1.6em; }
	body > footer p.tel { margin-top: 0.8em; font-size: 2.6em; }
	body > footer ul.social { margin-top: 3em; }
	body > footer h1 { margin-top: 3.6em; }
}

/* clearfix
--------------------------------------------------------------------------
*/

.clearfix:before, .clearfix:after, div:before, div:after, header:before, header:after, main:before, main:after, section:before, section:after, article:before, article:after, nav:before, nav:after, footer:before, footer:after { content: " "; display: table; }
.clearfix:after, div:after, header:after, main:after, section:after, article:after, nav:after, footer:after { clear: both; }

/* 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;
    cursor: hand;
}

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

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

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.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;
}

/*! Swipebox v1.3.0 | Constantin Saguin csag.co | MIT License | github.com/brutaldesign/swipebox */html.swipebox-html.swipebox-touch{overflow:hidden!important}#swipebox-overlay img{border:none!important}#swipebox-overlay{width:100%;height:100%;position:fixed;top:0;left:0;z-index:99999!important;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}#swipebox-container{position:relative;width:100%;height:100%}#swipebox-slider{-webkit-transition:-webkit-transform .4s ease;transition:transform .4s ease;height:100%;left:0;top:0;width:100%;white-space:nowrap;position:absolute;display:none;cursor:pointer}#swipebox-slider .slide{height:100%;width:100%;line-height:1px;text-align:center;display:inline-block}#swipebox-slider .slide:before{content:"";display:inline-block;height:50%;width:1px;margin-right:-1px}#swipebox-slider .slide .swipebox-inline-container,#swipebox-slider .slide .swipebox-video-container,#swipebox-slider .slide img{display:inline-block;max-height:100%;max-width:100%;margin:0;padding:0;width:auto;height:auto;vertical-align:middle}#swipebox-slider .slide .swipebox-video-container{background:0 0;max-width:1140px;max-height:100%;width:100%;padding:5%;-webkit-box-sizing:border-box;box-sizing:border-box}#swipebox-slider .slide .swipebox-video-container .swipebox-video{width:100%;height:0;padding-bottom:56.25%;overflow:hidden;position:relative}#swipebox-slider .slide .swipebox-video-container .swipebox-video iframe{width:100%!important;height:100%!important;position:absolute;top:0;left:0}#swipebox-slider .slide-loading{background:url(images/swipebox/loader.gif) center center no-repeat}#swipebox-bottom-bar,#swipebox-top-bar{-webkit-transition:.5s;transition:.5s;position:absolute;left:0;z-index:999;height:50px;width:100%}#swipebox-bottom-bar{bottom:-50px}#swipebox-bottom-bar.visible-bars{-webkit-transform:translate3d(0,-50px,0);transform:translate3d(0,-50px,0)}#swipebox-top-bar{top:-50px}#swipebox-top-bar.visible-bars{-webkit-transform:translate3d(0,50px,0);transform:translate3d(0,50px,0)}#swipebox-title{display:block;width:100%;text-align:center}#swipebox-close,#swipebox-next,#swipebox-prev{background-image:url(images/swipebox/icons.png);background-repeat:no-repeat;border:none!important;text-decoration:none!important;cursor:pointer;width:50px;height:50px;top:0}#swipebox-arrows{display:block;margin:0 auto;width:100%;height:50px}#swipebox-prev{background-position:-32px 13px;float:left}#swipebox-next{background-position:-78px 13px;float:right}#swipebox-close{top:0;right:0;position:absolute;z-index:9999;background-position:15px 12px}.swipebox-no-close-button #swipebox-close{display:none}#swipebox-next.disabled,#swipebox-prev.disabled{opacity:.3}.swipebox-no-touch #swipebox-overlay.rightSpring #swipebox-slider{-webkit-animation:rightSpring .3s;animation:rightSpring .3s}.swipebox-no-touch #swipebox-overlay.leftSpring #swipebox-slider{-webkit-animation:leftSpring .3s;animation:leftSpring .3s}.swipebox-touch #swipebox-container:after,.swipebox-touch #swipebox-container:before{-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:all .3s ease;transition:all .3s ease;content:' ';position:absolute;z-index:999;top:0;height:100%;width:20px;opacity:0}.swipebox-touch #swipebox-container:before{left:0;-webkit-box-shadow:inset 10px 0 10px -8px #656565;box-shadow:inset 10px 0 10px -8px #656565}.swipebox-touch #swipebox-container:after{right:0;-webkit-box-shadow:inset -10px 0 10px -8px #656565;box-shadow:inset -10px 0 10px -8px #656565}.swipebox-touch #swipebox-overlay.leftSpringTouch #swipebox-container:before,.swipebox-touch #swipebox-overlay.rightSpringTouch #swipebox-container:after{opacity:1}@-webkit-keyframes rightSpring{0%{left:0}50%{left:-30px}100%{left:0}}@keyframes rightSpring{0%{left:0}50%{left:-30px}100%{left:0}}@-webkit-keyframes leftSpring{0%{left:0}50%{left:30px}100%{left:0}}@keyframes leftSpring{0%{left:0}50%{left:30px}100%{left:0}}@media screen and (min-width:800px){#swipebox-close{right:10px}#swipebox-arrows{width:92%;max-width:800px}}#swipebox-overlay{background:#0d0d0d}#swipebox-bottom-bar,#swipebox-top-bar{text-shadow:1px 1px 1px #000;background:#000;opacity:.95}#swipebox-top-bar{color:#fff!important;font-size:15px;line-height:43px;font-family:Helvetica,Arial,sans-serif}

/*======================================
  Selectric
======================================*/
.selectric-wrapper {
  position: relative;
  cursor: pointer;
}

.selectric-responsive {
  width: 100%;
}

.selectric {
  border: 0px solid #F5F5F5;
  background: #F5F5F5;
  position: relative;
  border-radius: 0px;
}

.selectric .label {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0 40px 0 12px;
  font-size: 12px;
  line-height: 40px;
  color: #000000;
  height: 40px;
}

.selectric .button {
  background: #00747A;
  border-radius: 0px;
  display: block;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 40px;
  height: 40px;
  color: #ffffff;
  text-align: center;
  font: 0/0 a;
  *font: 40px/40px Lucida Sans Unicode, Arial Unicode MS, Arial;
}

.selectric .button:after {
  content: " ";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 0;
  height: 0;
  border: 4px solid transparent;
  border-top-color: #ffffff;
  border-bottom: none;
}

.selectric-focus .selectric {
  border-color: #AAA;
}

.selectric-hover .selectric {
  border-color: #dcdcdc;
}

.selectric-hover .selectric .button {
  color: #dcdcdc;
}

.selectric-hover .selectric .button:after {
  border-top-color: #dcdcdc;
}

.selectric-open {
  z-index: 9999;
}

.selectric-open .selectric {
  border-color: #dcdcdc;
  background: #dcdcdc;
}

.selectric-open .selectric-items {
  display: block;
}

.selectric-disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.selectric-hide-select {
  position: relative;
  overflow: hidden;
  width: 0;
  height: 0;
}

.selectric-hide-select select {
  position: absolute;
  left: -100%;
}

.selectric-hide-select.selectric-is-native {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.selectric-hide-select.selectric-is-native select {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  border: none;
  z-index: 1;
  box-sizing: border-box;
  opacity: 0;
}

.selectric-input {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 1px !important;
  height: 1px !important;
  outline: none !important;
  border: none !important;
  *font: 0/0 a !important;
  background: none !important;
}

.selectric-temp-show {
  position: absolute !important;
  visibility: hidden !important;
  display: block !important;
}

/* Items box */
.selectric-items {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #F8F8F8;
  border: 1px solid #C4C4C4;
  z-index: -1;
  box-shadow: 0 0 10px -6px;
}

.selectric-items .selectric-scroll {
  height: 100%;
  overflow: auto;
}

.selectric-above .selectric-items {
  top: auto;
  bottom: 100%;
}

.selectric-items ul, .selectric-items li {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 12px;
  line-height: 20px;
  min-height: 20px;
}

.selectric-items li {
  display: block;
  padding: 8px;
  border-top: 1px solid #FFF;
  border-bottom: 1px solid #EEE;
  color: #666;
  cursor: pointer;
}

.selectric-items li.selected {
  background: #EFEFEF;
  color: #444;
}

.selectric-items li.highlighted {
  background: #D0D0D0;
  color: #444;
}

.selectric-items li:hover {
  background: #F0F0F0;
  color: #444;
}

.selectric-items .disabled {
  filter: alpha(opacity=50);
  opacity: 0.5;
  cursor: default !important;
  background: none !important;
  color: #666 !important;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.selectric-items .selectric-group .selectric-group-label {
  font-weight: bold;
  padding-left: 10px;
  cursor: default;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  background: none;
  color: #444;
}

.selectric-items .selectric-group.disabled li {
  filter: alpha(opacity=100);
  opacity: 1;
}

.selectric-items .selectric-group li {
  padding-left: 25px;
}