/*
 * Small Layout (mobile first)
 * These styles will then get overridden in the large.css file
 * IE7/8 will get these styles
 */

@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-light.woff2') format('woff2'),
 			 url('../fonts/opensans-light.woff') format('woff');
 	font-weight: 300;
 	font-style: normal;
 	font-display: swap;
}
@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-lightitalic.woff2') format('woff2'),
 			 url('../fonts/opensans-lightitalic.woff') format('woff');
 	font-weight: 300;
 	font-style: italic;
 	font-display: swap;
}
@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-regular.woff2') format('woff2'),
 			 url('../fonts/opensans-regular.woff') format('woff');
 	font-weight: 400;
 	font-style: normal;
 	font-display: swap;
}
@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-italic.woff2') format('woff2'),
 			 url('../fonts/opensans-italic.woff') format('woff');
 	font-weight: 400;
 	font-style: italic;
 	font-display: swap;
}
@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-semibold.woff2') format('woff2'),
 			 url('../fonts/opensans-semibold.woff') format('woff');
 	font-weight: 600;
 	font-style: normal;
 	font-display: swap;
}
@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-semibolditalic.woff2') format('woff2'),
 			 url('../fonts/opensans-semibolditalic.woff') format('woff');
 	font-weight: 600;
 	font-style: italic;
 	font-display: swap;
}
@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-bold.woff2') format('woff2'),
 			 url('../fonts/opensans-bold.woff') format('woff');
 	font-weight: 700;
 	font-style: normal;
 	font-display: swap;
}
@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-bolditalic.woff2') format('woff2'),
 			 url('../fonts/opensans-bolditalic.woff') format('woff');
 	font-weight: 700;
 	font-style: italic;
 	font-display: swap;
}
@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-extrabold.woff2') format('woff2'),
 			 url('../fonts/opensans-extrabold.woff') format('woff');
 	font-weight: 800;
 	font-style: normal;
 	font-display: swap;
}
@font-face {
 	font-family: 'Open Sans';
 	src: url('../fonts/opensans-extrabolditalic.woff2') format('woff2'),
 			 url('../fonts/opensans-extrabolditalic.woff') format('woff');
 	font-weight: 800;
 	font-style: italic;
 	font-display: swap;
}

@font-face {
 	font-family: 'Lora';
 	src: url('../fonts/lora-bold.woff2') format('woff2'),
 			 url('../fonts/lora-bold.woff') format('woff');
 	font-weight: bold;
 	font-style: normal;
 	font-display: swap;
}
@font-face {
 	font-family: 'Lora';
 	src: url('../fonts/lora-bolditalic.woff2') format('woff2'),
 			 url('../fonts/lora-bolditalic.woff') format('woff');
 	font-weight: bold;
 	font-style: italic;
 	font-display: swap;
}
@font-face {
 	font-family: 'Lora';
 	src: url('../fonts/lora-italic.woff2') format('woff2'),
 			 url('../fonts/lora-italic.woff') format('woff');
 	font-weight: normal;
 	font-style: italic;
 	font-display: swap;
}
@font-face {
 	font-family: 'Lora';
 	src: url('../fonts/lora-regular.woff2') format('woff2'),
 			 url('../fonts/lora-regular.woff') format('woff');
 	font-weight: normal;
 	font-style: normal;
 	font-display: swap;
}

@font-face {
  font-family: 'Lobster Two';
  src: url('../fonts/lobstertwo-bold.woff2') format('woff2'),
       url('../fonts/lobstertwo-bold.woff') format('woff');
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Lobster Two';
  src: url('../fonts/lobstertwo-bolditalic.woff2') format('woff2'),
       url('../fonts/lobstertwo-bolditalic.woff') format('woff');
  font-weight: bold;
  font-style: italic;
 	font-display: swap;
}
@font-face {
  font-family: 'Lobster Two';
  src: url('../fonts/lobstertwo-italic.woff2') format('woff2'),
       url('../fonts/lobstertwo-italic.woff') format('woff');
  font-weight: normal;
  font-style: italic;
 	font-display: swap;
}
@font-face {
  font-family: 'Lobster Two';
  src: url('../fonts/lobstertwo-regular.woff2') format('woff2'),
       url('../fonts/lobstertwo-regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
 	font-display: swap;
}

@font-face {
  font-family:'exhibit';
  src:url('../fonts/exhibit.eot');
  src:url('../fonts/exhibit.eot?#iefix') format('embedded-opentype'),
    url('../fonts/exhibit.woff') format('woff'),
    url('../fonts/exhibit.ttf') format('truetype'),
    url('../fonts/exhibit.svg#exhibit') format('svg');
  font-weight:normal;
  font-style:normal;
  font-display: block;
}


.borderbox {
-webkit-box-sizing:border-box;
   -moz-box-sizing:border-box;
        box-sizing:border-box;
}


/*
 * Layout
 */
html{
    height:100%;
    overflow-y:scroll;
}
body {
    min-height:100%;
}
#wrapper {
    position:relative;
    min-height:100%;
}
#masthead {
    position:relative;
}
#masthead .inner {
    padding-bottom:108px;
}
#content {
    position:relative;
    z-index:1;
    padding-bottom: 20px;
}
.main a {
    font-weight:400;
}
#content .main {
    clear: both;
    margin:0 0 10px;
    padding:60px 20px 10px;
}
.home #content .main {
	padding-top: 10px;
}
#content img {
    max-width:100%;
}


/*
 * Defaults
 */
body {
    font:300 112.5%/1.5 "Open Sans", Arial, sans-serif;
    color:#000;
}
h1,h2,h3,h4,h5,h6 {
    margin:0 0 0.5em;
    font-family:Lora;
    line-height:1em;
    font-weight:400;
    font-style:italic;
}
h1,p {
    margin:0;
    padding:0 0 20px;
}
ol,ul,dl {
    margin: 0;
		padding: 0 0 20px 20px;
}
ul ul, ul ol, ol ol, ol ul {
    padding-bottom:0;
}
h1 {
    font-size:2em; /* 24px */
}
h2 {
    font-size:1.5em; /* 22px */
}
h3 {
    font-size:1.4em; /* 20px */
}
h4 {
    font-size:1.2em; /* 18px */
}

a {
    color:#C03935;
    font-weight:300;
    text-decoration:none;
-webkit-transition:all 0.2s ease-out;
   -moz-transition:all 0.2s ease-out;
     -o-transition:all 0.2s ease-out;
        transition:all 0.2s ease-out;
}
a:hover, a:focus {
    color:#FF4C46;
    text-decoration: underline;
}
a:active {
    color:#C03935;
}
a[target=_blank] {
    padding-right:17px;
    background:url('../imgs/external_link_icon.gif') center right no-repeat;
}
b, strong {
    font-weight:600;
}

table {
    margin-bottom:20px;
}
tr {
    border-bottom:1px solid #ccc;
}
th {
    width:100%;
    padding:2px 5px;
    font-weight:normal;
    text-align:left;
}
tr:first-child th {
    font-weight:600;
}
td {
    padding:2px 5px;
}


/*
 * Design
 */
html {
    background-color:#ebebeb;
}
#masthead {
    background:#494949 url("../imgs/grad-dark.png") top center repeat-y;
    border-bottom:1px solid #515151;
-webkit-box-shadow:0 0 1px #FFF;
        box-shadow:0 0 1px #FFF;
}
#masthead .inner {
    background-image:url("../imgs/diag-lines.png");
}

#logo {
    position:absolute;
    bottom:-38px;
    left:20px;
    width:160px;
    z-index:1;
		margin: 0;
}
#logo a {
    display:block;
    box-shadow:0 -38px 1px #393939;
}
#logo a:hover img {
    top:2px;
}
#logo img {
    position:relative;
    display:block;
}


.social {
    position:absolute;
    list-style:none;
}
.social a {
    display:block;
    overflow:hidden;
    width:1em;
    height:1em;
    line-height:1em;
    font-size:24px;
    color:#FFF;
}
#masthead .social {
    display:none;
    top:20px;
    right:20px;
}
#masthead .social a {
    opacity:0.6;
}
#masthead .social a:focus,
#masthead .social a:hover {
    opacity:1;
}


.bigbtn {
    display:inline-block;
    padding:7px 10px;
    color:#FFF;
    font-family:"Open Sans",​Arial,​sans-serif;
    font-size:20px;
    font-weight:400;
    line-height:1em;
    text-transform:uppercase;
    vertical-align:top;
    text-shadow:0 0 2px #222;
    background:#696969 url("../imgs/btn-bg.png");
    border:1px solid #868686;
-webkit-box-shadow:0 0 2px #333;
        box-shadow:0 0 2px #333;
-webkit-border-radius:4px;
        border-radius:4px;
}
.bigbtn:focus, .bigbtn:hover {
    padding:8px 11px;
    margin:-1px;
    color:#FFF;
}
.bigbtn:active {
    padding:7px 10px;
    margin:0;
}
input.bigbtn {
    padding:3px 10px;
}
input.bigbtn:focus, input.bigbtn:hover {
    padding:4px 11px;
    margin:-1px;
}
input.bigbtn:active {
    padding:3px 10px;
}


.bookbtn {
    position:absolute;
    z-index:0;
    bottom:0;
    right:0;
    width:100%;
    padding:20px 5px 20px 172px;
}
.bookbtn a {
    display:block;
    overflow:hidden;
    height:52px;
    line-height:46px;
    padding-right:5px;
    text-align:center;
}
.bookbtn span {
    display:inline-block;
    line-height:22px;
    vertical-align:middle;
}


.main-graphic {
    position:relative;
    margin-bottom: 75px;
    background-color: #e3e3e3;
    -webkit-box-shadow:0 0 2px #888;
            box-shadow:0 0 2px #888;
}

.bg {
  width:100%;
  height: 0;
  padding-top: 62.5%;
}
.bg img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 200%;
  margin-left: -100%;
}

.badges {
    position: absolute;
    bottom: -95px;
    width: 100%;
    padding: 0 10px;
}
.badges .g1x2 { width:50%; }
.badges .g1x3 { width:33.3333%; }
.badges .g2x3 { width:66.6666%; }
.badges .g1x4 { width:25%; }
.badges .g3x4 { width:75%; }
.badges img {
	width: 150px;
	max-width:100%;
}

.promo {
    position:relative;
    overflow:hidden;
    /* min-height:125px; */
    margin:0 -20px 20px !important;
    padding:15px 15px 0;
    background:#ECECEC;
    background:rgba(255,255,255,0.3);
}
.promo .img {
    position:absolute;
    right:0;
    top:0;
    min-width:100px;
    height:100%;
    padding:0;
    opacity:0.3;
}

.nav {
    position:relative;
    z-index:2;
    overflow:hidden;
    height:0;
    padding:40px 0 0;
    background:#D8D8D8 url("../imgs/diag-lines.png");
    border-bottom:1px solid #666;
}
.nojs .nav, #nav.open {
    height:auto;
}
.nav li {
    font-size:1.286em;
    font-weight:400;
    line-height:1em;
}
.nav a {
    display:block;
    color:#222;
    padding:11px 20px;
    border-top:1px solid #666;
    background:#D8D8D8 url("../imgs/diag-lines.png");
}
.nav a:hover, .nav a:focus {
    background-color:#BBB;
}
.nav a:active, .nav .current a {
    background-color:#EEE;
}

.navtoggle {
    position:absolute;
    z-index:2;
    top:0;
    right:0;
    width:40px;
    height:40px;
}
.navtoggle span {
    display:block;
    width:100%;
    height:4px;
    margin-bottom:4px;
    background-color:#444;
-webkit-box-shadow:inset 0 0 2px #000;
        box-shadow:inset 0 0 2px #000;
}
#navLink {
    display:block;
    width:24px;
    height:24px;
    padding:10px 8px 6px;
    opacity:0.8;
}
#navLink:hover {
    opacity:1;
}
#navLink i {
  position: absolute;
  left: -45px;
  top: 10px;
  font-size: 14px;
  font-weight: 600;
  font-style: normal;
  text-transform: uppercase;
  color: #222;
  text-shadow: none;
}


.subnav {
    overflow:hidden;
    list-style:none;
    border-bottom:1px solid #ccc;
    padding:0;
    margin-bottom:20px;
}
.subnav li {
    display:-moz-inline-stack;
    display:inline-block;
    zoom:1;
    *display:inline;
    width:50%;
    padding:2px 0;
    border-top:1px solid #ccc;
    vertical-align:top;
}
@media only screen and (max-width:480px) {
	.subnav li {
		width: 100%;
	}
}
.subnav a {
    padding:0 2px;
}

.backBtn {
    display:block;
    margin:-15px 0 10px;
}



#footer {
    background:#494949 url("../imgs/grad-dark.png") top center repeat-y;
    border-top:1px solid #515151;
  -webkit-box-shadow:0 0 1px #FFF;
          box-shadow:0 0 1px #FFF;
}
#footer .inner {
    padding: 20px 0;
    background-image:url("../imgs/diag-lines.png");
}

#footer .contact {
    list-style:none;
    margin: 0 auto;
    padding: 0;
}
#footer .contact li {
    font-size:18px;
    font-weight:400;
    color:#FFF;
    padding: 0 20px;
}
#footer .contact a {
    display:block;
    color:#FFF;
}
#footer .contact a:hover,
#footer .contact a:focus {
    color:#FF4C46;
}
#footer .contact a:active {
    color:#E2433E;
}
#footer .contact b {
    position:relative;
    float:left;
    overflow:hidden;
    width:1em;
    top:0.111em;
    margin-right:8px;
}

#footer .contact .phone,
#footer .contact .email {
  padding-bottom: 15px;
}



#contact-form ul {
    list-style:none;
    margin:0;
    padding:0;
}
#contact-form ul li { font-size:100%; }
#contact-form .text, #contact-form textarea {
    width:98%;
    padding:4px 1%;
    margin:0 0 0 -1px;
    border:1px solid #888;
    color:#333;
    background-color:#DDD;
    background-color:rgba(255,255,255,0.5);
    outline:none;
}
#contact-form .text:focus,
#contact-form textarea:focus,
#contact-form select:focus { border-style:solid; }
#contact-form textarea {
    height:105px;
    overflow:auto;
    min-width:98%;
    min-height:105px;
    max-width:98%;
    max-height:135px;
}
#contact-form label {
    text-transform:uppercase;
}
#contact-form button {
-webkit-box-shadow:none;
        box-shadow:none;
    -x-system-font:none;
}
#contact-form button::-moz-focus-inner {
    border:0;
}
#contact-form .formBtn {
    float:right;
    margin-top:20px;
}
#contact-form #sneaky { display:none; }
#contact-form #feedback {
    float:left;
    width:70%;
    margin-top:20px;
}
#contact-form #feedback p {
    color:#FF4C46;
    font-size:1em;
    font-weight:600;
    border:none;
    margin:0;
    padding:0;
}


.gmap {
    margin:20px 0 40px;
}
.gmap iframe {
    display:block;
    background-color:#DDD;
    background-color:rgba(255,255,255,0.5);
    border:1px solid #888;
}
.gmap p {
    padding-bottom:0;
}



/*
 * icons
 */
.phone b:before,
.email b:before,
.address b:before,
.social .facebook a:before {
  font-family:'exhibit';
  font-style:normal;
  font-weight:normal;
  font-variant:normal;
  text-transform:none;
  line-height:1;
  speak:none;
  -webkit-font-smoothing:antialiased;
}
.phone b:before {
  content: "\70";
}
.email b:before {
  content: "\65";
}
.address b:before {
  content: "\6d";
}
.social .facebook a:before {
  content: "\66";
  display: inline-block;
}


.extra {
  font-size: 1.1em;
  padding: 45px 30px 0.5em;
  border-top: 1px solid #e0e0e0;
  background-color: #f3f2f2;
}
.extra .center {
  quotes: '“' '”' '‘' '’';
  position: relative;
  max-width: 660px;
  margin: 0 auto;
  text-align: center;
}
.extra p {
  padding-bottom: 0.5em;
}
.extra .center:before,
.extra .center:after {
  position: absolute;
  font-family: 'Lobster Two';
  font-size: 100px;
  line-height: 0;
  font-weight: normal;
  color: #ccc;
}
.extra .center:before {
  content: open-quote;
  top: 8px;
  left: -20px;
}
.extra .center:after {
  content: close-quote;
  top: 8px;
  right: -20px;
}



/*
 * Page specific
 */
.home h1 {
  font-family:'Lobster Two';
  font-size: 2.4em;
  font-weight: 400;
  color: #333;
  text-shadow: 1px -1px 0px rgba(255, 255, 255, 0.7);
  padding-top: 10px;
}

#content img {
  transition: box-shadow .15s ease;
  box-shadow: 0 0 2px rgba(0,0,0,0.1);
}
#content a:hover img {
  box-shadow: 0 0 5px rgba(0,0,0,0.3);
}
#content a:active img {
  box-shadow: 0 0 2px rgba(0,0,0,0.1);
}
#content img.noshadow {
  box-shadow: none;
}




/*
 * media queries - getting wider
 */
@media only screen and (min-width:280px) {

}
@media only screen and (min-width:300px) {

    .bookbtn {
        padding-left:191px;
        padding-right:10px;
    }
    .bookbtn a {
        padding-right:10px;
    }
}
@media only screen and (min-width:320px) {

    .bookbtn {
        padding-left:201px;
        padding-right:20px;
    }

}
@media only screen and (min-width:380px) {

    .bookbtn {
        width:180px;
        padding:20px 20px 35px 20px;
    }
    .bookbtn a {
        height:24px;
        line-height:17px;
    }
    .promo .img {
        opacity:0.6;
    }
}


/*
 * styles that can be applied in ICE
 */

.highlight1 {
  color:#F00;
}
.highlight2 {
  color:#0F0;
}
.highlight3 {
  color:#F0F;
}

.textcenter  { text-align:center; }
.textright   { text-align:right; }
.textjustify {
    text-align:justify;
-webkit-hyphens:auto;
   -moz-hyphens:auto;
        hyphens:auto;
}

p.nogap {
    padding-bottom:0;
}


/*
 * Display browser upgrade / Chrome Frame enable message for IE7 or older
 */
.chromeframe, .nojsmessage {
  margin:0;
  padding:0 1em;
  background:#ccc;
  color:#000;
  text-align:center;
  position:relative;
  z-index:9999;
  font-size:0.875em;
  height:30px;
  line-height:26px;
}

/* Micro Clearfix: http://nicolasgallagher.com/micro-clearfix-hack/ */
.cf:before, .cf:after { content:" "; display:table; }
.cf:after { clear:both; }
.cf { *zoom:1; }

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.hide { border:0; clip:rect(0 0 0 0); height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute; width:1px; }
/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.hide.focusable:active, .hide.focusable:focus { clip:auto; height:auto; margin:0; overflow:visible; position:static; width:auto; }

/* mouse selection */
::-moz-selection { background:#787878; color:#fff; text-shadow:none; }
::selection { background:#787878; color:#fff; text-shadow:none; }

/* print style - can add specifics to the bottom */
@media print {
    * { background:transparent !important; color:#000 !important; box-shadow:none !important; text-shadow:none !important; }
    body { font-size:0.875em !important; }
    a,a:visited { text-decoration:underline; }
    a[href]:after { content:" (" attr(href) ")"; }
    abbr[title]:after { content:" (" attr(title) ")"; }
    .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content:""; }
    pre, blockquote { page-break-inside:avoid;}
    thead { display:table-header-group; }
    tr, img { page-break-inside:avoid; }
    img { max-width:100% !important;}
    @page { margin:0.5cm; }
    p,h2,h3 { orphans:3; widows:3; }
    h2,h3 { page-break-after: avoid; }
}
