/*
 * shakespeare_style.css
 * Shakespeare style sheet for bootstrap overrides
 *
 * Main colours, Do not create new colours other than the colour guide
 * For new colours see the colour guide
 * Pink #ff6dff
 * Blue #1458C1
 * Plum #791c78
 * Violet #d700ff
 * Dark plum #581458
 * Tint of pink: #fff1ff mobile menu drop down
 */

html {
  background-color: #791c78;
}

/* NAVBAR */

.navbar {
  background-color: #ff6dff;
}

/* LOGOS */
/* There are three logos, mobile and desktop have different positioning  */
.bc-navbar-default .container .navbar-brand {
  height:   120px;
  position: relative;
}

@media (min-width: 768px) {
  .bc-navbar-default .container .navbar-brand {
    height: 34px;
  }
}

/* bc-logo is a unique class for Shakey since there are three logos and all have similar settings */
.navbar .bc-logo {
  font:             0/0 a;
  color:            transparent;
  background-color: transparent;
  display:          block;
  margin:           0;
  overflow:         hidden;
  width:            0;
  background-size:  contain;
  position:         absolute;
}

@media (min-width: 768px) {
  .navbar .bc-logo {
    position: static;
  }
}

.bc-shakespeare-logo {
  height:           72px;
  padding:          0 0 0 280px;
  bottom:           0;
  left:             0;
  background:       url(shakespeare-lives-logo.png) no-repeat 0 0;
  background-image: url(shakespeare-lives-logo.svg), none;
}

@media (min-width: 768px) {
  .bc-shakespeare-logo {
    padding: 0 0 0 340px;
    float:   left;
  }
}

.bc-brand-logo {
  height:           24px;
  top:              0;
  left:             0;
  background:       url(bc-logo.png) no-repeat 0 0;
  background-image: url(bc-logo.svg), none;
}

@media (min-width: 768px) {
  .navbar .bc-brand-logo {
    height:     31px;
    margin-top: 2px;
    padding:    0 0 0 107px;
  }
}

.bc-great-britain-logo {
  height:           32px;
  padding:          0 0 0 85px;
  top:              0;
  left:             100px;
  background:       url(gb-logo.png) no-repeat 0 0;
  background-image: url(gb-logo.svg), none;
}

@media (min-width: 768px) {
  .navbar .bc-great-britain-logo {
    float:  left;
    height: 44px;
    margin: 0 0 0 15px;
  }
}

/* END LOGOS */

/* MOBILE NAVBAR AND ADMIN NAVBAR OVERRIDES */
.navbar-nav {
  background-color: #fff1ff;
}

.navbar-nav li a,
.bc-nav-subnav li a {
  color:       #1458c1;
  font-family: "BCSans", Arial, sans-serif;
}

.navbar-nav li a.active,
.bc-nav-subnav li a.active {
  background-color: #791c78;
}

.bc-btn-navbar-group .btn::after {
  position: absolute;
  top:      10px;
  right:    15px;
}

/* MOBILE SEARCH NAVBAR BUTTON */
@media (max-width: 767px) {
  .bc-btn-navbar-group {
    background: #fff;
  }

  .bc-btn-navbar-group .btn:first-child {
    width:        50%;
    padding-left: 20px;
  }

  .bc-btn-navbar-group .btn:only-child,
  .bc-btn-secondary-nav-group .btn:only-child {
      width: 100%;
      border-left-width: 0;
      border-right-width: 0;
  }

  .bc-navbar-search {
    display:            block;
    right:              0;
    background-color:   #1458c1;
    top:                158px;
    left:               auto;
    padding:            6px 0px 3px 15px;
    border-style:       solid;
    border-color:       #fff;
    border-width:       1px 0 0 1px;
    height:             38px;
    width:              50%;
    -webkit-transition: width 250ms;
    -ms-transition:     width 250ms;
    -moz-transition:    width 250ms;
    transition:         width 250ms;
  }

  .bc-navbar-search.expanded {
    width:       100%;
    border-left: 0;
  }

  .bc-navbar-search .input-group .form-text {
    font-family:      BCSans, Arial, "Helvetica Neue", Helvetica, sans-serif;
    background-color: transparent;
    color:            #fff;
    border:           0;
    height:           28px;
    line-height:      1.3;
    margin-top:       -2px;
  }

  .bc-navbar-search .input-group .form-text::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #fff;
  }

  .bc-navbar-search .input-group .form-text:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #fff;
  }

  .bc-navbar-search .input-group .form-text::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #fff;
  }

  .bc-navbar-search .input-group .form-text:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #fff;
  }

  .bc-navbar-search.expanded .input-group .form-text::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #aaa;
  }

  .bc-navbar-search.expanded .input-group .form-text:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #aaa;
  }

  .bc-navbar-search.expanded .input-group .form-text::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #aaa;
  }

  .bc-navbar-search.expanded .input-group .form-text:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #aaa;
  }

  .bc-navbar-search.expanded .input-group .form-text,
  .bc-navbar-search .input-group .form-text:focus {
    background-color: #0017a4;
  }

  .bc-navbar-search .input-group .input-group-btn .form-submit,
  .bc-navbar-search .input-group .input-group-btn .form-submit:focus,
  .bc-navbar-search .input-group .input-group-btn .form-submit:hover {
    background-color: transparent;
    border:           0;
    line-height:      1.5;
  }

  .bc-navbar-search .input-group .input-group-btn .form-submit:before {
    margin-top: -8px;
  }

  .bc-btn-close {
    display: none;
  }
}

@media (min-width: 768px) {
  .bc-navbar-search .input-group .form-control,
  .bc-navbar-search .input-group .input-group-btn .btn:before {
    color: #791c78;
  }

  .bc-navbar-search .input-group .form-control:focus {
    border-color: #791c78;
    width:        200px;
  }

  .bc-navbar-search .input-group .form-text::-webkit-input-placeholder { /* WebKit, Blink, Edge */
    color: #791c78;
  }

  .bc-navbar-search .input-group .form-text:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
    color: #791c78;
  }

  .bc-navbar-search .input-group .form-text::-moz-placeholder { /* Mozilla Firefox 19+ */
    color: #791c78;
  }

  .bc-navbar-search .input-group .form-text:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #791c78;
  }
}

/* END MOBILE NAVBAR AND ADMIN NAVBAR OVERRIDES */

/* SECONDARY NAVBAR */
.bc-btn-secondary-nav-group {
  border-top: 1px solid #fff;
}

.bc-btn-secondary-nav-group .btn-value {
  top: 0;
}

.bc-btn-secondary-nav-group .btn {
  background-color: #1458c1;
}

.bc-btn-secondary-nav-group .btn.open,
.bc-nav-subnav-back-link {
  background-color: #791c78;
}

.bc-nav-subnav {
  border-bottom-color: #791c78;
}

.bc-nav-subnav-back-link {
  border-color: transparent;
}

.bc-nav-subnav .nav li > a {
  background-color: #fff1ff;
  color:            #1458c1;
  border-color:     #fff;
}

.bc-nav-subnav .nav li > a.active {
  color:            #fff;
  background-color: #791c78;
  text-decoration:  none;
}

.bc-nav-subnav .nav .nav li:first-child > a {
  border-top-width: 0;
}

.navbar-nav li a:hover,
.navbar-nav li a:focus,
.bc-nav-subnav-title-link a:hover,
.bc-nav-subnav-title-link a:focus,
.bc-nav-subnav-back-link a:hover,
.bc-nav-subnav-back-link a:focus,
.bc-nav-subnav .nav li > a.active:focus,
.bc-nav-subnav .nav li > a.active:hover,
.bc-nav-subnav .nav li > a:focus,
.bc-nav-subnav .nav li > a:hover {
  background-color: #581458;
  color:            #fff;
}

.bc-nav-subnav-title-link a:before {
  left: 0;
}

.bc-nav-subnav-title-link a {
  color: #1458c1;

}

@media (min-width: 768px) {
  .bc-nav-subnav-title-link a {
    padding-left: 30px;
  }

  .bc-nav-subnav-title-link a:before {
    left: 10px;
  }
}

/* NAVBAR INSIDE MAIN-CONTAINER such as admin menu */
.main-container .navbar {
  background-color: transparent;
}

.main-container .navbar .navbar-nav {
  display: block;
  float:   none;
  margin:  20px auto;
}

/* END NAVBAR INSIDE MAIN-CONTAINER such as admin menu */

@media (min-width: 768px) {
  .navbar .navbar-nav {
    float:   right;
    clear:   left; /* In case there are a few menu items */
    margin:  8px 0 14px 0;
    display: block !important; /* So that if mobile menu is closed and browser is streched to desktop  */
  }

  .navbar .navbar-nav li {
    margin-right: 0;
  }

  .navbar .navbar-nav li a {
    background-color:       #1458c1;
    font-family:            "BCSans", Arial, sans-serif;
    font-size:              15px;
    font-weight:            300;
    color:                  #fff;
    border:                 none;
    padding:                3px 10px;
    -webkit-font-smoothing: antialiased;
  }

  /* Active bg color */
  .navbar .navbar-nav li > a.active,
  .navbar .navbar-nav li.active > a {
    background-color: #791c78;
  }

  /* Hover bg color */
  .navbar .navbar-nav li > a:hover,
  .navbar .navbar-nav li > a:focus,
  .navbar .navbar-nav li > a.active:hover,
  .navbar .navbar-nav li > a.active:focus,
  .navbar .navbar-nav li.active > a:hover,
  .navbar .navbar-nav li.active > a:focus {
    background-color: #581458;
  }
}

/* END NAVBAR */

/* MAIN NAVIGATION */
/* Navigation overrides */
.bc-btn-navbar-group .btn,
.bc-btn-navbar-group .btn.open {
  background-color: #1458c1;
  color:            #fff;
  border-color:     #fff;
}

.bc-btn-navbar-group .btn.open {
  background-color: #791c78;
}

/* END MAIN NAVIGATION */

/* MAIN CONTAINER COLOURS */
.main-container.container {
  position:         relative;
  background-color: #fff;
}

.main-container.container:before {
  background-color: #ff6dff;
  width:            100%;
  display:          block;
  position:         absolute;
  left:             -100%;
  top:              -21px;
  bottom:           0;
  margin-left:      -25px;
  z-index:          1;
}

/* Hero Carousel */
/* TODO: Backport the hero carousel arrow sizes to SUI */
.bc-hero-carousel .btn {
  background-color: #1458c1;
}

.bc-hero-carousel .bc-video-item.bc-item .bc-item-caption,
.bc-image-promo .bc-item .bc-item-caption {
  background-color: #791c78;
  text-transform:   inherit;
}

.bc-carousel button.slick-next,
.bc-carousel button.slick-prev {
  background-color: #fff;
  width:            55px;
  height:           55px;
}

.bc-carousel button.slick-next:before,
.bc-carousel button.slick-prev:before {
  color:       #1458c1;
  font-size:   60px;
  line-height: 0.9;
}

/* Home page */

.bc-home-body {
  margin-bottom: 20px;
}

.bc-home-body .bc-content {
  text-align: center;
  font-size:  24px;
}

@media (min-width: 768px) {
  .bc-home-body {
    margin: 0 95px 50px;
  }

  .bc-home-body .bc-content {
    font-size: 28px;
  }
}

.bc-home-link {
  text-align: center;
}

.front .bc-btn-block.bc-btn-has-arrow:before {
  left:        auto;
  margin-left: -20px;
}

@media (min-width: 768px) {
  .bc-list-item .bc-list-item-title,
  .bc-list-item-standard .bc-list-item-title,
  .bc-list-item-visual .bc-list-item-title {
    font-size: 22px;
  }
}

@media (min-width: 768px) {
  .bc-list-item .bc-list-item-body,
  .bc-list-item-standard .bc-list-item-body,
  .bc-list-item-visual .bc-list-item-body,
  .bc-list-item .bc-list-item-header,
  .bc-list-item-standard .bc-list-item-header,
  .bc-list-item-visual .bc-list-item-header {
    font-size: 15px;
  }
}

/* END MAIN CONTAINER COLOURS */

/* LINKS */
a,
.bc-list-item-standard > a .bc-list-item-title,
.bc-list-item-visual > a .bc-list-item-title,
.bc-list-item > a .bc-list-item-title,
a.bc-list-item .bc-list-item-title,
a.bc-list-item-standard .bc-list-item-title,
a.bc-list-item-visual .bc-list-item-title {
  color: #1458c1;
}

/* BUTTONS */
.btn-primary {
  background-color: #1458c1;
}

.btn-primary.active,
.btn-primary.focus,
.btn-primary:active,
.btn-primary:focus,
.btn-primary:hover,
.open > .btn-primary.dropdown-toggle {
  background-color: #1049a2;
  color:            #ffffff;
}

/* FOOTER */

/* Override colours */
.bc-footer {
  background-color: #791c78;
}

.bc-footer li a {
  color: #fff;
}

/* Footer items in Desktop */
@media (min-width: 768px) {
  .bc-footer li a.active {
    background:      0 0;
    color:           #fff;
    text-decoration: underline;
  }

  /* Override the tablet version of solas-ui between 768 and 1024 */
  .bc-footer li a.active:focus,
  .bc-footer li a.active:hover,
  .bc-footer li a:focus,
  .bc-footer li a:hover {
    background:      0 0;
    color:           #fff;
    text-decoration: underline;
  }

  .bc-footer .bc-site-links {
    margin: 0 0 15px;
  }

  .bc-footer .bc-site-links li {
    display: inline-block;
  }

  .bc-footer .bc-site-links li:before {
    content:    "";
    display:    block;
    width:      1px;
    height:     1.1em;
    margin:     0 0 -24px 0;
    background: #fff;
  }

  .bc-footer .bc-site-links li:first-child:before {
    display: none;
  }

  .bc-footer .bc-site-links a {
    margin-left:     0;
    margin-right:    0;
    padding-right:   10px;
    padding-left:    10px;
    font-size:       15px;
    font-weight:     300;
    text-decoration: none;
  }

  .bc-footer ul {
    text-align: center;
  }

  /* Footer Social Media Icons */
  .bc-footer .bc-social-media {
    margin: 0 auto 30px;
  }

  .bc-footer .bc-social-media li {
    display: inline-block;
    margin:  0 20px 0 0;
  }

  .bc-footer .bc-social-media a {
    font:        0/0 a;
    color:       transparent;
    text-shadow: none;
  }

  /* Copyright */
  .bc-footer .bc-copyright,
  .bc-footer h2 {
    text-align: center;
  }
}

/* Social media icons */
ul.bc-social-media a:before {
  background-image:  url(social-icons.png);
  background-repeat: no-repeat;
  background-size:   110px 110px;
  width:             32px;
  height:            32px;
  display:           block;
}

ul.bc-social-media a[href*='facebook']:before {
  background-position: -2px -2px;
}

ul.bc-social-media a[href*='instagram']:before {
  background-position: -39px -2px;
}

ul.bc-social-media a[href*='rss']:before {
  background-position: -2px -39px;
}

ul.bc-social-media a[href*='twitter']:before {
  background-position: -39px -39px;
}

ul.bc-social-media a[href*='vimeo']:before {
  background-position: -76px -2px;
}

ul.bc-social-media a[href*='weibo']:before {
  background-position: -76px -39px;
}

ul.bc-social-media a[href*='youku']:before {
  background-position: -2px -78px;
}

ul.bc-social-media a[href*='youtube']:before {
  background-position: -39px -78px;
}

/* IE8/9 get a dedicated sprite as background-size image scaling quality is not very good */
@media (min-width: 768px) {
  ul.bc-social-media a:before {
    background-image: url(social-icons-desktop.png);
    background-size:  104px 104px;
    width:            16px;
    height:           16px;
  }

  ul.bc-social-media a[href*='facebook']:before {
    background-position: -5px -5px;
  }

  ul.bc-social-media a[href*='instagram']:before {
    background-position: -31px -5px;
  }

  ul.bc-social-media a[href*='rss']:before {
    background-position: -5px -31px;
  }

  ul.bc-social-media a[href*='twitter']:before {
    background-position: -31px -31px;
  }

  ul.bc-social-media a[href*='vimeo']:before {
    background-position: -57px -5px;
  }

  ul.bc-social-media a[href*='weibo']:before {
    background-position: -57px -31px;
  }

  ul.bc-social-media a[href*='youku']:before {
    background-position: -5px -57px;
  }

  /* The YouTube logo on desktop needs to be wider to be legibile */
  ul.bc-social-media a[href*='youtube'],
  ul.bc-social-media a[href*='youtube']:before {
    background-position: -1px -76px;
    width:               40px;
  }
}

/* Retina high res version */
@media (min-width: 768px) and (-webkit-min-device-pixel-ratio: 2), (min-width: 768px) and (min-resolution: 2dppx) {
  ul.bc-social-media a:before {
    background-image: url(social-icons.png);
    background-size:  54px 54px;
    width:            16px;
    height:           16px;
  }

  ul.bc-social-media a[href*='facebook']:before {
    background-position: -1px -1px;
  }

  ul.bc-social-media a[href*='instagram']:before {
    background-position: -19px -1px;
  }

  ul.bc-social-media a[href*='rss']:before {
    background-position: -1px -19px;
  }

  ul.bc-social-media a[href*='twitter']:before {
    background-position: -20px -19px;
  }

  ul.bc-social-media a[href*='vimeo']:before {
    background-position: -37px -1px;
  }

  ul.bc-social-media a[href*='weibo']:before {
    background-position: -37px -19px;
  }

  ul.bc-social-media a[href*='youku']:before {
    background-position: -1px -37px;
  }

  /* The YouTube logo on desktop needs to be wider to be legibile */
  ul.bc-social-media a[href*='youtube'],
  ul.bc-social-media a[href*='youtube']:before {
    background-size:     120px 120px;
    background-position: -40px -92px;
    width:               40px;
  }
}

/* END FOOTER */

/* LINKPANELS  */
.bc-link-panel-image a .bc-link-panel-image-title {
  background-color: #1458c1;
}

.bc-link-panel-text a,
.bc-link-panel-text > a .bc-link-panel-text-title {
  color: #1458c1;
}

/* END OF LINKPANELS  */

/* COOKIE BANNER */
#cookie-banner .close {
  position:    relative;
  float:       right;
  opacity:     1;
  text-indent: -9999em;
  font-size:   0;
}

#cookie-banner .close:before {
  display:      block;
  width:        15px;
  margin-right: 6px;
  margin-top:   2px;
  content:      "";
  font-family:  FontAwesome;
  font-size:    20px;
  color:        #fff;
  text-indent:  0em;
}

#cookie-banner .close:hover:before {
  color: #9cf;
}

/* END OF COOKIE BANNER */

/* Filters */
.bc-filter .bc-show-hide .bc-show-hide-content {
  background-color: #d5dddf;
}

.bc-show-hides.bc-processed .bc-show-hide-title {
  background-color: #1458c1;
  color:            #fff;
}

.bc-show-hides.bc-processed .bc-show-hide-title.bc-active {
  background-color: #791c78;
}

.bc-show-hides.bc-processed .bc-show-hide-title:hover,
.bc-show-hides.bc-processed .bc-show-hide-title.bc-active:hover {
  background-color: #581458;
  color:            #fff;
}

.bc-filter-list .btn-group-sm > .active.btn,
.bc-filter-list .btn-sm.active {
  background-color: #1458c1;
}

.bc-filter-list .btn-group-sm > .btn,
.bc-filter-list .btn-sm {
  border-color: #1458c1;
}

.bc-filter-list .btn-group-sm > .btn .bc-notify-badge,
.bc-filter-list .btn-sm .bc-notify-badge {
  color:        #1458c1;
  border-color: #1458c1;
}

.bc-filter-list .btn-sm:hover .bc-notify-badge,
.bc-show-hides.bc-processed .bc-show-hide-title:after,
.bc-show-hides.bc-processed .bc-show-hide-title:hover:after,
.bc-show-hides.bc-processed .bc-show-hide-title.bc-active:after,
.bc-show-hides.bc-processed .bc-show-hide-title.bc-active:hover:after,
.bc-filter-list .btn-sm:hover,
.bc-filter-list .btn-sm:focus {
  color: #fff;
}

.bc-filter-list .btn-sm:focus {
  background-color: #fff;
  color:            #1458c1;
}

/* Type */
.bc-filter-title,
.bc-h2-style,
h2 {
  border-color: #1458c1;
}

@media (min-width: 768px) {
  .bc-filter-title,
  .bc-h2-style,
  h2 {
    border-color: #d6dcde;
  }
}


/* Shorthand specific */
.bc-copyright {
  clear: both;
}

.bc-btn-navbar-group .btn:before,
.bc-btn-navbar-group .btn.open:before,
.bc-btn-secondary-nav-group .btn:before {
  content: "";
}
