/* Styles for content pages */


/************************************************************
Banner */

#banner {
	position:relative;
	margin-bottom:1em;
}

/* Sub-page banners */
#banner.page {
	background:transparent url('../images/banners/pages/accommodations.jpg') no-repeat center center;
	height:154px;
}

/* Images */
#banner.page.accommodations { background-image:url('../images/banners/pages/accommodations.jpg'); }
#banner.page.store { background-image:url('../images/banners/pages/our-story.jpg'); }
#banner.page.aces-club { background-image:url('../images/banners/pages/aces-club.jpg'); }


/*-----------------------------------------------------------
Home page slider */

#banner ol {
	position:relative;
	list-style:none;
	margin:0;
	padding:0;
	height:374px;
}
#banner li {
	position:absolute;
	display:none;
	width:100%;
	height:374px;
	background:#fff url('../images/banners/home-static/banner-01.jpg') no-repeat center center; /* Default banner */
	background-size:auto 100%;
}
#banner li:first-child {
	display:block;
}
#banner li div { /* Overlay */
	position:absolute;
	bottom:4em;
	left:3em;
	padding:0.5em 2.5em 1em 1.5em;
	min-height:170px;
	max-width:420px;
	width:60%;
	font:120%/1.3 'Century Gothic',Arial,Helvetica,sans-serif;
	color:#f9f8f4;
	background:rgba(24,24,23,0.8);
	border-radius:0 0.8em 0.8em 0.8em;
}
#banner li > a { /* Hidden link area */
	position:absolute;
	text-indent:-9999px;
	outline:none;
	height:95%;
	width:100%;
}
#banner li h2 {
	font:290%/1.2 Busorama,'Century Gothic',Arial,Helvetica,sans-serif;
	color:#f9f8f4;
	margin:0;
}
#banner li p {
	margin:0.5em 0;
}
#banner li div:before { /* Funky shape */
	content:' ';
	position:absolute;
	left:0;
	top:-3em;
	width:100%;
	height:3em;
	border-radius:0.8em 0.8em 0 0;

	/* This is the real magic - rotated sharp-edged gradient */
	background:-moz-linear-gradient(84deg, rgba(24,24,23,0.8) 48.5%, transparent 49.5%, transparent);
	background:-webkit-linear-gradient(84deg, rgba(24,24,23,0.8) 48.5%, transparent 49.5%, transparent);
	background:-ms-linear-gradient(84deg, rgba(24,24,23,0.8) 48.5%, transparent 49.5%, transparent);
	background:-o-linear-gradient(84deg, rgba(24,24,23,0.8) 48.5%, transparent 49.5%, transparent);
	background:linear-gradient(to right top, rgba(24,24,23,0.8) 48.5%, transparent 49.5%, transparent);

	/* Works well, BUT overlaps visibly with main shape
	background:rgba(24,24,23,0.8);
	-moz-transform-origin:bottom right;
	-moz-transform:matrix(1,0.13,0,1,0,34);
	*/
}

/* Specific banners */
#banner #banner-01 {
	background-image:url('../images/banners/home/banner-01.jpg');
}

/* Next / previous */
#banner-next,
#banner-prev {
	position:absolute;
	text-align:center;
	z-index:5;
	top:50%;
	width:34px;
	height:34px;
	color:#D3DCE8;
	background:#285292;
	border:3px solid #A1CEE5;
	font:bold 280%/0.75 Arial,Helvetica,sans-serif;
	text-shadow:-2px -2px 1px rgba(0,0,0,0.3), 2px 1px 2px rgba(255,255,255,0.4);
	/*box-shadow:inset 0 -20px 20px -10px #123a77;/*, 0 0 2px #a1cee5;*/
	box-shadow:inset 0 -20px 20px -10px rgba(0,0,0,0.25);
	border-radius:100%;
}
#banner-prev {
	left:-15px;
}
#banner-next {
	right:-15px;
	letter-spacing:-0.1em; /* Not quite centered */
}

/*-----------------------------------------------------------
Banner callouts */

#banner-callouts {
	position:relative;
	list-style:none;
	margin:-3em 1em 1em;
	padding:0;
	z-index:5;
	background:#f9f8f4;
	border:1px solid #e4e4e4;
	border-radius:0.7em;
}
#banner-callouts li {
	position:relative;
	display:table-cell;
	vertical-align:top;
	width:25%;
	border-left:1px solid #e4e4e4;
	padding:0 1em 3em;
	font-size:95%;
}
#banner-callouts li:first-child {
	border-left:none;
}
#banner-callouts h2 {
	text-align:center;
	display:table-cell;
	vertical-align:bottom;
	text-shadow:-1px -1px 0 rgba(0,0,0,0.5), 1px 1px 0 rgba(255,255,255,0.4);
	border-bottom:3px dotted #B8B7B7;
	padding:0.3em 0;
	height:80px;
	margin:0;
}
#banner-callouts p {
	margin:0.5em 0;
}
#banner-callouts a.button {
	position:absolute;
	bottom:0.7em;
}

/* Selected */
#banner-callouts li.sel {
	background:#fff;
	box-shadow:0 0 16px rgba(0,0,0,0.27);
}
#banner-callouts li.sel:before {
	content:'\25B2';
	display:inline-block;
	font-size:38px;
	color:#fff;
	text-shadow:0 -2px 1px rgba(0,0,0,0.15);
	position:absolute;
	margin:-30px 0 0 80px;

	-moz-transform:scaleX(2.5);
	-webkit-transform:scaleX(2.5);
	-ms-transform:scaleX(2.5);
	-o-transform:scaleX(2.5);
	transform:scaleX(2.5);
}

/* Logos */
#banner-callouts .metropolis h2,
#banner-callouts .action-city h2,
#banner-callouts .chaos h2 {
	display:block;
	text-indent:-9999px;
	height:80px;
	padding:0.3em 0;
	background:transparent none no-repeat center center;
}
#banner-callouts .metropolis h2 a,
#banner-callouts .action-city h2 a,
#banner-callouts .chaos h2 a {
	display:block;
	height:100%;
}
#banner-callouts .metropolis h2 {
	background-image:url('../images/logos/metropolis-sm.png');
}
#banner-callouts .action-city h2 {
	background-image:url('../images/logos/action-city-sm.png');
}
#banner-callouts .chaos h2 {
	background-image:url('../images/logos/chaos-sm-2014.png');
}

/************************************************************
Sidebar */

/*-----------------------------------------------------------
Side navigation */

#side-nav {
	position:relative;
	z-index:2;
	margin-bottom:2.5em;
}
#side-nav:after { /* Shadow */
	content:' ';
	position:absolute;
	z-index:-1;
	bottom:-0.8em;
	left:10%;
	width:85%;
	height:3em;
	box-shadow:0 0.3em 0.3em -0.3em rgba(0,0,0,0.1), 0 0.5em 1em -1em rgba(0,0,0,0.4);
}

/* Header */
#side-nav h3 {
	position:relative;
	background:#9dcce5 url('../images/backgrounds/sidenav-header.jpg') repeat center center;
	color:#3A52A4;
	font-size:160%;
	margin:0.5em 0 0 -1.3em;
	padding:0.5em 1em 0.5em 3em;
	text-shadow:-1px -1px 0 rgba(0,0,0,0.5), 1px 1px 0 rgba(255,255,255,0.4);
	border-radius:0 0.4em 0.4em 0;
	box-shadow:0 1px 1px rgba(0,0,0,0.3);
}
#side-nav h3:before { /* Triangle shadow */
	content:' ';
	position:absolute;
	left:0;
	bottom:-12px;
	border-top:12px solid #57657d;
	border-left:12px solid transparent;
}

/* Organized / arrows */
#side-nav ul {
	list-style:none;
	margin:0.5em 0;
	padding:0 0 0 3em;
}
#side-nav ul>li>h4 {
	position:relative;
}
#side-nav ul>li>h4:before {
	content:' ';
	position:absolute;
	left:-3.4em;
	top:0.5em;
	background:#dedede;
	height:4px;
	width:2.4em;
}
#side-nav ul>li>h4:after {
	content:' ';
	position:absolute;
	left:-1em;
	top:0.5em;
	margin-top:-3px;
	height:0;
	border-left:4px solid #dedede;
	border-top:5px solid transparent;
	border-bottom:5px solid transparent;
}

/* Standard */
#side-nav ol {
	list-style:none;
	margin:0;
	padding:0.5em 0.7em 0 3em;
	font:110%/1.5 'Century Gothic',Arial,Helvetica,sans-serif;
}
#side-nav ul ol {
	padding-top:0;
	padding-left:0;
}
#side-nav ol>li {
	border-top:3px dotted #b8b7b7;
}
#side-nav ol>li>a {
	display:block;
	color:#212122;
	padding:0.2em 0.4em;
}
#side-nav>ol>li:first-child {
	border-top:none;
}


/*-----------------------------------------------------------
Sidebar boxes */

.col.side aside {
	display:block;
	margin:2em 0;
	padding:0 0.5em;
}
.col.side aside address,
.col.side aside p {
	font-size:110%;
}


/*-----------------------------------------------------------
Page Photos */

.page-photos {
	list-style: none;
	padding-left:0.5em;
}
.page-photos li {
	text-align:center;
}
.page-photos figure {
	margin:0;
}
.page-photos figcaption {
	display:block;
	margin:0.3em 10%;
	font-weight:bold;
	font-size:90%;
}
.page-photos img {
	border-radius:0.4em;
}

/************************************************************
Callouts */

.callout {
	position:relative;
	z-index:2;
	margin:1em 0 2em 0em;
}
.callout h2 {
	padding-bottom:0.4em;
	border-bottom:3px dotted #b8b7b7;
}
.callout p {
	font-size:95%;
	margin:0.5em 0;
}
.callout:after { /* Shadow */
	content:' ';
	position:absolute;
	z-index:-1;
	bottom:-0.6em;
	left:0;
	width:100%;
	height:3em;
	box-shadow:0 0.3em 0.3em -0.3em rgba(0,0,0,0.1), 0 0.5em 1em -1em rgba(0,0,0,0.4);
}

.callout img {
	display:block;
	margin:auto;
	border-radius:0.4em;
}


/* Button-like callout */
.callout-button {
	display:block;
	margin:0.4em 1.4em 0.4em 1.4em;
	padding:0.4em 0.7em;
	background:#1e4284;
	color:#fff !important;
	font:bold 120%/1.2 'Century Gothic',Arial,Helvetica,sans-serif;
	text-shadow:-1px -1px 0 rgba(0,0,0,0.5), 1px 1px 0 rgba(255,255,255,0.4);
	border-radius:0.4em;
}
.callout-button strong {
	color:#95c2db;
}
.callout-button small {
	display:block;
	color:#95c2db;
	font-size:75%;
	text-shadow:none;
	margin-top:0.2em;
}

.callout .callout-button {
	margin:0;
}


/************************************************************
Connect icons */

#connect-icons,
#connect-foot {
	text-align:center;
	list-style:none;
	margin:0.5em 0;
	padding:0;
}
#connect-foot {
	position:relative;
	top:0.7em;
	margin:0;
}
#connect-icons li,
#connect-foot li {
	display:inline;
}
#connect-icons a,
#connect-foot a {
	display:inline-block;
	text-align:left;
	text-indent:-9999px;
	width:28px;
	height:30px;
	outline:none;
	background:transparent url('../images/icons/social.png?v=2') no-repeat center center;
}
#connect-icons li.facebook a,
#connect-foot li.facebook a {
	background-position:0 0;
}
#connect-icons li.twitter a,
#connect-foot li.twitter a {
	background-position:-30px 0;
}
#connect-icons li.youTube a,
#connect-foot li.youTube a {
	background-position:-58px 0;
}

#connect-icons li.blogger a,
#connect-foot li.blogger a {
	background-position:-115px 0;
}

#connect-icons li.pintrest a,
#connect-foot li.pintrest a {
	background-position:-87px 0;
}

#connect-icons li.instagram a,
#connect-foot li.instagram a {
	background-position:-144px 0;
}



/************************************************************
Rooms list */

#rooms-list {
	list-style:none;
	margin:0;
	padding:0;
	font-size:90%;
}
#rooms-list>li {
	overflow:hidden;
	clear:both;
	padding:2em 0 1em;
	border-top:3px dotted #B8B7B7;
}

/*-----------------------------------------------------------
Header / room name */

#rooms-list header {
	float:right;
	width:49%;
}

/*-----------------------------------------------------------
Image container / icons */

#rooms-list figure {
	/*display:inline-block;
	vertical-align:top;*/
	float:left;
	max-width:48%;
	margin:0 2% 0 0;
	padding:0;
}
#rooms-list figure {
	text-align:center;
	background:#e7e7e6;
	border-radius:0.5em;
}
#rooms-list figcaption {
	padding:0.2em 0.2em 0.5em;
	line-height:2.5;
}


/* Image */
#rooms-list figure img {
	display:block;
	width:100%;
	border-radius:0.5em 0.5em 0 0;
}


/* Icons */
#rooms-list figure small {
	display:inline-block;
	color:#7d7d7d;
	font:bold 7pt/1 'Century Gothic',Arial,Helvetica,sans-serif; /* Not using percentage b/c I don't want it getting smaller than this */
	text-transform:uppercase;
	padding:0 0.4em 0 0;
}
#rooms-list figure small:after {
	display:inline-block;
	vertical-align:middle;
	padding-left:0.2em;
}
#rooms-list figure small.no-pets:after {
	content:url('../images/icons/no-pets.gif');
}
#rooms-list figure small.no-smoking:after {
	content:url('../images/icons/no-smoking.gif');
}

/* Photos button */
#rooms-list figure a.photos {
	display:inline-block;
	vertical-align:middle;
	padding:0.4em 0.7em 0.2em;
	font:bold 95%/1.3 Arial,Helvetica,sans-serif;
	background:#fafafa;
	box-shadow:inset 0 0.3em 0.3em -0.3em #fff, inset 0 -0.3em 0.3em -0.3em #e9e9e9, 0 1px 1px rgba(0,0,0,0.4);
	border-radius:0.4em;
}
#rooms-list figure a.photos:before {
	content:url('../images/icons/camera.gif');
	vertical-align:sub;
	margin-right:0.4em;
}


/*-----------------------------------------------------------
Info column */

#rooms-list figure+section {
	/*display:inline-block;
	vertical-align:top;*/
	float:right;
	width:49%;
}

#rooms-list h3 {
	margin-top:0.2em;
}
#rooms-list h5 {
	font-size:100%;
	margin-bottom:0.2em;
}
#rooms-list p {
	margin:0 0 1em;
}
#rooms-list ul {
	list-style:none;
	margin:0 0 1.5em;
	padding:0 0 0 1.5em;
}
#rooms-list ul li:before {
	content:'\25CF';
	color:#6b6b6b;
	float:left;
	margin-left:-1em;
}

/*-----------------------------------------------------------
Features and deals show/hide */

/* Features */
#rooms-list .features {
	margin:2em 0 1em;
}
#rooms-list .features h4 {
	position:relative;
	background:#295295;
	color:#fff;
	font-family:Arial,Helvetica,sans-serif;
	padding:0.4em 1em 0.4em 2.5em;
	cursor:pointer;
}
#rooms-list .features h4:before {
	content:'+';
	position:absolute;
	text-align:center;
	height:100%;
	width:1.8em;
	left:0;
	top:0;
	line-height:2;
	background:#9dcce5 url('../images/backgrounds/sidenav-header.jpg') repeat center center;
	color:#fff;

	/* Darken somewhat */
	box-shadow:inset 0 0 0 2em rgba(0,0,0,0.05);
}
#rooms-list .features h4.open:before {
	content:'\2013';
}
/*#rooms-list .features h4~* {
	display:none;
}*/


/* Deals */
#rooms-list .deals {
	clear:both;
	padding:0.5em 0 0;
}
#rooms-list .deals>h4 {
	cursor:pointer;
	color:#5D5D5D;
}
#rooms-list .deals>h4:before {
	content:'+';
	display:inline-block;
	text-align:center;
	width:1em;
}
#rooms-list .deals>h4.open:before {
	content:'\2013';
}


/* Deals list */
#rooms-list .deals ul {
	list-style:none;
	margin:0;
	padding:0;
}
#rooms-list .deals li {
	display:inline-block;
	vertical-align:top;
	margin:0 1% 1em 0;
	width:48%;
	border-top:1px solid #e4e4e4;
}
#rooms-list .deals li:before {
	display:none;
}
#rooms-list .deals li>a {
	display:block;
	color:inherit;
}
#rooms-list .deals li p {
	margin:0.5em 0;
}



/************************************************************
Testimonials */

.testimonials blockquote {
	position:relative;
	z-index:10;
	margin:1.5em 0 0.5em 2.5em;
}
.testimonials blockquote:before {
	content:'\201C';/*'\275D';*/
	position:absolute;
	color:#D0E7F2;
	font-size:64pt;
	font-family:Georgia,'Times New Roman',Times,serif;
	left:-0.45em;
	top:-0.4em;
}
.testimonials blockquote p {
	margin:0.5em 0;
}
.testimonials cite {
	display:block;
	margin:0.5em 0 2em 5%;
	font-size:95%;
}
.testimonials cite:before {
	content:'\2013'; /* N-dash */
	padding-right:0.2em;
}
.testimonials h4 {
	margin:1.5em 0 -0.2em;
}


/************************************************************
FAQs */

.faqs dt,
.faqs dd {
	position:relative;
}

/* Question */
.faqs dt {
	padding:0.5em 0 0.5em 36px;
	border-bottom:3px dotted #CCCCCC;
	color:#3A52A4;
	font:120%/1.5 'Century Gothic',Arial,Helvetica,sans-serif;
}

/* Answer */
.faqs dd {
	margin:0.5em 0 0;
	padding:0 0 0 36px;

	-webkit-transition:all 0.7s ease-in-out 0s;
	transition:all 0.7s ease-in-out 0s;
}
.faqs p {
	margin:0;
	padding:0.5em 0;
}

/* Q/A Letters */
.faqs dt:before,
.faqs dd:before {
	position:absolute;
	font:20pt/1.3 'Century Gothic',Arial,Helvetica,sans-serif;
	left:0;
	top:0;
}
.faqs dt:before {
	content:'Q:';
}
.faqs dd:before {
	content:'A:';
}


/* Open / close */
.faqs dd.close {
	visibility:hidden;
	max-height:0;
	opacity:0;

	-webkit-transition-duration:0.3s;
	transition-duration:0.3s;
}
.faqs dd.open {
	visibility:visible;
	max-height:500px;
	min-height:3.5em;
	opacity:1;
}




/************************************************************
Staff list (contact form) */

#staff-contact {
	list-style:none;
	margin:1em 0;
	padding:0;
	font-size:90%;
}
#staff-contact>li {
	display:inline-block;
	vertical-align:top;
	padding:0 0.5em 0 7em;
	margin:0 0 1.5em;
	width:49%;
	clear:left;
	word-wrap:break-word;

	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
#staff-contact figure {
	float:left;
	width:6.5em;
	margin:0 0 0 -7em;
}
#staff-contact img {
	max-height:85px;
	padding:0.2em;
	background:#fff;
	box-shadow:0 0 0.2em rgba(0,0,0,0.4);
	border-radius:0.2em;
}
#staff-contact h4 {
	margin:0.2em 0;
}
#staff-contact p {
	line-height:1.3;
	margin:0;
}

/*
#staff-contact dt {
	display:inline-block;
	text-align:center;
	width:6.5em;
}
#staff-contact img {
	max-width:70px;
	max-height:85px;
	padding:0.2em;
	background:#fff;
	box-shadow:0 0 0.2em rgba(0,0,0,0.4);
	border-radius:0.2em;
}
#staff-contact dd {
	margin:0 0 1.5em 5px;
	padding:0.2em 0;
	min-height:85px;
	display:inline-block;
	vertical-align:top;
	width:34%;
}
#staff-contact h4 {
	margin:0.2em 0;
}
#staff-contact p {
	margin:0;
	line-height:1.3;
}


/************************************************************
E-mail newsletter form */

#newsletter-form {
	white-space:nowrap;
}
#newsletter-form label {
	font:bold 110%/1.2 'Century Gothic',Arial,Helvetica,sans-serif;
}
#newsletter-form input[type="text"],
#newsletter-form input[type="email"] {
	vertical-align:middle;
	width:45%;
	max-width:21em;
	margin:0 0.3em;
	padding:0.45em 0.7em;
	font:100%/1.3 Arial,Helvetica,sans-serif;
	background:#fff;
	border:2px solid #d9d9d9;
	border-radius:0.4em;
	box-shadow:inset 1px 1px 4px rgba(0,0,0,0.15);
}



/************************************************************
Videos / Photo Galleries */

.gallery-tiles {
	list-style:none;
	margin:1em auto 2em;
	padding:0;
}
.gallery-tiles li {
	text-align:center;
	display:inline;
	vertical-align:top;
	margin:0 0.7em 0 0;
}
.gallery-tiles a {
	width:10em;
	display:inline-block;
	vertical-align:top;
}
.gallery-tiles strong{
	display:block;
	font-size:90%;
}
.gallery-tiles img {
	max-width:100%;
	margin-bottom:0.3em;
	padding:0.3em;
	background:#fff;
	box-shadow:0 0 0.2em rgba(0,0,0,0.3);
	border-radius:0.3em;
}


/* W/in side column */
.col.side .gallery-tiles li {
	display:block;
}


/************************************************************
Deals / Packages */

#deals-list {
	list-style:none;
	margin:1em 0;
	padding:0;
	/*font-size:85%;*/
}
#deals-list>li {
	position:relative;
	padding:1.2em 0 0 35%;
	margin:1.2em 0 1.5em;
	min-height:180px;
	box-shadow:0 -11px 0 -10px rgba(0,0,0,0.1);
}
#deals-list figure {
	position:absolute;
	margin:1.5em 0 0;
	width:32%;
	left:0;
	top:0;
}
#deals-list figcaption {
	text-align:center;
	font-weight:bold;
	line-height:1.2;
	font-size:90%;
}
#deals-list figure img {
	padding:0.3em;
	margin:0 0 0.3em;
	background:#fff;
	box-shadow:0 0 0.3em rgba(0,0,0,0.3);
	border-radius:0.2em;

	-moz-box-sizing:border-box;
	box-sizing:border-box;
}
#deals-list h3 {
	margin:0;
}
#deals-list p {
	margin:0.2em 0;
}
#deals-list ul {
	margin:0.7em 0;
	padding:0 0 0 2em;
}
#deals-list a.button {
	margin-top:0.4em;
}
#deals-list .deals h4 {
	position:relative;
	/*background:#295295;
	color:#fff;*/
	font-family:Arial,Helvetica,sans-serif;
	font-size: 100%;
	padding:0.4em 1em 0.4em 2.5em;
	cursor:pointer;
}
#deals-list .deals h4:before {
	content:'+';
	position:absolute;
	text-align:center;
	height:100%;
	width:1.8em;
	left:0;
	top:0;
	line-height:2;
	background:#9dcce5 url('../images/backgrounds/sidenav-header.jpg') repeat center center;
	color:#fff;

	/* Darken somewhat */
	box-shadow:inset 0 0 0 2em rgba(0,0,0,0.05);
}
#deals-list .deals h4.open:before {
	content:'\2013';
}
/************************************************************
Hours Calendar */

/* Hour Categories */
.hour-cat-list {
	list-style: none;
	padding: 0;
	text-align: center;
}

.hour-cat-list li {
	display: inline-block;
	margin-left: 1.5em;
	margin-bottom: .5em;
}

.hour-cat-list li:first-child {
	margin-left: 0;
}

.hour-cat-list li a {
	position: relative;
	text-align: center;
	padding: .4em 1em;
	font-style: normal;
	opacity: .6;
	box-shadow: none;
}

.hour-cat-list li a:after {
	display: none;
}

.hour-cat-list li a.on {
	opacity: 1;
}

.hour-cat-list li a.on:after {
	content: '\2714';
	display: inline-block;
	position: absolute;
	top: 0;
	font-size: 12pt;
	border: inherit;
	border-radius: 50%;
	background-color: #FFF;
	width: 20px;
	line-height: 1.3;
	color: #000;
}

.hour-cat-list a.on {

}

#hours-cal {
	padding:2em;
}

/* Filter form */
#hours-cal form {
	text-align:center;
}
#hours-cal label {
	font-weight:bold;
}

/* Calendar table */
#hours-cal table {
	width:100%;
	border-collapse:collapse;
	table-layout:fixed;
}
#hours-cal caption {
	font:bold 135%/2 'Century Gothic',Arial,Helvetica,sans-serif;
}
#hours-cal th abbr {
	border:none;
}
#hours-cal td {
	position:relative;
	cursor:pointer;
	border:1px solid #ddd;
	vertical-align:top;
	height:5em;
	padding:0.4em;
}
#hours-cal td:empty {
	background:rgba(0,0,50,0.05);
	cursor:inherit;
}
#hours-cal td>strong {
	display:block;
	text-align:right;
}

#hours-cal .date-info {
	display: none;
}

/* Popup thing */
#hours-cal td>div {
	display:none;
	cursor:default;
	position:absolute;
	z-index:10;
	background:#fff;
	padding:0.2em 1em 0.5em;
	box-shadow:0 0 0.5em rgba(0,0,0,0.4);
	border-radius:0.7em;
	width:14.5em;
	margin:2em 0 0 -5.75em;
}
#hours-cal td:hover>div {
	display:block;
}
#hours-cal td>div h3 {
	border-bottom:3px dotted #b8b7b7;
	padding-bottom:0.2em;
	font-size:110%;
}
#hours-cal td>div h4 {
	margin:0.7em 0 0;
	font-size:105%;
	color:#3A52A4;
}
#hours-cal td>div p {
	margin:0.3em 0;
}

#hours-cal td>div:after {
	content:' ';
	position:absolute;
	background:#fff;
	width:1.2em;
	height:1.2em;
	left:50%;
	top:-0.6em;
	margin-left:-0.5em;
	box-shadow:-0.2em -0.2em 0.1em rgba(0,0,0,0.1);

	-moz-transform:scaleX(2) rotate(45deg);
	-webkit-transform:scaleX(2) rotate(45deg);
	-ms-transform:scaleX(2) rotate(45deg);
	-o-transform:scaleX(2) rotate(45deg);
	transform:scaleX(2) rotate(45deg);
}

/*Location color coded*/
#hours-cal table .the-pub {
	color:#3A52A4;
}
#hours-cal table .chaos-water-park {
	color:#E9CC07;
}
#hours-cal table .action-city {
	color:#AF1F34;
}
#hours-cal table .resort-activities {

}
#hours-cal table .special-events {

}

#calNextLink {
	float:right;
}
/* If they decide to show all location hours in all sites, then these classes
 can be used to highlight the location
#hours-cal table .sel-Metropolis {
	background:#3A52A4;
	padding: 0.2em 0.4em;
}
#hours-cal table .sel-Chaos {
	background:#E9CC07;
	padding: 0.2em 0.4em;
}
#hours-cal table .sel-Action {
	background:#AF1F34;
	padding: 0.2em 0.4em;
}*/


/************************************************************
So-called "Smart" form */

#smartForm h4:before {
	content:'+';
	position:absolute;
	text-align:center;
	height:100%;
	width:1.8em;
	left:0;
	top:0;
	line-height:2;
	background:#9dcce5 url('../images/backgrounds/sidenav-header.jpg') repeat center center;
	color:#fff;
}
#smartForm h4 {
	position:relative;
	background:#295295;
	color:#fff;
	font-family:Arial,Helvetica,sans-serif;
	padding:0.4em 1em 0.4em 2.5em;
	cursor:pointer;
	max-width:275px;
}

/************************************************************
Search results page */

/* Results list */
#search-results ol {
	list-style:none;
	margin:1.5em 0;
	padding:0;
}
#search-results li {
	padding:0.5em 0;
	border-top:1px solid #e4e4e4;
}


/* Pagination */
.pgtn {
	text-align:center;
	color:#5D5D5D;
}
.pgtn ul {
	list-style:none;
	margin:1em 0;
	padding:0;
}
.pgtn li {
	display:inline;
	font:120%/1 'Century Gothic',Arial,Helvetica,sans-serif;
	padding:0 0.1em;
}
.pgtn strong,
.pgtn a {
	display:inline-block;
	padding:0.2em;
}


/************************************************************
Store/Gift Cards */

/*-----------------------------------------------------------
Category list */

/* List */
#cat-list ol {
	list-style:none;
	margin:0;
	padding:0;
}
#cat-list li {
	padding:1em 0;
	border-top:1px solid #e4e4e4;

	-webkit-transition:opacity 0.4s ease 0s;
	transition:opacity 0.4s ease 0s;
}
#cat-list li:hover {
	opacity:0.8;
}

/* Links */
#cat-list figure {
	margin:0;
}
#cat-list figure img {
	display:inline-block;
	vertical-align:top;
	background:#fff;
	padding:0.25em;
	width:30%;
	border-radius:0.4em;
	box-shadow:0 0 0.3em rgba(0,0,0,0.2);
}
#cat-list figcaption {
	display:inline-block;
	vertical-align:top;
	margin:0 0 0 3%;
	width:65%;
}
#cat-list h3 {
	margin:0.5em 0 0;
}
#cat-list p {
	margin:0.5em 0;
}
#cat-list a {
	display:block;
	color:inherit;
}


/*-----------------------------------------------------------
Product list */

/* List */
#prod-list>ul {
	list-style:none;
	margin:0;
	padding:0;
	clear:both;
	/* border-top:3px dotted #B8B7B7; */
}
#prod-list>ul>li {
	display:inline-block;
	vertical-align:top;
	text-align:center;
	padding:1em 0;
	font-size:110%;
	width:49%;
}
#prod-list>ul>li>a {
	display:block;
	color:inherit;
}
#prod-list>ul figure {
	margin:0 auto;
	width:90%;
	max-width:250px;
}
#prod-list>ul figure img {
	border-radius:0.4em;
}
#prod-list>ul figure h4,
#prod-list>ul figure p {
	margin:0.5em 0;
}

/* Price */
#prod-list>ul figure h5 {
	color:#3a52a4;
	margin:0.5em 0;
	font-size:100%;
}



/* Pagination / form */
#prod-list .pgtn {
	float:right;
}
#prod-list .pgtn .sort {
	margin:0;
}


/*-----------------------------------------------------------
Sale pricing */

/* Original price */
#prod-list del,
#prod-detail del {
	text-decoration:line-through;
	color:inherit;
}

/* Sale price */
#prod-list ins,
#prod-detail ins {
	text-decoration:none;
	font-weight:bold;
	color:#f30;
}



/*-----------------------------------------------------------
Product details */


#prod-detail .button.cart {
	float:right;
	margin:1.5em 0 0;
}
#prod-detail h4 {
	clear:both;
}
#prod-detail p {
	margin:0.7em 0;
}


/* Image + form container */
#prod-detail figure {
	margin:1em 0;
	padding:0.5em 0;
	/* border-top:3px dotted #B8B7B7; */
	overflow:hidden;
}

/* Image */
#prod-detail figure>img {
	float:left;
	width:48%;
	margin:0 0 0.5em;
	border-radius:0.4em;
}

/* Form */
#prod-detail form {
	float:right;
	width:48%;
	margin:0 0 0.5em;
}
#prod-detail form section {
	padding:1px 0;
}

/* Options */
#prod-detail p label:first-child {
	display:inline-block;
	font-weight:bold;
	min-width:5.5em;
}


/* Pricing / quantity */
#prod-detail form h4 label {
	display:inline-block;
	width:5em;
}
#prod-detail form h4 input[type="text"] {
	vertical-align:middle;
	width:3em;
	padding:0.2em 0.3em;
	font:120%/1.3 'Century Gothic',Arial,Helvetica,sans-serif;
	background:#fff;
	border:1px solid #ccc;
	border-radius:0.3em;
	box-shadow:inset 0.2em 0.2em 0.2em rgba(0,0,0,0.1);
}
#prod-detail .price {
	color:#3a52a4;
}


/*
#outOfStock{
	color:#AF1F34;
	display:inline-block;
}
*/

/* Wedding page - Review Metropolis Resort */
.wedding-review {
	margin-top: 1.5em;
}


/************************************************************
Events list */

.news-list {
	margin:-0.5em 0 0;
}
.news-list dt {
	float:left;
	clear:left;
	font-weight:bold;
	text-align:center;
	text-transform:uppercase;
	background:#a1cee5;
	color:#303030;
	width:3.5em;
	margin:1em 0 0;
	padding:0.3em 0;
	border-radius:0.2em;
}
.news-list dt strong {
	font-size:140%;
}
.news-list dd {
	margin:0 0 1em;
	padding:1px 0 0 4.5em;
}
.news-list dd+dt+dd {
	border-top:1px solid #cac8c1;
}
.new-list dd p {
	margin:0.3em 0;
}


/************************************************************
Odds and Ends */

/* Google map */
#map-canvas {
	height:200px;
	border:0.5em solid #fff;
	border-radius:0.5em;
	box-shadow:0 0 0.3em rgba(0,0,0,0.2);
}
#map img{
	width:70%;
}

/*PDFs*/
.pdf {
	font:100%/1.8 'Century Gothic',Arial,Helvetica,sans-serif;
}
.pdf:before {
	content:url('../images/icons/pdf-sm.png');
	margin-right: 0.3em;
	vertical-align:text-top;
}

/*Menus!*/
.menu {
	position:relative;
	font:bold 110%/1.8 'Century Gothic',Arial,Helvetica,sans-serif;
	color: #000 !important;
	padding:0.4em 0.6em 0.2em 2.5em;
	cursor:pointer;
}
.menu:after {
	content:'>';
	position:absolute;
	text-align:center;
	height:100%;
	width:1.8em;
	left:0;
	top:0;
	line-height:2;
	background: #B43C17;
	color:#fff;
	border-radius:50%;

	/* Darken somewhat */
	box-shadow:inset 0 0 0 2em rgba(0,0,0,0.05);
}

/*Lightbox Custom Changes**/
#jb-lightbox>h4 {
	margin:0.3em 0 0.5em !important;
}
#jb-lightbox>p{
	right:6px !important;
	bottom:35px !important;
	left:auto !important;
}


/************************************************************
/************************************************************
User Account Management */

/* THIS BREAKS THINGS.  NO TOUCHIE.
	--Seriously, Ben, use a different class/ID.  This one's reserved elsewhere. ~Josh
.main{
	font-size: 15px;	
}

.main figure img{
	float: left;
	margin-left: -40px;
	margin-right: 10px;
	padding: 0px;
}
*/

.playcards{
	width: 100%;
	margin-top: 15px;
 	border-collapse: collapse;
  	border-spacing: 0;
}

.playcards caption{
	color: white;
	font-size: 20px;
	padding: 5px;
	background-color:#224D9E;
	background-image: url('../images/backgrounds/main-nav-overlay.png');
	border-top-left-radius: 15px;
	border-top-right-radius: 15px;
}

.playcards thead th{
	text-align: left;
	padding: 5px;
	font-size: 17px;
}

.playcards tbody tr:nth-child(odd){
	background-color: #9DCCE5;
	color: #000;
	
}

.playcards tbody tr td {
	padding: 5px;
	font-size: 14px;
}

/* ---- Main Login for playcards / Ace's Club cards ---- */

/* if only column... */
#banner + .account.col.main, #content #banner + .account.col.main {
	width:100%;
	max-width:700px;
	box-sizing:border-box;
	padding-left:4%;
	padding-right:4%;
}

.account {
	font-family: 'Century Gothic', Arial, Helvetica, sans-serif;
}

.account p {
	font-size: 100%;
}

.account > *:first-child {
	margin-top:15px;
}

.account h2 + p {
	margin-top:0;
}

.password.text-link {
	display: inline-block;
	font-size:90%;
	width:95px;
	margin-left:15px;
}

.registration, .contactForm p.registration {
	text-align: left;
	margin:15px auto 25px !important;
	background-color:transparent !important;
	color:#000;
	padding:0;
}

.registration .text-link {
	margin-left:10px;
}

/* Override some of the default form styles */

.account form {
	margin:30px 0;
}

.account .contactForm {
	padding:0;
}

.account .contactForm input[type="text"], .account .contactForm input[type="email"], .account .contactForm input[type="tel"], .account .contactForm input[type="password"] {
	width:320px !important;
	line-height:1.2;
	padding:5px 12px;
	box-sizing:border-box;
}

.account .contactForm p label:first-child, .account .contactForm p .label:first-child {
	color:#000;
	text-align: left;
	font-weight:bold;
	font-size:103%;
	margin-left: -10em;
}

.account .contactForm p {
	display: block;
	margin-left: 10em;
}

.account .contactForm label abbr {
	position: relative;
	top:0;
	right:0;
	color:#000;
	font-size:95%;
}

.account .contactForm p.buttons {
	display: block;
	padding:0;
	text-align: left;
}

.account input[type="submit"], .account input[type="submit"].button {
	min-width:215px;
	font-size:130%;
	text-align:center;
	text-transform: uppercase;
}

/* side navigation for playcard/account pages */

.account #side-nav h3 {
	text-shadow:none;
}

.account #side-nav:after {
	content:none;
}

.account #side-nav ol {
	padding-left:2.5em;
}

.account #side-nav ol > li {
	border:none;
	padding-top:3px;
	padding-bottom:3px;
	border-bottom:2px dotted #B8B7B7;
	
}

.account #side-nav ol > li > a {
	text-transform:uppercase;
	font-size:95%;
	padding:0.2em 0;
}


/* Misc. styles found on account/playcards page */

.bubble-heading {
	position: relative;
	display: block;
	text-align:center;
	font-size:320%;
	padding:15px 30px;
	font-family: Busorama,'Century Gothic',Arial,Helvetica,sans-serif;
	color:#000;
	background-color:#D78F99;
	border-radius:17px;
	
	margin-bottom:40px;
}

.bubble-heading:after {
	content:"";
	border-top:30px solid #D78F99;
	border-left:30px solid transparent;
	border-right:30px solid transparent;
	
	-moz-transform:scale(.9999);
	transform:scale(.9999);
	
	position: absolute;
	top:100%;
	left:50%;
	margin-left:-60px;
}

.bold-text {
	font-size:130%;
	font-weight:bold;
	text-transform: uppercase;
}

.bold-heading {
	font-size:215%;
	font-weight:bold;
	text-transform: uppercase;
}

.text-link, a.text-link {
	font-size:105%;
	color:#000;
	text-decoration:underline;
}

/********----------- My Account Page -----------***********/

.account #customerForm p label:first-child, .account #customerForm p .label:first-child {
	margin-left:-14em;
	width:13.25em;
}

.account #customerForm p {
	margin-left:14em;
}

.account #customerForm p.buttons {
	margin-top:35px;
	margin-left:0;
}

.account .contactForm p.note strong {
	color:#000;
	font-weight:bold;
}

.account .contactForm .captcha, .account #customerForm .captcha {
	margin-left:0;
	width:auto;
	display: inline-block;
	text-align:left;
}

/*********-------------- Play Card Balance Page --------------*****************/

/******* Reward Levels Info *******/

.reward-levels-info {
	padding: 0.5em 0.7em 0 2.5em;
}

.reward-levels-info h2 {
	font-family: Busorama,'Century Gothic',Arial,Helvetica,sans-serif;
	color: #010101;
	font-size:215%;
	font-weight:normal;
}

.reward-levels-info ul {
	list-style: none;
	margin: 0;
	padding: 0;

	font-family: 'Century Gothic', Arial, Helvetica, sans-serif
}

.reward-levels-info li {
	border-top: 2px dotted #C6C5C5;
}

.reward-levels-info li h3 {
	color: #AF1F34;
	text-transform: uppercase;
}

/******** Play Card Info + Tracking *******/

.play-card-info + .play-card-info {
	padding-top: 1em;
	border-top: 2px dotted #C6C5C5;
}

.play-card-info table {
	width: 100%;
	border-collapse: collapse;
}

.play-card-info caption {
	background-color: #AF1F34;
	text-align: left;
	font-weight: bold;
	color: #FFFFFF;
	padding: .25em .5em;
	font-size: 130%;
	text-transform: uppercase;
}

.play-card-info thead {
	text-transform: uppercase;
	text-align: left;
}

.play-card-info tbody {
	background-color: #ECEDED;
}

.play-card-info th,
.play-card-info td {
	padding: .5em 1em;
}

.play-card-info .tracker-heading {
	text-transform: uppercase;
}

.play-card-info .card-progress-bar {
	border-radius: 10px;
	overflow: hidden;
	border: 2px solid #B2B2B2;
}

.play-card-info .card-progress-bar span {
	position: relative;
	height: 20px;
	display: block;
	background: transparent url('/images/site/card-progress.png') repeat-x scroll center left;
}

.play-card-info .card-progress-bar span:after {
	content: ' ';
	position: absolute;
	right: 0;
	border-bottom: 22px solid #FFFFFF;
	border-top: 10px solid transparent;
	border-left: 20px solid transparent;
	border-right: 10px solid #FFFFFF;
	
	-moz-transform:scale(.9999);
	transform:scale(.9999);
}

.play-card-info .bold-text {
	font-size:115%;
	font-weight:bold;
}

/*********-------------- Play Card Balance Page --------------*****************/

#registrationForm .note {
	display: block;
	width:100%;
	margin-top:5px;
}

#registrationForm .note.card-modal {
	display: inline-block;
	width:auto;
	cursor: pointer;
	
	margin-left:10px;
	margin-top:0;
}
	
#registrationForm p {
	margin-left:0;
	box-sizing:border-box;
	display: inline-block;
	vertical-align: top;
	width:48%;
}

#registrationForm p label {
	margin-left:0;
	width:100%;
}

#registrationForm p input {
	width:100% !important;
}

#registrationForm p.buttons {
	display: block;
	width:100%;
}

#registrationForm p.buttons input {
	width:auto !important;
}

#registrationForm .newsletter-box {
	width:100%;
	position: relative;
	display: block;
	box-sizing:border-box;
	padding-left:50px;
}

#registrationForm .newsletter-box input {
	display: inline-block;
	width:auto !important;
	position: absolute;
	left:14px;
	top:50%;
	margin-top:-6px;
}


/*********** color styling -- consider adding styles to action-city stylesheet */
.account .bold-text, .account .bold-heading {
	color:#AF1F34;
}

.bubble-heading {
	background-color:#D78F99;
}
.bubble-heading:after {
	border-top-color:#D78F99;
}

.account #side-nav ol > li > a:hover, .account #side-nav ol > li > a:active, .account #side-nav ol > li.sel > a {
	color:#AF1F34;
	outline:0;
}

/***** 'What's This' Modal ******/

#modal.funcard-modal #modal-content {
	padding:0;
}

#modal.funcard-modal article {
	padding:15px 22px;
}

.fun-license {
	text-align: center;
	background-color:#999;
}

.fun-license img {
	max-width:400px;
}
	
/******************************************************************
Fun License Modal Only! ***/

#simplemodal-container {
	max-height:100% !important;
}

#modal.funcard-modal  {
	display:none;
	position:relative;
	background:#fff;
	border-radius: 5px;
	max-width:500px;
/* 	max-height:600px !important; */
}

#modal.funcard-modal .simplemodal-close {
	position: absolute;
	right: -30px;
	top: 5px;
	color: #FFF;
	font-size: 220%;
	z-index: 5;
	cursor: pointer;
	padding:0;
	height:26px;
	width:26px;
	background-color: #262626;
	text-align: center;
	border-radius: 50%;
}

.simplemodal-wrap {
	overflow: visible !important;
}

#modal.funcard-modal article {
	padding: 15px 25px;
	box-sizing:border-box;
	border-radius: 5px;
	border:2px solid #222;
	
	text-align: center;	
	overflow-y: auto;
	height:auto;
	max-height:400px !important;
}

#modal.funcard-modal iframe {
	max-width: 100%;
	max-height: 100%;
}


/************************************************************
/************************************************************
Responsive */

@media screen and (max-width:960px) {

	/*-------------------------------------------------------
	Footer area */

	main>footer>section:before {
		top:50%;
		margin-top:-34px;
	}
	main>footer a.tripAdvisor {
		position:relative;
		top:0.4em;
	}
	main>footer p,
	#policy-nav {
		display:block;
		white-space:normal;
		margin:0.3em 0;
	}

}
@media screen and (max-width:915px) {

	/*-------------------------------------------------------
	Top area */

	#top p {
		padding:0.3em 0;
	}
	#top label {
		display:block;
		line-height:1;
	}
	#top input[type="text"] {
		width:3.5em;
	}

	/*-------------------------------------------------------
	Navigation area */

	#main-nav>ul {
		padding-left:16%;
		padding-right:16%;
	}


	/*-------------------------------------------------------
	Footer navigation */

	/* Force columns to be equal width */
	#foot-nav>ul {
		table-layout:fixed;
	}


	/*-------------------------------------------------------
	Deals list */

	#deals-list>li {
		min-height:155px;
	}

}
@media screen and (max-width:880px) {

	/*-------------------------------------------------------
	Header area */

	/* Logo */
	#logo {
		width:28%;
	}

	/* Slogan */
	main>header>section {
		font-size:95%;
		padding-left:1%;
		padding-right:1%;
	}

	/* Virtual tour link */
	#sites a.virtualtour {
		width:131px;
	}

	/*-------------------------------------------------------
	Side navigation */

	/* Standard */
	#side-nav ol {
		padding-left:1em;
	}

}
@media screen and (max-width:790px) {


	/*-------------------------------------------------------
	Header area */

	main>header {
		padding-top:2.5em;
	}

	/* Slogan */
	main>header>section {
		font-size:90%;
	}
	main>header>section a[href^="tel:"] {
		font-size:115%;
	}
	
	.account .contactForm input[type="text"], .account .contactForm input[type="email"], .account .contactForm input[type="tel"], .account .contactForm input[type="password"] {
		width:100% !important;
		max-width:320px;
	}
	
	.account .contactForm p label:first-child, .account .contactForm p .label:first-child {
		margin-left:-11em;
	}
	.account .contactForm p {
		margin-left:11em;
	}

	/*-------------------------------------------------------
	Footer navigation */

	/* Alter column layout */
	#foot-nav>ul {
		display:block;
		margin:0 0 2em 3%;
		width:auto;

		-moz-column-width:12em;
		-webkit-column-width:12em;
		column-width:12em;
	}
	#foot-nav>ul>li { /* Keep from breaking across columns */
		display:inline-block;
		-webkit-column-break-inside:avoid;
		break-inside:avoid-column;
		width:100%;
	}


}


/** Tablet view **/
@media screen and (max-width:740px) {

	/*-------------------------------------------------------
	Top area */

	#top h3 { /* Rates & Availability starts getting in the way */
		display:none;
	}

	/*-------------------------------------------------------
	Header area */

	main>header {
		display:block;
		padding-top:3em;
		text-align:right;
	}

	/* Logo */
	#logo {
		display:block;
		float:left;
		width:40%;
	}
	#logo a {
		background-position:center center;
	}
	
	/* Slogan */
	main>header>section {
		display:block;
		text-align:center;
		font-size:85%;
		padding:0.5em 0;
		width:100%;
		box-sizing:border-box;
	}

	/* Site navigation */
	#sites {
		display:block;
	}

	/* Page navigation *
	#top-nav {
		width:97%;
		right:1.5%;
	}
	#top-nav>ul {
		float:left;
		width:65%;
		text-align:left;
		line-height:2;
		max-width:400px;
		margin:-0.5em auto 0;
	}
	#top-nav a {
		line-height:1.2;
	}
	#top-nav>ul>li:nth-child(4)>a {
		border-left:none;
	}
	*/
	#top-nav {
		margin:0.3em 0;
		right:auto;
		left:1.5%;
	}

	/* Site search *
	#site-search {
		float:right;
		width:33%;
	}
	#site-search p {
		width:100%;
	}*/

	#pinit {
		margin-top:0;
		top:0;
		right:-45px;
	}
	
	p.fb_iframe_widget {
		position: absolute;
		top:0;
		right:-130px;
		margin-top:0;
	}
	
	#top-nav .action-city-link {
		bottom:auto;
		top:0;
		right:-240px;
	}
	
	/*-------------------------------------------------------
	Main navigation */

	#main-nav>ul {
		padding:0.6em 40px;
		text-align: center;
	}
	#main-nav>ul>li>a {
		padding:0.2em 0.7em;
	}


	/*-------------------------------------------------------
	Footer area */

	main>footer>section {
		padding-bottom:3em;
	}
	main>footer>section:before {
		top:40%;
	}
	main>footer a.tripAdvisor {
		position:absolute;
		margin:0 0 0 -80px;
		bottom:0;
		left:50%;
		top:auto;
	}


	/*-------------------------------------------------------
	Home page banner area */

	/* Banners */
	#banner li h2 {
		font-size:225%;
	}

	/* Callouts - rearrange the grid; not ideal (wish flex were supported better!) but workable */
	#banner-callouts {
		padding-top:14em;
		overflow:hidden;
	}
	#banner-callouts li {
		position:absolute;
		float:left;
		height:15em;
		width:50%;
		right:0;
		top:0;

		-moz-box-sizing:border-box;
		box-sizing:border-box;
	}
	#banner-callouts li:first-child+li {
		border-left:none;
		right:auto;
		left:0;
	}
	#banner-callouts li:first-child,
	#banner-callouts li:last-child {
		position:relative;
		border-top:1px solid #e4e4e4;
	}
	#banner-callouts li:first-child h2,
	#banner-callouts li:last-child h2 {
		padding:0.7em 0.5em 0.3em;
		display:block;
		height:auto;
	}


	/*-----------------------------------------------------------
	Content / Columns */

	#content {
		padding-bottom:37%;
		background-size:150% auto;
	}

	/* Primary */
	#content .col.main {
		width:64%;
	}
	#content .col.side {
		width:30%;
	}
	
	#content #banner + .account {
		width:100%;
	}
	
	/* Nested */
	#content .col.main .col.main,
	#content .col.main .col.side {
		display:block;
		margin:0 0 1.5em;
		width:auto;
	}

	/* Arrange the callouts on the home page */
	#content .col.main .col.side .callout {
		float:right;
		clear:right;
		width:47%;
		margin:0.5em 1% 0.5em 2%;
		font-size:95%;
	}
	#content .col.main .col.side .callout:after {
		display:none;
	}
	#content .col.main .col.side .callout h2 {
		margin-top:0;
		font-size:150%;
	}
	#content .col.main .col.side .callout.hours,
	#content .col.main .col.side .callout.connect {
		float:left;
		clear:left;
		margin:0.5em 2% 0.5em 1%;
	}


	/*-----------------------------------------------------------
	Side navigation */

	#side-nav {
		font-size:90%;
	}
	#side-nav ul {
		padding-left:1.5em;
	}
	#side-nav ul>li>h4:before {
		left:-1.9em;
		width:1.4em;
	}
	#side-nav ul>li>h4:after {
		left:-0.5em;
	}

	/*-------------------------------------------------------
	Deals list */

	/* Resize columns */
	#deals-list>li {
		padding-left:40%;
	}
	#deals-list figure {
		width:37%;
	}

	/*-------------------------------------------------------
	Newsletter form */

	#newsletter-form label {
		display:block;
		margin:0.3em 0;
	}
	#newsletter-form input[type="text"],
	#newsletter-form input[type="email"] {
		margin-left:0;
	}


	/*-------------------------------------------------------
	Accommodations / amenities / etc. */

	#rooms-list figcaption small {
		display:block;
		margin:0.2em 0;
	}


	/*-------------------------------------------------------
	Hours calendar */

	#hours-cal table {
		font-size:90%;
	}

}
@media screen and (max-width:675px) {


	/*-----------------------------------------------------------
	Column callouts (home page) */

	/* Clear the social callout so it looks nicer */
	#content .col.main .col.side .callout.connect {
		float:none;
		clear:both;
		width:auto;
		margin:auto;
		max-width:200px;
		padding:2em 0 3em;
	}

	/*-----------------------------------------------------------
	Staff list */

	#staff-contact {
		font-size:100%;
	}
	#staff-contact>li {
		display:block;
		width:auto;
		min-height:85px;
		border-top:1px solid #e4e4e4;
		padding-top:0.5em;
	}

	/*-------------------------------------------------------
	Accommodations / amenities / etc. */

	#rooms-list>li {
		padding:0.5em 0.5em 1.5em;
	}
	#rooms-list header,
	#rooms-list figure,
	#rooms-list figure+section,
	#rooms-list section {
		max-width:300px;
		margin:1em auto;
		float:none;
		width:auto;
	}
	#rooms-list figcaption small {
		display:inline-block;
	}
	
	/*------------------------------------------------------
	Account Page */
	
	.account .contactForm p label:first-child, .account .contactForm p .label:first-child {
		margin-left:0;
	}
	
	.account .contactForm p {
		margin-left:0;
	}

}

@media screen and (max-width:580px) {


	/*-------------------------------------------------------
	Header area */

	main>header {
		padding:3.5em 0 0;
	}

	/* Page navigation *
	#top-nav a {
		padding:0 0.2em 0 0.5em;
	}
	*/
	
	#top-nav .action-city-link {
		bottom:auto;
		top:0;
		right:-240px;
	}

	/*-------------------------------------------------------
	Footer area */

	main>footer>section {
		margin-top:2.5em;
		padding-left:0;
		text-align:center;
	}
	main>footer>section:before {
		position:static;
		display:inline-block;
		margin:0;
	}
	main>footer address {
		margin-top:0.7em;
	}


	/*-------------------------------------------------------
	Hours calendar */

	/* Swap to list view: Use the popups for the details, and hide the table */
	#hours-cal tr,
	#hours-cal td {
		display:block;
		border:none;
		height:auto;
	}
	#hours-cal thead,
	#hours-cal td:empty {
		display:none;
	}
	#hours-cal tr td>* {
		display:none;
	}
	#hours-cal tr td>p.date-info {
		display: none !important;
	}
	#hours-cal tr td>div {
		position:static;
		display:block;
		width:auto;
		margin:0;
		padding:0.7em 0;
		border-top:1px solid #e4e4e4;
		box-shadow:none;
		border-radius:0;
	}
	#hours-cal td>div:after {
		display:none;
	}
	
	/*------------------------------------------------------
	Account Page */
	
	.password.text-link {
		display: inline-block;
		margin:12px 0 0;
	}
	
	.registration .text-link {
		display: block;
		margin:5px 0 0;
	}

}


/** Mobile **/
@media screen and (max-width:550px) {

	/*-------------------------------------------------------
	Font sizes */

	body {
		font-size:9.5pt;
	}
	h1 {
		font-size:200%;
	}
	h2 {
		font-size:165%;
	}
	h3 {
		font-size:130%;
	}

	/*-------------------------------------------------------
	Top area */

	/* Kill the form (the Book Now link will suffice) */
	#top p {
		display:none;
	}
	#top h2 a:before {
		display:none;
	}

	/*-------------------------------------------------------
	Header area */

	main>header {
		padding:0;
	}

	/* Logo and slogan */
	#logo {
		float:none;
		margin:0 auto;
		padding:0.4em 0;
		width:100%;
	}
	main>header>section {
		padding:0.5em 9.5em 2em 0;
		min-width:16em;
	}


	/* Site navigation: shift up */
	#sites>ul {
		position:absolute;
		right:-0.4em;
		top:-1.2em;
		border-radius:0 0 0.6em 0.6em;
	}

	/* Virtual tour link */
	#sites a.virtualtour {
		position:absolute;
		width:101px;
		margin:0;
		bottom:0;
		right:0;
	}


	/* Move page navigation / search up top */
	#top-nav {
		position:fixed;
		z-index:100;
		margin:0;
		padding:2.5em 0 0.5em;
		height:100%;
		width:100%;
		margin:0;
		left:0;
		top:0;
		color:#fff;
		background:#224279;
		border:none;
		border-radius:0;
		box-shadow:none;
		visibility:hidden;
		z-index:103;
		opacity:0;

		-moz-box-sizing:border-box;
		box-sizing:border-box;

		-webkit-transition:all 0.5s ease 0s;
		transition:all 0.5s ease 0s;
	}
	#top-nav>ul {
		position:static;
		background:none;
		border:none;
		box-shadow:none;
		border-radius:0;
	}
	#top-nav>ul:first-child {
		display:block;
	}
	#top-nav li {
		text-align:left;
		display:block;
	}
	#top-nav li+li:before {
		display:none;
	}
	#top-nav li a, #top-nav .action-city-link {
		position: relative;
		display:block;
		border:none;
		padding:0.5em 1em;
		font-size:130%;
		color:#fff !important;
	}
	#top-nav li a {
		border-top:1px solid #4e6793;
	}
	#top-nav ul:first-child li:first-child a {
		border:none;
	}
	#top-nav li a[href="#site-search"] {
		display:none;
	}
	
	/* keep the aces club button in-line with the rest of the links */

	#top-nav .action-city-link {
		right:auto;
		background-color:transparent;
		text-align: left;
		padding-left:22px;
		border-top:1px solid #4E6793;
	}

	/* --- Drop-down Menu --- */

	#top-nav li ul {
		position: relative;
		background-color:inherit;
		padding-left:20px;
		font-size:95%;
		width:auto;
		top:0;
	}
	#top-nav li ul li {
		display:block;
	}

	/* Navigation toggle links */
	#nav-jump {
		display:block !important;
		position:fixed;
		border-top:9px double #fff;
		border-bottom:3px solid #fff;
		text-indent:-9999px;
		outline:none;
		z-index:101;
		right:0.7em;
		height:3px;
		top:0.9em;
		width:2em;
	}

	/* Toggling */
	#top-nav:target #nav-close {
		display:block !important;
		position:fixed;
		text-indent:-9999px;
		text-align:left;
		line-height:0;
		outline:none;
		z-index:104;
		right:0.5em;
		top:1em;
		border:none;
		font-size:150%;
		font-weight:bold;
	}
	#top-nav:target #nav-close:after {
		content:'X';
		display:block;
		text-align:right;
		text-indent:0;
		color:#fff;
	}
	#top-nav:target {
		visibility:visible;
		z-index:102;
		opacity:1;
	}
	#top-nav:target li ul {
		visibility:visible;
		opacity:1;
	}

	/* Search */
	#site-search {
		display:none; /* Z-index issues kill... */
		position:absolute;
		height:auto;
		width:auto;
		margin:0;
		bottom:auto;
		top:0.2em;
		left:auto;
		right:1.5em;
		border:none;
		visibility:visible;
		opacity:1;
	}
	#top-nav:target #site-search {
		display:block;
	}
	#site-search p {
		border-radius:1em;
		margin:0 1em;
		max-width:20em;
	}
	#site-search nav {
		display:none;
	}


	/*-------------------------------------------------------
	Main navigation */

	#main-nav>ul {
		font-size:110%;
	}


	/*-------------------------------------------------------
	Footer area */

	/* Shrink the big phone number */
	main>footer h2 {
		font-size:160%;
	}
	main>footer h2 a[href^="tel:"] {
		vertical-align:0.05em;
		font-size:190%;
	}

	/* Policy navigation */
	#policy-nav>ul {
		display:inline-block;
		max-width:24em;
		margin:0.5em 0;
	}
	#policy-nav>ul>li:nth-child(4):before {
		display:none;
	}


	/*-------------------------------------------------------
	Home page banners */

	#banner li div {
		min-height:120px;
		font-size:100%;
		bottom:20%;
		width:80%;
		left:10%;

		-moz-box-sizing:border-box;
		box-sizing:border-box;
	}
	#banner li h2 {
		font-size:200%;
	}

	/* Callouts */
	#banner-callouts {
		padding-top:15.5em;
	}
	#banner-callouts li {
		height:16.5em;
	}


	/*-------------------------------------------------------
	Content / columns */

	/* Shrink background swirls */
	#content {
		padding-bottom:33%;
	}
	#content>.col.main>p:last-child {
		margin-bottom:6em;
	}

	/* Side column is getting in the way, so eliminate it */
	#content>.col.side {
		display:none;
	}
	#content>.col.main {
		display:block;
		width:auto;
		padding:0.5em 1em;
	}
	
	/* Gift Card Modal - Make it fit the screen! */
	
	#giftcard-modal-content {
		min-width:280px;
	}
	
	#giftcard-modal form > p #cardMarking {
		width:95px;
	}
	
	#simplemodal-container.simplemodal-container {
		width:100% !important;
		left:0 !important;
		top:10% !important;
	}
	
	#modal .simplemodal-close {
		top:5px;
		right:5px;
	}
	
	#modal-content {
		min-width:0;
		width:100%;
	}
	
	#modal-content .main.col > p img {
		max-width:85%;
	}


}
@media screen and (max-width:490px) {

	/*-------------------------------------------------------
	Main navigation */

	/* Put links into fixed columns */
	#main-nav>ul>li {
		position:relative;
		width:49%;
		margin:0 !important;
	}
	#main-nav>ul>li>a {
		display:block;
		padding-left:0;
		padding-right:0;
	}
	#main-nav>ul ul {
		width:100%;
		max-width:none;
		min-width:inherit;
		border-top-right-radius:0;

		-moz-box-sizing:border-box;
		box-sizing:border-box;
	}
	
	/* Gift card Modal -- put input column on its own row */
	
	#modal-content {
		box-sizing:border-box;
	}
	
	#modal-content .main.col > p, #modal-content .main.col > div {
		display: block;
		width:100%;
		max-width:none;
	}
	
	#giftcard-modal form > p {
		position: absolute;
	}
	
	#giftcard-modal-content .main.col > div > p:first-child, #giftcard-modal form > p {
		margin:2px 0;
	}
	
	#message {
		font-size:13px !important;
	}

}
@media screen and (max-width:460px) {

	/*-------------------------------------------------------
	Footer area */

	/* Big phone number needs some adjustments */
	main>footer h2 {
		width:auto;
	}
	main>footer h2 small {
		display:block;
	}
	main>footer h2 small strong {
		display:inline;
		color:inherit;
	}
	main>footer h2 a[href^="tel:"] {
		display:block;
	}

	/* Address */
	main>footer address {
		margin:0.7em 0;
	}
	main>footer address span {
		display:block;
	}
	main>footer address span+span:before {
		display:none;
	}

	/*-------------------------------------------------------
	Home page banners */

	/* Callouts - no more grid */
	#banner-callouts {
		width:95%;
		padding-top:0;
		max-width:270px;
		margin-left:auto;
		margin-right:auto;
	}
	#banner-callouts li {
		position:relative !important;
		display:block !important;
		float:none !important;
		height:auto !important;
		width:auto !important;
		right:auto !important;
		left:auto !important;
		top:auto !important;
		border:none;
		font-size:100%;
		padding:0.5em 1em;
		border-top:1px solid #e4e4e4;
	}
	#banner-callouts li:first-child {
		border:none;
	}
	#banner-callouts p:last-child {
		text-align:center;
		margin:1em 0;
	}
	#banner-callouts a.button {
		position:static;
	}

	/*-------------------------------------------------------
	Store: Product details */

	/* Clear the cart button */
	#prod-detail h1 {
		clear:right;
		padding-top:0.2em;
	}

	/* Eliminate form columns */
	#prod-detail figure {
		padding:0.1em 1em;
	}
	#prod-detail figure>img,
	#prod-detail form {
		display:block;
		float:none;
		width:auto;
		margin:0.5em 0;
	}

	/* Put price / quantity into columns instead */
	#prod-detail form section h4 {
		float:left;
		clear:left;
		width:55%;
		min-width:11.5em;
	}


}

@media screen and (max-width:420px) {
	/* Hours Calendar */
	.hour-cat-list li {
		display: block;
	}
}

@media screen and (max-width:390px) {


	/*-------------------------------------------------------
	Main navigation */

	#main-nav a {
		font-size:90%;
	}

	/*-------------------------------------------------------
	Footer navigation */

	/* Eliminate column layout */
	#foot-nav>ul {
		width:auto;
		margin:0 0 2em;

		-moz-columns:2 auto;
		-webkit-columns:2 auto;
		columns:2 auto;
	}


	/*-------------------------------------------------------
	Footer area */

	/* Big phone number - shrink one last time */
	main>footer h2 {
		font-size:140%;
	}


	/*-------------------------------------------------------
	Content / callouts */

	/*#content {
		padding-bottom:25%;
	}*/

	/* No more columns on home page */
	#content .col.main .col.side .callout {
		float:none !important;
		margin:1em auto !important;
		max-width:200px;
		width:auto;
	}
}


/*-------------------------------------------------------
Deals list */

/* Trying something a little more complicated: Remove images for mid-size mobile AND for smaller tablet devices */
@media screen and (max-width:460px), screen and (max-width:650px) and (min-width:551px) {

	/* No more images */
	#deals-list figure {
		position:static;
		margin:0.2em 0 0.7em;
		width:auto;
	}
	#deals-list figure img {
		display:none;
	}
	#deals-list figcaption {
		text-align:left;
	}
	#deals-list>li {
		padding-left:0;
		min-height:inherit;
	}

}

