/* RESET */

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





/* TEMP DEV STYLES */

#admin { position: fixed; bottom: 0; width: 98%; padding: 1%; background: rgba(0,0,0,0.5); font-size: 13px; color: #FFF; text-align: center; clear: both; }

.typo-heading { font-size: 1.2em; color: #CCC; padding: 0.5em 0; border-top: 1px solid #CCC; border-bottom: 1px solid #CCC; margin: 0; }

.typo-description { font-size: 0.8em; color: #757575; padding: 1em 0.5em; background: #FCFCFC; margin: 0; }

.typo-section { padding: 1.5em 0; }

.temp { text-align: center; padding: 0.5em 1em; background: #FAFAFA; }

.temp a { font-size: 0.8em; border: 0; }



/* pallete 



#800020 128,0,32 burgunday

#761262 burgunday

#fcffde yellow

*/





/* GLOBAL */

body { font-family: Raleway, sans-serif; font-size: 1em; font-weight: 400; color: #252525; line-height: 1.5; background-color: #FFFFFF; margin: 0 auto; }

h1,h2,h3,h4,h5,h6 { font-family: Montserrat, sans-serif; font-weight: 700; color: #000; margin: 0 0 1rem 0;  }

h3,h4,h5,h6 { margin-bottom: 0.5rem; }

h1 { font-size: 2.0em; }

h2 { font-size: 1.6em; }

h3 { font-size: 1.4em; }

h4 { font-size: 1.2em; }

h5 { font-size: 1.0em; }

h6 { font-size: 1.0em; }

table { width: 100%; border-collapse: collapse; margin: 0 0 1.5rem 0; }

caption { font-style: italic; margin: 0 0 0.5rem 0; }

th { font-weight: bold; text-align: left; padding: 0.5em; border-bottom: 1px dotted #CCC; }	

td { vertical-align: top; padding: 1em 0.5em; border-bottom: 1px dotted #CCC; }

p { line-height: 1.5; margin: 0 0 1.5rem 0; }

ul { list-style: disc; line-height: 1.5; padding: 0; margin: 0 0 1rem 1.5rem; }

ol { list-style: decimal; line-height: 1.5; padding: 0; margin: 0 0 1rem 1.5rem; }

dl { line-height: 1.5; margin: 0 0 1.5rem 0; }

dt { font-weight: bold; margin: 0; }

dd { margin-left: 1em; }

blockquote { font-family: Georgia, Serif; font-size: 1.2em; font-style: italic; color: #757575; padding: 0 2em; border-left: 2px solid #CCC; margin: 0 2em 1.5rem 2em; }

img { max-width: 100%; height: auto;  }

figure { text-align: center; margin: 0 0 1.5rem 0; }

figcaption { font-size: 0.8em; font-style: italic; color: #666; padding: 0.5em 0; }

.nobullet { list-style: none; margin: 0 0 1.5em 0; }

.inline li { display: inline; }

hr { display: block; width: 100%; background: 0; border: 0; border-bottom: 1px solid #B22222; margin: 1em 0; clear: both; }

img { max-width: 100%; height: auto; }

a { color: #08a6d3; text-decoration: none; transition: 0.25s; } 

a:hover, a:focus { color: #8B2C4B; text-decoration: underline;  } 

small { font-size: 0.8em; }

em,i { font-style: italic; }

b,strong { font-weight: bold; }

pre { color: #4c516d; line-height: 1.5; padding: 1em 0; border-top: 1px dotted #CCC; border-bottom: 1px dotted #CCC; }

code { font-family: monospace; font-size: 1.1em; }

.center { text-align: center; }

.clear { clear: both; }

.right { text-align: right; }

.highlight { font-style: italic; color: #000; background: #FFFF00; background: rgba(255, 255, 0, 0.5); padding: 1em; border-radius: 14px 0; }


.announcement { background: #800000; }
.announcement a { display: block; font-size: 0.925rem; font-weight: 700; color: #FFFFCC; padding: 0.5rem; text-align: center; }


/* LAYOUT */

.row { position: relative; clear: both; }

.row-nav { padding: 1.5rem; }

.row-crumbs { padding: 0 1.5rem; margin-bottom: 1rem; }

.row-hero { background-color: #000000; background-repeat: no-repeat; background-position: center center; background-size: cover; border-top: 5px solid #FFD700; border-bottom: 5px solid #FFD700; margin: 0 0 1.5rem 0; }

.row-header { padding: 0 1.5rem 0 1.5rem; margin: 0 0 1.5rem 0; } 

.row-section { padding: 1.5rem; }

.row-section-whats-on { padding: 0.5rem; }

.row-section-alt { background: #fcffde; } 

.row-footer { padding: 3rem 1.5rem; background: #fcffde; margin-top: 1.5rem; }



.nav { position: relative; max-width: 1280px; margin: 0 auto; clear: both; }

.crumbs { max-width: 1280px; margin: 0 auto; }

.hero { position: relative; max-width: 1280px; padding: 30% 0 0 0; margin: 0 auto; z-index: 999; }

.header { max-width: 1280px; padding: 1rem 0; border-top: 1px solid #CCC; border-bottom: 1px solid #CCC; margin: 0 auto; }

.header-narrow { max-width: 1280px; }

.header-thin { max-width: 1280px;  }

.section { max-width: 1280px; margin: 0 auto; clear: both; }

.section-narrow { max-width: 960px; }

.section-thin { max-width: 640px; }

.footer { max-width: 1280px; margin: 0 auto; }



/* GRIDS */

.grid2 { display: grid; grid-column-gap: 2rem; grid-row-gap: 2rem; grid-template-columns: repeat(auto-fit, minmax(240px,1fr)); }

.grid3 { display: grid; grid-column-gap: 2rem; grid-row-gap: 2rem; grid-template-columns: repeat(auto-fit, minmax(240px,1fr)); }

.grid4 { display: grid; grid-column-gap: 2rem; grid-row-gap: 2rem; grid-template-columns: repeat(auto-fit, minmax(240px,1fr)); }

.grid4 .grid-item { padding: 0.5rem; border: 1px solid #CCC; }





/* NAVIGATION */

.logo { float: left; margin-left: -0.25rem; z-index: 999;}

.logo img { display: block; width: auto; height: 100px; }



.top-links { height: 40px; font-size: 0.8em; list-style: none; line-height: 30px; text-align: right; margin: 0; }

.top-links li { display: inline-block; margin: 0 0 0 0.5rem; }

.top-links a { font-weight: bold; }

.top-links-cart { border: 1px solid #8B2C4B; border-radius: 40px; }

.top-links-cart a { display: block; color: #fcffde; padding: 0 1rem; background: #8B2C4B; border: 2px solid #fcffde; border-radius: 40px; }





.menu-toggle, .menu-checkbox { display: none; }

.menu { font-size: 0.9rem; font-weight: 700; text-align: right; list-style: none; line-height: 57px; padding: 0; margin: 0; }

.menu li { display: inline-block; margin: 0; }

.menu li a { display: block; color: #000; text-decoration: none; text-transform: uppercase; padding: 0 0.5rem; transition: 0.5s; border-bottom: 3px solid transparent; }

.menu li a:hover { color: #8B2C4B; text-decoration: none; border-bottom: 3px solid #8B2C4B; }
.menu li a.poppy { display: block; padding-left: 20px; background: url(/shopimages/poppy.png) no-repeat left; background-size: 16px auto; }


.crumbs p { font-size: 0.8rem; margin: 0; }



.subnav { list-style: none; margin: 1.5rem 0; }

.subnav li { }

.subnav li ul { list-style: none; margin: 0 0 1rem 0;}

.subnav li ul li { border-bottom: 1px solid #7FFFD4;}

.subnav a { display: block; }

.subnav li a { font-weight: bold; color: #FFFFCC; padding: 0.5rem 1rem; background: #546922; }

.subnav li ul li a { font-weight: normal; color: inherit; padding: 0.5rem 1rem; background: transparent; }



.subnav-icon { display: inline-block; float: right; padding: 0.25rem 0; transition: 0.5s; }

.subnav-hide { display: none; }

.subnav-label { font-weight: bold; color: #FFFFCC; padding: 0.5rem 1rem; background: #546922; margin: 0 0 2px 0; }

input.subnav-checkbox { position: absolute; left: -999em; }

input.subnav-checkbox:checked + .subnav-label + .subnav-hide { display: block; }

input.subnav-checkbox:checked + .subnav-label .subnav-icon { transform: rotate(270deg); }





/* HERO */

.hero-text { max-width: calc(960px - 4rem); text-align: center; padding: 1.5rem; background: rgba(128,0,32,0.7); margin: 0 auto; }

.hero-heading { color: #FFF; line-height: 1.2; margin: 0; }

.hero-summary { font-size: 1rem; color: #CCC; margin: 1rem 0 0 0; }

.hero-cta { font-size: 1.2rem; font-weight: bold; margin: 1rem 0 0 0; }

.hero-text a { color: #FFD91F; }



/* HEADER */

.header { text-align: center; }

.header-heading { margin: 0; }

.header-summary { margin: 1rem 0 0 0; }

.header-cta { font-weight: bold; margin: 1rem 0 0 0; }





/* SECTION */

.section-heading { font-size: 1.4rem; text-align: center; }

.section-cta { max-width: 800px; text-align: center; margin: 1.5rem auto 1.5rem auto; clear: both; }



/* EVENTS CALENDAR */

.month { border-top: 1px solid #CCC; margin: 0 0 1.5rem 0; }

.day { display: grid; grid-column-gap: 0; grid-row-gap: 0; grid-template-columns: 240px 1fr 200px; padding: 1rem 0; border-bottom: 1px solid #CCC; }

.day p { line-height: 2; margin: 0; }

.date { font-size: 0.9rem; }

.title { font-weight: bold; }

.book a { display: inline-block; font-weight: bold; font-size: 0.9rem; color: #FFF; line-height: 2rem; padding: 0 2em; background: #8B2C4B; border-radius: 7px; }



/* TODAY on home page */

.today {  }

.today-list { list-style: none; margin: 0; }

.today-list li { display: inline-block; margin: 0 1em 1em 1em; }



/* LISTINGS */

.entries {  }  

.entries img { display: block; border-bottom: 5px solid #fcffde; }

.entries-description { padding: 0.5rem; }

.entries-heading { font-size: 1.2em; line-height: 1.2; margin: 0; }

.entries-heading a { color: #000; }

.entries-summary { font-size: 0.9rem; margin: 0.5rem 0 0 0; }

.entries-cta { font-weight: bold; margin: 0.5rem 0 0 0; }



/* ARTICLE */

.entry-intro { font-size: 1.2em; }

.article-links { list-style: none; margin-left: 0; }

.article-parent { font-weight: bold; padding: 1rem 0; border-top: 2px solid #CCC; margin-top: 1.5rem; }

.tickets { padding-top: 1.5rem; }

.tickets-heading { padding: 0.5rem 0; border-top: 1px solid #000; border-bottom: 1px solid #000; margin: 0; }

.tickets-list { margin: 0; }

.tickets-list dt { margin: 1.5rem 0 0 0; }

.tickets-list dd { display: inline-block; margin: 1rem 1.5rem 0 0; }

.tickets-list small a { font-weight: bold; }

.tickets-list a.ticket-book-link  { display: inline-block; font-size: 0.9rem; font-weight: bold; color: #FFF; line-height: 2.4rem; padding: 0 1.5rem; background: #8B2C4B; border-radius: 4px; margin-right: 0.5rem; }



.ticket-table { margin-bottom: 1.5rem; }

.type {}

.price { width: 80px; }

.qty { width: 60px; }



/* PAGINATION */

.pagination { font-size: 1em; font-weight: bold;  list-style: none; margin: 0 0 1.5em 0; }

.pagination li { display: inline-block; }

.pagination li.current { font-weight: bold; }

.pagination a { display: block; width: 38px; height: 38px; line-height: 38px; text-align: center; color: #FFF; text-decoration: none; background: #AAA; border: 0; }

.pagination a:hover, .pagination a.current { background: #777; }



/* FOOTER */

.footer-heading { font-size: 1.2rem; font-weight: 700; text-transform: uppercase; letter-spacing: 1px; margin-bottom: 0.5rem; }

.footer p { font-size: 0.9em; }

.footer-links { font-size: 0.9em; list-style: none; margin: 0 0 1rem 0; }

.footer-links li { margin: 0 0 0.25rem 0; }

.footer-social { font-size: 0.9em; font-weight: bold; list-style: none; margin: 0 0 1rem 0; }

.footer-social li { display: inline-block; width: 120px; margin: 0 0.25rem 0.25rem 0; }

.footer-social a { position: relative; transition: 1s; }

.footer-social a:hover { text-decoration: none; top: 1px; }

.footer-social a.facebook { color: #3B579D; }

.footer-social a.twitter { color: #00ACED; }

.footer-social a.flickr { color: #0062DD; }

.footer-social a.youtube { color: #FE021C; }

.footer-social a.google-plus { color: #D62223; }

.footer-social a.instagram { color: #000000; }

.footer-social a.pinterest { color: #BD081C; }

.legal { font-size: 0.7rem; text-align: center; margin: 0 0 1em 0; clear: both; }



/* QUOTES */

.quote { padding: 0; margin: 0 0 1.5em 0; border: 0; }

.quote-text {font-family: Georgia, serif; font-size: 1.2em; font-style: italic; color: #757575; padding: 1.5em; background: #EEE; border-radius: 10px; margin: 0; }

.quote-text::before { content: '“';} 

.quote-text::after { content: '	”'; }

.quote-author { display: block; font-size: 0.8em; font-style: normal; line-height: 1.5; padding: 0 1em 0 10%; }

.quote-author-name { display: inline-block; }

.quote-author-company { display: inline-block; }

.arrow-down { width: 0; height: 0; border-left: 15px solid transparent; border-right: 15px solid transparent; border-top: 15px solid #EEE; margin: 0 0 0.5em 10%; }



/* BUTTONS */

.btn { display: inline-block; font-weight: 700; color: #FFF; text-align: center; text-decoration: none; text-transform: none; transition: 0.5s; cursor: pointer; border-radius: 7px; background: transparent; transform: 0.5s; }

.btn:after { content: " \2192"; }

.btn:hover:after { position: relative; content: " \2192"; right: -5px; }

.btn-pri { color: #FFFFFF; background: #8B2C4B; } 

.btn-pri:hover { color: #FFFFCC; text-decoration: none; background: #800020; } 

.btn-sec { color: #FFF; background: #999; }

.btn-sec:hover { color: #FFF; text-decoration: none; background: #AAA; }

.btn-ghost { color: #FFF; border: 2px solid #FFF;}

.btn-ghost:hover { color: #FFF; text-decoration: none; border: 2px solid #FFF; }

.btn-l { font-size: 1em; padding: 0.75rem 2em; }

.btn-m { font-size: 0.9em; padding: 0.75rem 2rem; }

.btn-s { font-size: 0.9em; padding: 0.5rem 1.5rem; }

.btn-block { display: block; text-align: center;}



/* MISC */

.video { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; margin: 0 0 1.5rem 0; }

.video iframe, .video object, .video embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%;  }

.map iframe { width: 100%; margin: 0 0 1.5em 0; }

.offscreen { position: absolute; left: -999em; }



/* MESSAGES ERRORS ETC */

.important { padding: 1rem; background: #fcffde; border: 1px dotted #761262; margin: 0 0 1rem; }

.important h2 { font-size: 1.2rem; font-weight: bold; margin: 0; }

.important p { font-size: 0.9rem; margin: 0.25rem 0 0 0; }

.important ul, .important ol { font-size: 0.9rem; margin: 0.25rem 0 0 2rem; }

.message { font-size: 0.9em; font-weight: bold; padding: 1em; }

.message-normal { color: inherit; border: 1px solid #CCC; }

.message-warning { color: #FF6600; border: 2px solid #FF9900; }

.message-error { color: #FF0000; background: #FFFF33; border:1px solid #FF0000; }

.error-text { display: block; font-size: 0.8em; color: #FF0000; padding: 0.5rem; background: #FFFFCC; }



/* FORMS */

form { max-width: 100%; }

form p { margin: 0 0 1.5em 0; }

form ul { list-style: none; margin: 0 0 1.5em 0; }

form li { margin: 0 0 0.25em 0; }

fieldset { margin: 0 0 1rem 0; }

legend { font-size: 1.2em; font-weight: 700; color: #222; margin: 0 0 1rem 0;}		

label { display: block; }



input, textarea, select { font-size: 16px; padding: 0; border: 0; box-sizing: border-box; border-radius: 7px; }

input[type='text'],input[type='tel'],input[type='email'],input[type='password'] { width: 100%; height: 42px; text-indent: 9px; border: 1px solid #AAA; }

input[type='number'] { width: 60px; height: 42px; text-align: center; border: 1px solid #AAA; }

input.input-s, select.input-s { width: 60px; height: 40px;  }

input.input-m, select.input-m { width: 120px; height: 40px;  }





select { width: 100%; height: 42px; border: 1px solid #AAA; }

select.select-m { width: 180px; }

textarea { width: 100%; height: 160px; padding: 9px; border: 1px solid #AAA; border-radius: 4px; }



button { width: 100%; height: 40px; font-family: Raleway, sans-serif; font-size: 16px; font-weight: bold; color: #FFFFFF; text-transform: uppercase; background: #8B2C4B; border: 0; border-radius: 7px; }

button.button-s { width: auto; font-size: 14px; padding: 0 1rem; }











.form-checkbox { display: none; }

.btn.form-toggle { margin: 0 0 1.5em 0;  }

input.form-checkbox:checked + .form-toggle + .form-extra { display:block; }

.form-extra { display: none; }



/* CHECKOUT */

.cart-item { display: grid; grid-column-gap: 1rem; grid-row-gap: 1rem; grid-template-columns: repeat(auto-fit, minmax(160px,1fr)); }

.cart-totals { padding: 1rem 0; border-top: 1px solid #000; border-bottom: 1px solid #000; }

.cart-totals dt { float: left; width: 200px; clear: left; }

.cart-totals dd { }

.cart-links a { margin-bottom: 0.5rem; }


/* CHECKOUT NEWSLETTER NOTICE */

#subscriptionMsg { width: 100%; height: 50px; margin-bottom:20px; display: none; }




/* MEDIA QUERIES */

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



.logo img { height: 80px; width: auto; }

.menu-toggle { display: block; width: 100%; height: 36px; font-size: 0.9rem; font-weight: 700; line-height: 36px; text-decoration: none; text-transform: none; text-align: right; cursor: pointer; }

.menu-toggle span { display: inline-block; color: #FFF; padding: 0 1rem; background: #800000; margin: 0 0.5rem; }

.menu-toggle span::after { content: "[+]"; }

@keyframes m1 { 0% {right: -400px; } 100% {right: 0px; } }

input.menu-checkbox:checked + .menu-toggle + .menu { display:block; animation-name: m1; animation-duration: 0.25s; }

input.menu-checkbox:checked + .menu-toggle span::after { content: "[x]"; ; }



	.menu { display: none; }

	.menu { width: auto; line-height: 40px; text-align: left; padding: 1em 0; clear: both; overflow: hidden; }

	.menu li { display: block; border-top: 1px solid #000; margin: 0; }

	.menu li:last-of-type { border-bottom: 1px solid #000; }

	.menu li a { padding: 0 1em; border: 0; }

	.menu li a:hover { background: #FFD91F; border: 0; }



.day { grid-template-columns: 1fr; }	

}



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

h1 { font-size: 1.8em; }

h2 { font-size: 1.4em; }



.top-links li.top-links-phone { display: none; }

	



	

}

