/* paths */
/* We can't use absolute paths here, because those are dependent on Django's
STATIC_URL setting. However, django-compressor consistently places the compiled
CSS into ${STATIC_URL}/CACHE/css/ regardless of compilation mode, so we can
reliably use relative paths to get back to STATIC_URL. */
/* grid settings */
/* screen breakpoints */
/* 800px */
/* 900px */
/* 1200px */
/* 1600px */
/* colours */
/* darker to lighter */
/* misc sizing */
.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }
  .visuallyhidden:active, .visuallyhidden:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto; }

.visuallyvisible {
  clip: none;
  height: auto;
  width: auto;
  margin: auto;
  overflow: visible;
  position: initial; }

/* Utility variable - you should never need to modify this */
/* Ensure grid columns are set to border-boxes. This is essential */
/* Our row container */
/* Our column container */
/* Push adds left padding */
/* Pull adds right padding */
/* only used in places where padding not applied to same elements as row or row-flush
 * most of the time this class should be applied directly to the html elements */
.page-editor .content-wrapper {
  margin-bottom: 10em; }
.page-editor .breadcrumb {
  margin-top: -1.2em;
  margin-bottom: 2em; }
.page-editor .modal .breadcrumb {
  margin: 0;
  background-color: transparent; }
  .page-editor .modal .breadcrumb a {
    color: #666666; }
  .page-editor .modal .breadcrumb li:hover {
    background-color: #e6e6e6; }
  .page-editor .modal .breadcrumb .home {
    padding-left: 0; }

/* An object is the basic wrapper around any field or group of fields in the editor interface */
.object {
  position: relative;
  overflow: hidden;
  padding-left: 20px;
  padding-right: 20px;
  /* Special full-width, one-off fields i.e a single text or textarea input */
  /* Object controls */
  /* Menu of other blocks to be added at each position */
  /* special panel for the publishing fields, requires a bit more pizzazz */
  /* removes top padding from multiples used within another panel */ }
  @media screen and (min-width: 50em) {
    .object {
      padding-left: 50px;
      padding-right: 50px; } }
  .object:first-child {
    border: 0; }
  .object.focused {
    border-color: #54d0d0; }
  .object fieldset {
    padding-top: 4em;
    padding-left: 0;
    padding-right: 0; }
  .object .object-help {
    display: block;
    position: relative;
    z-index: 1;
    top: 1em;
    padding-right: 1.5%;
    margin-top: 4em;
    opacity: 1;
    padding-left: 3em; }
    .object .object-help:before {
      display: block;
      float: left;
      content: "?";
      border: 1px solid #666666;
      color: #666666;
      border-radius: 100%;
      height: 15px;
      width: 15px;
      line-height: 15px;
      text-align: center;
      font-size: 1.1em;
      margin-left: -2em;
      margin-top: 0.3em; }
  .object:hover .object-help {
    opacity: 1; }
  .object > h2, .object.single-field label {
    -webkit-font-smoothing: auto;
    background: #fcf2f2;
    text-transform: uppercase;
    padding: 0.9em 0 0.9em 4.1em;
    font-size: 0.95em;
    margin: 0 0 0.2em 0;
    line-height: 1.5em;
    font-weight: normal;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1;
    overflow: hidden; }
    .object > h2:before, .object.single-field label:before {
      text-shadow: none;
      font-family: wagtail;
      text-transform: none;
      content: "q";
      text-align: center;
      display: block;
      position: absolute;
      z-index: 2;
      font-size: 2em;
      top: 0px;
      line-height: 1.8em;
      left: 0px;
      width: 1.7em;
      color: white;
      padding: 0;
      margin: 0;
      cursor: pointer;
      background-color: #f37e77;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale; }
  .object .richtext {
    padding-top: 1em;
    /* to provide space for editor buttons */
    padding-bottom: 1em; }
    .object .richtext.inEditMode {
      padding-top: 5em;
      /* to provide space for editor buttons */
      padding-bottom: 2em; }
  .object.single-field h2, .object.single-field .object-help {
    display: none;
    /* The field label is used instead */ }
  .object.full h2 {
    display: none;
    /* The field label is used instead */ }
  .object.full .object-help {
    display: block; }
  .object.full fieldset {
    display: block;
    float: none; }
    .object.full fieldset .help {
      display: none; }
  .object.full li {
    padding: 0; }
  .object.full .richtext {
    padding-top: 3em;
    /* to provide space for editor buttons */
    padding-bottom: 3em; }
    .object.full .richtext.inEditMode {
      padding-top: 5em;
      /* to provide space for editor buttons */
      padding-bottom: 5em; }
  .object.full .error-message {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 2em; }
    @media screen and (min-width: 50em) {
      .object.full .error-message {
        padding-left: 50px;
        padding-right: 50px; } }
  .object.full .error, .object.full .error input, .object.full .error textarea, .object.full .error .richtext {
    background-color: #feedee; }
  .object.stream-field {
    padding: 0;
    /* Despite "BlockField" being generic and available for use outside StreamField,
        this is the most unique handle available to undo the width set on .field-content 
        everywhere else in wagtail. If other types of field become available for use as 
        a direct child of Streamfield, this will need updating */ }
    .object.stream-field label {
      white-space: nowrap; }
    .object.stream-field.required .field > label:after {
      display: none; }
    .object.stream-field > fieldset {
      box-sizing: border-box;
      display: inline;
      float: left;
      width: 100%;
      padding-right: 1.5%;
      padding-left: 1.5%;
      max-width: none;
      padding-left: 0;
      padding-right: 0; }
    .object.stream-field .fields > li > .field > label {
      display: none; }
    .object.stream-field .block_field > .field-content {
      width: 100%;
      display: block; }
    .object.stream-field .sequence {
      position: relative; }
      .object.stream-field .sequence:before, .object.stream-field .sequence:after {
        content: " ";
        display: table; }
      .object.stream-field .sequence:after {
        clear: both; }
    .object.stream-field .sequence-member {
      position: relative; }
      .object.stream-field .sequence-member:before, .object.stream-field .sequence-member:after {
        content: " ";
        display: table; }
      .object.stream-field .sequence-member:after {
        clear: both; }
      .object.stream-field .sequence-member .sequence-member-inner {
        position: relative;
        padding: 1.5em 50px; }
        .object.stream-field .sequence-member .sequence-member-inner:before, .object.stream-field .sequence-member .sequence-member-inner:after {
          content: " ";
          display: table; }
        .object.stream-field .sequence-member .sequence-member-inner:after {
          clear: both; }
        .object.stream-field .sequence-member .sequence-member-inner > .sequence .sequence-inner {
          box-sizing: border-box;
          display: inline;
          float: left;
          width: 83.33333%;
          padding-right: 1.5%;
          padding-left: 1.5%;
          padding-left: 0;
          padding-right: 0; }
        .object.stream-field .sequence-member .sequence-member-inner > .struct-block > label, .object.stream-field .sequence-member .sequence-member-inner > .char_field > label, .object.stream-field .sequence-member .sequence-member-inner .sequence > label {
          opacity: 0;
          display: block;
          font-style: italic;
          font-weight: normal;
          position: absolute;
          top: 1em;
          right: 4em;
          float: none;
          width: auto;
          padding: 0;
          color: #666666;
          line-height: 2.2em; }
          body.ready .object.stream-field .sequence-member .sequence-member-inner > .struct-block > label, body.ready .object.stream-field .sequence-member .sequence-member-inner > .char_field > label, body.ready .object.stream-field .sequence-member .sequence-member-inner .sequence > label {
            transition: opacity 0.2s ease; }
      .object.stream-field .sequence-member:hover {
        background-color: #f4fcfc; }
      .object.stream-field .sequence-member:hover .sequence-member-inner > .struct-block > label, .object.stream-field .sequence-member:hover .sequence-member-inner > .char_field > label, .object.stream-field .sequence-member:hover .sequence-member-inner .sequence > label {
        opacity: 1; }
    .object.stream-field .struct-block > ul > li {
      /* duplicates forms.scss ln.568 */
      padding-top: 0.5em;
      padding-bottom: 1.2em; }
      .object.stream-field .struct-block > ul > li:before, .object.stream-field .struct-block > ul > li:after {
        content: " ";
        display: table; }
      .object.stream-field .struct-block > ul > li:after {
        clear: both; }
    .object.stream-field .struct-block .widget-text_input > label, .object.stream-field .struct-block .widget-textarea > label, .object.stream-field .struct-block .widget-admin_auto_height_text_input > label {
      display: none; }
    .object.stream-field .widget-text_input input, .object.stream-field .richtext, .object.stream-field textarea {
      border: 0;
      padding: 0;
      background-color: transparent;
      max-width: 1024px; }
    .object.stream-field .widget-admin_image_chooser label {
      display: none; }
    .object.stream-field .widget-admin_image_chooser .field-content {
      display: block;
      float: none;
      width: 100%;
      text-align: center;
      max-width: 500px;
      margin: auto;
      border: 1px solid #e6e6e6;
      padding: 1em; }
    .object.stream-field .widget-admin_image_chooser .chooser .chosen {
      padding: 0; }
    .object.stream-field .widget-admin_image_chooser .chooser .unchosen:before {
      float: none;
      font-size: 4em;
      margin: 0; }
    .object.stream-field .widget-admin_image_chooser .chooser .preview-image {
      float: none;
      margin: 0; }
  .object .stream-controls, .object .list-controls {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 1em;
    right: 1em;
    z-index: 1;
    color: white;
    overflow: hidden;
    border-radius: 2px; }
    body.ready .object .stream-controls, body.ready .object .list-controls {
      transition: opacity 0.2s ease; }
    .object .stream-controls li, .object .list-controls li {
      background-color: #43b1b0;
      float: left;
      cursor: pointer;
      margin-right: 1px; }
      .object .stream-controls li:last-child, .object .list-controls li:last-child {
        margin-right: 0; }
    .object .stream-controls .disabled, .object .list-controls .disabled {
      display: none; }
  .object .stream-menu {
    box-shadow: inset 0 0 45px rgba(0, 0, 0, 0.3);
    position: relative;
    background-color: #333333;
    opacity: 1;
    z-index: 5; }
    body.ready .object .stream-menu {
      transition: all 0.2s ease; }
    .object .stream-menu .toggle {
      border-radius: 50px;
      position: absolute;
      top: -0.5em;
      left: 0;
      right: 0;
      margin: 0 auto;
      cursor: pointer;
      font-size: 1.7em;
      width: 1em;
      height: 1em;
      display: block;
      z-index: 5;
      color: #333333;
      background-color: white; }
      body.ready .object .stream-menu .toggle {
        transition: color 0.2s ease; }
      .object .stream-menu .toggle span {
        border: 0;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px; }
        .object .stream-menu .toggle span:active, .object .stream-menu .toggle span:focus {
          clip: auto;
          height: auto;
          margin: 0;
          overflow: visible;
          position: static;
          width: auto; }
      .object .stream-menu .toggle:before {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        position: absolute;
        font-family: wagtail;
        content: "B";
        line-height: 1em;
        text-align: center; }
    .object .stream-menu .stream-menu-inner {
      max-width: 50em;
      margin: auto;
      overflow: hidden; }
    .object .stream-menu ul {
      -webkit-transform: scale(1);
      transform: scale(1);
      visibility: visible;
      opacity: 1;
      padding: 1em 1em 0 1em;
      overflow: hidden; }
      body.ready .object .stream-menu ul {
        transition: all 0.2s ease; }
      .object .stream-menu ul:before, .object .stream-menu ul:after {
        content: " ";
        display: table; }
      .object .stream-menu ul:after {
        clear: both; }
    .object .stream-menu li {
      box-sizing: border-box;
      display: inline;
      float: left;
      width: 25%;
      padding-right: 1.5%;
      padding-left: 1.5%;
      padding-bottom: 3%;
      padding-left: 0;
      padding-right: 0; }
      .object .stream-menu li:nth-child(4n+1) {
        clear: left; }
    .object .stream-menu button {
      background-color: transparent;
      border: 0;
      color: #cccccc;
      height: auto;
      display: block;
      width: 100%;
      padding: 0 0 0.5em 0;
      outline: #43b1b0; }
      body.ready .object .stream-menu button {
        transition: all 0.2s ease; }
      .object .stream-menu button span {
        text-transform: none;
        white-space: pre-wrap;
        width: 100%;
        display: block;
        overflow: hidden;
        padding: 0 1em;
        box-sizing: border-box; }
      .object .stream-menu button:before {
        display: block;
        font-family: wagtail;
        font-size: 2em;
        width: 100%;
        height: 2em;
        line-height: 2em;
        text-align: center; }
      .object .stream-menu button:hover, .object .stream-menu button:focus {
        background-color: #43b1b0;
        color: white; }
    .object .stream-menu.stream-menu-closed {
      box-shadow: none; }
      .object .stream-menu.stream-menu-closed .stream-menu-inner ul {
        -webkit-transform: scale(0.9);
        transform: scale(0.9);
        opacity: 0; }
      .object .stream-menu.stream-menu-closed .toggle {
        color: #d9d9d9;
        background-color: white; }
        .object .stream-menu.stream-menu-closed .toggle:before {
          -webkit-transform: rotate(0deg);
          transform: rotate(0deg); }
        .object .stream-menu.stream-menu-closed .toggle:focus {
          color: #43b1b0; }
      .object .stream-menu.stream-menu-closed:hover {
        border-top-color: #43b1b0; }
        .object .stream-menu.stream-menu-closed:hover .toggle {
          color: #43b1b0; }
    @media screen and (min-width: 50em) {
      .object .stream-menu li {
        box-sizing: border-box;
        display: inline;
        float: left;
        width: 16.66667%;
        padding-right: 1.5%;
        padding-left: 1.5%; }
        .object .stream-menu li:nth-child(4n+1) {
          clear: none; }
        .object .stream-menu li:nth-child(6n+1) {
          clear: left; } }
  .object .sequence-member .stream-menu {
    margin: auto auto 0em auto; }
  .object .sequence-member .stream-menu-closed {
    opacity: 0;
    visibility: hidden; }
  .object .sequence-member:hover .stream-controls, .object .sequence-member:hover .list-controls {
    visibility: visible;
    opacity: 1; }
  .object .sequence-member:hover .stream-menu {
    visibility: visible;
    opacity: 1; }
  .object.publishing h2:before {
    content: "7";
    font-size: 2.4em;
    line-height: 1.4em;
    width: 1.4em; }
  .object .multiple {
    padding: 4.5em 0 0 0; }
    .object .multiple fieldset {
      padding-top: 0;
      padding-bottom: 0; }
  .object .fields {
    max-width: 100%; }
  .object .fields .multiple {
    padding-top: 0; }
  .object .add {
    padding-top: 1em; }
  .object.empty {
    border-bottom: 1px solid white;
    /* wrapper around add button for mutliple objects. Default version is wordless plus button for contracted groups of fields */ }
    .object.empty > h2, .object.empty.single-field label {
      margin: 0 0;
      border-bottom: 1px solid white; }
    .object.empty .add {
      position: relative;
      z-index: 2;
      top: 0px;
      left: 0px;
      width: 3.3em;
      padding: 0;
      margin: 0 0 0 -20px;
      cursor: pointer; }
      body.ready .object.empty .add {
        transition: background-color 0.2s ease; }
      .object.empty .add .button {
        border-radius: 0;
        overflow: visible;
        background-color: #fcf2f2;
        font-size: 0;
        /* helps fake the effect of t.ext-replace class, which can't be used here. */
        width: 2em; }
        .object.empty .add .button:before {
          position: relative;
          padding: 0;
          line-height: 1.8em;
          /* specific height required as parent 'a' has no height */
          font-size: 1.4rem;
          width: 1.8em;
          background-color: #f37e77; }
        .object.empty .add .button:hover:before {
          background-color: #f16760; }
    .object.empty .multiple {
      padding: 0; }
  .object.collapsible {
    /* li.collapsed gets its height from the fieldset only, which is now hidden
        and h2 has position:absolute which doesn't add to it either, so it would be 0 without this */
    min-height: 41px; }
    .object.collapsible h2 {
      cursor: pointer; }
    .object.collapsible h2:before {
      content: '6';
      text-shadow: none;
      line-height: 40px;
      padding-right: 1px;
      opacity: 1;
      color: #666;
      background-color: transparent; }
      body.ready .object.collapsible h2:before {
        transition: background-color 0.2s ease, color 0.2s ease; }
    .object.collapsible.collapsed {
      background: #fff; }
      .object.collapsible.collapsed h2 {
        box-shadow: none; }
      .object.collapsible.collapsed h2:before {
        content: '5';
        color: #fff;
        background-color: #43b1b0; }
      .object.collapsible.collapsed h2:hover:before {
        background-color: #358c8b; }

/* Custom styles that make some fields look more important */
.full input, .full textarea, .full .richtext {
  padding-left: 20px;
  padding-right: 20px;
  border-radius: 0px;
  padding-top: 2em;
  padding-bottom: 2em;
  font-size: 1.2em;
  line-height: 1.6em; }
  @media screen and (min-width: 50em) {
    .full input, .full textarea, .full .richtext {
      padding-left: 50px;
      padding-right: 50px; } }

.title input, .title textarea, .title .richtext {
  font-size: 2em;
  font-family: Bitter, Georgia, serif; }

/* Footer control bar for perfoming actions on the page */
footer .preview button, footer .preview .button {
  background-color: #808080;
  border-color: #808080; }
  footer .preview button:hover, footer .preview .button:hover {
    background-color: #666666;
    border-color: #666666; }
footer .preview .dropdown input[type=button], footer .preview .dropdown input[type=submit], footer .preview .dropdown button, footer .preview .dropdown .button {
  background-color: #808080;
  border-color: #808080; }
  footer .preview .dropdown input[type=button]:hover, footer .preview .dropdown input[type=submit]:hover, footer .preview .dropdown button:hover, footer .preview .dropdown .button:hover {
    background-color: #666666;
    border-color: #666666; }
footer .preview .dropdown ul, footer .preview .dropdown .dropdown-toggle {
  background-color: #808080; }
footer .preview .dropdown .dropdown-toggle:hover, footer .preview .dropdown.open > .button + .dropdown-toggle {
  background-color: #666666; }

@media screen and (min-width: 50em) {
  .page-editor .breadcrumb {
    margin-top: -1.8em; }
  .object fieldset {
    max-width: 1024px;
    box-sizing: border-box;
    display: inline;
    float: left;
    width: 83.33333%;
    padding-right: 1.5%;
    padding-left: 1.5%;
    padding-left: 0;
    padding-right: 0; }
    .object fieldset fieldset {
      width: 100%; }
  .object .object-help {
    box-sizing: border-box;
    display: inline;
    float: left;
    width: 16.66667%;
    padding-right: 1.5%;
    padding-left: 1.5%;
    display: block;
    position: absolute;
    z-index: 1;
    right: 0;
    top: 1em;
    padding-right: 1.5%;
    float: right;
    margin-top: 4em;
    opacity: 0;
    padding-left: 3em; }
  .object.full fieldset {
    box-sizing: border-box;
    display: inline;
    float: left;
    width: 91.66667%;
    padding-right: 1.5%;
    padding-left: 1.5%;
    margin-left: -51px;
    padding: 3.2em 0 0 0; }
  .object.full input, .object.full textarea, .object.full .richtext {
    border-width: 0 1px; }
  .object.full .field {
    padding: 0; }
  .object.full .field-content {
    display: block;
    float: none;
    width: auto;
    padding: inherit; }
  .object .multiple {
    box-sizing: border-box;
    display: inline;
    float: left;
    width: 83.33333%;
    padding-right: 1.5%;
    padding-left: 1.5%;
    padding-left: 0;
    padding-right: 0; }
  .object.empty .add {
    margin: 0 0 0 -50px; }
  .object.single-field label {
    display: block;
    float: none;
    width: auto;
    padding: auto; } }
