@charset "UTF-8";
/** corner-bevel-old() mixin  Bevels corners of an element, in similar fashion as border-radius. Compatable down to IE 8. Works like any other block level element (almost).  @author  Antti Hiljá http://clubmate.fi @hiljaa @version 0.2 @link    http://clubmate.fi/css-beveled-corners-take-2-a-sass-mixin @link    http://github.com/hilja/beveled-corners  */
/** @file Provides a mixin to position a child over its offset parent using absolute positioning @author Tom Jenkins tom@itsravenous.com */
/** @param {CSS Length} offset from sides of parent */
/** @file Basic grid helpers @author Tom Jenkins tom@itsravenous.com */
/** @file Defines a "media block" mixin - image on left, text item on right @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
/** @file Provides an 'off-screening' mixin @author Tom Jenkins tom@itsravenous.com @exports offscreen, onscreen */
/** @file Clearfix helper @author Nicolas Gallagher http://nicolasgallagher.com/micro-clearfix-hack/  For modern browsers 1. The space content is one way to avoid an Opera bug when the contenteditable attribute is included anywhere else in the document. Otherwise it causes space to appear at the top and bottom of elements that are clearfixed. 2. The use of `table` rather than `block` is only necessary if using `:before` to contain the top-margins of child elements. */
.article--event:before, .main-footer:before, .main-nav:before, .news-teaser:before, .post-teaser:before, .project-teaser:before, .service-teaser:before, .social-nav > ul:before, .thumb-link-teaser:before, .calendar:before, .main-header:before, .page-article .wrapper:before, body.search .wrapper:before, .article--event:after, .main-footer:after, .main-nav:after, .news-teaser:after, .post-teaser:after, .project-teaser:after, .service-teaser:after, .social-nav > ul:after, .thumb-link-teaser:after, .calendar:after, .main-header:after, .page-article .wrapper:after, body.search .wrapper:after { content: " "; /* 1 */ display: table; /* 2 */ }

.article--event:after, .main-footer:after, .main-nav:after, .news-teaser:after, .post-teaser:after, .project-teaser:after, .service-teaser:after, .social-nav > ul:after, .thumb-link-teaser:after, .calendar:after, .main-header:after, .page-article .wrapper:after, body.search .wrapper:after { clear: both; }

/** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */
.article--event, .main-footer, .main-nav, .news-teaser, .post-teaser, .project-teaser, .service-teaser, .social-nav > ul, .thumb-link-teaser, .calendar, .main-header, .page-article .wrapper, body.search .wrapper { *zoom: 1; }

/** @file Filter system styles @author Tom Jenkins tom@itsravenous.com */
.filter-element { -moz-transition: -moz-transform 0.5s, opacity 0.5s; -o-transition: -o-transform 0.5s, opacity 0.5s; -webkit-transition: -webkit-transform 0.5s, opacity 0.5s; transition: transform 0.5s, opacity 0.5s; -moz-transform-origin: 50% 50% 50%; -ms-transform-origin: 50% 50% 50%; -webkit-transform-origin: 50% 50% 50%; transform-origin: 50% 50% 50%; }

.filter-element--is-hidden { -moz-transform: scale(0.8); -ms-transform: scale(0.8); -webkit-transform: scale(0.8); transform: scale(0.8); filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0); opacity: 0; }

/** @file Defines an offcanvas nested navigation patter @author Tom Jenkins tom@itsravenous.com */
@media screen and (max-width: 625px) { html, body { overflow-x: hidden; }
  html, body, .offcanvas-menu { min-height: 100%; }
  .offcanvas-container { position: relative; -webkit-transition: left 0.5s, -webkit-transform 0.5s; -moz-transition: left 0.5s, -moz-transform 0.5s; -ms-transition: left 0.5s, -ms-transform 0.5s; -o-transition: left 0.5s, -o-transform 0.5s; transition: left 0.5s, transform 0.5s; }
  .offcanvas-menu { position: absolute; left: -18rem; top: 0; bottom: 0; width: 18rem; }
  .offcanvas-menu .offcanvas-toggle { position: absolute; left: 0; top: 0; z-index: 1; }
  .offcanvas-container.offcanvas-active { position: relative; -webkit-transform: translate3d(18rem, 0, 0); -moz-transform: translate3d(18rem, 0, 0); -ms-transform: translate3d(18rem, 0, 0); -o-transform: translate3d(18rem, 0, 0); transform: translate3d(18rem, 0, 0); }
  .offcanvas-menu-list { position: absolute; top: 0; bottom: 0; width: 18rem; padding-top: 1.5em; overflow: hidden; }
  .offcanvas-menu-sublist { position: absolute; left: -18rem; top: 0; bottom: 0; z-index: 2; width: 18rem; -webkit-transition: left 0.5s, -webkit-transform 0.5s; -moz-transition: left 0.5s, -moz-transform 0.5s; -ms-transition: left 0.5s, -ms-transform 0.5s; -o-transition: left 0.5s, -o-transform 0.5s; transition: left 0.5s, transform 0.5s; overflow: hidden; }
  .offcanvas-menu-sublist.offcanvas-menu-sublist-active { -webkit-transform: translate3d(18rem, 0, 0); -moz-transform: translate3d(18rem, 0, 0); -ms-transform: translate3d(18rem, 0, 0); -o-transform: translate3d(18rem, 0, 0); transform: translate3d(18rem, 0, 0); } }
/** @file Defines offscreen and onscreen helpers @author Tom Jenkins tom@itsravenous.com */
/*! normalize.css v2.1.0 | MIT License | git.io/normalize */
/* ========================================================================== HTML5 display definitions ========================================================================== */
/** Correct `block` display not defined in IE 8/9. */
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }

/** Correct `inline-block` display not defined in IE 8/9. */
audio, canvas, video { display: inline-block; }

/** Prevent modern browsers from displaying `audio` without controls. Remove excess height in iOS 5 devices. */
audio:not([controls]) { display: none; height: 0; }

/** Address styling not present in IE 8/9. */
[hidden] { display: none; }

/* ========================================================================== Base ========================================================================== */
/** 1. Set default font family to sans-serif. 2. Prevent iOS text size adjust after orientation change, without disabling user zoom. */
html { font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif; /* 1 */ -webkit-text-size-adjust: 100%; /* 2 */ -ms-text-size-adjust: 100%; /* 2 */ }

/** Remove default margin. */
body { margin: 0; font-size: 1rem; }

/* ========================================================================== Links ========================================================================== */
/** Address `outline` inconsistency between Chrome and other browsers. */
a:focus { outline: thin dotted; }

/** Improve readability when focused and also mouse hovered in all browsers. */
a:active, a:hover { outline: 0; }

/* ========================================================================== Typography ========================================================================== */
/** Reset heading size and margins */
h1, h2, h3, h4, h5, h6 { margin: 0; font-size: 1rem; }

/** Address styling not present in IE 8/9, Safari 5, and Chrome. */
abbr[title] { border-bottom: 1px dotted; }

/** Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome. */
b, strong { font-weight: bold; }

/** Address styling not present in Safari 5 and Chrome. */
dfn { font-style: italic; }

/** Address differences between Firefox and other browsers. */
hr { -moz-box-sizing: content-box; box-sizing: content-box; height: 0; }

/** Address styling not present in IE 8/9. */
mark { background: #ff0; color: #000; }

/** Correct font family set oddly in Safari 5 and Chrome. */
code, kbd, pre, samp { font-family: monospace, serif; font-size: 1em; }

/** Improve readability of pre-formatted text in all browsers. */
pre { white-space: pre-wrap; }

/** Set consistent quote types. */
q { quotes: "\201C" "\201D" "\2018" "\2019"; }

/** Address inconsistent and variable font size in all browsers. */
small { font-size: 80%; }

/** Prevent `sub` and `sup` affecting `line-height` in all browsers. */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sup { top: -0.5em; }

sub { bottom: -0.25em; }

/* ========================================================================== Embedded content ========================================================================== */
/** Remove border when inside `a` element in IE 8/9. */
img { border: 0; }

/** Responsive media */
img, video { max-width: 100%; height: auto; }

/** Correct overflow displayed oddly in IE 9. */
svg:not(:root) { overflow: hidden; }

/* ========================================================================== Figures ========================================================================== */
/** Address margin not present in IE 8/9 and Safari 5. */
figure { margin: 0; }

/* ========================================================================== Forms ========================================================================== */
/** Define consistent border, margin, and padding. */
fieldset { margin: 0; padding: 0; }

/** 1. Correct `color` not being inherited in IE 8/9. 2. Remove padding so people aren't caught out if they zero out fieldsets. */
legend { border: 0; /* 1 */ padding: 0; /* 2 */ }

/** 1. Correct font family not being inherited in all browsers. 2. Correct font size not being inherited in all browsers. 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome. */
button, input, select, textarea { font-family: inherit; /* 1 */ font-size: 100%; /* 2 */ margin: 0; /* 3 */ }

/** Address Firefox 4+ setting `line-height` on `input` using `!important` in the UA stylesheet. */
button, input { line-height: normal; }

/** Address inconsistent `text-transform` inheritance for `button` and `select`. All other form control elements do not inherit `text-transform` values. Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+. Correct `select` style inheritance in Firefox 4+ and Opera. */
button, select { text-transform: none; }

/** 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` and `video` controls. 2. Correct inability to style clickable `input` types in iOS. 3. Improve usability and consistency of cursor style between image-type `input` and others. */
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ }

/** Re-set default cursor for disabled elements. */
button[disabled], html input[disabled] { cursor: default; }

/** 1. Address box sizing set to `content-box` in IE 8/9. 2. Remove excess padding in IE 8/9. */
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ }

/** 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome (include `-moz` to future-proof). */
input[type="search"] { -webkit-appearance: textfield; /* 1 */ -moz-box-sizing: content-box; -webkit-box-sizing: content-box; /* 2 */ box-sizing: content-box; }

/** Remove inner padding and search cancel button in Safari 5 and Chrome on OS X. */
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** Remove inner padding and border in Firefox 4+. */
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

/** 1. Remove default vertical scrollbar in IE 8/9. 2. Improve readability and alignment in all browsers. */
textarea { overflow: auto; /* 1 */ vertical-align: top; /* 2 */ }

/* ========================================================================== Tables ========================================================================== */
/** Remove most spacing between table cells. */
table { border-collapse: collapse; border-spacing: 0; }

/* ========================================================================== Remove border from iframes ========================================================================== */
iframe { border: none; }

/* ========================================================================== All elements to use border-box model (padding does not add to defined width) ========================================================================== */
* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; *behavior: url(../js/ie/boxsizing.htc); }

/** Definition list styles */
dl { overflow: hidden; }

dt, dd { float: left; }

dt { clear: left; }

dd { margin: 0 0 0 0.625rem; font-weight: bold; }

/** @file Provides various button styles @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
.button, .booking-widget-link { border: 0 solid; padding: 0.625rem; background: #f44f29; color: #fff; text-decoration: none; text-align: center; }
.button:hover, .booking-widget-link:hover, .button:focus, .booking-widget-link:focus { background: #df330b; color: #fff; }

.booking-widget-link:after { display: inline-block; position: relative; top: -0.1em; margin-left: 0.5em; vertical-align: middle; font-size: 0.8em; content: '▶'; }

/** @file helpers/_discreet_list.scss */
.article-img-nav, .breadcrumbs, .filter ul, .sort ul, .gallery-controls, .main-nav ul, .related-items ul, .search-filters ul, .section-nav, .social-nav > ul, .tag-list .tag-list-label, .tag-list ul, .theme-nav, .calendar-venue ul, .calendar-days { margin: 0; padding: 0; list-style: none; }

/** @file Styles the from the archive heading @author Tom Jenkins tom@itsravenous.com */
/** @file Defines a site copyright atom @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
.futr-hashtag-link { font-weight: bold; font-size: 1.125rem; }

/** @file Defines various text heading styles @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
.page-section-title, .page-title, .article-title, .related-items-title, .festival-calendars .sectioned-content-section-title, .sectioned-content--accordion .sectioned-content-section-title { padding: 0.5em; background: #f44f29; color: #fff; }

.calendar-venue h1 { padding: 1em 0.5em; background: rgba(204, 204, 204, 0.5); color: #000; text-align: center; }

.search-filters a, .section-nav a.is-active, .calendar-days li.is-active a { padding: 0.75em; background: #333; color: #fff; font-size: 1.125rem; font-weight: 700; text-decoration: none; text-align: center; }
.search-filters a a, .section-nav a.is-active a, .calendar-days li.is-active a a { text-decoration: none; color: #fff; }
.search-filters a:hover, .section-nav a.is-active:hover, .calendar-days li.is-active a:hover, .search-filters a:focus, .section-nav a.is-active:focus, .calendar-days li.is-active a:focus, .search-filters a a:hover, .section-nav a.is-active a:hover, .calendar-days li.is-active a a:hover, .search-filters a a:focus, .section-nav a.is-active a:focus, .calendar-days li.is-active a a:focus { color: #fff; }

.section-nav a:not(.is-active), .calendar-days li a { padding: 0.75em; background: #999999; color: #e3e3e3; font-size: 1.125rem; font-weight: 700; }
.section-nav a:not(.is-active) a, .calendar-days li a a { text-decoration: none; color: #e3e3e3; }
.section-nav a:hover:not(.is-active), .calendar-days li a:hover, .section-nav a:focus:not(.is-active), .calendar-days li a:focus, .section-nav a:not(.is-active) a:hover, .calendar-days li a a:hover, .section-nav a:not(.is-active) a:focus, .calendar-days li a a:focus { color: #fff; }

.from-the-archive-heading, .full-teaser--alt .full-teaser-title, .ideas-list-idea .ideas-list-idea-title, .promo-title, .section-nav--alt a.is-active { background: #333; background: #333; background-clip: padding-box; border-color: transparent; border-style: solid; border-width: 0.75em 0; height: 100%; position: relative; padding: 0 0.75em; color: #fff; font-size: 1.125rem; font-weight: 700; text-decoration: none; text-align: center; }
.from-the-archive-heading:before, .full-teaser--alt .full-teaser-title:before, .ideas-list-idea .ideas-list-idea-title:before, .promo-title:before, .section-nav--alt a.is-active:before, .from-the-archive-heading:after, .full-teaser--alt .full-teaser-title:after, .ideas-list-idea .ideas-list-idea-title:after, .promo-title:after, .section-nav--alt a.is-active:after { border-color: inherit; box-sizing: border-box; border-style: inherit; content: ""; display: block; left: 0; position: absolute; right: 0; z-index: -1; }
.from-the-archive-heading:before, .full-teaser--alt .full-teaser-title:before, .ideas-list-idea .ideas-list-idea-title:before, .promo-title:before, .section-nav--alt a.is-active:before { border-bottom-color: #333; border-width: 0 0.75em 0.75em 0; top: -0.71em; }
.from-the-archive-heading:after, .full-teaser--alt .full-teaser-title:after, .ideas-list-idea .ideas-list-idea-title:after, .promo-title:after, .section-nav--alt a.is-active:after { background-color: #333; height: 0.75em; bottom: -0.71em; }
.from-the-archive-heading a, .full-teaser--alt .full-teaser-title a, .ideas-list-idea .ideas-list-idea-title a, .promo-title a, .section-nav--alt a.is-active a { text-decoration: none; color: #fff; }
.from-the-archive-heading:hover, .full-teaser--alt .full-teaser-title:hover, .ideas-list-idea .ideas-list-idea-title:hover, .promo-title:hover, .section-nav--alt a.is-active:hover, .from-the-archive-heading:focus, .full-teaser--alt .full-teaser-title:focus, .ideas-list-idea .ideas-list-idea-title:focus, .promo-title:focus, .section-nav--alt a.is-active:focus, .from-the-archive-heading a:hover, .full-teaser--alt .full-teaser-title a:hover, .ideas-list-idea .ideas-list-idea-title a:hover, .promo-title a:hover, .section-nav--alt a.is-active a:hover, .from-the-archive-heading a:focus, .full-teaser--alt .full-teaser-title a:focus, .ideas-list-idea .ideas-list-idea-title a:focus, .promo-title a:focus, .section-nav--alt a.is-active a:focus { color: #fff; }

.section-nav--alt a:not(.is-active) { background: #999999; background: #999999; background-clip: padding-box; border-color: transparent; border-style: solid; border-width: 0.75em 0; height: 100%; position: relative; padding: 0 0.75em; color: #e3e3e3; font-size: 1.125rem; font-weight: 700; text-decoration: none; text-align: center; }
.section-nav--alt a:not(.is-active):before, .section-nav--alt a:not(.is-active):after { border-color: inherit; box-sizing: border-box; border-style: inherit; content: ""; display: block; left: 0; position: absolute; right: 0; z-index: -1; }
.section-nav--alt a:not(.is-active):before { border-bottom-color: #999999; border-width: 0 0.75em 0.75em 0; top: -0.71em; }
.section-nav--alt a:not(.is-active):after { background-color: #999999; height: 0.75em; bottom: -0.71em; }
.section-nav--alt a:not(.is-active) a { color: #e3e3e3; text-decoration: none; }
.section-nav--alt a:hover:not(.is-active), .section-nav--alt a:focus:not(.is-active), .section-nav--alt a:not(.is-active) a:hover, .section-nav--alt a:not(.is-active) a:focus { color: #fff; }

/** @file Imports the FE icon set font and defines icon classes @author Tom Jenkins tom@itsravenous.com */
@font-face { font-family: 'fefont'; src: url("../fonts/fefont.eot"); src: url("../fonts/fefont.eot?#iefix") format("embedded-opentype"), url("../fonts/fefont.woff") format("woff"), url("../fonts/fefont.ttf") format("truetype"), url("../fonts/fefont.svg#fefont") format("svg"); font-weight: normal; font-style: normal; }
.icon, .skip-to-nav, .main-nav-close, .social-nav a, .social-nav .social-nav-twitter, .social-nav .social-nav-vimeo, .social-nav .social-nav-instagram, .social-nav .social-nav-soundcloud, .social-nav .social-nav-flickr, .social-nav .social-nav-googleplus, [class^="icon-"], [class*=" icon-"] { display: inline-block; font-family: 'fefont'; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

.icon-googleplus:before, .social-nav .social-nav-googleplus:before { content: "\67"; }

.icon-instagram:before, .flickr-gallery-launcher a:before, .social-nav .social-nav-instagram:before { content: "\69"; }

.icon-flickr:before, .social-nav .social-nav-flickr:before { content: "\6b"; }

.icon-facebook:before, .social-nav .social-nav-facebook:before { content: "\66"; }

.icon-pinterest:before { content: "\70"; }

.icon-soundcloud:before, .social-nav .social-nav-soundcloud:before { content: "\73"; }

.icon-twitter:before, .social-nav .social-nav-twitter:before { content: "\74"; }

.icon-vimeo:before, .social-nav .social-nav-vimeo:before { content: "\76"; }

.icon-close:before, .main-nav-close:before { content: "\e600"; }

.icon-menu:before, .skip-to-nav:before { content: "\e601"; }

/** @file Defiens style for a basic text link @author Tom Jenkins tom@itsravenous.com @requires _settings */
a { color: #333; text-decoration: underline; -moz-transition: color 0.2s; -o-transition: color 0.2s; -webkit-transition: color 0.2s; transition: color 0.2s; }
a:focus, a:hover { color: #666; }

/** @file Provides nav toggle/jump atoms @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
.skip-to-nav { font-size: 0; color: transparent; text-decoration: none; }
.skip-to-nav:before { font-size: 2.25rem; color: #000; }

.main-nav-close { color: transparent; text-align: left; font-size: 0; }
.main-nav-close:before { display: inline-block; width: 3.1rem; height: 3.1rem; line-height: 2; color: #fff; font-size: 1.5rem; }
.main-nav-close:hover { color: transparent; }

/** @file Page section title @author Tom Jenkins tom@itsravenous.com */
/** @file Provides a page title style @author Tom Jenkins tom@itsravenous.com @requires ../atoms/_headings.scss */
/** @file Defines a site copyright atom @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
.site-copyright { font-weight: bold; font-size: 1.125rem; }

/** @file Defines styles for an article @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
.article-title { font-size: 1.5rem; }
.article-title.with-language-switcher { position: relative; padding-right: 6rem; }
.article-title.with-language-switcher .language-switcher { position: absolute; right: 0.625rem; top: 0.9375rem; }

.article-date, .article-author a { font-weight: 700; }

.article-imgs { background: #f44f29; }
.article-imgs img { display: block; }

.article-body { line-height: 1.6; }
.article-body p { margin-bottom: 1.25rem; }

.article .article-title { margin-bottom: 1px; }
.article .article-imgs { margin-bottom: 1.25rem; }

.article-subnav a { display: block; padding: 0.625rem; background: #999999; color: #ececec; text-decoration: none; }
.article-subnav a:focus, .article-subnav a:hover { color: #fff; }

.article-subnav a.is-active { background: #666; color: #fff; }

.article-subnav li { border-left: 1px solid #fff; }
.article-subnav li:first-child { border-left: none; }

.article-subnav ul { margin: 0; padding: 0; list-style: none; }

.article-subnav--2 ul { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.article-subnav--2 ul:before, .article-subnav--2 ul:after { content: " "; /* 1 */ display: table; /* 2 */ }
.article-subnav--2 ul:after { clear: both; }
.article-subnav--2 ul { *zoom: 1; }
.article-subnav--2 ul > * { float: left; width: 50%; margin-bottom: 0; }
.article-subnav--2 ul > *:nth-child(2n + 1) { clear: left; }

.article-subnav--3 ul { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.article-subnav--3 ul:before, .article-subnav--3 ul:after { content: " "; /* 1 */ display: table; /* 2 */ }
.article-subnav--3 ul:after { clear: both; }
.article-subnav--3 ul { *zoom: 1; }
.article-subnav--3 ul > * { float: left; width: 33.33333%; margin-bottom: 0; }
.article-subnav--3 ul > *:nth-child(3n + 1) { clear: left; }

.article-subnav--4 ul { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.article-subnav--4 ul:before, .article-subnav--4 ul:after { content: " "; /* 1 */ display: table; /* 2 */ }
.article-subnav--4 ul:after { clear: both; }
.article-subnav--4 ul { *zoom: 1; }
.article-subnav--4 ul > * { float: left; width: 25%; margin-bottom: 0; }
.article-subnav--4 ul > *:nth-child(4n + 1) { clear: left; }

.article-subnav--5 ul { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.article-subnav--5 ul:before, .article-subnav--5 ul:after { content: " "; /* 1 */ display: table; /* 2 */ }
.article-subnav--5 ul:after { clear: both; }
.article-subnav--5 ul { *zoom: 1; }
.article-subnav--5 ul > * { float: left; width: 20%; margin-bottom: 0; }
.article-subnav--5 ul > *:nth-child(5n + 1) { clear: left; }

.article-subnav--6 ul { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.article-subnav--6 ul:before, .article-subnav--6 ul:after { content: " "; /* 1 */ display: table; /* 2 */ }
.article-subnav--6 ul:after { clear: both; }
.article-subnav--6 ul { *zoom: 1; }
.article-subnav--6 ul > * { float: left; width: 16.66667%; margin-bottom: 0; }
.article-subnav--6 ul > *:nth-child(6n + 1) { clear: left; }

.article--event .article-imgs + .gallery-controls { position: relative; float: right; z-index: 5; margin: -4rem 1.25rem 0 0; }
.article--event .article-body { margin-bottom: 1.25rem; }
@media screen and (min-width: 625px) { .article--event .article-body { float: right; width: calc(100% - 17rem); }
  .article--event .booking-widget { position: relative; left: 15rem; width: 15rem; margin-left: -15rem; } }

/** @file Defines styles for an article image navigation @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
.article-img-nav li { display: inline-block; margin-right: 1.25rem; }

/** @file Defines styles for a booking widget, assuming an eventbrite iframe @author Tom Jenkins tom@itsravenous.com @requires _settings */
.booking-widget-title { font-size: 1rem; font-weight: bold; color: #f44f29; }

.booking-widget-link { padding: 0.625rem; font-size: 1.5rem; font-weight: 700; }

.booking-widget-details-value { font-size: 0.85rem; }

.booking-widget-details dt, .booking-widget-details dd { display: block; float: none; margin-left: 0; }
.booking-widget-details dt p, .booking-widget-details dd p { margin: 0 0 0.5em 0; }
.booking-widget-details dt { margin-bottom: 0.625rem; font-weight: 700; }
.booking-widget-details dd { margin-bottom: 1.25rem; font-weight: 300; }
.booking-widget-details .booking-widget-details-value { margin-bottom: 1.25rem; }

.booking-widget .booking-widget-title { margin-bottom: 1.25rem; }
.booking-widget .related-item--with-img { margin-bottom: 0.625rem; }
.booking-widget iframe { max-width: 100%; }
.booking-widget .booking-widget-link { display: none; }
@media screen and (max-width: 625px) { .booking-widget iframe { display: none; }
  .booking-widget .booking-widget-link { display: block; } }

.booking-widget--linkonly iframe { display: none; }
.booking-widget--linkonly .booking-widget-link { display: block; }

/** @file Defines styles for a Form field module @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
.breadcrumbs { padding: 0.625rem; background: #f9e7e2; color: #f44f29; }
.breadcrumbs li { display: inline-block; }
.breadcrumbs li:before { content: '/ '; }
.breadcrumbs li:first-child:before { content: ''; }
.breadcrumbs li a { color: #f44f29; }
.breadcrumbs li a:hover, .breadcrumbs li a:focus { color: #000; }

#breadcrumbs { margin: 0px; }

/** @file Festival teaser (mod to post-teaser) @author Tom Jenkins tom@itsravenous.com */
.festival-teaser--hero h1 a { display: block; position: relative; }

.festival-teaser--hero .post-teaser-title { background: #000; background: rgba(0, 0, 0, 0.5); color: #fff; font-size: 1.5rem; padding: 0.625rem; }

.festival-teaser--hero { position: relative; }
.festival-teaser--hero .post-teaser-title { position: absolute; bottom: 0; width: 100%; }

/** @file Defines styles for a Form field module @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires compass */
input[type="text"], input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="email"], input[type="month"], input[type="number"], input[type="password"], input[type="range"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="week"], textarea, select { padding: 0.625rem 0.69444rem; border: 1px solid #e3e3e3; font-size: 0.8rem; -moz-transition: border-color, 0.2s; -o-transition: border-color, 0.2s; -webkit-transition: border-color, 0.2s; transition: border-color, 0.2s; }
input[type="text"]:focus, input[type="text"]:hover, input[type="color"]:focus, input[type="color"]:hover, input[type="date"]:focus, input[type="date"]:hover, input[type="datetime"]:focus, input[type="datetime"]:hover, input[type="datetime-local"]:focus, input[type="datetime-local"]:hover, input[type="email"]:focus, input[type="email"]:hover, input[type="month"]:focus, input[type="month"]:hover, input[type="number"]:focus, input[type="number"]:hover, input[type="password"]:focus, input[type="password"]:hover, input[type="range"]:focus, input[type="range"]:hover, input[type="search"]:focus, input[type="search"]:hover, input[type="tel"]:focus, input[type="tel"]:hover, input[type="time"]:focus, input[type="time"]:hover, input[type="url"]:focus, input[type="url"]:hover, input[type="week"]:focus, input[type="week"]:hover, textarea:focus, textarea:hover, select:focus, select:hover { border-color: #999999; }

input { -webkit-appearance: none; border-radius: 0; }

/** @file Defines styles for a filter or sort widget @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
.filter, .sort { font-size: 0.8rem; }
.filter a, .sort a { display: block; padding: 0.625rem; background: #f69b86; color: #fff; text-decoration: none; }
.filter a.is-active, .sort a.is-active, .filter a:hover, .sort a:hover, .filter a:focus, .sort a:focus { background: #f44f29; }
.filter [class*="-label"], .sort [class*="-label"] { font-weight: bold; color: #666; }
.filter [class*="-label"], .sort [class*="-label"], .filter > ul, .sort > ul { display: block; margin-bottom: 0.3125rem; }
@media screen and (min-width: 600px) { .filter [class*="-label"], .sort [class*="-label"], .filter > ul, .sort > ul { display: inline-block; margin-right: 1.25rem; vertical-align: middle; } }
.filter > ul > li, .sort > ul > li { float: left; margin-right: 1px; }
.filter > ul > li > ul, .sort > ul > li > ul { position: absolute; left: -9999px; min-width: 10em; }
.filter > ul > li:hover ul, .sort > ul > li:hover ul { left: auto; }

.filter-year:after, .filter-author:after { padding-left: 4em; content: '▼'; font-size: 0.7rem; }

/** @file Flickr gallery launcher module @author Tom Jenkins tom@itsravenous.com */
.flickr-gallery-launcher { position: relative; }
.flickr-gallery-launcher a { text-decoration: none; }
.flickr-gallery-launcher a:before { position: absolute; top: 50%; left: 50%; z-index: 1; margin-left: -0.5em; margin-top: -0.5em; padding: 0.625rem 0.3125rem 0.625rem 0.625rem; font-family: 'fefont'; font-size: 3em; text-align: center; line-height: 1; border-radius: 0.625rem; background: #000; color: #fff; filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=30); opacity: 0.3; -moz-transition: opacity 0.2s; -o-transition: opacity 0.2s; -webkit-transition: opacity 0.2s; transition: opacity 0.2s; }
.flickr-gallery-launcher a:hover:before { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50); opacity: 0.5; }
.flickr-gallery-launcher.flickr-gallery-launcher--single .justified-gallery { height: auto !important; }
.flickr-gallery-launcher.flickr-gallery-launcher--single .justified-gallery a { position: static; display: none; }
.flickr-gallery-launcher.flickr-gallery-launcher--single .justified-gallery a:first-child { display: block; }

/** @file Defines styles for a "full teaser" 			- includes a large(ish) thumbnail, a title and a description, with a read more link @author Tom Jenkins tom@itsravenous.com @requires _settings */
.full-teaser-title { font-size: 1rem; font-weight: 300; }

.full-teaser-body { padding-right: 0.625rem; }

.full-teaser { position: relative; }
.full-teaser .full-teaser-img { position: relative; display: block; margin-bottom: 1.25rem; }
@media screen and (min-width: 800px) { .full-teaser .full-teaser-img:hover:before { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(244, 79, 41, 0.5); content: ''; } }
.full-teaser .full-teaser-img img { display: block; }
.full-teaser .full-teaser-title, .full-teaser .full-teaser-body { margin-bottom: 0.625rem; }
.full-teaser .full-teaser-title, .full-teaser .full-teaser-body, .full-teaser .full-teaser-read-more { padding: 0 0.3125rem; }

.full-teaser--alt .full-teaser-title { margin-bottom: 0; }

/** @file Defines styles for image gallery controls @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
.gallery-controls .gallery-controls-link { color: transparent; font-size: 0; text-decoration: none; }
.gallery-controls .gallery-controls-link:after { padding: 0.3125rem; color: #fff; font-size: 2.25rem; text-shadow: 0 0 1px #000; content: '•'; }
.gallery-controls .gallery-controls-link:hover:after { color: #f44f29; }
.gallery-controls li { display: inline-block; }

/** @file Defines styles for a hero banner element @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
.hero-item-img { position: relative; }
.hero-item-img img { display: block; }
.hero-item-img:after { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAAA1BMVEX0Tykg5C1wAAAAAXRSTlN/gFy0ywAAAAxJREFUeJxjYmCCQgAARgALnYW8OgAAAABJRU5ErkJggg=='); background: rgba(244, 79, 41, 0.5); content: ''; }

.hero-item-caption { padding: 1.25rem; font-size: 1.125rem; font-weight: 700; color: #fff; }
@media screen and (min-width: 625px) { .hero-item-caption { font-size: 2.25rem; } }
.hero-item-caption p { margin: 0; }

.hero-item { position: relative; }
.hero-item .hero-item-caption { position: absolute; width: 100%; bottom: 0; }

.hero--text { padding: 0.625rem; background: #f44f29; color: #fff; font-weight: 700; font-size: 1.5rem; }
.hero--text h1 { font-size: 1.5rem; }
.hero--text p:first-child { margin-top: 0; }
.hero--text p:last-child { margin-bottom: 0; }

/** @file Hero slider styles @author Tom Jenkins tom@itsravenous.com */
.soliloquy-container .soliloquy .soliloquy-caption { position: absolute; bottom: 1.25rem; left: 0; width: 100%; padding: 2.5rem 2.5rem 2.5rem 0; }
@media screen and (max-width: 600px) { .soliloquy-container .soliloquy .soliloquy-caption { bottom: 0.625rem; padding: 0.625rem 1.25rem; } }
.soliloquy-container .soliloquy .soliloquy-caption .soliloquy-caption-inside { background: none; text-align: left; font-size: 2rem; line-height: 2rem; font-weight: 700; }
@media screen and (max-width: 600px) { .soliloquy-container .soliloquy .soliloquy-caption .soliloquy-caption-inside { font-size: 1.25rem; line-height: 1.2; } }

/** @file Defines styles for the ideas grid @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
.ideas-list-idea .full-teaser { margin-bottom: 1.25rem; }

@media screen and (min-width: 625px) { .ideas-list { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .ideas-list:before, .ideas-list:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .ideas-list:after { clear: both; }
  .ideas-list { *zoom: 1; }
  .ideas-list > * { float: left; width: 33.33333%; margin-bottom: 0; }
  .ideas-list > *:nth-child(3n + 1) { clear: left; }
  .ideas-list .ideas-list-idea { border-left: 10px solid #fff; }
  .ideas-list .ideas-list-idea:first-child { border-left-width: 0; border-right: 10px solid #fff; }
  .ideas-list .ideas-list-idea:nth-child(2) { position: relative; border-left-width: 5px; border-right: 5px solid #fff; }
  .ideas-list .ideas-list-idea:nth-child(2):before { position: absolute; top: 0; left: 0; bottom: 0; right: 0; z-index: -1; background: #f9e7e2; content: ''; } }

/** @file Ideas subnav */
/** @file Language switcher @author Tom Jenkins tom@itsravenous.com */
.language-switcher a { color: #fff; font-size: 1.125rem; text-decoration: none; }
.language-switcher a.is-active { pointer-events: none; font-weight: 700; }

.language-switcher { color: #fff; font-weight: 300; font-size: 0; }
.language-switcher:before { font-size: 1.125rem; content: '['; }
.language-switcher:after { font-size: 1.125rem; content: ']'; }
.language-switcher a { display: inline-block; }
.language-switcher a:before { content: '|'; }
.language-switcher a:first-child { margin-right: 0.3125rem; }
.language-switcher a:first-child:before { display: none; }

/** @file Defines the main footer styles @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
.main-footer { background: #f9e7e2; color: #f44f29; font-size: 0.8rem; padding: 0.625rem; text-align: justify; }
.main-footer a { color: #f44f29; }
.main-footer a:focus, .main-footer a:hover { color: #000; }
.main-footer .mailing-link { font-size: 1.125rem; font-weight: 700; }
.main-footer .site-copyright, .main-footer .site-credit-back-to-top, .main-footer .futr-hashtag-link, .main-footer .mailing-link { display: inline-block; margin-bottom: 0.625rem; text-align: left; }
@media screen and (min-width: 625px) { .main-footer .main-footer-inner { max-width: 625px; margin: 0 auto; }
  .main-footer .site-copyright, .main-footer .site-credit-back-to-top, .main-footer .futr-hashtag-link { float: left; margin-bottom: 0; }
  .main-footer .site-copyright { width: 30%; }
  .main-footer .site-credit-back-to-top { width: 45%; }
  .main-footer .site-credit-back-to-top .site-credit { display: inline-block; margin: 0 2em 0.5em 0; }
  .main-footer .mailing-link { margin-right: 1.25rem; } }
@media screen and (min-width: 800px) { .main-footer .main-footer-inner { max-width: 940px; }
  .main-footer .site-copyright { width: 35%; }
  .main-footer .mailing-link, .main-footer .futr-hashtag-link { float: right; width: auto; } }

/** @file Defines a basic navigation module  @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires atoms/_discreet_list.scss @requires compass */
.main-nav a { display: block; padding: 0.5em; background: #666; color: #fff; font-weight: 700; text-align: center; text-decoration: none; }
.main-nav a:focus, .main-nav a:hover, .main-nav a.is-active { background: #f44f29; color: #fff; }

.main-nav li ul { background: #333; }

@media screen and (max-width: 625px) { .main-nav { border-right: 1px solid #fff; background: #363636; }
  .main-nav a { margin-right: 1px; padding: 1em 0.5em; background: #333; border-bottom: 1px solid #fff; } }
.main-nav .main-nav-close { display: inline-block; float: right; margin: 0; border-bottom: none; }
@media screen and (min-width: 625px) { .main-nav .main-nav-close { display: none; } }
.main-nav > ul { top: 3.1rem; }
.main-nav li { margin-bottom: 1px; }
@media screen and (min-width: 625px) { .main-nav { width: 24em; }
  .main-nav li { float: left; width: 6em; padding-left: 1px; }
  .main-nav li ul { display: none; } }

/** @file Defines styles for a mini search widget @author Tom Jenkins tom@itsravenous.com @requires _settings @requires mixins/_offscreen */
.mini-search label { position: absolute; left: -9999px; }
.mini-search input { width: 100%; border: none; background: #999999; color: #fff; }
.mini-search input:hover { background: #8c8c8c; }
.mini-search input:focus { background: gray; outline: none; }

/** @file Defines styles for a news post teaser 			- includes a thumbnail, a title, a date and an author @author Tom Jenkins tom@itsravenous.com @requires _settings */
.news-teaser-date { font-weight: 300; }

.news-teaser-title { font-size: 1rem; font-weight: 300; }

.news-teaser-author a { font-weight: 300; }

.news-teaser { font-size: 0.8rem; }
@media screen and (min-width: 625px) { .news-teaser .news-teaser-img { float: left; width: 200px; margin-right: 1.25rem; } }
.news-teaser .news-teaser-date, .news-teaser .news-teaser-title, .news-teaser .news-teaser-author { display: block; margin-bottom: 0.3125rem; }

/** @file Defines styles for a post teaser 			- includes a thumbnail and a title @author Tom Jenkins tom@itsravenous.com @requires _settings */
.post-teaser-title { font-size: 1rem; font-weight: 300; }

@media screen and (min-width: 800px) { .post-teaser:hover .post-teaser-img:before { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(244, 79, 41, 0.5); content: ''; } }
.post-teaser .post-teaser-img { display: block; position: relative; margin-bottom: 0.3125rem; }
.post-teaser .post-teaser-img img { display: block; }
.post-teaser .post-teaser-title { display: block; margin-bottom: 0.3125rem; }

.post-teaser--alt .post-teaser-title { font-weight: 700; }
@media screen and (min-width: 625px) { .post-teaser--alt .post-teaser-img { float: left; margin-right: 1.25rem; } }

/** @file Defines styles for a project filter list 			- includes a thumbnail, a title, a date and an author @author Tom Jenkins tom@itsravenous.com @requires _settings */
/** @file Defines styles for a project post teaser 			- includes a thumbnail, a title, a date and an author @author Tom Jenkins tom@itsravenous.com @requires _settings */
.project-teaser-title { font-size: 1rem; font-weight: 300; }

@media screen and (min-width: 800px) { .project-teaser:hover .full-teaser-img:before { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(244, 79, 41, 0.5); content: ''; } }
.project-teaser .full-teaser-img { position: relative; display: block; }
.project-teaser .full-teaser-img img { display: block; }
.project-teaser .project-teaser-title { display: block; margin-bottom: 0.3125rem; }

/** @file Defines styles for a Form field module @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
.promo { font-size: 1rem; position: relative; }
@media screen and (min-width: 800px) { .promo { font-size: 1.125rem; } }
.promo > * { margin-bottom: 0.625rem; }

/** @file Defines styles for a related items list @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
@media screen and (min-width: 800px) { .related-items-title { padding-top: 1.7em !important; } }

.related-items h2 { padding: 0 0.625rem; font-weight: 700; }

.related-items ul { margin-bottom: 1.25rem; padding: 0.625rem; }

.related-item--with-img { font-size: 0.85rem; overflow: hidden; }
.related-item--with-img img { float: left; margin-right: 0.625rem; }

.related-items li { overflow: hidden; }

.related-items li.related-item--with-img { margin-bottom: 0.625rem; }

.related-items { background: #f9e7e2; }
.related-items .related-items-title { margin-bottom: 0.625rem; }
.related-items .theme-nav { margin-bottom: 0; }

/** @file Responsive video embed @author Tom Jenkins tom@itsravenous.com */
.rve iframe { width: 100%; }

/** @file Defines styles for a search filter @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
.search-filters ul { font-size: 0; }
.search-filters li { display: inline-block; }
@media screen and (min-width: 600px) { .search-filters li { display: block; } }
.search-filters a { display: inline-block; border: 1px solid #fff; }
@media screen and (min-width: 600px) { .search-filters a { display: block; } }

/** @file Defines styles for section tabs @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
@media screen and (max-width: 800px) { .section-nav a { font-size: 1rem !important; } }

.section-nav a:not(.is-active) { text-align: center; }

.section-nav a.is-active { text-align: center; }

.section-nav--alt a:not(.is-active) { text-align: center; }

.section-nav--alt a.is-active { text-align: center; }

.lt-ie9 .section-nav a { padding: 0.75em; background: #999999; }
.lt-ie9 .section-nav a.is-active { padding: 0; background: #333; }

.section-nav--secondary li, .section-nav--secondary a { font-size: 1rem !important; }

.section-nav { border-bottom: 1px solid #fff; }
.section-nav a { display: block; }
@media screen and (min-width: 625px) { .section-nav li { border-left: 1px solid #fff; }
  .section-nav li:first-child { border-left-width: 0; } }

@media screen and (min-width: 625px) { .section-nav--2 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .section-nav--2:before, .section-nav--2:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .section-nav--2:after { clear: both; }
  .section-nav--2 { *zoom: 1; }
  .section-nav--2 > * { float: left; width: 50%; margin-bottom: 0; }
  .section-nav--2 > *:nth-child(2n + 1) { clear: left; }
  .section-nav--3 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .section-nav--3:before, .section-nav--3:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .section-nav--3:after { clear: both; }
  .section-nav--3 { *zoom: 1; }
  .section-nav--3 > * { float: left; width: 33.33333%; margin-bottom: 0; }
  .section-nav--3 > *:nth-child(3n + 1) { clear: left; }
  .section-nav--4 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .section-nav--4:before, .section-nav--4:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .section-nav--4:after { clear: both; }
  .section-nav--4 { *zoom: 1; }
  .section-nav--4 > * { float: left; width: 25%; margin-bottom: 0; }
  .section-nav--4 > *:nth-child(4n + 1) { clear: left; }
  .section-nav--5 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .section-nav--5:before, .section-nav--5:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .section-nav--5:after { clear: both; }
  .section-nav--5 { *zoom: 1; }
  .section-nav--5 > * { float: left; width: 20%; margin-bottom: 0; }
  .section-nav--5 > *:nth-child(5n + 1) { clear: left; }
  .section-nav--6 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .section-nav--6:before, .section-nav--6:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .section-nav--6:after { clear: both; }
  .section-nav--6 { *zoom: 1; }
  .section-nav--6 > * { float: left; width: 16.66667%; margin-bottom: 0; }
  .section-nav--6 > *:nth-child(6n + 1) { clear: left; }
  .section-nav--7 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .section-nav--7:before, .section-nav--7:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .section-nav--7:after { clear: both; }
  .section-nav--7 { *zoom: 1; }
  .section-nav--7 > * { float: left; width: 14.28571%; margin-bottom: 0; }
  .section-nav--7 > *:nth-child(7n + 1) { clear: left; }
  .section-nav--8 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .section-nav--8:before, .section-nav--8:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .section-nav--8:after { clear: both; }
  .section-nav--8 { *zoom: 1; }
  .section-nav--8 > * { float: left; width: 12.5%; margin-bottom: 0; }
  .section-nav--8 > *:nth-child(8n + 1) { clear: left; }
  .section-nav--9 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .section-nav--9:before, .section-nav--9:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .section-nav--9:after { clear: both; }
  .section-nav--9 { *zoom: 1; }
  .section-nav--9 > * { float: left; width: 11.11111%; margin-bottom: 0; }
  .section-nav--9 > *:nth-child(9n + 1) { clear: left; }
  .section-nav--10 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .section-nav--10:before, .section-nav--10:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .section-nav--10:after { clear: both; }
  .section-nav--10 { *zoom: 1; }
  .section-nav--10 > * { float: left; width: 10%; margin-bottom: 0; }
  .section-nav--10 > *:nth-child(10n + 1) { clear: left; } }
@media screen and (min-width: 625px) { .ideas-nav li:first-child, .project-filters li:first-child { border-right: 10px solid #fff; }
  .ideas-nav li:nth-child(2), .project-filters li:nth-child(2) { border-left: 5px solid #fff; border-right: 5px solid #fff; }
  .ideas-nav li:last-child, .project-filters li:last-child { border-left: 10px solid #fff; } }

/** @file Defines styles for a service post teaser 			- includes a thumbnail, a title, a date and an author @author Tom Jenkins tom@itsravenous.com @requires _settings */
.service-teaser-title { font-size: 1rem; font-weight: 300; }

@media screen and (min-width: 800px) { .service-teaser:hover .full-teaser-img:before { position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(244, 79, 41, 0.5); content: ''; } }
.service-teaser .full-teaser-img { position: relative; display: block; }
.service-teaser .full-teaser-img img { display: block; }
.service-teaser .service-teaser-title { display: block; margin-bottom: 0.3125rem; }

/** @file Defines a social links module @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires atoms/_discreet_list.scss */
.social-nav { background: #999999; }
.social-nav a { font-size: 0; color: transparent; background: #999999; -moz-transition: background-color 0.2s; -o-transition: background-color 0.2s; -webkit-transition: background-color 0.2s; transition: background-color 0.2s; }
.social-nav a:before { display: inline-block; width: 1.3em; padding: 0.25em 0; text-align: center; color: #fff; font-size: 1.5rem; }
.social-nav a:focus, .social-nav a:hover { background: #f44f29; }

.social-nav { border-bottom: 1px solid #fff; }
.social-nav a { text-decoration: none; }
.social-nav li { float: left; border-left: 1px solid #fff; }

/** @file Defines styles for a Table module @author Tom Jenkins tom@itsravenous.com */
table caption { border-bottom: 4px solid #999999; text-align: left; }
table th, table td { padding: 0.625rem; background: #fff; color: #666; text-align: left; }
table td { border-bottom: 1px solid #999999; }

.table--zebra tr:nth-child(odd) td { background: #e3e3e3; }

/** @file Defines styles for a tag list @author Tom Jenkins tom@itsravenous.com @requires _settings */
.tag-list .tag-list-label, .tag-list ul { display: inline-block; }
.tag-list a { padding: 0.625rem; background: #999999; color: #fff; text-decoration: none; }
.tag-list a:hover, .tag-list a:focus { background: #666; }
.tag-list li, .tag-list a { display: inline-block; }
.tag-list li { margin-right: 1px; margin-bottom: 1px; }

/** @file Defines styles for a theme navigation list @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires helpers/_discreet_list.scss */
.theme-nav { padding: 0.625rem; background: #fff; }

.theme-nav li { display: inline-block; }
.theme-nav li:before { content: '/ '; }
.theme-nav li:first-child:before { content: ''; }

.theme-nav a { color: #f44f29; }
.theme-nav a:focus, .theme-nav a:hover { color: #000; }

/** @file Defines styles for a "thumb link teaser" 			- simply a small thumbnail and a title linked to a piece of content @author Tom Jenkins tom@itsravenous.com @requires _settings @requires mixins/_media_block; */
.thumb-link-teaser { display: block; font-weight: 300; font-size: 0.85rem; text-decoration: underline; }
@media screen and (min-width: 800px) { .thumb-link-teaser { font-size: 1rem; } }
.thumb-link-teaser > img { float: left; width: 60px; margin-right: 0.625rem; }
.thumb-link-teaser > img + * { display: block; margin-left: 60px; }
.thumb-link-teaser img + span { padding-right: 0.625rem; }
.thumb-link-teaser > img { width: 50px; }
@media screen and (min-width: 800px) { .thumb-link-teaser > img { width: 60px; } }

/** @file Defines various component styles for a calendar @author Tom Jenkins tom@itsravenous.com @requires mixins/_grid @requires helpers/_discreet_list */
.calendar-event { background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFAQMAAAC3obSmAAAAA1BMVEX0Tykg5C1wAAAADElEQVR4nGNiYIJCAABGAAudhbw6AAAAAElFTkSuQmCC'); background: #f44f29; -moz-transition: opacity 0.2s, max-height 0.2s; -o-transition: opacity 0.2s, max-height 0.2s; -webkit-transition: opacity 0.2s, max-height 0.2s; transition: opacity 0.2s, max-height 0.2s; opacity: 0.9; font-size: 0.8rem; position: relative; }
.calendar-event:hover { opacity: 1; }
.calendar-event h2 { font-size: 0.8rem; text-decoration: underline; }
.calendar-event p { font-style: italic; }
.calendar-event a { text-decoration: none; }
.calendar-event a:hover { color: #000; }
.calendar-event a { display: block; padding: 0.625rem; height: 100%; }
.calendar-event p { margin-top: 0; }

.calendar-event--wrapper .calendar-event-times { height: 0; overflow: hidden; font-size: 0.1; color: transparent; }
.calendar-event--wrapper > h2 { padding: 0.625rem; text-decoration: none; }
.calendar-event--wrapper h3 { font-size: 0.8rem; margin-bottom: 0.625rem; }

.calendar-venue h1 { font-size: 0.8rem; }
.calendar-venue .calendar-event { border: 1px solid #fff; }

.calendar-venues--2 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.calendar-venues--2:before, .calendar-venues--2:after { content: " "; /* 1 */ display: table; /* 2 */ }
.calendar-venues--2:after { clear: both; }
.calendar-venues--2 { *zoom: 1; }
.calendar-venues--2 > * { float: left; width: 50%; margin-bottom: 0; }
.calendar-venues--2 > *:nth-child(2n + 1) { clear: left; }

.calendar-venues--3 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.calendar-venues--3:before, .calendar-venues--3:after { content: " "; /* 1 */ display: table; /* 2 */ }
.calendar-venues--3:after { clear: both; }
.calendar-venues--3 { *zoom: 1; }
.calendar-venues--3 > * { float: left; width: 33.33333%; margin-bottom: 0; }
.calendar-venues--3 > *:nth-child(3n + 1) { clear: left; }

.calendar-venues--4 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.calendar-venues--4:before, .calendar-venues--4:after { content: " "; /* 1 */ display: table; /* 2 */ }
.calendar-venues--4:after { clear: both; }
.calendar-venues--4 { *zoom: 1; }
.calendar-venues--4 > * { float: left; width: 25%; margin-bottom: 0; }
.calendar-venues--4 > *:nth-child(4n + 1) { clear: left; }

.calendar-venues--5 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.calendar-venues--5:before, .calendar-venues--5:after { content: " "; /* 1 */ display: table; /* 2 */ }
.calendar-venues--5:after { clear: both; }
.calendar-venues--5 { *zoom: 1; }
.calendar-venues--5 > * { float: left; width: 20%; margin-bottom: 0; }
.calendar-venues--5 > *:nth-child(5n + 1) { clear: left; }

.calendar-venues--6 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.calendar-venues--6:before, .calendar-venues--6:after { content: " "; /* 1 */ display: table; /* 2 */ }
.calendar-venues--6:after { clear: both; }
.calendar-venues--6 { *zoom: 1; }
.calendar-venues--6 > * { float: left; width: 16.66667%; margin-bottom: 0; }
.calendar-venues--6 > *:nth-child(6n + 1) { clear: left; }

.calendar-venues--7 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.calendar-venues--7:before, .calendar-venues--7:after { content: " "; /* 1 */ display: table; /* 2 */ }
.calendar-venues--7:after { clear: both; }
.calendar-venues--7 { *zoom: 1; }
.calendar-venues--7 > * { float: left; width: 14.28571%; margin-bottom: 0; }
.calendar-venues--7 > *:nth-child(7n + 1) { clear: left; }

.calendar-venues--8 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.calendar-venues--8:before, .calendar-venues--8:after { content: " "; /* 1 */ display: table; /* 2 */ }
.calendar-venues--8:after { clear: both; }
.calendar-venues--8 { *zoom: 1; }
.calendar-venues--8 > * { float: left; width: 12.5%; margin-bottom: 0; }
.calendar-venues--8 > *:nth-child(8n + 1) { clear: left; }

.calendar-venues--9 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.calendar-venues--9:before, .calendar-venues--9:after { content: " "; /* 1 */ display: table; /* 2 */ }
.calendar-venues--9:after { clear: both; }
.calendar-venues--9 { *zoom: 1; }
.calendar-venues--9 > * { float: left; width: 11.11111%; margin-bottom: 0; }
.calendar-venues--9 > *:nth-child(9n + 1) { clear: left; }

.calendar-venues--10 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
.calendar-venues--10:before, .calendar-venues--10:after { content: " "; /* 1 */ display: table; /* 2 */ }
.calendar-venues--10:after { clear: both; }
.calendar-venues--10 { *zoom: 1; }
.calendar-venues--10 > * { float: left; width: 10%; margin-bottom: 0; }
.calendar-venues--10 > *:nth-child(10n + 1) { clear: left; }

.calendar-days { font-size: 0.8rem; }
.calendar-days li a { display: block; font-size: 0.85rem; text-align: center; }
@media screen and (min-width: 800px) { .calendar-days li a { font-size: 1rem; } }
.calendar-days li.is-active a { font-size: 0.85rem; text-align: center; }
@media screen and (min-width: 800px) { .calendar-days li.is-active a { font-size: 1rem; } }
@media screen and (min-width: 625px) { .calendar-days li { border-left: 1px solid #fff; }
  .calendar-days li:first-child { border: none; }
  .calendar-days.calendar-days--2 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .calendar-days.calendar-days--2:before, .calendar-days.calendar-days--2:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .calendar-days.calendar-days--2:after { clear: both; }
  .calendar-days.calendar-days--2 { *zoom: 1; }
  .calendar-days.calendar-days--2 > * { float: left; width: 50%; margin-bottom: 0; }
  .calendar-days.calendar-days--2 > *:nth-child(2n + 1) { clear: left; }
  .calendar-days.calendar-days--3 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .calendar-days.calendar-days--3:before, .calendar-days.calendar-days--3:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .calendar-days.calendar-days--3:after { clear: both; }
  .calendar-days.calendar-days--3 { *zoom: 1; }
  .calendar-days.calendar-days--3 > * { float: left; width: 33.33333%; margin-bottom: 0; }
  .calendar-days.calendar-days--3 > *:nth-child(3n + 1) { clear: left; }
  .calendar-days.calendar-days--4 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .calendar-days.calendar-days--4:before, .calendar-days.calendar-days--4:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .calendar-days.calendar-days--4:after { clear: both; }
  .calendar-days.calendar-days--4 { *zoom: 1; }
  .calendar-days.calendar-days--4 > * { float: left; width: 25%; margin-bottom: 0; }
  .calendar-days.calendar-days--4 > *:nth-child(4n + 1) { clear: left; }
  .calendar-days.calendar-days--5 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .calendar-days.calendar-days--5:before, .calendar-days.calendar-days--5:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .calendar-days.calendar-days--5:after { clear: both; }
  .calendar-days.calendar-days--5 { *zoom: 1; }
  .calendar-days.calendar-days--5 > * { float: left; width: 20%; margin-bottom: 0; }
  .calendar-days.calendar-days--5 > *:nth-child(5n + 1) { clear: left; }
  .calendar-days.calendar-days--6 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .calendar-days.calendar-days--6:before, .calendar-days.calendar-days--6:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .calendar-days.calendar-days--6:after { clear: both; }
  .calendar-days.calendar-days--6 { *zoom: 1; }
  .calendar-days.calendar-days--6 > * { float: left; width: 16.66667%; margin-bottom: 0; }
  .calendar-days.calendar-days--6 > *:nth-child(6n + 1) { clear: left; }
  .calendar-days.calendar-days--7 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .calendar-days.calendar-days--7:before, .calendar-days.calendar-days--7:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .calendar-days.calendar-days--7:after { clear: both; }
  .calendar-days.calendar-days--7 { *zoom: 1; }
  .calendar-days.calendar-days--7 > * { float: left; width: 14.28571%; margin-bottom: 0; }
  .calendar-days.calendar-days--7 > *:nth-child(7n + 1) { clear: left; } }

.calendar-timeline .calendar-timeline-slot { padding: 0.625rem; background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAQAAAAnZu5uAAAAEklEQVR4nGM6Uw+DTAxwQJAJAEJTBoImq7PTAAAAAElFTkSuQmCC'); background: rgba(204, 204, 204, 0.5); border-bottom: 1px solid #fff; }

.calendar.calendar--with-timeline .calendar-timeline { display: none; }
@media screen and (min-width: 625px) { .calendar.calendar--with-timeline .calendar-timeline { display: block; float: left; width: 5rem; }
  .calendar.calendar--with-timeline .calendar-venues { min-height: 400px; margin-left: -5rem; float: left; width: 100%; padding-left: 5rem; } }
.calendar.calendar--with-timeline .calendar-venue > ul { position: relative; }
.calendar.calendar--with-timeline .calendar-event { width: 100%; }
@media screen and (max-width: 625px) { .calendar .calendar-event { position: static !important; top: auto !important; height: auto !important; min-height: 0 !important; max-height: none !important; margin: 0 !important; } }
.calendar .calendar-swipe-left, .calendar .calendar-swipe-right { display: none; }
@media screen and (max-width: 625px) { .calendar { overflow: auto; -webkit-overflow-scrolling: touch; }
  .calendar.calendar--swipeable { overflow: hidden; -webkit-overflow-scrolling: auto; }
  .calendar.calendar--swipeable .calendar-venues { position: relative; }
  .calendar.calendar--swipeable .calendar-venue h1 { position: relative; }
  .calendar.calendar--swipeable .calendar-venue h1 .calendar-swipe-left, .calendar.calendar--swipeable .calendar-venue h1 .calendar-swipe-right { display: block; position: absolute; top: 0; padding: 0.83333rem; text-decoration: none; }
  .calendar.calendar--swipeable .calendar-venue h1 .calendar-swipe-left { left: 1.25rem; content: '◀'; }
  .calendar.calendar--swipeable .calendar-venue h1 .calendar-swipe-right { right: 1.25rem; content: '▶'; }
  .calendar.calendar--swipeable .calendar-venue:first-child .calendar-swipe-left, .calendar.calendar--swipeable .calendar-venue:last-child .calendar-swipe-right { display: none; }
  .calendar.calendar--swipeable:before { display: block; padding: 0.625rem; background: rgba(244, 79, 41, 0.5); color: #fff; font-weight: 700; content: 'Swipe left/right to switch venue'; }
  .calendar.calendar--swipeable.calendar--single-venue:before { display: none; }
  .calendar .calendar-venues--1 { width: 320px; }
  .calendar .calendar-venues--2 { width: 640px; }
  .calendar .calendar-venues--3 { width: 960px; }
  .calendar .calendar-venues--4 { width: 1280px; }
  .calendar .calendar-venues--5 { width: 1600px; }
  .calendar .calendar-venues--6 { width: 1920px; }
  .calendar .calendar-venues--7 { width: 2240px; }
  .calendar .calendar-venues--8 { width: 2560px; }
  .calendar .calendar-venues--9 { width: 2880px; }
  .calendar .calendar-venues--10 { width: 3200px; } }

/** @file Styles for the festival calendars container @author Tom Jenkins tom@itsravenous.com */
/** @file Festival list (mod to teaser-list) @author Tom Jenkins tom@itsravenous.com */
@media screen and (min-width: 600px) { .active-festival-list { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .active-festival-list:before, .active-festival-list:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .active-festival-list:after { clear: both; }
  .active-festival-list { *zoom: 1; }
  .active-festival-list > * { float: left; width: 50%; margin-bottom: 1.25rem; }
  .active-festival-list > *:nth-child(2n + 1) { clear: left; }
  .active-festival-list > :first-child, .active-festival-list > :nth-child(2n+1) { padding-right: 10px; }
  .active-festival-list > :nth-child(4n) { padding-left: 5px; padding-right: 5px; } }

/** @file Defines styles for a Form module @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @exports %form-vertical, %form-actions, %form--no-legends */
/** @file Defines a site masthead module with a logo and accompanying strapline @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires compass */
.main-header .logo { width: 215px; height: 58px; }
.main-header .social-search-wrapper { position: absolute; left: -9999px; }
.main-header .skip-to-content { position: absolute; left: -9999px; }
.main-header .skip-to-nav { float: right; margin: 0.3125rem 1.25rem; }
.main-header .main-nav { top: -0.625rem; }
@media screen and (min-width: 625px) { .main-header .skip-to-nav { position: absolute; left: -9999px; }
  .main-header .logo { float: left; margin-top: 0.625rem; margin-right: 1.25rem; }
  .main-header .main-nav { float: left; top: auto; }
  .main-header .social-search-wrapper { position: static; left: auto; float: right; }
  .main-header .mini-search { margin-left: 1px; } }
@media screen and (min-width: 630px) and (max-width: 860px) { .main-header .main-nav { float: left; clear: left; }
  .main-header .social-search-wrapper { float: left; } }

/** @file Defines styles for a news post teaser list @author Tom Jenkins tom@itsravenous.com @requires _settings */
.news-teasers > * { width: 100%; margin-bottom: 1.25rem; }
@media screen and (min-width: 600px) { .news-teasers { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .news-teasers:before, .news-teasers:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .news-teasers:after { clear: both; }
  .news-teasers { *zoom: 1; }
  .news-teasers > * { float: left; width: 50%; margin-bottom: 1.25rem; }
  .news-teasers > *:nth-child(2n + 1) { clear: left; } }

/** @file Defines styles for a project post teaser list @author Tom Jenkins tom@itsravenous.com @requires _settings */
/** @file Defines styles for various promo box lists @author Tom Jenkins tom@itsravenous.com */
.promo-list-3 > .full-teaser { margin-bottom: 1.25rem; }
@media screen and (min-width: 625px) { .promo-list-3 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .promo-list-3:before, .promo-list-3:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .promo-list-3:after { clear: both; }
  .promo-list-3 { *zoom: 1; }
  .promo-list-3 > * { float: left; width: 33.33333%; margin-bottom: 1.25rem; }
  .promo-list-3 > *:nth-child(3n + 1) { clear: left; }
  .promo-list-3 > .promo, .promo-list-3 > .full-teaser { border-left: 10px solid #fff; }
  .promo-list-3 > .promo:first-child, .promo-list-3 > .full-teaser:first-child { border-left-width: 0; border-right: 10px solid #fff; }
  .promo-list-3 > .promo:nth-child(2), .promo-list-3 > .full-teaser:nth-child(2) { border-left-width: 5px; border-right: 5px solid #fff; background: #f9e7e2; } }

.promo-list-4 > .full-teaser { margin-bottom: 1.25rem; }
@media screen and (min-width: 625px) { .promo-list-4 { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .promo-list-4:before, .promo-list-4:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .promo-list-4:after { clear: both; }
  .promo-list-4 { *zoom: 1; }
  .promo-list-4 > * { float: left; width: 25%; margin-bottom: 1.25rem; }
  .promo-list-4 > *:nth-child(4n + 1) { clear: left; }
  .promo-list-4 > .promo, .promo-list-4 > .full-teaser { border-left: 1px solid #fff; }
  .promo-list-4 > .promo:first-child, .promo-list-4 > .full-teaser:first-child { border: 0 solid; } }

/** @file Defines a sectioned content module which can be skinned as a tab widget or accordion using the below silent selectors @author Tom Jenkins tom@itsravenous.com @exports .sectioned-content, %accordion, %tabwidget */
.sectioned-content--tabs .sectioned-content-nav li a { display: inline-block; padding: 0.625rem; color: #000; text-decoration: none; }

.sectioned-content--tabs .sectioned-content-nav ul { margin: 0; padding: 0; }
.sectioned-content--tabs .sectioned-content-nav li { display: inline-block; }

.sectioned-content--tabs .sectioned-content-section { padding: 1.25rem; }

.has-js .sectioned-content--tabs .sectioned-content-section { position: absolute; left: -9999px; }
.has-js .sectioned-content--tabs .sectioned-content-section > h1 { position: absolute; left: -9999px; }
.has-js .sectioned-content--tabs .sectioned-content-section.is-visible { position: static; left: auto; }

.festival-calendars .sectioned-content-section, .sectioned-content--accordion .sectioned-content-section { margin-bottom: 0.625rem; }
.festival-calendars .sectioned-content-nav, .sectioned-content--accordion .sectioned-content-nav { position: absolute; left: -9999px; }

.has-js .festival-calendars .sectioned-content-section .sectioned-content-section-content, .has-js .sectioned-content--accordion .sectioned-content-section .sectioned-content-section-content { position: absolute; left: -9999px; }
.has-js .festival-calendars .sectioned-content-section .sectioned-content-section-title, .has-js .sectioned-content--accordion .sectioned-content-section .sectioned-content-section-title { cursor: pointer; }
.has-js .festival-calendars .sectioned-content-section .sectioned-content-section-title:after, .has-js .sectioned-content--accordion .sectioned-content-section .sectioned-content-section-title:after { float: right; content: '▶'; font-size: 0.8rem; }
.has-js .festival-calendars .sectioned-content-section.is-visible .sectioned-content-section-title:after, .has-js .sectioned-content--accordion .sectioned-content-section.is-visible .sectioned-content-section-title:after { float: right; content: '▼'; }
.has-js .festival-calendars .sectioned-content-section.is-visible .sectioned-content-section-content, .has-js .sectioned-content--accordion .sectioned-content-section.is-visible .sectioned-content-section-content { position: static; left: auto; }

/** @file Defines styles for a service post teaser list @author Tom Jenkins tom@itsravenous.com @requires _settings */
/** @file Defines a widget to contain sort and filter controls @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
.sort-filters .sort, .sort-filters .filter { display: inline-block; margin-bottom: 1px; }

/** @file Defines styles for a project post teaser list @author Tom Jenkins tom@itsravenous.com @requires _settings */
.teaser-list > *, .projects-teasers > *, .services-teasers > * { width: 100%; margin-bottom: 1.25rem; }
@media screen and (min-width: 600px) { .teaser-list, .projects-teasers, .services-teasers { /** For IE 6/7 only Include this rule to trigger hasLayout and contain floats. */ }
  .teaser-list:before, .projects-teasers:before, .services-teasers:before, .teaser-list:after, .projects-teasers:after, .services-teasers:after { content: " "; /* 1 */ display: table; /* 2 */ }
  .teaser-list:after, .projects-teasers:after, .services-teasers:after { clear: both; }
  .teaser-list, .projects-teasers, .services-teasers { *zoom: 1; }
  .teaser-list > *, .projects-teasers > *, .services-teasers > * { float: left; width: 33.33333%; margin-bottom: 1.25rem; }
  .teaser-list > *:nth-child(3n + 1), .projects-teasers > *:nth-child(3n + 1), .services-teasers > *:nth-child(3n + 1) { clear: left; }
  .teaser-list > :first-child, .projects-teasers > :first-child, .services-teasers > :first-child, .teaser-list > :nth-child(3n+1), .projects-teasers > :nth-child(3n+1), .services-teasers > :nth-child(3n+1) { padding-right: 10px; }
  .teaser-list > :nth-child(3n+2), .projects-teasers > :nth-child(3n+2), .services-teasers > :nth-child(3n+2) { padding-left: 5px; padding-right: 5px; }
  .teaser-list > :nth-child(3n), .projects-teasers > :nth-child(3n), .services-teasers > :nth-child(3n) { padding-left: 10px; } }

/** @file Defines a page wrapper element  @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
/** @file Defines an article-style page template layout @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires compass */
.page-article .wrapper .article { margin-bottom: 1.25rem; }
@media screen and (min-width: 800px) { .page-article .wrapper .article { float: left; width: 100%; padding-right: 17rem; }
  .page-article .wrapper .related-items { float: left; width: 16rem; margin-left: -16rem; } }
.page-article .wrapper .article--no-related { float: none; padding-right: 0; }

/** @file Defines the default page template layout @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires compass */
.page-article, body, .page-home, body.search { padding-top: 0.625rem; }
.custom-background.page-article, body.custom-background, .custom-background.page-home { background-size: cover; }
@media screen and (min-width: 625px) { .page-article, body, .page-home, body.search { border-top: 16px solid #f9e7e2; padding-top: 1px; } }
.page-article .wrapper, body .wrapper, .page-home .wrapper { position: relative; z-index: 1; max-width: 940px; min-height: 40rem; margin: 0 auto; padding-left: 0.625rem; padding-right: 0.625rem; background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAQAAAAnZu5uAAAAEklEQVR4nGP6Px8GmRjggCATAJLBCCEjRZzfAAAAAElFTkSuQmCC'); background: rgba(255, 255, 255, 0.625); }
.page-article .wrapper .breadcrumbs, body .wrapper .breadcrumbs, .page-home .wrapper .breadcrumbs { display: inline-block; margin-bottom: 1px; }
.page-article .wrapper .main-header, body .wrapper .main-header, .page-home .wrapper .main-header, .page-article .wrapper .hero, body .wrapper .hero, .page-home .wrapper .hero { margin-bottom: 1px; }
.page-article .wrapper .sort-filters, body .wrapper .sort-filters, .page-home .wrapper .sort-filters { position: relative; z-index: 999; margin: 1.25rem 0; }
@media screen and (max-width: 625px) { .page-article .wrapper .section-nav, body .wrapper .section-nav, .page-home .wrapper .section-nav { position: absolute; left: -9999px; } }
.page-article .main-footer, body .main-footer, .page-home .main-footer { margin-top: 5rem; }

html[class*="-ie"] .page-article .wrapper, html[class*="-ie"] body .wrapper, html[class*="-ie"] .page-home .wrapper { width: 940px; }

/** @file Defines an event page template layout @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires compass */
.single-events .main-header { height: 4.55rem; }

/** @file Defines the default page template layout @author Tom Jenkins tom@itsravenous.com @requires _settings.scss @requires compass */
.page-home .wrapper .promo-list-4 { margin-bottom: 1.25rem; }

/** @file Defines the default page template layout @author Tom Jenkins tom@itsravenous.com @requires _settings.scss */
@media screen and (min-width: 600px) { body.search .wrapper .search-filters { float: left; width: 20%; }
  body.search .wrapper .search-results-list { float: right; width: 78%; } }

/* No files to import found in pages/** */
/** @file _debug.scss Debug/testing styles - should be empty on launch. */
