/* 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; box-sizing: border-box; -webkit-text-size-adjust: none; }

/* TEMP DEV STYLES */
#admin { position: fixed; bottom: 0; left: 0; width: 48%; padding: 9px 1%; background: rgba(0,0,0,0.7); font-size: 11px; color: #FFF; }
.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 { position: fixed; right: 0; bottom: 0; width: 48%; padding: 9px 1%; font-size: 11px; text-align: right; background: rgba(0,0,0,0.7); }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table {	border-collapse: collapse; border-spacing: 0; }
img { max-width: 100%; height: auto; -webkit-image-rendering: auto; image-rendering: auto; }


/* GLOBAL DEFAULTS */
body { font-family: "Open Sans", Helvetica, Arial, sans-serif; font-size: 15px; font-weight: 400; color: #000; background-color: #FFF; margin: 0; padding: 0; }
h1,h2,h3 { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-weight: normal; margin: 0 0 0.5em 0; }
h4,h5,h6 { font-family: "Open Sans", Helvetica, Arial, sans-serif; font-weight: normal; margin: 0 0 0.5em 0; }
h1 { font-size: 2.0em; text-transform: uppercase; letter-spacing: 1px; margin: 0 0 0.35em 0; }
h2 { font-size: 1.6em; }
h3 { font-size: 1.4em; color: #485253; }
h4 { font-size: 1.2em; font-weight: bold; }
h5 { font-size: 1.1em; font-weight: bold; }
h6 { font-size: 1.0em; }
table { border-collapse: collapse; margin: 0 0 0.75em 0; }
caption { font-style: italic; }
th { text-align: left; font-weight: bold; padding: 0.5em 2em 0.5em 0; border-bottom: 1px solid #CCC; }	
td { vertical-align: top; padding: 1em 0; border-bottom: 1px solid #CCC; }
p { line-height: 1.5; margin: 0 0 0.75em 0; }
p + h2, ul + h2, ol + h2 { margin: 1.5em 0 0.5em 0; }
p + h3, ul + h3, ol + h3 { margin: 1.5em 0 0.5em 0; }
ul { list-style: disc; line-height: 1.5; padding: 0; margin: 0 0 0.75em 2em; }
ol { list-style: decimal; line-height: 1.5; padding: 0; margin: 0 0 0.75em 2em; }
dl { line-height: 1.5; margin: 0 0 0.75em 0; }
dt { font-weight: bold; }
dd {}
blockquote { font-family: Georgia, serif; font-style: italic; color: #757575; padding: 0 5%; border-left: 2px solid #CCC; margin: 0 5% 0.75em 5%; }
figure { width: auto; text-align: left; margin: 0 0 0.75em 0; }
figcaption { font-size: 0.8em; font-style: italic; color: #485253; padding: 0.5em; background: #EDEADD; }
hr { display: block; width: 100%; background: 0; border: 0; border-bottom: 2px solid #CCC; margin: 1.5em auto; clear: both; }
hr.halfwidth { width: 50%; }
hr.dotted { border-bottom-style: dotted; }
hr.dashed { border-bottom-style: dashed; }
img { max-width: 100%; height: auto; }
a { color: #A08032; text-decoration: none; }
a:active, a:hover, a:focus { color: #AAA; text-decoration: underline; }
small { font-size: 0.8em; }
b,strong { font-weight: 700; }
em,i { font-style: italic; }
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; }

/* LAYOUT */
.row { position: relative; clear: both; }
.row-nav { padding: 0; background: #000; }
.rownavfixed { position: fixed; top: 0; right: 0; left: 0; width: 100%; z-index: 999999; }
.row-light { background: #EDEADD; }
.row-medium { background: #E1DBCA; }
.row-dark { background: #CDC5B6; }
.row-bottom { background: #000; }

.top { position: relative; max-width: 1280px; padding: 1em 3em; margin: 0 auto; }
.nav { position: relative; max-width: 1280px; min-height: 45px; padding: 0 3em; margin: 0 auto; }
.crumbs { position: relative; font-size: 0.8em; line-height: 1.25; padding-right: 3em; background: #FFF; margin: -1.25em 0 1em 0; clear: both; }
.crumbs a { display: inline-block; color: #000; text-decoration: none; margin-right: 0.15em; }
.crumbs a:hover { text-decoration: underline; }
.crumbs .last { color: #485253; }
.slider { max-width: 1280px; background: #FFF; margin: 0 auto; overflow: hidden; }
.hero { max-width: 1280px; background: #FFF; margin: 0 -2em 2em -2em; }
.content { max-width: 1280px; padding: 2em 2em; background: #FFF; margin: 0 auto; }
.content-medium { background: #EDEADD; }
.content-dark { background: #485253; }
.content-dark h3 { color: #FFF; }
.bottom { padding: 1em 2em; background: #000; }
.footer { background: #9f8030; }

/* PAGE TOP */
.logo { float: left; }
.logo a { display: block; width: 200px; height: 80px; background: url(/assets/images/logo.svg) no-repeat; background-size: contain; }
.logo a span { position: absolute; left: -999em; }
.logo img { display: block; width: 197px; height: 80px; }
.toplinks { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; list-syle: none; line-height: 1; text-align: right; padding: 0.75em 0 0 0; margin: 0 0 0.35em 0; }
.toplinks li { display: inline-block; padding: 0 0.5em; }
.toplinks a { color: #000; }
.toplinks a:hover { color: #485253; text-decoration: none; }
.tl-dividers li { border-left: 1px solid; }
.tl-dividers li:first-child { border: 0; }
.ss-menu { display: none; }

/* PRIMARY NAV */
.menu-toggle, .menu-checkbox, .menu-inner-toggle { display: none; }
.logo1843 { float: left; display: inline-block; height: 45px; padding: 0px 0 0 0; }
.menu { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-size: 1em; list-style: none; line-height: 45px; letter-spacing: 2px; text-transform: uppercase; padding: 0 0 0 82px; margin: 0; }
.menu li { display: inline-block; margin: 0; }
.menu li a { display: block; color: #FFF; text-decoration: none; padding: 0 1em; }
.menu li ul { display: none; width: 240px; list-style: none; line-height: 1.2em; letter-spacing: normal; text-transform: none; margin: 0; z-index: 999; }
.menu li ul li { display: block; }
.menu li:hover ul { position: absolute; display: block; }
.menu li.bg-nav-triangle:hover { background-image: url(/assets/images/bg-nav-triangle.png); background-repeat: no-repeat; background-position: bottom; }
.menu ul li a { display: block; color: #485253; text-decoration: none; background: #EDEADD; padding: 0.75em 1em; }
.menu ul li a::after { content: "  \203A"; }
.menu ul li a:hover { background: #CDC5B6; }
.menu li ul.menu-hidden { display: none; background: #CCC; }
.menu li.menu-venue-hire { display: none; }
.menu li a.menu-inner-toggle { display: none; }

/* PRIMARY SEARCH */
.menu-search { float: right; list-style: none; line-height: 45px; padding: 0; margin: 0; }
.menu-search li { display: inline-block; }
.menu-search li.menu-toggle { display: none; }
.search-toggle { display: inline-block; width: 20px; height: 20px; padding: 5px 0 0 0; text-align: right; text-decoration: none; text-transform: uppercase; margin: 0; color: #FFF; }
.search-toggle img { display: block; width: 20px; height: 20px; }
.menu-search.hide-on-mobile { display: block; }
.menu-search.show-on-mobile { display: none; }

/* SECONDARY NAV */
.subnav-toggle { display: none; }
.subnav-divider { height: 3px; margin: 5px 0 1em 0; }
.subnav-heading { font-size: 1.2em; text-transform: uppercase; letter-spacing: 2px; padding: 0; margin: 0 0 0.5em 0; }
.submenu { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; line-height: 1.2; list-style: none; margin: 0 0 1.5em 0; }
.submenu li { position: relative; margin: 0 0 0.75em 0; }
.submenu li.first { font-size: 1.2em; text-transform: uppercase; letter-spacing: 2px; padding: 0; }
.submenu li.level1 { }
.submenu li.level2 { font-size: 0.9em;}
.submenu ul { display: none; line-height: 1.2; list-style: none; margin: 1em 0; }
.submenu ul.open { display: block; }
.submenu ul li { padding-left: 1em; margin: 0 0 1em 0; }
.submenu ul li ul { }
.submenu a { display: block; color: #485253; text-decoration: none; margin-right: 1em; }
.submenu li.first a::after { content: ""; }
.submenu .child-toggle a::after { content: ""; }
.submenu a.active { font-weight: bold; }
.submenu .child-toggle { float: right; width: 15px; font-size: 16px; }

.submenu2 { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; line-height: 1.2; list-style: none; margin: 0 0 1.5em 0; }
.submenu2 li { padding: 0.65em 0; border-bottom: 1px solid #CCC; }
.submenu2 ul { list-style: none; margin: 0.5em 0 0 1em; }
.submenu2 ul li { padding: 0.5em 0; border: 0; }
.submenu2 li.overview { font-size: 1.2em; text-transform: uppercase; letter-spacing: 2px; padding: 0 0 0.65em 0; }
.submenu2 li.active > a { font-weight: bold; }
.submenu2 a.active { font-weight: bold; }
.submenu2 a { display: block; color: #485253; }

.submenu2 li.calendar-link { padding-bottom: 0; border: 0; }
.calendar-link a { display: block; letter-spacing: 1px; line-height: 20px; text-transform: uppercase; padding: 0.5em 1em 0.5em 0.5em; background: #eceadd; }
.calendar-link-icon { float: left; width: 20px; height: 20px; background: url(/assets/images/icon-whatson.svg) center center; background-size: auto 20px; margin-right: 0.5em; }

/* PAGE HERO */
.hero-image { display: block; }
.hero-heading { position: absolute; bottom: 7.5%; left: 0; right: 0; font-family: "Crete Round", Helvetica, Arial, sans-serif; font-size: 2em; font-style: italic; font-weight: 400; color: #485253 ; text-align: center; text-transform: none; padding: 0.5em 1em; background: #CCC; background: rgba(255,255,255,0.8); margin: 0; }

.slide-caption { position: absolute; bottom: 7.5%; left: 0; right: 0; font-family: "Crete Round", Helvetica, Arial, sans-serif; font-size: 2em; font-style: italic; font-weight: 400; color: #485253 ; text-align: center; text-transform: none; padding: 0.5em 1em; background: #CCC; background: rgba(255,255,255,0.8); margin: 0; }

/* SECTION */
.section-heading { font-size: 1.6em; font-weight: normal; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 1em 0; }
.sh-heading { text-align: center; margin: 0 0 0.25em 0; }
.sh-heritage { color: #006764; text-align: center; }
.sh-opening { color: #ffae03; text-align: center; }
.sh-what-son { color: #004A80; text-align: center; }
.sh-news { color: #485253; text-align: center; }
.sh-get-involved { color: #485253; text-align: center; }
.sh-venue-hire { color: #671773; text-align: center; }
.sh-contact { color: #ffae03; text-align: center; }
.section-icon { width: 100%; height: 35px; background-position: center center; background-repeat: no-repeat; background-size: auto 35px; margin: 0 0 1.5em 0; }
.icon-get-involved { background-image: url(/assets/images/icon-getinvolved.svg); }
.icon-contact { background-image: url(/assets/images/icon-contact.svg); }
.icon-date { background-image: url(/assets/images/icon-date.svg); }
.icon-heritage { background-image: url(/assets/images/icon-heritage.svg); }
.icon-news { background-image: url(/assets/images/icon-news.svg); }
.icon-opening { background-image: url(/assets/images/icon-opening.svg); }
.icon-parishlife { background-image: url(/assets/images/icon-parishlife.svg); }
.icon-venuehire { background-image: url(/assets/images/icon-venuehire.svg); }
.icon-whatson { background-image: url(/assets/images/icon-whatson.svg); }
 
.section-intro { width: 75%; font-family: "Crete Round", Helvetica, Arial, sans-serif; font-size: 1.25em; font-style: italic; color: #485253; text-align: center; margin: 0 12.5% 1.5em 12.5%; }
.section-cta { text-align: right; margin-top: 1.5em ; clear: both; }

/* GRIDS */
.page { display: grid; grid-gap: 2%; grid-template-columns: 23.5% 1fr; }
.page-children { display: grid; grid-gap: 1.5em 2%; grid-template-columns: 1fr 1fr 1fr; }
.grid2 { display: grid; grid-gap: 2em; grid-template-columns: 1fr 1fr; }
.grid3 { display: grid; grid-gap: 2em; grid-template-columns: 1fr 1fr 1fr; }
.grid4 { display: grid; grid-gap: 1.5em 2%; grid-template-columns: 23.5% 23.5% 23.5% 23.5%; }
.news-entries { display: grid; grid-gap: 1.5em; grid-template-columns: 15fr 7fr; margin: 0; }
.events-entries { display: grid; grid-gap: 1.5em; grid-template-columns: 15fr 7fr; margin: 0;}
.grid-profiles { display: grid; grid-gap: 2em; grid-template-columns: 1fr 1fr 1fr; }

/* IE10/11 grid fixes */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {

.page { overflow: hidden; clear: both; }
.page .subnav { float: left; width: 25%; }
.page .main { float: right; width: 70%; }

.page-children { margin: 0 0 0 -3%; }
.page-children .grid-item { float: left; width: 30.33%; margin-left: 3%; }
.grid2 { margin: 0 0 0 -3%; overflow: hidden; clear: both; }
.grid2 .grid-item { float: left; width: 47%; margin-left: 3%; }
.grid3 { margin: 0 0 0 -3%; overflow: hidden; clear: both; }
.grid3 .grid-item { float: left; width: 30.33%; margin-left: 3%; }
.grid4 { margin: 0 0 0 -3%; overflow: hidden; clear: both; }
.grid4 .grid-item { float: left; width: 22%; margin-left: 3%; }
.grid-whatson { padding: 1em; background: #EDEADD; margin: 0 0 1.5em 0; }
.grid-whatson-item { display: block; }

}

.grid-item { }
.grid-item-light { padding: 1em; background-color: #FFF; }
.grid-item-coloured { color: #FFF; }
.grid-item-entries { background: #ece8e5; }
.grid-item-contact a { color: #ffb003; }
.grid-entries { display: grid; grid-gap: 1em; grid-template-columns: 7fr 15fr; margin: 0 0 1.5em 0; }

.grid-whatson { padding: 1em; background: #EDEADD; margin: 0 0 1.5em 0; }
.grid-whatson-item { display: grid; grid-gap: 0; grid-template-columns: 3fr 2fr 3fr; border-bottom: 2px solid #FFF; align-items: center; }
.grid-whatson-item:last-child { border: 0; }
.whatson-heading { font-size: 1.4em; color: #000; text-transform: uppercase; letter-spacing: 1px; padding: 1em; background: #cdc6b6; margin: 0; }
.whatson-heading a { color: #000; text-decoration: none; }
.whatson-title { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-size: 1.4em; padding: 1em 1em 1em 0; }
.whatson-time { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-size: 1.4em; text-align: right; padding: 1em; border-right: 2px solid #FFF; border-left: 2px solid #FFF; }
.whatson-notes { padding: 1em 0 1em 1em; }


/* GRID CONTENT */
.grid-image { margin: 0 0 1.5em 0; }
.grid-thumb { margin: 0; }
.grid-thumb img { display: block; width: 100%; }
.grid-description { height: 100%; padding: 0.25em 0; }
.grid-item-coloured .grid-description, .grid-item-entries .grid-description { padding: 0.25em 1em; }
.grid-heading { color: inherit; font-size: 1.4em; font-weight: 400; line-height: 1.2; margin: 0.5em 0; }
.grid-heading a { color: inherit; text-decoration: none; }
.grid-heading a:hover { font-weight: bold; color: inherit; text-decoration: none; }
.grid-date { display: block; font-size: 0.9em; letter-spacing: 1px; text-transform: uppercase; margin: 0.5em 0; }
.grid-summary { font-size: 1em; }
.grid-divider { height: 2px; background: #b89f65; margin: 0 0 0.75em 0; }
.grid-cta { display: block; width: 100%; height: 2em; font-family: "Roboto Slab", Helvetica, Arial, sans-serif; color: #FFF; line-height: 2em; padding: 0 1em; text-align: right; text-decoration: none; background: #93792C; }
.grid-cta:hover { color: #FFF; font-weight: bold; text-decoration: none;  }
.grid-cta::after { content: "  \203A"; }
.gallery-title { margin-top: 0.5em; }


/* CALENDAR DAY TABLE */
.cal-wrap { max-width: 640px; height: 480px; padding: 10px; background: #00294f; }
.cal-container { padding: 10px; background: #FFF; margin: 0 0 10px; }
.cal { width: 100%; background: #FFF; border-collapse; collapse; margin: 0; }
.cal caption { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-size: 1.2em; font-style: normal; color: #00294f; line-height: 3em; text-align: center; letter-spacing: 1px; text-transform: uppercase; margin: 0 0 0em 0; }
.cal-prev, .cal-next { font-size: 1.5em; font-weight: bold; text-decoration: none; }
.cal-prev { float: left; }
.cal-next { float: right; }
.cal th { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-size: 0.8em; padding: 0.5em 0; }
.cal tbody { border-top: 1px solid #cdc6b6; border-left: 1px solid #cdc6b6; }
.cal td { height: 38px; color: #000; padding: 0; border-right: 1px solid #cdc6b6; border-bottom: 1px solid #cdc6b6; }
.cal td span, .cal td a { display: block; height: 38px; font-size: 16px; padding: 6px 0 0 6px; }
.cal td span.cal-today { color: #FFF; background: #014981; }
.cal td span.cal-notthismonth { color: #7e797d; background: #eceadd; }
.cal td a { font-weight: bold; color: #000; text-decoration: none; }
.cal td a.cal-today { color: #FFF; background: #014981; }
.cal td a:hover { color: #FFF; background: #A08032; }
.cal-links { list-style: none; text-align: center; margin: 0; }
.cal-links li { display: inline-block; margin: 0.5em; }
.cal-links a { display: block; width: 100px; font-size: 0.9em; font-weight: bold; padding: 0.5em; background: #EDEADD; border-radius: 4px;  }


/* NEWS+EVENTS ENTRIES */
.entries-heading { font-size: 1.4em; }
.entries-date { font-size: 0.9em; font-weight: 300; letter-spacing: 1px; text-transform: uppercase; margin: 0 0 0.5em 0; }
.events-heading-day { font-size: 1em; font-weight: bold; text-align: center; padding: 0.75em 1em; background: #eceadd; margin: 1em 0 1em 0;  }
.events-date { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-size: 0.9em;  font-weight: bold; margin: 0 0 0.5em 0; }
.events-tag { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-size: 0.9em; margin: 0 0 0.5em 0; }
.events-tag span { display: inline-block; padding: 0.25em 1em; border: 1px solid; }
.events-prev-next { list-style: none; text-align: right; margin: 0 0 1em 0; overflow: hidden; clear: both; }
.events-prev-next li { display: inline-block; }
.events-prev-next li:first-of-type { float: left; }



/* ENTRY SPECIFIC */
.entry-date { font-weight: 300; letter-spacing: 1px; text-transform: uppercase; }
.entry-intro { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-size: 1.1em; padding-right: 12.5%; }
.entry-block { padding-top: 1em; overflow: hidden; clear: both; }
.entry-block-image { float: left; width: 33.33%; margin-right: 0.75em; }
.entry-block-content { }
.donate-button { margin: 0 0 1.5em 0; }

/* PROFILES */
.profiles { position: relative; overflow: hidden; }
.profiles img { display: block; width: 100%; }
.profiles-content { position: absolute; right: 0; bottom: 0; left: 0; padding: 1em; background: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,1));  }
.profiles-heading { font-weight: 400; color: #FFF; margin: 0; }
.profiles-role { color: #FFF; margin: 0.25em 0; }

.profile-role { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-weight: bold; }

/* TIMELINE */
#slider1 { height: 40px; padding-bottom: 0; margin-bottom: 1em !important; overflow: hidden; }
.timeline-nav { font-family: "Roboto Slab", Helvetica, Arial, sans-serif; margin: 0 0 1em 0; }
.timeline-nav a { display: inline-block; height: 40px; line-height: 40px; padding: 0 15px; background: #eceadd; }
.timeline-nav a:hover, .timeline-nav a.active { color: #FFF; background: #006764; }
.timeline-grid { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; grid-gap: 1em; }
.timeline-grid-item { position: relative; }
.timeline-grid a { display: block; width: 100%; height: 100%; }
.timeline-grid img { display: block; width: 100%; }
.timeline-grid-year { position: absolute; display: block; top: 100%; right: 0; left: 0; height: 50px; font-size: 1.6em; color: #FFF; line-height: 50px; padding: 0 1rem; background: rgba(255,255,255,0.8); margin: -50px 0 0 0;

background: linear-gradient(rgba(0,0,0,0),rgba(0,0,0,0.5));

}

/* PAGINATION */
.pagination { font-size: 1em; list-style: none; margin: 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-radius: 4px; }
.pagination a:hover, .pagination a.current { background: #777; }


/* FOOTER */
.footer { color: #FFF; }
.footer a { color: #FFF; text-decoration: none; }
.footer a:hover, .footer-links a:focus { text-decoration: underline; }
.footer-heading { color: #FFF; padding: 0 0 0.5em 0; border-bottom: 1px solid #FFF; margin: 0 0 0.5em 0; }
.footer-links { list-style: none; margin: 0; }
.footer-links li { margin-bottom: 0.5em; }
.footer-text { color: #FFF; }
.legal { font-size: 0.8em; color: #8e8e8c; margin: 0; clear: both; }
.legal a { color: #8c8c8c; }
.credit { display: block; float: right; }

/* BUTTONS */
.btn { display: inline-block; font-family: "Roboto Slab", Helvetica, Arial, sans-serif; font-weight: 400; color: #FFF; line-height: 1; text-align: center; text-decoration: none; border-radius: 4px; transition: 0.5s; cursor: pointer; }
.btn::after { content: "  \203A"; font-size: 1.2em; }
.btn-noarrow::after { content: ""; }
.btn-rightarrow::before { content: "\2039  "; font-size: 1.2em; }
.btn-rightarrow::after { content: ""; }
a.btn { color: #FFF; }
a.btn:hover { color: #FFF; }
.btn-pri { background: #485253; }
.btn-pri:hover { color: #FFF; text-decoration: none; background: #757575; }
.btn-sec { background: #757575; }
.btn-sec:hover { color: #FFF; text-decoration: none; background: #555; }
.btn-l { font-size: 1.0em; padding: 1em 1em; }
.btn-m { font-size: 0.9em; padding: 0.7em 1em; }
.btn-s { font-size: 0.8em; padding: 0.8em 1em; }
.btn-block { display: block; text-align: center;}
.btn-alt { background: #801B1D; }
.btn-alt:hover { background: #6A1012; }


/* MISC */
.video { position: relative; padding-bottom: 56.25%; padding-top: 30px; height: 0; overflow: hidden; margin: 0 0 1.5em 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; }
.share { padding: 1.5em 0; border-top: 1px solid #ae9b61; margin: 1.5em 0 0 0;  }
.slides div { max-width: 1280px; margin: 0 auto; }

.contact-map { width:100%; height:384px; background:url(/assets/images/map.png) center center; }

.bx-pager { position: absolute; top: 0; left: 2em; height: 20px; }
.slider .bx-wrapper .bx-pager { text-align: left; }
.slider .bx-wrapper .bx-pager.bx-default-pager a { color: #FFF; background: rgba(255,255,255,0.5); }
.slider .bx-wrapper .bx-pager.bx-default-pager a.active { color: #FFA500; background: #FFF; }

.fancybox-slide--iframe .fancybox-content { max-width: 640px !important; }
.fancybox-slide--iframe iframe { width: 100%; }
.fancybox-slide--image .fancybox-image { max-width: 960px; height: auto; }

.publisher-toolbar ul { display: inline-block; list-style: none; margin: 0 0 1em 0; }
.publisher-toolbar li { display: inline-block; margin-right: 1em; }
.publisher-toolbar a::before { content: "View "; }
.link-edit { float: left; margin: 0 1em 1em 0; }
.publisher-toolbar a, .link-edit a { display: inline-block; font-size: 0.8em; padding: 0.5em 0.75em; border: 1px solid #CCC; }
.publisher-active-status a { font-weight: bold; background: #F7F7F7; }
.publisher-active-status a::before { content: "\2713  "; }

/* HELPERS */
.center { text-align: center; }
.clear { display: block; width: 100%; height: 0px; overflow: hidden; clear: both; }
.offscreen { position: absolute; left: -999em; }


/* FORMS */
form { max-width: 100%; margin: 0 0 1.5em 0;  }
fieldset { margin: 0 0 1.5em 0; }
legend { font-size: 1.6em; font-style: italic; font-weight: 400; color: #222; margin: 0 0 0.75em 0;}
form p { margin: 0 0 1em 0; }
form ul { list-style: none; margin: 0 0 1em 0; }		
label { display: block; cursor: pointer; margin: 0 0 0.5em 0; }
.label-note { display: block; color: #757575; margin: 0.5em 0; }
input, textarea, select { font-size: 16px; }
input[type='text'], input[type='email'], input[type='password'], input[type='url'], input[type='tel'] { width: 100%; height: 40px; text-indent: 5px; padding: 0; background: #FAFAFA; border: 1px solid #999; }
input[type='text']:focus, input[type='email']:focus, input[type='password']:focus, input[type='url']:focus, input[type='tel']:focus { background: #FFF; border: 1px solid #666; }
input[type='search'] { -webkit-appearance: none; border-radius: 0; }
select { width: 100%; height: 40px; border: 1px solid #CCC; }
textarea { width: 100%; height: 160px; background: #FAFAFA; border: 1px solid #999; }
textarea:focus { background: #FFF; border: 1px solid #666; }
button { padding: 1em; font-size: 1em; border: 0; }
::-moz-placeholder { color: #485253; }
:-ms-input-placeholder { color: #485253; }
::-webkit-input-placeholder { color: #485253; }

form.form-search { display: none; position: absolute; top: 35px; right: 0px; width: 300px; height: 60px; margin: 0; clear: both; z-index: 999; }
.form-search-divider { position: relative; right: 50px; width: 100%; height: 10px; background: url(/assets/images/bg-nav-triangle.png) no-repeat 100% 0; }
input.search-keywords { width: calc(100% - 4px); height: 39px; font-size: 16px; text-indent: 5px; border-top: 0; border-right: 1px solid #000; border-bottom: 1px solid #000; border-left: 1px solid #000; border-radius: 0; margin: 0 1px; -moz-appearance: none; -webkit-appearance: none; appearance: none; }
button.search-submit { float: right; width: 38px; height: 38px; font-size: 16px; text-align: center; padding: 0; background: #000; border: 0; margin: 0;  }
.search-submit img { display: inline-block; width: 20px; height: 20px; margin: 0; }

/* MESSAGES ERRORS ETC */
.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; }

/* COLOUR CODING */

.bg-nav-events { background-color: #002950 !important; }
.bg-nav-get-involved { background-color: #6A1012 !important; }
.bg-nav-heritage { background-color: #005654 !important; }
.bg-nav-parish-life { background-color: #93792C !important; }
.bg-nav-venue-hire { background-color: #531A5E !important; }
.bg-nav-visit { background-color: #531A5E !important; }
.bg-nav-whats-on { background-color: #004A80 !important; }

.bg-events { background-color: #004A80 !important; }
.bg-get-involved { background-color: #801B1D !important; }
.bg-heritage { background-color: #006764 !important; }
.bg-news { background-color: #A08032 !important; }
.bg-newsletters { background-color: #A08032 !important; }
.bg-parish-life { background-color: #A08032 !important; }
.bg-venue-hire { background-color: #671773 !important; }
.bg-visit { background-color: #671773 !important; }
.bg-whats-on { background-color: #004A80 !important; }

.text-events { color: #004A80 !important; }
.text-get-involved { color: #801B1D !important; }
.text-heritage { color: #006764 !important; }
.text-parish-life { color: #A08032 !important; }
.text-venue-hire { color: #671773 !important; }
.text-visit { color: #671773 !important; }
.text-whats-on { color: #004A80 !important; }
.text-light { color: #FFF !important; }

.submenu a.active.text-events { color: #004A80 !important; }
.submenu a.active.text-get-involved { color: #801B1D !important; }
.submenu a.active.text-heritage { color: #006764 !important; }
.submenu a.active.text-parish-life { color: #A08032 !important; }
.submenu a.active.text-venue-hire { color: #671773 !important; }
.submenu a.active.text-visit { color: #671773 !important; }
.submenu a.active.text-whats-on { color: #004A80 !important; }

.submenu2.events li.active > a { color: #004A80 !important; }
.submenu2.get-involved li.active > a { color: #801B1D !important; }
.submenu2.heritage li.active > a { color: #006764 !important; }
.submenu2.parish-life li.active > a { color: #A08032 !important; }
.submenu2.venue-hire li.active > a { color: #671773 !important; }
.submenu2.visit li.active > a { color: #671773 !important; }
.submenu2.whats-on li.active > a { color: #004A80 !important; }

.submenu2.events li.overview > a { color: #004A80 !important; }
.submenu2.get-involved li.overview > a { color: #801B1D !important; }
.submenu2.heritage li.overview > a { color: #006764 !important; }
.submenu2.parish-life li.overview > a { color: #A08032 !important; }
.submenu2.venue-hire li.overview > a { color: #671773 !important; }
.submenu2.visit li.overview > a { color: #671773 !important; }
.submenu2.whats-on li.overview > a { color: #004A80 !important; }

.bg-entries-get-involved, .bg-entries-heritage, .bg-entries-parish-life, .bg-entries-visit, .bg-entries-venue-hire { background-size: auto 100%; background-position: top center; }
.bg-entries-get-involved.bg01 { background-image: url(/assets/images/bg-entries-get-involved01.jpg); }
.bg-entries-get-involved.bg02 { background-image: url(/assets/images/bg-entries-get-involved02.jpg); }
.bg-entries-get-involved.bg03 { background-image: url(/assets/images/bg-entries-get-involved03.jpg); }
.bg-entries-get-involved.bg04 { background-image: url(/assets/images/bg-entries-get-involved04.jpg); }

.bg-entries-heritage.bg01 { background-image: url(/assets/images/bg-entries-heritage01.jpg); }
.bg-entries-heritage.bg02 { background-image: url(/assets/images/bg-entries-heritage02.jpg); }
.bg-entries-heritage.bg03 { background-image: url(/assets/images/bg-entries-heritage03.jpg); }
.bg-entries-heritage.bg04 { background-image: url(/assets/images/bg-entries-heritage04.jpg); }

.bg-entries-parish-life.bg01 { background-image: url(/assets/images/bg-entries-parish-life01.jpg); }
.bg-entries-parish-life.bg02 { background-image: url(/assets/images/bg-entries-parish-life02.jpg); }
.bg-entries-parish-life.bg03 { background-image: url(/assets/images/bg-entries-parish-life03.jpg); }
.bg-entries-parish-life.bg04 { background-image: url(/assets/images/bg-entries-parish-life04.jpg); }

.bg-entries-visit.bg01 { background-image: url(/assets/images/bg-entries-visit01.jpg); }
.bg-entries-visit.bg02 { background-image: url(/assets/images/bg-entries-visit02.jpg); }
.bg-entries-visit.bg03 { background-image: url(/assets/images/bg-entries-visit03.jpg); }
.bg-entries-visit.bg04 { background-image: url(/assets/images/bg-entries-visit04.jpg); }

.bg-entries-venue-hire.bg01 { background-image: url(/assets/images/bg-entries-visit01.jpg); }
.bg-entries-venue-hire.bg02 { background-image: url(/assets/images/bg-entries-visit02.jpg); }
.bg-entries-venue-hire.bg03 { background-image: url(/assets/images/bg-entries-visit03.jpg); }
.bg-entries-venue-hire.bg04 { background-image: url(/assets/images/bg-entries-visit04.jpg); }

/* MEDIA Q's */

@media screen and (min-width: 600px) {
.row-top { background: url(/assets/images/bg-top.jpg) no-repeat top; background-size: auto 100%; }
}

@media screen and (max-width: 1280px) {
.slide-caption { font-size: 1.6em; }
}

@media screen and (max-width: 1024px) {
.top { padding: 1em 2em; }
.nav { padding: 0 2em; }
.menu { font-size: 0.95em; }
.credit { float: none; }
.profiles-heading { font-size: 1.2em; }
}

@media screen and (max-width: 960px) {
.top { padding: 1em 1em; }
.nav { padding: 0 1em; }
.hero { margin: 0 -1.5em 1.5em -1.5em; }
.content { padding: 1.5em; }
.page-children { grid-template-columns: 1fr 1fr; }
.grid4 { grid-template-columns: 1fr 1fr; }
.page { display: grid; grid-gap: 2%; grid-template-columns: 25% 1fr; }
.section-intro { width: 100%; margin: 0 0 1.5em 0; }
.entry-intro { padding-right: 0; }
.grid-profiles { grid-template-columns: 1fr 1fr; }
.grid-whatson-item { grid-template-columns: 1fr; padding: 0 0 1em 0; margin: 0 0 1em 0; }
.grid-whatson-item:last-child { padding: 0; margin: 0; }
.whatson-title { padding: 0; }
.whatson-time { text-align: left; padding: 0.75em 0; border: 0; }
.whatson-notes { padding: 0; }


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

.whatson tbody tr td:last-child { display: none; }
.timeline-grid { grid-template-columns: 1fr 1fr 1fr; }	

}

@media screen and (max-width: 767px) {
body { font-size: 90%; }
.slide-caption { position: relative; bottom: 0; min-height: 60px; font-size: 1em; color: #FFF; padding: 0.5em 1em; background: #000; display: flex; flex-direction: column; justify-content: center;}

.logo a { width: 120px; height: 48px; }
.toplinks { display: none; }

.ss-menu { display: block; font-size: 0.8em; list-style: none; line-height: 1; text-align: right; padding-top: 5px; margin: 0; }
.ss-menu li { display: inline-block; text-align: center; margin-left: 0.5em; }
.ss-menu a { color: #000; text-decoration: none; }

.menu-search li, .menu-search li.menu-toggle { display: inline-block; width: 45px; height: 45px; text-align: center; padding: 0; margin-left: 0.4em; }
.menu-toggle { display: inline-block; width: 45px; height: 45px; font-family: "Work Sans", Helvetica, Arial, sans-serif; line-height: 45px; text-decoration: none; text-transform: uppercase; margin: 0; color: #FFF; padding: 0 0em; cursor: pointer; }

.menu-search.hide-on-mobile { display: none; }
.menu-search.show-on-mobile { display: block; }
input.menu-checkbox:checked + .menu-toggle + .menu { display:block; animation-name: m1; animation-duration: 0.25s; }

.menu { position: relative; display: none; width: calc(100% + 3.3em); line-height: 40px; padding: 0; margin: 0 -1.65em; clear: both; }
.menu li { position: relative; display: block; margin: 0; }
.menu li a { padding: 0 1em 0 2em; }
.menu li.menu-venue-hire { display: block; }
.menu li ul { display: none; width: 100%; font-size: 1em; }
.menu li ul li { display: block; }
.menu li ul li  a { padding: 0.75em 1em 0.75em 2em; }
.menu li:hover ul { position: relative; display: none; }
.menu li:hover { background-image: none; }
.menu li ul.menu-hidden { display: none; background: #CCC; }
.menu li a.menu-inner-toggle { position: absolute; top: 0; right: 1em; display: block; height: 40px; line-height: 40px; font-family: sans-serif; font-size: 1em; }

form.form-search { position: relative; top: 0; right: 0; left: 0; width: 100%; height: 40px; padding: 0; margin: 0 0 10px 0; }
.form-search-divider { display: none; right: 32px; }
input.search-keywords { width: calc(100% - 2px); margin: 0; }

.page { grid-gap: 1em; grid-template-columns: 1fr; }

.subnav-toggle { position: absolute; right: 0; display: block; width: 20px; height: 20px; text-decoration: none; background: #FFF; margin: 0; }
.subnav-toggle { display: inline-block; width: 20px; height: 20px; text-decoration: none; background: #FFF; margin: 0; }
.subnav-toggle span { display: block; width: 100%; height: 3px; margin: 2px 0; }
.subnav { display: none; padding: 0; border-top: 0; }
.subnav { position: absolute; width: 100%; top: 30px; right: 0; left: 0; padding: 0 1.5em; background: #EDEADD; z-index: 999; }
.subnav-divider { margin-top: 0; margin-right: -1.5em; margin-left: -1.5em; }

.grid3 { grid-template-columns: 1fr 1fr; }
.timeline-grid { grid-template-columns: 1fr 1fr; }
.cal td, .cal td span, .cal td a { height: 48px; }

.credit { float: none; }
.contact-map { width:100%; height:300px; }

}


@media screen and (max-width: 600px) {
.top { height: 74px; padding: 10px 1em; }
.logo { margin-bottom: 10px; }
.logo a { display: block; width: 74px; height: 74px; background: url(/assets/images/logo-small.svg) no-repeat; }
.ss-menu { padding-top: 22px; }
}


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

.page-children { grid-template-columns: 1fr; }
.grid2 { grid-template-columns: 1fr; }
.grid3 { grid-template-columns: 1fr; }
.grid4 { grid-template-columns: 1fr; }
.grid-entries { grid-template-columns: 1fr; margin: 0 0 1.5em 0; }
.grid-profiles { grid-template-columns: 1fr; }
.news-entries { grid-gap: 0; grid-template-columns: 1fr; }
.events-entries { grid-gap: 0; grid-template-columns: 1fr; }
.entry-block-image { float: none; width: 100%;  margin-right: 0; }

.cal caption { font-size: 1.2em; }
.cal td, .cal td span, .cal td a { height: 38px; }

}