html, body, div, span,
h1, h2, h3, p, img, input, ul, li, fieldset, form, label, legend, a,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
img, time, mark, audio, video {
margin:0;
padding:0;
border:0;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}

ul {
list-style:none;
}

del {
text-decoration: line-through;
}

input, select {
vertical-align:middle;
}

/* ---- */

html {
overflow-y:scroll;
}

body {
font-family: 'PT Sans', sans-serif;
line-height:1.4;
font-weight:400;
color:white;
background:#a00;
text-align:center;
font-size:1.2rem;
}

footer {
padding:2rem 0
}

a {
color:#ffa;
text-decoration:none;
transition:color .5s;
}

a:hover {color:white}

h1,h2,h3{
margin-bottom:1rem;
}

h1 {
padding-top:2rem !important;
font-size:2rem;
}

h3 {
text-align:left;
color: #e00
}

p, tr {
margin-bottom:.5rem;
color:#ccc
}

th {
color:white;
padding-bottom:1rem;
}

.special {
color:#fe0;
}

label {
min-width: 12rem;
display:inline-block
}

#wrap {
position:relative;
}

#headwrap {
border-top:6px solid black;
box-shadow: 0 6px 9px rgba(0,0,0,.3);
}

header {
text-align:left;
position:relative;
z-index:2;
}

ul#nav {
float:right;
right: 0;
top:0
}

ul#nav li {
display:inline-block;
}

ul#nav a {
color:#aaa;
min-width:5rem;
padding:0 1rem;
display:block;
line-height:3rem;
border-radius:50%;
background:black;
text-align:center;
margin-top:-6px;
transition: color .5s;
cursor:pointer;
margin-left:-1rem;
}

ul#nav a:hover {
transition: color .5s;
color:#fff;
}

#headcontact {
text-align: right;
display: block;
margin-top: -3.5rem;
clear:right;
}

#headcontact #phone {
font-size: 2rem;
vertical-align:middle;
margin-right:1rem;
}

.onlinebooking {
background: white;
padding: .5rem 1rem;
color: black;
display: inline-block;
padding: .6rem 1rem;
transition: background .8s;
}

.onlinebooking:hover {
background:#090;
}

#hours {
display:inline-block;
line-height:0;
transform-origin: center 5px;
position:absolute;
top:-75px;
left:60%;
transform: rotate(-3deg);
margin-top:25%;
}

.columns {
-webkit-column-width: 10rem;
-moz-column-width: 10rem;
column-width: 10rem;
}

#hours strong {
color:white;
}

#hours.go {
-webkit-animation: swing 2s cubic-bezier(0.420, 0.000, 0.580, 1.000) ;
animation: swing 2s cubic-bezier(0.420, 0.000, 0.580, 1.000) ;
}

#hours div {
margin-top:1px;
line-height:1.3;
background:#555;
background-image: linear-gradient(#222, #555);
border:1px solid #111;
padding:1rem 1.5rem .5rem 1.5rem;
box-shadow: 6px 6px 9px rgba(0,0,0,.3);
border-radius:7px;
}

@-webkit-keyframes swing {
5% {transform: rotate(7deg);}
15% {transform: rotate(-11deg);}
25% {transform: rotate(3deg);}
35% {transform: rotate(-7deg);}
45% {transform: rotate(0deg);}
55% {transform: rotate(-5deg);}
65% {transform: rotate(-2deg);}
75% {transform: rotate(-3deg);}
}

@keyframes swing {
5% {transform: rotate(7deg);}
15% {transform: rotate(-11deg);}
25% {transform: rotate(3deg);}
35% {transform: rotate(-7deg);}
45% {transform: rotate(0deg);}
55% {transform: rotate(-5deg);}
65% {transform: rotate(-2deg);}
75% {transform: rotate(-3deg);}
}

#header h1 {opacity:0}

#logo {
position:relative;
top:3px;
background-image: url(images/smalllogo.png);
background-size: 100% auto;
width:267px;
height:101px;
display:inline-block;
}

#tagline {
font-size:2rem;
font-weight:400;
}

section {
text-align:left;
background:black;
overflow:hidden;
}

input, select{
vertical-align:middle;
font-family: 'PT Sans', sans-serif;
color: #222;
font-size: 1.2rem;
}

input, textarea {
font-size:1.2rem;
background-color:white;
border-radius:9px;
padding:.5rem 1rem;
margin-bottom:.2rem;
vertical-align:middle;
}

input[type=submit] {
cursor:pointer;
background:#ffa
}

input[type=submit]:hover {
background:#afa
}

.right {text-align:right}

.close {
position:absolute;
top:.5rem;
right:.5rem;
width:2rem;
height:2rem;
color:white;
background:black;
border:2px solid white;
display:inline-block;
border-radius:50%;
line-height:2rem;
}

.close:hover,
#mapicon:hover {
cursor:pointer;
}

#packages {
background:white;
padding:1rem .5rem
}

.maxwidth {
max-width:60rem;
width:100%;
margin:0 auto;
}

.giant {
margin:1rem 2rem 0 0;
font-size: 3.5rem;
white-space:nowrap;
vertical-align:middle;
}

.big {
margin:1rem 0;
font-size: 2rem;
white-space:nowrap;
}

.button {
background-color:black;
border-radius:50%;
display:inline-block;
cursor:pointer;
padding:1rem 2rem;
margin:1rem 0;
}

.bold {
font-weight:700;
}

#lightSlider li {
text-align:left;
}

#testimonials{
background:#111 url(images/quotes-black.png) 10% 60px no-repeat;
font-style:italic;
}

#lightSlider p.sign {
color:#ffa;
font-style:normal;
text-align:right;
}

#lightSlider img {
width:100% !important;
}

ul.lSPager.lSpg {
margin-top: -28px !important;
}

#footwrap {
padding:1rem 0;
}

footer {
text-align:left;
}

footer p {
color: #fff;
}

#foottext {
display:inline-block;
max-width:620px;
vertical-align:top;
}

.fb-like-box {
background: black;
display:inline-block;
margin-right:3%;
margin-bottom:2rem;
overflow:hidden;
width:300px;
min-height:200px;
}


@media screen and (max-width: 795px) {

#hours {display:none}

#logo {
width:178px;
height:67px;
}

ul#nav {
display:block;
}

}
